- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FPGA数字信号处理方法简介
基于FPGA的数字信号处理方法简介
1 引言
数字信号处理就是用 HYPERLINK /view/3627588.htm \t _blank 数值计算的方式对信号进行加工的理论和技术,主要研究有关数字滤波技术、离散变换快速算法以及谱分析方法。现场可编程门阵列(Field Programmable Gate Arrays, FPGA)以其丰富的逻辑资源和I/O引脚、低功耗、高可靠性以及可重构等特点,与通用DSP解决方案相比,FPGA器件在不牺牲灵活性的条件下,提供了更高的性能,逐步成为较为理想的实现平台。
FPGA的设计描述通常分为四个抽象级,由低到高依次为:物理级、寄存器传输级(Register TransferLevel, RTL)、行为级和系统级。传统的FPGA设计基于自顶向下设计方法采用硬件描述语言(Hardware Description Language, HDL)与Verilog HDL进行。随着FPGA在性能和密度上的发展十分迅猛,传统开发方法出现不足,高层次综合(High Level Synthesis, HLS)应运而生最近几年其相关技术日趋成熟且被广泛使用。这种高层次综合可以使算法和软件工程师们在无需拥有HDL和硬件知识的基础上,使用FPGA进行算法验证、移植和计算加速。
本文主要介绍基于FPGA的数字信号处理的传统设计方法、高层次综合设计VIVADO HLS、OpenCL、System Generator、DSP Builder以及NI专用LabVIEW FPGA的设计工具。
2 高层次设计方法
高层次综合的概念最早在20世纪70年代被提出,是在一定的约束下,将系统层和算法层转化成RTL级描述的方法和过程。系统层和算法层可以用相比于HDL更高级的编程语言,如Java、C、C++、Matlab等进行更加简洁、直观描述。为了便于设计者进行高层次、系统级的设计,所以需要将底层的综合过程交给开发工具进行。90年代中期的时候,Synopsys、Cadence和Mentor Graphics等EDA公司推出了商业化的、基于HDL语言的HLS开发工具,但是不成熟技术导致了市场化的失败。近年来,基于高级编程语言的HLS开发工具在解决了前一代开发工具的不足的基础上,迅速发展,已在FPGA设计的市场中占有了一席之地,基于高层次综合的FPGA设计也已经逐步进入市场化和商业化。
2.1 基于C/C++的工具简介
Xilinx VIVADO HLS 编译器为我们提供了与面向标准处理器或专用处理器的应用开发的编译器相类似的集成编译支持环??,Xilinx VIVADO HLS与其他各种处理器编译器在对C语言程序或C++语言程序的编译、分析和优化拥有相同的关键技术,而区别在于应用所面向的执行目标。
通过把FPGA作为执行目标,Xilinx VIVADO HLS使得软件开发工程师能够借助它来实现代码的优化,并且不受单一存储空间或者有限的开发资源这些开发瓶颈的限制,从而使得计算量密集型软件算法得以被实际应用。
Xilinx VIVADO HLS所使用的应用代码同其他处理器编译器一样面向的范畴一样,通过操作语句、条件语句、循环语句、以及函数等4个范畴来分析程序。
在HLS中,循环和函数之间的主要区别是相关的术语。系统的循环和函数并行执行。而循环中,因为在循环迭代和运算符间有一个清晰的结构差异,这种转换通常称为流水线。对函数而言,外循环和内循环相处于同一层次,这导致如果长期使用它可能会出现流水线混乱。在使用HLS时,我们可以避免这种混乱,因为函数调用执行的并行化可以使得数据流优化。
数据流优化指令使得HLS在给定的程序层次结构中对所有的函数创建独立的硬件模块。这些独立的硬件模块可以并行执行并且具有独立的同步数据传输过程。
除了Xilinx Vivado HLS外Altera公司针对自己的器件也有OpenCL工具进行对C等高级语言设计自动编译。
2.2 基于MATLAB的工具简介
Altera DSP Builder将The MathWorks MATLAB和Simulink系统级设计工具的算法开发、仿真和验证功能与VHDL综合、仿真和Altera开发工具整合在一起,实现了这些工具的集成。
DSP Builder在算法友好的开发环境中帮助设计人员生成DSP设计硬件表征,从而缩短了DSP设计周期。已有的MATLAB函数和Simulink模块可以和Altera DSP Builder模块以及Altera知识产权(IP) MegaCore功能相结合,将系统级设计实现和DSP算法开发相链接。DSP Builder支持系统、算法和硬件设计共享一个公共开发平台。
设计人员可以使用DSP Builder模块迅速生成Simulink系统建模硬件。DSP
您可能关注的文档
- 城市道路工程标准化项目建设实施方案绿化工程;雨水工程污水工程及给水工程管道安装;电力工程电信工程燃气工程路灯工程交通工程土建及预埋工程.doc
- 在肝胆胰恶性肿瘤治疗中应用.pptx
- 城市轨道交通车辆转向架结构分析毕业设计论文.docx
- 培养品牌意识是一种重要管理思想 英文文献及翻译.doc
- 培养小学生科学探究能力论文.doc
- 培养良好行为策略 ——行为矫正技术.ppt
- 培养幼儿自我控制实验.ppt
- 培养高中学生技术素养策略和研究.doc
- 培育和践行社会主义核心价值观培育和践行核心价值观几点思考.doc
- 培育中小企业核心竞争力.doc
- 场地脚手架工程施工方案(3篇).docx
- 2024年浙江省丽水市松阳县玉岩镇招聘社区工作者真题及参考答案详解一套.docx
- 2024年河南省郑州市惠济区古荥镇招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市淳安县文昌镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省台州市三门县小雄镇招聘社区工作者真题带答案详解.docx
- 2024年浙江省宁波市余姚市河姆渡镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省丽水市景宁畲族自治县雁溪乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市临安市板桥乡招聘社区工作者真题及答案详解一套.docx
- 2024年湖北省宜昌市点军区土城乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省台州市路桥区桐屿街道招聘社区工作者真题附答案详解.docx
文档评论(0)