第13讲基于FPGA的DSP开发技术

Download Report

Transcript 第13讲基于FPGA的DSP开发技术

电子设计自动化技术
讲授:伍宗富
《 E D A 技 术》 课 程 教 学
讲授:伍宗富
湖南文理学院电气与信息工程学院
2020年5月1日星期五
电子设计自动化技术
讲授:伍宗富
第 十三 讲 基于FPGA的DSP开发技术
 教学目的:使学生会用Quartus II和DSP Builder软件设计
DSP应用模块的开发方法。
 教学重点:通过实例讲解DSP应用模块的开发方法。
 教学难点:DSP应用模块的设计步骤。
 教学方法:讲授法、计算机辅助法。
 课时计划:2学时
 使用教材:
SOPC技术与应用.江国强 编著.北京:机械工业出版社
 主要参考文献:
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
刘洪涛.ARM嵌入式体系结构与接口技术[M].北京:人民邮电出版社
田耘等.无线通信FPGA设计[M].北京:电子工业出版社
孟宪元等.FPGA嵌入式系统设计教程[M].北京:电子工业出版社
徐光辉等.基于FPGA的嵌入式开发与应用[M].北京:电子工业出版社
沈文斌.嵌入式硬件系统设计与开发实例详解[M].北京:电子工业出版社
周立功等.SOPC嵌入式系统基础教程[M].北京:北京航空航天大学出版社
王彦等.基于FPGA的工程设计与应用[M].西安:西安电子工业出版社
周润景等.基于QuartusII的FPGA/CPLD数字系统设计实例[M].北京:电子工业出版社
http://www.altera.com
电子设计自动化技术
讲授:伍宗富
课题:基于FPGA的DSP开发技术
一、Matlab/DSP Builder的DSP模块设计
二、 基于Quartus II的DSP模块调试
三、 DSP Builder的层次设计
四、课堂小结
五、作业
电子设计自动化技术
讲授:伍宗富
一、Matlab/DSP Builder的DSP模块设计
1. DSP Builder及其设计流程
 DSP Builder是一个系统级(或算法级)设计工具,依
赖于MathWorks公司的数学分析工具Matlab/Simulink,在
Simulink中进行图形化设计和仿真,通过SignalCompiler
可以把Matlab/Simulink的设计文件(.mdl)转成相应的硬
件描述语言VHDL设计文件(.vhd),再由FPGA/CPLD开
发工具Quartus II来完成。 DSP Builder设计流程如下:
第一步在Matlab/Simulink中进行设计输入,即在Matlab的Simulink
环境中建立一个mdl模型文件,用图形方式调用Altera DSP Builder和其它
Simulink库中的图形模块(Block),构成系统级或算法级设计框图(或称
Simulink设计模型)。
第二步利用Simulink强大的图形化仿真、分析功能,分析此设计模
型的正确性,完成模型仿真。
第三步通过SignalCompiler把Simulink的模型文件(后缀为.mdl)转化
成通用的硬件描述语言VHDL文件(后缀为.vhd)。
第四步用Quartus II 、ModelSim对以上设计产生的VHDL的RTL代
码和仿真文件进行综合、编译适配以及仿真。
电子设计自动化技术
讲授:伍宗富
一、Matlab/DSP Builder的DSP模块设计
2.基于FPGA的DSP系统的系统结构可重配置方法
由于不同的配置文件下载于FPGA后,将能获
得不同的硬件结构和硬件功能,基于FPGA的DSP
系统的系统结构可重配置方法有:
(1) 将多个配置文件预先存储在DSP系统的ROM中,
系统根据实际需要自动选择下载的配置文件。缺点是配置
文件数有限。
(2) 将配置文件全部预存在大存储器中,或PC机中,由
外围系统选择下载配置文件。
(3) 通过无线遥控方式,对远处的DSP应用系统进行配
置,从而遥控改变功能模块或系统的硬件结构,达到改变
技术指标和硬件工作方式的目的。
(4) 通过互联网进行配置,实现远程硬件结构控制。
电子设计自动化技术
讲授:伍宗富
一、Matlab/DSP Builder的DSP模块设计
3. DSP应用模块设计示例____正弦信号调制电
路
1)建立Matlab设计模型
(Model);
注:首先要放置SignalCompiler图标(编译控制符号)
电子设计自动化技术
讲授:伍宗富
一、Matlab/DSP Builder的DSP模块设计
3. DSP应用模块设计示例____正弦信号调制电
路
2)Matlab模型仿真;
电子设计自动化技术
讲授:伍宗富
一、Matlab/DSP Builder的DSP模块设计
3. DSP应用模块设计示例____正弦信号调制电
路
3)使用SignalCompiler进行模型文件的转换;
电子设计自动化技术
讲授:伍宗富
二、基于Quartus II的DSP模块调试
基于硬件描述语言的数字系统设计步骤
1)创建工程和编辑设计文件
(1)新建一个文件夹;
(2)输入源程序;
(3)文件存盘。
2)创建工程
(1)打开建立新工程管理窗;
( 2)将设计文件加入工程中;
( 3)选择仿真器和综合器类型;
( 4)选择目标芯片;
(5)结束设置。
3)编译前设置
( 1)选择目标芯片;
( 2)选择目标器件编程配置方式;
( 3)选择输出配置;
( 4)选择目标器件闲置引脚的状态;
(5)编译模式的选择
4)编译
5)波形仿真
6)引脚锁定、编译和下载
电子设计自动化技术
讲授:伍宗富
二、基于Quartus II的DSP模块调试
1. 对DSP Builder 生成的工程文件进行编译
电子设计自动化技术
讲授:伍宗富
二、基于Quartus II的DSP模块调试
2. 使用Quartus II实现时序仿真
3. 硬件实现与测试
(1)引脚锁定;
singen
clock
SinDelay [15..0]
sclrp
StreamMod[18..0]
Noise
SinIn[15..0]
inst
与目标芯片的引脚连接关系表
(2)下载设计文件;
(3)硬件验证设计电路。
注:输出需接并行D/A变换的
数据输入端。
电子设计自动化技术
讲授:伍宗富
二、基于Quartus II的DSP模块调试

示例:正弦信号调制电路应用(输出接DAC0832)
第一步:基于DSP Builder设计模型与Quartus文件转换
阶梯信号发生器模
块产生26=64个线性
递增的地址数据
c
5:0
7:0
z
-1
SignalCompiler
Increment
LUT
Delay
Decrement
Output
a
X
o7:0
b
Product
ibit
Random
DATAIN
Number
正弦函数:sin([起始值:步进值:结束值])
变化范围-127~+127:127*sin(0:2*pi/2^6):2pi])
变化范围0~255:128+127*sin(0:2*pi/2^6):2pi])
Scope
电子设计自动化技术
讲授:伍宗富
二、基于Quartus II的DSP模块调试

示例:正弦信号调制电路应用(输出接DAC0832)
第一步:基于DSP Builder设计模型与Quartus文件转换
Mean设置随机函数
的平均值
Variance用于设置偏差
Initial seed用于设置
起始值
Scope”Parameters”(参数设置)
中“Number of axes”参数为
“2”表示双踪示波器
电子设计自动化技术
讲授:伍宗富
二、基于Quartus II的DSP模块调试

示例:正弦信号调制电路应用(输出接DAC0832)
第一步:基于DSP Builder设计模型与Quartus文件转换
电子设计自动化技术
讲授:伍宗富
二、基于Quartus II的DSP模块调试

示例:正弦信号调制电路应用(输出接DAC0832)
第二步:基于Quartus II的工程编译与调试
f irstDSP
clock
sclrp
DATAIN
inst
Output[7..0]
电子设计自动化技术
讲授:伍宗富
三、DSP Builder的层次设计


DSP Builder的层次设计是利用DSP Builder
软件工具,将设计好的DSP模型生成子系统
(SubSystem),这个子系统是单个元件,
可以独立工作,也可以与其他模块或子系统
构成更大的设计模型,还可以作为基层模块,
被任意复制到其他设计模型中。
命令:“Create subsystem”
Out1
In1
Out2
Random
Number
Scope
Subsystem
SignalCompiler
电子设计自动化技术
讲授:伍宗富
课堂小结
一、Matlab/DSP Builder的DSP模块设计
(DSP Builder软件设计应用模块的开发方法)
二、 基于Quartus II的DSP模块调试
(对DSP Builder 生成的工程文件进行编译等)
三、 DSP Builder的层次设计
(“Create subsystem”的应用)
电子设计自动化技术
讲授:伍宗富
课外作业:
试设计一个可控正弦信号发生器。