婴儿头上的头垢是精子:ARM、DSP、FPGA的探讨

来源:百度文库 编辑:偶看新闻 时间:2024/04/28 14:11:51
在嵌入式开发领域,ARM是一款非常受欢迎的微处理器,其市场覆盖率极高,DSP和FPGA

则是作为嵌入式开发的协处理器,协助微处理器更好的实现产品功能。那三者的技术特点以及区

别是什么呢?下文就此问题略做了总结。

       ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉

价、耗能低的RISC处理器、相关技术及软件。

        ARM架构是面向低预算市场设计的第一款RISC微处理器,基本是32位单片机的行业标准,它

提供一系列内核、体系扩展、微处理器和系统芯片方案,四个功能模块可供生产厂商根据不同用

户的要求来配置生产。由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品

中运行。目前ARM在手持设备市场占有90以上的份额,可以有效地缩短应用程序开发与测试的时

间,也降低了研发费用。

         DSP(digital singnal processor)是一种独特的微处理器,有自己的完整指令系统,是以数字

信号来处理大量信息的器件。一个数字信号处理器在一块不大的芯片内包括有控制单元、运算单

元、各种寄存器以及一定数量的存储单元等等,在其外围还可以连接若干存储器,并可以与一定

数量的外部设备互相通信,有软、硬件的全面功能,本身就是一个微型计算机。DSP采用的是哈

佛设计,即数据总线和地址总线分开,使程序和数据分别存储在两个分开的空间,允许取指令和

执行指令完全重叠。也就是说在执行上一条指令的同时就可取出下一条指令,并进行译码,这大

大的提高了微处理器的速度 。另外还允许在程序空间和数据空间之间进行传输,因为增加了器件

的灵活性。其工作原理是接收模拟信号,转换为0或1的数字信号,再对数字信号进行修改、删

除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程

性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化

电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特

色。由于它运算能力很强,速度很快,体积很小,而且采用软件编程具有高度的灵活性,因此为

从事各种复杂的应用提供了一条有效途径。根据数字信号处理的要求,DSP芯片一般具有如下主

要特点:

(1)在一个指令周期内可完成一次乘法和一次加法;
(2)程序和数据空间分开,可以同时访问指令和数据;
(3)片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;
(4)具有低开销或无开销循环及跳转的硬件支持;
(5)快速的中断处理和硬件I/O支持;
(6)具有在单周期内操作的多个硬件地址产生器;
(7)可以并行执行多个操作;
(8)支持流水线操作,使取指、译码和执行等操作可以重叠执行。


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

  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系列等。

  ARM作为嵌入式开发最常用的处理器,是嵌入式工程师必须掌握的一门知识。ARM体系架构

在嵌入式学院<嵌入式工程师职业培训班>的二期课程中将会结合嵌入式linux应用开发、嵌入式linux

系统移植进行详细介绍,另外华清远见的短期培训业务中也分别有针对ARM、DSP、FPGA的培

训课程。

  区别是什么?:ARM具有比较强的事务管理功能,可以用来跑界面以及应用程序等,其优势

主要体现在控制方面,而DSP主要是用来计算的,比如进行加密解密、调制解调等,优势是强大

的数据处理能力和较高的运行速度。FPGA可以用VHDL或verilogHDL来编程,灵活性强,由于能

够进行编程、除错、再编程和重复操作,因此可以充分地进行设计开发和验证。当电路有少量改

动时,更能显示出FPGA的优势,其现场编程能力可以延长产品在市场上的寿命,而这种能力可以

用来进行系统升级或除错。


   现如今,机器/工业视觉、高端测量测试、医疗/生物影像以及航空电子领域的应用系统,需要很多的运算,除了要有很强的显示功能外,对信号的处理能力要求也非常高。以机械视觉为例,机器视觉系统(如自动/可视检测)需要业界标准的API,满足优化软件的重复利用;可处理海量数据的高吞吐能力;用于发送检测结果或图像的系统控制和高速连接;能够在PC上完成视觉算法的原型设计和自适应调整,并轻松与嵌入式环境连接等,为满足这些要求,德州仪器(TI)推出了全新的DSP + ARM处理器Integra?系列。C6A816x Integra DSP + ARM 处理器不但可提供高达 1.5 GHz 的业界最快单内核浮点与定点 DSP 性能,而且还集成性能高达 1.5 GHz 的业界最快单内核 ARM Cortex?-A8 内核。

      仍以机器视觉系统为例,在典型的产品应用中,是一个很复杂的系统设计,机械视觉首先需要输入输出,需要FPGA进行算法和数据整理,同时需要DDR做影像视觉处理和特征提取的算法,同时需要uProcessor做系统管理和通讯等,特别是一些高端的显示。C6A816x Integra DSP + ARM 处理器首先可以省掉接口,全部集成在这个芯片里。同时有定点、浮点DSP,还有高性能MPU、ARM部分。如下图,C6A816x可以替换掉图中的几款芯片,节约成本超过50%。同时在外部存储或者电源管理的芯片也会节省大量成本,不仅是成本大量减低,板子尺寸也会减少,同时系统可靠性会得到大幅度提高。

      在产品的设计过程中,有很多算法可以在DSP上做,同样也可以在ARM上来做,甚至现在有些应用如电脑上的算法可以在CPU上来跑,但是对于复杂算法而言,用DSP来实现效率会高。对于一些特定的算法,比如数据滤波、图象处理,如果放在DSP上做的话,效率会高出60%,此时ARM资源可以节省出来做更多的应用,因而系统的总体性能会大大提高。如果这个算法用在特别高的应用场合, ARM+DSP便起到事半功倍的效果。

      由此可见,Integra DSP + ARM 的组合架构堪称理想架构, DSP 可专门用于处理密集型信号处理需求、复杂的数学函数以及影像处理算法,而 ARM 则可用于实现图形用户界面 (GUI)、网络连接、系统控制以及多种操作系统(Linux、Microsoft? Windows? Embedded Compact 7 以及 Android 等)下的应用处理。C6A816x Integra DSP + ARM 处理器还集成大量可降低系统成本、提高系统性能的高带宽外设,非常适用于机器视觉、测量测试以及跟踪控制应用。