### MicroBlaze 学习资料知识点详述
#### 一、MicroBlaze及EDK概述
**MicroBlaze**是一款由Xilinx公司推出的软核处理器,适用于嵌入式系统开发,特别是针对Xilinx FPGA(Field Programmable Gate Array,现场可编程门阵列)平台。MicroBlaze具有高度可配置性,可以根据特定应用的需求调整其性能和资源占用。
**EDK (Embedded Development Kit)**是Xilinx提供的一个强大的集成开发环境,用于开发基于Xilinx FPGA的嵌入式系统。它包含了硬件设计工具和软件开发工具,使得开发者可以在同一环境中完成硬件和软件的设计工作。EDK的主要组件包括ISE(Integration and Synthesis Environment)、XPS(Xilinx Platform Studio)等。
#### 二、EDK安装及目录结构
- **安装**: EDK的安装过程较为简单,仅需输入序列号即可完成。安装完成后,主要的子目录包括`doc`和`sw`。
- `doc`: 包含大量文档资料,对于理解MicroBlaze架构和开发流程具有重要参考价值。
- `sw`: 放置驱动程序、BSP(Board Support Package,板级支持包)以及软件服务等。特别地,`sw`目录下的`XilinxProcessorIPLib`子目录包含各种硬件模块的驱动程序,如GPIO、UART等。
#### 三、EDK使用流程详解
MicroBlaze作为嵌入式系统的中央处理器时,整个开发流程可以分为硬件设计和软件设计两大部分:
1. **硬件设计**:
- **选择FPGA芯片**: 根据项目需求选择合适的Xilinx FPGA芯片。
- **定制CPU、存储器及外围器件**: 使用XPS中的BSB(Base System Builder)向导来定制硬件配置,包括处理器类型、内存类型、外设等。
- **生成网表**: 完成硬件配置后,XPS会自动生成硬件描述文件。
- **编辑UCF**: 配置管脚映射。
- **综合并生成bit文件**: 使用ISE进行综合和布局布线,最终生成bit流文件供下载使用。
2. **软件设计**:
- **系统库生成**: XPS根据硬件配置自动生成系统库,包括底层硬件驱动和调用接口。
- **编写C语言程序**: 使用C语言编写应用程序,利用自动生成的系统库进行硬件操作。
- **编译并生成可执行文件**: 编译完成后,生成可执行文件。
- **下载bit文件到硬件**: 将生成的bit文件下载到硬件上运行。
#### 四、MicroBlaze开发实例分析
以下是一个使用定时器循环点亮LED的简单实例:
1. **启动XPS**:
- 打开XPS界面,选择使用BSB向导进行设计。
- 选择工程文件的存放路径。
2. **选择开发板型号**:
- 根据实际情况选择对应的开发板型号,例如本例中的Xilinx Spartan 3E。
3. **选择处理器**:
- 对于Spartan 3E系列FPGA,只能选择MicroBlaze处理器。
4. **配置CPU**:
- **Debug I/F**: 可以选择是否启用硬件调试模块或软件调试模块。
- **Local memory**: 根据FPGA的BRAM大小进行配置。
- **Cache Setup**: 开启或关闭缓存。
- **FPU**: 是否启用浮点运算单元。
5. **配置IO**:
- 根据实际需要选择外设,如本例中的LED。
6. **添加内部外围设备**:
- 如需使用定时器等内部外围设备,则在此步骤添加。
7. **软件设置**:
- 设置标准输入输出设备,一般以串口作为标准输入输出设备。
- 不建议选择自动生成的应用程序例子和测试代码。
8. **生成工程**:
- 点击“Generate”按钮生成工程。
- 查看生成的工程摘要,并确认无误。
#### 五、小结
MicroBlaze及其开发工具EDK为开发者提供了灵活且强大的嵌入式系统开发平台。通过对硬件和软件的高度定制化,开发者可以根据具体的应用场景优化系统的性能和资源占用。上述流程涵盖了从硬件配置到软件编写的整个开发过程,为初学者提供了详细的指南。通过实践这些步骤,可以有效地掌握MicroBlaze的开发方法和技术要点。
- 1
- 2
前往页