2011年xilinx竞赛-可编程

Download Report

Transcript 2011年xilinx竞赛-可编程

版权所有,禁止未经授权的商业使用行为
FPGA System Design Primer
高教社&XILINX SOC竞赛培训系列课程
何宾
Tel:13911127536
何宾
Tel:
email:[email protected]
email:
高等教育出版社
所有培训资料均可从网站
http://bucteda.eefocus.com下载
北京中教仪装备技术有限公司
北京中教仪装备技术有
限公司
基于AXI4的可编程SoC系统设计
(下)
培训内容
Xilinx片上可编程系统设计导论
AXI4规范
MicroBlaze处理器原理
EDK13.1工具概述
操作系统(OS)及板级支持包(BSP)概述
基于MicroBlaze和AXI4的可编程SoC系统实现
北京中教仪装备技术有限公司
片上可编程系统设计实验
--实验内容
介绍EDK13.1软件的使用方法和设计流程。
在介绍这部分内容时,使用捐赠的板卡Nexys3,该板卡
带有Xilinx最新一代的Spartan-6 FPGA芯片。
北京中教仪装备技术有限公司
片上可编程系统设计实验
--实验内容
该内容主要包括:
1. 工程的建立;
2. 添加AXI4 IP到硬件设计;
3. 定制LED IP,并添加IP到系统,编写应用程序;
4. 定制7段数码管 IP,并添加IP到系统,编写应用程序;
5. 定制PWM IP,并添加IP到系统,编写应用程序;
6. 实现AXI4中断控制系统;
7. 使用AXI4 Chipscope实现系统协同调试;
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--设计结构原理
中断请求
Microblaze
MBDEBUG
JTAG
MDM
M_AXI _DP
MY IP
LED
GPIO
DIP
GPIO
PUSH
UART
RS-232
AXI-Lite
DLMB
ILMB
LMB
BRAM
CNTLR
LMB
BRAM
CNTLR
定时器
BRAM
使用BSB建立的最小系统结构
中断控制器
这就是本实验要完成的部分
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--打开前面的设计
在开始这个实验以前,先建立一个lab3的目录,将刚
才lab1下所有的文件复制到新建的lab6目录下.
这个实验基于lab3前面的设计实现,添加定时器和中
断控制器到设计中,并对其进行测试.
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--打开前面的设计
在Windows操作系统下,选择所有程序->Xilinx ISE
Design Suite13.1->EDK->Xilinx Platform Studio(XPS)。打
开EDK软件。
1)打开XPS,在XPS主界面选择File->Open Project,
出现下图界面。选择Open a recent project,然后单击ok按
钮。
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--打开前面的设计
打开已经存在的工程,
选择该选项
点击”OK”按纽
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--打开前面的设计
定位到所在目录的system.xmp文件
然后点击“Open”按纽
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--添加Timer IP到设计中
选择DMA and Timer,并展开
选择AXI Timer/Counter,并双击
选择IP Catalog标签
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--添加Timer IP到设计中
• 点击“Yes”按钮。
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--添加Timer IP到设计中
选中只使用一个定时器
点击“OK”按钮
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--添加Timer IP到设计中
选择自动将IP加入到设计中
点击“OK”按钮
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--添加中断控制器IP到设计中
Clock,Reset and Interrupt,并展开
选择AXI Interrupt Controller,并双击
选择IP Catalog标签
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--添加中断控制器IP到设计中
• 点击“Yes”按钮。
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--添加中断控制器IP到设计中
点击“OK”按钮
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--添加中断控制器IP到设计中
选择自动将IP加入到设计中
点击“OK”按钮
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--查看定时器和中断控制器和总线的连接
选择总线接口标签
与axi4Lite_0的连接
修改定时器名字delay
与axi4Lite_0的连接
emc通过AXI和CPU建立连接
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--查看定时器和中断控制器的存储空间分配
选择地址标签
中断控制器存储空间分配
定时器存储空间分配
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立定时器和中断控制器之间的中断连接
选择端口标签
选择delay, 并展开
下拉框中选择net_gnd,表示CaptureTrig0端
口接地
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立定时器和中断控制器之间的中断连接
选择端口标签
选择delay, 并展开,选择Interrupt
端口
下拉框中选择New Connection,表示为
Interrupt端口建立新的连接
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立定时器和中断控制器之间的中断连接
下拉框中选择delay_Interrupt,表示为
Interrupt端口建立新的连接delay_Interrupt
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立定时器和中断控制器之间的中断连接
选择端口标签
选择axi_intc_0, 并展开,选择Intr
端口
鼠标点击此处
添加delay_interrupt
作为中断控制器的中
断源
选择delay_Interrupt
点击
点击OK
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立中断控制器和处理器之间的中断连接
选择端口标签
选择axi_intc_0, 并展开,选择Irq端口
下拉框中选择New Connection,表示为Irq
端口建立新的连接
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立中断控制器和处理器之间的中断连接
下拉框中选择axi_intc_0_Irq,表示为Irq端口
建立新的连接
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立中断控制器和处理器之间的中断连接
选择端口标签
选择microblaze_0, 并展开,选择INTERRUPT端口
下拉框中选择axi_intc_0_Irq,表示为
Interrupt端口建立新的连接
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--工程的结构分析
BRAM
LMB控制器
LMB控制器
处理器
点击块图标签查看生成的块图
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--工程的结构分析
axi_interconnect_0
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--产生网表文件
下一步,选择这个, 产生网表
想想这步完成的工作? –其实就是 把这个抽象的结构,
转换成门级网表的连接.
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--产生网表文件
这个过程需要持续一小部分时间,请等待,并且看
看控制台给出的综合信息.
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--更新比特流
下一步,选择这个, 产生布局布线比特流文件
这个过程需要持续一小部分时间,请等待,并且看看
控制台给出的实现过程的信息.
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
选择输出硬件到SDK
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
选择输出和打开
SDK软件
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
定位路径到当前的
工程窗口
点击”OK按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
删除lab3建立的BSP
和应用程序工程
下面将添加设计的BSP
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
• 选择建立Xilinx BSP, 作用是各
种外设的软件驱动
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
BSP的工程名字
硬件平台的工程名字
点击”Finish”按纽, 进入下一个界面
BSP的名字
1) Xilkernel-Xilinx操作系统
2) Standalone-BSP
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
点击”OK”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
SDK开始自
动编译BSP
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
BSP的各种文件
下面将添加SDK自动生成的
应用程序
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
生成新的C工程
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
工程名字
选择空的应用工程
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
点击”Next”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--建立软件应用程序
选择该选项,使用已经存在的BSP
点击”Finish”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--导入软件应用程序
选择”Import”选项
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--导入软件应用程序
选择“general”,并展开
选择“File System”
点击“Next”按钮
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--导入软件应用程序
点击“Browse”按钮
定位到导入文件所在的文件夹
点击“确定”按
钮
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--导入软件应用程序
选中lab6.c文件
选中”Browse”按钮,
定位要导入文件的
位置
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--导入软件应用程序
选中empty_application_0
选中src
点击“OK”按钮
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--导入软件应用程序
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--导入软件应用程序
导入文件的文件夹
点击“Finish”按钮
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--导入软件应用程序
文件已经被导入到设计中
下面准备下载设计到芯片中
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--导入软件应用程序
• 用于定时器的中断服务程序
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--生成链接脚本文件
• 选择产生链接脚本文件
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--生成链接脚本文件
点击”Browse”按纽
程序各段的分配情况
定位产生.ld文件的路径
选择保存
北京中教仪装备技术有限公司
选择生成
实验六:实现AXI4中断系统
--工程的下载
产生比特流文件并且下载到板子上。在下载前,指
令存储器(FPGA的BRAM)将被更新(使用GNU编译器
产生可执行的文件)。
使用下面的步骤完成设计下载和结果的观察:
连接Nexys3的USB线连接到主机的USB口
打开目标板的电源
打开主机的超级终端(在Windows操作系统的开始
->所有程序->附件->通信下),并且配置其参数,使其波特
率9600,数据位:8比特;无奇偶校验;一个停止位;无流
量控制。
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--工程的下载
• 选择编程 FPGA选项
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--工程的下载
比特流文件
块RAM映射文件
点击”Program”按纽, 进入
下一个界面
选择软件应用程
序.elf文件
(即最终编译\连接后
的文件
北京中教仪装备技术有限公司
实验六:实现AXI4中断系统
--工程的下载
•
等待编程成功,在超级终端上观察结果,同时在Nexys3板
卡上观察灯的变化情况,观察打印信息的变化.
•
注意:如果前面没有选择生成链接脚本文件,则需要选择
RUN->RUN,来运行程序.
北京中教仪装备技术有限公司