EE萌新笔记
零基础的话,我建议按这个顺序来,比较稳当:
第一阶段:打好数字电路基础。这是地基,不懂组合逻辑、时序逻辑、有限状态机,后面写代码就是空中楼阁。推荐书籍:阎石的《数字电子技术基础》或者Thomas L. Floyd的《Digital Fundamentals》。可以配合中国大学MOOC上华中科技大学的数字电路课程。
第二阶段:学习硬件描述语言(HDL)。Verilog或VHDL选一门即可,国内用Verilog的居多。重点理解HDL是描述硬件,不是写软件程序。推荐书籍:夏宇闻的《Verilog数字系统设计教程》或者《FPGA原理和结构》这类书。同时,在这个阶段就要安装EDA工具(Vivado或Quartus,选一个主流厂商的学),学习使用工具进行仿真(如ModelSim/QuestaSim)和综合。
第三阶段:进阶知识与实践。学习FPGA内部的架构(CLB、BRAM、DSP等)、时序分析(建立保持时间、时钟约束)、常用接口(UART、SPI、I2C、DDR等)和高速收发器基础。这时一定要开始做项目,可以从开源社区(如GitHub)找些小项目练手,或者自己定个目标,比如用FPGA通过PMOD接口驱动一个OLED屏。
第四阶段:体系化与深化。根据职业方向(通信、图像处理、嵌入式等)学习特定领域的知识,比如数字信号处理(DSP)算法、协议栈(如以太网、PCIe)等。同时,养成写技术博客、阅读官方文档(如Xilinx的UG系列)和参考设计的好习惯。
学习网站推荐:EDN电子技术设计、电子工程世界论坛、Xilinx和Intel的官方社区、GitHub。视频课程可以看B站上一些有完整项目流程的Up主。关键点是:每个阶段都要用实践来巩固理论,遇到问题多查多问。
