文章目录
特此说明:本文章转载于正点原子的microblaze教程
一、概述
MicroBlaze是Xilinx公司提供的一款32/64位软核嵌入式处理器,是一款高度灵活可配置的易用型处理器,它能够利用FPGA内部通用资源和相关IP核,实现可编程片上系统(SOPC)的设计。该处理器采用32位RISC(Reduced Insrtction System Computer)优化结构和Harvard总线结构,广泛适用于Spartan、Virtex和Artix等系列的FPGA。
MicroBlaze软核嵌入式处理器是高度可定制的IP核,支持70多个配置选项,有32个32位通用寄存器以及2个32位特殊寄存器—PC指针寄存器和MSR状态标志寄存器。另外MicroBlaze软核处理器还配有指令和数据缓存、浮点单元、内存管理单元和许多其他选项,从而大大提高其运算性能。MicroBlaze软核嵌入式处理器的所有指令字长都是32位,具有3个操作数和两种寻址模式,指令按功能可划分为:逻辑运算、算术运算、分支、存储器读/写和特殊指令等等。指令以并行流水线的方式执行,其流水线可分为取指、译码和执行。
MicroBlaze的框图如下所示,展示了固定的硬件特性模块和可配置选项,如指令和数据缓存。
图中MicroBlaze处理器的外部接口定义如下:
DPLB(Data Processor Local Bus): 数据接口,处理器本地总线。
DOPB(Data On-chip Peripheral Bus): 数据接口,片上外设总线,该接口实现CPU与片内外设的数据交换。
DLMB(Data Local Memory Bus): 数据接口,本地存储器总线,该总线为CPU与本地块存储器间的数据交换通道。
IPLB(Instruction Processor Local Bus):</