|
Xilinx FPGA入門連載44:FPGA片內ROM實例之ROM配置 特權同學,版權所有 配套例程和更多資料下載鏈接: http://pan.baidu.com/s/1jGjAhEm
既然是ROM,那么我們就必須實現給它準備好數據,然后在FPGA實際運行時,我們直接使用這些預存儲好的數據就行。 Xilinx FPGA的片內ROM支持初始化數據配置。如圖所示,我們可以創建一個名為rom_init.coe的文件,注意后綴一定是“.coe”,前面的名稱當然你可以隨意起。
ROM初始化文件的內容格式如圖所示。從第3行開始到第34行,是這個32*8bit大小ROM的初始化數據。
打開ISE工程,如圖所示,在“Design à Implementation à Hierarchy”中的任意位置單擊鼠標右鍵,彈出菜單中選擇“New Source..”。
在“New Source Wizard”中,做如圖所示的設置。 ● “Select Source Type”中選擇新建文件類型為“IP(CORE Generator & Architecture Wizard)”。 ● “File name”即文件名,我們命名為“rom_controller”。 ● “Location”下面輸入這個新建文件所存放的路徑,我們將其定位到工程路徑下的“ipcore_dir”文件夾下。 ● 勾選上“Add to project”。
完成以上設置后,點擊“Next”進入下一步。 在“Select IP”頁面中,如圖所示,我們在“Viewby Function”下面找到“Memories &Storage Elements à RAMs & ROMs à Block Memory Generator”,單擊選中它,接著點擊“Next”進入下一步。
如圖所示,彈出“Summary”頁面后,點擊“Finish”即可。
彈出的第1個頁面中,如圖所示,“InterfaceType”選擇“Native”,然后點擊“Next”到下一個配置頁面。
彈出的第2個頁面中,如圖所示,“Memory Type”選擇“Single Port ROM”,其他配置默認即可,然后點擊“Next”到下一個配置頁面。
彈出的第3個頁面中,如圖所示,ROM位寬“Read Width”輸入“8”bit;ROM深度“Depth”輸入“32”。其他配置默認即可,然后點擊“Next”到下一個配置頁面。
第4個配置頁面中,如圖所示勾選“MemoryInitiazation”下的“Load Init File”,然后點擊“Browse”定位到前面創建的rom_init.coe文件所在路徑。
余下2個頁面均使用默認設置即可,點擊“Generate”生成ROM。 |