VGAコントローラIPの取り付け
作成したVGAコントローラを、作成する組込みシステムに追加します。
下図のように XPS ウィンドウの "IP Catalog" 内に登録されたVGAコントローラ
IPをマウスの左クリックで選択した後、マウスの右をクリックしてメニューを表
示させます。"Add IP" をマウスの左で選択することにより、"Bus Interfaces"
のところに "vga_0" としてVGAコントローラIPが追加されます。
この際、"XPS Core Config" というウィンドウがひとつ立上りますが、そのま
まOKを押しておきます。
次に、"Bus Interfaces" の "vga_0" の前にある □+ をクリックします。
下図のように "Bus Name" の所が "No Connection" となっており、
まだプロセッサと正しく接続されていません。
下図のように、"No Connection"を"mb_plb"となるようにします。"PLB" とは
"Processor Local Bus"のことでプロセサに直接接続されるバスを意味していま
す。
次に、"Ports"タブを選択します。"vga_0"の所をマウスで左クリックした後、マ
ウスの右クリックをしてメニューを表示させます。"Make This IP Local"をマウ
スの左で選択することにより、VGAコントローラIPが正しく利用できるようにし
ます。
次に、"External Ports" と "vga_0" の前にある □+ をクリックします。
"vga_0" に出力端子として設定した、R, G, B, HS, VS の出力端子が表示されま
すが、"No Connection"となっており接続されていません。
下図のように "vga_0" の "No Connection" の所をマウスの左で選択することに
より、"Make External" を選択します。 選択した部分が "vga_0_信号名" に替
わるとともに、"External Ports" の所にも "vga_0_信号名" の出力端子が追加
されます。
次に、"Addresses" タブを選択し、"Unmapped Addresses" の前にある □+ を
クリックします。VGAコントローラの "vga_0" にあるメモリは "Size" の所が未
定義の "U" となっており未配置になっています。"U"の所をマウスの左で
選択することにより "8K" を選択します。 これは、VGAのメモリが2Kバイトあり、
32ビットのアドレッシングでは4倍の8Kバイトのアドレス空間となるからです。
"vga_0" のメモリアドレスが 0x00000000 から 0x00001FFF に割り付けられまし
たが、これは MicroBlazeプロセッサのプログラム用メモリと同一のアドレスと
なっており、このままでは動作しません。 "Base Address" の所をマウスの左で
クリックし、その値を 0x85000000 に変更します。
変更後、"vga_0" の "High Address" の部分をマウスの左でクリックすると、下
図のようにVGAコントローラのメモリアドレスが 0x85000000 から 0x85001FFF
へ正しく割り付けられます。
最後に、"vga_0" の出力端子 R, G, B, HS, VS を FPGA の物理端子に割り付け
るための設定を記述します。
"Project" タブを選択し "UCF File: data/life.ucf" の所をダブルクリックし
ます。
ファイルの最終行の所から、以下の記述を追加します。
追加した後は、
を押してファイルを保存
します。
## for VGA Controller
NET "vga_0_R_pin" LOC = "H14" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW= FAST ;
NET "vga_0_B_pin" LOC = "G15" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW= FAST ;
NET "vga_0_G_pin" LOC = "H15" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW= FAST ;
NET "vga_0_HS_pin" LOC = "F15" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW= FAST ;
NET "vga_0_VS_pin" LOC = "F14" | IOSTANDARD = LVTTL | DRIVE = 8 | SLEW= FAST ;
以上で、システムのハードウェア設計は終了しました。
次は、 組込みシステムの実装処理 です。
| Back |
Top |
Next |