基于Xilinx MicroBlaze多核嵌入式系统的设计
2011-05-21何宾王瑜
何宾,王瑜
(北京化工大学 信息科学与技术学院,北京 100029)
随着嵌入式处理需求的快速增长,单处理器系统复杂度太高且计算能力不足的缺点不能满足需求,嵌入式系统架构开始转向多处理器的协同工作,这样针对同一系统的多任务需求,协同工作的处理器可以充分完成各自管辖的不同功能应用。近年来,FPGA以其高逻辑集成度和内嵌的高性能硬件模块的优势,使得功能强大的芯片多处理(CMP)解决方案成为现实,如今关键问题是如何高效地将各种IP核互联在一起,构成复杂的系统,实现多核处理器的设计。
本文提出了将3个可编程的32位微处理器软核MicroBlaze内嵌到FPGA芯片上,实现了一个运行在FPGA上的基于多处理器软核的可编程片上系统,并对采用PLB总线与FSL总线连接处理器,实现核间通信进行了比较。一个FPGA芯片内部可以使用主从两个或多个MicroBlaze处理器,而FPGA最大的特点就是能够缩短产品开发的周期,它的可编程配置特性可以将系统开发的风险降到最低。而Xilinx公司的MicroBlaze软核处理器的优点在于,不像ARM是由固定的硬芯片来实现,用户可以根据实际系统的需求添加必要的外设来实现基于MicroBlaze的嵌入式可编程片上系统,从而提高了设计的灵活性。
1 系统总体结构设计
系统整体架构如图1所示。本系统是基于MicroBlaze的三核系统,采用嵌入3个32位处理器软核MicroBlaze的SOPC是由Xilinx公司提供的Spartan-3E芯片[1]。

图1 三核处理器互连架构Fig.1 Interconnect architecture of three processor
在本系统中,2个MicroBlaze软核协同处理工作,核间采用PLBv46总线互连,并利用系统自带的XPS_Mailbox核实现核间的通信,第2个核与第3个核之间采用FSL总线实现点对点的通信。……
