Verilog 設(shè)計方法及流程詳解
設(shè)計方法
Verilog 的設(shè)計多采用自上而下的設(shè)計方法(top-down)。即先定義頂層模塊功能,進(jìn)而分析要構(gòu)成頂層模塊的必要子模塊;然后進(jìn)一步對各個模塊進(jìn)行分解、設(shè)計,直到到達(dá)無法進(jìn)一步分解的底層功能塊。這樣,可以把一個較大的系統(tǒng),細(xì)化成多個小系統(tǒng),從時間、工作量上分配給更多的人員去設(shè)計,從而提高了設(shè)計速度,縮短了開發(fā)周期。

設(shè)計流程

Verilog 的設(shè)計流程,一般包括以下幾個步驟:
需求分析
工作人員需要對用戶提出的功能要求進(jìn)行分析理解,做出電路系統(tǒng)的整體規(guī)劃,形成詳細(xì)的技術(shù)指標(biāo),確定初步方案。例如,要設(shè)計一個電子屏,需要考慮供電方式、工作頻率、產(chǎn)品體積、成本、功耗等,電路實(shí)現(xiàn)采用 ASIC 還是選用 FPGA/CPLD 器件等。
功能劃分
正確地分析了用戶的電路需求后,就可以進(jìn)行邏輯功能的總體設(shè)計,設(shè)計整個電路的功能、接口和總體結(jié)構(gòu),考慮功能模塊的劃分和設(shè)計思路,各子模塊的接口和時序(包括接口時序和內(nèi)部信號的時序)等,向項(xiàng)目組成員合理分配子模塊設(shè)計任務(wù)。
文本描述
可以用任意的文本編輯器,也可以用專用的 HDL 編輯環(huán)境,對所需求的數(shù)字電路進(jìn)行設(shè)計建模,保存為 .v 文件。
功能仿真(前仿真)
對建模文件進(jìn)行編譯,對模型電路進(jìn)行功能上的仿真驗(yàn)證,查找設(shè)計的錯誤并修正。
此時的仿真驗(yàn)證并沒有考慮到信號的延遲等一些 timing 因素,只是驗(yàn)證邏輯上的正確性。
邏輯綜合
綜合(synthesize),就是在標(biāo)準(zhǔn)單元庫和特定的設(shè)計約束的基礎(chǔ)上,將設(shè)計的高層次描述(Verilog 建模)轉(zhuǎn)換為門級網(wǎng)表的過程。邏輯綜合的目的是產(chǎn)生物理電路門級結(jié)構(gòu),并在邏輯、時序上進(jìn)行一定程度的優(yōu)化,尋求邏輯、面積、功耗的平衡,增強(qiáng)電路的可測試性。
但不是所有的 Verilog 語句都是可以綜合成邏輯單元的,例如時延語句。
布局布線
根據(jù)邏輯綜合出的網(wǎng)表與約束文件,利用廠家提供的各種基本標(biāo)準(zhǔn)單元庫,對門級電路進(jìn)行布局布線。至此,已經(jīng)將 Verilog 設(shè)計的數(shù)字電路,設(shè)計成由標(biāo)準(zhǔn)單元庫組成的數(shù)字電路。
時序仿真(后仿真)
布局布線后,電路模型中已經(jīng)包含了時延信息。利用在布局布線中獲得的精確參數(shù),用仿真軟件驗(yàn)證電路的時序。單元器件的不同、布局布線方案都會給電路的時序造成影響,嚴(yán)重時會出現(xiàn)錯誤。出錯后可能就需要重新修改 RTL(寄存器傳輸級描述,即 Verilog 初版描述),重復(fù)后面的步驟。這樣的過程可能反復(fù)多次,直至錯誤完全排除。
FPGA/CPLD 下載或 ASIC 制造工藝生產(chǎn)
完成上面所有步驟后,就可以通過開發(fā)工具將設(shè)計的數(shù)字電路目標(biāo)文件下載到 FPGA/CPLD 芯片中,然后在電路板上進(jìn)行調(diào)試、驗(yàn)證。
如果要在 ASIC 上實(shí)現(xiàn),則需要制造芯片。一般芯片制造時,也需要先在 FPGA 板卡上進(jìn)行邏輯功能的驗(yàn)證。
以上就是Verilog 設(shè)計方法及流程詳解的詳細(xì)內(nèi)容,更多關(guān)于Verilog 設(shè)計方法流程的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
本文主要介紹幾種軟件測試方法,這里對軟件測試做了幾種分類和匯總,在做軟件測試的時候可以用適當(dāng)?shù)姆椒?,有需要的小伙伴可以參考?/div> 2016-08-08
關(guān)于學(xué)習(xí) Flex 的一點(diǎn)建議(轉(zhuǎn)載)
關(guān)于學(xué)習(xí) Flex 的一點(diǎn)建議(轉(zhuǎn)載)...2007-01-01最新評論

