Transcript 实验一

版权所有,禁止未经授权的商业使用行为
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实现系统协同调试。
北京中教仪装备技术有限公司
片上可编程系统设计实验
--实验内容
特别注意:
在开始使用XILINX的EDK软件开始片上可编程系
统开发前,需要将光盘中AXI目录下名为Digilent_Nexys3
板支持包文件夹复制到:
D:\Xilinx\13.1\ISE_DS\EDK\board\Xilinx\ipxact下
北京中教仪装备技术有限公司
实验一:工程的建立
--BSB向导概念
BSB向导帮助设计人员快速建立一个嵌入式系统工
程。对于更复杂的工程,BSB向导提供基本的系统,通过
这个系统设计人员可以定制完成嵌入式设计。为了高效率
的建立工程,Xilinx推荐使用BSB向导。
北京中教仪装备技术有限公司
实验一:工程的建立
--BSB向导概念
基于设计人员选择的板子,设计人员通过BSB选择
并配置基本的元素,比如:处理器类型、调试接口、缓存
配置、存储器类型和大小、外设等。
对于BSB不支持的目标系统,设计人员可以选择定制
板选项。使用这个选项时,必须指定未来板子的硬件,
并且要给出用户约束文件UCF。
北京中教仪装备技术有限公司
实验一:工程的建立
--BSB向导概念
如果选择的是支持的目标板,BSB向导自动的加入
UCF文件。当退出BSB时,BSB所建立的MHS和MSS文
件自动加入到XPS工程中,设计人员能在XPS中进行更
进一步的设计。
北京中教仪装备技术有限公司
实验一:工程的建立
--BSB向导概念
BSB可以根据设计人员的要求产生一个或多个软件
工程。每个工程包含能运行在硬件目标开发板上的简单
的应用程序和链接脚本。
北京中教仪装备技术有限公司
实验一:工程的建立
--设计结构原理
下图给出所设计系统的完整结构。
M_AXI_IC
AXI-MM
EMC
Microblaze
JTAG
SRAM
M_AXI_DC
Ethernet
GMII
MYIP
LED
GPIO
DIP
GPIO
PUSH
UART
RS-232
MBDEBUG
MDM
M_AXI _DP
AXI-Lite
DLMB
ILMB
LMB
BRAM
CNTLR
LMB
BRAM
CNTLR
Timer
INT CNTLR
BRAM
chipscope axi monitor 0
图7.1 完整地系统结构
北京中教仪装备技术有限公司
实验一:工程的建立
--设计结构原理
Microblaze
MBDEBUG
JTAG
MDM
M_AXI _DP
AXI-Lite
DLMB
ILMB
LMB
BRAM
CNTLR
LMB
BRAM
CNTLR
GPIO
DIP
GPIO
PUSH
UART
RS-232
BRAM
使用BSB建立的最小系统结构
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
在Windows操作系统下,选择所有程序->Xilinx ISE
Design Suite13.1->EDK->Xilinx Platform Studio(XPS)。打
开EDK软件。
1)打开XPS,在XPS主界面选择File->New Project,
出现下图界面。选择Base System Builder Wizard
(recommend),然后单击ok按钮。
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
创建新的工程,
选择该选项
打开已经存在的工程,
选择该选项
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
选择System.xmp文件
点击”Open”按纽
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
选择创建一个新的设计
点击”Next”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
板子的供应厂商选择Digilent
板子的名字选择Spartan-6 Nexys3
板子的版本选择 C
这些信息来自XBD文件
点击”Next”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
给出了AXI系统
的结构图
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
点击”Next”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
开发板上给出的时钟频率:100MHz
CPU的时钟频率:100MHz
使用FPGA内BRAM的大小:32KB
点击”Next”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
选中这三项,然后点击”Remove”,所
构建的最小系统不包括以太网控制
器,LED灯,SPI Flash
点击”Next”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
在该设计中没有
使用高速缓存
点击”Next”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
每个IP的例化名字
已经给每个外设控制器
分配了基地址和高地址
工程中所包含的文件
点击”Finish”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
总线标签
debug_module与AXI_LITE接
口连接;
dlmb_cntrl与dlmb总线连接;
RS232_PORT与AXI_LITE总
线连接;
所用IP核及资源
LMB控制器
北京中教仪装备技术有限公司
实验一:工程的建立
--使用BSB向导
端口标签
S_AXI的端口连接
1)RS232_PORT的TX与网络RS232_Uart_1_sout连接;
2)RS232_PORT的RX与网络RS232_uart1_sin连接;
北京中教仪装备技术有限公司
实验一:工程的建立
--新建工程的结构分析
地址标签
基地址
高地址
大小地址
北京中教仪装备技术有限公司
实验一:工程的建立
--新建工程的结构分析
BRAM
LMB控制器
LMB控制器
处理器
点击块图标签查看生成的块图
北京中教仪装备技术有限公司
实验一:工程的建立
--新建工程的结构分析
串口控制器
DIP控制器
按键控制器
北京中教仪装备技术有限公司
实验一:工程的建立
--新建工程的结构分析
在XPS主界面的左
侧项目管理界面下,
单击Project标签,然
后单击Project File旁
边的‘+’,双击
mhsFiles: system.mhs
来打开该文件。
硬件平台的描述被包含
MHS文件中。MHS文件是表
示所设计的嵌入式系统的硬件
元件的最主要文件。MHS文件
以ASCII码形式存在。
北京中教仪装备技术有限公司
实验一:工程的建立
--新建工程的结构分析
端口说明
IP说明
北京中教仪装备技术有限公司
实验一:工程的建立
--新建工程的结构分析
下一步,选择这个, 产生网表
想想这步完成的工作? –其实就是 把这个抽象的结构,
转换成门级网表的连接.
北京中教仪装备技术有限公司
实验一:工程的建立
--新建工程的结构分析
这个过程需要持续一小部分时间,请等待,并且看
看控制台给出的综合信息.
北京中教仪装备技术有限公司
实验一:工程的建立
--新建工程的结构分析
下一步,选择这个, 产生布局布线比特流文件
这个过程需要持续一小部分时间,请等待,并且看看
控制台给出的实现过程的信息.
北京中教仪装备技术有限公司
实验一:工程的建立
--新建工程的结构分析
怀着好奇的心情,看看在FPGA芯片内部是怎么实现这
个结构的?下面教你查看FPGA内布局的图.
•
双击”FPGA Editor”
北京中教仪装备技术有限公司
实验一:工程的建立
--新建工程的结构分析
找到这个文件
点击OK,打开文件
北京中教仪装备技术有限公司
实验一:工程的建立
--新建工程的结构分析
蓝色区域表示
被使用的CLB
终于知道了,原
来FPGA内的可编
程单元被征用,通
过步线,在FPGA内
部实现了这个片上
系统.这也就是”可
编程SOC”的本质
所在
过瘾后,关闭这个工具
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
选择输出硬件到SDK
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
选择输出和打开
SDK软件
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
定位路径到当前的
工程窗口
点击”OK按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
硬件设计文件
被导入到SDK
下面将添加设计的BSP
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
• 选择建立Xilinx BSP, 作用是各
种外设的软件驱动
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
BSP的工程名字
硬件平台的工程名字
点击”Finish”按纽, 进入下一个界面
BSP的名字
1) Xilkernel-Xilinx操作系统
2) Standalone-BSP
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
点击”OK”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
SDK开始自
动编译BSP
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
BSP的各种文件
下面将添加SDK自动生成的
应用程序
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
生成新的C工程
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
工程名字
选择生成外设测试应用程序
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
点击”Next”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
选择该选项,使用已经存在的BSP
点击”Finish”按纽, 进入下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
打开并分析该文件
应用程序的各种文件
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
• 开关输入测试代码部分
北京中教仪装备技术有限公司
实验一:工程的建立
--建立软件应用程序
• 按键输入测试代码部分
下面准备下载设计到芯片中
北京中教仪装备技术有限公司
实验一:工程的建立
--生成链接脚本文件
• 选择产生链接脚本文件
北京中教仪装备技术有限公司
实验一:工程的建立
--生成链接脚本文件
点击”Browse”按纽
程序各段的分配情况
定位产生.ld文件的路径
选择保存
北京中教仪装备技术有限公司
选择生成
实验一:工程的建立
--工程的下载
产生比特流文件并且下载到板子上。在下载前,指
令存储器(FPGA的BRAM)将被更新(使用GNU编译器
产生可执行的文件)。
使用下面的步骤完成设计下载和结果的观察:
连接Nexys3的USB线连接到主机的USB口
打开目标板的电源
打开主机的超级终端(在Windows操作系统的开始
->所有程序->附件->通信下),并且配置其参数,使其波特
率9600,数据位:8比特;无奇偶校验;一个停止位;无流
量控制。
北京中教仪装备技术有限公司
实验一:工程的建立
--工程的下载
• 选择编程 FPGA选项
北京中教仪装备技术有限公司
实验一:工程的建立
--工程的下载
比特流文件
块RAM映射文件
选择软件应用程序.elf文件
(即最终编译\连接后的文件
点击”Program”按纽, 进入
下一个界面
北京中教仪装备技术有限公司
实验一:工程的建立
--工程的下载
•
等待编程成功,在超级终端上观察结果,同时在Nexys3板
卡上操作按键和DIP开关,观察打印信息的变化.
•
注意:如果前面没有选择生成链接脚本文件,则需要选择
RUN->RUN,来运行程序.
•
关闭SDK软件.
北京中教仪装备技术有限公司