VHDL
跳至導覽
跳至搜尋
腳本錯誤:沒有「Message box」這個模塊。 Template:NoteTA 腳本錯誤:沒有「Infobox」這個模塊。腳本錯誤:沒有「Check for unknown parameters」這個模塊。
VHDL,全稱超高速集成電路硬件描述語言(Template:Langx),在基於複雜可程式邏輯裝置、現場可編程邏輯門陣列和特殊應用積體電路的數字系統設計中有着廣泛的應用。
VHDL語言誕生於1983年,1987年被美國國防部和IEEE確定為標準的硬件描述語言。自從IEEE發佈了VHDL的第一個標準版本IEEE 1076-1987後,各大EDA公司都先後推出了自己支援VHDL的EDA工具。VHDL在電子設計行業得到了廣泛的認同。此後IEEE又先後發佈了IEEE 1076-1993和IEEE 1076-2000版本。
程式語言[編輯]
註:VHDL不區分大小寫;
library ieee;--库声明,声明工程中用到的库,这里声明的是IEEE库
use ieee.std_logic_1164.all;--包声明,声明工程中用到的包,这里声明的是IEEE的STD_LOGIC_1164包
單體(entity)[編輯]
它負責宣告一個硬件的外部輸入與輸出,一個簡單的範例(尖括號內為必填,方括號內為可選):
entity <實體名稱> is
port(
a : IN STD_LOGIC;
b : OUT STD_LOGIC
);
end [實體名稱];
架構(architecture)[編輯]
它負責實現內部的硬件電路。
architecture <架構名稱> of <實體名稱> is
begin
--此處可編寫架構內部操作
end [架構名稱];
組態(configuration)[編輯]
配置用來描述各種層與層的連接關係以及實體與結構體之間的關係,此處不贅述
VHDL編寫觸發器簡例:
library ieee; --库声明
use ieee.std_logic_1164.all; --包声明
entity test is --实体定义
port(
d : in std_logic;
clk : in std_logic;
q : out std_logic);
end test;
architecture trigger of test is --结构体定义
signal q_temp:std_logic;
begin
q<=q_temp;
process(clk)
begin
if clk'event and clk='1' then
q_temp<=d;
end if;
end process;
end trigger;
configuration d_trigger of test is--配置,将结构体配置给实体,配置名为d_trigger
for trigger
end for;
end d_trigger;
參見[編輯]
參考資料[編輯]
Template:數字電路 Template:可編程邏輯設備 Template:IEEE標準 腳本錯誤:沒有「Authority control」這個模塊。腳本錯誤:沒有「Check for unknown parameters」這個模塊。