”
ハードウェア開発、CPUアーキテクチャ Advent Calendar 2016”の記事として書きます。
始めはVivado HLS について書こうと思ったのですが、マイクロプロセッサの話題が主というか?ほとんどマイクロプロセッサの話題のようなので、急遽ブログ記事を変更しました。
PicoBlaze最初に一番小さいマイクロプロセッサから行きましょう。まだあるんだ。。。ということで、「
PicoBlaze 8-ビット マイクロコントローラー」です。
デバイス ファミリ サポート: Zynq-7000 Virtex-7 Kintex-7 Artix-7 Spartan-6 Virtex-6 Virtex-5 Virtex-4 Virtex-II Pro Virtex-II Spartan-3AN Spartan-3A Spartan-3
Zynqもサポートされているんですね。。。知らなかった。とってもコンパクトな 8 ビット マイクロプロセッサです。
ブロック図です(
UG129 - PicoBlaze 8-bit Embedded Microcontroller User Guide for Spartan-3, Spartan-6, Virtex-5, Virtex-6 and 7 Series FPGAs ( v2.1, 2835 KB ) [PDF] の8 ページの「Figure 1-1: PicoBlaze Embedded Microcontroller Block Diagram」を転載させていただきました)
PicoBlaze フォーラムもありますよ。
PicoBlaze資料のページPicoBlaze のダウンロードページFPGAの部屋のブログのPicoBlazeの記事
「
スパルタン3EスターターキットのLCD表示回路まとめ」でLCDを表示するためにPicoBlazeを使用しました。
「スパルタン3Eスタータキットのロータリーエンコーダ2」
「
Spratan3E Starter KitのDDR SDRAMコントローラ(プロジェクト)」 DDR SDRAMコントローラのシミュレーションのためにPicoBlaze を使ったんだったかな?
MicroBlaze MCSMicroBlaze MCS もまだあったとは知らなかった。。。
資料
MicroBlaze Micro Controller System v3.0 LogiCORE IP Product Guide Vivado Design Suite PG116 October 5, 2016
MicroBlaze MCS はパイプライン3段固定のMicroBlaze で 32 ビットのRISC プロセッサです。
MicroBlaze Micro Controller System (MicroBlaze MCS) のブロック図を
MicroBlaze Micro Controller System v3.0 LogiCORE IP Product Guide Vivado Design Suite PG116 October 5, 2016
の 5 ページ Figure 1-1: MicroBlaze Micro Controller System から引用します。

次に示す IO モジュールがあります。
I/O Bus
Interrupt Controller using fast interrupt mode
UART
Fixed Interval Timers
Programmable Interval Timers
General Purpose Inputs
General Purpose Outputs
MicroBlaze と MicroBlaze MCS の違いは、MicroBlaze がフルスペックなのに対して、MicroBlaze MCS は固定された機能を使えるという違いがあります。(
MicroBlaze マイクロ コントローラー システム (MCS)の表を参照ください)
以前はフルスペックのMicroBlaze が有償だったので使っていましたが、MicroBlaze が無償となった今となっては使いどころはあまりないと思われます。
ですが、7 シリーズも対応しているし、Vivado でも使えるようです。
Vivado のIP Integrator でも使えるので、Add IP してやってみましょう。
Vivado 2016.3 を起動して、IP Integrator のブロックデザインを開きます。
Add IP ボタンをクリックしてAdd IP します。Micro で検索するとMicroBlaze MCSが出てきます。これをダブルクリックして、ブロックデザインに入れてみましょう。

すると、MicroBlaze MCS がインスタンスされました。まだ、Clk と Reset のみの状態です。

MicroBlaze MCS をダブルクリックして設定してみましょう。

MCS タブです。

UART タブでUART をイネーブルしてみます。

OK ボタンをクリックすると、MicroBlaze MCS にUART のポートが追加されているのが分かります。

MicroBlaze MCSのソフトウェアを作るには、Eclipse ベースのSDK を使用します。
FPGAの部屋の
「MicroBlaze MCS」のページです。
- 2016年12月04日 05:39 |
- FPGAのマイクロプロセッサ
-
| トラックバック:0
-
| コメント:0