跳轉到內容

可程式設計邏輯/硬體設計語言

來自華夏公益教科書,開放的書籍,開放的世界

可程式設計邏輯書籍的這一頁是一個可程式設計邏輯頁面。您可以透過擴充套件它來幫助我們。


此頁面將討論 HDL 方法的歷史和發展,以及我們將在這本書中學習的三種 HDL 語言:Verilog、VHDL 和 SystemC。

HDL 歷史

[編輯 | 編輯原始碼]

硬體描述語言 (HDL) 是專門用於程式設計 FPGA 和 CPLD 的程式語言。HDL 編譯器通常會建立“門對映”,而不是計算機可執行檔案。此門對映可以下載到可程式設計裝置上並執行。

有三種常見的 HDL:Verilog、VHDL 和 SystemC。其中,SystemC 是最新且最不流行的,儘管它在行業中的使用量一直在上升。

Verilog 歷史

[編輯 | 編輯原始碼]

Verilog HDL 起源於 1985 年的自動整合設計系統 (後來更名為閘道器設計自動化)。該公司當時由 PODEM 測試生成演算法的發明者 Prabhu Goel 博士私人持有。Verilog HDL 由 Phil Moorby 設計,他後來成為 Verilog-XL 的首席設計師,也是 Cadence Design Systems 的第一位公司院士。閘道器設計自動化隨著 Verilog-XL 的成功而迅速發展,最終在 1989 年被加利福尼亞州聖何塞的 Cadence Design Systems 收購。

Verilog 是作為模擬語言發明的。將 Verilog 用於綜合是一個完全事後的想法。有傳言說,閘道器和 Synopsys 在早期有過合併的討論,當時雙方都沒有給對方多少成功的機會。

在 1980 年代後期,似乎很明顯的是,設計師將從 n 點、HiLo 和 Verilog 等專有語言轉向美國國防部的標準 H.D.L.,即稱為 VHSIC 硬體描述語言。VHSIC 本身代表“超高速積體電路”。

也許是由於這種市場壓力,Cadence Design Systems 決定在 1990 年向公眾開放 Verilog 語言,從而誕生了 OVI(開放 Verilog 國際)。在此之前,Verilog HDL 是一種專有語言,是 Cadence Design Systems 的財產。當 OVI 於 1991 年成立時,許多小公司開始開發 Verilog 模擬器,包括 Chronologic Simulation、Frontline Design Automation 等。第一個模擬器於 1992 年上市,現在許多來源都提供了成熟的 Verilog 模擬器。

結果,Verilog 市場大幅增長。1994 年 Verilog 相關工具的市場規模超過 75,000,000 美元,使其成為市場上最具商業意義的硬體描述語言。

1993 年,在設計自動化分委員會下成立了一個 IEEE 工作組,以制定 IEEE Verilog 標準 1364。Verilog 於 1995 年成為 IEEE 標準 1364。

作為一項國際標準,Verilog 市場繼續增長。1998 年,僅 Verilog 模擬器的市場規模就超過了 150,000,000 美元,繼續保持其主導地位。

IEEE 工作組於 2002 年 3 月釋出了修訂後的標準,稱為 IEEE 1364-2001。此版本中出現了重大出版錯誤,並在 2003 年釋出了修訂版,稱為 IEEE 1364-2001 修訂版 C。

隨後,成立了一個新的工作組 IEEE P1800,在 IEEE 1364 語言的基礎上,並結合 Accellera 的額外貢獻。在 2004 年年中,IEEE 1364 委員會解散,標準維護工作由 IEEE 1800 工作組接管。

VHDL 歷史

[編輯 | 編輯原始碼]

VHDL 代表“超高速積體電路 (VHSIC) 硬體描述語言”,是可程式設計門陣列和專用積體電路 (ASIC) 中常用的 HDL。VHDL 的形式與 Ada 非常相似。VHDL 是一種用於描述數字電子系統的語言。它起源於 1980 年啟動的美國政府“超高速積體電路 (VHSIC)”計劃。在這個計劃的執行過程中,很明顯需要一種標準語言來描述積體電路 (IC) 的結構和功能。因此,誕生了 VHSIC 硬體描述語言 (VHDL)。

1985 年釋出了第一個公開的 VHDL 版本,即版本 7.2。1986 年,美國電氣和電子工程師協會 (IEEE) 收到了一份關於標準化該語言的提議,並在由商業、政府和學術界代表組成的團隊進行大量增強和修改後,於 1987 年將其標準化。由此產生的標準 IEEE 1076-1987 是當今幾乎所有模擬和綜合產品的基礎。1994 年釋出了該語言的增強版和更新版 IEEE 1076-1993,VHDL 工具供應商一直在透過在他們的產品中新增這些新的語言特性來做出回應。

雖然 IEEE 標準 1076 定義了完整的 VHDL 語言,但該語言的某些方面使得在不同的供應商工具之間編寫完全可移植的設計描述變得困難。問題源於 VHDL 基礎支援許多抽象資料型別,但沒有解決表徵不同訊號強度或常用模擬條件(例如未知和高阻抗)的簡單問題。模擬器公司開始使用新的非標準型別來增強 VHDL,以允許他們的客戶準確地模擬複雜的電子電路。這會導致問題,因為輸入到一個模擬器中的設計描述通常與其他模擬環境不相容。VHDL 很快成為非標準。為了解決非標準資料型別的問題,IEEE 委員會開發了另一個標準。這個標準編號為 1164,定義了一個標準包(VHDL 的一個功能,允許將常用宣告收集到外部庫中),其中包含標準九值資料型別的定義。這個標準資料型別稱為 std_logic,IEEE 1164 包通常被稱為標準邏輯包。

IEEE 1076-1987 和 IEEE 1164 標準共同構成了當今最廣泛使用的完整 VHDL 標準。IEEE 1076-1993 正在慢慢進入 VHDL 主流,但它沒有為綜合使用者新增任何重要的新功能。

標準 1076.3(通常稱為數值標準或綜合標準)定義了與實際硬體相關的 VHDL 資料型別的標準包和解釋。這個標準於 1995 年底釋出,旨在取代綜合工具供應商建立和與其產品一起分發的許多自定義(非標準)包。

IEEE 標準 1076.3 為綜合使用者做了 IEEE 1164 為模擬使用者做的事情,即提高標準 1076 的功能,同時確保不同供應商工具之間的相容性。1076.3 標準包括,除其他事項外,將時序資訊註釋到模擬模型是一個準確數字模擬的重要方面。VHDL 1076 標準描述了可用於時序註釋的各種語言特性。但是,它沒有描述在時序模型本身之外表達時序資料的標準方法。

SystemC 歷史

[編輯 | 編輯原始碼]
華夏公益教科書