简述HDL中循环语句的可综合性

在hdl的循环语句中,在指定的循环过程中,其代码块(循环体)输出同名信号,则构成顺序-循环(sas-loop),其代码块(循环体)输出不同名信号,则构成并发-循环(cas-loop)。
包括循环语句(含循环体)组成的代码块,eda称为循环框架(loop frame)。
在这里,hdl循环语句与算法语言的循环语句的差异:
1.hdl的循环变量i是以常量进入循环体。算法语言则是以变量进入循环体。
2.hdl的循环体并不被循环执行,而是被重复描述(多次重复综合),从而实现建模的效率。算法语言的循环体则一定是被循环执行。
循环语句可综合性的“数学归纳法”
数学归纳法常用于证明数学序列,它的要点是:
1.首先证明序列的基数成立
2.假设序列为n时成立
3.证明序列的n+1成立
hdl的循环语句是否可综合,可以借用这个方法:
1.首先将循环语句的循环次数修改为一个很小的基数。由于在很小的基数时,其电路一定可以用结构化方法直接描述(不使用循环语句)
2.将基数加1,仍然可以是结构化描述,并加以验证
3.将基数修改为lpm参数可定制,使用循环语句描述,并加以验证
4.修改lpm定制参数,将其加1,观察其综合结果(验证)
通过以上步骤,可以证明所编写的hdl循环语句是可综合的,并且具有很高的综合效率。
循环语句设计例子:具有64个输入端口的8位异或电路:
使用“数学归纳法”为其使用循环语句建模和验证:
1.将基数(端口数)设定为4,得到:
rtl视图(验证过程):
2.将基数加1,这里将端口数修改为8,得到:
rtl视图(验证过程):
修改为端口数可定制的lpm模型
其rtl视图:
现在将lpm的基数+1(修改端口指数portnum_power为4)
其rtl视图:
以上就是循环语句构成二叉树异或门的过程,为了得到最终结果(64端口),将端口指数portnum_power=6,得到:
这里由于端口数过多,eda的自动绘图需要中间过程,故首层仅展示如上部分。
循环语句可综合性的设计例子二:同步计数器的结构化设计
1.顶层框图
2.代码和代码模型分析
其rtl视图:
以上视图中,当rst_n=0时,多路器指向常数0;当rst_n=1时,多路器指向加法器的输出;注意加法器是寄存器的输出q与1相加。
根据代码模型和rtl视图,可以得到等效节点模型:
若将复位信号的条件语句描述屏蔽,则得到rtl视图更接近节点等效:
3.计数器的数学模型
在rtl视图中,计数器有限自动机的加法器执行q+1(的描述),其真实的电路是得到优化和简化的一个数学模型:
若q序列表示为:
在时钟离散时刻,q的变化为:
观察表格,能够发现q的每一个比特位翻转的规律:
()
(, )
(, )
……
(, )
将触发翻转的条件(前级全部为1)采用级联以减少面积:
(,)
(, )
(, )
……
(, )
式中:
…….
注意位翻转的一般表达式: (, )
其真值表为:
其sop为:
代入序列中,得到:
……
根据数学模型得到的代码模型为:


红魔Mars电竞手机搭载了RGB灯可以根据不同的游戏节奏变换颜色
华为P10国内最出色的旗舰机,不是之一!
关于过氧化苯甲酰检测仪的功能介绍
科大讯飞:人工智能进课堂 助力减负增效培养创新能力
关于GD32F190R8的航模摇杆遥控器系统的性能分析和介绍
简述HDL中循环语句的可综合性
区块链技术真正的目的是什么
要保持活力 多与自己不喜欢的人合作
如何透过科技提升并丰富大众的生活!
IBM陈旭东:碳中和不止节能减排,科技最优解在于全局可持续
无线充电接收SOC芯片IP6832介绍
树莓派+HomeAssistant打造智能语音管家
科学家发现极可能存在外星生命的天体,距地球约200光年的一颗“超级地球”
关于双频WiFi模块,你了解么?
嵌入式系统的知识平台与平台模式详解
Manz 亚智科技G10.5面板湿制程设备交付出货 创下了国产化的里程碑
被各大原厂所看好的MRAM存储技术的发展
pwm占空比和电压的关系 pid输出和pwm占空比怎么联系
老房子如何加装燃气热水器?卡萨帝场景化服务为用户解难题
华为P10闪存门最新消息:华为P10闪存门事件为何至今仍未平息?深度分析华为P10闪存门原因很有可能是这个