您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 招聘面试 > 2012联发科数字IC设计笔试题
2012数字IC设计第一波笔试题一、请写出unix系统下创建文件夹、删除文件夹、XX、XX和XX操作的命令。因为这道题本人完全不会,所以基本上就瞅了一眼,后面几个就不清楚了,但是可以肯定的是都是很基本的操作(*^__^*)。二、简答题(1)请解释Latch与flip-flop的区别;关于latch的讨论latch和flip-flop都是时序逻辑,区别为:latch同其所有的输入信号相关,当输入信号变化时latch就变化,没有时钟端;flip-flop受时钟控制,只有在时钟触发时才采样当前的输入,产生输出。当然因为二者都是时序逻辑,所以输出不但同当前的输入相关还同上一时间的输出相关latch缺点:1、没有时钟端,不受系统同步时钟的控制,无法实现同步操作;2、对输入电平敏感,受布线延迟影响较大,很难保证输出没有毛刺产生;在xilinx和altera器件的slice和LE中都能够同时支持生产d-latch和d-ff,在这一层面上二者有什么区别暂时没有想到。如果使用门电路来搭建latch和ff,则latch消耗的门资源比ff要少,这是latch比ff优越的地方。latch的最大缺点就是没有时钟端,和当前我们尽可能采用时序电路的设计思路不符。latch是电平触发,相当于有一个使能端,且在激活之后(在使能电平的时候)相当于导线了,随输出而变化,在非使能状态下是保持原来的信号,这就可以看出和flip-flop的差别,其实很多时候latch是不能代替ff的1.latch对毛刺敏感2.在ASIC中使用latch的集成度比DFF高,但在FPGA中正好相反,因为FPGA中没有标准的latch单元,但有DFF单元,一个LATCH需要多个LE才能实现3.latch将静态时序分析变得极为复杂4.目前latch只在极高端电的路中使用,如intel的P4等CPU。FPGA中有latch单元,寄存器单元就可以配置成latch单元,在xilinxv2p的手册将该单元成为register/latch单元,附件是xilinx半个slice的结构图。其它型号和厂家的FPGA没有去查证(2)请解释阻塞赋值和非阻塞赋值的区别;(8楼buffon同学补充的哈)阻塞赋值操作符用等号(即=)表示。为什么称这种赋值为阻塞赋值呢?这是因为在赋值时先计算等号右手方向(RHS)部分的值,这时赋值语句不允许任何别的Verilog语句的干扰,直到现行的赋值完成时刻,即把RHS赋值给LHS的时刻,它才允许别的赋值语句的执行。一般可综合的阻塞赋值操作在RHS不能设定有延迟,(即使是零延迟也不允许)。从理论上讲,它与后面的赋值语句只有概念上的先后,而无实质上的延迟。阻塞赋值的执行可以认为是只有一个步骤的操作:计算RHS并更新LHS,此时不能允许有来自任何其他Verilog语句的干扰。所谓阻塞的概念是指在同一个always块中,其后面的赋值语句从概念上(即使不设定延迟)是在前一句赋值语句结束后再开始赋值的。非阻塞赋值操作符用小于等于号(即=)表示。为什么称这种赋值为非阻塞赋值?这是因为在赋值操作时刻开始时计算非阻塞赋值符的RHS表达式,赋值操作时刻结束时更新LHS。在计算非阻塞赋值的RHS表达式和更新LHS期间,其他的Verilog语句,包括其他的Verilog非阻塞赋值语句都能同时计算RHS表达式和更新LHS。非阻塞赋值允许其他的Verilog语句同时进行操作。非阻塞赋值的操作可以看作为两个步骤的过程:在赋值时刻开始时,计算非阻塞赋值RHS表达式。在赋值时刻结束时,更新非阻塞赋值LHS表达式。非阻塞赋值操作只能用于对寄存器类型变量进行赋值,因此只能用在initial块和always块等过程块中。非阻塞赋值不允许用于连续赋值。在编程时应该注意以下问题:时序电路建模时,用非阻塞赋值。锁存器电路建模时,用非阻塞赋值。用always块建立组合逻辑模型时,用阻塞赋值。在同一个always块中建立时序和组合逻辑电路时,用非阻塞赋值。在同一个always块中不要既用非阻塞赋值又用阻塞赋值。不要在一个以上的always块中为同一个变量赋值。用$strobe系统任务来显示用非阻塞赋值的变量值在赋值时不要使用#0延迟(3)请解释setuptime和holdtime之间的区别;Setuptime是指触发器的时钟信号上升沿到来以前,数据稳定不变的时间。输入信号应提前时钟上升沿(如上升沿有效)T时间到达芯片,这个T就是建立时间-Setuptime.如不满足setuptime,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿,数据才能被打入触发器。holdtime是指触发器的时钟信号上升沿到来以后,数据稳定不变的时间。如果holdtime不够,数据同样不能被打入触发器。(4)XXX(5)XXX这里边的好多题里边的术语没见过,或者说没印象了,也属于想做都没法下手的,所以也没花太多时间,请大家参加过的补充下嘛。三、下图是一个4位右移寄存器,0时刻的初始状态为0110,请写出5个时刻后的输出。(这是问哦唯一会的一道题,可是只有5分⊙﹏⊙b)四、关于防抖动电路。输入信号pai_in连续四次稳定在同一电平是,则对其进行采样,否则输入无效。(1)用VHDL或Verilog描述该逻辑电路;(2)给定各器件的时延,求系统运行的最大频率,并给出简要计算步骤。其中setuptime等于0.5ns,holdtime等于0s,D1、D2、D3、D4的延时分别为2ns、2ns、1ns、1ns。(其他器件的最小延时和最大延时分别是表格给出的,记不清咯,不过大多数器件的最小延时都是1ns,这个欢迎大家补名词解释,请写出下列简写的英文全名或中文意义。ECO:EngineeringChangeOrder(工程设计更改)DFM:Designformanufacturability(可制造性设计)AMBA:AdvancedMicrocontrollerBusArchitecture(先进的微控制总线构架)DLL:DelayLockedLoop(数字延迟锁相环)BIST:Built-inSelfTest(内建自测)LDPC:LowDensityParityCheckCodes(低密度奇偶校验码)DCT:DiscreteCosineTransform(离散余弦变换)STA:StaticTimingAnalysis(静态时序分析)CRC:CyclicRedundancyCheck(循环冗余校验码)2、请用流程图的方式简述数字ASIC设计流程以及相应的工具。功能要求行为设计行为仿真综合、优化——网表时序仿真布局布线——版图后仿真流片典型ASIC设计具有下列相当复杂的流程:结构及电气规定。RTL级代码设计和仿真测试平台文件准备。为具有存储单元的模块插入BIST。为了验证设计功能,进行完全设计的动态仿真。设计环境设置。包括使用的设计库和其他一些环境变量。使用DesignCompiler工具,约束和综合设计,并且加入扫描链(或者JTAG)。使用自带静态时序分析器,进行模块静态时序分析。使用Formality工具,进行RTL级和综合后门级网表的FormalVerification。版图布局布线之前,使用PrimeTime工具进行整个设计的静态时序分析。将时序约束前标注到版图生成工具。时序驱动的单元布局,时钟树插入和全局布线。将时钟树插入到DC的原始设计中。使用Formality,对综合后网表和插入时钟树网表FormalVerification。从全局布线后的版图中提取出估算的时间延时信息。将估算的时间延时信息反标注到DesignCompiler或者PrimeTime。在PrimeTime中静态时序分析。在DesignCompiler中进行设计优化。设计的详细布线。从详细布线设计中提取出实际时间延时信息。将提取出的实际时间延时信息反标注到DesignCompiler或者PrimeTime中。在PrimeTime进行版图后的静态时序分析。在DesignCompiler中进行设计优化(如需要)。进行版图后带时间信息的门级仿真。LVS和DRC验证,然后流片。3、a.数字电路的静态功耗和动态功耗有哪几部分构成?与哪些因素有什么关系。b.阈值电压Vt对静态功耗有什么影响?对电路速度有什么影响?请阐述动态时序和静态时序分析的区别和各自的作用。动态功耗:主要是指晶体管开关状态变换产生的开关功耗,还包括输出电压转换的过程中NMOS和PMOS同时导通造成的短路电流功耗。与电源电压的平方,以及总负载电容,时钟频率,动态转换因子的大小成正比。静态功耗:即晶体管状态稳定不变时的功耗,包括:亚阈漏电流功耗,多晶硅栅漏电流功耗,PN结反偏漏电流功耗。与电源电压成成正比,与阈值电压成指数关系。提高阈值电压Vt可以有效地降低静态功耗。但提高阈值电压,电路的速度会降低。动态时序分析的时序确认通过仿真实现,分析的结果完全依赖于验证工程师所提供的激励。不同激励分析的路径不同,也许有些路径(比如关键路径)不能覆盖到,当设计规模很大时,动态分析所需要的时间、占用的资源也越来越大。静态时序分析根据一定的模型从网表中创建无向图,计算路径延迟的总和,如果所有的路径都满足时序约束和规范,那么认为电路设计满足时序约束规范。静态时序分析的方法不依赖于激励,且可以穷尽所有路径,运行速度很快,占用内存很少。它完全克服了动态时序验证的缺陷,适合大规模的电路设计验证。对于同步设计电路,可以借助于静态时序分析工具完成时序验证的任务。4、a.解释setuptime和holdtime的定义。b.如果一个电路中的某个timepath有setuptimeviolation。请问升高或降低这个电路的频率对这个violation有什么影响?升高或降低这个电路的电压会有什么影响?c.如果一个电路中的某个timepath有holdtimeviolation。请问升高或降低这个电路的频率对这个violation有什么影响?升高或降低这个电路的电压会有什么影响?常考题!!!!5、画出的CMOS电路图。6、画出一下RTLcode对应的门级电路图,请使用最少的门。并且只能使用与门and,或门or和非门not。a是2-bit输入,b是1-bit输入,c是1-bit输出。case(a[1:0])2'h0:d=b;2'h1:d=c;2'h2:d=1'b1;2'h3:d=1'b0;Endcase这题大家自己琢磨了啊!!!!7、画出一下三段RTLcode对应的电路图。(a)always@(posedgeclkornegedgerst_n)if(!rst_n)a=1'b0;elseif(en)a=~a;(b)always@(posedgeclk)if(!rst_n)a=1'b0;elseif(en)a=~a;(c)always@(rst_norenorb)if(!rst_n)a=1'b0;elseif(en)a=b;
本文标题:2012联发科数字IC设计笔试题
链接地址:https://www.777doc.com/doc-4781749 .html