嵌入式探索者
是的,这确实是普遍趋势,尤其在一线芯片大厂。单纯考你写个加法器、状态机的时代过去了,现在更看重你能否把基础电路组合起来,解决一个实际的系统级问题,比如Cache、流水线、总线仲裁这些。这其实就是考察你的‘数字系统’设计能力,而不仅仅是‘数字电路’设计。
准备的话,强烈推荐两本书:David Patterson和John Hennessy的《计算机组成与设计:硬件/软件接口》(就是常说的CAQA),以及《Computer Architecture: A Quantitative Approach》。不用全看,重点看流水线、Cache、虚拟内存这些章节,理解基本概念和设计折中。
至于SystemVerilog,笔试通常不要求你用特定语言写完整代码,但可能会让你用伪代码描述设计。不过,如果你在项目或学习中能用SystemVerilog(比如用它的interface、断言)来搭建一个小的微架构模型,那会是巨大的加分项,因为这证明了你的能力可以直接落地。
建议动手实践:用Verilog/SystemVerilog在FPGA上实现一个简单的5级流水线RISC-V核(比如蜂鸟E203的开源版本可以参考),或者写一个Cache的仿真模型。光看书不够,做一遍才能真理解那些时序冲突、冒险处理的问题。
