VHDL:中文版Verilog HDL簡明教程:第1章 簡介
Verilog HDL 語言具有下述描述能力:設(shè)計的行為特性、設(shè)計的數(shù)據(jù)流特性、設(shè)計的結(jié)構(gòu)組成以及包含響應(yīng)監(jiān)控和設(shè)計驗證方面的時延和波形產(chǎn)生機制。所有這些都使用同一種建模語言。此外,Verilog HDL語言提供了編程語言接口,通過該接口可以在模擬、驗證期間從設(shè)計外部訪問設(shè)計,包括模擬的具體控制和運行。
Verilog HDL語言不僅定義了語法,而且對每個語法結(jié)構(gòu)都定義了清晰的模擬、仿真語義。因此,用這種語言編寫的模型能夠使用Verilog仿真器進行驗證。語言從 C編程語言中繼承了多種操作符和結(jié)構(gòu)。Verilog HDL提供了擴展的建模能力,其中許多擴展最初很難理解。但是,Verilog HDL語言的核心子集非常易于學(xué)習(xí)和使用,這對大多數(shù)建模應(yīng)用來說已經(jīng)足夠。當(dāng)然,完整的硬件描述語言足以對從最復(fù)雜的芯片到完整的電子系統(tǒng)進行描述。
歷史
Verilog HDL語言最初是于1983年由Gateway Design Automation公司為其模擬器產(chǎn)品開發(fā)的硬件建模語言。那時它只是一種專用語言。由于他們的模擬、仿真器產(chǎn)品的廣泛使用,Verilog HDL 作為一種便于使用且實用的語言逐漸為眾多設(shè)計者所接受。在一次努力增加語言普及性的活動中,Verilog HDL語言于1990年被推向公眾領(lǐng)域。 Open Verilog International (OVI)是促進Verilog發(fā)展的國際性組織。1992年, OVI決定致力于推廣Verilog OVI標(biāo)準(zhǔn)成為IEEE標(biāo)準(zhǔn)。這一努力最后獲得成功,Verilog 語言于1995年成為IEEE標(biāo)準(zhǔn),稱為IEEE Std 1364-1995。完整的標(biāo)準(zhǔn)在Verilog硬件描述語言參考手冊中有詳細(xì)描述。
主要能力
下面列出的是Verilog硬件描述語言的主要能力:
* 基本邏輯門,例如and、or和nand等都內(nèi)置在語言中。
* 用戶定義原語(UDP)創(chuàng)建的靈活性。用戶定義的原語既可以是組合邏輯原語,也可以是時序邏輯原語。
* 開關(guān)級基本結(jié)構(gòu)模型,例如pmos 和nmos等也被內(nèi)置在語言中。
* 提供顯式語言結(jié)構(gòu)指定設(shè)計中的端口到端口的時延及路徑時延和設(shè)計的時序檢查。
* 可采用三種不同方式或混合方式對設(shè)計建模。這些方式包括:行為描述方式—使用過程化結(jié)構(gòu)建模;數(shù)據(jù)流方式—使用連續(xù)賦值語句方式建模;結(jié)構(gòu)化方式—使用門和模塊實例語句描述建模。
* Verilog HDL中有兩類數(shù)據(jù)類型:線網(wǎng)數(shù)據(jù)類型和寄存器數(shù)據(jù)類型。線網(wǎng)類型表示構(gòu)件間的物理連線,而寄存器類型表示抽象的數(shù)據(jù)存儲元件。
* 能夠描述層次設(shè)計,可使用模塊實例結(jié)構(gòu)描述任何層次。
* 設(shè)計的規(guī)??梢允侨我獾?;語言不對設(shè)計的規(guī)模(大小)施加任何限制。
* Verilog HDL不再是某些公司的專有語言而是IEEE標(biāo)準(zhǔn)。
* 人和機器都可閱讀Verilog 語言,因此它可作為EDA的工具和設(shè)計者之間的交互語言。
* Verilog HDL語言的描述能力能夠通過使用編程語言接口(PLI)機制進一步擴展。PLI是允許外部函數(shù)訪問Verilog 模塊內(nèi)信息、允許設(shè)計者與模擬器交互的例程集合。
* 設(shè)計能夠在多個層次上加以描述,從開關(guān)級、門級、寄存器傳送級(RTL)到算法級,包括進程和隊列級。
* 能夠使用內(nèi)置開關(guān)級原語在開關(guān)級對設(shè)計完整建模。
* 同一語言可用于生成模擬激勵和指定測試的驗證約束條件,例如輸入值的指定。
* Verilog HDL 能夠監(jiān)控模擬驗證的執(zhí)行,即模擬驗證執(zhí)行過程中設(shè)計的值能夠被監(jiān)控和顯示。這些值也能夠用于與期望值比較,在不匹配的情況下,打印報告消息。
* 在行為級描述中,Verilog HDL不僅能夠在RTL級上進行設(shè)計描述,而且能夠在體系結(jié)構(gòu)級描述及其算法級行為上進行設(shè)計描述。
* 能夠使用門和模塊實例化語句在結(jié)構(gòu)級進行結(jié)構(gòu)描述。
* Verilog HDL 的混合方式建模能力,即在一個設(shè)計中每個模塊均可以在不同設(shè)計層次上建模。
* Verilog HDL 還具有內(nèi)置邏輯函數(shù),例如(按位與)和|(按位或)。
* 對高級編程語言結(jié)構(gòu),例如條件語句、情況語句和循環(huán)語句,語言中都可以使用。
* 可以顯式地對并發(fā)和定時進行建模。
* 提供強有力的文件讀寫能力。
* 語言在特定情況下是非確定性的,即在不同的模擬器上模型可以產(chǎn)生不同的結(jié)果;例如,事件隊列上的事件順序在標(biāo)準(zhǔn)中沒有定義。
習(xí)題
1. Verilog HDL 是在哪一年首次被IEEE標(biāo)準(zhǔn)化的?
2. Verilog HDL支持哪三種基本描述方式?
3. 可以使用Verilog HDL描述一個設(shè)計的時序嗎?
4. 語言中的什么特性能夠用于描述參數(shù)化設(shè)計?
5. 能夠使用Verilog HDL 編寫測試驗證程序嗎?
6. Verilog HDL 是由哪個公司最先開發(fā)的?
7. Verilog HDL中的兩類主要數(shù)據(jù)類型什么?
8. UDP代表什么?
9. 寫出兩個開關(guān)級基本門的名稱。
10. 寫出兩個基本邏輯門的名稱。
評論