引 言
随着半导体制造工艺的发展,以FPGA(现场可编程门阵列)为代表的新一代可编程逻辑器件(PLD)的逻辑资源密度不断增加,使得可编程技术很自然地就与系统芯片集成技术(SoC)的结合日益紧密,并逐步成为可配置平台技术(configurable platform)的主流。
目前,各主要PLD厂商基于FPGA的可配置平台虽然大都采用“微处理器十可编程逻辑”的架构,但在开发基于FPGA的嵌入式系统时,却采用了各自不同的方式来整合处理器系统与片上的其他逻辑资源(大多数以用户IP核形式出现)。MicroBlaze软核处理器是Xilinx公司为其FPGA器件开发的,其特有的FSL(Fast Simplex Link,快速单向链路)总线,可以实现用户IP核与软核处理器的高速连接,为设计者提供了一条解决这类问题的途径。
1 MicroBlaze软核处理器
1.1 概 述
MicroBlaze是基于Xilinx公司FPGA的微处理器软IP核。它采用RISC架构和哈佛结构的32位指令和数据总线,内部有32个32位宽度的通用寄存器;在150 MHz的时钟频率下,最高可达到125 DMIPS的处理性能,其逻辑结构如图1所示(图中省略了指令侧的同类接口)。使用Xilinx公司提供的EDK(嵌入式系统开发套件),可以在参数化的图形界面下方便地完成嵌入式软处理器系统的设计。其突出的优点,一是设计灵活性;二是可以整合用户自定义IP核,使得算法可以在硬件中并行地执行而不是在软件中串行执行,从而极大地加速软件的执行速度,即所谓的硬件加速。
1.2 MicroBlaze软核总线接口
MicroBlaze软处理器核具有丰富的接口资源。目前,最新版本的MicroBlaze软核支持的接口标准有:
◆带字节允许的OPB(On-chip Peripheral Bus,片上外设总线)V2.0接口;
◆高速的LMB(Local Memory Bus,本地存储器总线)接口;
◆FSL 主从设备接口;
◆XCL(Xilinx Cache Link,Xilinx缓存链路)接口;
◆与MDM(微处理器调试模块)连接的调试接口。
OPB是对IBM Core Connect片上总线标准的部分实现,适用于将IP核作为外设连接到MicroBlaze系统中。LMB用于实现对片上的blockRAM的高速访问。 FSL是MicroBlaze软核特有的一个基于FIFO的单向链路,可以实现用户自定义IP核与MicroBlaze内部通用寄存器的直接相连;而 XCL则是MicroBlaze软核新增加的,用于实现对片外存储器的高速访问。MicroBlaze软核还有专门的调试接口,通过参数设置,开发人员可以只使用特定应用所需要的处理器特性。
1.3 MicroBIaze系统的硬件加速
将用户IP核整合到基于MicroBlaze的嵌入式软核处理器系统中,通常有两种方法:一种方法是将IP核连接到OPB总线;第二种方法就是将用户IP连接到MicroBlaze专用的FSL总线上。OPB与FSL比较如表1所列。
注:①数据分别来自opb_v20和FSL_v20数据手册; |