文档详情

VHDL程序设计教程第二讲.pdf

发布:2017-05-29约8.19千字共18页下载文档
文本预览下载声明
VHDL 硬件描述语言与 数字逻辑电路设计 VHDL 硬件描述语言与 (第二讲) 数字逻辑电路设计 VHDL的数据类型及运算操作符 主讲:陶海红 西安电子科技大学雷达信号处理国家重点实验室 主讲:宋万杰 雷达信号处理 雷达信号处理 国防科技重点实验室 国防科技重点实验室 3.1 VHDL语言的客体及分类 在VHDL语言中凡是可以赋予一个值的对象就称为客体. 客体主要 包括信号,变量,常数三种. 1 变量 :变量说明局部量,只能在进程语句,函数语句和过程语句 结构中使用.变量在赋值时不能产生附加延时,其说明格式如下: VARIABLE 变量名:数据类型 约束条件 := 表达式样; 2 信号 :信号说明全局量,只能在构造体,包集合,实体场合下使用, 信号代入时可以产生附加延时,信号值的代入符是 “ ”. SIGNAL 信号名:数据类型 约束条件:=表达式; 3 常数 :说明全局量,适用信号和变量的说明场合下使用. CONSTANT 常数名: 数据类型 :=表达式; 用VHDL语言描述2输入“与非” 门: library ieee ; use ieee.std_logic_1164.all ; entity nand2 is port( a,b :in std_logic ; y :out std_logic ) ; end nand2; architecture func of nand2 is signal tmp : std_logic; begin process(a,b) variable comb:std_logic_vector(1 downto 0); begin comb:=ab ; case comb is when “00” = tmp=‘1’ ; when “01” = tmp=‘1’ ; when “10” = tmp=‘1’ ; when “11” = tmp=‘0’ ; when others= tmp=‘X’ ; end case; end process; 信号与变量的区别 1 赋值符号不同: 变量 tmp:=‘1’ ; 信号 tmp=‘1’ ; 2 赋值操作过程不同: 变量的赋值是立即生效的 信号的赋值是到了规定的仿真时间才生效(只 要不碰到WAIT语句或进程执行结束,进程执 行过程中信号值是不进行代入的)。 信号与变量的区别示例 1
显示全部
相似文档