ARM、DSP和FPGA技术浅析

摘要:本文简要的介绍了ARMDSPFPGA的区别和发展趋势。

1ARMDSPFPGA简介

ARMAdvanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、低价、低功耗的RISC处理器,研究微处理器相关技术,以及开发工具等。ARM架构是面向低预算市场设计的第一款RISC微处理器,基本是32位单片机的行业标准,它提供一系列内核、体系扩展、微处理器和系统芯片方案,各个功能模块可供生产厂商根据不同用户的要求来配置生产由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行,可以有效地缩短应用程序开发与测试的时间,也降低了研发费用。目前ARM在手持设备市场占有90%以上的份额。ARM32位的单片机,其内部硬件资源的性能较高,可以加载操作系统成为其主要特点,有了操作系统,就可以像PC机那样多任务处理,就是同一时间内能完成多个任务,而且不会互相影响。 

DSPdigital signal processor)是一种独特的微处理器,有自己的完整指令系统,是以数字信号来处理大量信息的器件。其最大特点是内部有专用的硬件乘法器和哈佛总线结构,对大量的数字信号进行高速处理。一个数字信号处理器在一块不大的芯片内包括有控制单元、运算单元、各种寄存器以及一定数量的存储单元等等,在其外围还可以连接若干存储器,并可以与一定数量的外部设备互相通信,有软、硬件的全面功能,本身就是一个微型计算机。DSP采用的是哈佛设计,即数据总线和地址总线分开,使程序和数据分别存储在两个分开的空间,允许取指令和执行指令完全重叠。也就是说在执行上一条指令的同时就可取出下一条指令,并进行译码,这大大的提高了微处理器的速度。另外还允许在程序空间和数据空间之间进行传输,因为增加了器件的灵活性。其工作原理是接收模拟信号,转换为01的数字信号,再对数字信号进行修改、删除、强化,并在其它系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程度,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。由于它运算能力很强,速度很快,体积很小,而且采用软件编程具有高度的灵活性,因此为从事各种复杂的应用提供了一条有效途径。根据数字信号处理的要求,DSP芯片一般具有如下主要特点:

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

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

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

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

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

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

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

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

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

FPGA(Field Programmable Gate Array)现场可编程门阵列的缩写,它是在PALGALPLD等可编程器件的基础上进一步发展的产物,是专用集成电路(ASIC)中集成度最高的一种。FPGA采用了逻辑单元阵列LCALogic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLBConfigurable Logic Block)、输入输出模块IOBInput 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 编程器,只须用通用的EPROMPROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。目前FPGA的品种很多,有XILINXXC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。

2ARMDSPFPGA区别

ARM具有比较强的事务管理功能,可以用来跑界面以及应用程序等,其优势主要体现在控制方面;ARM32位的单片机,其内部硬件资源的性能较高,可以加载操作系统成为其主要特点,有了操作系统,就可以像PC机那样多任务处理,就是同一时间内能完成多个任务,而且不会互相影响。

DSP主要是用来计算的,比如进行加密解密、调制解调等,优势是强大的数据处理能力和较高的运行速度。

FPGA可以用VHDLVerilog HDL来编程,灵活性强,由于能够进行编程、除错、再编程和重复操作,因此可以充分地进行设计开发和验证。当电路有少量改动时,更能显示出FPGA的优势,其现场编程能力可以延长产品在市场上的寿命,而这种能力可以用来进行系统升级或除错。

FPGA的优点:(1)灵活性,引脚可以自由分配和定义;
                              
2)并行性,可以进行并行运算;
                              
3)快速性,本身的纯硬件特性使得没有相关指令的操作;
    FPGA
的缺点:功耗大、价钱贵。

DSP是通用的信号处理器,用软件实现数据处理;FPGA用硬件实现数据处理。DSP成本低,算法灵活,功能性强,而FPGA的实时性好,成本较高,FPGA适合于控制功能算法简单且含有大量重复计算的工程使用,DSP适合于控制功能复杂且含有大量计算任务的工程应用。

DSP是软件实现算法,FPGA是硬件实现算法,所以FPGA的处理速度会更高;FPGADSP快的一个重要原因是FPGA可以实现并行运算,而DSP由于硬件结构条件限制,主要还是依靠软件来提取指令执行,理解为还是串行执行的。

3ARMDSPFPGA展望

FPGA目前的趋势是有代替ARMDSP的可能,在FPGA内部植入乘法器和DSP块,就具有高速的DSP处理能力。在FPGA内置入硬核CPU或软核CPUXilinxpowerpc硬核的产品,有microblaze软核。AlteraNIOS II 软核)就可以成为既有能实现数字逻辑有适应嵌入式开发的综合性器件了。

感觉现在的FPGA的应用范围还是比较窄,主要是通信方向,另外还有什么ASIC和数字信号处理以及嵌入式领域。而ARM主要是嵌入式领域,嵌入式领域现在的增长很快,特别是消费电子啊,这里面的处理器几乎全是ARM核的。NIOS虽然很好,但是功耗和成本都要高于ARM,所以在嵌入式领域的发展还不行。所以我觉得还是选择ARM好些吧。而ARM由于是经过优化的CPU内核,所以无论从功耗上还是价钱上都要比FPGA占优势,这也是ARM能在很多应用上大行其道的原因吧。相比而言,FPGA更多的出现在需要快速转换的通信领域或者是一些需要逻辑粘合的地方。我相信随着技术的进步,FPGA在容量、功耗和价格上进步,会使得在FPGA中嵌入软核成为一种现实可行的方案,届时大家可能会更倾向于在一些复杂的应用中,采用FPGA替代以前的ARM+FPGADSP+FPGA的方案了。
   
总而言之,ARM现在发展的更为成熟,而FPGA还在崛起的阶段,所以要说哪个更有前途,我
觉得FPGA更有发展趋势。

4、总结

    以我的理解觉得ARM+FPGADSP+FPGA的方案可能更有竞争力,用FPGA虽然成本功耗增加,但可以增加灵活性来辅助ARMDSP提高系统性能,增加可调试性,增加实时性,结合具体应用领域作性能优化。一旦方案成熟就会转为ASIC减少成本和功耗。建议做硬件就学FPGA,做软件就学ARM

基于SSM框架的智能家政保洁预约系统,是一个旨在提高家政保洁服务预约效率和管理水平的平台。该系统通过集成现代信息技术,为家政公司、家政服务人员和消费者提供了一个便捷的在线预约和管理系统。 系统的主要功能包括: 1. **用户管理**:允许消费者注册、登录,并管理他们的个人资料和预约历史。 2. **家政人员管理**:家政服务人员可以注册并更新自己的个人信息、服务类别和服务时间。 3. **服务预约**:消费者可以浏览不同的家政服务选项,选择合适的服务人员,并在线预约服务。 4. **订单管理**:系统支持订单的创建、跟踪和管理,包括订单的确认、完成和评价。 5. **评价系统**:消费者可以在家政服务完成后对服务进行评价,帮助提高服务质量和透明度。 6. **后台管理**:管理员可以管理用户、家政人员信息、服务类别、预约订单以及处理用户反馈。 系统采用Java语言开发,使用MySQL数据库进行数据存储,通过B/S架构实现用户与服务的在线交互。系统设计考虑了不同用户角色的需求,包括管理员、家政服务人员和普通用户,每个角色都有相应的权限和功能。此外,系统还采用了软件组件化、精化体系结构、分离逻辑和数据等方法,以便于未来的系统升级和维护。 智能家政保洁预约系统通过提供一个集中的平台,不仅方便了消费者的预约和管理,也为家政服务人员提供了一个展示和推广自己服务的机会。同时,系统的后台管理功能为家政公司提供了强大的数据支持和决策辅助,有助于提高服务质量和管理效率。该系统的设计与实现,标志着家政保洁服务向现代化和网络化的转型,为管理决策和控制提供保障,是行业发展中的重要里程碑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值