3月 12, 2010

【筆記】Introduction to Verilog

@
  因為系上這學期有一門要寫 Verilog 的必修課,所以想說乾脆直接在 blog 上做個筆記整理內容,並供一起上課的同學們作為參考。不過,其中的許多內容都不是我非常瞭解的,假如有任何錯誤或問題,都歡迎各位提出來。



  說到 Verilog 就不能不先提到 HDL(Hardware Description Language,硬體描述語言)

  所謂 HDL,即是利用一般高階語言的程式撰寫法,以達成數位電路功能或結構的設計、驗證與模擬。利用 HDL,我們便可以不必透過傳統的手繪方式設計電路,再在麵包板上接出電路來進行驗證與模擬。而 Verilog 則是主流的兩種 HDL 之一(註1)。

  Verilog 在設計時採用了近似於 C 語言的語法,以類似於函式(function)的模組(module)作為描述的基本單位。對於熟悉 C 語言的程式設計師來說,Verilog 還算是相當容易學習。



  在實際的設計上,Verilog 則提供了四種層級的描述方式,供設計者在不同層次的觀點上設計電路。分別為:開關層級(Switch Level)邏輯閘層級(Gate Level)資料流層級(Dataflow Level)行為層級(Behavioral Level)

  開關層級是 Verilog 所提供的最低層級。在這個層級上,設計者需要瞭解電路的開關--電晶體(transistor)的元件特性,並以此進行電路的設計。

  在邏輯閘層級中,設計者的觀點從一個個的電晶體,轉到較高層的邏輯閘(logic gate)。以此觀點,設計者可以直接利用如 and、or、not、xor 等邏輯閘,與將之連接的線路來進行設計。

  在資料流層級中,我們關注的則是資料如何經由硬體元件進行處理、儲存、與流向;而在最高層級的行為層級上,設計者只需要知道模組與函式間的功能,而不去考慮硬體實作的細節。




註1. 另一種常用的硬體描述語言是 VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)

2 回覆:

yen3 提到...

其實在整個 IC Design 中,RTL Level 上去是 ESL Level,如果有興趣可以看 CIC 相關文件 XD。

在這裡

小參 提到...

感覺不是非常瞭解.....
意思是指 ESL 的抽象層次比 RTL 來得高嗎?

張貼留言