何宾 Tel:13911127536 email:[email protected]

58
何何 Tel email: 高高高高高高高 北北北北北北北北北北北北北 高高高 &XILINX SOC 高高高高高高高高 FPGA System Design Primer FPGA System Design Primer 何何 Tel:13911127536 email:[email protected] 高高高高 高高高高高高高高高高高高高 高高高高高高高高高高高高高 北北北北北北北北北北北 p://bucteda.eefocus.com 北北

description

版权所有,禁止未经授权的商业使用行为. 何宾 Tel:13911127536 email:[email protected]. 所有培训资料均可从网站 http://bucteda.eefocus.com 下载. 北京中教仪装备技术有限公司. 基于 AXI4 的可编程 SoC 系统设计 ( 下 ). 培训内容. Xilinx 片上可编程系统设计导论 AXI4 规范 MicroBlaze 处理器原理 EDK13.1 工具概述 操作系统 (OS) 及板级支持包 (BSP) 概述 - PowerPoint PPT Presentation

Transcript of 何宾 Tel:13911127536 email:[email protected]

Page 1: 何宾 Tel:13911127536     email:hebin@mail.buct

何宾Tel : email:

高等教育出版社北京中教仪装备技术有

限公司

高教社 &XILINX SOC 竞赛培训系列课程

FPGA System Design FPGA System Design PrimerPrimer

何宾Tel:13911127536

email:[email protected]

版权所有,禁止未经授权的商业使用行为

北京中教仪装备技术有限公司 所有培训资料均可从网站http://bucteda.eefocus.com 下载

Page 2: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

培训内容 Xilinx 片上可编程系统设计导论 AXI4 规范 MicroBlaze 处理器原理 EDK13.1 工具概述 操作系统 (OS) 及板级支持包 (BSP) 概述 基于 MicroBlaze和 AXI4 的可编程 SoC 系统实现

基于 AXI4 的可编程 SoC 系统设计 (下 )

Page 3: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

片上可编程系统设计实验-- 实验内容

介绍 EDK13.1 软件的使用方法和设计流程。 在介绍这部分内容时,使用捐赠的板卡 Nexys3, 该板卡带有 Xilinx 最新一代的 Spartan-6 FPGA 芯片。

Page 4: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

片上可编程系统设计实验-- 实验内容该内容主要包括:

1. 工程的建立; 2. 添加 AXI4 IP 到硬件设计; 3. 定制 LED IP, 并添加 IP 到系统 , 编写应用程序; 4. 定制 7 段数码管 IP, 并添加 IP 到系统 , 编写应用程序; 5. 定制 PWM IP, 并添加 IP 到系统 , 编写应用程序 ; 6. 实现 AXI4 中断控制系统; 7. 使用 AXI4 Chipscope 实现系统协同调试。

Page 5: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

片上可编程系统设计实验-- 实验内容

特别注意: 在开始使用 XILINX 的 EDK 软件开始片上可编程系统开发前,需要将光盘中 AXI 目录下名为D

igilent_Nexys3板支持包文件夹复制到 : D:\Xilinx\13.1\ISE_DS\EDK\board\Xilinx\ipxact 下

Page 6: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立--BSB 向导概念

BSB 向导帮助设计人员快速建立一个嵌入式系统工程。对于更复杂的工程, BSB 向导提供基本的系统,通过这个系统设计人员可以定制完成嵌入式设计。为了高效率的建立工程, Xilinx 推荐使用 BSB 向导。

Page 7: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立--BSB 向导概念

基于设计人员选择的板子,设计人员通过 BSB 选择并配置基本的元素 , 比如:处理器类型、调试接口、缓存配置、存储器类型和大小、外设等。 对于 BSB 不支持的目标系统,设计人员可以选择定制板选项。使用这个选项时,必须指定未来板子的硬件,并且要给出用户约束文件 UCF 。

Page 8: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立--BSB 向导概念

如果选择的是支持的目标板, BSB 向导自动的加入UCF 文件。当退出 BSB 时, BSB 所建立的 MHS 和

MSS 文件自动加入到 XPS 工程中,设计人员能在 XPS 中进行

更进一步的设计。

Page 9: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立--BSB 向导概念

BSB 可以根据设计人员的要求产生一个或多个软件工程。每个工程包含能运行在硬件目标开发板上的简单的应用程序和链接脚本。

Page 10: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 设计结构原理

下图给出所设计系统的完整结构。

M_AXI_DC

M_AXI_IC

ILMBDLMB

Microblaze

LMBBRAMCNTLR

LMBBRAMCNTLR

BRAM

AXI-MMEMC

AXI-Lite

M_AXI _DP

Ethernet

MYIP

GPIO

GPIO

UART

Timer

INT CNTLR

MDMMBDEBUGJTAG

SRAM

GMII

LED

DIP

PUSH

RS-232

图 7.1 完整地系统结构

chipscope axi monitor 0

Page 11: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 设计结构原理

ILMBDLMB

Microblaze

LMBBRAMCNTLR

LMBBRAMCNTLR

BRAM

AXI-Lite

M_AXI _DP

GPIO

GPIO

UART

MDMMBDEBUGJTAG

DIP

PUSH

RS-232

使用 BSB 建立的最小系统结构

Page 12: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 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 按钮。

Page 13: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

创建新的工程 ,选择该选项

打开已经存在的工程 ,选择该选项

Page 14: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

选择 System.xmp 文件

点击” Open” 按纽

Page 15: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

Page 16: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

选择创建一个新的设计

点击” Next” 按纽 , 进入下一个界面

Page 17: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

板子的供应厂商选择 Digilent

板子的名字选择 Spartan-6 Nexys3

板子的版本选择 C

这些信息来自 XBD 文件

点击” Next” 按纽 , 进入下一个界面

Page 18: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

给出了 AXI 系统的结构图

Page 19: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

点击” Next” 按纽 , 进入下一个界面

Page 20: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

开发板上给出的时钟频率 :100MHz

CPU 的时钟频率 :100MHz使用 FPGA内 BRAM 的大小 :32KB

点击” Next” 按纽 , 进入下一个界面

Page 21: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

选中这三项 , 然后点击” Remove”, 所构建的最小系统不包括以太网控制器 ,LED灯 ,SPI Flash

点击” Next” 按纽 , 进入下一个界面

Page 22: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

在该设计中没有使用高速缓存

点击” Next” 按纽 , 进入下一个界面

Page 23: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

已经给每个外设控制器分配了基地址和高地址

每个 IP 的例化名字

工程中所包含的文件

点击” Finish” 按纽 , 进入下一个界面

Page 24: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

所用 IP 核及资源

debug_module与 AXI_LITE接口连接;dlmb_cntrl与 dlmb 总线连接;RS232_PORT与 AXI_LITE 总线连接;

LMB 控制器

总线标签

Page 25: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 使用 BSB 向导

1) RS232_PORT的 TX 与网络 RS232_Uart_1_sout 连接; 2) RS232_PORT的 RX 与网络 RS232_uart1_sin 连接;

S_AXI 的端口连接

端口标签

Page 26: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立 --新建工程的结构分析

地址标签

基地址 高地址 大小地址

Page 27: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立--新建工程的结构分析

点击块图标签查看生成的块图

处理器

LMB 控制器 LMB 控制器

BRAM

Page 28: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立--新建工程的结构分析

DIP 控制器 串口控制器

按键控制器

Page 29: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立 --新建工程的结构分析

在 XPS 主界面的左侧项目管理界面下,单击 Project 标签,然后单击 Project File 旁边的‘ +’ ,双击mhsFiles: system.mhs来打开该文件。

硬件平台的描述被包含MHS 文件中。 MHS 文件是表示所设计的嵌入式系统的硬件元件的最主要文件。 MHS 文件以 ASCII 码形式存在。

Page 30: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立 --新建工程的结构分析

端口说明

IP 说明

Page 31: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立 --新建工程的结构分析

想想这步完成的工作 ? – 其实就是 把这个抽象的结构 ,转换成门级网表的连接 .

下一步 , 选择这个 , 产生网表

Page 32: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立--新建工程的结构分析

这个过程需要持续一小部分时间 , 请等待 , 并且看看控制台给出的综合信息 .

Page 33: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立--新建工程的结构分析

下一步 , 选择这个 , 产生布局布线比特流文件

这个过程需要持续一小部分时间 , 请等待 , 并且看看控制台给出的实现过程的信息 .

Page 34: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立--新建工程的结构分析

• 怀着好奇的心情 , 看看在 FPGA 芯片内部是怎么实现这

个结构的 ? 下面教你查看 FPGA 内布局的图 .

双击” FPGA Editor”

Page 35: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

找到这个文件

点击 OK, 打开文件

实验一:工程的建立--新建工程的结构分析

Page 36: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立--新建工程的结构分析

终于知道了 , 原来 FPGA 内的可编程单元被征用 , 通过步线 , 在 FPGA

内部实现了这个片上系统 . 这也就是”

可编程 SOC” 的本质所在

蓝色区域表示被使用的 CLB

过瘾后 , 关闭这个工具

Page 37: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

选择输出硬件到 SDK

Page 38: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

选择输出和打开SDK 软件

Page 39: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

定位路径到当前的工程窗口

点击” OK 按纽 , 进入下一个界面

Page 40: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

硬件设计文件被导入到 SDK

下面将添加设计的 BSP

Page 41: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

• 选择建立 Xilinx BSP, 作用是各种外设的软件驱动

Page 42: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

BSP 的工程名字

硬件平台的工程名字

BSP 的名字1) Xilkernel-Xilinx 操作系统2) Standalone-BSP

点击” Finish” 按纽 , 进入下一个界面

Page 43: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

点击” OK” 按纽 , 进入下一个界面

Page 44: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

SDK 开始自动编译 BSP

Page 45: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

BSP 的各种文件

下面将添加 SDK 自动生成的应用程序

Page 46: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序 生成新的 C 工程

Page 47: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

工程名字

选择生成外设测试应用程序

Page 48: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

点击” Next” 按纽 , 进入下一个界面

Page 49: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

选择该选项 , 使用已经存在的 BSP

点击” Finish” 按纽 , 进入下一个界面

Page 50: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

应用程序的各种文件

打开并分析该文件

Page 51: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

• 开关输入测试代码部分

Page 52: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 建立软件应用程序

• 按键输入测试代码部分

下面准备下载设计到芯片中

Page 53: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 生成链接脚本文件

• 选择产生链接脚本文件

Page 54: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 生成链接脚本文件

程序各段的分配情况

定位产生 .ld 文件的路径

选择保存

选择生成

点击” Browse” 按纽

Page 55: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 工程的下载

产生比特流文件并且下载到板子上。在下载前,指令存储器( FPGA的 BRAM )将被更新(使用 GNU 编译

器产生可执行的文件)。  使用下面的步骤完成设计下载和结果的观察:

连接 Nexys3的 USB 线连接到主机的 USB 口 打开目标板的电源 打开主机的超级终端(在 Windows 操作系统的开始

-> 所有程序 ->附件 -> 通信下),并且配置其参数 , 使其波特率 9600 ,数据位: 8 比特;无奇偶校验;一个停止位;无

流量控制。

Page 56: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 工程的下载

• 选择编程 FPGA 选项

Page 57: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 工程的下载

比特流文件块 RAM 映射文件

选择软件应用程序 .elf 文件( 即最终编译 \ 连接后的文件

点击” Program” 按纽 , 进入下一个界面

Page 58: 何宾 Tel:13911127536     email:hebin@mail.buct

北京中教仪装备技术有限公司

实验一:工程的建立-- 工程的下载

• 等待编程成功 , 在超级终端上观察结果 , 同时在 Nexys3板卡上操作按键和 DIP 开关 ,观察打印信息的变化 .

• 注意 :如果前面没有选择生成链接脚本文件 ,则需要选择 RUN->RUN,来运行程序 .

• 关闭 SDK 软件 .