ARM与FPGA区别

  • 格式:doc
  • 大小:54.50 KB
  • 文档页数:4

现在有四个方向,linux,ARM,FPGA,DSP.如果我想学偏硬一点的,我应该选哪个呢,麻烦再给我讲讲他们之间的区别。谢谢了

最佳答案

[size=2]DSP(digital singnal processor)是一种独特的微处理器,有自己的完整指令系统,是以数字信号来处理大量信息的器件。一个数 字信号处理器在一块不大的芯片内包括有控制单元、运算单元、各种寄存器以及一定数量的存储单元等等,在其外围还可以连接若干存储器,并可以与一定数量的外 部设备互相通信,有软、硬件的全面功能,本身就是一个微型计算机。DSP采用的是哈佛设计,即数据总线和地址总线分开,使程序和数据分别存储在两个分开的 空间,允许取指令和执行指令完全重叠。

也就是说在执行上一条指令的同时就可取出下一条指令,并进行译码,这大大的提高了微处理器的速度 。另外还允许在程 序空间和数据空间之间进行传输,因为增加了器件的灵活性。其工作原理是接收模拟信号,转换为0或1的数字信号,再对数字信号进行修改、删除、强化,并在其 他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器, 是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。

由于它运算能力很强,速度很快,体积很小,而且采用 软件编程具有高度的灵活性,因此为从事各种复杂的应用提供了一条有效途径。根据数字信号处理的要求,DSP芯片一般具有如下主要特点:

(1)在一个指令周期内可完成一次乘法和一次加法;

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

(3)片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;

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

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

(6)具有在单周期内操作的多个硬件地址产生器;

(7)可以并行执行多个操作;

(8)支持流水线操作,使取指、译码和执行等操作可以重叠执行。

当然,与通用微处理器相比,DSP芯片的其他通用功能相对较弱些。

ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软 件。ARM架构是面向低预算市场设计的第一款RISC微处理器,基本是32位单片机的行业标准,它提供一系列内核、体系扩展、微处理器和系统芯片方案,四 个功能模块可供生产厂商根据不同用户的要求来配置生产。由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行。目前ARM在手持设备 市场占有90以上的份额,可以有效地缩短应用程序开发与测试的时间,也降低了研发费用。

FPGA是英文Field Programmable Gate Array(现场可编程门阵列)的缩写,它是在PAL、GAL、PLD等可编程器件的基 础上进一步发展的产物,是专用集成电路(ASIC)中集成度最高的一种。FPGA采用了逻辑单元阵列LCA(Logic

Cell Array)这样一个 新概念,内部包括可配置逻辑模块CLB(Configurable

Logic Block)、输出输入模块IOB (Input Output Block)和内部连线(Interconnect)三个部分。

用户可对FPGA内部的逻辑模块和I/O模块重新配置,以实 现用户的逻辑。它还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改。作为专用集成电路(ASIC)领域中的一种 半定制电路,FPGA既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。可以毫不夸张的讲,FPGA能完成任何数字器件的功能,上至高 性能CPU,下至简单的74电路,都可以用FPGA来实现。

FPGA如同一张白纸或是一堆积木,工程师可以通过传统的原理图输入法,或是硬件描述语言自由 的设计一个数字系统。通过软件仿真,我们可以事先验证设计的正确性。在PCB完成以后,还可以利用FPGA的在线修改能力,随时修改设计而不必改动硬件电 路。使用FPGA来开发数字电路,可以大大缩短设计时间,减少PCB面积,提高系统的可靠性。FPGA是由存放在片内RAM中的程序来设置其工作状态的, 因此工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。加电时,FPGA芯片将EPROM中数据读入片内编程RAM 中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。

FPGA的编程无须专用的FPGA 编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可 以产生不同的电路功能。因此,FPGA的使用非常灵活。可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。目前FPGA的品种很 多,有XILINX的XC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。

他们的区别是什么呢?DSP主要是用来计算的,比如进行加密解 密、调制解调等,优势是强大的数据处理能力和较高的运行速度。ARM具有比较强的事务管理功能,可以用来跑界面以及应用程序等,其优势主要体现在控制方面,而FPGA可以用VHDL或verilogHDL来编程,灵活性强,由于能够进行编程、除错、 再编程和重复操作,因此可以充分地进行设计开发和验证。当电路有少量改动时,更能显示出FPGA的优势,其现场编程能力可以延长产品在市场上的寿命,而这种能力可以用来进行系统升级或除错。[/size]

我想学DSP或FPGA通信方向的,而我的导师做的是图像信号处理,偏软件的,该怎么办?

最佳答案

通过算法这块把DSP或FPGA学好,都差不多的,如果不是偏硬件的话,MATLAB建议学好

用FPGA+DSP比用ARM+DSP做图像处理更合试吗?

浏览次数:1159次悬赏分:30 | 解决时间:2009-8-29 10:37 | 提问者:cchai83321

想用arm+dsp来做红外图像处理是否可行?

当然可行了,选哪种方案并不是问题的关键,关键是你对哪种方案更有把握。

想学DSP或FPGA通信方向的,而我的导师做的是图像信号处理,偏软件的,该怎么办?

ARM作控制,一般只是消费品占多.

DSP作算法,信号处理,

FPGA作接口,比如可以同时有N路输入输出,这是许多MCU做不到的,

用FPGA也可以信号处理,而且是硬件算法,速度肯定比DSP快.

我是学信号处理的 次昂学一门硬件技术 所以问一下 FPGA和DSP相比在信号处理方面哪个更有前途

最佳答案

个人觉得FPGA更有前途。要知道通过FPGA的SOPC软核,可以做出符合自己需要的DSP的IP核。这个在工程中是非常有优势的。

再者,FPGA比DSP上手要快些,而且资料也非常多。

与dsp相比 用fpga来实现数字信号处理的功能有哪些优缺点

最佳答案

主要是处理方式,DSP串行处理;FPGA并行处理。

举例,一个滤波器,DSP可能需要多个时钟节拍算下来,并且运算过程中需要中断才能跳出进行别的任务。但是FPGA可以并行处理,一个时钟节拍就出来结果,而且同时其他的逻辑电路或者乘加器一起工作。

比较FPGA ARM DSP 在使用各有什么优缺点

最佳答案 ARM:是32位单片机,由于结构和计算速度的原因,目前适合做事务处理或者中低端应用,从中高级工控到简单语音/图片(不含视频)处理

DSP:它从16位~32位,内部采用哈佛结构,特别适合数据处理。其中16位DSp适合中高级工控到简单语音/图片(不含视频)处理;其中32位DSp适合复杂语音/图片/视频处理

FPGA:新型FPGA可以用内部乘法器/寄存器/内存块构造软核,例如构造ARM,则可以实现ARM的功能;若构造成DSP,则可以实现DSP的功能。不过FPGA的功耗较大,一般情况下构造ARM/DSP不如专用ARM/DSP方便,但是在高速信号处理时,可以采用并行结构,大大提高处理速度,甚至可以超过目前最快的DSP。

FPGA的应用比较广泛,作为一种可编程逻辑器件,从基本的逻辑应用,到cpu的设计仿真,FPGA在各方面都得到了广泛的应用。不仅仅是数字信号处理,对于一些小批量的芯片,由于流片成本太高,大多用FPGA替代。

关于就业,数字信号的FPGA应用,应该比较窄,因为成本在那里,实时信号处理,FPGA占优势,仅仅是高速,大计算量的应用。应用的广泛性来讲,不如DSP,因为一般的数字信号处理,DSP完全能够完成,成本,研发都有一定的优势。

现在,FPGA是芯片设计的基础,芯片设计的最初阶段,完全是在FPGA上仿真。电路板设计,也会用到FPGA,用来完成一些逻辑设计。对于一些特殊行业的应用,FPGA作为主要的逻辑芯片,主要出于灵活性和成本,研发时间的考虑。

因此综合考虑,如果从事芯片设计,硬件设计,FPGA有广泛的应用,想以此为就业方向,可考虑FPGA。如果以数字信号处为方向,DSP更占优势。

再就是,如果信号处理的算法特别精通,以算法研究为主也可,在matlab上完成仿真,有其他人在芯片实现具体的算法。