
《硬件架构的艺术》学习笔记(2.1)---同步设计技术
发布日期:2021-05-06 19:13:40
浏览次数:18
分类:精选文章
本文共 547 字,大约阅读时间需要 1 分钟。
在同步设计中,单个主时钟和单个主置位/复位信号驱动所有时序器件。然而,在RTL代码编写过程中,往往忽略了实际硬件实现中的组合延迟问题。要写出结构良好且可综合的RTL代码,需注意潜在的组合逻辑延迟。
避免使用行波计数器
当触发器的输出驱动另一个触发器的时钟输入端时,由于第一个触发器时钟到Q的延迟,可能导致第二个触发器的时钟输入出现偏移。这种情况会在连接多个触发器时加剧延迟。对于简单的四分频电路,通常采用两个二分频电路的级联方式。更好的方法是使用计数器或序列发生器方式。
避免门控时钟
时钟线上的门控单元会导致时钟偏移,引入尖峰脉冲,影响触发器的稳定性。为了避免这种情况,需采用专门的硬件架构进行门控时钟的实现。
触发器驱动异步复位端
第二级触发器的输出不仅受时钟边沿的影响,还可能与复位信号产生竞争关系。这种竞争可能导致逻辑错误,需谨慎处理。
避免组合环路
在设计中,需避免组合环路。可以通过引入触发器或寄存器打断直接通路,或将寄存器的输出通过组合逻辑控制寄存器的异步输入端。
避免异步脉冲产生器
设计中通常需要基于事件产生脉冲。推荐使用同步脉冲产生器,确保脉冲宽度固定为时钟周期长度。如需检测边沿,可在反相器位置进行调整。
通过以上优化,可以有效减少组合延迟问题,提升设计的稳定性和可靠性。
发表评论
最新留言
感谢大佬
[***.8.128.20]2025年03月31日 20时32分08秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
11.2.6 时间值的小数秒
2019-03-05
Redis源码分析(七)--- zipmap压缩图
2019-03-05
自定义Hive Sql Job分析工具
2019-03-05
【MySQL】(九)触发器
2019-03-05
Oracle 11G环境配置
2019-03-05
【Python】(十二)IO 文件处理
2019-03-05
【Oozie】(三)Oozie 使用实战教学,带你快速上手!
2019-03-05
师兄面试遇到这条 SQL 数据分析题,差点含泪而归!
2019-03-05
C语言的数值溢出问题(上)
2019-03-05
函数指针的典型应用-计算函数的定积分(矩形法思想)
2019-03-05
8051单片机(STC89C52)以定时器中断模式实现两倒计时器异步计时
2019-03-05
用 wxPython 打印你的 App
2019-03-05
vue项目通过vue.config.js配置文件进行proxy反向代理跨域
2019-03-05
android:使用audiotrack 类播放wav文件
2019-03-05
聊聊我的五一小假期
2019-03-05
LeetCode:28. 实现 strStr()——————简单
2019-03-05
Lionheart万汇:布林线双底形态分析技巧
2019-03-05
数据库三个级别封锁协议
2019-03-05
ACM/NCPC2016 C Card Hand Sorting(upc 3028)
2019-03-05