出版时间:2010-1 出版社:何宾 清华大学出版社 (2010-01出版) 作者:何宾 页数:312
Tag标签:无
前言
本书是作者在《EDA原理及应用》教材的基础上编写的针对Xilinx可编程逻辑器件高级应用的教材。现在FPGA越来越被广泛地应用在各个领域中。Xilinx公司将专用的嵌入式处理器PowerPC硬核和Micro Blaze嵌入式处理器软核嵌入到了FPGA芯片中。这种集成了嵌入式处理器的FPGA芯片被定义成FPGA的平台。这种基于FPGA的嵌入式平台提供了一个灵活的解决方案。在这个解决方案中,一个单FPGA芯片上提供了大量不同的IP软核和硬核资源。这些固件和硬件可以在任何时间进行升级。这种可编程的结构特点,大大缩短了系统的开发时间,而同一平台能应用在很多领域,提高了平台的资源复用率。片上可编程系统(System-On-a-Programmable Chip,SOPC)技术是Xilinx公司在继FPGA设计技术后,又一重要的技术应用成果。SOPC技术的推出对嵌入式系统设计技术产生了深远的影响。
内容概要
《片上可编程系统原理及应用》系统全面介绍了Xilinx公司的片上可编程系统的原理及一些典型应用。全书共分7章,内容包括SOPC设计导论、MicroBlaze处理器原理、PowerPC处理器原理、SOPC开发平台结构、SOPC描述规范、操作系统及板级支持包和基于EDK的设计流程。《片上可编程系统原理及应用》所有资料来自Xilinx公司的技术手册、文献和应用案例,充分反映了Xilinx公司片上可编程系统的最新技术和应用成果,可以帮助读者尽快掌握这一最新技术。《片上可编程系统原理及应用》将片上可编程系统的基本原理和应用相结合,易于读者理解与自学。 《片上可编程系统原理及应用》可作为信息类专业大学本科高年级学生和研究生的教学参考用书,也可作为从事片上可编程系统设计的工程技术人员参考用书。
书籍目录
第1章 SOPC设计导论1 1.1 SOPC概述1 1.1.1 软核及硬核处理器1 1.1.2 SOPC技术的发展2 1.1.3 SOPC技术特点3 1.2 SOPC设计与优化技术4 1.2.1 SOPC设计技术4 1.2.2 通用SOPC优化技术6 1.2.3 专用SOPC优化技术8 1.3 Xilinx的SOPC芯片10 1.3.1 Spartan-3系列FPGA10 1.3.2 Virtex-II Pro系列FPGA12 1.3.3 Virtex-4系列FPGA12 1.3.4 Virtex-5系列FPGA13 第2章 MicroBlaze处理器原理15 2.1 MicroBlaze处理器结构15 2.1.1 MicroBlaze处理器结构概述15 2.1.2 MicroBlaze处理器的寄存器20 2.1.3 MicroBlaze处理器的虚拟存储器管理28 2.1.4 MicroBlaze处理器的事件及处理35 2.1.5 MicroBlaze处理器的指令和数据缓存39 2.1.6 MicroBlaze处理器的调试和跟踪41 2.2 MicroBlaze信号接口42 2.2.1 PLB总线接口42 2.2.2 OPB总线接口44 2.2.3 LMB总线接口45 2.2.4 FSL接口46 2.2.5 XCL接口48 2.2.6 调试接口51 2.2.7 跟踪接口51 2.3 MicroBlaze应用二进制接口53 2.3.1 堆栈规约53 2.3.2 存储器模型54 2.3.3 中断和异常句柄54 2.4 MicroBlaze指令集结构55 2.4.1 MicroBlaze指令类型55 2.4.2 MicroBlaze指令集56 第3章 PowerPC处理器原理64 3.1 PowerPC处理器结构64 3.1.1 PowerPC处理器体系结构概述64 3.1.2 PowerPC软件结构概述67 3.1.3 PowerPC 寄存器68 3.2 PowerPC处理器I/O接口69 3.2.1 时钟和电源管理接口70 3.2.2 CPU控制接口72 3.2.3 复位接口72 3.2.4 指令侧的PLB接口73 3.2.5 数据侧的PLB接口74 3.2.6 设备控制寄存器接口76 3.2.7 外部中断控制器接口78 3.2.8 PPC405 JTAG调试端口79 3.2.9 调试接口80 3.2.10 跟踪接口81 3.2.11 处理器版本寄存器接口82 3.2.12 额外的FPGA指定信号83 3.3 PowerPC处理器OCM控制器83 3.3.1 OCM控制器特点84 3.3.2 OCM控制器的操作85 3.3.3 OCM的编程模型86 3.4 PowerPC处理器APU控制器88 3.4.1 FCM指令处理89 3.4.2 APU控制器配置92 第4章 SOPC开发平台结构94 4.1 设计流程及EDK工具概述94 4.1.1 设计流程概述94 4.1.2 EDK工具概述95 4.1.3 工程建立和管理102 4.2 平台产生器103 4.2.1 Platgen工具的命令格式103 4.2.2 加载路径103 4.2.3 输出文件104 4.2.4 存储器的产生104 4.3 仿真模型产生器106 4.3.1 仿真库106 4.3.2 CompXLib/CompEDKLib工具107 4.3.3 仿真模型107 4.3.4 Simgen命令格式108 4.3.5 输出文件109 4.3.6 存储器初始化109 4.4 库产生器110 4.4.1 库产生器命令的选择项110 4.4.2 加载路径110 4.4.3 输出文件112 4.4.4 生成库和驱动113 4.4.5 中断和中断控制器115 4.4.6 XMDStub外设(MicroBlaze指定)115 4.4.7 STDIN和STDOUT外设115 4.5 虚拟平台产生器115 4.5.1 VPgen命令选项116 4.5.2 输出文件116 4.5.3 可使用的模型116 4.6 平台规范工具117 4.6.1 PsfUtility命令选项117 4.6.2 MPD的创建117 4.6.3 PsfUtility的DRC检查118 4.6.4 HDL外设定义119 4.7 版本管理工具131 4.8 比特流初始化软件131 4.9 Flash存储器编程132 4.9.1 支持的Flash硬件132 4.9.2 编程的先决条件133 4.9.3 编程对话框133 4.9.4 定制Flash编程134 4.9.5 可操作的特点和方法136 4.9.6 使用Flash存储器137 4.10 GNU编译器工具137 4.10.1 编译器框架138 4.10.2 编译器使用及选项138 4.10.3 MicroBlaze编译器145 4.10.4 PowerPC编译器151 4.11 GNU调试器154 4.11.1 GNU选项154 4.11.2 GDB调试流程154 4.11.3 MicroBlaze的GDB目标154 4.11.4 PowerPC的GDB目标155 4.11.5 控制台模式155 4.12 Xilinx微处理器调试器156 4.12.1 XMD的使用157 4.12.2 连接命令选项160 4.12.3 XMD内部TCL命令166 4.13 系统ACE文件产生器167 4.13.1 GenACE模型167 4.13.2 产生ACE文件169 第5章 SOPC描述规范173 5.1 微处理器硬件规范173 5.2 微处理器外设规范177 5.2.1 MPD语法177 5.2.2 总线接口181 5.2.3 IO接口181 5.2.4 选项181 5.2.5 参数184 5.2.6 端口185 5.2.7 保留参数186 5.2.8 保留的端口连接186 5.2.9 设计考虑189 5.3 外设分析命令191 5.4 黑盒定义192 5.5 微处理器软件规范193 5.5.1 MSS关键字194 5.5.2 全局参数195 5.5.3 实例特定参数196 5.5.4 MDD/MLD特定参数197 5.5.5 OS特定参数197 5.5.6 处理器特定参数197 5.6 微处理器库定义198 5.6.1 库定义文件198 5.6.2 MLD格式规范199 5.6.3 MLD参数描述202 5.6.4 设计规则检查204 5.6.5 库产生204 5.7 微处理器驱动定义204 5.8 Xilinx板描述格式207 5.8.1 XBD格式207 5.8.2 属性命令208 5.8.3 本地参数命令及子属性209 5.8.4 本地端口命令及子属性209 5.8.5 使用IO_INTERFACE关联IP210 5.8.6 使用IO_INTERFACE桥接IP211 第6章 操作系统及板级支持包212 6.1 Xilinx的微核212 6.1.1 标准C库213 6.1.2 板级支持包215 6.1.3 Xilkernel核221 6.1.4 LibXil库233 6.2 lwIP库237 6.2.1 建立硬件系统238 6.2.2 建立软件系统238 6.2.3 软件API242 6.3 VxWorks操作系统的板级支持包244 6.3.1 概述244 6.3.2 使用XPS产生VxWorks6.5 BSP245 6.3.3 VxWorks6.5 BSP246 6.3.4 引导VxWorks250 6.3.5 缓存、MMU和FPU256 6.4 Linux操作系统下的板级支持包257 6.4.1 概述257 6.4.2 开始Linux258 6.4.3 从XPS创建BSP259 6.4.4 Linux核配置261 6.4.5 Linux设备参考270 第7章 基于EDK的设计流程273 7.1 工程的建立273 7.1.1 使用BSP向导273 7.1.2 新建工程的结构分析277 7.1.3 工程的下载279 7.2 添加IP到硬件设计279 7.2.1 打开工程279 7.2.2 添加和配置GPIO外设280 7.2.3 产生外部GPIO连接282 7.2.4 添加软件程序并编译283 7.2.5 设计验证283 7.3 添加定制的IP到系统285 7.3.1 打开工程285 7.3.2 产生外设模板285 7.3.3 创建外设289 7.3.4 添加和连接外设291 7.3.5 设计验证293 7.4 编写应用程序294 7.4.1 添加BRAM控制器和BRAM294 7.4.2 更新软件应用程序295 7.4.3 分析目标文件296 7.4.4 设计验证298 7.5 使用SDK工具299 7.5.1 添加定时器和中断控制器299 7.5.2 创建SDK软件工程301 7.5.3 编写中断句柄303 7.5.4 添加连接脚本304 7.5.5 验证操作304 7.6 设计的软件和硬件调试307 7.6.1 打开工程308 7.6.2 例化ChipScope核308 7.6.3 启动软件调试器309 7.6.4 启动ChipScope Pro硬件调试器311 7.6.5 执行H/S验证312
章节摘录
插图:Virtex-5系列可提供FPGA市场中最新最强大的功能。Virtex-5系列采用第二代ASMBL列式架构,包含五种截然不同的平台(子系列),比此前任何FPGA系列提供的选择范围都大。每种平台都包含不同的功能配比,以满足诸多高级逻辑设计的需求。Virtex-5系列包含LX、LXT、SXT、TXT和FXT、五个平台。Virtex-5 LX主要用于高性能通用逻辑应用。Virtex-5 LXT、主要用于具有高级串行连接功能的高性能逻辑。Virtex-5 SXT主要用于具有高级串行连接功能的高性能信号处理应用。Virtex-5 TXT主要用于具有双密度高级串行连接功能的高性能系统。Virtex-5 FXT主要用于具有高级串行连接功能的高性能嵌入式系统。Virtex-5系列的FPGA芯片采用了下列技术。(1)跨平台兼容性,LXT、SXT和FXT器件使用可调稳压器,同样封装中引脚兼容。(2)最先进的最佳利用率高性能FPGA架构,其中包括真6输入查找表(LUT)技术,双5-LUT选项,改进的布线减少了中间连线,64位分布式RAM选项,SRL3z/双SRLl6选项。(3)强大的时钟管理模块(CMT)时钟控制技术,其中包括具有零延迟缓冲、频率综合和时钟相移功能的数字时钟管理器模块,具有输入抖动滤波、零延迟缓冲、频率综合和相位匹配时钟分频功能的PLL模块。
编辑推荐
《片上可编程系统原理及应用》:Xilinx大学计划指定教材《片上可编程系统原理及应用》适合作为高等院校信息类专业本科高年级学生和研究生的教材,也可供从事片上可编程系统设计及应用的工程技术人员学习参考。
图书封面
图书标签Tags
无
评论、评分、阅读与下载