一、概述。
dsp是数字信号处理(digital signal processing)或数字信号处理器(digital signal processor)的英文缩写。世界上第一个单片dsp芯片是2023年美国ami公司宣布的s2811。2023年美国intel公司宣布的商用的可编程器件2920是dsp芯片的一个主要里程碑。
这两种芯片内部都没有现代dsp芯片所必需的单周期乘法器。2023年,日本nec公司推出的μpd7720是第一个具有乘法器的商用dsp芯片。2023年ti(texas instruments)公司推出其第一代dsp芯片,迄今已成为世界上最大的dsp芯片**商。
dsp的发展经历了20世纪80年代的初级阶段,90年代的实用阶段,到近几年的完善阶段。
二、dsp的特点。
1. 高速、高精度运算能力。
dsp内部采用了多个独立总线的哈佛结构,采用程序执行的流水线技术,专门的内部硬件乘法器、累加器、算术逻辑单元等,使运算速度更快,精度更高。
1.1改善的哈佛结构(modified harvard architecture)
通用微处理器,存储空间配置采用冯·诺依曼结构(von neumannn architecture),其程序**和数据共用一个公共的存储空间和单一的地址和数据总线。
dsp的存储空间配置采用改进的哈佛结构。哈佛结构的主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址、独立访问。没有专门的输入输出指令,外部端口与数据存储器统一编址,每个端口作为数据存储器的一个映象单元(即采用内存映射方式管理i/o,能方便灵活的扩充外围电路)。
之所以采用哈佛结构,是为了并行地进行指令和数据的处理,从而可以大大地提高运算的速度。
为了进一步提高信号处理的效率,在哈佛结构的基础上,又加以改善,使得程序**和数据存储空间之间可以进行数据的传送,称为改善的哈佛结构。这样做的好处是显然的,例如,在作数字滤波处理时,将滤波器的参数存放在程序**空间里,而将待处理的样本存放在数据空间里,这样,处理器就可以同时提取滤波器参数和待处理的样本,进行乘和累加。
a) 冯·诺依曼结构b)哈佛结构。
图1. 微处理器的冯·诺依曼结构与哈佛结构。
1.2流水线技术(pipeline)
在指令处理上,dsp大多采用了流水线技术。处理器在执行一条指令时,总要经过取指、译码、取数、执行运算等步骤,需要若干个指令周期才能完成。流水技术是将各指令的各个步骤重叠起来执行,而不是一条指令执行完成之后,才开始执行下一条指令。
即几条指令可以同时出现于不同的阶段进行各自的处理。也就是:第一条指令取指后,译码时,第二条指令取指;第一条指令取数时,第二条指令译码,第三条指令取指,……依次类推,如图2所示。
使用流水技术后,尽管每一条指令的执行仍然要经过这些步骤,需要同样的周期数,但将一个指令段综合起来看,其中的每一条指令的执行就都是在一个指令周期内完成的。dsp处理器所采用的将程序存储空间和数据存储空间的地址和数据总线分开的哈佛结构,为流水线技术提供了很大的方便。
图2. 流水线技术。
1.3硬件乘法器和乘法指令mac
在数字信号处理的算法中,乘法和累加是基本的大量的运算。例如,在数字滤波、fft、卷积、相关、相量、和矩阵等运算中,都有大量的类似下式的运算:。这一类运算往往要占据dsp处理器的绝大部分处理时间。
通用计算机的乘法是用软件来实现的,一次乘法往往需要许多个机器周期才能完成,传统的冯·诺依曼结构要完成一个乘法指令需要4个指令周期。为了提高运算速度,dsp处理器都设置了硬件乘法器,以及mac(乘并且累加)一类指令。可以在单周期内取两个操作数,相乘,并将乘积加到累加器里。
其基本结构如图3所示。
图3. 硬件乘法器的基本结构。
从图中,可以充分领略哈佛结构和改进的哈佛结构在提高运算速度方面的优越性。在新的dsp处理器中,往往不止使用单一的mac结构,而是设置了多组来作并行处理,从而大大地提高处理的速度。
2. 强大的数据通信能力。
dsp内部有独立的dma(直接存储器访问)总线及其控制器,高速串行、并行接口,大量的内部ram和rom,使之数据吞吐量大。
dsp处理器都为dma单独设置了完全独立的总线和控制器,其目的是在进行数据传输时完全不影响cpu及其相关总线的工作。尽管单片dsp处理器的速度在不断地迅速提高,但面对越来越高的实时处理的应用要求,单个dsp处理器往往不能凑效,需要将多个dsp处理器并行或串行,甚至既用串行也用并行,组成dsp处理阵列,来提高系统的处理能力。因此,dma就成了dsp处理器之间进行数据传输的主要通道。
dma:direct memory access.指外部设备直接和存储器进行传送的i/o方式。
dma 就是另一种类型的cpu,其唯一作用就是快速移动数据,其优势则在于 cpu 可以向 dma 发出一些指令移动数据,随后就可以再进行原本的工作。dma 在 cpu 运行的同时移动数据。这实际就是另一种利用器件内置并行功能的方法。
dma 在复制大量数据时非常有用。】
另外,dsp处理器还设置了专门的数据地址发生器(dag),有的设置了多个数据地址发生器来产生所需要的数据地址。在通用cpu中,数据地址的产生和数据的处理都由alu(算术逻辑单元)来完成;在dsp中,使用了数据地址发生器后,数据地址的产生与cpu的工作是并行的,从而节省了cpu的时间,提高了信号处理速度。
3. 编程灵活。
dsp编程有多种寻址方式和某些功能强大的指令,使得编程应用十分灵活。逐步完善的编程工具也为编程和调试提供了极大的方便,使其更适合于实时处理。(c54x提供了七种寻址方式:
立即寻址、绝对寻址、累加器寻址、直接寻址、间接寻址、存储器映射寄存器寻址和堆栈寻址。)(dsp在指令系统中设置了“循环寻址”及“位倒序”等特殊指令,使寻址、排序及运算速度大大提高。)(德州仪器公司ti(texas instrument)的dsp的开发环境和工具主要包括三个部分:
**生成工具、系统集成及调试环境与工具、实时操作系统。)
4. 低功耗、低成本。
为了适应许多便携式仪器(例如手机、***等)节能的要求,dsp芯片采用了许多低功耗设计技术。例如:①降低工作电压。
许多厂商将dsp核的工作电压降至1.2v、0.9v,在同样的时钟频率下,功耗远远低于5v电压dsp芯片。
②采用休眠或等待工作模式。除某些必要的部分之外,断开处理器其他部分的时钟,从而降低功耗。③外设控制。
有些dsp允许程序员终止一些没有使用的外设来降低功耗。
丰富的片内存储器和外设使dsp的性价比大大提高。dsp处理器的外设主要包括:时钟发生器(振荡器与锁相环pll)、定时器(timer)、软件可编程等待状态发生器(以便使较快的片内设施与较慢的片外电路及存储器协调)、通用i/o、同步串口(ssp)与异步串口(asp)、主机接口(hip)、jtag边界扫描逻辑电路(ieee1149.
1标准,便于对dsp处理器作片上的****,以及多dsp处理器条件下的调试)。
高速处理能力、低功耗、低成本相结合是dsp比高性能通用cpu的最主要优势。
三、dsp的分类与选择。
就结构而言,dsp可分为定点dsp和浮点dsp,定点dsp与浮点dsp在硬件结构上最大的不同之处在于数据存储结构方面。定点dsp指的是数据格式用整数和小数来表示的dsp处理器;浮点dsp指的是数据格式用指数和尾数表示的dsp处理器。浮点dsp用户不必知道如何存储数据,而应用定点dsp时必须了解数据存储格式,还要对数据格式做一些转换。
实际应用的dsp处理器绝大多数是定点dsp。定点dsp往往采用16位数据格式,数据精度较低,在运算中程序员要注意溢出和饱和问题,它内部有16位×16位的32位硬件乘法器,运算速度快、功耗小、成本低。浮点dsp用相同的位数可以表示的数的范围比定点式大,浮点dsp为了保证数据的精度,常采用32位数据(用24位组成尾数,用8位组成阶码,尾数表示精度,阶码表示动态范围),内部有32位硬件浮点乘法器,内部数据总线、存储器等的宽度也都相应做成32位的。
因此,它的结构复杂、功耗较大、体积较大、成本较高。
选择dsp芯片时,用户可从芯片性能、运行速度、**、功耗等几个方面综合考虑。一般情况下,定点dsp适用于采样频率低、算法相对比较简单的场合;浮点dsp适用于采样频频高、算法相对比较复杂以及实时性要求很高的场合。如果涉及的数据范围很大,则采用浮点dsp比较合适。
四、dsp的应用。
由于dsp的以上特点,使其在通信、消费类电子产品、计算机、以及仪器仪表、工业控制、军事、医疗电子等方面有着广泛的应用。
dsp在电力系统中有着广泛的应用前景:
随着电力系统的快速发展,电网容量不断增大,结构日趋复杂,电力系统中实时监控、调度的自动化就显得十分重要,而几乎所有监测、分析、控制、信号传送都需要将电力系统中的大电流、电压等交流信号,经过互感器和a/d转换变成微机可接受和处理的数字信号,如果需要输出用以控制的话,还要将数字信号进行d/a或pwm(pulse-width modulation 脉宽调制)处理。而这些正是dsp的优势所在。
下面通过dsp在电力系统中应用的几个例子,介绍dsp技术是如何一步步深入地应用的电力系统的各个环节上的。
1. dsp技术在电力系统模拟量采集和测量中的应用。
计算机进入电力系统调度后,引入了ems(engineering management system工程管理系统)/ dms(database management system数据库管理系统)/ scada(supervisory control and data acquisition监督控制和数据获取)的概念,而电力系统数据采集和测量是scada的基础部分。传统的模拟量的采集和获得,通过变送器将一次pt和ct的电气量变为直流量,再进行a/d转换送给计算机。应用了交流采样技术后,经过二次pt、ct的变换后,直接对每周波的多点采样值采用dsp处理算法进行计算,得到电压和电流量的有效值和相角,免去了变送器环节。
这不仅使得分散布置的分布式rtu(remote terminal unit远程终端设备)很快发展起来,而且还为变电站自动化提供了功能综合优化的手段。
硬件和软件应用
1.2 电脑的硬件组成。1.2.1 主机的配置。1.主板。主板是计算机的核心部分,上面安装了 处理器 逻辑控制芯片和扩展槽等部件。计算机的工作效率主要由cpu的数据线 地址线的位数和主宰cpu速度的晶振时钟频率决定。主频,俗称计算机的时钟,单位用mhz表示,其含义是指cpu所能接受的工作频率,可理解...
2019硬件应用课程设计
一 课程设计的任务。课程设计是培养学生运用有关课程的基础理论和技能解决实际问题,进一步提高学生本专业必要的基本技能 方法和创新能力的重要环节之一。通过课程设计要使学生受到设计方法的初步训练,能用文字 图形和现代设计方法简要 系统 正确地表达设计成果。微机接口课程设计 主要是训练学生综合运用学过的微机...
2019硬件应用课程设计
一 课程设计的任务。课程设计是培养学生运用有关课程的基础理论和技能解决实际问题,进一步提高学生本专业必要的基本技能 方法和创新能力的重要环节之一。通过课程设计要使学生受到设计方法的初步训练,能用文字 图形和现代设计方法简要 系统 正确地表达设计成果。微机接口课程设计 主要是训练学生综合运用学过的微机...