本文接續(xù)上一篇《FPGA雜記基礎(chǔ)篇》,繼續(xù)為大家分享IP例化和幾個基于FPGA芯片實現(xiàn)的Demo工程。
IP例化
IP即是一個封裝好的模塊,集成在相應的開發(fā)環(huán)境里面,以安路的TD軟件為例,不同系列的芯片集成了不同的IP模塊,可以通過軟件例化調(diào)用。
以下是安路TD4.6.5集成的EF3L40CG332B的相關(guān)IP。
1.1 PLL&RAM
以例化PLL和RAM為例,實現(xiàn)兩個異步雙口 RAM。
讀寫時鐘都設(shè)置 100Mhz, 兩個 RAM 為 RAMA 和RAMB, 深度為 1024,位寬為 8bit,寫入數(shù)據(jù)為 8bit,100Mhz 持續(xù)數(shù)據(jù)流, 當 RAMA被寫入 1024 字節(jié)數(shù)據(jù)后切換到寫 RAMB, RAMB 被寫入 1024 字節(jié)后切換 RAMA。以此循環(huán)類推。
當 RAMA 被寫入 1024 字節(jié)時, 給讀時序提供一個啟動信號讀取 RAMA 的數(shù)據(jù), 讀取完 RAMA 的 1024 字節(jié)數(shù)據(jù)時, 切換讀 RAMB 以此類推。
這個工程的工程結(jié)構(gòu)如下圖:
首先EF3L40CG332B_DEV開發(fā)板提供了25Mhz的晶振時鐘輸入到EF3L40CG332B的時鐘管腳。
想要得到100Mhz的讀寫速率,需要先用PLL得到倍頻時鐘。
在tools目錄下點擊IP Generator進入IP core頁面,并選擇PLL,輸入時鐘填入板子晶振25Mhz。
輸出時鐘填入所需要的100Mhz,并從C0輸出。
設(shè)置完成后,生成的module聲明如下(完整模塊可參考代碼)
再生成ram的IP模塊。
在IP core中選擇RAM。
-
FPGA
+關(guān)注
關(guān)注
1626文章
21671瀏覽量
601902 -
芯片
+關(guān)注
關(guān)注
454文章
50430瀏覽量
421875 -
電力電子
+關(guān)注
關(guān)注
29文章
559瀏覽量
48844
發(fā)布評論請先 登錄
相關(guān)推薦
評論