首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
DSP技术
» 基于FPGA设计DSP的实践与改进设计
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
基于FPGA设计DSP的实践与改进设计
发短消息
加为好友
苹果也疯狂
当前离线
UID
852722
帖子
10369
精华
0
积分
5185
阅读权限
90
在线时间
277 小时
注册时间
2011-8-30
最后登录
2016-7-18
论坛元老
UID
852722
1
#
打印
字体大小:
t
T
苹果也疯狂
发表于 2015-8-31 16:07
|
只看该作者
基于FPGA设计DSP的实践与改进设计
处理器
,
控制器
,
通用
,
开发
当设计的系统需要对数字信号进行处理时,常采用通用 DSP(Digital Signal Process)处理器,这样的设计方案通用性好,且还有各种较为成熟的 DSP算法可以参考。但是,这类方案通常是双核设计,即采用通用控制器(MCU)加上通用 DSP处理器实现,在实现系统时开发的复杂程度、难度都较大,也难以满足定制特殊处理的需要。为了解决这些问题,人们开始寻求新的设计方案,基于通用处理器加上FPGA(大规模可编门阵列)的架构方案逐渐成为主流,在新的方案中通用控制器完成控制和管理功能,专用的数字信号处理和组合逻辑功能由 FPGA实现,使得设计开销与复杂程度明显降低。
1 现行设计流程的不足
使用“MCU+FPGA”架构方案的开发流程如图1所示。系统的设计之初是先由系统结构设计小组制定出系统模型方案,并确定模型仿真正确之后将系统结构的设计方案提交给FPGA设计人员,并依据系统模型用硬件描述语言创建系统同时创建测试平台,比较系统级仿真结果与模型设计是否相符,当不相符时则需要进行修改,并重新进行仿真验证。在这种流程的开发中必定会存在很多的迭代与间歇。
图1传统解决方案的开发流程
分析其原因在于系统结构设计人员与 FPGA设计人员的工作有重复与制约性。二者的工作同样是进行系统设计,并且都要进行仿真,只不过前者是进行系统的软件仿真,后者进行系统的硬件仿真。另外系统的建立需要几位工程师的协同工作。如果当 FPGA设计人员验证出系统设计有误时,还要回转给系统结构设计人员等待修改完再重新进行硬件系统设计与仿真。
2 设计流程的改进
2.1 EDA设计工具
1) MATLAB的 Simulink环境
MATLAB是 MathWorks公司开发的功能强大的数学分析工具。并且被广泛应用于科学计算和工程计算中。Simulink是基于 MATLAB平台推出的一个强大的动态系统仿真环境。它以图形化模式进行系统建模仿真,可以快速完成系统的设计。并且具有强大的代数、微分等模型系统的求解器。
2) DSP Builder
DSP Builder是 Altera公司开发了基于 Simulink开发的 DSP设计工具。在 Simulink中作为一个工具箱出现。这样使得用 FPGA设计DSP系统完全可以通过 Simulink的图形化界面进行,只要简单地进行 DSP Builder工具箱的模块调用即可。从而使得一个复杂的电子系统设计变得相当容易而且直观。同时加速了 FPGA实现DSP 的开发流程。
2.2 改进开发流程
采用上述 EDA设计工具使得在系统在设计阶段,由系统工程师负责系统的模型设计,并且在软件的辅助下,进行硬件描述语言的代码自动生成,最终可以下载到 FPGA中检验设计效果。即将系统结构设计人员与 FPGA设计人员的工作合并从而改进的设计流程。如图2所示。
图2 改进的开发流程
设计流程的开始是系统结构设计人员基于 Simulink使用 DSP Builder工具箱提供的模块建立系统模型。工具箱中的模块涵盖了算术和存储功能,并且对其技术参数、数据格式、数据类型和总线宽度等属性进行设置。系统模型设计完成后就进入仿真环节。这是基于系统的算法级仿真,设计者甚至不用关心目标硬件系统的属性。如果仿真结果没有得到预期设计的结果,可以很快通过修改模型进行调整。当仿真结束后使用 Signal Compiler模块进行系统模型的 Simulink模型文件(.mdl文件)到硬件描述语言的转换。这个过程将自动生成硬件描述语言的代码。之后通过综合以后产生出原子级网表文件(底层电路描述文件)。然后调用 Quartus II 的编译器生成可以下载的门级网表文件,最后下载到 FPGA上就实现了 DSP系统的硬件化过程。操作流程如图3所示。
图3 操作流程
3 实践与分析
3.1 AM调制模型的 FPGA实现
3.1.1 AM调制原理
调制器与解调器是通信设备中的重要部件。所谓调制,就是用调制信号去控制载波某个参数的过程。相关的术语如下:
·调制信号:由原始信号转变成的低频信号,可以是模拟信号,也可是数字信号。通常用数学符号uΩ表示。
·载波:未受调制的高频震荡信号。载波可以是正弦波也可以是非正弦波(方波、三角波、锯齿波)。用uC表示。
·已调波:受调制后的振荡波,具有调制信号的特征。
设载波电压为:
uC =UC cosωct (1)
调制电压为:
uΩ= UΩ cosΩt (2)
3.1.2 模型建立
基于本文上述的理论建立出 AM调幅模型。其中的两个子系统分别是用上述的 DDS模型建立的载波与调制波模块,在 Simulink中得到仿真结果如图4所示。
图4 AM调幅模型仿真结果
3.2 将模型文件转化为硬件描述语言
当 DSP Builder模型与仿真都正确后就可以进入模型向硬件描述语言的过程了。加入Signal Compiler模块,点击执行将模型文件转化为硬件描述语言。转换后 DSP Builder的Signal Compiler模块会自动生成 Quartus II的工程,其中的代码已经依据模型自动生成并建立了顶层模块。如图5。增加相应的输入与输出,锁定引脚后就可以下载了。
图5 生成的模型顶层结构
下载到 FPGA中,连接示波器,观察到如图6所示图像。
图6 在示波器中的AM调制模型信号图像
4 结语
从实践结果和系统的总体设计方案可以看出,改进的设计流程使得设计人员可以借助Simulink进行灵活的系统模型设计并且可以通过 MATLAB强大的计算能力进行系统级的仿真。由DSP Builder进行硬件描述语言的自动生成让设计者可以更加专注于系统的整体设计,提高了开发效率和系统建立质量。
本文作者创新点:引入EDA设计工具对现行的DSP系统设计流程进行改进,使DSP系统开发效率得到明显提高。
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议