發展歷史
Verilogs是由Gateway設計自動化公司的工程師於1983年末創立的。當時Gateway設計自動化公司還叫做自動集成設計系統(Automated Integrated Design Systems),1985年公司將名字改成了前者。該公司的菲爾·莫比(Phil Moorby)完成了Verilog的主要設計工作。1990年,Gateway設計自動化被Cadence公司收購。
1990年代初,開放Verilog國際(Open Verilog International, OVI)組織(即現在的Accellera)成立,Verilog面向公有領域開放。1992年,該組織尋求將Verilog納入電氣電子工程師學會標準 。最終,Verilog成為了電氣電子工程師學會1364-1995標準,即通常所說的Verilog-95。
設計人員在使用這個版本的Verilog的過程中發現了一些可改進之處。為了解決用戶在使用此版本Verilog過程中反映的問題,Verilog進行了修正和擴展,這部分內容後來再次被提交給電氣電子工程師學會。這個擴展後的版本後來成為了電氣電子工程師學會1364-2001標準,即通常所說的Verilog-2001。Verilog-2001是對Verilog-95的一個重大改進版本,它具備一些新的實用功能,例如敏感列表、多維數組、生成語句塊、命名埠連接等。目前,Verilog-2001是Verilog的最主流版本,被大多數商業電子設計自動化軟體包支持。
2005年,Verilog再次進行了更新,即電氣電子工程師學會1364-2005標準。該版本只是對上一版本的細微修正。這個版本還包括了一個相對獨立的新部分,即Verilog-AMS。這個擴展使得傳統的Verilog可以對集成的類比和混合訊號系統進行建模。容易與電氣電子工程師學會1364-2005標準混淆的是加強硬體驗證語言特性的SystemVerilog(電氣電子工程師學會1800-2005標準),它是Verilog-2005的一個超集,它是硬體描述語言、硬體驗證語言(針對驗證的需求,特別加強了物件導向特性)的一個集成。
2009年,IEEE 1364-2005和IEEE 1800-2005兩個部分合併為IEEE 1800-2009,成為了一個新的、統一的SystemVerilog硬體描述驗證語言(hardware description and verification language, HDVL)。
語言要素
Verilog的設計初衷是成為一種基本語法與C語言相近的硬體描述語言。這是因為C語言在Verilog設計之初,已經在許多領域得到廣泛應用,C語言的許多語言要素已經被許多人習慣。一種與C語言相似的硬體描述語言,可以讓電路設計人員更容易學習和接受。不過,Verilog與C語言還是存在許多差別。另外,作為一種與普通計算機程式語言不同的硬體描述語言,它還具有一些獨特的語言要素,例如向量形式的線網和暫存器、過程中的非阻塞賦值等。總的來說,具備C語言的設計人員將能夠很快掌握Verilog硬體描述語言。
與VHDL的比較
Verilog硬體描述語言(Verilog Hardware Description Language)的英語縮寫Verilog HDL和另一種類似的硬體描述語言VHDL在名稱上容易混淆,實際上二者是兩種不同的硬體描述語言。一些高級的電子設計自動化工具支持用戶在項目內同時使用Verilog和VHDL來進行硬體設計。
VHDL是由美國國防部主持研發的硬體描述語言,成為了第一個成為電氣電子工程師學會標準的硬體描述語言,美國政府相關的項目都是基於VHDL;而Verilog由民間商業公司的私有產品發展為IEEE標準的,因此在商用領域的市場占有量更大,設計人員和支持資源比VHDL更廣。在美國大約有10萬設計人員、200所大學教授採用Verilog硬體描述語言。
Verilog和VHDL作為業界廣泛認可、同為電氣電子工程師學會標準的硬體描述語言,有著各自的特點。VHDL的設計之初就更加針對標準化進行設計,Verilog則具有簡明、高效的代碼風格。兩種語言都能夠在多個抽象層次對數位電路建模,並且可以與驗證、仿真、綜合工具協同工作。其中,Verilog的邏輯閘級、電晶體級級電路描述能力更強,VHDL不具備這樣低級的描述能力,但是另一方面,VHDL的系統級抽象描述能力則比Verilog強。另外,由於Verilog與C語言在語法上有相似之處,因此具有C語言基礎的設計人員更容易掌握它,而VHDL設計人員需要具有Ada語言編程基礎,並且學習周期比Verilog更長。相關學術文獻顯示,在美國的高級數位系統設計領域,Verilog和VHDL的使用比率大約分別為80%和20%,這項比率在日本和台灣地區和美國相似。隨著Verilog-A被合併到Verilog標準之中,而該部分後來成為了Verilog-AMS的一部分,該語言增加了對類比電子系統的描述能力,因此它在混合訊號積體電路中有著更廣泛的應用。
數位IC設計能力鑑定資訊
■ 證照重要性與舉辦目的:
(1)考生具備熟悉數位電路邏輯設計之各種輔助工具與設計流程(包含Verilog coding, logic synthesis, simulation, DFT, FEC, STA, cell library…等等)。
(2)考生具備Verilog硬體描述語言設計IC能力。
(3)鑑定成績可提供各校參考做為未來學生畢業之條件。
(4)鑑定成績可提供未來學生入學面試及工作面試的能力依據。
(5)鑑定及格之考生可證明自己在數位IC設計上擁有基本的知識與專業能力。
■ 報考資格:
(1)大專以上在學學生
(2)業界人士(已經或想要從事設計相關產業之工程師)
■ 測驗內容:(詳細內容依簡章公告為主)| 科目 | 鑑定內容 |
| 學科筆試 | 以數位電路邏輯設計概念(包含大專院校教科書之Digital System, Logic Design, Logic Synthesis and Verification, VLSI Testing…等)、Verilog語法以及數位IC設計EDA工具流程為主;內容包含: 1. Logic design 2. Verilog coding 3. Logic Synthesis 4. Logic Verification 5.Testing 6.Power & Timing Analysis |
| 術科實作 | 由主辦單位提供指定題目、設計規格、設計方塊圖及相對應之測試向量,考生在考試時間內利用標準元件數位電路設計方式完成符合規格之晶片設計。 術科實作評分之4個主要項目為: (A)Verilog coding須符合題目所要求之功能規格 (B)Verilog coding須通過主辦單位所提供之nLint rule檢查 (C)邏輯合成後之gate-level simulation驗證完全無誤 (D)電路合成軟體時序分析驗證須符合題目所要求之規格 |
CIC 針對含有數位與類比的混合訊號 IC 提 出 一個混合 訊號設計流程
(Mixed-signal Design Flow)。本流程包含混合訊號 IC 設計前段 (Front End) 到後
段 (Back End) 的實現及驗證方法。驗證的目的是確保各個實現階段結果的正確
性,項目包括有 Function、Timing、Power、DRC 等,越到實體階段所須驗證的
項目就越多。
設計者於系統分析分離出數位部分與類比部份之後,混合訊號 IC 的設計流程分
成 5 大部分:
1. 數位電路部份的設計流程(Cell-based)
2. 類比電路部分的設計流程(Full-custom)
3. 數位/類比電路混合模擬 (Co-simulation)
4. 數位/類比 Layout 整合與驗證
5. 晶片下線及量測
邏輯綜合
概念簡介
設計人員編寫的Verilog代碼通常是在較高抽象級別的,例如暫存器傳輸級。這一抽象級別包含了對電路訊號在暫存器之間傳輸情況的描述。但是邏輯閘級的網表,即邏輯閘的相互連接形式,才最接近真實的硬體電路。這一形式與暫存器傳輸級的描述,在功能上是等效的。為了給後續硬體製造人員提供這種低抽象級別的描述,需要將高抽象級別的Verilog代碼轉換為低抽象級別的邏輯閘級網表。這一過程稱為邏輯綜合(Logic Synthesis)。
在自動化邏輯綜合工具出現之前,儘管人們可以用硬體描述語言進行設計,但是還是需要人工進行邏輯綜合。例如,如果電路模塊只有少數幾個輸入端,我們可以使用類似卡諾圖的方法來對邏輯函數進行化簡。隨著電路規模不斷增加,人工邏輯綜合的容易出錯、耗費大量時間的缺點逐漸凸顯。同時,在某種特殊器件製程下最優化的綜合結果不一定在另一種製程下還合適,如果需要採用另外的製程,設計人員需要花費很長時間重新進行邏輯綜合。隨著自動化邏輯綜合工具的出現,硬體描述語言、所需器件製程信息(製程庫)可以直接被邏輯綜合工具讀取,通過其內部的自動綜合算法,輸出符合設計約束(通常包括時序、功耗、面積的約束)的邏輯閘級網表。藉助自動綜合工具,設計人員可以將更多的精力放在高抽象級別的硬體描述語言設計。
參考網頁:https://zh.wikipedia.org/wiki/Verilog
http://ebs.cic.org.tw/ics/info/icdigital.action
http://www.cic.narl.org.tw/techpaper/pdf/CIC-DSD-RD-08-02.pdf
沒有留言:
張貼留言