由于工作经常接触到各种多核的处理器,如TI的达芬奇系列芯片拥有1个DSP核3个ARM核。那么DSP处理器和ARM处理器各自有什么区别,各自适合那些领域?

DSP:digital signal processor数字信号处理器,也指digital signal process数字信号处理,有自己指令集。DSP处理器的特点如下:

  1. 有专门的的硬件乘法器,能进行大量的乘法操作,与通用的MCU处理器不同,通用的MCU在执行乘法操作时是通过软件编程的方式的来实现的,通常需要几十甚至上百个时钟周期,而DSP处理器却有自己的硬件乘法器,使用硬件的方式来执行乘法操作,用硬件的方法总比用软件的方法有着无法比拟的速度优势。另外DSP处理都有自己的累加器单元AUL,大多数的DSP处理器在执行乘加操作时可以在一条指令周期内同时完成乘法和加法操作。DSP与一般MCU最大的区别在于DSP拥有硬件乘法器。
  2. 拥有哈弗型的总线结构,使得取指令和取数据可以同时进行,大大提高了并行处理的能力。
  3. pipeline技术。广泛采用pipeline(流水线)处理技术使得DSP芯片大大减少了指令执行的时间,增强了处理器的处理能力。一条指令在执行的过程中需要经过取指、指令译码、取操作数以及指令执行等几个阶段,DSP的pipeline技术是指程序在运行时若干条指令是同时进行的,即在本条指令执行的同时,其后的3条指令也分别完成了取操作数、指令译码、取指令等操作,也就是说,在每个指令周期内,共有4条不同的指令处于激活状态,每条指令处于不同的执行阶段。正是采用这种pipeline技术才使得DSP的加法运算、乘法运算、乘加运算能够在一个指令周期内完成。

总结:从上面可以看出DSP适合应用在大量重复性运算,数据操作重复性高的,实时性要求高,运算量大的场合,DSP偏重计算。

ARM:Advanced RISC Machines 。ARM处理器是指采用ARM公司的IP核的微处理器。这类处理器成本低、集成度高、有丰富的外设,多数的ARM芯片都可以算作SOC了,基本上外围加上电源接口和驱动接口就可以构成一个最小系统了。

基于ARM核心处理器的嵌入式系统以其自身资源丰富、功耗低、价格低廉、支持厂商众多的缘故,越来越多地应用在各种需要复杂控制和通信功能的嵌入式系统中。可以看出ARM处理器偏重控制。

DSP与ARM的区别:

  ARM具有比较强的事务管理功能,可以用来跑界面以及应用程序等,其优势主要体现在控制方面,它的速度和数据处理能力一般,但是外围接口比较丰富,标准化和通用性做的很好,而且在功耗等方面做得也比较好,所以适合用在一些消费电子品方面。

  而DSP主要是用来计算的,比如进行加密解密、调制解调等,优势是强大的数据处理能力和较高的运行速度。由于其在控制算法等方面很擅长,所以适合用在对控制要求比较高的场合,比如军用导航、电机伺服驱动等方面。

  如果只是着眼于嵌入式应用的话,嵌入式CPU和DSP的区别应该只在于一个偏重控制一个偏重运算了。

参考文章:http://blog.163.com/liuhonggaono1@126/blog/static/10497901201183004839992/

DSP处理器和ARM处理器的区别以及各自应用在那些领域的更多相关文章

  1. ARM处理器模式

    ARM处理器模式 ARM处理器共有7种运行模式: l  用户模式(User,usr):正常程序执行的模式 l  快速中断模式(FIQ,fiq):用于高速数据传输和通道处理 l  外部中断模式(IRQ, ...

  2. ARM的体系结构与编程系列博客——ARM处理器系列介绍

    ARM处理器系列介绍 现在到了3月,过年过得过于舒服了.系列博客也停更了近半月,我果然是个慢(lan)性(gui)子,那么趁着到校的第一天晚上,就写一篇博客来继续我的系列博客了!众所周知,ARM处理器 ...

  3. 基于ARM处理器的反汇编器软件简单设计及实现

    写在前面 2012年写的毕业设计,仅供参考 反汇编的目的 缺乏某些必要的说明资料的情况下, 想获得某些软件系统的源代码.设计思想及理念, 以便复制, 改造.移植和发展: 从源码上对软件的可靠性和安全性 ...

  4. 热烈祝贺华清远见《ARM处理器开发详解》第2版正式出版

    2014年6月,由华清远见研发中心组织多名业 内顶尖讲师编写的<ARM处理器开发详解>一书正式出版.本书以S5PV210处理器为平台,详细介绍了嵌入式系统开发的各个主要环节,并注重实践,辅 ...

  5. ARM处理器的寄存器

    在ARM体系中通常有以下3种方式控制程序的执行流程: **在正常执行过程中,每执行一条ARM指令,程序计数器(PC)的值加4个字节:每执行一条Thumb指令,程序计数器寄存器(PC)加2个字节.整个过 ...

  6. ARM处理器的寄存器,ARM与Thumb状态,7中运行模式 【转】

    转自:http://blog.chinaunix.net/uid-28458801-id-3494646.html ARM处理器工作模式一共有 7 种 : USR  模式    正常用户模式,程序正常 ...

  7. arm处理器

    arm处理器 arm处理器相关 1.体系架构定义了指令集(ISA)和基于这一体系结构下处理器的编程模型. arm卖的是架构或者已经设计好的公版ip核 卖给苹果高通的是架构,需要苹果高通通过架构设计自己 ...

  8. ARM 处理器:RISC与CISC 是什么?【转】

    转自:https://blog.csdn.net/willsun2017/article/details/83388990 完全看懂 ARM 处理器:RISC与CISC 是什么? 历史.架构一次看透 ...

  9. ARM处理器的寄存器,ARM与Thumb状态,7中运行模式

     ** ARM处理器的寄存器,ARM与Thumb状态,7中运行模式  分类: 嵌入式 ARM处理器工作模式一共有 7 种 : USR  模式    正常用户模式,程序正常执行模式 FIQ模式(Fast ...

随机推荐

  1. 深入了解RabbitMQ工作原理及简单使用

    深入了解RabbitMQ工作原理及简单使用 RabbitMQ系列文章 RabbitMQ在Ubuntu上的环境搭建 深入了解RabbitMQ工作原理及简单使用 RabbitMQ交换器Exchange介绍 ...

  2. SQL Server to MySQL

    使用 Navicat 导入向导迁移 会遇到以下问题 SQL Server 中的 GUID 类型字段会变成 {guid} 多个外层花括号, 导致程序问题. 部分字段类型长度不大一致, 需要手工调整. . ...

  3. jekins部署

    以下以在MAC上安装为例: 1.从官网下载安装包 https://jenkins.io/download 2.双击pkg包安装程序开始安装.(这种方式安装的不好卸载) 提示输入密码,按照提示的路径找到 ...

  4. js防抖和节流优化浏览器滚动条滚动到最下面时加载更多数据

    防抖和节流,主要是用来防止过于平凡的执行某个操作,如浏览器窗口变化执行某个操作,监听某个input输入框keyup变化,瀑布流布局时Y轴滚动,图片加载. js函数的防抖 经过一段事件才执行某个操作,如 ...

  5. OC(构造函数,分类等知识总结)

    文章来源:http://my.oschina.net/luoguankun/blog/219532 一.成员变量的作用域 ·        @public ·        在任何地方都能直接访问对象 ...

  6. 410-基于XCVU9P+ C6678的40G光纤的加速卡

    基于XCVU9P+ C6678的40G光纤的加速卡 一.板卡概述 二.处理板技术指标 •  板卡为自定义结构,板卡大小332mmx260mm; •  FPGA采用Xilinx Virtex Ultra ...

  7. 机器学习分类算法之K近邻(K-Nearest Neighbor)

    一.概念 KNN主要用来解决分类问题,是监督分类算法,它通过判断最近K个点的类别来决定自身类别,所以K值对结果影响很大,虽然它实现比较简单,但在目标数据集比例分配不平衡时,会造成结果的不准确.而且KN ...

  8. 03python面向对象编程5

    5.1 继承机制及其使用 继承是面向对象的三大特征之一,也是实现软件复用的重要手段.Python 的继承是多继承机制,即一个子类可以同时有多个直接父类. Python 子类继承父类的语法是在定义子类时 ...

  9. Python3找出List中最大_最小的N个数及索引

    # -*- coding: utf-8 -*- import heapq nums = [1, 8, 2, 23, 7, -4, 18, 23, 24, 37, 2] # 最大的3个数的索引 max_ ...

  10. spring jpa 带参数分页查询(一)

    1.写个接口继承JpaRepository @NoRepositoryBean public interface BaseRepository<T,PK extends Serializable ...