免費電子書:Verilog 電路設計

Verilog

基本語法

型態

全域變數

基本元件

多樣的寫法

指定

assign

always

initial

運算式

分枝

迴圈

模組

函數

Task

陣列

輸出入

觀察

真值表

測試程式

訊息顯示

注意事項

模擬程序

硬體工程

程式範例

Xor

Xor3

全加器

加法器

加減器

快速加法器

乘法器

ALU

閂鎖器

脈衝偵測

計數器

多工器

暫存器群

記憶體

延遲問題

浮點數

狀態機

程式計數器

CPU0-Mini

CPU0

pipeline

工具

QuartusII

Icarus

Veritek

訊息

相關網站

參考文獻

最新修改

簡體版

English

Verilog 與 VHDL 都是用來設計數位電路的硬體描述語言,但 VHDL 在1983年被提出後,1987 年被美國國防部和IEEE確定為標準的硬體描述語言。

Verilog 是由 Gateway Design Automation 公司於 1984 年開始發展的, Cadence Design Systems 公司於1990年購併了 Gateway 公司,Cadence 隨後將 Verilog 提交到 Open Verilog International 成為開放公用標準,1995 年 Verilog 被 IEEE 認可成為 IEEE 1364-1995 標準,簡稱為 Verilog-95。此一標準於 2001 年更新後成為 Verilog-2001。

相較於 VHDL 而言,Verilog 的語法較為簡潔,因此經常被專業的數位電路設計者採用,而 VHDL 的使用族群則有較多的初學者。當我們想學習數位電路設計時,經常會難以選擇要用哪一種語言,因為 VHDL 的書籍與教材似乎比 Verilog 多一些,但是 Verilog 的高階設計電路(像是開放原始碼 CPU 等)則比 VHDL 多很多。

筆者是為了要設計 CPU 而學習數位電路設計的,因此決定學習 Verilog 語言,而非 VHDL 語言。雖然筆者也學過 VHDL 語言,但後來發現 Verilog 相當好,相對而言語法簡潔了許多,因此筆者比較偏好 Verilog 語言。

筆者的專長是軟體程式設計,因此熟悉 C, C#, Java, R, JavaScript 等語言,但由於 Verilog 或 VHDL 都是設計數位電路硬體用的語言,因此與那些軟體語言有某種程度上的不同,其中最重要的幾個特性如下:

  • Concurrent v.s. Sequential
  • Blocking v.s. Nonblocking
  • Delayed evaluations v.s. Delayed assignments

這些特性是在學習 Verilog 語言時,必須要特別注意的,一但能清楚的分辨這些特性之後,您就可以從「軟體設計領域」跨入「硬體設計領域」了,對於筆者而言,這是一件相當令人興奮的事情。

Facebook

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License