求职经验之综合岗位

刚刚结束了NVIDA的一面,电话面试,是综合方面的岗位。心里又是乱七八糟的,唉~说的磕磕巴巴的。跟第一次面试南瑞一样的情况。总结一下,别让情绪堆砌。

1,自我介绍

2,项目(项目还是愁人啊,我还没有具体做)

  时钟频率:180m(没回答上来)

  数据大小:两路,定点化数据,数据宽度是24bit,深度是1024(没有回答上来)

  使用的是几位乘法器:我胡扯是可变的,因为使用矩阵分块部分,分块是可以不定的,所以矩阵分块不定。。。实际是24bit*24,结果截位24

  说说重要模块:矩阵迭代部分。(虽然这是重要部分,但我还不太掌握,下次说预处理部分,使用了cordic算法,Jacobi算法)。

3:说说ASIC流程,感觉说得不够流利。

4:建立时间与保持时间的定义,影响建立时间的因素,影响保持时间的因素

  定义说出来了,影响建立时间只说了降频,影响保持时间只说出了降压,原因说不出来。

  建立时间:数据在时钟到来之前保持稳定所需的时间。

  保持时间:数据在时钟到达之后数据需要保持稳定的时间。

  改进setup/hold的方式有:set multi cycle path;适当降低Freq;多级流水,合理利用useful skew;

      降频主要用于改进setup;降压和升温使器件变慢来改进hold问题。 

5:低功耗设计包括哪些,公式?如何减少静态功耗,动态功耗?如果减少静态功耗?

  说出来动态功耗与静态功耗,具体公式没有说出来,动态功耗与翻转频率,电压有关,静态功耗与漏电流有关。

  标准答案:动态功耗 p=fcv^2(翻转频率,负载电容,电压)

       静态功耗p=vdd*I(leakage) (越先进越高性能的工艺,抗漏电的能力越差)

                         减少动态功耗:降低电源,但电源太低会影响性能;这方面可以采用多电压设计,不同模块采用不同模块

              减少实际电容:尺寸

              减少翻转活动性:如使用门控时钟,减少时钟翻转。

       减少静态功耗:降低电源;

              降低漏电电流,合理选择器件,有效降低漏电。比如理想情况下CMOS反向器的静态电流为0。漏电电流是由热产生的载流子引起                                                       的,数值随着温度增加,因此一个电路总的工作温度较低是所期望的目标。 另外降低器件的阈值电压能降低漏电电流。

6:说说你了解的综合,时序约束包括哪些?时钟抖动与偏移通过uncertainty设置约束。

   综合 = 翻译+逻辑优化+映射

  时序约束包括:(1)约束时钟 create_clock/set_clock_uncertainty/set_clock_latency

           (2)  约束IO set_input_delay/set_output_delay

           (3) 约束special路径 set_false_path/set_multicycle_path

           (4)约束一些rule set_max_fanout/set_max_cap

7:假设一个设计的综合的约束不满足,在前端设计方面,如何改coding?我说了改进流水线,就不懂了,流水线需要好好了解。(以下可继续补充)

  (1)找出组合逻辑长的路径,在中间打拍,即插入寄存器

  (2)存储资源的使用,RAM或FIFO,对于RAM资源尽可能的使用block ram资源;使用distribute ram资源会给编译器的布线很大压力,如果ram使用深度又很大时,一般都会造成地址路径延时过多,出现时序约束不满足。

 (3)尽量不要使用组合逻辑实现功能

  忠告一、如果时序差的不多,在1NS以内,可以通过修改综合,布局布线选项来搞定,如果差的多,就得动代码。
       忠告二、看下时序报告,挑一个时序最紧的路径,仔细看看是什么原因导致,先看逻辑级数是多少?是哪种电路有问题,乘法器 或者还是RAM接口数据 先弄清楚哪儿的问题
       忠告三、搞时序优化的话 插入寄存器是王道 但也要看具体情况 不一定都得插寄存器,插入寄存器效果不明显的话,先检查一下寄存器插入的位置,如果寄存器不是在关键路径的中间插入而是在某一端的话,确实不大明显
       忠告四、把关键路径找出来,看时序报告,看是什么原因导致频率上不去,如果是组合逻辑复杂,就优化逻辑或者复制逻辑,如果是DSP延迟大,就选多级流水的,只要想搞到150,就一定可以。
      忠告五、看时序报告的时候,建议同时对照电路图一起看,这样最直观
      忠告六、对照代码,自己把关键路径涉及部分的电路图画出来,然后根据时序要求,算一下要插多少寄存器,插哪儿合适
      忠告七、32BIT的比较器,进位链有点长,可以分段比较,分成4个8BIT的数据段去比,或者你分成两段,先比高16,插寄存器,再比低16,时序很好,如果想深入些,就自己手写一个比较器,不要调库。
     忠告八、多BIT的逻辑,时序上不去,通常都是进位链太长,通常做法就是打断进位链,建议看看计算方法或者数字算法之类的书,应该会有帮助

8:未来3-5年的职业规划

  

9:来段英文口语,2-3分钟(我尼玛。。。)

  hello,my name is huanm,This is a great honor to have this interview.Now I will introduce myself briefly. I am 23 years old,born in anhui province, and I am a postgraduate of IC engineering at XX university。I skilled in verilog,c/c++; known about some scripts like tcl,perl;ect.

I like sports and I would take exercise almost every day,also,in my spare time ,I like playing video games. 

10:个人有什么问题

  

posted on 2018-04-26 16:09  huanm  阅读(1059)  评论(0编辑  收藏  举报