乐鑫数字设计面经

一面

  1. 同学,请你自我介绍一下?
  2. 我看到你做了一个cpu,你能介绍一下RV有哪些指令吗?(寄存器类,立即数类,csr类,fence类,漏答了一个访存类)
  3. 你在实现访存指令的时候,需要几个周期完成?(个人设计是5个)
  4. 你的四级流水线模型是哪四级?(取指,译码,执行,写回)你是从执行级发起访存请求的,那你访存到写回寄存器一共要几拍呢?(2拍)
  5. 你对低功耗设计有了解吗?能说一下低功耗设计的技术吗?(设计时,减少寄存器反转。门控时钟。低功耗模式)
  6. 你能说一下工艺层面如何实现低功耗设计吗?比如说,你可以比较一下LVT,HVT,SVT的优缺点?(没答上来)
  7. 你对SRAM有了解吗?SRAM一般有哪些端口?(时钟,地址,数据,写掩码,使能,复位)(面试官:什么,还有复位?答:在Xilinx的ip里,对最后一级缓存输出寄存器有个复位。)
  8. 前面提到了门控时钟,你知道如何进行时钟控制来实现SRAM的低功耗吗?(觉得理所当然,所以没答上来怎么设计。面试官提示,可以结合SRAM的一个端口来作,我觉得可以是SRAM的选通/片选端口)
  9. 我看到你项目里用了AXI总线,你能说一下AXI总线的特性吗?(读写通道分离,乱序访问,握手机制,突发读写)
  10. 你能说一下AXI总线的outstanding特性是怎么回事吗?(支持在上一个访问结束以前,就允许新的访问握手)
  11. 假如现在我总线上有两个matser,一个slave,我想在slave侧实现outstanding来使得总线能够满负荷流水,这个值设置为多少比较好?为什么(个人觉得是2,允许两个master同时请求不间断)
  12. 我看到你项目里还提到你做过SDRAM控制器,你能说一下要怎么提高SDRAM控制器的读写效率吗?(答:尽量减少换行,因为每次换行就要pre-charge,浪费时间)
  13. 你对XDC有了解没,其中一般包含哪些内容?(时钟约束,驱动约束)
  14. 时钟约束里,create-clock和create-generated clock 有什么区别?(约束外部时钟和内部派生时钟)
  15. 你能说一下跨时钟域信号传输有哪些方法吗?(慢时钟到快时钟,可以打两拍,快时钟到慢时钟,可以握手。在多比特的情况下,可以使用基于握手的DMUX和异步FIFO)
  16. 你能说一下基于握手的CDC方法是怎么实现的吗?(发起时钟域的请求信号同步到接收方,接受方反馈握手信号同步到发起方,然后发起方再撤离请求,然后接受方再撤离握手)
  17. 你说的很复杂,那么接受方要怎么判断数据到来的时刻呢?(对请求信号的两级同步寄存器作边沿判断,请求出现在第一个寄存器的输出)
  18. 你知道异步FIFO的空满标志是如何判断的吗?(地址由格雷码编码,读写指针全一样为空,读写指针首位次高位不一样,但其余位一样为满)
  19. 你能说一下建立时间和保持时间是什么意思吗?(在信号发射路径上,信号在时钟边沿到来以前需要保持的时间,是建立时间;信号在时钟边沿到来以后需要保持的时间是保持时间。建立时间和保持时间是针对寄存器而言的)
  20. 你对multicycle 约束有了解吗?在同步设计中可以用吗?(比如在频率相差过大的跨时钟域设计里检查建立时间和保持时间)(可以用,只是我接触到的是在跨时钟域设计里)
  21. 比如说,从120Mhz时钟域到40Mhz时钟域传输信号,那么建立时间和保持时间要如何约束呢?为什么?(迟疑了很久,完全没用过啊喂。勉强想起来需要计算公共周期,最后觉得应该在第一个周期的上升沿检查保持时间,在第三个周期的上升沿检查建立时间,因为这样检查是最严格的。)
  22. 比如说有一个异步fifo,读写有两个驱动时钟,这种情况下约束应该怎么写呢?(设置为异步时钟组)那他们是同一组还是不同组呢?(当然是不同组)
  23. 你有什么问题问我吗?(为什么没有问我无线通信知识?)因为我们组是数字组,不做基带,基带是另一个组在做。

_________________________________________________

复盘知识

1、这几个都是CMOS集成电路的Vth阈值电压相关的基本概念。通常将传输特性曲线中输出电压随输入电压改变而急剧变化转折区的中点对应的输入电压称为阈值电压。

HVT = High V threshold. Can be used in the path where timing is not critical. So by using HVT cells we can save power.

LVT - Low V threshold. One should use these cells in timing critical paths. These cells are fast but , comsumes more power due to its leakage. So it will consume more power. So use only when timing is critical.

SVT- Standard V threshold. Best of both world. Medium delay and medium power requirment. So if timing is not met by small magin with HVT, you should try with SVT. And at last LVT.

RVT- Regular V threshold. Another name for SVT.

NVT- Normal V threshold. Another name for SVT.

阈值电压越低,因为饱和电流变小,所以速度性能越高;但是因为漏电流会变大,因此功耗会变差。

速度大小按快到慢依次排列为SLVT, LVT, RVT, HVT。 功耗大小却正好相反。即HVT的cell其阈值电压最大其掺杂浓度越高,其泄露功耗最小;

对于NPN的晶体管是n型半导体,其导电是电子,P衬底多子是空穴,掺杂越高电子越少,越难以导电,阈值电压上升,泄露功耗变少。
对于PNP晶体管是P型半导体,其导电是空穴,N型衬底是电子,掺杂越高空穴越少,越难以导电。