学习dsp开发需要构建什么开发环境

如题所述

1、什么是DSP?简述DSPs的特点?简述DSPs与MCU、FPGA、ARM的区别?学习DSP开发需要哪些知识?学习DSP开发需要构建什么开发环境?(15分)

答:(1)DSP是Digital Signal Processing(数字信号处理的理论和方法)的缩写,同时也是Digital Signal Processor(数字信号处理的可编程微处理器)的缩写。通常流过器件的电压、电流信号都是时间上连续的模拟信号,可以通过A/D器件对连续的模拟信号进行采样,转换成时间上离散的脉冲信号,然后对这些脉冲信号量化、编码,转化成由0和1构成的二进制编码,也就是常说的数字信号。DSP能够对这些数字信号进行变换、滤波等处理,还可以进行各种各样复杂的运算,来实现预期的目标。

(2)DSP既然是特别适合于数学信号处理运算的微处理器,那么根据数字信号处理的要求,DSP芯片一般具有下面所述的主要特点:

1)程序空间和数据空间分开,CPU可以同时访问指令和数据;

2)在一个指令周期内可以完成一次乘法和一次加法运算;

3)片内具有快速RAM,通常可以通过独立的数据总线在程序空间和数据空间同时访问;

4)具有低开销和无开销循环及跳转的硬件支持;

5)具有快速的中断处理和硬件I/O支持;

6)可以并行执行多个操作;

7)支持流水线操作,使得取址、译码和执行等操作可以重复执行。

(3)DSP采用的是哈佛结构,数据空间和存储空间是分开的,通过

独立的数据总线在数据空间和程序空间同时访问。而MCU采用的是冯·诺依曼结构,数据空间和存储空间共用一个存储器空间,通过一组总线(地址总线和数据总线)连接到CPU)。很显然,在运算处理能力上,MCU不如DSP;但是MCU价格便宜,在对性能要求不是很高的情况下,还是很具有优势的。

ARM是Advanced RISC(精简指令集)Machines的缩写是面向低运算市场的RISC微处理器。ARM具有比较强的事务管理功能,适合用来跑跑界面、操作系统等,其优势主要体现在控制方面,像手持设备90%左右的市场份额均被其占有。而DSP的优势是其强大的数据处理能力和较高的运算速度,例如加密/解密、调制/解调等。

FPGA是Field Programmable Gate Array(现场可编程门阵列)的缩写,它是在PAL、GAL、PLD等可编程器件的基础上进一步发展的产物,是专用集成电路中集成度最高的一种。FPGA采用了逻辑单元阵列LCA(Logical Cell Array)的概念,内部包括了可配置逻辑模块CLB、输入/输出模块IOB、内部连线三个部分。用户可以对FPGA内部的逻辑模块和I/O模块进行重置配置,已实现用户自己的逻辑。它还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改。使用FPGA来开发数字电路,可以大大缩短设计时间,减少PCB面积,提高系统的可靠性;同时FPGA可以用VHDL或Verilog HDL来编程,灵活性强。由于FPGA能够进行编程、除错、再编程和重复操作,因此可以充分地进行设计开发和验证。当电路有少量改动时,更能显示出FPGA的优势,其现场编程能力可

以延长产品在市场上的寿命,而这种能力可以用来进行系统升级和除错。但价格比较高。

(4)无论学习哪一款微处理器,无关乎两个部分:一个是硬件,一个是软件。硬件部分,最好有过MCU或者ARM之类相关微处理器的开发经验,因为硬件上,各个处理器之间是有许多共同点的,设计时处理的方法很多是一样的。软件部分,需要会C或者C++,当然,如果会汇编更好。除了这两方面的技能之外,如果在信号处理理论方面有一些基础,例如知道时域与频域、s域、z域的变换,知道FFT、各种数字滤波器的知识。

(5)CCS(Code Composer Studio)是开发DSP时所需的软件开发环境,即编写、调试DSP代码都需要在CCS软件中进行。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-01-04
Win64环境下配置DSP开发环境由于项目需要开发DSP程序,我在机器上配置了CCS4.2.4+XDS560PlusEmulator的开发环境。
DSP:数字信号处理就是用数值计算的方式对信号进行加工的理论和技术,它的英文原名叫digital signal processor,简称DSP,即数字信号处理器。数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。因此在进行数字信号处理之前需要将信号从模拟域转换到数字域,这通常通过模数转换器实现。而数字信号处理的输出经常也要变换到模拟域,这是通过数模转换器实现的。
相似回答