1、always,if-else,case assign 可以被综合,其他的都不可以被综合。
使用完整的if else
case设置default;三个条件如果不互斥 ,则会存在优先级,用parallel_case来解决
A
把延迟大的放在后面。单是需要兼顾前面的条件,在判断延迟大的条件的同时综合判断其他的。
面积和速度是一对矛盾体。
插入FF的方法,可以让过模块的延迟减少。
跨时钟域的电路设计
慢时钟到快时钟有可能会导致多采样的情况,这种方法是用来检测边缘的。注意最后的B取反再与A与。
快时钟到慢时钟,常用脉冲同步器。
PPT中的快时钟和慢时钟写反了?
快时钟的信号必须保持能让慢时钟采两拍。
结绳法:
把高频的信号当作CLK
多比特传输
合并成一个信号,防止时钟偏斜,或者加入一个控制信号,当两个信号都进入之后,再通知下面的操作。
多进制不能用两级FF来消除亚稳态,只能用格雷码,格雷码有很好的消除亚稳态的概率。
转化方法
如果采样格雷码,怎么判断空和满?
空:二者完整相等,
满:由于格雷码除了MSB外,有镜像对称的特点,当读指针指向7,写指针指向8,除了MSB外,其他位都相同,不能说它满
必须满足 MSB 和次高位都不相等。
复位信号:时序必须要有复位信号。
同步复位电路:在敏感表中没有,在最高级有一个。必须要求持续时间。保证所有时钟有效沿都能采到信号。
异步,
敏感列表里有。容易收到毛刺印象和产生亚稳态。
通常采样异步复位同步释放:
两段式状态机描述:
一个同步时序用来描述状态转移;
用另外一个组合逻辑来判断状态转移的条件
用一个task的组合逻辑来描述输出
三段式用同步时序逻辑来保持输出
输出的case中,是NS!!!
逻辑综合,参考书
约束电路中所有的时序路径