FPGA/IC笔试——寒武纪
1、寄存器如果出现亚稳态,则其亚稳态的持续时间为(D)
A、1个时钟周期
B、小于1个时钟周期
C、大于1个时钟周期
D、不确定
2、下列功耗措施哪个可以降低峰值功耗(B)
A、Power Gating
B、大幅度提高HVT比例
C、静态模块级clock Gating
D、Memory shut Down
3、下列说法错误的是(C)
A、管脚静态配置信号可以不用做异步处理
B、异步FIFO设计时需要考虑两个时钟之间的频率关系
C、异步FIFO设计中使用格雷码的目的只要是为了提高电路速度
D、异步电路中,只有信号电平翻转才可能引入亚稳态
解析:异步FIFO设计中使用格雷码的目的 :即使在亚稳态进行读写也能进行正确的空满状态判断。
4、SRAM面积大小与那些因素相关(ABCD)
A、 容量,即总的bit数目
B、地址译码方式
C、禁布区
D、BIST电路
解析:BIST全程build-in self-test,中文名内建自测电路,是一种DFT技术,设计时在电路中植入相关功能电路用于提供自我测试功能的技术,以此降低器件测试对自动测试设备(ATE)的依赖程度。可以理解为一种自我检测的电路,方便用户查错;禁布区:可以理解为通过设定一些来约束布线的区域。由于power ring导致的禁布区,在RAM布置成方形时,所消耗的面积最小。
5、自底向上(Bottom-Up)综合策略的优点是(BCD)
A.需要进行多次迭代
B.可以根据不同模块的不同特点和要求单独进行优化
C.对内存要求较小并且可以在多个机器上并行执行
D.某个模块修改后不必重新综合整个设计,减少了综合时间
6、150MHz时钟域的多bit信号A[63:0]需要同步到50MHz时钟域,可能使用的同步方式有(ABD)
A、DMUX
B、双向握手
C、打拍
D、异步FIFO
解析:DMUX:反向多路选择器,多选一输出
双向握手:req(输入)与ack(反馈)信号是否相等就可以判断传输是否完成。当req !=ack时表示正在传输,不可以发起新的传输操作。当req=ack时表示传输完成,可以开始新的传输过程。
打拍:单bit使用
7、以下哪些设计会导致STA分析困难(ABCD)
A将时钟之间作为数据使用
B同一模块中存在大量异步逻辑
C组合逻辑环
D使用latch锁存器
分析:STA(静态时序分析)的基本公式为:如右图所示,
其中T_period为时钟周期,T_cko为D触发器开始采样瞬间到D触发器采样的数据开始输出时间,T_logic为中间的组合逻辑的延迟,T_net的为走线的延时,T_setup为D触发器的建立时间,T_clk_skew为时钟偏移,偏移的原因为时钟到达前后两个D触发器的路线不是一样长。所以时钟无法作为数据。
8、题目描述
Explain the following timing arcs:
setup check arc
hold check arc
recovery check arc
removal check arc
setup check arc:建立时序弧,用来表示时序单元获得正确数据信号所需要的约束信息,即在时钟沿有效前数据输入性保持有效的时间信息;
hold check arc:保持时序弧,也用来表示时序单元获得正确信号所需要的约束信息,即在时钟沿有效后数据输入信号继续维持有效的时间信息;
recovery check arc:恢复时序弧,用来表示具有复位清零端口的时序单元成功使能所需要的约束信息,即在时钟沿有效前使能信号保持有效的时间信息;
removal check arc:移除时序弧,也是用来表示具有复位清零端口的时序单元成功使能所需要的约束信息,即在时钟沿有效后使能信号维持有效的时间信息;
9、题目描述
Clka时钟频率是clkb时钟频率的3倍,两个时钟域为异步时钟,clka时钟域产生的fifo_err信号为脉冲信号,只维持一拍,为了使clkb时钟域不漏采fifo_err指示,进行了告警展宽处理,如上图所示。
问题:请问该电路存在什么问题?如有问题,如何修改?
解析:组合逻辑在不同时钟域之间是不可取的,因为组合逻辑容易产生毛刺,需要加一个被源时钟域控制的寄存器进行输出,提升电路的稳定性(MTBF)
10、假设我们想要提高用于Web服务处理器。新的处理器快10倍计算比原来在Web服务应用程序的处理器。假设原始处理器忙于计算45的时间和等待I/O的是55的时候,整体加速上涨,将提高是什么?
speed up = exe time old/exe time new = 1/(0.55+0.45/10)=1.68
the overall speedup gained is 68%