北大數(shù)字集成電路課件2verilog簡介_第1頁
北大數(shù)字集成電路課件2verilog簡介_第2頁
北大數(shù)字集成電路課件2verilog簡介_第3頁
北大數(shù)字集成電路課件2verilog簡介_第4頁
北大數(shù)字集成電路課件2verilog簡介_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

數(shù)字集成電路設計入門--從HDL到版圖 北大微電子學系1第二章Verilog應用學習內(nèi)容使用HDL設計的先進性Verilog的主要用途Verilog的歷史如何從抽象級(levelsofabstraction)理解電路設計Verilog描述2術語定義(termsanddefinitions)硬件描述語言HDL:描述電路硬件及時序的一種編程語言仿真器:讀入HDL并進行解釋及執(zhí)行的一種軟件抽象級:描述風格的詳細程度,如行為級和門級ASIC:專用集成電路(ApplicationSpecificIntegratedCircuit)ASICVender:芯片制造商,開發(fā)并提供單元庫自下而上的設計流程:一種先構(gòu)建底層單元,然后由底層單元構(gòu)造更大的系統(tǒng)的設計方法。自頂向下的設計流程:一種設計方法,先用高抽象級構(gòu)造系統(tǒng),然后再設計下層單元RTL級:寄存器傳輸級(RegisterTransferLevel),用于設計的可綜合的一種抽象級Tcl:ToolcommandLanguage,向交互程序輸入命令的描述語言3什么是硬件描述語言HDL具有特殊結(jié)構(gòu)能夠?qū)τ布壿嬰娐返墓δ苓M行描述的一種高級編程語言這種特殊結(jié)構(gòu)能夠:描述電路的連接描述電路的功能在不同抽象級上描述電路描述電路的時序表達具有并行性HDL主要有兩種:Verilog和VHDLVerilog起源于C語言,因此非常類似于C語言,容易掌握VHDL起源于ADA語言,格式嚴謹,不易學習。VHDL出現(xiàn)較晚,但標準化早。IEEE1706-1985標準。4為什么使用HDL使用HDL描述設計具有下列優(yōu)點:設計在高層次進行,與具體實現(xiàn)無關設計開發(fā)更加容易早在設計期間就能發(fā)現(xiàn)問題能夠自動的將高級描述映射到具體工藝實現(xiàn)在具體實現(xiàn)時才做出某些決定HDL具有更大的靈活性可重用可以選擇工具及生產(chǎn)廠HDL能夠利用先進的軟件更快的輸入易于管理5Verilog的歷史VerilogHDL是在1983年由GDA(GateWayDesignAutomation)公司的PhilMoorby所創(chuàng)。PhiMoorby后來成為Verilog-XL的主要設計者和Cadence公司的第一個合伙人。在1984~1985年間,Moorby設計出了第一個Verilog-XL的仿真器。1986年,Moorby提出了用于快速門級仿真的XL算法。1990年,Cadence公司收購了GDA公司1991年,Cadence公司公開發(fā)表Verilog語言,成立了OVI(OpenVerilogInternational)組織來負責VerilogHDL語言的發(fā)展。1995年制定了VerilogHDL的IEEE標準,即IEEE1364。6Verilog的用途Verilog的主要應用包括:ASIC和FPGA工程師編寫可綜合的RTL代碼高抽象級系統(tǒng)仿真進行系統(tǒng)結(jié)構(gòu)開發(fā)測試工程師用于編寫各種層次的測試程序用于ASIC和FPGA單元或更高層次的模塊的模型開發(fā)7抽象級(LevelsofAbstraction)Verilog既是一種行為描述的語言也是一種結(jié)構(gòu)描述語言。Verilog模型可以是實際電路的不同級別的抽象。這些抽象的級別包括:系統(tǒng)說明-設計文檔/算法描述RTL/功能級-Verilog門級/結(jié)構(gòu)級-Verilog版圖/物理級-幾何圖形行為綜合綜合前仿真邏輯綜合綜合后仿真版圖8抽象級(LevelsofAbstraction)在抽象級上需要進行折衷系統(tǒng)說明-設計文檔/算術描述RTL/功能級-Verilog門級/結(jié)構(gòu)級-Verilog版圖/物理級-幾何圖形詳細程度低高輸入/仿真速度高低9抽象級(LevelsofAbstraction)Verilog可以在三種抽象級上進行描述行為級用功能塊之間的數(shù)據(jù)流對系統(tǒng)進行描述在需要時在函數(shù)塊之間進行調(diào)度賦值。RTL級/功能級用功能塊內(nèi)部或功能塊之間的數(shù)據(jù)流和控制信號描述系統(tǒng)基于一個已定義的時鐘的周期來定義系統(tǒng)模型結(jié)構(gòu)級/門級用基本單元(primitive)或低層元件(component)的連接來描述系統(tǒng)以得到更高的精確性,特別是時序方面。在綜合時用特定工藝和低層元件將RTL描述映射到門級網(wǎng)表10抽象級(LevelsofAbstraction)設計工程師在不同的設計階段采用不同的抽象級首先在行為級描述各功能塊,以降低描述難度,提高仿真速度。在綜合前將各功能模塊進行RTL級描述。用于綜合的庫中的大多數(shù)單元采用結(jié)構(gòu)級描述。在本教程中的結(jié)構(gòu)級描述部分將對結(jié)構(gòu)級(門級)描述進行更詳細的說明。Verilog還有一定的晶體管級描述能力及算法級描述能力11行為級和RTL級MUX的行為可以描述為:只要信號a或b或sel發(fā)生變化,如果sel為0則選擇a輸出;否則選擇b輸出。modulemuxtwo(out,a,b,sel);inputa,b,sel;outputout;regout;always@(seloraorb)if(!sel)out=a;elseout=b;endmodule這個行為級RTL描述不處理X和Z狀態(tài)輸入,并且沒有延時。在行為級模型中,邏輯功能描述采用高級語言結(jié)構(gòu),如@,while,wait,if,case。Testbench(testfixture)通常采用行為級描述。所有行為級結(jié)構(gòu)在testbench描述中都可以采用。RTL模型中數(shù)據(jù)流都是基于時鐘的。任何時鐘元件在時鐘沿處的行為都要精確描述。RTL級描述是行為級Verilog的子集。12結(jié)構(gòu)級描述結(jié)構(gòu)級Verilog適合開發(fā)小規(guī)模元件,如ASIC和FPGA的單元Verilog內(nèi)部帶有描述基本邏輯功能的基本單元(primitive),如and門。用戶可以定義自己的基本單元UDP(UserDefinedPrivitives)綜合產(chǎn)生的結(jié)果網(wǎng)表通常是結(jié)構(gòu)級的。用戶可以用結(jié)構(gòu)級描述粘接(glue)邏輯。下面是MUX的結(jié)構(gòu)級描述,采用Verilog基本單元(門)描述。描述中含有傳輸延時。moduletwomux(out,a,b,sl);inputa,b,sl;outputout;notu1(nsl,sl);and#1u2(sela,a,nsl);and#1u3(selb,b,sl);or#2u4(out,sela,selb);endmodule綜合不支持!13僅需一種語言Verilog的一個主要特點是可應用于各種抽象級。建模時可采用門級和RTL級混合描述,在開發(fā)testfixture時可以采用行為級描述。14復習什么是Verilog?Verilog是公開的嗎?設計時什么時候采用VerilogR

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論