This document describes how to build a Processor System (PS) system with custom IP and interrupt support for the Avnet MicroZed development board using Vivado 2014.4 on Ubuntu 14.04 LTS (64-bit). Ubunto 14.04 LTS (64-bit) Guest is running Oracle VM VirtualBox 4.3.20 on a Windows 7 Professional Service pack 1 (64-bit) Host. ### Vivado 2014.4 Linux Basic System with Custom IP #### 1. 历史记录 - **版本**: A - **日期**: 2015年2月5日 - **作者**: [email protected] - **描述**: 初始版本 #### 2. 引言 本文档详细介绍了如何使用Vivado 2014.4在Ubuntu 14.04 LTS (64位)系统上为Avnet MicroZed开发板构建包含自定义IP和支持中断的处理器系统(PS)。具体来说,该过程涉及以下步骤: - 创建块图(Block Diagram) - 创建带有中断支持的自定义IP(例如AXI PIMaster 3-wire) - 使用XSIM模拟自定义IP - 封装IP - 实现设计 - 导出硬件到SDK - 启动SDK - 为自定义IP和ISR创建应用程序 - 创建引导加载程序(Bootloader) - 对FPGA编程(Avnet MicroZed) - 下载应用程序(Avnet MicroZed) #### 3. 打开Vivado 在Ubuntu 14.04 LTS (64位)环境中打开终端并运行以下命令来启动Vivado: ``` $ source /opt/Xilinx/Vivado/2014.4/settings64.sh $vivado & ``` #### 4. 新建项目 接下来创建一个新的Vivado项目: - 选择菜单栏中的 "File" -> "New Project" #### 5. 项目设置 - 在新项目向导中指定项目名称。 - 选择存储位置。 - 设置目标硬件平台为目标开发板。 #### 6. 创建处理器系统 - 选择 "IP Catalog" 中的 "Processor Systems"。 - 选择合适的处理器系统模板。 ##### 6.1 创建新的块图 - 创建一个新的块图文件。 - 添加处理器系统IP到块图中。 #### 7. 创建自定义IP - 进入 "IP Catalog"。 - 选择 "New Custom IP Wizard" 来创建自定义IP。 - 定义自定义IP的功能、端口和接口。 #### 8. 添加自定义IP - 将自定义IP添加到块图中。 - 连接自定义IP到处理器系统。 #### 9. 修改自定义IP - 可以通过修改自定义IP的设计文件来调整其功能。 - 更新自定义IP的端口和接口配置。 #### 10. 封装自定义IP - 使用 "IP Packager" 工具来封装自定义IP。 - 确保所有必需的设计文件都已正确包含。 ##### 10.1 端口和接口 - 确定自定义IP的外部端口和接口。 - 设置适当的信号方向(输入/输出)。 ##### 10.2 添加设计文件 - 将RTL源代码文件添加到自定义IP项目中。 - 包括任何必要的库或辅助文件。 ##### 10.3 添加测试平台 - 创建一个用于验证自定义IP功能的测试平台。 - 编写测试脚本来模拟不同的场景。 ##### 10.4 重新封装 - 如果进行了更改,则需要重新封装自定义IP。 #### 11. 自定义IP的HDL仿真 - **Modelsim**: 可以使用Modelsim进行HDL仿真。 - **XSIM**: XSIM是Vivado提供的高级仿真工具。 ##### 11.1 Modelsim - 在Modelsim环境中设置仿真参数。 - 运行仿真来验证自定义IP的行为。 ##### 11.2 XSIM - **封装自定义IP**: 确保自定义IP已经被正确封装。 - **仿真设置**: 配置XSIM的仿真设置。 - **运行仿真**: 运行XSIM来执行仿真。 - **重新封装IP**: 如果发现任何问题,则需要对自定义IP进行修改并重新封装。 #### 12. 连接中断 - 在处理器系统中连接自定义IP的中断信号。 - 确保中断信号被正确地路由到处理器。 #### 13. 验证设计 - 使用Vivado的集成仿真器验证整个系统的功能。 - 检查设计是否符合预期。 #### 14. 生成输出产品 - 生成输出产品,包括综合后的比特流和其他输出文件。 #### 15. HDL包装器 - 为设计生成HDL包装器文件。 - 确保所有的模块都被正确链接。 #### 16. 实施 - 实施设计,完成综合、布局布线等步骤。 - 优化设计以满足性能要求。 #### 17. 导出硬件 - 将最终设计导出到SDK中,以便于软件开发。 #### 18. 启动SDK - 使用SDK来编写与自定义IP交互的应用程序。 #### 19. 创建应用程序项目 - **Hello**: 创建一个简单的测试应用程序来验证硬件功能。 - **修改应用程序**: 根据需求修改应用程序。 - **Bootloader**: 创建引导加载程序以支持自定义IP的初始化。 - **Bootloader debug flags**: 设置调试标志以帮助调试。 #### 20. 对FPGA编程 - 将比特流下载到Avnet MicroZed开发板上的FPGA中。 #### 21. 下载应用程序 - **设置**: 确保开发环境已经配置好。 - **配置**: 配置应用程序的运行环境。 - **运行**: 运行应用程序来验证自定义IP的功能。 以上步骤概述了如何使用Vivado 2014.4在Ubuntu 14.04 LTS (64位)上为Avnet MicroZed开发板构建包含自定义IP和支持中断的处理器系统。通过遵循这些步骤,可以有效地实现自定义硬件设计,并将其集成到更复杂的应用程序中。


























剩余62页未读,继续阅读


- 粉丝: 36
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 西门子PLC与触摸屏在变频恒压供水系统中的设计与仿真研究
- 永磁同步电机PMSM位置三闭环控制仿真模型的设计与研究
- 马尔可夫转移场技术在一维时序信号至二维图像转换中的应用及其实现方法
- 基于MATLAB的高级蓝色车牌识别系统:集成计算机视觉与图像处理技术实现精准识别与语音播报 车牌识别
- 基于S7-200 PLC与组态王的工业锅炉温度闭环控制系统设计与实现
- 基于A与DWA融合的MATLAB路径规划算法:提高机器人避障能力 MATLAB 专业版
- 西门子S7-1200PLC与TP700触摸屏联机仿真程序:混凝土搅拌控制之博途V16及运行效果视频(带IO表)
- 独立变桨控制与统一变桨控制的OpenFast与Simlink联合仿真模型
- 永磁同步电机(PMSM)匝间短路故障的Simulink仿真分析及应用
- 密歇根大学燃料电池仿真:Simulink建模及关键组件控制策略
- 电力系统优化:基于改进粒子群算法的微电网多目标调度模型研究
- 自动驾驶路径规划与动态避障系统的实现及实验验证 · 自动驾驶 v2.5
- DEGWO-BP算法:基于差分改进灰狼优化的BP神经网络数据回归预测Matlab程序 - MATLAB
- 基于MATLAB与CarSimPreScan联合仿真的自动驾驶路径规划与动态避障模型研究 · 自动驾驶 终极版
- 恒压供水系统:西门子Smart200+海为B-7s触摸屏控制,一拖一与一拖多模式,手机远程控制程序 经典版
- 低照度图像增强技术:七大算法解析及其Python代码实现


