1、8位软核(真的很难用,没有C编译器,编程用汇编,资料超少,具体见之前我blog文章)MicroBlaze32位软核(下面文章的主角)PowerPC32位硬核,只存在于Xilinx高端系列芯片上(Virtex-4和Virtex-5)。当你见到人家叫PPC时候,千万不要以为是智能手机,其实PowerPC也简称PPC。MicroBlaze的体系结构MicroBlaze V7.0核心框图要注意MicroBlaze核心框图,MicroBlaze V7.0已经有MMU了,意味着MicroBlaze可以运行依赖MMU的操作系统,像Linux、WindowCE等。EDK6.2的MicroBlaze核心框图Mi
2、croBlaze的版本号是同EDK的版本号相联系的,我用的EDK 9.2i MicroBlaze版本是v7.0。而从上面框图可以看到EDK6.2的MicroBlaze是没有MMU的,因此也不能运行Linux,只能运行ucLinux。目前最新版本是MicroBlaze v7.20。要使用相关应用,先更新一下EDK的版本(软件安装文件越来越大L)。不同版本MicroBlaze的性能还要注意MicroBlaze支持的器件系列,当然首先是Xilinx的FPGA器件(这不废话!其实我也不知道NIOS II能不能移植到Xilinx FPGA上来)Spartan-3E / Spartan-II/Sparta
3、n-3Spartan-IIEVirtex-4 FX/Virtex-4 LXVirtex-4 SXVirtex-5 FXVirtex-5 LXVirtex-5 SXVirtex-EVirtex-IIVirtex-II Pro如果你手上只是CoolRunner-II的CPLD,我建议你尝试一下用Picobalze作控制。可以参考我下面文章:PicoBlaze学习笔记1:PicoBlaze介绍学习笔记2:PicoBlaze结构学习笔记3:PicoBlaze8位处理器指令集学习笔记4:PicoBlaze设计方法学习笔记5:PicoBlaze设计例子(LED闪烁)学习笔记6:利用pBlazIDE对Pic
4、oBlaze汇编(psm)进行仿真学习笔记7:PicoBlaze学习资料汇总还有一个简便的方法就是用51单片机控制FPGA/CPLD(汗!这是最蠢得办法,毕竟浪费了FPGA/CPLD的资源)。当然这样的蠢事我也干过:51单片机与FPGA接口逻辑设计(原创)还有一个最最绝的方法,就是加一片ARM7,甚至ARM9,来代替MicroBlaze,当然我都不知道说什么了。MicroBlaze的总线接口MicroBlaze支持的外设接口示意图CoreConnect是由IBM开发的片上总线通信链,它使多个源的芯片核相互连接成为一个完整的新芯片成为可能。CoreConnect技术使整合变得更为容易,而且在标准
5、产品平台设计中处理器、系统以及外围的核可以重复使用,以达到更高的整体系统性能。MicroBlaze v7.0软核支持的借口标准?A 32-bit version of the PLB V4.6 interface (see IBMs128-Bit Processor Local Bus Architectural Specifications, Version 4.6).A 32-bit version of the OPB V2.0 bus interface (see IBMs64-Bit On-Chip Peripheral Bus, Architectural Specificatio
6、ns, Version 2.0)LMB provides simple synchronous protocol for efficient block RAM transfersFSL provides a fast non-arbitrated streaming communication mechanismXCL provides a fast slave-side arbitrated streaming interface between caches and external memory controllersDebug interface for use with the M
7、icroprocessor Debug Module (MDM) coreTrace interface for performance analysisMicroBlaze内部总线结构DPLB:Data interface, Processor LocalBusDOPB:Data interface, On-chip Peripheral BusDLMB:Data interface, Local Memory Bus (BRAM only)IPLB:Instruction interface, Processor Local BusIOPB:Instruction interface, O
8、n-chip Peripheral BusILMB:Instruction interface, Local Memory Bus (BRAM only)MFSL 0.15:FSL master interfacesSFSL 0.15:FSL slave interfacesIXCL:Instruction side Xilinx CacheLink interface (FSL master/slave pair)DXCL:Data side Xilinx CacheLink interface (FSL master/slave pair)Core:Miscellaneous signals for: clock, reset, debug, and trace上面关于总线的相关知识只是复制于MicroBlaze Processor Reference GuideEmbedded Development Kit EDK 9.2i,我对这方面也不太了解,看来要慢慢学习了JMicroBlaze的那些事儿系列未完待续.尽请留意我blog
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1