请问FPGA与DSP有什么区别

请问FPGA与DSP有什么区别,第1张

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开发是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10115079.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存