聚光科技實(shí)習(xí)筆記(2015.7.13 - 2015.7.17)

開發(fā)筆記

2015.7.13 - 2015.7.17

簡述

本周是我真正開始接觸verilog開發(fā)的一周,
本周我主要是完成了一個(gè)小型的計(jì)數(shù)平均器的開發(fā)。

  • 首先,我把設(shè)計(jì)轉(zhuǎn)化為verilog設(shè)計(jì)語言
  • 然后,使用modelsim對每個(gè)模塊進(jìn)行了功能性仿真,已驗(yàn)證邏輯設(shè)計(jì)的正確性。
  • 隨后,使用了signaltap ii對項(xiàng)目進(jìn)行片上仿真
  • 最終,項(xiàng)目通過了多次普通頻率信號(hào)的仿真之后,確定運(yùn)行正常且實(shí)現(xiàn)了最初的設(shè)計(jì)目的

細(xì)節(jié)

設(shè)計(jì)目的和預(yù)期

時(shí)鐘

晶振時(shí)鐘使用的是50 Mhz,而經(jīng)過PLL之后倍頻為系統(tǒng)時(shí)鐘 100Mhz

功能

先采集每10ms輸入脈沖的數(shù)量,再對10個(gè)采樣值取平均數(shù)

設(shè)計(jì)圖和verilog代碼的實(shí)現(xiàn)

設(shè)計(jì)上分為三個(gè)模塊

  • PLL模塊:用于產(chǎn)生系統(tǒng)時(shí)鐘和測試信號(hào),直接使用IP核產(chǎn)生。c0為2倍頻,用于系統(tǒng)時(shí)鐘;c1為四倍頻,用于測試對照時(shí)鐘;c2為四分頻,用于模擬采樣信號(hào)
  • echantion模塊:用于采樣,由verilog編寫
  • calcul模塊:用于處理數(shù)據(jù)輸出平均值,由verilog編寫
remarque

verilog代碼的編寫有很大自由,但是綜合軟件特別笨,往往無法綜合代碼。
以下是寫出可綜合代碼需要注意的點(diǎn):

  • 盡可能簡化結(jié)構(gòu),模塊化編程。
  • 如有可能,在一個(gè)結(jié)構(gòu)內(nèi)只對一個(gè)變量做調(diào)整
  • 一個(gè)變量只能在一個(gè)always行為語句中被賦值
  • assign 只能給wire賦值
  • 輸入輸出接口的數(shù)據(jù)長度要一致
  • 預(yù)先判斷好數(shù)據(jù)長度,防止數(shù)據(jù)過大而溢出
  • 使用reset而不是initial
  • 使用==和!= 而不是 ===和!==

modelsim的仿真

modelsim是一款強(qiáng)大的仿真軟件,此次用于功能性仿真。需要注意的是modelsim可以理解所有verilog語言,所以testbench的自由度比較高,但是仿真結(jié)束后未必意味著可以綜合。
推薦在仿真之后使用tool> Netlist Viewer > technology Map Viewer和RTL Viewer來確認(rèn)。 technology Map Viewer 可以看出代碼是否真的可以被綜合,而RTL Viewer可以看到是否邏輯正確

引腳分配

使用tcl腳本分配引腳,語句模板是
set_location_assignment PIN_30 -to i_clk

signalTap ii的仿真

這是本項(xiàng)目的關(guān)鍵,通過逐個(gè)模塊信號(hào)的仿真,可以最終得到符合要求的最終項(xiàng)目版本。
另外,生成的.sof文件位于output_file文件夾里

remarque

時(shí)鐘的設(shè)置是關(guān)鍵,推薦使用最高頻率的時(shí)鐘或者系統(tǒng)時(shí)鐘。
此處我們使用的是PLL產(chǎn)生的四倍頻時(shí)鐘

實(shí)驗(yàn)中使用的采樣和仿真結(jié)果

50Mhz ->每次取樣10ms脈沖數(shù)為500 0x1F4

50MHZ.png

25Mhz ->每次取樣10ms脈沖數(shù)為250 0xFA

25MHZ.png

12.5Mhz ->每次取樣10ms脈沖數(shù)為125 0x7D

12.5MHZ.png

總結(jié)

通過這個(gè)項(xiàng)目,我初次接觸了完整的開發(fā)流程,并且試驗(yàn)了modelsim的使用,為之后項(xiàng)目開發(fā)做了準(zhǔn)備。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容