§23结构体 是实体设计的具体描述,包括实体硬件的结构、硬件的类型和功能、元件的 互连关系、信号的传输和变换以及动态行为 结构 architecture结构体名of实体名is [结构体说明语句 egin 功能描述语句; end[ architecture]结构体名 结构体名:是对本结构体的命名,是该结构体的唯一标识符 结构体说明语句 对结构体内部所使用的信号、常数、数据类型和函数等进行定义 结构体功能描述语句: 描述结构体的行为和结构。 特点:功能描述语句是并行描述语句,不以语句的书写顺序为执行语句 包含5种类型的并行语句 块语句、进程语句、信号赋值语句、子程序调用语句和元件例化语句
§2.3 结构体 是实体设计的具体描述,包括实体硬件的结构、硬件的类型和功能、元件的 互连关系、信号的传输和变换以及动态行为 ➢结构: architecture 结构体名of 实体名 is [结构体说明语句;] begin 功能描述语句; end [architecture] 结构体名; ➢结构体名:是对本结构体的命名,是该结构体的唯一标识符 ➢结构体说明语句: 对结构体内部所使用的信号、常数、数据类型和函数等进行定义 ➢结构体功能描述语句: 描述结构体的行为和结构。 特点:功能描述语句是并行描述语句,不以语句的书写顺序为执行语句 包含5种类型的并行语句: 块语句、进程语句、信号赋值语句、子程序调用语句和元件例化语句
例:采用原理图编辑法和文本编辑法设计二输入与非门电路 二输入与非门的真值表 输入 输出 NAND2 A 0011 B0101 1110 文本编辑法 library ieee; use ieee std_logic_1164.all; entity nand 2is port(a, b: in std_logic, c:out std_logic) end nand 2 architecture cai of nand 2 is begin c<=anand b: end cai:
例:采用原理图编辑法和文本编辑法设计二输入与非门电路 NAND2 inst 二输入与非门的真值表 输 入 输 出 A B Y 0 0 1 0 1 1 1 0 1 1 1 0 文本编辑法 library ieee; use ieee.std_logic_1164.all; entity nand_2 is port(a,b:in std_logic; c: out std_logic); end nand_2; architecture cai of nand_2 is begin c<=a nand b; end cai;
例:采用原理图编辑法和文本编辑法设计二输入或非门电路 二输入或非门的真值表 输入 输出 NOR A inst 0011 B0101 1000 文本编辑法 library ieee useieee. std_ logic 1164.all entity nor 2is port(a, b: in std_logic; c:out std_logic) end nor 2 architecture cai of nor 2 is begin C<=anor b end cal;
例:采用原理图编辑法和文本编辑法设计二输入或非门电路 NOR2 inst 二输入或非门的真值表 输 入 输 出 A B Y 0 0 1 0 1 0 1 0 0 1 1 0 文本编辑法 library ieee; use ieee.std_logic_1164.all; entity nor_2 is port(a,b:in std_logic; c: out std_logic); end nor_2; architecture cai of nor_2 is begin c<=a nor b; end cai;
例:采用原理图编辑法和文本编辑法设计二输入异或门电路 二输入异或门的真值表 输入 输出 NOR A inst 0011 B0101 Y0110 文本编辑法 library ieee useieee. std_ logic 1164.all entity xor 2is port(a, b: in std_logic; c:out std_logic) end xor 2: architecture cai of xor 2 is begin C<=a xor b end cal;
例:采用原理图编辑法和文本编辑法设计二输入异或门电路 NOR2 inst 二输入异或门的真值表 输 入 输 出 A B Y 0 0 0 0 1 1 1 0 1 1 1 0 文本编辑法 library ieee; use ieee.std_logic_1164.all; entity xor_2 is port(a,b:in std_logic; c: out std_logic); end xor_2; architecture cai of xor_2 is begin c<=a xor b; end cai;
§24结构体的三种子结构 子结构:将一个设计分成几个模块 目的:提高设计的条理性和VHDL程序的可读性。 三种子结构:块( block语句结构、进程( process语句结构和子程序结构 241块语句结构 块标号:] block保护表达式 类属子句[类属接口表;] 端口子句[端口接口表;];] 块说明部分;] begin 块语句部分 end block[块标号]; 类属子句:用于参数的定义; 端口子句:用于信号的定义 块说明部分:对该块要用到的信号、常数、元件和子程序等进行说明; 块语句部分:对模块功能进行描述,各个语句是并行执行
§2.4 结构体的三种子结构 子结构:将一个设计分成几个模块 目的:提高设计的条理性和VHDL程序的可读性。 三种子结构:块(block)语句结构、进程(process)语句结构和子程序结构 2.4.1 块语句结构 [块标号:]block[保护表达式] [类属子句[类属接口表;];] [端口子句[端口接口表;];] [块说明部分;] begin 块语句部分; end block [块标号]; 类属子句:用于参数的定义; 端口子句:用于信号的定义; 块说明部分:对该块要用到的信号、常数、元件和子程序等进行说明; 块语句部分:对模块功能进行描述,各个语句是并行执行