VHDL語言

通用硬體描述語言

VHDL的英文全名是VHSIC Hardware Description Language(VHSIC硬體描述語言)。VHSIC是Very High Speed Integrated Circuit的縮寫,是20世紀80年代在美國國防部的資助下始創的,並最終導致了VHDL語言的出現。1987年底,VHDL被IEEE和美國國防部確認為標準硬體描述語言。VHDL主要用於描述數字系統的結構,行為,功能和介面。除了含有許多具有硬體特徵的語句外,VHDL的語言形式和描述風格與句法是十分類似於一般的計算機高級語言。VHDL的程序結構特點是將一項工程設計,或稱設計實體(可以是一個元件,一個電路模塊或一個系統)分成外部(或稱可視部分,及埠)和內部(或稱不可視部分),既涉及實體的內部功能和演演算法完成部分。在對一個設計實體定義了外部界面后,一旦其內部開發完成後,其他的設計就可以直接調用這個實體。這種將設計實體分成內外部分的概念是VHDL系統設計的基本點。

簡介


()描述語言首,標僅化標準,采式描述設計夠二。語言描述產二。模型閱讀。
()模擬模型模型語言,采模擬軟體模擬。模型仿軟體閱讀。
()綜合模型設計系統,設計輸。模型綜合軟體閱讀。

特點


VHDL語言能夠成為標準化的硬體描述語言並獲得廣泛應用,它自身必然具有很多其他硬體描述語言所不具備的優點。歸納起來,VHDL語言主要具有以下優點:
(1)VHDL語言功能強大,設計方式多樣
VHDL語言具有強大的語言結構,只需採用簡單明確的VHDL語言程序就可以描述十分複雜的硬體電路。同時,它還具有多層次的電路設計描述功能。此外,VHDL語言能夠同時支持同步電路、非同步電路和隨機電路的設計實現,這是其他硬體描述語言所不能比擬的。VHDL語言設計方法靈活多樣,既支持自頂向下的設計方式,也支持自底向上的設計方法;既支持模塊化設計方法,也支持層次化設計方法。
(2)VHDL語言具有強大的硬體描述能力
VHDL語言具有多層次的電路設計描述功能,既可描述系統級電路,也可以描述門級電路;描述方式既可以採用行為描述、寄存器傳輸描述或者結構描述,也可以採用三者的混合描述方式。同時,VHDL語言也支持慣性延遲和傳輸延遲,這樣可以準確地建立硬體電路的模型。VHDL語言的強大描述能力還體現在它具有豐富的數據類型。VHDL語言既支持標準定義的數據類型,也支持用戶定義的數據類型,這樣便會給硬體描述帶來較大的自由度。
(3)VHDL語言具有很強的移植能力
VHDL語言很強的移植能力主要體現在:對於同一個硬體電路的VHDL語言描述,它可以從一個模擬器移植到另一個模擬器上、從一個綜合器移植到另一個綜合器上或者從一個工作平台移植到另一個工作平台上去執行。
(4)VHDL語言的設計描述與器件無關
採用VHDL語言描述硬體電路時,設計人員並不需要首先考慮選擇進行設計的器件。這樣做的好處是可以使設計人員集中精力進行電路設計的優化,而不需要考慮其他的問題。當硬體電路的設計描述完成以後,VHDL語言允許採用多種不同的器件結構來實現。
(5)VHDL語言程序易於共享和復用
VHDL語言採用基於庫(library)的設計方法。在設計過程中,設計人員可以建立各種可再次利用的模塊,一個大規模的硬體電路的設計不可能從門級電路開始一步步地進行設計,而是一些模塊的累加。這些模塊可以預先設計或者使用以前設計中的存檔模塊,將這些模塊存放在庫中,就可以在以後的設計中進行復用。
由於VHDL語言是一種描述、模擬、綜合、優化和布線的標準硬體描述語言,因此它可以使設計成果在設計人員之間方便地進行交流和共享,從而減小硬體電路設計的工作量,縮短開發周期。

學習注意問題


學習VHDL語言應注意的幾個問題
(1)了解VHDL語言模擬器是如何模擬代碼的過程有助於弄清一些VHDL語句的語義,而對語義有一個清楚地理解可使你能夠精練準確地進行VHDL代碼編寫。目前常用的VHDL模擬軟體有ActiveHDL和Modelsim。
(2)VHDL語言的有些構造,較多的是專用於模擬和驗證而不是綜合,綜合軟體也許會忽略掉這樣的構造和規則。VHDL是基於模擬的語言,它所提供的行為描述的一切方便手段實際上都是為建立模擬模型的。
(3)用於模擬的模型和用於綜合的模型有差別。
(4)為綜合而寫的代碼可以進行模擬,但不是所有為模擬而寫的代碼可以用來綜合。
(5)應大致了解綜合軟體的工作原理。目前常用的綜合軟體有Synplicity公司的Synplify和SynplifyPro軟體,Synopsys公司的FPGAExpress軟體,Mentor公司的LeonardoSpectrum軟體,Xilinx公司的XST(XilinxSynthesisTechnology)軟體。
(6)將VHDL和CPLD、FPGA的學習結合起來。
(7)應基本熟悉CPLD、FPGA器件的邏輯資源。