电子发烧友网 > 可编程逻辑 > 正文

基于System Generator for DSP工具实现FPGA系统的设计方案

2020年09月24日 20:11 次阅读

近年来,在数字通信、网络、视频和图像处理领域,FPGA已经成为高性能数字信号处理系统的关键元件.FPGA的逻辑结构不仅包括查找表、寄存器多路复用器存储器,而且还有快速加法器、乘法器和I/O处理专用电路.FPGA具有实现高性能并行算法的能力,是构成高性能可定制数据通路处理器(数字滤波、FFT)的理想器件.如Virtex-II Pro FPGA包含高性能的可编程架构、嵌入式PowerPC处理器和3.125Gbps收发器等.

基于System Generator for DSP工具实现FPGA系统的设计方案

但是,FPGA在数字信号处理领域的广泛应用受限于几个因素.首先,DSP开发人员不熟悉硬件设计,尤其是FPGA.他们使用Matlab验证算法,运用C语言或汇编语言编程,通常不会使用硬件描述语言(VHDL或Verilog)实现数字设计.其次,虽然VHDL语言也提供了许多高层次的语言抽象,但是基于并行硬件系统的VHDL程序设计与基于微处理器的串行程序设计有很大的不同.

基于以上原因,Xilinx公司开发了基于Matlab的System Generator for DSP工具.System Generator for DSP是Simulink中一个基于FPGA的信号处理建模和设计工具.该工具可以将一个DSP系统表示为一个高度抽象的模块,并自动将系统映射为一个基于FPGA的硬件方案.重要的是,该System Generator for DSP实现这些功能并没有降低硬件性能.

1 System Generator for DSP的特点

Simulink为DSP系统提供了强有力的高层次建模环境,可大量应用于算法开发和验证.System Generator for DSP作为Simulink的一个工具箱很好地体现了这些特性,同时又可以自动将设计转换为可综合的高效硬件实现方案.该硬件实现方案忠实于原始设计,因此设计模型与硬件实现在采样点(在Simulink中定义)是一一对应的.通过使用Xilinx精心设计的IP(intellectual property)核可以使硬件方案具有较小的延迟和体积.虽然System Generator中的IP模块是经过功能抽象的,但是对于熟悉FPGA的设计者来说,该模块也具有直接访问底层硬件细节的能力.例如,可以指定System Generator乘法器模块使用Virtex-II系列FPGA中的专用高速乘法器元件,用户定义的IP模块也能够作为黑盒子插入系统之中,等等.

使用System Generator for DSP实现系统设计的主要特点有:

●在Simulink中实现FPGA电路的系统级建模,并自动生成硬件描述语言.

●自动生成Modelsim测试程序,支持软硬件仿真.

●支持用户创建的Simulink模块.

●使用Xilinx FPGA自动实现硬件系统.支持的Xilinx FPGA系列包括Spartan-II、Spartan-IIE、Spar-tan-3、Virtex、Virtex-E、Virtex-II、Virtex-II Pro.

2 使用System Generator for DSP实现系统级建模

传统的DSP系统开发人员在设计一个DSP系统时,一般先研究算法,再使用Matlab或C语言验证算法,最后由硬件工程师在FPGA或DSP上实现并验证.典型的DSP系统设计流程如下:

(1) 用数学语言描述算法.

(2) 设计环境中使用双精度数实现算法.

(3) 将双精度运算变为定点运算.

(4) 将设计转换为有效的硬件实现.

使用System Generator for DSP可以简化这一过程.设计人员先在Matlab中对系统进行建模和算法验证,经过仿真后便可以直接将系统映射为基于FPGA的底层硬件实现方案.可用Simulink提供的图形化环境对系统进行建模.System Generator for DSP包括被称为Xilinx blockset的Simulink库和模型到硬件实现的转换软件,可以将Simulink中定义的系统参数映射为硬件实现中的实体、结构、端口、信号和属性.另外,System Generator可自动生成FPGA综合、仿真和实现工具所需的命令文件,因此用户可以在图形化环境中完成系统模型的硬件开发.图1为使用System Generator for DSP设计系统的流程图.

在Matlab中,我们可以通过Simulink的库浏览器使用Xilinx blockset库中的模块,Xilinx blockset库中的模块可以与Simulink其它库中的模块自由组合.Xilinx blockset库中最重要的模块是System Gen-erator,利用该模块可完成系统级设计到基于FPGA的底层硬件设计的转换工作.可以在System Generator模块的属性对话框中选择目标FPGA器件、目标系统时钟周期等选项.System Generator将Xilinx blockset中的模块映射为IP库中的模块,接着从系统参数(例如采样周期)推断出控制信号和电路,再将Simulink的分层设计转换为VHDL的分层网表,之后,System Generator即可调用Xilinx CORE Generator和VHDL模拟、综合、实现工具来完成硬件设计.

由于一般的FPGA综合工具不支持浮点数,因此System Generator模块使用的数据类型为任意精度的定点数,这样可以实现准确的硬件模拟.由于Simulink中的信号类型是双精度浮点数,因此在Xil-inx模块和非Xilinx模块之间必须插入Gateway In block和Gateway Out block模块.通常Simulink中的连续时间信号在Gateway In block模块中进行采样,同时该模块也可将双精度浮点信号转换为定点信号,而Gateway Out block模块则可将定点信号转换为双精度浮点信号.大部分Xilinx模块能够根据输入信号类型推断输出信号的类型.如果模块的精度参数定义为全精度,则模块将自动选择输出信号类型以保证不损失输入信号精度,并自动进行符号位扩展和补零操作.用户也可以自定义输出信号类型来进行精度控制.

3 使用中需注意的问题

在FPGA系统设计中,时钟的设计十分重要.因此必须正确理解System Generator中的时钟和FPGA硬件时钟之间的关系.Simulink中没有明确的时钟源信号,模块在系统参数中定义的采样周期点进行采样.硬件设计中的外部时钟源对时序逻辑电路十分重要.在System Generator模块中,通过定义Simulink System Period和FPGA System Clock Period参数可以建立Simulink采样周期和硬件时钟间的关系,也可通过设置这些参数来改变Simulink中模拟时间和实际硬件系统中时间的比例关系.Simulink的系统周期一般是各模块采样周期的最大公约数.FPGA的硬件时钟是单位为ns的硬件时钟周期.例如,若Simulink中有两个模块,采样周期分别为2s和3s,而FPGA系统时钟周期为10ns,则Simulink系统周期应该为两个模块采样周期的最大公约数即为1s.这意味着Simulink中的1s对应实际硬件系统的10ns.在生成硬件系统前,System Generator将自动检查用户定义的Simulink系统周期参数是否与系统中模块的采样周期相冲突,如果冲突,则提示用修改Simulink系统周期参数.

有些情况会导致System Generator模块产生不确定数(NaN-not a number).如在双端口RAM模块中,两个端口同时对模块中的某一地址进行写操作时,该地址中的数据将被标记为NaN.如果模块中有不确定数出现,则表明该模块的最终硬件实现将会有不可预测的行为,当Simulink进行仿真时,System Generator将会捕捉该错误.

4 应用实例

图2是一个图像处理应用实例的系统实现框图.该应用实例使用5×5的二维FIR滤波器完成图像增强预处理.该系统将输入图像分别延迟0×N(N为输入图像宽度)、1×N、2×N、3×N、4×N个采样点后输入5个Line Buffer,数据在Line Buffer中缓存后并行输入5个5抽头的MAC FIR滤波器.滤波器系统存储于FPGA的块RAM中,图像数据经滤波器处理后输出.图3为Line Buffer实现框图,图4为5×5滤波器框图.

责任编辑:gt

下载发烧友APP

打造属于您的人脉电子圈

关注电子发烧友微信

有趣有料的资讯及技术干货

关注发烧友课堂

锁定最新课程活动及技术直播

电子发烧友观察

一线报道 · 深度观察 · 最新资讯
收藏 人收藏
分享:

评论

相关推荐

三星将生产高通骁龙875处理器

这样,三星除了获得了可观的收入来源外,还获得了成为第一家在其智能手机上使用高通Snapdragon系....
发表于 2020-09-25 16:49 35次阅读
三星将生产高通骁龙875处理器

基于TI系列浮点DSP芯片实现二次Bootloa...

随着DSP(数字信号处理器)系统的广泛应用,其程序规模也随之不断扩大,使用芯片本身自带的Boot-l....
发表于 2020-09-25 16:49 19次阅读
基于TI系列浮点DSP芯片实现二次Bootloa...

适应于C6000系列DSP器件的DATA直接烧写...

自加载后DSP能够正常运行,关键是Flash中原程序代码的正确烧写。CCS编译生成的.out格式文件....
发表于 2020-09-25 16:35 19次阅读
适应于C6000系列DSP器件的DATA直接烧写...

英特尔新推出的凌动 x6000E系列 支持工业互...

通过将通用无缝的开发者体验与英特尔边缘软件中心的工业边缘洞见软件包、英特尔OpenVINO工具套件分....
发表于 2020-09-25 16:00 48次阅读
英特尔新推出的凌动 x6000E系列 支持工业互...

CPLD和FPGA的基本结构

本文主要介绍CPLD和FPGA的基本结构。 CPLD是复杂可编程逻辑器件(Complex Progr....
发表于 2020-09-25 14:56 14次阅读
CPLD和FPGA的基本结构

新型Ryzen和Athlon 3000 C系列处...

AMD将Ryzen C系列处理器用于需要更多处理能力并具有Wi-Fi 6和蓝牙等现代功能的高端Chr....
发表于 2020-09-25 14:42 87次阅读
新型Ryzen和Athlon 3000 C系列处...

拆解世界上第一颗FPGA芯片!

素材来源:EETOP 作者:Ken Shirriff 现场可编程门阵列(FPGA)可以实现任意数字逻....
发表于 2020-09-25 14:35 87次阅读
拆解世界上第一颗FPGA芯片!

英特尔针对物联网市场即将推出多款处理器

在英特尔三位副总裁发表开场演讲,并简单介绍了今天要推出的新品后,英特尔物联网事业部中国区的高管陈伟、....
发表于 2020-09-25 14:23 72次阅读
英特尔针对物联网市场即将推出多款处理器

【每日推荐】单片机设计要点须知,多的是你不知道的...

可编程逻辑器件和单片机结合的滤波器模块设计 以 单片机 和 可编程逻辑 器件( FPGA )为控制核....
发表于 2020-09-25 14:05 76次阅读
【每日推荐】单片机设计要点须知,多的是你不知道的...

【每日推荐】单片机设计要点须知,多的是你不知道的事!

以单片机和可编程逻辑器件(FPGA)为控制核心,设计了一个程控滤波器,实现了小信号程控放大、程控调整滤波器截...
发表于 2020-09-25 13:39 0次阅读
【每日推荐】单片机设计要点须知,多的是你不知道的事!

关于芯片设计所面临的问题和挑战

芯片不是封装类型,它是包装架构的一部分。利用芯片,模具可以集成到现有的封装类型中,例如2.5D/3D....
发表于 2020-09-25 12:02 214次阅读
关于芯片设计所面临的问题和挑战

编程逻辑器件和单片机结合的滤波器模块设计

以单片机和可编程逻辑器件(FPGA)为控制核心,设计了一个程控滤波器,实现了小信号程控放大、程控调整滤波器截止...
发表于 2020-09-25 11:55 0次阅读
编程逻辑器件和单片机结合的滤波器模块设计

FPGA的8大技术要点

                         ...
发表于 2020-09-25 11:45 0次阅读
FPGA的8大技术要点

Microchip发布业界首款基于 RISC-V 指令集架构的 SoC FPGA 开发工具包

                         ...
发表于 2020-09-25 11:39 0次阅读
Microchip发布业界首款基于 RISC-V 指令集架构的 SoC FPGA 开发工具包

FPGA VS ASIC,究竟何时能取代后者?

一、介绍 FPGA(Field-Programmable Gate Array),即现场可编程门阵列,是在 PAL、GAL、CPLD ...
发表于 2020-09-25 11:34 0次阅读
FPGA VS ASIC,究竟何时能取代后者?

MCU正在承担起进行机器学习的能力?

工作负载也在发生变化。“对于移动应用处理器来说,这是第一大批量产品,一般架构似乎已经在8个核心的集群....
发表于 2020-09-25 11:26 102次阅读
MCU正在承担起进行机器学习的能力?

基于FPGA,一种高效的宽带数字接收机及其FPGA实现pdf和设计中的编程技巧

FPGA设计中的编程技巧 随着电子技术的发展,芯片的复杂程度越来越高,人们对数万门乃至数百万门电路设计的需求...
发表于 2020-09-25 11:11 0次阅读
基于FPGA,一种高效的宽带数字接收机及其FPGA实现pdf和设计中的编程技巧

基于AT91RM9200处理器和操作系统实现图形...

嵌入式产品如 PDA、机顶盒、WAP 手机等迅速地普及,给广大的非专业用户带来了极大方便。同时,这些....
发表于 2020-09-25 10:00 49次阅读
基于AT91RM9200处理器和操作系统实现图形...

FPGA程序加载与固化

前言 操作环境: Windows 7 64bitISE 14.7 FPGA程序加载与固化 将开发板通过Xilinx FPGA JTAG下...
发表于 2020-09-25 09:57 0次阅读
FPGA程序加载与固化

基于ARM9嵌入式处理器实现中频磁场测量系统的应...

随着科技的发展,嵌入式操作系统在越来越多的领域发挥着重要的作用,目前已成为产品技术水平的标志之一。其....
发表于 2020-09-25 09:43 265次阅读
基于ARM9嵌入式处理器实现中频磁场测量系统的应...

FPGA数字信号处理--数字混频

以简单的数字混频为例,介绍在FPGA程序设计中很重要的二进制原码、补码;有符号数、无符号数的问题。本文不是像课...
发表于 2020-09-25 09:42 0次阅读
FPGA数字信号处理--数字混频

2023年台积电2纳米工艺芯片的良率将达到90%

台积电的2nm工艺将采用差分晶体管设计。该设计被称为多桥沟道场效应(MBCFET)晶体管,它是对先前....
发表于 2020-09-25 09:27 156次阅读
2023年台积电2纳米工艺芯片的良率将达到90%

可编程逻辑器件和单片机结合的滤波器模块设计

  以单片机和可编程逻辑器件(FPGA)为控制核心,设计了一个程控滤波器,实现了小信号程控放大、程控调...
发表于 2020-09-25 09:26 0次阅读
可编程逻辑器件和单片机结合的滤波器模块设计

基于TMS320F2812数字信号处理器实现电压...

IEC 6100-4-15和GB 123262—2000给出了完整的闪变测试系统结构框图,以及有关反....
发表于 2020-09-24 20:50 106次阅读
基于TMS320F2812数字信号处理器实现电压...

基于FPGA器件FLEX10k30A实现成形滤波...

根据Nyquist第一准则,基带信号成形能够消除码间串扰的影响。随着超高速数字集成电路的发展,成形滤....
发表于 2020-09-24 19:57 53次阅读
基于FPGA器件FLEX10k30A实现成形滤波...

基于DSP芯片TMS320C6713实现吉他识音...

指弹吉他是一种吉他加花的演奏方式,是音乐界极为新兴的项目,这种弹奏方法与古典吉他的不同之处在于可广泛....
发表于 2020-09-24 19:57 74次阅读
基于DSP芯片TMS320C6713实现吉他识音...

猎户座处理器是哪个国家的_猎户座处理器和骁龙处理...

猎户座处理器属于韩国,猎户座处理器,即猎户座CPU,是三星自主研发的CPU,各项指标都很靠前,属于一....
发表于 2020-09-24 17:48 248次阅读
猎户座处理器是哪个国家的_猎户座处理器和骁龙处理...

FPGA实现HDMI编解码的设计方案和主要思路

HDMI,高清晰度多媒体接口(英文:High Definition Multimedia Inter....
发表于 2020-09-24 17:46 63次阅读
FPGA实现HDMI编解码的设计方案和主要思路

基于数字信号处理器实现调度器的系统设计

添加任务函数首先开始检查任务队列sTask SCH_tasks_G[SCH_MAX_TASKS]记录....
发表于 2020-09-24 17:40 94次阅读
基于数字信号处理器实现调度器的系统设计

5G背景下对FPGA和ASIC市场有什么影响?

另外,华为海思也在自研5G基站芯片,特别是华为天罡芯片,可为AAU性能带来极大的提升,可实现基站部署....
发表于 2020-09-24 17:22 183次阅读
5G背景下对FPGA和ASIC市场有什么影响?

小芯片将来半导体科技发展的重要项目

不同用途的半导体元件,能够使用的最先进半导体制程不尽相同。举例而言,记忆体目前最先进制程为14纳米左....
发表于 2020-09-24 17:22 260次阅读
小芯片将来半导体科技发展的重要项目

探讨全球首个数据流AI芯片的背后

“为了让用户获得更高的性能,除了持续提高峰值性能以外,芯片利用率的提升会是一个更好的方案,因为这会在....
发表于 2020-09-24 17:10 252次阅读
探讨全球首个数据流AI芯片的背后

本土半导体企业或将迎来最好的发展机会?

虽然,这些芯片厂商有了飞速的发展,但我们也看到,长期盘踞在行业第一的巨头们依然占有市场中的绝大部分份....
发表于 2020-09-24 16:37 269次阅读
本土半导体企业或将迎来最好的发展机会?

台积电2nm GAA工艺研发进度提前,有望202...

本周,围绕台积电的2nm先进制程传来利好消息。其2nm GAA工艺研发进度提前,目前已经结束了路径探....
发表于 2020-09-24 16:04 150次阅读
台积电2nm GAA工艺研发进度提前,有望202...

英特尔推出新的10nm Atom嵌入式CPU

所有这些CPU都具有三个集成的2.5 GbE MAC,所有这些都可以启用以实现对时间敏感的联网。内核....
发表于 2020-09-24 15:58 354次阅读
英特尔推出新的10nm Atom嵌入式CPU

预计Q3季度台积电半导体营收将创历史新高

根据市调机构IC Insights最新预估,受惠於5G智能手机及电信装置销售动能畅旺,带动应用处理器....
发表于 2020-09-24 15:33 167次阅读
预计Q3季度台积电半导体营收将创历史新高

意法半导体推出新一代BlueNRG系列的专用网络...

作为BlueNRG系列的专用网络协处理器产品,BlueNRG-2N现已量产,并已纳入意法半导体的10....
发表于 2020-09-24 14:59 200次阅读
意法半导体推出新一代BlueNRG系列的专用网络...

Intel发布采用10nm++工艺的处理器产品,...

联想首款AMD 64核心撕裂者工作站登陆中国;京东方收购中电熊猫8.5代/8.6代液晶生产线。
发表于 2020-09-24 14:36 163次阅读
Intel发布采用10nm++工艺的处理器产品,...

2022年AMD Zen4处理器会升级到5nm工...

AMD在Zen2上一大创新就是Chiplets小芯片设计,将CPU核心与IO核心分离,其中CPU核心....
发表于 2020-09-24 14:24 89次阅读
2022年AMD Zen4处理器会升级到5nm工...

光模块DSP内部的光层测试与OSNR测试的区别

而对于城域大容量数据连接或着长距离传输接口,也就是通常所说的线路侧接口,传统的做法是各个设备厂家自行....
发表于 2020-09-24 14:23 114次阅读
光模块DSP内部的光层测试与OSNR测试的区别

三星Exynos 2100跑分成绩出炉,勉强追上...

苹果A14处理器已经先行卡位5nm,不过此次的性能增幅并不大,当然,考虑到是站在巨人A13的肩膀上,....
发表于 2020-09-24 14:18 389次阅读
三星Exynos 2100跑分成绩出炉,勉强追上...

五款专门针对Chromebook设计的基于Zen...

新的AMD Ryzen 7 3700C和Ryzen 5 3500C移动处理器基于Zen +架构,而R....
发表于 2020-09-24 14:12 98次阅读
五款专门针对Chromebook设计的基于Zen...

贸泽电子与iWave Systems签订分销协议...

 iWave的Xilinx ZU19/17/11 Zynq UltraScale+ MPSoC So....
发表于 2020-09-24 14:12 238次阅读
贸泽电子与iWave Systems签订分销协议...

应用DSP的异步电机直接转矩控制系统

1 引 言     直接转矩控制是一种高性能的交流调速技术,它直接在定子坐标系下分析交流电机的数学模型,控...
发表于 2020-09-24 13:57 0次阅读
应用DSP的异步电机直接转矩控制系统

康佳特推出基于英特尔凌动® x6000E系列处理...

康佳特高级产品经理Jürgen Jungbauer表示:“结合可靠的实时运作、实时连接和实时虚拟机监....
发表于 2020-09-24 13:56 168次阅读
康佳特推出基于英特尔凌动® x6000E系列处理...

iPad和Apple Watch两个产品线新品的...

北京时间9月16日,苹果通过线上发布会正式推出了iPad和Apple Watch两个产品线的新品。其....
发表于 2020-09-24 12:02 312次阅读
iPad和Apple Watch两个产品线新品的...

Kneron的下一代AI SoC面向低功率边缘和...

Kneron首席执行官Albert Liu 在之前的一次采访中对EE Times表示,“我们将主流的....
发表于 2020-09-24 12:01 231次阅读
Kneron的下一代AI SoC面向低功率边缘和...

S3c2440处理器中nor flash启动和n...

要知道这一点,首先要明白nandflash和norflash的区别,首先,norflash是随机存储....
发表于 2020-09-24 11:35 372次阅读
S3c2440处理器中nor flash启动和n...

基于FPGA的多时钟域和异步信号处理解决方案

有一个有趣的现象,众多数字设计特别是与FPGA设计相关的教科书都特别强调整个设计最好采用唯一的时钟域....
发表于 2020-09-24 10:20 62次阅读
基于FPGA的多时钟域和异步信号处理解决方案

AMD加速甩掉14nm工艺,IO核心有望使用台积...

去年AMD推出了7nm Zen2架构的锐龙、霄龙处理器,这是首款7nm工艺的x86处理器。不过严格来....
发表于 2020-09-24 10:12 61次阅读
AMD加速甩掉14nm工艺,IO核心有望使用台积...

基于在S3C2410处理器平台上实现Window...

本文分析了嵌入式操作系统Windows CE.NET的特点,并利用工具Platform Builde....
发表于 2020-09-24 10:03 187次阅读
基于在S3C2410处理器平台上实现Window...

美国微芯科技公司宣布推出名为Icicle 的开发...

免费和开源的 RISC-V 指令集架构(ISA)的应用日益普遍,推动了经济、标准化开发平台的需求,该....
发表于 2020-09-24 09:37 134次阅读
美国微芯科技公司宣布推出名为Icicle 的开发...

甲骨文公布最新的云基础设施路线图

全新X9 Generation HPC云实例预计将于2021年初上市,届时将为客户提供用于快速信息传....
发表于 2020-09-24 09:31 156次阅读
甲骨文公布最新的云基础设施路线图

Realme C17终于正式上市!有四个后置摄像...

Realme C17的核心是高通的Snapdragon 460处理器。该1.8 GHz处理器随附6 ....
发表于 2020-09-23 17:00 96次阅读
Realme C17终于正式上市!有四个后置摄像...

全新的华为Mate40系列即将开启全球认证?

近日,有媒体报道称,英特尔已获得向华为供货许可。21日晚间,中国证券报向英特尔方面求证,英特尔回复:....
发表于 2020-09-23 16:48 164次阅读
全新的华为Mate40系列即将开启全球认证?

AMD计划通过RX 6000系列再次进入游戏领域

该公司很长时间以来一直未能在屏幕利润上获得大幅度的增长,该公司计划通过RX 6000系列再次进入游戏....
发表于 2020-09-23 16:36 191次阅读
AMD计划通过RX 6000系列再次进入游戏领域

等待EMUI 10.1更新的P30 Lite用户...

P30 Lite的屏幕上使用了落槽设计。此外,他的屏幕尺寸宣布为6.15英寸。让我们提醒您,此产品由....
发表于 2020-09-23 16:28 113次阅读
等待EMUI 10.1更新的P30 Lite用户...

预计:到2022年射频半导体市场规模将达到16亿...

由于基站越来越多地用到了多天线MIMO技术,这对PA提出了更多需求。预计到2022年,4G/ 5G基....
发表于 2020-09-23 16:11 136次阅读
预计:到2022年射频半导体市场规模将达到16亿...