基于Xilinx FPGA的多核嵌入式系统设计基础

所需积分/C币:13 2018-06-25 16:34:10 64.75MB PDF

基于Xilinx FPGA的多核嵌入式系统设计基础高清PDF文件
内容简介 本书系统地介绍了基于 Xilinx公司FPGA的多核嵌入式系统设计的方法、步骤和相关软件 的使用方法。在讲述搭建多核架构,核间通信,软、硬件协同调试的基础上,深入讨论了多核 设计中的实际工程问题和许多实用的调试技巧。 本书内容包括:Xinx软、硬核处理器介绍; XilinκFPGA产品介绍;多核嵌入式通信系统 的开发环境;软、硬件设计流程介绍;相关总线与通信机制介绍及对多核架构前景的展望 本书是在 Xilinx公司大学计划的支持下完成的。由于是针对教学和科研中的实际问题进行 讨论和阐述,因此本书中所有的工程和例程都在本书随书光盘中给出并全部经过实际测试。本 书可作为高等院校电子类和通信类等专业本科生、研究生的教材,亦可作为相关科研人员的工 具书和参考书。 图书在版编目(C|P数据 基于Ⅻ Xilinx FPGA的多核嵌入式系统设计基础/张亮等编著.一西安:西安电子科技大学出版社,2015 XLNX大学合作计划指定教材 ISBN978-7-5606-2560-7 I.①基…Ⅱ.①张…Ⅲ.①微型计算机一系统设计Ⅳ.①TP36021 中国版本图书馆C|P数据核字(201第048023号 策划戚文艳 责任编辑戚文艳 出版发行西安电子科技大学出版社(西安市太白南路2号) 电话(029)8824288588201467邮编710071 网址www.xduph.com 电子邮箱 xdupfxb00l@163c0m 经销新华书店 印刷单位陕西天意印务有限责任公司 版次2011年5月第1版2011年5月第1次印刷 开本787毫米×1092毫米1/16印张14 字数325千字 印数1~3000册 定价32.00元(含光盘) ISBN978-7-5606-25607mTP·1275 XDUP2852001-1 **如有印装问题可调换* 本社图书封面为激光防伪覆膜,谨防盗版 序 进入21世纪第二个十年以来,随着云计算,物联网,移动计算等新兴领域的兴起,对 高性能嵌入式计算,提出了越来越高的要求。在集成电路工艺受限,运行频率无法继续显 著提高,绿色高能效计算比高性能计算更重要等要求的挤压下,如何充分发挥硬件、软件、 计算机体系结构各个层次的并行性,成为业界和学界的关注重点。在各种并行层次中,底 层是电路级的并行,高层是多核( multi core)的并行。更近一步,近年来发展的众核( many core) 系统的并行,更引人关注。 系统设计师面临着各种并行层次的选择时,往往需要一种能够涵盖各种并行模式的开 发系统,进行设计空间探索 Design Space Exploration,DSE),而目前能够具有这种既能作 显微镜,又能作望远镜的探索能力的,非FPGA莫属。作为FPGA的领军企业Xinx,长期 以来,与世界上著名大学和企业合作,共同推动着这个领域的创新和发展。 作为Xinx中国区大学计划的负责人,近年来,我明显感到基于 Xilinx FPGa的多核技 术在国内越来越受到大家的关注。正是在这种情况下,我非常高兴地得到了本书即将付梓 的好消息。兴奋之余,我仔细看了本书的电子版书稿,感到作者们在仔细斟酌相关内容的 同时,着力强调了多核技术的实际工程应用,并在本书中给出了详尽的工程项目介绍。 难能可贵的是,考量到从事多核研究的人员,不少对硬件设计,尤其是 Xilinx的FPGA 的设计,仍然比较陌生,本书花了不少篇幅进行基础知识的介绍,并结合实际工程加以细 化,降低了本书的学习门槛,体现了作者深厚的教学功底 作为 Xilinx大学计划的推动者和参与者,我非常高兴地看到在Xiin大学计划的支持 下,一批既有学术意义又有工程价值的关于 Xilinx FPGa相关开发技术的书籍陆续出版。能 为学校的教学和科研工作的推进贡献自己的绵薄之力,我感到非常欣慰。能在自己感兴趣 的工作中感受到内心的欢欣与愉悦,我感到非常满足! 由于工作的性质,我经常奔波于不同的地方,我曾数次接到本书的作者给我打来的电 话,希望我能到实验室指导工作。我也常因食言而惴惴不安。但是,我亲眼看到这个团队 的和谐的工作氛围,亲身感受到他们踏实的工作作风和细致认真、顽强拼搏的科研精神。 本书的出版,证明了这是一个做实事的团队。我衷心希望他们能出更多更好的成果。 Xilinx大学计划在大家的支持下,逐渐地走向深入。我自己也希望能在更深的层次上 更广的层面上来支持大家进行与 Xilinx FPGa相关的工作。在絮絮叨叨写下以上文字的时 刻,我非常希望能回到西电- Xilinx联合实验室,看看他们。 最后,再次感谢大家对 Xilinx大学计划的支持。在大家繁忙的工作之余,也还请继续 和我联系。能做一点对大家有用的事情,我非常高兴。 仅以此,作为本书的序言。 赛灵思( Xilinx,Inc)中国区大学计划经理 谢凯年博士 2011年3月 前言 目前基于FPGA的嵌入式系统开发的教材和相关参考书已经很多,但是,针对基于 FPGA的多核嵌入式系统开发的教材和参考书尚不多见。近年来,随着多核嵌入式系统在航 空航天等特殊领域的广泛应用,面向多核的开发研究和工程应用显得尤为紧迫。我们结合 自己的科研和教学,在本书中重点讲述了基于 Xilinx FPGa的多核嵌入式系统的开发基础、 应用实例和多核环境下的软件开发流程以及相关的调试技巧。 本书作为国内首本介绍基于 Xilinx FPga平台的多核嵌入式系统设计的教材,在详细阐 述多核嵌入式系统的创建流程和步骤的同时,重点介绍了目前 Xilinx FPGa多核嵌入式系统 中丰富的通信机制以及基于不同通信方式的多核嵌入式系统的构建方法。在引导读者系统 掌握多核嵌入式系统创建流程,多核嵌入式系统的软、硬件协同调试过程和调试技巧的基 础上,给出了大量的具体实例和工程应用,使读者能够自主开发出一套完整的核间通信模 型,并构建一个完整的多核嵌入式系统。 此外,本书在嵌入式软件开发方面重点介绍了以多核处理为目标的图像处理算法、颜 色转换算法、DCT变换等内容。所有的实例和工程应用均在随书光盘中给出。本书的出版 一方面可以极大地促进相关的科研工作,解决科研工作中没有相关参考书的紧迫需求,同 时,也填补了目前在教学工作中相关教材匮乏的空白。 同时,本书重在针对目前主流的FPGA开发平台— XilinX ISE101开发套件展开介绍, 所有的设计流程和应该注意的细节都将在每章的实验中一一展开论述。 本书的另一特色是,在有关多核嵌入式系统的硬件系统设计介绍中,为读者展示了如 何搭建基于不同通信机制的各个通信系统,并且进一步引导读者自行比较各个通信系统之 间的利弊差异,启迪读者开发出自己的一套通信机制。为了增强本书的实用性,提高读者 的实际动手能力和为读者提供一套自学的软件工具和环境,我们结合 Xilinx公司捐赠的 Spatan3E和 VirtexⅡ实验板,开发了大量的实际工程和实验例程。 本书第1章由张亮、沈沛意编写,第2章由刘春红、张亮编写,第3章和第4章由张 亮、肖潇编写,第5~7章由张亮、刘春红和沈沛意编写。西安电子科技大学吴成柯教授 李云松教授在百忙中审阅了全书,提出了许多宝贵的意见。 本书在撰写的过程中,得到了 Xilinx公司大学计划负责人谢凯年博士、 Xilinx公司亚太 区总裁杨飞博士、南京远立科技有限公司邬刚先生、西安电子科技大学杨刚教授的大力支 持和帮助。 Xilinx公司向本书的作者提供了相关的硬件开发板、开发软件和现场支持。西安 电子科技大学的董洛兵、陈旭、白建华、薛安喜、华磊、周海龙、杨钊、周扬、窦航、周 灵飞等研究生对本书的内容作了大量的校对工作,同时,对光盘中和授课辅导中的所有例 程进行了验证。 在结束了长达八年的留学生活后,屈指算来,回国已经两年了。在从事科研和教学的 同时,我得到了西安电子科技大学武波教授的大力支持和帮助,得到了软件学院许多老师 的帮助和鼓励。因此,本书也是编者对他们所表达的一份真诚的感谢。 希望本书能够为读者带来切实的参考价值,欠妥之处还望读者体谅并及时指正,我们 将不甚感激。 沈沛意 2010年11月5日 目录 第1章绪论… 244修改MSS中的驱动文件 41 11FPGA的发展历程及特性介绍 24.5下载比特流,配置FPGA… 42 12 Microblaze软核的介绍 .2 25本章小结 48 121 Microblaze的流水线结构 1.22 Microblaze中断机制……-第3章总线机制与核间通信机制…49 123 Microblaze的缓存机制和MMU5 3.1总线机制 ,49 13 PowerPC405硬核介绍…… 6 3.1.1OPB总线…149 14 Xilinx FPGA产品介绍……6 312PLB总线……149 14.1 Spartan系列产品 313XCL总线…50 14.2 irtex系列产品 12 3.14FSL总线 50 15本章小结.19 315OCM总线 ,50 31.6LMB总线 50 第2章多核系统设计环境与设计流程.203.2核间通信机制介绍 51 2.1开发软件简介…20 3. 2.1 Mailbox ………51 211ISE开发软件简介… 3.2.2 Mutex ∴52 212ISE的安装… 3.2.3 Shared memory……53 22利用ISE进行硬件逻辑设计的流程…126 3.2.4 Interrupt 54 221创建新工程 26 3.2.5 PLBv46_PLBv46 Bridge 5 222新建HDL源文件. 28 3.2.6FSL互连体系… 5 223对源文件进行综合以及仿真 3.2. 7 DAM Controller 23利用XPS向导进行多核硬件系统设计的 328混合衍生体系… 流程……303.3本章小结 ∴ .59 231利用BSB新建一个工程…… 232选择必要外设,并进行参数配置……33第4章基于 PowerPC的单核 233配置启动内存,并选用内存测试文件34 系统设计 234编译源文件,生成硬件网表……3741简单硬件系统设计 23.5下载比特流,配置FPGA. .37 4.1.1用BSB创建工程 61 24利用EDK套件进行多核软件开发的 4.12分析已创建的工程. 流程…..38 4.1.3生成硬件IP网表文件 241在单核基础上添加工程应用 414下载测试程序67 242编辑.c文件并编译… .39 42添加IP核到硬件系统……… 243编写用户约束文件… 4.2.1打开工程….170 42.2扩展硬件系统…… 525下载比特流,配置FPGA….150 42.3分析MHS文件…… 76 53基于 Mutex体系的多核系统设计……151 4,24下载比特流 76 531建立单核硬件系统……52 43自定义IP核的设计与添加……7 532添加 Mutex核… 152 4.3.1新建一个自定义I核…178 533添加MB1,搭建双核系统……153 432添加自定义IP核… 534添加核间通信测试程序 …154 433在硬件系统中开发应用测试程序85 535下载比特流,配置FPGA 156 44基本的应用软件设计… .85 54基于 Interrupt体系的多核系统设计……157 44.1打开一个工程… 541打开多核工程 158 442创建一个BSP…185 542添加 nterrupt和 Timer核 158 44.3升级基本的C文件… 543添加测试核间通信的程序……160 44.4连接器脚本 544下载比特流,配置FPGA. 161 45使用SDK进行软件设计 92 55基于 Shared Memory体系的 4.5.1打开工程 多核系统设计… …162 452添加定时器和中断控制器 551打开上个实验中的双核工程.…163 4.53配置BSP.95 552添加BRAM以及 xps_bram_ctlr…163 454运行SDK ,, 553添加MB2,搭建三核工程体系…163 455创建一个C工程 554添加测试核间通信的程序 ………167 45.6管理编译配置... 95 555下载比特流,配置FPGA.168 457添加源程序 56本章小结 178 458编写中断程序并编译代码 459生成ELF文件 100第6章多核嵌入式系统软件开发……179 4.5.10硬件测试…101 61图像格式介绍.179 4.511SDK调试 611BMP图片格式.179 46本章小结. 10 612JPEG图片格式 180 62RGB与 YCrcb颜色模型……180 第5章多核嵌入式系统硬件设计实线108 621RGB颜色模型 181 51基于FSL体系的多核系统设计 622 YCrcb颜色模型… 181 5L.1建立单核硬件系统 63RGB2 YCrcb算法设计实验181 51.2EDK工程中创建自定义FIFO…12 631在双核通信系统上添加软件应用.182 51.3利用ISE设计自定义FIFO……115 632重要宏定义、数据结构设计……182 514添加多MB,搭建多核系统………15 633算法设计、编译与部署……184 515添加测试核间通信的程序18 634下载比特流,配置FPGA….187 516下载比特流,配置FPGA…..12064DCT算法设计实验…… 52基于 Mailbox体系的多核系统设计…142 641在双核通信系统上添加软件应用….189 521建立单核硬件系统……143 642重要宏定义、数据结构设计 189 522添加 Mailbox核 143 643算法设计、编译与部署 190 523添加MB1,搭建双核系统 644下载比特流,配置FPGA… 191 524添加核间通信测试程序 65单核执行图像处理算法以及时间测量.193 6.5.1解析算法执行的流程……19 713基于实验的多核体系架构的 652修改shmc文件……193 几点改进… 205 653下载比特流,配置FPGA…19672多种嵌入式处理器性能对比…206 6.6多核执行图像处理算法以及时间测量…197 721 Actel软硬核处理器…206 661解析算法执行的流程…198 722 Altera软硬核处理器.208 662修改shm.c文件 199 723 Lattice嵌入式处理器 210 663下载比特流,配置FPGA 203 724 Actel、 Altera、 Lattice和xinx嵌入式 67本章小结.20 处理器性能比较….1212 73基于 Tilera的众核体系 212 第7章多核结构的价值与发展前景…20474本章小结 213 71单核多核体系的性能指标对比……204参考文献… 214 711单核/名核体系执行时间对比…204 712单核/多核体系占用资源对比….204 第1章绪论 第1章绪论 1.1FPGA的发展历程及特性介绍 随着数字化技术的不断普及,当今社会已经步入了一个数字集成电路广泛应用的时代 数字集成电路经历了由小中规模集成电路到超大规模集成电路( VLSIC及诸多拥有特定功 能的专用集成电路的发展历程,其本身的变化就是翻天覆地的。一方面,微电子技术日新 月异的发展使得半导体厂商已经无力独立承担设计与制造集成电路的艰巨任务。另一方面, 系统设计师们更愿意自己设计专用集成电路(ASIC)芯片,并希冀设计周期尽可能短以提升 设计效率,满足实时的需求。基于诸多因素的促进,使得现场可编程逻辑器件的应用成为 大势所趋,而这其中应用最为广泛的莫过于现场可编程逻辑阵列(FPGA和复杂可编程逻辑 器件(CPLD)。 FPGA作为专用集成电路(ASIC)领域中的一种半定制电路,既解决了定制电路的不足, 又克服了原有可编程器件门电路数有限的缺点。在技术上,它采用了逻辑单元阵列(CA, Logic Cell Array)这一新理念,内部包括可配置逻辑模块(CLB, Configurable Logic Block)、 输入/输出模块(IOB, Input Output Block)和内部连线( Interconnect三部分。其主要特点如下 采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合适的芯片; FPGA可作为其他全定制或半定制ASC电路的中试样片; FPGA内部拥有丰富的触发器和LO引脚; FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一; FPGA采用高速 CHMOS工艺,功耗低,可以与CMOS、TIL电平兼容。 设计师之所以青睐FPGA,重要的是看中了其高度的灵活性。在IO功能上,FPGA支 持多种不同的IO标准;在存储器需求上,大多数FPGA提供了嵌入式 bRAM Block存储 器,使得用户有实现片上存储器的可能;而在配置上,由于FPGA在掉电后立即恢复成白 片,内部逻辑关系尽失,因而可实现反复使用,产生不同的电路功能。此外,拥有多种配 置模式也是其出色之处,例如: 并行主模式:一片FPGA加一片 EPROM的方式; 主从模式:可支持一片PROM编程多片FPGA; 串行模式:采用串行PROM编程FPGA 》外设模式:将FPGA作为微处理器的外设,由微处理器对其编程。

...展开详情

评论 下载该资源后可以进行评论 1

文质彬彬online 应该是不错的 。。
2019-12-31
回复
img
zlbboxer

关注 私信 TA的资源

上传资源赚积分,得勋章
相关内容推荐