FPGA在嵌入式系统中的应用.doc

上传人:sccc 文档编号:4791784 上传时间:2023-05-15 格式:DOC 页数:60 大小:1.41MB
返回 下载 相关 举报
FPGA在嵌入式系统中的应用.doc_第1页
第1页 / 共60页
FPGA在嵌入式系统中的应用.doc_第2页
第2页 / 共60页
FPGA在嵌入式系统中的应用.doc_第3页
第3页 / 共60页
FPGA在嵌入式系统中的应用.doc_第4页
第4页 / 共60页
FPGA在嵌入式系统中的应用.doc_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《FPGA在嵌入式系统中的应用.doc》由会员分享,可在线阅读,更多相关《FPGA在嵌入式系统中的应用.doc(60页珍藏版)》请在三一办公上搜索。

1、 FPGA在嵌入式系统中的应用 随着计算与通信的融合以及广泛的多媒体处理需求,嵌入式系统得到了前所未有的蓬勃发展。嵌入式系统是以专用芯片为核心的专用系统,其特点是面向用户、面向应用、面向产品,软、硬件量体裁衣,满足行业应用个性化的要求,而这也是FPGA器件的特点。因此基于FPGA的可配置嵌入式系统开发技术以及相应的片上可编程系统(SOPC)解决方案,不仅可融入微处理器技术、数字信号处理技术、可编程系统级芯片设计和软硬件协同设计技术,还能提供了基于嵌入式智能平台的嵌入式系统的设计方法,还降低了设计难度、缩短了研发周期,必将成为未来的主流趋势之一。 嵌入式系统经历了从单片计算机、工业控制计算机、集

2、中分布式控制系统,进而发展到嵌入式智能平台的几个发展阶段。从独立单机使用发展到联网设备。从以模拟电路为主发展到以数字电路为主、数模混合型,进而进入全数字时代。总的来说,嵌入式系统向着更高性能、更小体积、更低功耗、更廉价、无处不在的方向发展。嵌入式系统的设计和实现朝着基于芯片,特别是片上可编程系统(SOPC)的方向发展。 从系统对上市时间的要求、可定制特性以及集成度等方面考虑,FPGA在嵌入式系统中获得广泛应用,已经从早期的军事、通信系统等应用扩展到低成本消费电子类等产品中。目前,FPGA在嵌入式系统中主要有3种使用方式: 状态机模式:无外设、无总线结构且无实时操作系统,达到最低的成本,常应用于

3、VGA和LCD控制等,满足用户的最基本需求。 单片机模式:包括一定的外设,可以利用实时操作系统和总线结构,以中等的成本,达到中等的性能,常用于控制和仪表。 定制嵌入模式:高度集成扩充的外设,实时操作系统和总线结构,可达到高性能,常应用于网络和无线通信等。 采用65nm生产工艺之后,FPGA器件处理能力更强,且成本低、功耗少,已取代了相当数量的中小规模ASIC器件和处理器,具备开发片上系统(SOC)的规模和动态可编程的能力,在嵌入式应用领域有明显的优势。 Xilinx公司的嵌入式开发资源 1解决方案 Xilinx公司的嵌入式解决方案以3类RISC结构的微处理器为核心,涵盖了系统硬件设计和软件调试

4、的各个方面。3类嵌入式内核分别为:PicoBlaze、MicroBlaze和PowerPC,其中PicoBlaze和MicroBlaze是可裁剪的软核处理器,PowerPC为硬核处理器。 PicoBlaze是由VHDL语言在早期开发的小型8位软处理器内核包,其汇编器是简单的DOS可执行文件KCPSM2.exe,用汇编语言编写的程序经过编译后放入FPGA的块RAM存储区,汇编器可在3s内编译完存储在块RAM中的程序。 MicroBlaze采用功能强大的32位流水线RISC结构,包含32个32位通用寄存器和一个可选的32位移位寄存器,时钟可达150MHz,在Virtex 4以及更高系列的平台上,运

5、行速度可达120DMIPs(DhrystoneMIPS),占用资源不到1000个Slice。 PowerPC是32位PowerPC嵌入式环境架构,确定了若干系统参数,用以保证在应用程序级实现兼容,增加了其设备扩展的灵活性。Xilinx将PowerPC 405/440处理器内核整合到Virtex 4/5系列芯片中,允许该硬IP核能够深入到FPGA架构的任何部位,提供高端嵌入式应用的FPGA解决方案。Virtex 4以及Virtex 5系列的部分芯片中集成了24个PowerPC405处理器核。 目前使用较多的嵌入式内核是MicroBlaze和PowerPC,工作频率可达到数百兆赫兹,还添加了新的浮

6、点单元选项,使嵌入式开发人员可将系统性能提升至软件仿真速度的百倍以上,非常适合针对网络、电信、数据通信、嵌入式和消费等市场的产品。 2开发工具 嵌入式开发套件(EDK)是用于设计嵌入式可编程系统的全面的解决方案,该套件包括了嵌入式软件工具(Platform Studio)以及嵌入式IBM PowerPC硬件处理器核和/或Xilinx MicroBlaze软处理器核进行Xilinx平台FPGA设计时所需的技术文档和IP。注意:这里嵌入式软件工具指用来产生、编辑、编译、链接、加载和调试高级编程语言(通常是C或C+)代码的工具,以便在处理器引擎上执行。 此外,Xilinx公司提供了大量的硬件平台(即

7、评估板),提供了大量的软、硬件设计参考,使得设计人员可以快速了解嵌入式系统的基本操作和大量IP核的使用方法,并对其完成评估,以确定最优的设计方案。一般来讲,最快捷的硬件设计方式是,在设计系统时以相应的评估板为母板,然后对其进行必要的修改。 本专题安排 本专题的遵循从设计到应用的思路进行安排,首先给出了Xilinx公司面向嵌入式应用的解决方案,同时对相关器件信息进行了列举。其次,介绍了基于Xilinx器件的嵌入式设计的关键技术,包括开发工具EDK、MicroBlaze和PowerPC处理器、常用的嵌入式设计方法和基础知识、EDK提供的IP说明、常用外设的开发以及操作系统的移植。最后讨论了嵌入式的

8、各类应用,涵盖了网络连接平台类应用、多媒体应用以及其它工业应用等。期望读者通过本专题的阅读,能够对Xilinx的嵌入式解决方案有一定的了解。 第1章 嵌入式设计的关键技术目前使用较多的嵌入式内核是MicroBlaze和PowerPC,工作频率可达到数百兆赫兹,还添加了新的浮点单元选项,使嵌入式开发人员可将系统性能提升至软件仿真速度的百倍以上,非常适合针对网络、电信、数据通信、嵌入式和消费等市场的产品。Xilinx推出新版嵌入式开发环境与.Xilinx发布新一代完整的嵌入式处.MicroBlaze处理器MicroBlaze的总线接口XILINX新MICROBLAZE 软处理器提高.Xilinx

9、MicroBlaze的调试工具- C.嵌入式系统技术:XILINX推出新版.Xilinx推出新型MICROBLAZE嵌入式.MicroBlaze的结构、机制和特性Xilinx MicroBlaze的使用方法Xilinx推出MicroBlaze软处理器新.基于MicroBlaze的嵌入式系统设计.Xilinx推出新版嵌入式开发环境与生态系统支持Virtex-5 FXT FPGA 2008年4月29日,北京全球可编程逻辑解决方案领导厂商赛灵思公司(Xilinx, Inc. (NASDAQ: XLNX))今天宣布推出新版嵌入式开发环境工具和生态系统合作伙伴技术,支持面向赛灵思最新65nm Virte

10、x-5 FXT FPGA器件的创新片上系统(SoC)设计。嵌入式开发套件(EDK)10.1提供了屡获殊荣的Xilinx Platform Studio嵌入式工具套件(XPS),包括最新的高性能处理设计功能,同时其生态系统合作伙伴安富利电子元件部(Avnet Electronics Marketing)、Green Hills软件公司、LynuxWorks、Lauterbach、MontaVista以及风河系统公司(Wind River Systems)等全球领先嵌入式解决方案供应商将提供强大支持。 赛灵思公司与业界领先的第三方嵌入式开发供应商密切合作,在硬件平台和实时操作系统(RTOS)以及开

11、发、调试和跟踪软件工具方面为流行的嵌入式系统解决方案提供支持。下列嵌入式解决方案供应商将为内建双PowerPC440处理器的赛灵思Virtex-5 FXT提供支持: 安富利Virtex-5 FXT FPGA评估套件,包括PowerPC440处理器参考设计 Green Hills软件Integrity 5.0.10 RTOS和Multi IDE支持 LynuxWorks Bluecat Linux Lauterbach Trace32软件调试和跟踪分析支持 MontaVista MontaVista Linux Pro 4.0.1 RTOS支持 风河系统Linux GPP 1.3和VxWorks

12、 6.3/6.5 RTOS支持 “内建双PowerPC 440模块的Virtex-5 FXT FPGA器件的推出为实时和通用操作系统应用开发人员提供了巨大的机会。”LynuxWorks公司营销副总裁Robert Day说,“赛灵思EDK 10.1工具套件为设计人员提供了在我们的BlueCat Linux和/或即将推出的LynxOS 5.0实时OS上进行系统开发和编程所需要的一切,可以满足这些应用的独特要求。” 采用嵌入式开发套件(EDK) 10.1马上开始设计 有了EDK 10.1工具套件,利用Virtex-5 FXT平台进行嵌入式处理系统架构开发和编程就变得更为简单。自动化的设计向导为设计人

13、员实施高性能128位处理器局域总线(PLB)提供了一步一步的指导。128位处理器局域总线(PLB)是IBM CoreConnect总线标准的一部分,可以配置支持共享式和点到点系统连接。该工具套件还提供新的辅助处理器单元控制器(APU)工具,对PowerPC 440处理器模块提供协处理支持。APU还可以用来建立与高速PFGA硬件的直接接口,完成PowerPC 440处理器代码映射并提供支持软件和硬件优化的分析。 新推出的EDK 10.1版还包括了最新的IP内核以优化系统设计。同时还包括了SPI、DDR2、DMA、PS2和支持SGMII的三模式以太网MAC等外设,Flexray外设选项,以及用于D

14、MA的PCI Express驱动支持。改进后的多端口存储器控制器以及存储器接口生成器(MIG)工具为存储密集应用提供了更为强大和丰富的接口选择。此外,屡获殊荣的MicroBlaze 32位处理器也进行了更新,从而可以提供更大的缓存接口灵活性。 “Xilinx Platform Studio和EDK 10.1技术为安富利公司提供了易用的接口,使我们能够快速将新的Virtex-5 FXT FPGA评估套件集成到赛灵思开发环境中。”安富利电子元件部技术营销总监Jim Beneke说,“我们为所有新开发的板子提供了简单的描述文件,赛灵思设计向导可自动为我们的开发平台提供映射即时(on-the-fly)

15、工具支持。” 价格和供货情况 所有第三方产品和技术由相应的供应商销售并提供支持。EDK 10.1版可立即供货,价格为495美元。XPS 10.1工具套件可以非常方便地与处理IP库、软件驱动、文档、参考设计实例和MicroBlaze 32位软处理器捆绑。EDK同时还可配合其它赛灵思产品作为统一的ISE设计套件的一部分提供,如ISE Foundation设计工具、ChipScope Pro分析仪、System Generator for DSP工具、AccelDSP综合工具和PlanAhead设计软件。ISE设计套件通过单个下载站点或一张DVD光盘提供,为用户订购、注册、安装和/或评估所有赛灵思开

16、发和调试工具提供了方便。EDK 10.1支持多种计算平台,包括Windows XP Professional (32位)、Windows Vista Business (32位)、Red Hat Enterprise Linux WS 4 (32和64位)、Red Hat Enterprise Linux Desktop 5 (32和64位)和SUSE Linux Enterprise 10 (32和64位)等。 嵌入式系统技术:XILINX推出新版Platform Studio简化嵌入式处理设计赛灵思公司宣布推出针对嵌入式处理设计的Platform Studio工具套件8.2i版本。该工具套

17、件是赛灵思嵌入式开发套件(EDK)的一部分,其中提前提供了对赛灵思公司面向领域优化的新款65nm VirtexTM-5 LX FPGA器件的支持。最新发布的Platform Studio 8.2i版还针对嵌入式处理开发和设计调试功能进行了增强。 “为应对不断演化的设计挑战,嵌入式应用设计人员也在不断寻找灵活的解决方案。”赛灵思公司嵌入式处理部营销总监Lawrence Getman说,“这些Platform Studio 8.2i 独特的功能和性能增强可进一步提高嵌入式系统设计的效率,从而可以更充分地利用赛灵思公司嵌入式处理器内核所提供的灵活性。通过这一新版本,客户可以提前获得针对目前业界最快的

18、FPGA产品-Virtex-5 LX器件的嵌入式处理支持。” 增强的嵌入式设计和调试能力 Platform Studio 8.2i 在易用性方面进行了很多改进,同时还大大增强了设计调试能力。Platform Studio环境中不同工具间更紧密的集成以及链接器脚本和数据手册生成功能可大大提高生产力。新的配置向导可帮助设置调试会话,同时Platform Studio 8.2i 还包括由嵌入式合作伙伴安捷伦公司提供的一款专用MicroBlazeTM Trace Core(MTC)跟踪内核。在使用基于Agilent Windows?的逻辑分析器时,这款跟踪内核支持实时代码流捕捉,并提供强大的触发功能和

19、深度存储器跟踪能力。此外,8.2i版还改进了IP内核的状态可视性以及调用内部工具和加载大型设计时的性能。 价格和供货情况 Platform Studio 8.2i支持基于Xilinx Virtex-5、Virtex-4、Virtex-II Pro、SpartanTM-3E 和 Spartan-3 Platform FPGA器件的PowerPCTM 和 MicroBlaze处理器设计。同时支持下列操作系统平台:Windows? 2000 SP2, SP3, SP4, 和 XP SP1, SP2,Solaris? 2.8/5.8 和 2.9/5.9,以及Linux? Red Hat? Enterp

20、rise 3.0。 Platform Studio嵌入工具套件与相关工具方便地集成在一起。在Xilinx 嵌入式开发套件 (EDK) 嵌入式工具套件8.2i 版中还捆绑了一个处理器IP库、软件驱动、文档、参考设计和MicroBlaze软处理器IP内核。8.2i 版嵌入式工具套件零售价仅495美元。其中还包括了Xilinx集成软件环境(ISETM)8.2i版逻辑设计工具和ChipScopeTM Pro硬件调试器的评估版本。开启可配置处理新时代 Xilinx发布新一代完整的嵌入式处理平台 赛灵思公司(Xilinx, Inc. (NASDAQ: XLNX))今天宣布推出新一代嵌入式处理解决方案,致力

21、于在范围广泛的多种应用领域,为设计人员提供增强的系统级性能、更大的灵活性和更高的设计环境生产力。新平台基于增强的32至128位处理器局部总线(PLB)(IBM CoreConnect总线标准组件),为满足将来的性能和特性需求提供了更高的性能和可扩展能力。屡获殊荣的MicroBlaze 32位处理器还率先提供了业界独家的可编程存储器管理单元(MMU),支持商业级操作系统,同时嵌入式开发套件(EDK)9.2版为新平台提供了丰富的升级IP和设计工具支持。 为支持全面的存储器管理,全球嵌入式软件市场的领导厂商LynuxWorks 公司还同时宣布其BlueCat Linux 2.6版本将支持Virtex

22、-4 FX 器件中嵌入的MicroBlaze 处理器和PowerPC 405处理器。 “今天宣布的新一代处理解决方案重申了赛灵思公司对嵌入式市场的承诺,赛灵思一直致力于为设计创新的产品提供最佳的平台。”LynuxWorks公司营销副总裁Robert Day说:“通过结合硬处理器、软处理器和IP内核,赛灵思公司为包括军事、航空航天、工业和消费等领域在内的范围广泛的市场提供了无需在灵活性和性能之间进行折衷的解决方案。” MicroBlaze 7版本处理器 屡获殊荣的MicroBlaze 7 版本处理器建立在此前版本的成功基础之上,并且保持了指令集的后向兼容性。有了新的MMU,无论是采用面向大批量应

23、用的低成本Spartan FPGA还是采用高性能Virtex系列进行设计,设计人员都可以利用商业级嵌入式操作系统。为了提高针对Virtex器件而优化的嵌入式应用设计的系统性能,赛灵思还提供了一个与增强PLB总线的直接接口来扩展片上PowerPC处理器的外设重用。 另外,赛灵思还提供了新的指令来提升可配置MicroBlaze处理器紧耦合浮点单元的性能。所有这些新特性都是预构造的、经过验证并且立即可用,与此同时,所提供的配置选项可使开发人员根据需要对处理器特性进行定制。 互连性增强 PLB架构的增强支持32、64和128多种接口,为设计人员在当前系统设计中提供了更大的灵活性和更高的性能,并且为未来

24、的设计留下了足够的空间。PLB与存储控制器的连接还可配置为共享和点到点(point-to-point)连接,因此客户可根据面积、性能或未来要求进行正确的设计折衷。性能更高、灵活性更大的互连还支持全双工DMA引擎以及较简单的总线体系,从而使IP内核设计更容易。 全面的开发环境 赛灵思公司屡获殊荣的Platform Studio(XPS)提供了一个通用的并且完全集成的硬件/软件开发环境,支持赛灵思所有的处理解决方案。可升级的XPS包括在嵌入式开发套件(EDK)内,使设计人员可方便快捷地开发、集成和调试他们设计的整个嵌入式系统。 赛灵思EDK是一个完整的嵌入式开发解决方案,包括适用于多种应用的XPS

25、工具套件、MicroBlaze处理器、外设IP内核库、基于Eclipse框架的集成软件开发环境、GNU编译器、调试器和其它工具。 例如,利用CAN、MOST 和 Flexray通信标准的IP内核以及通过Linux操作系统的有力支持,赛灵思提供的开发套件、参考设计和其它开发资源可满足汽车电子系统开发人员的特殊需要。赛灵思嵌入式处理解决方案所应用的其它市场领域还包括:有线和无线通信、工业界以及军事领域 Linux在所有这些领域已获得广泛的应用。 此外,赛灵思公司及其合作伙伴还提供丰富的参考设计、开发板、工具以及最广泛使用的操作系统供用户选择。赛灵思还提供了各种嵌入式设计服务、培训和支持,保证无论客

26、户面对什么样的嵌入式处理挑战都能在设计中获得一次性的成功。嵌入式工具提供商LauterBach 和 Impulse Accelerated Technologies也同时宣布支持MicroBlaze 7版本。 “9.2版嵌入式开发套件在嵌入式系统开发方面提供了无与伦比的灵活性。”赛灵思公司计算处理解决方案部副总裁和总经理Vincent Ratford说,“基于增强的IP和开发工具以及成熟的生态系统支持,赛灵思嵌入式解决方案为客户提供了丰富的系统性能选择,从而使我们的客户能够更快速地为他们的客户提供增值和差异化的特色产品。” 立即可用 升级版MicroBlaze开发套件、Spartan-3E 1

27、600E FPGA版是一个全面的套件,包括一个嵌入式Spartan-3E 1600 FPGA电路板(带MicroBlaze软处理器)和一个完整的嵌入式开发套件,客户可以快速上手使用。 价格和供货情况 EDK 9.2版目前已开始供货,价格为495美元,包括MicroBlaze 7处理器内核、XPS 9.2工具套件(带嵌入式处理IP库)、软件驱动、文档和参考设计实例。XPS 9.2支持针对Virtex-5, Virtex-4, Virtex-II Pro和Spartan-3 FGPA的MicroBlaze和PowerPC嵌入式处理设计。XPS 9.2 支持多种计算平台,包括Windows XP (

28、32-bit) SP1、SP2、Linux Red Hat Enterprise (32-bit 5.0 & 4.0和64-bit 5.0) 以及Solaris 9 (2.9/5.9)。MicroBlaze开发套件Spartan-3E 1600E FPGA版现在也开始供货,价格为595美元。欲了解更多信息,请访问 对于嵌入式Linux开发,BlueCat Linux MicroBlaze 版由LynuxWorks公司提供。欲了解更多信息,请访问 关于赛灵思(Xilinx)公司 赛灵思公司(Xilinx)是可编程逻辑解决方案的全球领导厂商。有关赛灵思公司的更多信息,请访问 相关资源: Xilin

29、x嵌入式处理器解决方案介绍-嵌入式开发套件(EDK)9.2版本 LYNUXWORKS开放源实时操作系统支持Xilinx新型 MICROBLAZE嵌入式处理系统 Xilinx MicroBlaze 处理系统支持全Linux 与 Impulse的 C-to-FPGA Acceleration Lauterbach为Xilinx MicroBlaze 7版处理系统推出实时追踪解决方案Xilinx推出新型MICROBLAZE嵌入式套件文章出处:与非网 更新于2009-05-13 07:28:56 MicroBlaze Spartan-3E Platform DSP Xilinx推出MicroBlaze

30、? 开发套件 Spartan?-3E 1600E版本,它为嵌入式开发商提供了一整套在开发处理器系统时需要的完整设计环境。Spartan-3E 1600E版本提供有包括硬件、设计工具、知识产权 (IP)及参考设计的集成平台,可以马上开始开发工作。完整的集成套件容许开发商能够快速定制他们的处理器和IP,从而最佳地适应他们的特定应用,并迅速配置整个系统。 完整的开发套件 MicroBlaze 开发套件: Spartan-3E 1600E版本为赛灵思Spartan-3E系列的FPGA平台提供灵活的32位MicroBlaze软处理设计支持。MicroBlaze软处理核已固化在FPGA硬件中,并与IP外围

31、设备、FPU及其它协处理引擎相结合,可以为开发商完全定制出一个平台,以满足他们迫切的需要和持续变化的嵌入式设计要求。 SP3E1600E开发板功能的核心是具有平台逻辑、DSP协处理器和嵌入式系统集成能力的 Spartan-3E XC3S1600E-4FG320C器件。1600E评估板提供一组丰富的功能并包括若干用于 外围设备、存储器、显示器、连接器和接口的选项,使设计工程师易于且有成本效益地设计原型并评估他们的嵌入式系统设计。 套件加速开发 赛灵思公司的Platform Studio智能设计工具在MicroBlaze开发套件中结合了一种可编程FPGA平台,使开发商能够利用最佳的功能、性能、面积

32、和成本组合来创新嵌入式系统。 他们可以为目标应用选定最有效的处理系统、选择IP、最优化性能并在获得他们自己的定制硬件之前在开发板上验证软件。 此外,跟开发套件一起交货的经过预验证的参考设计为快速配置完整的系统提供了广泛的选项集,让开发商能够把基本设计运行起来,以便他们能把更多宝贵的时间集中在最优化应用上。这些应用包括硬件和软件实现两个方面,目的是运用SP3E1600E 平台的许多功能,如以太网、DDR存储器和各种各样的FLASH功能,此外,还包括支持MentorNucleus、PetalogixClinux和Micrium C/OS-II的嵌入式操作系统(eOS)。 价格和供货 MicroBl

33、aze 开发套件: Spartan-3E 1600E版本(型号: DO-S3E1600E-DK-UNI-G,符合RoHS要求),用户购买价格为595美元。与1600E版本套件一起交付使用的ISE FPGA和 Platform Studio嵌入式工具支持下列计算平台: Windows? 2000 SP2, SP3, SP4和XP SP1, SP2;Solaris? 2.8/5.8和2.9/5.9;以及Linux? Red Hat? Enterprise 3和4。 第1节 MicroBlaze处理器文章出处:与非网 更新于2008-05-22 09:31:28 MicroBlaze 性能 2.1.

34、1MicroBlaze性能介绍 MicroBlaze是一个高度灵活可以配置的软核。你可以根据你设计的需要,对MicroBlaze进行裁减,用最少的资源完成设计的需要。 MicroBlaze的基本特性: 32个32位的通用寄存器 32位指令,3个操作数和两种地址模式 32位地址 单流水线 除了这些固定的特性以外,MicroBlaze还提供一系列的可选的特性以适应客户不同的设计需要。这些特性在不同版本的MicroBlaze中是不同的。 目前最新版本的MicroBlaze (v7.00) 可以支持所有这些可选的特性。下表就列出了MicroBlaze各版本的特性。 表 2.1.1 不同版本MicroB

35、laze的性能第2节 MicroBlaze的结构、机制和特性文章出处:与非网 更新于2008-05-22 09:31:23 MicroBlaze MMU FPU 2.2.1MicroBlaze系统及内部结构 MicroBlaze采用 32 位哈佛RISC 架构,32位独立的地址总线和数据总线。在采用缓存模式下,独立的指令和数据可以缓存并通过XCL(Xilinx CacheLink)接口连接到内存。在不采用缓存的机制下,地址和数据总线直接通过PLB46访问内存。MicroBlaze没有区分数据接口为I/O和存储,所以处理器存储的接口是PLB和LMB,且LMB存储地址空间不和PLB重合。Micro

36、Blaze还提供最大256K的片上本地内存接口和片上BRAM连接,对于简单的设计,可以将代码直接放入片上BRAM;也可以将复杂设计的BOOTLOADER放在片上的BRAM中。用户IP可以通过PLB46总线或快速点对点连接(FSL)接入系统。一般而言:PLB64比较适合基于总线形式的用户IP 开发;FSL比较适合基于简单点对点输入输出或协处理器的用户IP开发。图 2.2.1是一个MicroBlaze片上系统的结构图。 图 2.2.1 MicroBlaze系统架构图图 2.2.2 MicroBlaze的内部结构图2.2.2MicroBlaze的数据储存结构和指令 MicroBlaze支持8位(字节

37、)、16位(半字)和32位(字)的数据形式 并采用大字序方式. 其具体的形式如下表所示: 字节的储存类型半字的储存类型字的储存类型MicroBlaze的所有指令都是32位的,且有两种定义模式。A型指令有至多2个寄存器源操作数和1个寄存器目的操作数;而B型指令有1个寄存器源操作数,1个16位立即数以及1个寄存器目的操作数。该立即数可以通过使用IMM指令将之扩展为32位。所有指令被分成下列5种指令类型:算术指令,逻辑指令,程序流控制指令,读取/存储指令和特殊指令类型。表2.1和表2.2各自列出了MicroBlaze指令集的语法定义和参考实例。表 2.2.1 MicroBlaze指令集的语法定义表

38、2.2.2 MicroBlaze指令集的参考实例2.2.3 MicroBlaze的流水线结构MicroBlaze 的指令采用流水线的结构执行。在大多数的情况下,一条指令在一个时钟周期内完成。 一些指令需要不止一个时钟周期才能完成(比如除法指令),那么流水线就会停住并等待这个指令的完成。 当指令储存在片外的慢速度的内存时, 取指令的操作可能要占用很多个时钟周期。 为了提高性能, MicroBlaze内含一个取指令的缓存来减小指令存储器读取速度对处理器的影响。 当MicroBlaze在执行一个多周期的指令时, 预取指的缓存区就会持续地按顺序取指令。 当流水线继续执行的时候,MicroBlaze 就

39、从内部的指令缓存直接得到指令而不是从片外的存储器得到指令。 注意这个指令缓存处于MicroBlaze内部并一直有效。其不等同于可以MicroBlaze可以配置的指令和数据Cache。 MicroBlaze可以配置成2种流水线深度,3级流水线和5级流水线。 三级流水线: 当面积优化使能后,MicroBlaze配置成3级流水线,三级分别是取指、译码和执行: 图 2.2.3 三级流水线五级流水线: 当不使用面积优化使能,MicroBlaze配置成5级流水线以取得最大的性能,五级分别是取指、译码、执行、读取和写回。图 2.2.4 五级流水线 跳转: 通常当跳转发生的时候,流水线的取指令和译码都在是流水

40、运行的。跳转指令使得流水线必须重新启动并在新的地址取指令。MicroBlaze需要3个时钟周期去完成跳转。其中2个周期是用于重新使流水正常工作。 MicroBlaze的中断机制 MicroBlaze支持重置、硬件异常、中断、用户异常、暂停等机制。它们的优先级排序如下(标号越小,优先级越高): 重置 硬件异常 不可掩饰暂停 暂停 中断 用户异常 表 2.2.3 MicroBlaze中断机制的返回地址寄存器和实例 MicroBlaze支持一个外接中断源(与中断入口相连)。处理器只有在状态寄存器中的中断允许(IE)被置1时才能对中断反应。在中断时,在执行阶段的指令完成而在编译阶段的指令被指向中断向量

41、的地址(地址0x10)的分支代替。中断返回地址(在中断的时候与在编译阶段的指令联合的PCProgram Counter)自动载入到通用寄存器R14。而且,处理器也通过清理MSR中的IE位禁止其它中断。当执行RTID指令时,IE位又自动置1。 如果在MSR中的进程中断(BIP)位或进程例外(EIP)位任一被置1,中断将被处理器忽略掉。 从一个中断产生到进入中断服务程序(ISR)的MicroBlaze所花费的时间取决于处理器的配置和存储中断向量的内存控制器的反应时间。如果MicroBlaze配置有一个硬件除法器,当在执行除法指令时产生中断,反应时间就会很大。 用户例外向量在地址0x8上。用户例外是

42、通过在软件数据流插入“BRALID Rx,0x8”指令产生的。虽然Rx可以是任意通用寄存器,Xilinx推荐使用R15来存储用户例外返回地址,并且使用RTSD指令从用户例外处理器返回。 2.2.5MicroBlaze的缓存机制和MMU (Memory Management Unit) MicroBlaze使用了可配置的数据和指令Cache,用来执行LMB地址空间外的代码和数据。图 2.2.5和图 2.2.6显示了数据Cache和指令Cache的结构图。 Cache具有如下特征: 直接映射(1路联合) 使用可选择的Cache存储地址空间 可配置Cache和Tag的大小 通过XCL接口Cache

43、可选择4或者8字Cache-line MSR中的一位控制Cache的使用和关闭 可选择用WIC/WDC指令使Cache-line中的指令无效 直接写入(只是数据Cache的特点) 图 2.2.5 数据Cache结构图图 2.2.6 指令Cache结构图 在MicroBlaze中,当C_USE_MMU被置3时,内存管理单元(MMU)将可以执行虚拟模式。MMU控制有效地址转化为物理地址布局,同时也支持内存保护。因此,系统软件可以执行所需要页面尺寸的虚拟内存和其它内存管理配置。 MMU的特征总结如下: 将有效地址译成物理地址 在地址编译时控制页面等级的存取 在区域使用中提供附加的虚拟模式保护控制 为

44、指令地址和数据地址编译和保护提供独立的控制 支持8种页面尺寸:1 kB, 4 kB, 16 kB, 64 kB, 256 kB, 1 MB, 4 MB,和16 MB 。所有页面尺寸之和都能被系统软件使用。软件控制页面替换策略。 2.2.6 MicroBlaze的高级特性介绍 桶形移位寄存器: 只需一条指令就能够对操作数进行任意位的逻辑左移或逻辑右移。 硬件乘法器: 利用片内的乘法器,可以单周期的完成乘法指令。(面积优化为3个周期) 硬件除法器: 可以在32个周期内完成除法指令。(面积优化为34个周期) FPU: MicroBlaze 可选的浮点单元是支持IEEE 754 standard中单精

45、度的部分,提供:浮点加法,浮点减法,浮点乘法,浮点除法,浮点比较,浮点转换和浮点平方根指令。对溢出和非法操作有专门的标志,采用了硬件异常机制。对于溢出,除数为0,非正常操作数和非法操作进行异常处理。第3节 MicroBlaze的总线接口文章出处:与非网 更新于2008-05-22 09:30:53 PLB64 LMB XCL FSL MicroBlaze可以采用以下的接口和外设或内存进行数据交互 PLB64: PLB是IBM CoreConnect架构的一部分,是处理器连接到高性能外围设备的高性能同步总线。 Xilinx的PLB设备遵循下列PLB使用原则: o PLB数据总线是64位宽,地址总线是32位宽。注意有些外设可以用参数表示宽度,但是现在只支持64位数据总线。比64位小的外设能以在在寻址方面相对应的减少连在PLB。例如,基础地址为A的32位外设能被连在字节巷的0-4位,但是字宽的访问只能在A,A+8,A+16等地址。 o PLB主线无需支持动态总线尺寸。PLB主线无需复制数据到不常用的字节。PLB主线需要正确地驱动Mast

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号