
FPGA与DSP的区别如下:
1、硬件层面的不同。
在硬件层面,DSP是ASIC,如同CPU GPU一样,适宜于量产降低成本,缺点是(硬件)设计一旦确定,便不易于修改。而FPGA较灵活,可以通过硬件描述语言进行快速设计和改进,但成本较高,传统上讲用于ASIC的prototype设计。
2、软件层面的不同。
在软件层面上,给DSP写程序和给多核CPU写程序,给GPU写程序,没有太大区别,DSP有完善的C语言编译器。目前高端的FPGA中都集成了硬核DSP。
3、编程语言不同。
FPGA主要使用HDL,包括VHDl,Verilog,还有数模混合的描述语言Verilog-AMS等。DSP使用C,汇编语言编程。
4、 功能角度不同。
FPGA普遍用于实现数字电路模块,基本上能实现所有的数字电路,传统的数字功能模块,以及客户产品特定需求的数字处理模块。FPGA的IO桥接种类繁多,不同种类的级别的FPGA支持的IO标准和协议都不尽相同,但是这些IO的驱动能力或是电压都是可编程配置的。
一、准备阶段
1、了解开发时候的需求,AD采样、通讯、外设等等;
2、了解DSP所具有的硬件配置,硬件存储器资源、外设资源、通讯接口,方便初始化;
3、软件方案;
二、代码编写
1、文件框架,一般一种功能对应一个c文件和h文件,根据11需求来;不要只放在几个文件中,以方便维护。
2、函数框架,在对应文件中添加对应功能函数,函数只需要定义函数名;
3、往函数框架中添加代码。
(1)首先添加DSP器件相关程序,比如系统时钟配置,中断函数配置,中断函数;
(2)逐块添加算法代码,原则从易到难。
在现有的硬件基础上开发DSP软件大体步骤如下:
一、准备阶段
1、分析开发项目需求,即软件所需要具备的功能,如AD采样、通讯、外设控制等等;
2、了解硬件平台资源,如硬件存储器资源、外设IO资源、通讯接口等等,为DSP的初始化工作做准备的;
3、结合硬件资源和需求制定一个可行的软件方案;
二、代码编写阶段
代码编写因人而异,大体步骤:
1、搭建文件框架,一般一种功能对应一个C文件和H文件,根据11软件需求来;(特别提醒不要把所有代码都放在一个或几个文件里,不然哪怕注释得再清楚,在后期的调试和维护时都很费劲)
2、搭建函数框架,文件搭好后,在对应的文件中添加对应的功能函数,函数只需要定义函数名即可,如VoidSystemInit(){;};
3、函数框架也搭好后就可以开始添加代码了,首先是添加DSP器件相关程序,比如系统时钟配置,中断函数;I/O功能脚配置等;其次逐块添加算法代码,原则是从易到难,每个函数框架代码搭建完后最好都进行测试。
三、调试优化阶段
以上一块块功能测试正常后,就可以开始整体测试了,直至最终调试完成。
dsp芯片内部除外部接口(io,串口等)的cpu部分,相当于一个汽车的发动机。一个系列的各种dsp芯片一般由核加不同外部模块组成,核分为硬核和软核两类。
1、芯片,英文为Chip;芯片组为Chipset。芯片一般是指集成电路的载体,也是集成电路经过设计、制造、封装、测试后的结果,通常是一个可以立即使用的独立的整体。
2、“芯片”和“集成电路”这两个词经常混着使用,比如在大家平常讨论话题中,集成电路设计和芯片设计说的是一个意思,芯片行业、集成电路行业、IC行业往往也是一个意思。
dsp复位后从InitBoot处开始执行程序。根据资料显示,当DSP复位后,会从复位向量0x3FFFC0处取得复位向量,并跳转到InitBoot处开始执行,InitBoot会读GPIO84~87的值发现全为1判断为Flash启动方式。
以上就是关于请问FPGA与DSP有什么区别全部的内容,包括:请问FPGA与DSP有什么区别、设计DSP应用系统一般设计过程、DSP项目开发步骤_dsp开发是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)