本书为初学者提供了一条系统学习FPGA设计与验证技术的道路,内容涵盖基础理论和实战技巧,旨在帮助读者快速掌握FPGA开发技能。
在决定撰写这本书的时候,Altera 仍然独立运作,并未被英特尔收购;Xilinx 的 ZYNQ 还处于初步探索阶段。当时 Altera 大学计划首次将亚洲创新大赛从传统的 SOPC 大赛转变为 SOC 大赛,软核转为硬核,性能大幅提升。在那个时期,编写一本详尽讲解 FPGA 设计的书籍会受到高度评价。
然而由于工作变动的原因,我推迟了半年才开始准备动笔写作。当再次着手时,发现 Altera 即将加入英特尔大家庭,并且基于嵌入式硬核的 SOC FPGA 芯片已经开始获得广泛关注。许多公司已经开始了这方面的教学内容与板卡设计的工作。原计划的内容似乎在新技术面前显得有些过时和不重要了。
我开始怀疑,在大家都在关注前沿可编程 SOC 的时候,撰写一本单纯讲解 FPGA 数字逻辑设计的书是否还具有时代意义。因此,编写这本书的动力减弱了很多,这件事又再次被搁置下来。
在这段时间里,我也积极进行了向 SOCFPGA 方面的学习和探索,并掌握了 Cyclone V SOC 开发流程从裸机到基于 Linux 嵌入式系统的知识。实现了 FPGA 和 ARM Cortex-A9 CPU 之间的双向控制与数据传输后,我遇到了新的挑战:一是对 Linux 软件开发的不熟悉;二是缺乏使用 SOCFPGA 架构时所需的复杂系统设计经验。
这两个方面的问题导致了在利用 SOC FPGA 的时候遇到困难重重。如果缺少扎实的 FPGA 设计基础,在应用中只能将其视为普通的嵌入式处理器,无法充分发挥其结构优势;反之亦然,若没有 ARM 嵌入式处理器方面的知识积累,则 SOC FPGA 仅仅只是一个普通 FPGA。
因此,我认为编写一本专门介绍 FPGA 数字逻辑设计的基础书籍仍然具有重要意义。这不仅是合理利用 SOC FPGA 结构优势的前提条件,也是进一步探索和开发更复杂系统的关键基础。