《EDA技术与VHDL实用教程》第4章 VHDL设计入门.pptVIP

  • 2
  • 0
  • 约1.53万字
  • 约 10页
  • 2025-09-04 发布于广东
  • 举报

《EDA技术与VHDL实用教程》第4章 VHDL设计入门.ppt

2、条件信号赋值语句与顺序语句中的IF语句相似,并行的条件信号赋值语句根据不同的可能条件,为目标信号选择不同的赋值表达式,它相当于一条缩写的仅包含一条给单个信号赋值的IF语句的进程语句。当然,在IF语句中,不同的可能条件下执行的顺序语句不一定是给同一单个信号赋不同的值,而可能是别的顺序语句,但并行的条件信号赋值语句只能对应于在不同的可能条件下执行的,给同一个单个信号赋不同的值的IF语句。例4.19其仿真波形如下图示:这是用条件信号赋值语句描写的74XX138电路。其仿真结果与用顺序IF语句描写一样。从以上例子可以看出,条件信号赋值语句的格式如下:赋值目标=表达式1WHEN赋值条件1ELSE表达式2WHEN赋值条件2ELSE……表达式n[WHEN赋值条件n];条件信号赋值语句是一种并行信号赋值语句,执行该语句时首先要进行条件判断,然后再进行信号赋值操作。使用条件信号赋值语句时,应该注意以下几点:(1)对条件进行判断是有顺序的,位置靠前的条件具有较高的优先级,只有不满足本条件的时候才会去判断下一个条件。(2)条件表达式的结果为布尔类型数值。(3)最后一个表达式后面可不含有WHEN句子。(4)条件信号赋值语句允许有条件重叠现象。例4.20其仿真波形如下图示:这是用条件信号赋值语句描述的七段译码器电路,注意其中七段LED编号与一般不同。3、选择信号赋值语句与顺序语句中的CASE语句相似,并行的选择信号赋值语句根据选择表达式的不同值,给目标信号选择不同的赋值表达式,它相当于一条缩写的仅包含一条给单个信号赋值的CASE语句的进程语句。并行的选择信号赋值语句只能对应与在不同的选择表达式的值下,执行给同一个单个信号赋不同的值的CASE语句。例4.22其仿真波形如图:这是用选择信号赋值语句描写的74XX138电路。其仿真结果与用顺序IF语句或用条件信号赋值语句描写的74XX138电路一样。从以上例子可以看出,选择信号赋值语句的格式如下:WITH选择表达式SELECT赋值目标信号=表达式1WHEN选择值1,表达式2WHEN选择值2,……表达式nWHEN选择值n;使用选择信号赋值语句时,应该注意以下几点:(1)对选择条件的测试是同时进行的,测试完所有条件后再根据测试的结果进行赋值。语句将对所有的选择条件进行判断,而没有优先级之分,因此不允许有选择条件重叠的情况。(2)每一个表达式后面都含有WHEN子句。(3)选择条件不允许出现函盖不全的情况。三、元件例化语句元件例化语句是并行语句,它们在结构体内出现的顺序并不重要,另外,元件可多次被实例化,但每次例化必须有一个唯一的例化名。元件声明语句(COMPONET)格式如下:COMPONET元件名[IS][GENERIC(类属表):]----类属参数声明PORT(端口表);----端口声明----与该元件源程序实体中相应部分相同ENDCOMPONET[元件名];元件例化语句(PORTMAP)格式如下:例化名在同一个结构体中必须是唯一的,元件必须与componet语句中的引用元件名相一致。元件端口名与实例连接端口名的关联方式有两种:(1)位置关联:就是被调用的元件端口说明中端口信号的书写顺序及位置和PORTMAP语句中实例端口信号的书写顺序及位置一一对应。例化名:元件名PORTMAP([端口名=]连接端口名,…);(2)名字关联:就是用被调用的元件的端口名称赋予实例实际端口信号。在一个元件例化语句中不同的端口可使用不同的关联方式。元件例化语句为VHDL提供了一

文档评论(0)

1亿VIP精品文档

相关文档