同步电路设计和异步电路设计的特点-同步电路设计和异步电路设计的特点有哪些区别

同步设计和异步设计的特点

同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果关系。

同步电路特点:时钟个数只有一个,电路中触发器的时钟输入端连接同一个时钟脉冲源,所有触发器的状态变化都与所加的时钟脉冲信号同步;由于只有一个时钟,所以整个电路所有时钟应该是同源同相的;一般会滤掉毛刺,不需要特别考虑竞争与冒险;有利于静态时序分析;设计的电路具有强耦合关系,不利于面积优化与低功耗优化,不灵活;存在时钟偏斜问题。

同步电路设计和异步电路设计的特点-同步电路设计和异步电路设计的特点有哪些区别

异步电路特点:电路中没有统一的时钟(可以有多个时钟),有些触发器的时钟输入端与时钟脉冲源相连(与时钟脉冲源同步),其余触发器状态变化不与时钟脉冲源同步;由于有多个时钟,因此有些时钟是同源不同相的,有些是不同源的;很大概率存在竞争与冒险;一般无法对异步电路进行静态时序分析;电路耦合关系很弱,设计比较灵活,相同条件下比同步电路功耗低;不存在时钟偏斜问题。

同步电路设计和异步电路设计的特点-同步电路设计和异步电路设计的特点有哪些区别

做模块划分时应该考虑哪些问题

结构层次化是设计的一种基本思想,需要注意:结构不宜太深,否则综合时面积过大,综合工具会默认做扁平化处理;顶层设置不宜过于复杂,主要完成诸如输入输出,模块调用与实例化,全局时钟,三态总线,全局复位等等简单的功能;双向的信号最好只在顶层出现;子模块之间最好不要有跨层次的接口;合理考虑子模块的功能、结构、时序等。

模块划分的技巧:对每个同步时序设计的子模块的输出使用寄存器处理;将相关的逻辑或者可以复用的逻辑写在一起;将不同优化目标的部分分开,时序的和面积的分开处理;将时序宽松的分到同一个模块;将存储器件独立划分;合理规划模块的规模。

同步电路设计和异步电路设计的特点-同步电路设计和异步电路设计的特点有哪些区别

图1 模块划分示意图

组合逻辑设计有哪些考虑点

根据逻辑功能的不同特点,可以将数字电路分成两大类,一类称为组合逻辑电路(简称组合电路),另一类称为时序逻辑电路(简称时序电路)。

常见组合逻辑电路包括编码器、译码器、数据选择器、数值比较器、加法器、函数发生器、奇偶校验器/发生器等。

同步电路设计和异步电路设计的特点-同步电路设计和异步电路设计的特点有哪些区别

图2 组合逻辑之半加器

组合逻辑设计注意事项包括:避免组合逻辑反馈环路(容易毛刺、振荡、时序违规等);替换延迟链,用倍频、分频或者同步计数器完成;替换异步脉冲产生单元(毛刺生成器),用同步时序设计脉冲电路;慎用锁存器,锁存器容易产生毛刺。

RTL代码优化有哪些技巧

Pipelining,即流水线时序优化方法,其本质是调整一个较长的组合逻辑路径中的寄存器位置,用寄存器合理分割该组合逻辑路径,从而降低了对路径的Clock-To-Output和Setup等时间参数的要求,达到提高设计频率的目的。但是必须要注意的是,使用Pipelining优化技术只能合理地调整寄存器位置。

模块复用与Resource Sharing,Sharing模块复用和Resource Sharing是一种节约面积的思想,在设计电路中,在不影响性能的情况下,实现最少的逻辑资源开销。

逻辑复制是一种通过增加面积而改善时序条件的优化手段。逻辑复制最常使用的场合是调整信号的扇出。如果某个信号需要驱动后级的很多单元,换句话说,也就是其扇出非常大,那么为了增加这个信号的驱动能力,必须插入很多级Buffer,这样就在一定程度上增加了这个信号路径的延时。这时可以复制生成这个信号的逻辑,使多路同频同相的信号驱动后续电路,平均到每路的扇出变低,不需要加Buffer也能满足驱动能力的要求,这样就节约了该信号的路径时延。

香农扩展(Shannon Expansion)也是一种逻辑复制、增加面积、提高频率的时序优化手段。香农扩展通过逻辑复制、增加MUX(多路选择器)来缩短某个优先级高但组合路径长的信号的路径延时(信号a),从而提高该关键路径的工作频率,以增加面积换取电路时序性能的优化。其扩展运算公式为:Fa,b,c=aF1,b,c+aF(0,b,c)。

同步电路设计和异步电路设计的特点-同步电路设计和异步电路设计的特点有哪些区别

免责声明:文章内容来自互联网,本站不对其真实性负责,也不承担任何法律责任,如有侵权等情况,请与本站联系删除。
转载请注明出处:同步电路设计和异步电路设计的特点-同步电路设计和异步电路设计的特点有哪些区别 https://www.yhzz.com.cn/a/4879.html

上一篇 2023-04-11 08:32:30
下一篇 2023-04-11 08:37:08

相关推荐

联系云恒

在线留言: 我要留言
客服热线:400-600-0310
工作时间:周一至周六,08:30-17:30,节假日休息。