跳轉到內容

可程式設計邏輯/VHDL 通用語法

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

華夏公益教科書《可程式設計邏輯》這本書的這個頁面是一個存根。您可以透過擴充套件它來幫助我們。


VHDL 的語法源自 ADA。它是強型別和不區分大小寫的。

識別符號

[編輯 | 編輯原始碼]

VHDL 中的識別符號必須以字母開頭,可以是字母、數字和下劃線 (_) 的任何組合。

VHDL 中的註釋用 "--" 表示。

-- Assign the current value to the next state value
sQ_next <= sQ;

"--" 之後到行尾的所有內容都被視為註釋。

-- This is a valid comment
sQ_next <= sQ; -- This is also a valid comment


關鍵字

[編輯 | 編輯原始碼]

以下詞語是 VHDL 關鍵字,不能用作識別符號(訊號名、程序名、實體名等)

頂部

VHDL 1987

[編輯 | 編輯原始碼]

這是一個不完整的列表...

and, or, nor, xor, not, architecture, entity, is, process, procedure,
function, type, subtype, array, begin, end, if, elsif, end, case, when,
others, configuration, package, constant, signal, variable, component,
label, port, generic, all, nand, nor, abs, generate, in, out, inout,
buffer, linkage, bus, library, null, loop, for, body, to, downto

頂部

VHDL 1993

[編輯 | 編輯原始碼]

VHDL 1987 關鍵字和

group, impure, inertial, literal, postponed, pure, reject, rol, ror,
shared, sla, sll, sra, srl, unaffected, xnor

頂部

VHDL 2000

[編輯 | 編輯原始碼]

VHDL 1993 和 1987 關鍵字,此外

generate map, access, mod, severity, units, after, until, alias, guarded,
use, new, disconnect, next, protected, attribute, record, of, register, on,
block, exit, open, rem, transport, report, file, return

頂部

VHDL 2002

[編輯 | 編輯原始碼]

VHDL 1993、1987 和 2000 關鍵字,此外

頂部

VHDL 2008

[編輯 | 編輯原始碼]

VHDL 1993、1987、2000 和 2002 關鍵字,此外

頂部

VHDL 2019

[編輯 | 編輯原始碼]

VHDL 1993、1987、2000、2002 和 2008 關鍵字,此外



字母順序參考

[編輯 | 編輯原始碼]
[編輯 | 編輯原始碼]

https://peterfab.com/ref/vhdl/vhdl_renerta/source/vhd00001.htm



簡介

VHDL 中的 abs 命令是一個預定義函式,它返回數字引數的 絕對值

例如,abs(-3) 返回 3,而 abs(4.5) 返回 4.5

abs 命令可以與任何數字型別一起使用,例如整數、實數或定點型別。

備註

1987 年版本的 VHDL 引入了 abs。

abs 命令是可綜合的。

可綜合的,規則,技巧,常見錯誤,相關關鍵字等

語法
實現
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;

entity abs_module is
  port (
    clk : in std_logic;
    reset : in std_logic;
    x : in signed(7 downto 0);
    y : out signed(7 downto 0)
  );
end entity;

architecture rtl of abs_module is
begin
  process (clk, reset)
  begin
    if rising_edge(clk) then -- clock condition
      if reset = '1' then -- synchronous reset condition
        y <= (others => '0'); -- initial value for output signal
      else
        y <= abs(x); -- assign output to absolute value of input
      end if;
    end if;
  end process;
end architecture;
測試平臺
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;

entity abs_testbench is
end entity;

architecture sim of abs_testbench is

  -- declare signals for DUT ports
  signal clk : std_logic := '0';
  signal reset : std_logic := '0'; -- added reset signal
  signal x : signed(7 downto 0);
  signal y : signed(7 downto 0);

  -- declare component for DUT
  component abs_module
    port (
      clk : in std_logic;
      reset : in std_logic; -- added reset signal as input port
      x : in signed(7 downto 0);
      y : out signed(7 downto 0)
    );
  end component;

begin

  -- generate clock signal with period of 10 ns
  clk_gen: process
  begin
    clk <= '0';
    wait for 5 ns;
    clk <= '1';
    wait for 5 ns;
  end process;

  -- generate input values for x from -128 to 127
  stim_gen: process
    variable i : integer := -128; -- loop variable
  begin
    wait until rising_edge(clk); -- synchronize with clock
    
    if i = -128 then -- generate a pulse for reset at the beginning of simulation 
      reset <= '1';
      wait for 10 ns;
      reset <= '0';
    end if;

    x <= to_signed(i,8); -- assign input value
    
    i := i + 1; -- increment loop variable
    
    if i = 128 then -- stop when loop variable reaches limit
      wait; -- suspend process
    end if;
    
  end process;

  -- instantiate DUT and connect ports
  dut: abs_module port map (
    clk => clk,
    x => x,
    y => y,
    reset => reset -- added reset signal to port map
  );

  -- observe output values and print messages
  out_obs: process (clk)
    variable exp_y : signed(7 downto 0); -- expected output value
  begin
    if rising_edge(clk) then -- synchronize with clock
      exp_y := abs(x); -- calculate expected output value
      if y = exp_y then -- compare output with expected value
        report "Test passed for x = " & integer'image(to_integer(x)) & ", y = " & integer'image(to_integer(y)); -- print message if match
      else
        report "Test failed for x = " & integer'image(to_integer(x)) & ", y = " & integer'image(to_integer(y)) severity error; -- print message and raise error if mismatch
      end if;
    end if;
  end process;

end architecture;


頂部

access

[edit | edit source]

簡介

在 VHDL 中,訪問型別類似於其他程式語言中的指標。它允許您建立和操作在模擬期間動態建立的資料。這意味著您可以動態地建立新資料,並且資料的大小不必事先知道。

例如,假設您想建立一個數字列表,但您不知道將有多少個數字。您可以使用訪問型別來建立一個連結串列,其中列表中的每個專案都指向下一個專案。這樣,您可以根據需要向列表新增任意多個專案,而無需事先知道列表的大小。

訪問型別對於建模潛在的大型結構(如儲存器或 FIFO)非常有用,但它們不受綜合工具的支援。

備註

1987 年版本的 VHDL 引入了訪問。

不可綜合

參見 https://peterfab.com/ref/vhdl/vhdl_renerta/source/vhd00001.htm

語法
用法
-- Incomplete type declaration
type Item;

-- Access type declaration
type Link is access Item;

-- Record type declaration
type Item is record
    Data: string (1 to 6);
    NextItem: Link;
end record;

-- Variable declarations
variable StartOfList, Ptr: Link;
variable Line: LINE;

-- Allocating storage
StartOfList := new Item;
StartOfList.all.Data := "First";
StartOfList.all.NextItem := new Item;
StartOfList.all.NextItem.all.Data := "Second";


頂部

after

[edit | edit source]

簡介

VHDL 命令 “after” 用於在訊號分配中引入延遲。它用於指定訊號應分配新值的時間。例如,x <= '1' after 10 ns; 表示訊號 x 將在經過 10 納秒後分配值 '1'。

備註

1987 年版本的 VHDL 引入了 after。

不可綜合。

函式不支援延遲。

重要的是要注意,“after” 命令與延遲模型有關。在預設的 VHDL 慣性延遲中,您的第二個“較慢”訊號賦值語句會取消第一個的未來更新。您可以安排在一個語句中的多次更新以糾正此問題,例如:x <= '1' after 10 ns, '0' after 20 ns;

參見 http://gmvhdl.com/delay.htm

語法


用法
x <= '1' after 10 ns;


頂部

alias

[edit | edit source]

簡介

別名是現有物件(如訊號、變數、常量、型別等)的替代名稱。別名對於使程式碼更具可讀性、避免名稱衝突或訪問陣列或記錄的各個部分很有用。

您還可以使用特殊的語法 << ... >> 建立外部名稱,它們是可以透過別名訪問其他設計單元或層次結構級別的物件的別名

備註

1987 年版本的 VHDL 引入了別名。

別名是其定義的宣告區域的區域性變數,它們不能被重新定義或覆蓋。

別名不能用作賦值的目標。

別名可以在任何可以使用原始名稱的地方使用,例如表示式、語句或子程式呼叫。

參見 https://peterfab.com/ref/vhdl/vhdl_renerta/mobile/source/vhd00003.htm

語法
用法
alias alias_name : alias_type is object_name;


alias duv_data_bus is <<signal .tb.duv_rtl.data_bus : std_ulogic_vector (0 to 15)>>; -- create an alias duv_data_bus for the signal data_bus in the component duv_rtl in the entity tb


頂部


簡介

上下文宣告中的關鍵字 “all” 是一種指定設計單元中使用的庫、程式包和實體集的方法。

例如,您可以編寫

  library ieee;
  use ieee.std_logic_1164.all;
  use ieee.numeric_std.all;

這意味著引用此上下文的任何設計單元都將能夠訪問 ieee 庫以及 std_logic_1164 和 numeric_std 程式包。在這種情況下,關鍵字 “all” 表示當前工作庫中的所有設計單元都可以使用此上下文。

替代

從 VHDL-2008 開始,關鍵字 “all” 用於指示應該由工具推斷出過程的敏感度列表,而不是由設計者顯式指定。

敏感度列表是訊號列表,當這些訊號更改其值時,將觸發過程的執行。

例如,考慮以下實現具有非同步復位的 D 觸發器的過程

process (i_clk, i_rst)
begin
 if i_rst = '1' then
  q <= '0';
 elsif rising_edge(i_clk) then
  q <= d;
 end if;
end process;

此過程的敏感度列表為 (i_clk, i_rst),這意味著只要 i_clk 或 i_rst 發生變化,該過程就會執行。但是,我們也可以使用關鍵字 “all” 來讓我們自己推斷敏感度列表

process (all)
begin
 if i_rst = '1' then
  q <= '0';
 elsif rising_edge(i_clk) then
  q <= d;
 end if;
end process;

這等效於前面的過程,因為工具將自動確定 i_clk 和 i_rst 是影響過程行為的唯一訊號。

使用關鍵字 “all” 可能會更方便且更不容易出錯,因為它避免了在向過程新增或刪除訊號時手動更新敏感度列表的需要。

某些工具可能不支援此功能,或者可能根據敏感度列表推斷演算法生成不同的結果,因此在時鐘過程中使用關鍵字 “all” 之前,請檢查工具文件並驗證綜合和模擬結果。

備註

1987 年版本的 VHDL 引入了 all。


頂部


簡介

此關鍵字用於表示邏輯 AND 操作,它是數字邏輯電路中的基本構建塊。

如果運算元是向量(位陣列,如 std_logic_vector),則 `AND` 運算子執行按位 AND 操作,如果運算元是 bit 或 boolean 型別,則執行邏輯 AND 操作。

如果所有輸入都是 ‘1’,則結果為 ‘1’。否則,結果為 ‘0’。

此行為模擬了數位電子學中 AND 門的功能。


備註

1987 年版本的 VHDL 引入了 and。

參見

https://fpgatutorial.com/vhdl-logical-operators-and-signal-assignments-for-combinatorial-logic/

語法
用法
signal A, B, C : std_logic; 
...
C <= A AND B;

在此示例中,如果 AB 均為 ‘1’,則訊號 C 將為 ‘1’。否則,C 將為 ‘0’。

頂部

architecture

[edit | edit source]

簡介

術語“體系結構”起著至關重要的作用。它充當與實體宣告相關聯的正式藍圖,負責闡明設計實體的內部組織和操作。本質上,體系結構以精確和嚴格的方式描述了設計實體的行為、資料流或結構組成。這種技術結構在描述設計中輸入和輸出埠之間錯綜複雜的關聯方面具有實用性,它包含兩個主要元件:宣告和併發語句。宣告包含各種元素,包括型別、訊號、常量、子程式、元件和組,而併發語句則明確說明輸入如何與輸出互動,各種語句型別允許以靈活的方式表達設計功能。在 VHDL 的背景下,體系結構體現了一種系統且明確的方法來定義數字系統的基本特徵,為其隨後的實現和分析奠定了基礎。

體系結構用於詳細說明設計實體的行為、資料流或結構。


與實體關聯的體系結構主要描述實體的輸入和輸出埠之間的內部關係。它包含兩個主要元件:宣告和併發語句。

體系結構的宣告部分包含各種型別的宣告,例如型別、訊號、常量、子程式(函式和過程)、元件和組。可以在各自的主題中找到有關這些內容的詳細資訊。

另一方面,併發語句描述了體系結構內輸入如何與輸出相關聯。這些關係可以透過各種型別的語句來表達,包括併發訊號賦值、過程語句、元件例項化、併發過程呼叫、生成語句、併發斷言語句和塊語句。這些語句可以用各種風格來編寫,例如結構化、資料流、行為(功能性)或混合,具體取決於預期的設計。

結構化描述依賴於元件例項化和生成語句,從而能夠建立從簡單門到複雜元件(包含整個子系統)的層次專案。這些元件透過埠連線,如 BCD 解碼器的示例 1 所示。

資料流描述使用併發訊號賦值語句。每個語句都可以根據其任何輸入訊號的變化而啟用,描述電路的行為和結構,如示例 2 所示。

相反,行為描述(如示例 3 所示)僅包含一個或多個過程,每個過程包含順序語句。這種方法只關注電路的預期功能,而不指定硬體實現細節。

混合體繫結構描述(如示例 4 所示)在同一個體系結構體中組合了行為和結構元素。

備註

1987 年版本的 VHDL 引入了體系結構。

實體可以有多個體繫結構,但體系結構不能分配給不同的實體。

體系結構必須與實體關聯。

實體內的所有宣告在分配給該實體的任何體系結構內完全可見且可訪問。

不同型別的語句,如過程、塊、併發訊號賦值、元件例項化等,可以在同一個體系結構內共存。

語法
用法

示例 1

architecture Structure of Decoder_bcd is
  signal S: Bit_Vector(0 to 1);
  component AND_Gate
    port(A,B:in Bit; D:out Bit);
  end component;
  component Inverter
    port(A:in Bit; B:out Bit);
  end component;
begin
   Inv1:Inverter port map(A=>bcd(0), B=>S(0));
   Inv2:Inverter port map(A=>bcd(1), B=>S(1));
   A1:AND_Gate port map(A=>bcd(0), B=>bcd(1), D=>led(3));
   A2:AND_Gate port map(A=>bcd(0), B=>S(1), D=>led(2));
   A3:AND_Gate port map(A=>S(0), B=>bcd(1), D=>led(1));
   A4:AND_Gate port map(A=>S(0), B=>S(1), D=>led(0));
end Structure;


示例 2

architecture Dataflow of Decoder_bcd is
begin
   led(3) <= bcd(0) and bcd(1);
   led(2) <= bcd(0) and (not bcd(1));
   led(1) <= (not bcd(0)) and bcd(1);
   led(0) <= (not bcd(0)) and (not bcd(1));
end Dataflow;


示例 3

architecture procedural of Decoder_bcd is
  signal S: bit_vector (3 downto 0);
begin
   P1: process (bcd, S)
   begin
     case bcd is
         when "00" => S <= "0001" after 5 ns;
         when "01" => S <= "0010" after 5 ns;
         when "10" => S <= "0100" after 5 ns;
         when "11" => S <= "1000" after 5 ns;
     end case;
     led <= S;
   end process;
end procedural;


示例 4

architecture Mixed of Decoder_bcd is
  signal S: Bit_Vector(0 to 2);
  component Inverter
    port(A: in Bit; B: out Bit);
  end component;
begin
  Inv1: Inverter port map (A=>bcd(0), B=>S(0));
  Inv2: Inverter port map (A=>bcd(1), B=>S(1));
  P: process (S, bcd)
  begin
    led(0) <= S(0) and S(1) after 5 ns;
    led(1) <= S(0) and bcd(1) after 5 ns;
    led(2) <= bcd(0) and S(1) after 5 ns;
    led(3) <= bcd(0) and bcd(1) after 5 ns;
  end process;
end Mixed;

頂部


簡介

VHDL 中的“Array”關鍵字介紹

在 VHDL 中,“Array”關鍵字是一種多功能資料型別,在構建和組織資料方面發揮著至關重要的作用。在 VHDL 中,陣列被正式定義為一種型別,其值由相同子型別的元素組成,使其成為管理同類資料集的理想選擇。陣列中每個元素的區分特徵是與其關聯的索引(或對於多維陣列而言,是索引)。這些索引必須是離散型別的值,並且必須位於指定的索引範圍內。

簡單來說,陣列就像一個容器,它包含相同型別元素,每個元素透過其索引唯一標識。索引的數目直接對應於維數;例如,一維陣列有一個索引,而二維陣列有兩個索引。

VHDL 中的陣列有兩種形式:約束陣列和非約束陣列。約束陣列具有固定大小,由離散型別標記或指定的範圍確定。相比之下,非約束陣列沒有預定義的大小;其大小僅在您宣告該型別物件時確定。

例如,VHDL 的 Package STANDARD 包含預定義的非約束陣列型別,如 STRING 和 BIT_VECTOR。這些陣列被廣泛使用,其中 STRING 元素由正值索引,而 BIT_VECTOR 元素由自然值索引。

VHDL 中的陣列可以使用各種技術進行操作,例如索引、串聯、聚合和切片。這些方法提供了訪問和分配陣列元素值的靈活性,使它們成為 VHDL 程式設計的重要組成部分。

值得注意的是,雖然陣列是 VHDL 中強大的工具,但並非所有綜合工具都支援多維陣列。例如,二維“向量陣列”,以及一些綜合工具允許有限支援二維陣列。

總之,VHDL 中的陣列是基本資料結構,允許您有效地管理和操作資料集合,使其成為 VHDL 程式設計的關鍵要素。


備註

VHDL 的 1987 版本引入了陣列。

語法
用法
type type_name is array (range) of element_type

type type_name is array (type range <>) of element_type

type Real_Matrix is array (1 to 10) of REAL;
type BYTE is array (0 to 7) of BIT;
type Log_4_Vector is array (POSITIVE range 1 to 8, POSITIVE range 1 to 2) of Log_4;
type X is (LOW, HIGH);
type DATA_BUS is array (0 to 7, X) of BIT;

頂部


簡介
備註

VHDL 的 1987 版本引入了 assert。

語法
用法
-- Code

頂部

attribute

[編輯 | 編輯原始碼]

簡介
備註

VHDL 的 1987 版本引入了 attribute。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 begin。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 block。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 body。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 buffer。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 bus。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 case。

語法
用法
-- Code

頂部

component

[編輯 | 編輯原始碼]

簡介
備註

VHDL 的 1987 版本引入了 component。

語法
用法
-- Code

頂部

configuration

[編輯 | 編輯原始碼]

簡介
備註

VHDL 的 1987 版本引入了 configuration。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 constant。

語法
用法
-- Code

頂部

disconnect

[編輯 | 編輯原始碼]

簡介
備註

VHDL 的 1987 版本引入了 disconnect。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 downto。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 else。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 elsif。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 end。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 entity。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 exit。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 file。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 for。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 function。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 generate。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 generic。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 guarded。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 if。

語法
用法
-- Code

頂部


簡介
備註

VHDL 的 1987 版本引入了 in。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 inout。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 is。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 label。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 library。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 linkage。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 loop。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 map。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 mod。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 nand。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 new。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 next。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 nor。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 not。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 null。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 of。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 on。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 open。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 or。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 others。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 out。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 package。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 port。

語法
用法
-- Code

頂部

procedure

[編輯 | 編輯原始碼]

簡介
備註

1987 年版本的 VHDL 引入了 procedure。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 process。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 range。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 record。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 register。

語法
用法
-- Code

頂部


簡介
備註

1987 年版本的 VHDL 引入了 rem。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 report。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 return。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 select。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 severity。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 signal。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 subtype。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 then。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 to。

語法
用法
-- Code

頂部

transport

[編輯 | 編輯原始碼]

簡介
備註

1987 年的 VHDL 版本引入了 transport。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 type。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 units。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 until。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 use。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 variable。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 wait。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 when。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 while。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 with。

語法
用法
-- Code

頂部


簡介
備註

1987 年的 VHDL 版本引入了 xor。

華夏公益教科書