ic笔试常见-试题.doc

上传人:小** 文档编号:630143 上传时间:2019-04-22 格式:DOC 页数:18 大小:28.44KB
返回 下载 相关 举报
ic笔试常见-试题.doc_第1页
第1页 / 共18页
ic笔试常见-试题.doc_第2页
第2页 / 共18页
点击查看更多>>
资源描述

《ic笔试常见-试题.doc》由会员分享,可在线阅读,更多相关《ic笔试常见-试题.doc(18页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、-_1.setup 和 holdup 时间区别.Answer:建立时间:触发器在时钟沿来到前,其数据输入端的数据必须保持不变的时间保持时间:触发器在时钟沿来到后,其数据输入端的数据必须保持不变的时间2.多时域设计设计中,如何处理信号跨时域Answer: 情况比较多,如果简单回答的话就是:跨时域的信号要经过同步器同步,防止亚稳态传播。例如:时钟域 1 中的一个信号,要送到时钟域 2,那么在这个信号送到时钟域 2 之前,要先经过时钟域 2 的同步器同步后,才能进入时钟域 2。这个同步器就是两级 d 触发器,其时钟为时钟域 2 的时钟。这样做是怕时钟域 1 中的这个信号,可能不满足时钟域 2 中触发

2、器的建立保持时间,而产生亚稳态,因为它们之间没有必然关系,是异步的。这样做只能防止亚稳态传播,但不能保证采进来的数据的正确性。所以通常只同步很少位数的信号。比如控制信号,或地址。当同步的是地址时,一般该地址应采用格雷码,因为格雷码每次只变一位,相当于每次只有一个同步器在起作用,这样可以降低出错概率,象异步 FIFO 的设计中,比较读写地址的大小时,就是用这种方法。如果两个时钟域之间传送大量的数据,可以用异步 FIFO 来解决问题。3.latch 与 register 的区别,为什么现在多用 register.行为级描述中 latch 如何产生的区别不多说。为什么避免使用 latch,因为设计中

3、用 latch 会使设计后期的静态时序分析变的困难(必须用的地方当然另当别论)。行为级描述中 latch 产生的原因:多由于构造组合逻辑电路电路时,使用 if 或 case 语句,没有把所有的条件给足,导致没有提到的条件,其输出未知。或者是每个条件分支中,没有给出所有输出的值,这就会产生 latch。所以构造组合逻辑电路时,其 always 语句中的敏感信号必须包括所有的输入端,每个条件分支必须把所有的输出端的值都给出来。4.BLOCKING NONBLOCKING 赋值的区别Answer: 这个问题可参考的资料很多,讲的都很透彻,可以找一下。基本用法就是常说的“组合逻辑用 BLOCKING,

4、时序时序逻辑用 NONBLOCKING”。5.MOORE 与 MEELEY 状态机的特征Answer: 6.IC 设计中同步复位与 异步复位的区别Answer: 如果光说概念的话:同步复位在时钟沿采复位信号,完成复位动作。异步复位不管时钟,只要复位信号满足条件,就完成复位动作。象芯片的上电复位就是异步复位,因为这时时钟振荡器不一定起振了,可能还没有时钟脉冲。异步复位很容易受到复位端信号毛刺的影响,比如复位端信号由组合逻辑组成,那组合逻辑输出产生的冒险,就会使触发器错误的复位。7.实现 N 位 Johnson Counter,N=8.用 FSM 实现 101101 的序列检测模块9. 集成电路设

5、计前端流程及工具。10. FPGA 和 ASIC 的概念,他们的区别11. LATCH 和 DFF 的概念和区别Answer: LATC 是 H 锁存器,DFF 是触发器,其电路形式完全不同。12. 用 DFF 实现二分频。-_Answer: always (posedge clk)if (reset) beginsel 和 = 有什么区别?4. 画一个 D 触发器的原理图(门级) ,并且用 verilog gate level 表示出来;-_5. 用最少的 Mos 管画出一个与非门;6. 写一段 finite state machine(主要考察 coding style) ;答:如果触发器

6、的 setup time/hold time 不满足,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿到来时,数据才能被打入触发器。在同步系统中,如果触发器的setup time/hold time 不满足,就可能产生亚稳态(Metastability) ,导致采样错误。此时触发器输出端 Q 在有效时钟沿之后比较长的一段时间处于不确定的状态,在这段时间里Q 端毛刺、振荡、固定的某一电压值,而不是等于数据输入端 D 的值。这段之间成为决断时间(resolution time) 。经过 resolution time 之后 Q 端将稳定到 0 或 1 上,但是究竟是 0 还是 1,这是随

7、机的,与输入没有必然的关系。 只要系统中有异步元件,亚稳态就是无法避免的,因此设计的电路首先要减少亚稳态导致错误的发生,其次要使系统对产生的错误不敏感。前者需要同步来实现,而后者根据不同的设计应用有不同的处理办法。 在IC 设计中,如果 setup time 没有满足,只有重新综合,重新约束计,如果 hold time 不满足,那么可以在 post layout 时候 fix,也可以在综合时候使用 set_fix-_hold 命令来修正 建立时间和保持时间要看在什么阶段出现问题了,如果在仿真阶段则必须重新改写代码,在综合阶段则需要通过标准单元的选择调整,如果综合中没有负的时隙,而在后端设计中出

8、现问题,也可以通过调整布局与布线达到优化设计,并非象楼上说得,一定要从头综合。同步复位与异步复位-_异步复位是不受时钟影响的,在一个芯片系统初始化(或者说上电)的时候需要这么一个全局的信号来对整个芯片进行整体的复位,到一个初始的确定状态。而同步复位需要在时钟沿来临的时候才会对整个系统进行复位。请注意,如果芯片是有多个时钟的系统,那么如何保证不同时钟域的电路能够“同时”复位将会是一个重要的问题,此外,如果你的时钟是一个低频时钟,那么在这个系统(包括其他芯片)上电时如何保证能和其他芯片同时复位?硬件全局异步复位是必要的,请注意这里加上了“全局” ,这是因为异步复位既然要对整个芯片“同时”复位,那么

9、布线延时绝不能不考虑,使用 FPGA 设计时芯片的异步复位必须要走全局网络。再提醒一点,芯片中最好不要出现多个异步复位。一个关键原因是对于 FPGA 而言,多个异步复位信号难以实现前面要求的“全局网络” 。异步复位最大的优点是, 数据通路就可以不依赖于时钟而确保清洁可控。然而, 异步复位也有其固有的缺陷。异步复位设计的 DFT (可测性设计) 与 STA (静态时序分析) 的复杂性要高于同步复位设计; 但异步复位中最严重的问题是, 如果异步复位信号在触发器时钟有效沿附近“释放”(复位信号从有效变为无效) 的话, 可能会导致触发器输出的亚稳态。IR 压降是指出现在集成电路中电源和地网络上电压下降

10、或升高的一种现象。随着半导体工艺的演进金属互连线的宽度越来越窄,导致它的电阻值上升,所以在整个芯片范围内将存在一定的 IR 压降。IR 压降的大小决定于从电源 PAD 到所计算的逻辑门单元之间的等效电阻的大小 SoC 设计中的每一个逻辑门单元的电流都会对设计中的其它逻辑门单元造成不同程度的 IR 压降。如果连接到金属连线上的逻辑门单元同时有翻转动作,那么因此而导致的-_IR 压降将会很大。然而,设计中的某些部分的同时翻转又是非常重要的,例如时钟网络和它所驱动的寄存器,在一个同步设计中它们必须同时翻转。因此,一定程度的 IR 压降是不可避免的。IR 压降可能是局部或全局性的。当相邻位置一定数量的

11、逻辑门单元同时有逻辑翻转动作时,就引起局部 IR 压降现象,而电源网格某一特定部分的电阻值特别高时,例如 R14 远远超出预计时,也会导致局部 IR 压降;当芯片某一区域内的逻辑动作导致其它区域的 IR 压降时,称之为全局现象。IR 压降问题的表现常常类似一些时序甚至可能是信号的完整性问题。如果芯片的全局 IR压降过高,则逻辑门就有功能故障,使芯片彻底失效,尽管逻辑仿真显示设计是正确的。而局部 IR 压降比较敏感,它只在一些特定的条件下才可能发生,例如所有的总线数据同步进行翻转,因此芯片会间歇性的表现出一些功能故障。而 IR 压降比较普遍的影响就是降低了芯片的速度。试验表明,逻辑门单元上 5%

12、的 IR 压降将使正常的门速度降低 15%总的说来,是电压降的意思。规模越大的芯片的电流就越大,在电源上产生的压降也越大。面积增大的芯片也会恶化电压。芯片的速度又与电压成相关性。几个因数导致时序,抗噪等问题。危害:-_1。性能(performance)由管子的 Tdelayc/u 可知,电压降低,门的开关速度越慢,性能越差。2。功能(function)实际上在极端的情况下甚至功能也会受影响的。在深亚微米下,如果 Power/Ground network 做的也很差,然后碰上了很不好的 case,IR drop 会很大,如果用的是 high Vt的 process,则 DC noise marg

13、in 就比较小了。这样就有可能功能错误。3。功耗(power)如果没有做详细的 IR drop 分析,又想功能正确,那就只有留很大的 margin 了,本来1.2v 可以跑的,也只能用 1.5v 了。但是这样功耗也就上去了。4。面积(area)如果要在一定程度上限制 IR drop,就要在 chip 里面加上很多的 decoupling capacitance.占用了很多面积。5。成本(cost)-_功耗上去了,响应的散热,封装都成了问题,需要额外花费啦。而且面积变大,也是钱啊所以,IR drop 还是一个比较讨厌的问题,需要小心对待。异步电路和同步时序电路:同步电路的时序电路共享同一个时钟

14、CLK,而所有的状态变化都是在时钟的上升沿(或下降沿)完成的。同步设计中最长的组合逻辑延迟,即关键路径(Critical Path)将影响整个系统的运行速度。异步电路没有统一的时钟,状态变化的时刻是不稳定的,通常输入信号只在电路处于稳定状态时才发生变化。异步电路:电路核心逻辑有用组合电路实现异步时序电路的最大缺点是容易产生毛刺不利于器件移植不利于静态时序分析(STA) 、验证设计时序性能-_同步时序电路:电路核心逻辑是用各种触发器实现电路主要信号、输出信号等都是在某个时钟沿驱动触发器产生的同步时序电路可以很好的避免毛刺利于器件移植利于静态时序分析(STA) 、验证设计时序性能。同步设计中,稳定

15、可靠的数据采样必须遵从以下两个基本原则:1)在有效时钟沿到达前,数据输入至少已经稳定了采样寄存器的 Setup 时间之久,这条原则简称满足 Setup 时间原则;2)在有效时钟沿到达后,数据输入至少还将稳定保持采样寄存器的 Hold 时钟之旧,这条原则简称满足 Hold 时间原则。用 verilog 描述时序电路相关知识1.所有的时序逻辑电路都必须包含存储电路,因而记忆特性时时序逻辑电路的基本特征。2.存储电路时通过各种存储单元来实现的,而存储单元按照触发方式可以分为锁存器和触发器。以电平触发方式触发的为锁存器,以边沿触发方式触发的为触发器。-_3.在设计过程中,设计人员可以选择使用锁存器和触发器,但一般情况应尽量使用触发器,特别是在使用 FPGA 器件时。4.触发器在使用时要满足两个重要的参数:建立时间(Setup time)和保持时间。描述时序电路1.在设计时一般将组合逻辑电路和存储电路分开描述,尽量不要写到一个 always 块中。2.描述存储电路时,存储单元可以通过寄存器型变量来建模,但只能使用过程赋值(即always 赋值) 。对于电平触发的存储单元,应使用阻塞赋值(=) ;对于边沿触发方式的存储单元,应使用非阻塞赋值(=) 。3.若将组合逻辑和存储电路写到同一个 always 块时,应该使用非阻塞赋值。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com