- 12
- 0
- 约6.78千字
- 约 56页
- 2016-12-12 发布于重庆
- 举报
第六讲 VHDL的可综合性 (3)第三种情况与第二种类似。也属于于不完全if语句,但有效条件只对信号值进行检测,这时综合器的处理方式也是类似的,只是换为用电平锁存器实现寄存器。 4.Case语句 case语句与多路选择器电路的对应关系是显而易见的,但是,建摸时要注意合理使用无关态和others语句,否则会造成电路的复杂化,甚至导致形成时序电路。图5.23是综合下述VHDL代码中case语句的一个例子,注意电路中CODE倍号已被编码为矢量。 5.循环语句 VHDL的循环语句有三种:for循环、while循环和无限循环loop end loop,实际上,1oop…end loop可以看作是循环条件永远为真的while循环。在行为综合中,循环语句的处理是极其复杂的,第3章对此已作了介绍,这里从寄存器传输级的角度加以讨论。 在寄存器级进行综合,要求for循环的上下界必须是静态已知。例如下面给出了两段VHDL代码,第一段代码中,由于循环上界RG是动态对象,所以是不可综合的。反之,第二段代码则可以被综合工具接受。这段代码通过使用next语句,形成了一个选择性的连线网络,如图5.24所示。 VHDL定义了next和exit语句来中断循环的正常执行,现在的综合工具都可以处理这两种语言结构。固5.25是对下述VHDL代码中的循环综合的例子,这个电路对信号中的’1’进行计数,代码
原创力文档

文档评论(0)