新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > Verilog HDL簡明教程(part1)

        Verilog HDL簡明教程(part1)

        作者: 時間:2017-10-11 來源:網絡 收藏

        第一章 簡介

        Verilog HDL是一種硬件描述語言,用于從算法級、門級到開關級的多種抽象設計層次的數字系統建模。被建模的數字系統對象的復雜性可以介于簡單的門和完整的電子數字系統之間。數字系統能夠按層次描述,并可在相同描述中顯式地進行時序建模。

        本文引用地址:http://www.104case.com/article/201710/365607.htm

        Verilog HDL 語言具有下述描述能力:設計的行為特性、設計的數據流特性、設計的結構組成以及包含響應監控和設計驗證方面的時延和波形產生機制。所有這些都使用同一種建模語言。此外,Verilog HDL語言提供了編程語言接口,通過該接口可以在模擬、驗證期間從設計外部訪問設計,包括模擬的具體控制和運行。

        Verilog HDL語言不僅定義了語法,而且對每個語法結構都定義了清晰的模擬、仿真語義。因此,用這種語言編寫的模型能夠使用Verilog仿真器進行驗證。語言從C編程語言中繼承了多種操作符和結構。Verilog HDL提供了擴展的建模能力,其中許多擴展最初很難理解。但是,Verilog HDL語言的核心子集非常易于學習和使用,這對大多數建模應用來說已經足夠。當然,完整的硬件描述語言足以對從最復雜的芯片到完整的電子系統進行描述。

        Verilog HDL語言最初是于1983年由Gateway Design AutomaTIon公司為其模擬器產品開發的硬件建模語言。那時它只是一種專用語言。由于他們的模擬、仿真器產品的廣泛使用,Verilog HDL 作為一種便于使用且實用的語言逐漸為眾多設計者所接受。在一次努力增加語言普及性的活動中,Verilog HDL語言于1990年被推向公眾領域。 Open Verilog InternaTIonal (OVI)是促進Verilog發展的國際性組織。1992年, OVI決定致力于推廣Verilog OVI標準成為IEEE標準。這一努力最后獲得成功,Verilog 語言于1995年成為IEEE標準,稱為IEEE Std 1364-1995。完整的標準在Verilog硬件描述語言參考手冊中有詳細描述。
        主要能力

        下面列出的是Verilog硬件描述語言的主要能力:
        * 基本邏輯門,例如and、or和nand等都內置在語言中。
        * 用戶定義原語(UDP)創建的靈活性。用戶定義的原語既可以是組合邏輯原語,也可以是時序邏輯原語。
        * 開關級基本結構模型,例如pmos 和nmos等也被內置在語言中。
        * 提供顯式語言結構指定設計中的端口到端口的時延及路徑時延和設計的時序檢查。
        * 可采用三種不同方式或混合方式對設計建模。這些方式包括:行為描述方式—使用過程化結構建模;數據流方式—使用連續賦值語句方式建模;結構化方式—使用門和模塊實例語句描述建模。
        * Verilog HDL中有兩類數據類型:線網數據類型和寄存器數據類型。線網類型表示構件間的物理連線,而寄存器類型表示抽象的數據存儲元件。
        * 能夠描述層次設計,可使用模塊實例結構描述任何層次。
        * 設計的規??梢允侨我獾?;語言不對設計的規模(大?。┦┘尤魏蜗拗?。
        * Verilog HDL不再是某些公司的專有語言而是IEEE標準。

        * 人和機器都可閱讀Verilog 語言,因此它可作為EDA的工具和設計者之間的交互語言。

        * Verilog HDL語言的描述能力能夠通過使用編程語言接口(PLI)機制進一步擴展。PLI是允許外部函數訪問Verilog 模塊內信息、允許設計者與模擬器交互的例程集合。

        * 設計能夠在多個層次上加以描述,從開關級、門級、寄存器傳送級(RTL)到算法級,包括進程和隊列級。

        * 能夠使用內置開關級原語在開關級對設計完整建模。

        * 同一語言可用于生成模擬激勵和指定測試的驗證約束條件,例如輸入值的指定。

        * Verilog HDL 能夠監控模擬驗證的執行,即模擬驗證執行過程中設計的值能夠被監控和顯示。這些值也能夠用于與期望值比較,在不匹配的情況下,打印報告消息。

        * 在行為級描述中,Verilog HDL不僅能夠在RTL級上進行設計描述,而且能夠在體系結構級描述及其算法級行為上進行設計描述。

        * 能夠使用門和模塊實例化語句在結構級進行結構描述。

        * Verilog HDL 的混合方式建模能力,即在一個設計中每個模塊均可以在不同設計層次上建模。

        * Verilog HDL 還具有內置邏輯函數,例如(按位與)和|(按位或)。
        * 對高級編程語言結構,例如條件語句、情況語句和循環語句,語言中都可以使用。

        * 可以顯式地對并發和定時進行建模。

        * 提供強有力的文件讀寫能力。

        * 語言在特定情況下是非確定性的,即在不同的模擬器上模型可以產生不同的結果;例如,事件隊列上的事件順序在標準中沒有定義。
        習題
        1. Verilog HDL 是在哪一年首次被IEEE標準化的?

        2. Verilog HDL支持哪三種基本描述方式?

        3. 可以使用Verilog HDL描述一個設計的時序嗎?

        4. 語言中的什么特性能夠用于描述參數化設計?

        5. 能夠使用Verilog HDL 編寫測試驗證程序嗎?

        6. Verilog HDL 是由哪個公司最先開發的?

        7. Verilog HDL中的兩類主要數據類型什么?

        8. UDP代表什么?

        9. 寫出兩個開關級基本門的名稱。

        10. 寫出兩個基本邏輯門的名稱。



        關鍵詞: VerilogHDL FPGA

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 衡南县| 诸城市| 辽阳市| 浦城县| 巫溪县| 社会| 乳山市| 湾仔区| 洞头县| 雷波县| 吴堡县| 江源县| 邵阳县| 襄城县| 佛山市| 雷波县| 清新县| 毕节市| 仙桃市| 咸丰县| 柘荣县| 长治市| 酉阳| 周至县| 黄石市| 鄂伦春自治旗| 黎川县| 阿荣旗| 东方市| 绍兴县| 西城区| 临澧县| 鹤岗市| 秭归县| 吕梁市| 南昌市| 长宁县| 永吉县| 台中县| 晋江市| 囊谦县|