1、IC设计中同步复位与异步复位的区别。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
答:同步复位在时钟沿才复位信号,完成复位动作。异步复位不管时钟,只要复位信号满足条件,就完成复位动作。异步复位对复位信号要求比较高,不能有毛刺,如果其与时钟关系不确定,也可能出现亚稳态。
2、Moore 与 Mealy状态机的特征。
答:Moore 状态机的输出仅与当前状态值有关, 且只在时钟边沿到来时才会有状态变化. Mealy 状态机的输出不仅与当前状态值有关, 而且与当前输入值有关。
3、多时域设计中,如何处理信号跨时域。
答:不同的时钟域之间的信号进行通信时,需要进行同步处理,这样可以防止新时钟域中第一级触发器的亚稳态信号对下级逻辑造成影响,其中对于单个控制信号可以用两级同步器,如电平、边沿检测和脉冲,对多位信号可以用FIFO,双口RAM,握手信号等。
跨时域的信号要经过同步器同步,防止亚稳态传播。例如:时钟域1中的一个信号,要送到时钟域2,那么在这个信号送到时钟域2之前,要先经过时钟域2的同步器同步后,才能进入时钟域2。这个同步器就是两级D触发器,其时钟为时钟域2的时钟。这样做是怕时钟域1中的这个信号,可能不满足时钟域2中触发器的建立保持时间,而产生亚稳态,因为它们之间没有必然关系,是异步的。这样做只能防止亚稳态传播,但不能保证采进来的数据的正确性。所以通常只同步很少位数的信号。比如控制信号或地址。当同步的是地址时,一般该地址应采用格雷码,因为格雷码每次只变一位,相当于每次只有一个同步器在起作用,这样可以降低出错概率,象异步FIFO的设计中,比较读写地址的大小时,就是用这种方法。如果两个时钟域之间传送大量的数据,可以用异步FIFO来解决问题。
4、时钟周期为T,触发器D1的建立时间最大为T1max,最小为T1min。组合逻辑电路最大延迟为T2max,最小为T2min。问,触发器D2的建立时间T3和保持时间T4应满足什么条件。
在网上搜了下这道题,发现讨论的很多,其实我对这个问题也不理解,下面就给出我认为最合理的网友的参考答案:首先说下建立时间和保持时间的定义。
建立时间(setup time)是指在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被打入触发器;保持时间(hold time)是指在触发器的时钟信号上升沿到来以后,数据稳定不变的时间, 如果保持时间不够,数据同样不能被打入触发器。
关于保持时间的理解就是,在触发器D2的输入信号还处在保持时间的时候,如果触发器D1的输出已经通过组合逻辑到达D2的输入端的话,将会破坏D2本来应该保持的数据
5、给出某个一般时序电路的图,有Tsetup、Tdelay、Tck->q,还有 clock的delay,写出决定最大时钟的因素,同时给出表达式。
T+Tclkdealy>Tsetup+Tco+Tdelay;
Thold>Tclkdelay+Tco+Tdelay;
6、说说静态、动态时序模拟的优缺点。
答:静态时序分析是采用穷尽分析方法来提取出整个电路存在的所有时序路径,计算信号在这些路径上的传播延时,检查信号的建立和保持时间是否满足时序要求,通过对最大路径延时和最小路径延时的分析,找出违背时序约束的错误。它不需要输入向量就能穷尽所有的路径,且运行速度很快、占用内存较少,不仅可以对芯片设计进行全面的时序功能检查,而且还可利用时序分析的结果来优化设计,因此静态时序分析已经越来越多地被用到数字集成电路设计的验证中。
动态时序模拟就是通常的仿真,因为不可能产生完备的测试向量,覆盖门级网表中的每一条路径。因此在动态时序分析中,无法暴露一些路径上可能存在的时序问题。
7、一个四级的Mux,其中第二级信号为关键信号,如何改善timing。
将第二级信号放到最后输出一级输出,同时注意修改片选信号,保证其优先级未被修改。
8、画出CMOS电路的晶体管级电路图,实现Y=A*B+C(D+E)。
此类题目都可以采用一种做法,首先将表达式全部用与非门和非门表示,然后将用CMOS电路实现的非门和与非门代入即可。非门既可以单独实现,也可以用与非门实现(将两输入端接在一起即可)。
下图是用非门和与非门实现Y的电路图。
文章评论(0条评论)
登录后参与讨论