Download presentation
Presentation is loading. Please wait.
Published byChrista Albert Modified 6年之前
1
所有培训资料均可从网站 http://bucteda.eefocus.com下载 何宾 Tel:13911127536
版权所有,禁止未经授权的商业使用行为 何宾 Tel: 所有培训资料均可从网站 北京中教仪装备技术有限公司
2
基于AXI4的可编程SoC系统设计 (下) 培训内容 Xilinx片上可编程系统设计导论 AXI4规范 MicroBlaze处理器原理
EDK13.1工具概述 操作系统(OS)及板级支持包(BSP)概述 基于MicroBlaze和AXI4的可编程SoC系统实现
3
片上可编程系统设计实验 --实验内容 介绍EDK13.1软件的使用方法和设计流程。 在介绍这部分内容时,使用捐赠的板卡Nexys3,该板卡
带有Xilinx最新一代的Spartan-6 FPGA芯片。
4
片上可编程系统设计实验 --实验内容 该内容主要包括: 1. 工程的建立; 2. 添加AXI4 IP到硬件设计;
3. 定制LED IP,并添加IP到系统,编写应用程序; 4. 定制7段数码管 IP,并添加IP到系统,编写应用程序; 5. 定制PWM IP,并添加IP到系统,编写应用程序; 6. 实现AXI4中断控制系统; 7. 使用AXI4 Chipscope实现系统协同调试。
5
实验五:定制PWM IP并添加到设计中 --设计结构原理
ILMB DLMB Microblaze LMB BRAM CNTLR AXI-Lite M_AXI _DP GPIO UART MDM MBDEBUG JTAG DIP PUSH RS-232 MY IP 低通滤波器 这就是本实验要完成的部分 使用BSB建立的最小系统结构
6
实验五:定制PWM IP并添加到设计中 --设计目标
设计一个脉冲宽度调制(Pulse-Width Modulation, PWM)控制器IP核, 通过该控制器连接到板上的低通滤 波器,产生下面的三种信号: 正弦信号; 三角信号; 方波信号;
7
实验五:定制PWM IP并添加到设计中 --设计原理
化规律 MicroBlaze AXI-LITE PWM_IP 寄 存 器 控 制 逻 辑 低通滤波器 LPF
8
实验五:定制PWM IP并添加到设计中 -- PWM实现原理
#include "stdafx.h" #include "math.h" #define N 64 int main() { float y; int i; unsigned j; for(i=0;i<N;i++) y=sin((( *2)/N)*i); j=(int)(y* ); printf("%x\n",j); } return 0; 生成正弦查找表
9
实验五:定制PWM IP并添加到设计中 --打开前面的设计
在开始这个实验以前,先建立一个lab5的目录,将刚 才lab1下所有的文件复制到新建的lab5目录下. 这个实验基于lab1前面的设计实现,设计并添加定制 IP到设计中,并对其进行测试.
10
实验五:定制PWM IP并添加到设计中 --打开前面的设计
在Windows操作系统下,选择所有程序->Xilinx ISE Design Suite13.1->EDK->Xilinx Platform Studio(XPS)。打 开EDK软件。 1)打开XPS,在XPS主界面选择File->Open Project, 出现下图界面。选择Open a recent project,然后单击ok按 钮。
11
实验五:定制PWM IP并添加到设计中 --打开前面的设计
打开已经存在的工程, 选择该选项 点击”OK”按纽
12
实验五:定制PWM IP并添加到设计中 --打开前面的设计
定位到所在目录的system.xmp文件 然后点击“Open”按纽
13
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
选择”创建或导入外设“
14
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
点击“Next”按钮
15
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
选择创建新外设模版 点击“Next”按钮
16
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
点击“Next”按钮
17
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
点击“Next”按钮
18
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
选择接口AXI4-LITE 点击“Next”按钮
19
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
选中:用户逻辑软件寄存器 不选中 点击“Next”按钮 你需要实现的部分
20
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
对寄存器的读写控制 寄存器的个数,根据实际需要使用的情况设置 点击“Next”按钮
21
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
点击“Next”按钮
22
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
点击“Next”按钮
23
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
产生ISE工程 生成软件驱动 点击“Next”按钮
24
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
点击“Finish”按钮
25
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
所创建的IP核已经添加到IP库中 位置在工程目录下的pcores目录中
26
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
27
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
点击“Yes”按钮,同意将其添加到设计中
28
实验五:定制PWM IP并添加到设计中 --定制PWM IP核
使用默认设置,并点击“OK”按钮
29
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择使用XPS自动总线连接和存储空间分配 点击“OK”按钮
30
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择总线接口标签 自动将其连接到axi4lite_0
31
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择地址标签 自动进行存储空间分配
32
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择总线接口标签 选中pwm_ip,右击鼠标 选择View MPD文件
33
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
保存修改后的文件
34
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择总线接口标签 选中pwm_ip,右击鼠标 选择Browse HDL Source…
35
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择user_logic.vhd 点击“打开”按纽
36
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
用HDL语言,添加pwm端口
37
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
正弦查找表深度63, 宽度8位(由正弦 生成C语言得到) 状态声明 内部时钟声明
38
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
分频器模块,用于产生用于生成pwm波的分频时钟div_clk 寄存器slv_reg1的内容为0时,计数器值为0; 产生分频时钟, 分频因子由slv_reg0给出
39
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
状态机用于生成和正弦 波变化对应的pwm波 Pwm的输出为高‘1’; 当计数值小于ROM(i)时,计数继续;否则进入下一个状态 当计数值小于255时,pwm输出为‘0’; 否则,i+1,准备找ROM表中的下一个值,pwm_count值复位。进入初始状态 保存修改后的文件
40
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择总线接口标签 选中pwm_ip,右击鼠标 选择Browse HDL Source…
41
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择pwm_ip.vhd 点击“打开”按纽
42
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
用HDL语言,添加pwm端口
43
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
用HDL语言,添加PWM端口映射 保存修改后的文件
44
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择该选项,使变化生效
45
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择端口标签 展开pwm_ip_0 下拉框下选择make External, 表示该网络将连接到FPGA 物理引脚上
46
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择端口标签 新生成的外部端口名字 pwm_ip_0_PWM_pin
47
实验五:定制PWM IP并添加到设计中 --添加PWM IP核
选择system.ucf文件 添加pwm_ip_0_PWM_pin引脚约束
48
实验五:定制PWM IP并添加到设计中 --生成网表
下一步,选择这个, 产生网表 想想这步完成的工作? –其实就是 把这个抽象的结构, 转换成门级网表的连接.
49
实验五:定制PWM IP并添加到设计中 --生成网表
这个过程需要持续一小部分时间,请等待,并且看看控制台给出的综合信息.
50
实验五:定制PWM IP并添加到设计中 --更新比特流
下一步,选择这个, 产生布局布线比特流文件 这个过程需要持续一小部分时间,请等待,并且看看 控制台给出的实现过程的信息.
51
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
选择输出硬件到SDK
52
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
选择输出和打开 SDK软件
53
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
定位路径到当前的 工程窗口 点击“OK”按纽, 进入下一个界面
54
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
删除lab1建立的BSP 和应用程序工程 下面将添加设计的BSP
55
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
选择建立Xilinx BSP, 作用是各种外设的软件驱动
56
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
BSP的工程名字 硬件平台的工程名字 BSP的名字 Xilkernel-Xilinx操作系统 Standalone-BSP 点击”Finish”按纽, 进入下一个界面
57
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
点击”OK”按纽, 进入下一个界面
58
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
SDK开始自动编译BSP
59
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
BSP的各种文件 下面将添加SDK自动生成的 应用程序
60
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
生成新的C工程
61
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
工程名字 选择空的应用工程
62
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
点击”Next”按纽, 进入下一个界面
63
实验五:定制PWM IP并添加到设计中 --建立软件应用程序
选择该选项,使用已经存在的BSP 点击”Finish”按纽, 进入下一个界面
64
实验五:定制PWM IP并添加到设计中 --添加定制IP的软件驱动到BSP中
选择该选项,打开目录管理
65
实验五:定制PWM IP并添加到设计中 --添加定制IP的软件驱动到BSP中
点击”New”按钮 定位到当前的目录下 点击”确定”按钮
66
实验五:定制PWM IP并添加到设计中 --添加定制IP的软件驱动到BSP中
添加到搜索路径中 重新扫描路径 点击”ok”按钮
67
实验五:定制PWM IP并添加到设计中 --添加定制IP的软件驱动到BSP中
68
实验五:定制PWM IP并添加到设计中 --添加定制IP的软件驱动到BSP中
选择standalone_bsp_0 点击”OK”按钮
69
实验五:定制PWM IP并添加到设计中 --添加定制IP的软件驱动到BSP中
选择drivers 选择pwm_ip_0 下拉框中选择pwm_ip 点击”OK”按钮
70
实验五:定制PWM IP并添加到设计中 --添加定制IP的软件驱动到BSP中
错误提示
71
实验五:定制PWM IP并添加到设计中 --添加定制IP的软件驱动到BSP中
找到打开该文件
72
实验五:定制PWM IP并添加到设计中 --添加定制IP的软件驱动到BSP中
添加此行代码,并保存
73
实验五:定制PWM IP并添加到设计中 --添加定制IP的软件驱动到BSP中
添加此行代码,并保存 选择,并打开该文件
74
实验五:定制PWM IP并添加到设计中 --导入应用工程文件
选择”Import”选项
75
实验五:定制PWM IP并添加到设计中 --导入应用工程文件
选择“general”,并展开 选择“File System” 点击“Next”按钮
76
实验五:定制PWM IP并添加到设计中 --导入应用工程文件
点击“Browse”按钮 定位到导入文件所在的文件夹 点击“确定”按钮
77
实验五:定制PWM IP并添加到设计中 --导入应用工程文件
选中pwm_test.c文件 选中”Browse”按钮,定位要导入文件的位置
78
实验五:定制PWM IP并添加到设计中 --导入应用工程文件
选中empty_application_0 选中src 点击“OK”按钮
79
实验五:定制PWM IP并添加到设计中 --导入应用工程文件
导入文件的文件夹 点击“Finish”按钮
80
实验五:定制PWM IP并添加到设计中 --导入应用工程文件
文件已经被导入到设计中 修改PWM的周期和使能/禁止其工作
81
实验五:定制PWM IP并添加到设计中 --生成链接脚本文件
选择产生链接脚本文件
82
实验五:定制PWM IP并添加到设计中 --生成链接脚本文件
点击”Browse”按纽 程序各段的分配情况 定位产生.ld文件的路径 选择保存 选择生成
83
实验五:定制PWM IP并添加到设计中 --工程的下载
产生比特流文件并且下载到板子上。在下载前,指 令存储器(FPGA的BRAM)将被更新(使用GNU编译器 产生可执行的文件)。 使用下面的步骤完成设计下载和结果的观察: 连接Nexys3的USB线连接到主机的USB口 打开目标板的电源 打开主机的超级终端(在Windows操作系统的开始 ->所有程序->附件->通信下),并且配置其参数,使其波特 率9600,数据位:8比特;无奇偶校验;一个停止位;无流 量控制。
84
实验五:定制PWM IP并添加到设计中 --工程的下载
选择编程 FPGA选项
85
实验五:定制PWM IP并添加到设计中 --工程的下载
比特流文件 块RAM映射文件 选择软件应用程序.elf文件 (即最终编译\连接后的文件 点击”Program”按纽, 进入下一个界面
86
实验五:定制PWM IP并添加到设计中 --工程的下载
等待编程成功,在示波器上观察结果,看结果. 注意:如果前面没有选择生成链接脚本文件,则需要选择RUN->RUN,来运行程序.
Similar presentations