字节跳动FPGA实习面试及基础问题解答
两个面试官,每个面试官1小时,牛客网视频面试。
1. 自我介绍,后面根据自我介绍问问题;
2. 聊项目
(1) 功能,你负责了哪部分,描述整个系统;
(2) 具体细节,这部分是怎么实现的;
(3) 系统中的CDC(跨时钟域)是怎么处理的,你还了解其他的处理方式吗,项目中异步FIFO的深度怎么确定的;
(4) 高速接口底层原理,外部呈现的总线或者接口形式是怎样的(AXI-Stream),速率,为什么用RapidIO而不用其他接口,怎么去写的相应的驱动,调试中遇到的问题及解决方式;
(5) HLS和RTL的区别、优势和劣势,项目里哪些用的HLS,哪些用的Verilog;
(6) 有没有做软硬件的联合设计和调试,比如以太网之类的,和上层交互;
(7) 提到了布线拥塞,问什么会导致布线拥塞;
主要是时序原因,约束时序,更改设计。
3. 专利介绍
4. FPGA基础
(1) CDC跨时钟域处理方式;
链接:CDC跨时钟域处理及相应的时序约束【set_clock_groups】【set_max_delay】
(2) FIFO深度计算;
链接:FPGA笔试面试题之FIFO深度计算【字节跳动】【大疆】【简便计算公式】
(3) FPGA底层的资源,除了LUT还有什么;
Flip-Flop(触发器),Carry Chain进位链,MUX选择器,DSP48,BRAM(Block RAM 块RAM),IOB(IO Bnak 输入输出块),GT高速收发器,ZYNQ里有PS硬核等。
(4) 什么是关键路径,怎么处理关键路径;
链接:FPGA时序分析之关键路径(Critical Path)【华为静态时序分析资料】【笔试面试】
5. 其他
(1) FPGA的应用;
(2) 实习时间,时长,地点;
6. 手撕代码
(1) 同步FIFO;
(2) 序列检测;
FPGA和数字IC相关笔试解析、面试分享、求职经验、应试技巧