竞争与冒险输入信号路径不同导致输出出现尖峰毛刺。解决方法加滤波电容、修改逻辑增加冗余项、选通法利用STB信号避开毛刺时序逻辑电路特点输出不仅取决于当前输入还取决于过去的状态有记忆依赖时钟沿。锁存器与触发器锁存器电平敏感如SR锁存器、D锁存器。慎用易产生毛刺、时序难收敛。触发器边沿敏感上升沿/下降沿。常用D触发器数据锁存、分频、JK触发器T触发器。同步与异步同步所有触发器共用同一时钟主流设计时序易分析。异步各触发器时钟源不同有风险仅特定场景如分频、异步复位。典型电路寄存器N个D触发器构成。计数器二进制、十进制、环形、扭环形Johnson。分频器偶数分频计数器、奇数分频双边沿或计数组合、半整数分频。状态机Moore型输出仅取决于当前状态更稳定。Mealy型输出取决于当前状态和输入响应快但有毛刺风险。编码方式二进制编码节省触发器、独热码节省组合逻辑速度快适合FPGA、格雷码节省功耗。5. 存储器RAMSRAM速度快贵用作Cache、DRAM需刷新容量大用作内存。ROM掩膜ROM、PROM、EPROM、EEPROM、Flash。FIFO同步FIFO同时钟、异步FIFO跨时钟需格雷码处理读写指针。6. ADC/DACADC逐次逼近型SAR中速中等精度、双积分型慢精度高、Flash型极快分辨率低、Sigma-Delta高精度慢。关键参数分辨率bit数、采样率SPS、量化误差±1/2 LSB。DAC权电阻型、R-2R梯形常用。7. 常见接口协议SPI四线SCLK, MOSI, MISO, SS全双工主从模式。I2C两线SDA, SCL半双工带地址需上拉电阻。UART异步串行需约定波特率起始位数据校验停止位。LVDS差分信号高速几百Mbps至几Gbps。二、 经典面试题及解析附回答思路1. 基础概念类Q1解释一下建立时间Setup Time和保持时间Hold Time。答建立时间时钟有效沿到来之前数据必须保持稳定的最小时间。保持时间时钟有效沿到来之后数据必须保持稳定的最小时间。违例后果亚稳态Metastability即寄存器输出不定态可能传播导致系统崩溃。解决方法降低时钟频率、优化组合逻辑路径插入流水线、使用更快触发器。Q2同步复位和异步复位有什么区别答同步复位复位信号仅当时钟沿到来时生效。优点抗毛刺好利于时序分析缺点需要时钟才能复位。异步复位复位信号立即生效不管时钟。优点响应快少资源缺点易受毛刺干扰复位释放若在时钟沿附近易导致亚稳态。常用做法异步复位、同步释放用两级触发器同步异步复位信号。Q3解释亚稳态如何避免答触发器建立/保持时间不满足时输出会进入一个介于0和1之间的不稳定状态。避免方法两级触发器同步处理单bit跨时钟域。使用FIFO或握手多bit跨时钟域。减小组合逻辑延迟。使用更快更低亚稳态时间常数的触发器。2. 电路设计类Q4用D触发器实现一个2分频电路或4分频。答将D触发器的反相输出端Q非接到输入端D时钟输入端接输入时钟。这样Q端输出就是输入时钟的2分频。要4分频则级联两个这样的2分频器。面试时最好能画出电路图。Q5用二选一MUX数据选择器实现一个异或门。答异或逻辑为 Y A⊕B A·B非 A非·B。用二选一实现MUX的S端接A0输入接B1输入接B非。即Y (A0) ? B : ~B。Q6画出CMOS反相器的电路结构解释其工作原理。答上方PMOS管源极接VDD下方NMOS管源极接GND两管栅极相连作为输入漏极相连作为输出。输入为高VDDNMOS导通PMOS截止输出拉低至GND。输入为低GNDPMOS导通NMOS截止输出上拉至VDD。3. 编程/工具类针对FPGA/ICQ7Verilog中阻塞赋值和非阻塞赋值的区别答阻塞赋值顺序执行语句结束立即完成赋值。用于组合逻辑always (*)。非阻塞赋值并行执行先计算RHS在块结束时统一赋值。用于时序逻辑always (posedge clk)。混用后果仿真时出现竞争冒险综合时可能产生不应有的锁存器或逻辑错误。Q8FPGA内部基本单元是什么答查找表LUT通常4/6输入实现组合逻辑和触发器FF实现时序逻辑通常二者组成一个逻辑片或逻辑单元。此外还有块RAM、DSP切片乘法器累加器、PLL锁相环用于时钟管理、IOB输入输出块。4. 故障排查类Q9如果在实际电路中观察到时钟信号边缘有明显的过冲Overshoot可能是什么原因如何解决答通常是阻抗不匹配导致的信号反射。解决方法串联终端电阻靠近源端22Ω/33Ω匹配传输线阻抗或减小驱动电流如FPGA可降低输出驱动强度。Q10一个计数器按预期计数但偶尔会跳过一个数如从5跳到7可能是什么问题答可能是组合逻辑输出的毛刺被时钟错误采样。常见于格雷码转二进制电路或异步计数器中。解决办法改用同步计数器设计或对可能产生毛刺的路径做格雷码编码。