1、同步和异步实验时间:寒假第三周实验地点:老校区16 楼实验室实验学生:刘欢实验原理: 1.同步时序电路:同步时序电路是指各触发器的时钟端全部连接在一起 ,并接系统时钟端 ; 只有当时钟脉冲到来时 ,电路的状态才能改变 ;改变后的状态将一直保持到下一个时钟脉冲的到来 ,此时无论外部输入 x 有无变化 ;状态表中的每个状态都是稳定的 .2.异步时序电路:异步时序电路是指电路中除以使用带时钟的触发器外 ,还可以使用不带时钟的触发器和延迟元件作为存储元件 ; 电路中没有统一的时钟 ;电路状态的改变由外部输入的变化直接引起 .可将异步时序逻辑电路分为脉冲异步时序电路和电平异步时序电路.实验内容 :在这里
2、我用D 触发器来很明显的体现出同步和异步的区别。先用 verilog 描述一个异步的 D 触发器,即就是当有时钟 clk 、reset、set、信号时该处发起都会随时发出响应。然后描述一个同步的D 触发器,当有时钟脉冲时才会做出响应,而 reset和 set 发生时只会等时终发生变化才会做出响应。 然后在测试用例中使用相同的信号,观察两个触发器的区别。异步 D 触发器:module D_AT(output reg q,input d,input clk,input reset,input set);/AsyncPostBackTrigger触发器always (posedge clk or n
3、egedge reset or negedge set)/ 带有置位和复位的触发器beginif(!reset)/ 低电平有效q = 0;else if(!set)q = 1;else专业文档供参考,如有帮助请下载。q = d;endEndmodule同步的 D触发器:module D_ST(output reg q,input d,input clk,input reset,input set);/synchronizer trigger always (posedge clk)beginif(reset = 1)/高电平有效q = 0;else if(set = 1)q = 1;elseq
4、 = d;endEndmodule波形图:对上图进行分析: q1 为同步触发器输出信号, q2 为异步触发器输出信号。因为同步是以高电平有效的,所以在 set 由低变高时,会发生置位,又因为是同步触发器,所以要等到 CLK 上升沿时才会变化,在图中很显然能表现出来;而异步触发器是低电平有效,所有当 RESET 由高变低时,会发生复位,又因为它是异步触发器,所以只要有复位信号就就会复位,不用管 CLK 是否有沿变化,图中很显然能够看出来。注意:在设计电路的时候尽可能使用同步设计。 因为异步设计问题常常会由于电压、 温度或工艺制程的微妙变化而间歇性的表现出来。 同步设计是一种正规的设计方法, 他可以保证设计能够在要求的速度范围内正常工作, 只要时序满足一定的范围延迟即使不能完全控制, 也是相对可控的。同步设计不仅比异步设计更加可靠, 而且大多数 EDA 工具现在也假定设计是同步的。专业文档供参考,如有帮助请下载。