第8章_基于SOPC实现的数字信号处理实验_第1页
第8章_基于SOPC实现的数字信号处理实验_第2页
第8章_基于SOPC实现的数字信号处理实验_第3页
第8章_基于SOPC实现的数字信号处理实验_第4页
第8章_基于SOPC实现的数字信号处理实验_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、12内容提要内容提要3一、实验目的一、实验目的二、实验原理二、实验原理三、实验步骤三、实验步骤四、实验思考题四、实验思考题五、实验报告要求五、实验报告要求8.1 4熟悉熟悉SOPC设计流程设计流程熟悉利用熟悉利用Quartus的原理团输入方法设计的原理团输入方法设计简单组合电路简单组合电路学习加法器的设计学习加法器的设计一、实验目的实验目的5 本实验设计一个八位加法器,主要由两个四位本实验设计一个八位加法器,主要由两个四位加法器加法器7428374283构成,加数构成,加数A A的低的低4 4位和高位和高4 4位分别与两位分别与两个加法器的个加法器的A1-A4A1-A4输入端连接。同样加数输入

2、端连接。同样加数B B的低的低4 4位和位和高高4 4位分别与两个加法器的位分别与两个加法器的B1-B4B1-B4输入端连接,即加输入端连接,即加法器间的进位可以串行实现,将低位加法器的进位法器间的进位可以串行实现,将低位加法器的进位输出输出coutcout与高位加法器的最低进位输入信号与高位加法器的最低进位输入信号cincin相接。相接。由此加数由此加数A A和和B B有各种不同的组合,从而实现加法器有各种不同的组合,从而实现加法器的功能。的功能。二、实验原理二、实验原理6选择选择File New Project Wizard,新建一个工程,新建一个工程。(1)(1)创建新的工程创建新的工程

3、三、实验步骤三、实验步骤7 选择选择File New,在弹出的对话框中选中,在弹出的对话框中选中Block Diagram/Schematic File。(2)(2)原理图输入原理图输入 三、实验步骤三、实验步骤8(3)(3)编译编译 选择选择Processing Start Compilation或者点击工具栏里或者点击工具栏里的的 对图形文件进行编译。对图形文件进行编译。三、实验步骤三、实验步骤9(4)(4) 仿真仿真建立波形文件建立波形文件输入信号节点输入信号节点设置波形参数设置波形参数编辑输入信号编辑输入信号运行仿真运行仿真三、实验步骤三、实验步骤10选择选择Tools RTL Vie

4、wer项观看工程项目的项观看工程项目的RTL级电路。级电路。(5)(5) RTL级电路级电路三、实验步骤三、实验步骤11选择选择Assignments Assignment Editor项,在编辑器窗项,在编辑器窗的的Category栏中选择栏中选择Pin,锁定引脚。,锁定引脚。(6)(6) 引脚锁定引脚锁定三、实验步骤三、实验步骤12执行执行Tools Programmer命令,设置编程方式为命令,设置编程方式为USB-BlasterUSB-0编编程方式,选择程方式,选择JTAG编程模式。执行编程模式。执行Processing Start,实现设计电路,实现设计电路到目标芯片的编程下载。到目

5、标芯片的编程下载。然后在然后在DE2开发板上通过扳动开发板上通过扳动SW15SW0电电平开关,组成加数平开关,组成加数A和加数和加数B的不同组合,在红色发光二极管的不同组合,在红色发光二极管LEDR7LEDR0和和LEDR8上观察上观察A数和数和B数相加的和数与向高位的进位数相加的和数与向高位的进位COUT的的结果。结果。(7)(7) 编程下载及硬件验证编程下载及硬件验证三、实验步骤三、实验步骤13四、实验思考题四、实验思考题若想用若想用LED显示加法器的输出结果,原理图应该有那些显示加法器的输出结果,原理图应该有那些地方需要修改?应该怎样设置引脚?地方需要修改?应该怎样设置引脚? 五、实验报

6、告要求五、实验报告要求1.1.写出写出Quartus II进行图形编辑输入方法的完整设计流程进行图形编辑输入方法的完整设计流程2.2.参考参考Quartus II的的Help,详细说明,详细说明Assignments菜单中菜单中的的Settings对话框的功能;概述对话框的功能;概述Assignments菜单中的菜单中的Assignment Editor的功能,举例说明;的功能,举例说明;3.3.简述设计步骤和调试过程,包括图形编辑文件,引脚简述设计步骤和调试过程,包括图形编辑文件,引脚功能的定义文件,仿真结果;功能的定义文件,仿真结果;4.4.简要回答思考题。简要回答思考题。 8.1 148

7、.2 正弦信号发生器设计正弦信号发生器设计一、实验目的一、实验目的二、实验原理二、实验原理三、实验步骤三、实验步骤四、实验思考题四、实验思考题五、实验报告要求五、实验报告要求15熟悉熟悉SOPC设计流程设计流程熟悉利用熟悉利用Quartus的的文本输入方法设计简单正文本输入方法设计简单正弦信号发生器电路弦信号发生器电路原理原理掌握嵌入式存储器的应用以及使用嵌入式逻辑掌握嵌入式存储器的应用以及使用嵌入式逻辑分析仪进行测试的方法分析仪进行测试的方法 学习宏功能模块实例化输入和简单程序的调试学习宏功能模块实例化输入和简单程序的调试 一、实验目的实验目的16 顶层文件顶层文件sinewave.vhd在

8、在FPGA中实现中实现ROM地址信号发地址信号发生器的由一个生器的由一个6位计数器,正弦数据存放在位计数器,正弦数据存放在ROM中。数据中。数据ROM由由LPM_ROM模块实现,其底层是模块实现,其底层是FPGA中的中的M4K。地址发生器的时钟地址发生器的时钟CLK的输入频率与每周期的波形数据点数的输入频率与每周期的波形数据点数以及以及D/A输出频率的关系是输出频率的关系是 。640ff二、实验原理二、实验原理17创建工程,选择目标芯片,采用文本输入方法,编辑输入创建工程,选择目标芯片,采用文本输入方法,编辑输入设计顶层文件设计顶层文件sinewave.vhd。 (1)(1) 创建新的工程创建

9、新的工程 三、实验步骤三、实验步骤18 ROM初始化数据文件有两种:初始化数据文件有两种:Memory Initialization File(.mif)格式和)格式和Hexadecimal(Intel-Format)File(.hex)格式。)格式。(2)(2) 定制定制ROM初始化数据文件初始化数据文件实现方法选择File New Other Files Memory Initialization File,将波形数据填入此表中,即.mif数据。利用C程序编辑产生.mif文件或利用汇编程序编辑,然后用单片机ASM编辑器产生.hex格式文件 利用Dspbuilder/Matlab的工具来产生

10、,在其数据文件目录中就可以找到.mif和.hex格式文件 三、实验步骤三、实验步骤19 Tools-Mega Wizard Plug-In Manager项,在产生的对话框的左栏中选择storage/LPM_ROM,再选择Cyclone器件和VHDL语言方式,最后输入ROM文件的存放路径。(3)(3) 定制定制ROM元件元件选择地址线数据位宽及地址锁存信号三、实验步骤三、实验步骤20指定路径上的数据初始化文件.hex,完成ROM定制(3)(3) 定制定制ROM元件元件三、实验步骤三、实验步骤21(4)(4) 编译编译三、实验步骤三、实验步骤22(5)(5) 仿真及仿真及RTL级电路级电路仿真结

11、果RTL级电路三、实验步骤三、实验步骤23(6)(6) 引脚锁定和编程下载引脚锁定和编程下载三、实验步骤三、实验步骤24 步骤步骤 1、 创建创建SignalTap II(ToolsSignalTap II Logic analyzer )2、调入待测信号、调入待测信号(双击Node Finder窗口,添加观测信号)3、参数设置、参数设置(时钟信号、采样深度 、触发条件 、触发信号和触发方式 )4、 SignalTap II文件存盘文件存盘(File Save As )5、编译下载、编译下载(再次启动全程编译 )6、启动、启动SignalTap II(Instance Manager栏中点击单

12、步或连续运行按钮 )(7)(7) 使用嵌入式逻辑分析仪进行实时测试使用嵌入式逻辑分析仪进行实时测试 三、实验步骤三、实验步骤25SignalTap II信号观察窗口信号观察窗口 (8)(8) 测试结果测试结果 三、实验步骤三、实验步骤26编辑波形数据,查看模拟输出结果编辑波形数据,查看模拟输出结果(8)(8) 测试结果测试结果 三、实验步骤三、实验步骤27分析SignalTap II采样得到如图所示的波形图的原因。 四、实验思考题四、实验思考题281.写出Quartus II进行文本输入方法的完整设计流程2.简述定制LMP功能模块的基本过程3.写出结论和心得体会4.简要回答思考题 五、 实验报

13、告要求实验报告要求298.3 快速傅里叶变换的实现快速傅里叶变换的实现一、实验目的一、实验目的二、实验原理二、实验原理三、实验方案三、实验方案四、实验思考题四、实验思考题五、实验报告要求五、实验报告要求30了解基2 FFT实现原理;掌握用文本输入法进行旋转因子和蝶形处理器的设计; 学习使用Quartus II实现FFT的基本方法与步骤。 一、实验目的一、实验目的31本实验采用按时间抽取(decimation in time)的基2快速傅立叶算法(基2DIT-FFT)。基2 FFT蝶形处理器的实现需要一个复数加法器、一个复数减法器和一个旋转因子乘法器。 二、实验原理二、实验原理32旋转因子乘法器

14、的实现旋转因子乘法器的实现旋转因子的乘法器通常由旋转因子的乘法器通常由4次实数乘法和次实数乘法和6次实数加次实数加/减法减法运算实现,但经过运算的简化,可以只用运算实现,但经过运算的简化,可以只用3次实数乘法和次实数乘法和3次实数加次实数加/减法运算实现复数乘法器。减法运算实现复数乘法器。 三、实验方案三、实验方案33设复数旋转因子乘法R+jI=(X+jY)(C+jS),因为C和S可以预先计算的,并可以储存在一个表中。所以可以储存下面的三个系数: C、C+S、C-S有了这3个预先计算的因子,可以首先计算: E=X-Y和Z=C*E=C* (X-Y)然后用: R=(C-S)*Y+Z I=(C+S)

15、*X-Z计算最后的乘积。旋转因子算法旋转因子算法34蝶形处理单元的实现蝶形处理单元的实现蝶形运算单元是蝶形运算单元是FFT处理器的基本单元,用来计算两点处理器的基本单元,用来计算两点的的FFT。由于蝶形运算单元是由一个复数加法器、一个。由于蝶形运算单元是由一个复数加法器、一个复数减法器和一个旋转因子复数乘法器组成,基复数减法器和一个旋转因子复数乘法器组成,基-2FFT蝶蝶形运算单元的形运算单元的VHDL代码如下。从代码中可以看出,蝶代码如下。从代码中可以看出,蝶形处理器是由一个加法器、一个减法器和一个实例化为形处理器是由一个加法器、一个减法器和一个实例化为组件的旋转因子乘法器实现的。组件的旋转

16、因子乘法器实现的。35-基2-FFT蝶形运算单元的VHDL代码实现LIBRARY Lpm;USE Lpm.Lpm_components.ALL;LIBRARY ieee;USE ieee.std_logic_1164.ALL;USE ieee.std_logic_arith.ALL;PACKAGE mul_Package IS -User defined componentsCOMPONENT multiplierGENERIC (W2: INTEGER: =17; -multiplier bit width W1: INTEGER: =9; -Bit width c+s sum W: INT

17、EGER: =8); -Input bit widthPORT ( clk: IN STD_LOGIC; x_in, y_in, c_in: IN STD_LOGIC_VECTOR (W - 1 downto 0); -inputscas_in, css_in: IN STD_LOGIC_VECTOR (W1 - 1 downto 0);-inputsr_out, i_out: OUT STD_LOGIC_VECTOR (W - 1 downto 0);-resultsEND COMPONENT;END mul_package;LIBRARY work;USE work.mul_package

18、.ALL;LIBRARY lpm;USE Lpm.Lpm_components.ALL; LIBRARY ieee;旋转因子旋转因子VHDL代码代码36USE ieee.std_logic_1164.ALL;USE ieee.std_logic_arith.ALL;ENTITY bf ISGENERIC (W2: INTEGER: =17; -multiplier bit width W1: INTEGER: =9; -Bit width c+s sum W: INTEGER: =8); -Input bit widthPORT ( clk :IN STD_LOGIC;Are_in, Aim_

19、in, Bre_in, Bim_in, c_in : IN STD_LOGIC_VECTOR (W - 1 downto 0);cas_in, css_in : IN STD_LOGIC_VECTOR (W1 - 1 downto 0);Dre_out, Dim_out, Ere_out, Eim_out: OUT STD_LOGIC_VECTOR (W - 1 downto 0);END bf;Dim_out=Dim;Ere_out=Ere;Eim_outW2, W1=W1, W=W)PORT MAP (clk=clk, x_in=Bre_in, y_in=Bim_in, c_in=c_in

20、, cas_in=cas_in, css_in=css_in, r_out=r, i_out=i);sub_1:lpm_add_subGENERIC MAP (LPM_WIDTH=W, LPM_DIRECTION=SUB, LPM_REPRESENTATION=SIGNED)PORT MAP (dataa=Are_in, datab=r, result=Dre);sub_2:lpm_add_subGENERIC MAP (LPM_WIDTH=W, LPM_DIRECTION=SUB, LPM_REPRESENTATION=SIGNED)PORT MAP (dataa=Aim_in, datab

21、=i, result=Dim);add_1:lpm_add_subGENERIC MAP (LPM_WIDTH=W, LPM_DIRECTION=ADD,LPM_REPRESENTATION=SIGNED)PORT MAP (dataa=Are_in, datab=r, result=Ere);add_2:lpm_add_subGENERIC MAP (LPM_WIDTH=W, LPM_DIRECTION=ADD,LPM_REPRESENTATION=SIGNED)PORT MAP (dataa=Aim_in, datab=i, result=Eim);PROCESSBEGINWAIT UNT

22、IL clkevent and clk=1;Dre_out=Dre;38旋转因子仿真结果旋转因子仿真结果计算仿真结果计算仿真结果39计算仿真结果计算仿真结果基基2FFT的仿真结果的仿真结果40利用Matlab对本实验的结果验证在Matlab中输入: p= 20+30i, 50+45i; y= fft2(p) disp(y)计算结果是: y =70.0000 +75.0000i -30.0000 -15.0000i即对输入A=20+j30、B=50+j45进行FFT结果为40+j 60,与仿真结果20+ j 30对比,结果是相符的。结果验证结果验证41四、实验思考题四、实验思考题分析Matlab

23、结果与QuartusII仿真结果为什么不同?五、实验报告要求五、实验报告要求 简述实验原理及关键步骤。 总结实验所得主要结论。 总结调试时遇到的问题以及解决方案。 简要回答实验思考题。 8.3 快速傅里叶变换的实现快速傅里叶变换的实现428.4 直接直接I I型型FIRFIR数字滤波器设计数字滤波器设计一、实验目的一、实验目的二、实验原理二、实验原理三、实验方案三、实验方案四、实验思考题四、实验思考题五、实验报告要求五、实验报告要求43了解FIR数字滤波器的基本原理; 熟悉DSP Builder/ Matlab 的SOPC设计流程;学习使用Matlab/ Simulink、ModelSim以及

24、Quartus II设计仿真FIR的基本方法与步骤。 一、实验目的一、实验目的44 二、实验原理二、实验原理直接直接I型型5阶阶FIR滤波器滤波器信号流图信号流图( )(0) ( )(1) (1)(2) (2)(3) (3)(4) (4)(5) (5)h nhx nhx nhx nhx nhx nhx n45建立Simulink模型 三、实验方案三、实验方案46系统级仿真 三、实验方案三、实验方案可以看出设计的低通滤波器的滤波效果非常好47ModelSim波形仿真 三、实验方案三、实验方案使用ModelSim进行RTL仿真 48使用ModelSim进行RTL仿真 三、实验方案三、实验方案Mod

25、elSim模拟输出结果 49使用Quatus II进行时序仿真 三、实验方案三、实验方案Quatus II时序仿真结果 501. 使用ModelSim进行功能仿真时,对于输入输出信号,在属性对话框应设置怎样的参数参能较好的观察模拟波形?2. 利用DSP Builder安装路径DSP Builderdesign examples demos Filters DA32中给出的32阶固定系数FIR滤波器文件AltrFir32.mdl,利用各种信号源进行仿真测试,并对测试结果进行分析。(注:DAFIRDistributed Arithmetic FIR) 四、实验思考题四、实验思考题511.说明Mat

26、lab、DSP Builder、ModelSim和Quartus II间的关系。2.说明手动流程中能完成那几个层次的方针,各有什么作用?3.根据以上实验要求和实验内容,记录并分析所以实验结果。 五、实验报告要求五、实验报告要求528.5 基于基于DADA算法的算法的FIRFIR滤波器的设计滤波器的设计一、实验目的一、实验目的二、实验原理二、实验原理三、实验方案三、实验方案四、实验思考题四、实验思考题五、实验报告要求五、实验报告要求53学习分布式算法; 学习分布式算法应用于FIR滤波器设计;进一步掌握Quartus II进行仿真的基本方法与步骤。 一、实验目的一、实验目的54 二、实验原理二、实

27、验原理 分布式算法算法(distributed arithmetic,DA)是一项重要的FPGA技术,广泛应用与乘积和中。 进一步假设系数cn是已知常数,xn是变量。无符号DA系统架设变量xn的表达式为: xn表示x的第n次采样,内积y可以表示为:11002( , )BNbbbnyf c n x n 10 2 , 0,1Bbbbbx nx nx n10, 0 01 1 .1 1Nnycxc n x ncxc xc Nx N55DA算法的主要特点是:算法的主要特点是:巧妙地利用ROM查找表将固定系数的乘-累加(multiply-accumulate,MAC)运算转化为查表操作,运算速度不随系数和

28、输入数据位数的增加而降低,且相对直接实现乘法器而言在硬件规模上得到了极大的改善。分布式算法分布式算法 FIR实现实现 二、实验原理二、实验原理56对顶层文件VHDL代码进行编译、仿真,结果如下: 三、实验方案三、实验方案57 四、实验思考题四、实验思考题考虑有符号的DA FIR滤波器的实现方法。五、实验报告要求五、实验报告要求u 根据以上实验原理和方案,掌握根据以上实验原理和方案,掌握DA算法的应用;算法的应用;u 记录并分析所有试验结果,完成实验报告记录并分析所有试验结果,完成实验报告。 8.5 基于基于DADA算法的算法的FIRFIR滤波器的设计滤波器的设计588.6 直接直接IIII型型

29、IIRIIR数字滤波器设计数字滤波器设计一、实验目的一、实验目的二、实验原理二、实验原理三、实验方案三、实验方案四、实验思考题四、实验思考题五、实验报告要求五、实验报告要求59了解IIR数字滤波器的基本原理; 掌握基于DSP Builder的SOPC设计流程;学习使用Matlab/ Simulink、ModelSim以及Quartus II设计仿真IIR的基本方法与步骤。 一、实验目的一、实验目的60 二、实验原理二、实验原理直接直接II型型4阶阶IIR滤波器滤波器信号流图信号流图 123412340.050.200.310.200.051 1.951.740.720.12zzzzH zzzz

30、z0011221,0.05;1.95,0.20;1.74,0.31;ababab 33440.72,0.20;0.12,0.05abab 61建立建立Simulink模型模型 三、实验方案三、实验方案62建立Simulink模型 三、实验方案三、实验方案63系统级仿真 三、实验方案三、实验方案设计的IIR滤波器的滤波效果非常好64ModelSim波形仿真波形仿真 三、实验方案三、实验方案使用ModelSim进行RTL仿真 65使用ModelSim进行RTL仿真 三、实验方案三、实验方案ModelSim模拟输出模拟输出 66使用Quatus II进行时序仿真 三、实验方案三、实验方案Quatus

31、 II时序仿真结果 67 四、实验思考题四、实验思考题简述FIR与IIR滤波器的区别。五、实验报告要求五、实验报告要求u 完成一个完成一个4阶级联型阶级联型IIR滤波器的设计;滤波器的设计;u 根据设计原理和方案,设置模型中各模块参数;根据设计原理和方案,设置模型中各模块参数;u 记录并分析所有试验结果,完成实验报告记录并分析所有试验结果,完成实验报告。 8.6 直接直接IIII型的型的IIRIIR滤波器的设计滤波器的设计688.7 预先考虑算法并行预先考虑算法并行IIRIR数字滤波器设计数字滤波器设计一、实验目的一、实验目的二、实验原理二、实验原理三、实验方案三、实验方案四、实验思考题四、实

32、验思考题五、实验报告要求五、实验报告要求69了解有耗积分器的基本原理; 掌握IIR系统的差分方程;学习预先考虑算法并行IIR滤波器的设计方法。 一、实验目的一、实验目的70 二、实验原理二、实验原理有耗积分器有耗积分器31 4y ny nx n预先考虑算预先考虑算法的有耗积法的有耗积分器分器2211 1y nay nbx na y nabx nbx n71 二、实验原理二、实验原理两通道并行两通道并行IIR滤波器滤波器22222 2 2122121212 yka ykaxkxky nyka ykaxkxk72预先考虑算法的并行IIR滤波器实现的顶层文件VHDL代码,进行综合编译,建立仿真文件,

33、设置仿真参数,查看仿真结果 三、实验方案三、实验方案并行并行IIR滤滤波器对脉冲波器对脉冲1000响应的响应的VHDL仿真仿真 73 三、实验方案三、实验方案并行并行IIR滤波器对阶跃滤波器对阶跃100响应的响应的VHDL仿真仿真 74应用Matlab/DSP Builder集合Simulink其他库中的元件,建立有耗积分器的模型。 三、实验方案三、实验方案75分别选择脉冲和阶跃激励,设置与实验方案对应的参数,进行仿真,查看系统级仿真结果。 三、实验方案三、实验方案脉冲响应 阶跃响应76 四、实验思考题四、实验思考题简述并行实现IIR滤波器的优点与缺点。五、实验报告要求五、实验报告要求u 根据以上原理和方案,验证有耗积分器和预先考根据以上原理和方案,验证有耗积分器和预先考虑的有耗积分器算法速度的差别;虑的有耗积分器算法速度的差别;u 记录并分析所有试验结果,完成实验报告记录并分析所有试验结果,完成实验报告。 8.7 预先考虑

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论