前言
本书是作者在《片上可编程系统原理及应用》教材的基础上,专门介绍基于AXI4规范和Xilinx软核处理器MicroBlaze实现嵌入式系统应用的高级教程。
当前,FPGA正越来越广泛地应用在各个领域中。Xilinx公司将专用的嵌入式处理器PowerPC硬核、ARM Cortex-A9 MP硬核和嵌入式处理器MicroBlaze软核嵌入到了FPGA芯片中。这种集成了嵌入式处理器的FPGA芯片被定义成FPGA平台。这种基于FPGA的平台提供了一个灵活的嵌入式解决方案。在这个解决方案中,单个FPGA芯片上提供了大量不同的IP软核和硬核资源。这些固件和硬件可以随时进行升级。这种可编程的结构特点,大大缩短了系统的开发时间,且同一平台能应用在很多领域,提高了平台的资源复用率。
基于MicroBlaze软核处理器构成的片上系统(SOC)是FPGA在嵌入式系统领域的重要应用,其开放的设计结构和设计平台,有助于设计者更好地理解并掌握可编程片上系统的设计原理、设计方法和设计流程。此外,AXI4规范是世界著名的嵌入式处理器IP核提供商ARM公司和世界著名的可编程逻辑器件提供商Xilinx公司共同制定的下一代SOC的互联标准,该标准的制定将对未来片上系统的发展产生深远的影响。
本书系统介绍了基于Xilinx公司MicroBlaze软核处理器和AXI4规范的可编程片上系统的原理及实现。全书共分11章,包括可编程片上系统设计导论、AMBA AXI4协议、MicroBlaze软核处理器结构、MicroBlaze软核处理器接口、可编程片上系统开发平台结构、可编程片上系统描述规范、基于AXI4可编程片上系统的设计流程、Xilinx操作系统及库、基于AXI4的Xilkernel实现、基于AXI4的lwIP协议栈实现和基于AXI4的多核处理器系统实现等内容。学习这些内容可以为后续使用嵌入ARM-Cotex A9 MP多核处理器硬核进行可编程片上系统的实践开发打下坚实的基础。
掌握可编程片上系统设计技术的有效途径是在学习本书基本设计方法的基础上,尽可能多地在硬件平台上进行实际练习和操作,并完成一个完整片上系统的设计。这样读者就能够独立地从事可编程片上系统的设计和开发工作。
感谢王纲领、刘一民、何军和彭勃,他们分别参与了第7章、第9章、第10章和第11章的编写工作,对相关的设计案例进行了测试,并帮助完成了书中部分表格和插图的绘制工作。同时,还要感谢Xilinx大学计划和美国Digilentinc公司在软件和硬件平台方面给予的大力支持,正是由于他们的大力支持,作者才能及时地将可编程片上系统的最新技术介绍给广大读者。最后,也要感谢清华大学出版社的工作人员,正是由于他们的鼎力支持和帮助,使得作者能在短时间内高质量地完成该书的编写和校对工作。
虽然作者为本书的编写尽心竭力,但是由于Xilinx的可编程SOC技术发展迅速及作者的知识水平所限,书中一定会存在不足之处,恳请广大读者、同仁对本书提出宝贵的修改意见。
作者
2011年6月于北京
