今天小编要和大家分享的是EDA,IC设计相关信息,接下来我将从在Verilog HDL设计中为什么一定要用同步而不能用异步时序逻辑,智能家居新品发布:hdl璞智系列配电箱这几个方面来介绍。

EDA,IC设计相关技术文章在Verilog HDL设计中为什么一定要用同步而不能用异步时序逻辑智能家居新品发布:hdl璞智系列配电箱

EDA,IC设计相关技术文章在Verilog HDL设计中为什么一定要用同步而不能用异步时序逻辑

同步时序逻辑是指表示状态的寄存器组的值只可能在唯一确定的触发条件发生时刻改变。只能由时钟的正跳沿或负跳沿触发的状态机就是一例。always @(posedge clock) 就是一个同步时序逻辑的触发条件, 表示由该 always 控制的 begin end 块中寄存器变量重新赋值的情形只有可能在 clock 正跳沿发生。

而异步时序逻辑是指触发条件由多个控制因素组成,任何一个因素的跳变都可以引起触发。记录状态的寄存器组其时钟输入端不是都连结在同一个时钟信号上。例如用一个触发器的输出连结到另一个触发器的时钟端去触发的就是异步时序逻辑。

用 Verilog HDL 设计的可综合模块,必须避免使用异步时序逻辑,这不但是因为许多综合器不支持异步时序逻辑的综合,而且也因为用异步时序逻辑确实很难来控制由组合逻辑和延迟所产生的冒险和竞争。当电路的复杂度增加时,异步时序逻辑无法调试。工艺的细微变化也会造成异步时序逻辑电路的失效。因为异步时序逻辑中触发条件很随意,任何时刻都有可能发生,所以记录状态的寄存器组的输出在任何时刻都有可能发生变化。而同步时序逻辑中的触发输入至少可以维持一个时钟后才会发生第二次触发。这是一个非常重要的差别,因为我们可以利用这一个时钟的时间在下一次触发信号来到前,为电路状态的改变创造一个稳定可靠的条件。

因此我们可以得出结论:同步时序逻辑比异步时序逻辑具有更可靠更简单的逻辑关系。如果我们强行作出规定,用 Verilog 来设计可综合的状态机必须使用同步时序逻辑,有了这个前提条件,实现自动生成电路结构的综合器就有了可能 。因为这样做大大减少了综合工具的复杂度,为这种工具的成熟创造了条件。也为 Verilog 可综合代码在各种工艺和 FPGA 之间移植创造了条件。

Verilog RTL 级的综合就是基于这个规定的。

下面我们将详细说明同步与异步时序逻辑的差异。

在同步逻辑电路中,触发信号是时钟(clock)的正跳沿(或负跳沿);触发器的输入与输出是经由两个时钟来完成的。第一个时钟的正跳沿(或负跳沿)为输入作准备,在第一个时钟正跳沿(或负跳沿)到来后到第二个时钟正跳沿(或负跳沿)到来之前的这一段时间内,有足够的时间使输入稳定。当第二个时钟正跳沿(或负跳沿)到来时刻,由前一个时钟沿创造的条件已经稳定,所以能够使下一个状态正确地输出。

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查