| 
             VHDLでは、外部とのインタフェース部分(エンティティ)と内部の動作(アーキテクチャ)を別々に記述します。 
 
 エンティティ宣言は、回路図におけるシンボルのようなものと考えてください。そしてシンボルの中身はアーキテクチャ宣言で記述します。また1つのエンティティ宣言は、複数のアーキテクチャ宣言を持つことができます。すなわち、ビヘービア・レベルの記述とRTLでの記述、ゲート・レベルでの記述など、異なるレベルの記述が1つのエンティティでカバーできるわけです。
 1つのエンティティ宣言に対し、どのアーキテクチャ宣言を選択するかはコンフィグレーション宣言で選択します。 
・エンティティ  
    entity エンティティ名 is 
        [ジェネリック文]  
        [ポート文]  
    end [エンティティ名];
 
 
 
・ポート  
    port(ポート名{,ポート名}:方向 データ・タイプ名; 
            . 
            .  
       ポート名{,ポート名}:方向 データ・タイプ名); 
 
 
・アーキテクチャ  
    architecture アーキテクチャ名 of エンティティ名 is   
        <宣言部文>   -- signal,constant,type,functionなど  
    begin  
         <同時処理文>  
    end [アーキテクチャ名];
 
 
 
[例:ハーフアダー]
 
    library IEEE;  
    use IEEE std_logic_1164.all;  
 
    entity HALH_ADDER is  
      port(  
        A :in std_logic;  
        B :in std_logic;  
        S :out std_logic;  
        CO :out std_logic );  
    end HALF_ADDER;  
 
    architecture DATAFLOW of HALF_ADDER is  
    signal    C:std_logic;  
    signal    D;std_logic;  
    begin  
       C <= A or B;  
       D <= A nand B;  
       CO <= not D;  
       S <= C and D;  
    end DATAFLOW; |