1.字节跳动AI LAB ---FPGA岗
上来先自我介绍。
简历上的项目经历什么的,一点没问。
直接问基础:
FPGA的开发流程是什么?
会看时序综合报告吗?
遇到时序问题怎么解决?
讲一下建立时间和保持时间?
时序不满足,怎么办?
根据经典模型,写一下建立时间的公式?
保持时间和路径延时的公式?
建立时间和保持时间在器件级怎么理解?
什么是jitter?
什么是skew?
怎么解决上述的两个问题?
考虑上述问题,把jitter加入上述的公式?
代码考察:
前级输入6个32bit的数据、一位的valid信号,当前级在valid信号有效时采样数据,求和,输出一个32bit的和s、给上一级的ready信号、给下一级的valid信号。
现场写verilog。
上述的电路可能会出现哪些时序问题?
之所以在valid和ready信号同时有效才采样数据,不是为了跨时钟域通信,而是当前级的数据可能没处理完,所以需要等待当前级数据处理完,才能读入数据。
写一个2bit的全加器。
虽然舍弃了进位,但是32bit的加法器,中间级的进位还是存在的,因此还是有可能产生时序问题,竞争冒险。
解决办法:多级加法器,每一级加法器中间搞成流水线。
有什么想问的吗?
1.什么时候毕业?
2.可以来实习嘛?
3.用的什么FPGA?
4.竞争冒险的解决办法。
5.亚稳态的概念及解决办法。
单bit和多bit的处理办法,除了异步FIFO和握手协议、双口RAM,还了解其他的吗?
6.建立时间和保持时间的概念、由什么决定。
7.Block RAM和分布式RAM。
8.DDR、PCIE、以太网的概念。
9.FPGA布局布线和时序错误遇到过吗?怎么解决?
10.UVM
2.中兴微电子IC设计
时间大概45分钟。
对面三个面试官。
首先是自我介绍。
其次根据简历上的内容进行提问。
1.介绍这个项目的细节
数字电路部分、
软件部分、
外围的电路。
如果遇到问题,怎么排查和解决。
signaltap找不到信号节点怎么办。
2.IIC协议电路
起始信号、结束信号;主设备、从设备的通信。
3.对IC设计流程的理解
前端、后端、DRC、LVS。
4.异步信号的处理。
5.入职5年的计划。
6.意向的工作地和薪酬。
7.自己的优势和劣势是什么。
8.为什么想IC设计而不是FPGA。
9.有什么想问的吗?
10.想来中兴吗?
3.兆易创新数字IC设计面试题
自我介绍。
脚本用的什么语言。
Perl打开文件的指令是什么?
项目的介绍。
画个框图。
开始做题:
同一个时钟沿,怎么根据一个电平信号的变化,产生一个脉冲。
数字滤波:输入的信号有噪声,噪声不超过两个周期,怎么滤掉噪声。
写一个串并转换的RTL代码。
AXI和AHB的区别。
对MCU和总线了解吗?
4.英伟达秋招数字IC设计
秋招参加了英伟达数字IC设计的面试。
以下是面试的记录,分享给大家。
【1】一面,电话面,两个面试官,一个设计,一个验证,时长一小时左右。
英文自我介绍。
介绍一个自己的项目。
根据项目来问异步FIFO、单口RAM、仲裁的问题。
跨时钟域的方法。
握手协议需要几个cycle。
低功耗方法。
工艺制程对功耗的影响。
验证的问题。
fork_join三兄弟的区别。
验证方法学:driver\monitor\score borad\golden test.
英文问题:队列中插入数据的方法、怎么看待英伟达收购ARM。
为什么想来英伟达?
反问。
国庆节之前会出最终的结果。
【2】二面,时长两个半小时,前后来了三拨面试官。
从实习到在校项目,再到各种基础知识,包括:
低功耗方法学。
FIFO、RAM存储的设计和验证。
跨时钟域的问题。
仲裁机制。
AMBA总线协议,APB\AHB\AXI\ACE的区别和联系。
UART、IIC、SPI协议。
常用的Debug方法。
无毛刺的时钟切换电路设计。
setup, hold 时序问题的修复方法。
怎么看待英伟达收购ARM。
为什么想来英伟达。
还有哪些offer。
最后主管谈了一下待遇。
全部评论
(2) 回帖