9、寄存器的Tsu(建立时间)是如何定义的( )。(硬件逻辑实习岗)
A 在时钟沿到来之后数据保持稳定的时间
B 在时钟沿带来前后数据都需要保持稳定的时间
C 在整个时钟周期数据保持稳定的时间
D 在时钟沿到来之前数据保持稳定的时间
解析:考察数字电路中对时序分析基本概念的认识
本题是个概念性的问题,常常在时序分析中提到。
建立时间(Set Up Time,简写为Tsu或Ts):是指在触发器的时钟信号上升沿到来以前,数据稳定不变的时间。建立时间的门限(为了和建立时间区别开,所以简写为T_setup):时钟沿来到之前数据必须保持稳定的最小时间,芯片选定即决定,和制作工艺有关。
保持时间(Hold Time,简写为Th):是指在触发器的时钟信号上升沿到来以后,数据稳定不变的时间,如果保持时间不够,数据同样不能被稳定的打入触发器,Th就是指这个最小的保持时间。保持时间的门限(为了和保持时间区别开,所以简写为T_hold):时钟沿来到之后数据必须保持稳定的最小时间,片选定即决定,和制作工艺有关。
如果我们想让系统中的时钟沿能够正确的采集到数据,那么需要建立时间的余量/裕量(Setup Slack,简写为Sslack) = 建立时间(Ts) - 建立时间的门限(T_setup) ≥ 0且保持时间的余量/裕量(Hold Slack,简写为Hslack) = 保持时间(Th) - 保持时间的门限(T_hold) ≥ 0,采集到的数据最准确的地方就是在满足建立保持时间的情况下时钟沿采集到数据的中间位置。
了解这些基本的概念后可以更方便以后在讲解时序分析相关题目时快速理解。
综上所述,答案选择D
10、关于同步设计,说法错误的是( )。(硬件逻辑实习岗)
A 在可编程逻辑器件中,使用同步电路可以避免器件受温度,电压,工艺的影响,易于消除电路的毛刺,使设计更可靠,单板更稳定
B 为保证逻辑设计可靠,必须保证整个电路中只有一个时钟域,同时只使用同一个时钟沿
C 同步电路比较容易使用寄存器异步复位/置位端,以使整个电路有一个确定的初始状态
解析:考察数字电路中对同步时序电路的理解
首先我们先了解一下同步电路和异步电路的区别。
同步电路是由时序电路(寄存器和各种触发器)和组合逻辑电路构成的电路,其所有操作都是在严格的时钟控制下完成的。这些时序电路共享同一个时钟CLK,而所有的状态变化都是在时钟的上升沿(或下降沿)完成的。比如D触发器,当上升沿到来时,寄存器把D端的电平传到Q输出端。
异步电路主要是组合逻辑电路,用于产生地址译码器、FIFO或RAM的读写控制信号脉冲,但它同时也用在时序电路中,此时它没有统一的时钟,状态变化的时刻是不稳定的,通常输入信号只在电路处于稳定状态时才发生变化。也就是说一个时刻允许一个输入发生变化,以避免输入信号之间造成的竞争冒险。电路的稳定需要有可靠的建立时间和持时间,待下面介绍。
电路设计可分类为同步电路设计和异步电路设计。同步电路设计利用时钟脉冲使其子系统同步运作,而异步电路设计不使用时钟脉冲做同步,其子系统是使用特殊的“开始”和“完成”信号(握手信号)使之同步。由于异步电路具有:无时钟偏移(Skew)问题、低电源消耗、平均效能而非最差效能、模块性、可组合和可复用性等优点,因此近年来对异步电路研究增加快速,论文发表数以倍增,而Intel Pentium 4处理器设计,也开始采用异步电路设计。当然异步电路设计也有很多缺点:由于增加了控制和用于DFT的电路,异步电路的面积开销可能高达同步设计的的两倍。而且由于缺乏专用于异步设计的商用EDA工具,而现在芯片设计的复杂度又越来越高,EDA工具对芯片设计来说是不可替代的,因此这一点也是我们对异步电路的实用性诟病最多的地方。
在同步电路设计中一般采用D触发器,异步电路设计中一般采用Latch。所以这也是为什么我们常常会听到有人说在FPGA设计中要尽量避免产生Latch的原因。
再给大家说一个常见的误区,很多人都以为在同步电路的设计中一定不可以有异步电路的存在,异步电路的设计中也不可以有同步电路的存在,其实这都是不对的。同步电路设计一定是整个电路是全局同步的设计,局部异步的设计;同样异步电路设计也一定是整个电路是全局异步的设计,局部同步的设计。
A选项同步电路确实可以很好的消除电路的毛刺。
B选项首先从做题的角度来看“必须”二字说的太绝对,大家可以根据多年做题的经验总结出这种选项往往是错误的。当然我们也要给出合适的理由,多时钟域在系统的设计中是很常见的事情,虽然会在一定程度上影响逻辑设计的可靠性,但是我们可以通过合理的约束来让这种不确定性变得可以分析,告诉工具哪些路径是无需分析的,哪些时钟域之间是异步的,从而让系统更加稳定可靠。
C选项大家可能感觉稍微有点问题,同步电路使用同步复位/置位也很容易,特别在Xilinx的器件中更为常用。但C选项在“容易”前面加了个很委婉的修饰词“比较”,且也没有明显的其他错误,而题目又是单选,所以本题的最佳选项为B