第七章 基于System Generator的 DSP系统开发技术
- 格式:ppt
- 大小:1.80 MB
- 文档页数:47
第1节System Generator的简介与安装System Generator7.1.1 System Generator简介目前的FPGA芯片不再扮演胶合逻辑的角色,而成为数字信号处理系统的核心器件。
在芯片内,不仅包含了逻辑资源,还有多路复用器、存储器、硬核乘加单元以及内嵌的处理器等设备,并且还具备高度并行计算的能力,使得FPGA已成为高性能数字信号处理的理想器件,特别适合于完成数字滤波、快速傅立叶变换等。
但遗憾的是,FPGA并未在数字信号处理领域获得广泛应用,主要原因就是:首先,大部分DSP设计者通常对C语言或MATBLAB工具很熟悉,却不了解硬件描述语言VHDL和Verilog HDL;其次,部分DSP工程师认为对HDL语言在语句可综合方面的要求限制了其编写算法的思路。
基于此,Xilinx公司推出了简化FPGA数字处理系统的集成开发工具System Generator for DSP,快速、简易地将DSP系统的抽象算法转化成可综合的、可靠的硬件系统,为DSP设计者扫清了编程的障碍。
System Generator for DSP 是业内领先的高级系统级FPGA开发工具,借助FPGA 来设计高性能DSP 系统,其强大的提取功能可利用最先进的FPGA芯片来开发高度并行的系统,并和Simulink(MathWorks公司产品)实现无缝链接,快速建模并自动生成代码。
此外,System Generator是Xilinx公司XtremeDSP解决方案的关键组成,集成了先进的FPGA设计工具以及IP 核,支持Xilinx公司全系列的FPGA芯片,提供从初始算法验证到硬件设计的通道。
System Generator最大的特点就是可利用Simulink建模和仿真环境来实现FPGA设计,而无需了解和使用RTL级硬件语言,让DSP设计者能够发挥基于FPGA的DSP的最大性能和灵活性,并缩短整个设计的周期。
典型的System Generator工程设计实例如图8-1所示。
使用MATLAB为System Generator forDSP创建IP(图)使用MATLABM文件借助AccelChip综合工具优化FPGA实现将基于图形和基于语言的设计方法结合起来最能准确描述DSP系统。
DSP建模软件行业专家The MathWorks提供了一种称为Simulink的时序精度的图形化设计环境和一种称为MATLAB的数学建模语言,从而满足了这种二分法。
Simulink非常适合DSP设计的“系统”方面,包括输入输出接口和存储器数据流的控制与同步。
Simulink还以模块集的形式提供了一个丰富的预定义DSP算法集,可以用来构建DSP 系统。
不过,对于专用算法的建模来说,Simulink并非总是最有效的开发环境。
它不必要地增加了设计人员考虑时序精度的负担,并且强制用图形模块集而非简明的文本表达式来构建底层的算术运算和数组操作。
图1 显示系统控制和同步逻辑的Xilinx System Generator图有些DSP算法开发人员发现MATLAB语言最能满足他们喜欢的开发方式。
MATLAB具有针对信号处理、通信和小波处理的1000多种内置函数和工具箱扩展,为复杂算法的开发和调试提供了丰富且易用的环境。
Simulink利用一个嵌入式MATLAB模块将这两种建模环境统一起来,该模块允许MATLAB模型在Simulink内部仿真,再通过Real-Time Workshop编译成C代码后在DSP处理器上实现。
Xilinx System Generator for DSP是一种广泛公认的高效工具,用于在FPGA中创建DSP设计。
System Generator for DSP提供了基于Simulink的图形环境和Xilinx DSP核的预定义模块集,这同时满足了系统架构设计师和硬件设计人员的需要,前者需要把组件集成到设计中,而后者需要优化实现。
不过,System Generator for DSP缺少对基于MATLAB的设计流程的支持。
system generator 例子System Generator(SysGen)是一种MATLAB和Simulink工具,用于设计和模拟数字信号处理(DSP)系统,并生成相应的硬件描述,例如VHDL (VHSIC Hardware Description Language)。
SysGen通常与Xilinx的Vivado HLS(High-Level Synthesis)一起使用,以便将设计转换为硬件描述并在FPGA上实现。
以下是一个简单的System Generator 例子,其中使用了SysGen 和Vivado HLS。
该例子演示了如何创建一个加法器和乘法器,并通过SysGen 将其转换为硬件描述。
1.创建加法器和乘法器模型:•打开MATLAB,并在Simulink 中创建一个新的模型。
•使用SysGen Blockset 中的加法器和乘法器模块,将它们添加到模型中。
这些模块通常可以在Simulink 库中找到。
2.连接输入和输出端口:•连接加法器和乘法器的输入端口,并将结果连接到输出端口。
3.配置模块参数:•配置加法器和乘法器的参数,例如输入位宽、输出位宽等。
这些参数通常可以在模块的属性对话框中设置。
4.使用Vivado HLS 进行高级综合:•在Simulink 模型中,使用Vivado HLS Block 将设计转换为硬件描述。
•在Vivado HLS 中配置和运行高级综合。
5.生成硬件描述:•Vivado HLS 将生成一个硬件描述文件(通常是VHDL 文件)。
•这个生成的文件可以在Vivado 中使用,用于将设计实现到FPGA 上。
这只是一个简单的示例,SysGen 的使用范围远不止于此。
SysGen 通常用于更复杂的数字信号处理系统的设计,包括滤波器、调制器、解调器等。
使用SysGen 可以在高级层面上设计系统,然后将其转换为硬件描述以进行FPGA 实现。
system generator 例子全文共四篇示例,供读者参考第一篇示例:System Generator是一种基于图形化界面的工具,用于快速生成和测试数字信号处理(DSP)系统。
它通常与高级综合工具(HLS)结合使用,用于加速FPGA设计的开发过程。
System Generator的设计理念是使用户能够轻松地将各种模块组合在一起,快速搭建复杂的数字信号处理系统,而无需繁琐地编写代码。
为了更好地理解System Generator的工作原理和功能,我们可以通过一个具体的例子来展示其强大的实用性。
假设我们想要设计一个数字滤波器系统,用于对输入信号进行滤波处理。
我们可以通过System Generator来快速实现这一系统,而无需深入研究滤波器的原理和设计。
我们需要打开System Generator工具,并创建一个新的项目。
然后,在项目中添加一个数字信号发生器(Signal Generator)模块,用于产生我们的输入信号。
接着,我们添加一个滤波器模块,选择所需的滤波器类型和参数。
我们还可以通过System Generator提供的图形化界面对滤波器的参数进行调整,以达到滤波效果的优化。
接下来,我们将信号发生器和滤波器连接起来,构建整个系统。
通过System Generator提供的仿真功能,我们可以快速验证系统的功能和性能,查看滤波后的输出信号是否符合预期。
如果需要对系统进行优化或调整,也可以通过图形化界面进行操作。
除了设计和仿真功能,System Generator还提供了代码生成和硬件部署的功能。
一旦我们完成了系统的设计和验证,可以直接生成Verilog或VHDL代码,用于在FPGA上实现我们的数字滤波器系统。
System Generator还支持与Xilinx Vivado等FPGA开发环境的集成,便于用户进行硬件部署和验证。
System Generator是一种强大而友好的工具,能够帮助用户快速设计和验证数字信号处理系统。
通讯与网络Digital Space P .173基于System Generator 的信号处理快速原型设计刘叶盛 孙斯亮 王丽莉 刘庆 魏冬冬 上海航天电子技术研究所摘要:基于Simulink 开发平台,借助System Generator 设计工具,建立信号处理原型仿真系统。
该系统可以为产品需求分析,方案设计,算法验证,代码实现及测试,板级验证及回归迭代等全生命周期研制过程提供参考意义,开发效率高,可追溯性强,契合当前信号处理快速开发的设计需求。
关键词:System Generator 信号处理 原型设计引言:对于信号处理,软件无线电的思想是建立通用的硬件平台,将模数转换电路(A/D)尽量靠近天线,通过软件编程实现各种功能,解放硬件电路。
该思想对数字信号处理提出了更高的要求,原本由模拟电路实现的滤波、调制、解调、频率合成等信号处理算法均需由软件实现。
采用传统的开发方法时,复杂的信号处理算法给软件实现带来了较大难度;测试激励的产生需要专业的工具产生,为覆盖测试带来了难度;对于较复杂的系统,无论是后期测试还是迭代改进,维护的难度较大且极易出错。
基于原型实现的信号处理设计方法,系统原型建立完成后即可进行仿真验证,修改激励也更加便捷,并且可以利用丰富的信号分析工具进行过程监控(软件仿真测试一般仅有波形),极大的降低了软件的开发难度,提高了方案验证的效率。
1 System Generator 与原型仿真1.1System GeneratorSystem Generator 是进行数字信号处理开发的一种系统级(或算法级)设计工具,是DSP 高层系统设计与FPGA 实现之间的桥梁。
将FPGA 开发的一些模块嵌入到Simulink 库中,借助Simulink 提供的强大的高水平的运行环境,实现图形化设计和数字信号定点仿真。
System Generator支持自动代码生成,并且可以直接生成比特流文件,下载到FPGA 板卡进行硬件测试。