库及程序包(packages)
声明在设计或实体中将用到的常数,数据类型
实体(Entities)
声明到实体以及设计的接口,即定义本设计的输入、出端口
结构体(Architectures)
定义了实体的实现。即电路的具体描述
或门
LIBRARY IEEE; --库,程序包调用 USE IEEE.STD_LOGIC_1164.ALL ENTITY MYORY2 IS --实体MYORY2描述 PORT(A,B:IN STD_LOGIC; C :OUT STD_LOGIC); END MYORY2; ARCHITECTURE ART1 OF MYOR2 IS BEGIN --结构体描述 C<=A OR B; END ART1;
半加器
LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL ENTITY H_ADDER IS --实体H_ADDER描述 PORT(A,B:IN STD_LOGIC; CO,SO:OUT STD_LOGIC); END H_ADDER; ARCHITECYURE ART2 OF H_ADDER IS --结构体描述 BEGIN SO<=(A OR B)AND(A NAND B); CO<=NOT(A NAND B); END ART2;
全加器
LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITYY F_ADDER IS --实体F_ADDER描述 PORT(AIN,BIN,CIN:IN STD_LOGIC; CY,SUM:OUT:OUT STD_LOGIC); END F_ADDER; ARCHITECTURE ART3 OF F_ADDER IS COMPONENT H_ADDER --元件调用声明 PORT(A,B:IN STD_LOGIC; CO,SO:OUT STD_LOGIC); END COMPONENT; COMPONENT MYOR2 PORT(A,B:IN STD_LOGIC; C:OUT STD_LOGIC); END COMPONENT; SIGNAL D,E,F:STD_LOGIC; --信号声明 BEGIN U1:H_ADDER PORT MAY(A=>AIN,B=>BIN CO=>D,SO=>E); U2:H_ADDER PORT MAY(A=>E,B=>CIN, CO=>F,SO=>SUM); U3:OR2 PORT MAY(A=>D,B=>F,C=>CY); END ART3;