安全行为和非安全行为
由于条件语句的描述在很多情况下,导致生成锁存器。这些锁存器将上游的毛刺传输至下游,并且锁存器的使能信号(源自组合电路)也带有毛刺,引起的冒险竞争,导致下游逻辑出现错误的捕获,这种现象称为非安全行为。
一旦非安全行为发生错误,典型的特征是:前仿正确,后仿不正确,下板不正确,而且很难以找到问题所在。
因此,现代eda,要求写安全行为的hdl,一旦出现非安全行为,大多数工具直接给出警告。又由于非安全行为的根源在锁存器,因此,“消灭锁存器”为eda综合编译和时序收敛过程一个必然步骤。也就是说,一旦生锁,将给出警告。
安全行为的编码原则:
1.开节点输出的信号,必须满足:“全条件”+“全线与”
2.闭节点输出的信号,这些信号中的条件译码信号,必须写“全条件”+“全线与
安全行为编码例子:摩尔流水灯
设计需求
开发板的4个led灯,轮流点亮
每一个灯亮200ms,然后熄灭50ms
任何时候,按下start_n,流水灯开始运行
任何时候,按下stop_n,流水灯停止运行,全部熄灭
二段摩尔状态机
工作时钟clk频率为100khz(10us)
顶层框图
顶层架构
et:使能信号触发器,在start_n为真时触发ena为真,在stop_n为真时触发ena为假。复位rst_n为真触发ena为假。
cnt:cnt_en为假,cnt清零;cnt_en为真,cnt加一计数
ts:shift_rst_n为真,给出temp的初始值4’b1110;shift_en为真,temp左移一次
引用tps:
状态转移图(非安全行为)
状态转移图(安全行为)
未来计算机能解读大脑信息直接转变为语音和文字
限制交流电的电流原理
特斯拉将在全球范围内将汽车价格平均上调大约3%
如何构建一个3d智能月球灯?
自动数粒仪的应用范围是怎样的,它的效果怎么样
FPGA学习之安全行为和非安全行为
ArduinoUltraMega计时器的制作
考德KT6000 155M传输分析仪 SDH数据分析仪
禾赛发布Pandar40P搭载无人送货车激光雷达
影响超声波液位计测量的常见因素及问题处理
工控机产业迈入新时期 两方面的变化正在呈现
电源频率检测器/过流检测器电路设计
中国北斗是咋回事?从GPS说起
再现丑闻!Facebook明文密码被曝光
!!销售/维修 HP6012B 直流电源 HP 6012B
AWE观后感:上千企业大比拼,智能化转型还看海信
宏的使用:用宏##粘贴函数,然后用函数指针查找执行的操作
OLED市场规则变更 南韩0LED霸主地位或将不保
R2017a 新增功能 parsim的Simulink 模型并行仿真简单介绍
BroadLink与腾讯云达成战略合作,共同推动智慧家居生态体系建设