FC2カウンター FPGAの部屋 Xilinx 社のマイクロプロセッサまとめ2(MicroBlaze)
fc2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

Xilinx 社のマイクロプロセッサまとめ2(MicroBlaze)

Xilinx 社のマイクロプロセッサまとめ1(PicoBlaze, MicroBlaze MCS)”の続きです。

”ハードウェア開発、CPUアーキテクチャ Advent Calendar 2016”の11日目の記事として書きます。

MicroBlaze
次のXilinx社のマイクロプロセッサはMicroBlaze です。最近はZynq のARM プロセッサばかりでMicroBlaze はあまり使っていませんでした。ですが、MicroBlaze はXilinx社の32ビットのソフトコアのマイクロプロセッサの代表格です。(MicroBlaze プロセッサ リファレン ガイド 2016.1 UG984 (v2016.1) 2016 年 4 月 6 日参照)
いろいろなコンフィギュレーションがあって、性能重視には5段パイプライン、エリア重視には3段パイプラインと使え分けられます。
MicroBlaze の基本機能です。(MicroBlaze プロセッサ リファレン ガイド 2016.1 UG984 (v2016.1) 2016 年 4 月 6 日から引用)

・32 個の 32 ビッ ト 汎用レジス タ
・オペランド 3 つと アドレス指定モード 2 つを含む 32 ビッ ト 命令ワード
・デフォルトでは、32ビットのアドレスバス
・シングル・パイプライン


ブロック図を引用します。(MicroBlaze プロセッサ リファレン ガイド 2016.1 UG984 (v2016.1) 2016 年 4 月 6 日6 ページの図 2‐1 : MicroBlaze コアのブロック図を引用)
Xilinx_Micon_9_161210.png

それでは実際にMicroBlazeを使ったプロジェクトを作ってみましょう。
Vivado 2016.3 を使用して、ZedBoardのボードの定義ファイルを使ってやってみました。
IP Integrator のブロックデザインを作成しました。
ブロックデザイン上でAdd IP をして、 microで検索して、MicroBlaze を選択しました。
Xilinx_Micon_10_161210.png

MicroBlaze のIP がインスタンスされました。
Xilinx_Micon_11_161210.png

MicroBlaze をダブルクリックして設定を見てみよう。
Select implementation optimization は、PERFORMANCE とAREA, FREQUENCY に設定することができる。
Xilinx_Micon_12_161210.png

Xilinx_Micon_14_161210.png

Select Configuration は下の図に示す設定があります。
Xilinx_Micon_13_161210.png

Next > ボタンをクリックするとGeneral 設定画面が表示されます。
ここでは、バレルシフタを使うか?や浮動小数点演算器を使うか?整数掛け算器、整数割り算器、などなどの設定を行うことができます。
Xilinx_Micon_15_161210.png

次がDebug 設定画面です。
デバック・モジュールの設定ができるようです。
Xilinx_Micon_17_161210.png

次がBus の設定画面です。
AXI バスの設定などがあります。ストリームのインターフェースも指定できるようです。
Xilinx_Micon_18_161210.png

これで設定画面を終了させます。
Run Block Automation のリンクをクリックすると、Run Block Automation ダイアログが表示されます。
ここではメモリを 32KB にしてOK ボタンをクリックしました。
Xilinx_Micon_19_161210.png

MicroBlaze の周辺回路がインスタンスされて、配線されました。
Xilinx_Micon_20_161210.png

axi_gpio を Add IP してみましょう。
Xilinx_Micon_21_161210.png

Run Connection Automation をクリックして配線を行いました。
Xilinx_Micon_22_161210.png

アドレスマップです。
Xilinx_Micon_23_161210.png

これでブロックデザインは終了なので、セーブします。
次に、Source ウインドウのブロックデザインを右クリックして、Create HDL Wapper... を選択して、トップのVerilog HDLファイルを生成します。
Xilinx_Micon_24_161210.png

論理合成、インプリメントを行ってから、ハードウェアをエクスポートし、SDKを立ち上げました。
SDK のFile メニューからNew を選択し、Application Project を選択します。
Application Project ダイアログで、Project name をtest にし、Next > ボタンをクリックします。
次のTemplates ダイアログで、Peripheral Tests を選んで、周辺デバイス・テストのサンプルデザインを選択し、Finish ボタンをクリックします。そうすると、test プロジェクトがビルドされます。
Xilinx_Micon_25_161210.png

これを起動すると、MicroBlaze を使うことができると思います。
  1. 2016年12月11日 03:48 |
  2. FPGAのマイクロプロセッサ
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/3658-a6b323d4
この記事にトラックバックする(FC2ブログユーザー)