最近有幸参加了Cadence Principle Product Engineer的on-site面试,秉承读研时老师教我的:“Engineers don't talk, talk is cheap, show me the code”原则,话不多说:
面试主要考察candidate白板画电路图,白板写code, 白板推公式能力(注意自己做过的电路模块一定要定期复习,不能临场还想着像平时工作中一样随时google一下记不住的模块, -_-||| 工科平时喜欢推导不重视记忆的同学要敲黑板了)
画出锁相环的结构图:
画出锁相环的电路图:
请分析你画的锁相环电路的输入、输出,画出波形图,你打算用cadence如何仿真这个电路图?使用什么器件类型?使用什么工艺?如何测量输入、输出电压、电流?具体点cadence的哪些button? 操作流程是怎样的?
你对数字锁相环有研究吗?写一段system verilog 代码来实现你所画的PLL电路?你打算如何验证你写的锁相环是否正确?(输入设定好的激励,检查输出是否符合预期)
module digital_pll(
input logic clk, // 输入时钟
input logic rstn, // 异步复位,低电平有效
input logic ref_clk, // 参考时钟
output logic out_clk // PLL输出时钟
);
logic phase_error;
logic [7:0] control_word; // 控制字用于调整输出频率
logic osc_clk;
// 简单的相位检测器
always_ff @(posedge clk or negedge rstn) begin
if (!rstn) begin
phase_error <= 0;
end else begin
phase_error <= (ref_clk != osc_clk);
end
end
// 控制环路(数字滤波器)
always_ff @(posedge clk or negedge rstn) begin
if (!rstn) begin
control_word <= 8'h00;
end else if (phase_error) begin
control_word <= control_word + 1; // 简单地增加控制字以调整频率
end
end
// 数字振荡器(简化)
always_ff @(posedge clk or negedge rstn) begin
if (!rstn) begin
osc_clk <= 0;
end else begin
// 使用控制字来模拟频率调整
// 注意:这是非常简化的逻辑,仅作为演示
osc_clk <= (control_word[7] ? ~osc_clk : osc_clk);
end
end
// 输出
assign out_clk = osc_clk;
endmodule
备注:在我写到 always_ff @(posedge clk or negedge rstn) begin 的时候面试官喊了停,说他知道我要写啥了哈哈哈哈哈呃……
有哪些生成指定频率的信号的方法?(晶振的压电效应、VCO , LC谐振 ,DDS , FPGA频率合成 ...等等)
请在白板上画出波形图,说明你对输入、输出延时的理解:我当时画了一个输入、输出上升沿之间的延时表达我对输入、输出延时的理解。
请画出receiver的结构图、电路图:包含天线、LNA, LPF, mixer等
请画出bandgap reference的电路图:
请画出802.11a/b/g/n 电路图,并回答该电路的输入、输出信号是什么?
使用MATLAB 进行心电图滤波的时候,具体滤波器是如何实现的?是自己写的代码还是调用的MATLAB自带函数?如果是自己写的,请列出使用的滤波器所涉及原理、公式,在白板上写出代码;如果是调用的MATLAB自带函数,请写出具体调用了哪些函数。
BPSK , QPSK ...画图,图的横坐标、纵坐标分别代表什么?(I & Q)
画图表示你对IIP2, IIP3, IM3, 1-dB compression point的理解
画图表示你对A,B,C,D,E, Doherty类射频功放 的理解(波形图、电路图),不同类射频功放的PAE分别是什么?
最后,自己本科、读研时上过什么课,做过什么实验,发过什么paper,和哪位同学一起做的project, 自己在project中具体负责哪一块,都要清晰记得,不然面试官可能对他感兴趣的点进行深入提问,例如:你做的这个模块的具体电路图给我画一下?输入、输出分别是什么?当时使用了cadence的什么进行分析(transient analysis/AC analysis...)?你当时是如何用cadence测量电压、电流信号的(需要精确到你点了candence软件中的哪个button)?用了哪个参数模型?用了什么工艺模型?你这篇paper的创新点在哪里?解决了什么问题?
声明:本文内容为贴主原创,时间仓促,请多包涵。