基于MicroBlaze的嵌入式专业系统设计.doc
文本预览下载声明
基于MicroBlaze 嵌入式系统设计
由? \o 浏览用户信息 技术编辑?于 星期二, 03/26/ - 23:06 发表
摘 要:当今时代,嵌入式系统已经无所不在,和大家日常生活息息相关。嵌入式系统以微处理器为关键,以计算机技术为基础,其关键特征是实时性强。据统计,现在世界上微处理器每十二个月生产总量95 %以上全部是面向嵌入式系统应用,围绕Xilinx 企业MicroBlaze 微处理器,对其体系结构、设计步骤和相关开发工具一一做出介绍,而且经过一个简单实例来说明以MicroBlaze 处理器为内核嵌入式系统开发过程。
1 MicroBlaze 处理器结构MicroBlaze 处理器是Xilinx 企业针对嵌入式处理器开发应用推出一个32 位嵌入式处理器内核,她是一个软核结构,简单但灵活性强,在目标器件中能够进行任意配置。她采取RISC 指令集、Harvard 体系结构,该处理器有以下部分特征:(1) 32 个32 位通用寄存器和2 个专用寄存器。(2) 32 位指令系统, 支持3 个操作数和2 种寻址方法。(3) 分离32 位指令和数据总线,符合IBM OPB总线规范。(4) 经过当地存放器总线(LMB) 直接访问片内块存放器(BRAM) 。(5) 含有高速指令和数据缓存(cache) ,三级流水线结构。(6) 含有硬件调试模块(MDM) 。(7) 带8 个输入/ 输出快速链路接口( FSL) 。
说明:DOPB 器件内部外围设备数据接口总线,用于处理器和片内设备进行数据交换。DLMB 实现数据交换当地块存放器总线,该总线为处理器内核和块存放器(BRAM) 之间提供专用高速数据交换通道。
IOPB 用于实现外部程序存放器总线接口。当程序较大时,需要外接大容量存放器,该总线提供读取指令通道。
ILMB 用于取指令当地存放器总线,该总线和器件内部块存放器(BRAM) 相连,实现高速指令读取。
MFSL0. . 7 主设备数据接口, 提供点对点通信通道。
SFSL0. . 7 从设备数据接口, 提供点对点通信通道。
2 EDK开发步骤EDK( Embedded Development Kit) 是Xilinx 企业针对FPGA 内部32 位嵌入式处理器开发而推出开发套件。EDK工具包中集成了硬件平台产生器、软件平台产生器、仿真模型生成器、软件编译器和软件调试等工具,利用其集成开发环境XPS( Xilinx Platform Studio) 能够方便、快速地完成嵌入式系统开发整个步骤。EDK 以IP core形式,提供诸如LMB ,OPB 总线接口、外部存放控制器、SDRAM 控制器、UART 中止控制器、定时器及其它部分外围设备接口等资源,利用这些资源,设计者能够轻松构建一个完善嵌入式处理器系统,其完整设计框图图2所表示。
一个完整嵌入式处理器系统设计通常包含3 个部分: 硬件系统构建;存放器映射及软件开发;应用程序开发。
在XPS 集成开发环境下,嵌入式处理器硬件系统构建由微处理器硬件规范(MHS) 文件和微处理器外围设备描述(MPD) 文件定义; 软件系统结构由微处理器软件规范(MSS) 文件定义,其开发步骤图3 所表示。
MHS 文件用于描述硬件系统结构,定义处理器类型、总线接口、外设接口、中止处理和地址空间。该文件可用任意文本编辑器创建,是文本化原理图输入。MPD 文件包含外围设备全部有效输入/ 输出接口和硬件参数。MSS 文件关键用来定义软件库、驱动程序和文件系统。
说明:Data2BRAM 作用是把软件代码文件( 3 .elf) 、FPGA 位流文件( 3 . bit) 和块存放器(BRAM) 初始化数据文件( 3 . bmm) 转换成新FPGA 位流文件( 3 . bit )和存放器数据文件( 3 . mem) 。相关应用程序编写将在下面实例中具体介绍。
3 一个简单实例本实例基于e 元素科技数字刀剑系列之火龙刀3评定板,简明叙述一个嵌入式处理器系统开发步骤,着重讲述应用程序编写。对于其它评定板,只需对用户约束文件( 3 . ucf) 稍做修改即可。为简单起见,和图2 所表示一个完整系统相比,本例所述系统只在OPB 总线上挂MDM(硬件调试模块) 和GPIO(通用输入/ 输出设备) 2 个外围设备,GPIO 对应评定板上8 个L ED 输出,当完成下载到FPGA 后,8 个L ED 将不停地闪烁。具体描述以下:
第一步,硬件系统构建,在XPS 集成开发环境下,利用BSP(Base System Builder ) 向导自动创建一个以Mi-croBlaze 处理器为关键简单硬件系统,设置处理器时钟频率为50 MHz ,总线时钟频率为50 MHz ,设置片上读/写调试模块为调
显示全部