【DSP器件原理与应用】第一章学习笔记来了!

您所在的位置:网站首页 dsp原理及应用教材5x16 【DSP器件原理与应用】第一章学习笔记来了!

【DSP器件原理与应用】第一章学习笔记来了!

2024-05-31 21:54| 来源: 网络整理| 查看: 265

前几天粉丝掉得这么快,肯定是因为我没有上传学习资料吧...

从今天开始,会多上传学习资料的!可能是不同科目的笔记!希望粉丝也能继续增长!

以下进入正题!

《DSP器件原理与应用》

本课程是重点讲解TMS320C6000系列DSP的原理及应用技术,目的在于增强学生对DSP架构的理解,培养学生基于DSP芯片的硬件与软件设计能力,掌握将DSP用于解决实际问题的方法。

第一章:DSP系统概述

本章内容提要:主要对数字信号处理器(DSP)进行简要介绍。

1.1 什么是DSP

DSP的含义:数字信号处理或数字信号处理器

数字信号处理(Digital Signal Processing):用数值计算的方式对信号进行加工的理论和技术。它以数字信号处理理论、硬件技术、软件技术为基础和组成,研究数字信号处理算法及其实现方法。

数字信号处理器(Digital Signal Processor):由大规模或超大规模集成电路芯片组成的用来完成某种数字信号处理任务的微处理器。它是为适应高速实时信号处理任务的需要而逐渐发展起来的,过程实时信号处理系统的核心。

数字信号处理是一门涉及许多学科而又广泛应用于许多领域的学科。

数字信号处理已经在信号、通信和控制等领域得到极为广泛的应用。

数字信号处理是利用计算机或专用处理设备,以数字形式对信号进行采集、变换、滤波、估计、增强、压缩、识别等处理,以得到符合人们需要的信号形式。

数字信号处理的经典运算是叠加,而滤波和变换是最重要的信号处理方式。

数字信号处理:指关于信号处理的理论和算法,如FIR(有限长单位冲激响应滤波器)、FFT(快速傅里叶变换)等。

模拟信号:用了连续变化的物理量表示的信息,其信号的幅度,或频率,或相位随时间做连续变化,活在一段连续的时间间隔内,其代表信息的特征量可以在任意瞬间呈现为任意数值的信号。

模拟信号处理(Analogue Signal processing, ASP):是指对模拟信号进行加工、变换等处理方法的总称。

模拟信号转换为数字信号需要经过信号的采样、信号的保持、信号的量化和信号的编码四个基本步骤。

数字信号处理与模拟信号处理的比较

模拟信号处理 数字信号处理

灵活性 需要修改硬件,或调整硬件参数 修改软件设置

精度 取决于元器件的精度 A/D的位数、计算机的字长、算法

可靠性 受环境温度、湿度、噪声、电磁场等的干扰和影响大 可靠性和重复性好

抗噪声干扰 差 好

大规模集成度 尽管已有一些模拟集成电路,但品种较少,集成度不高,价格较高 体积小、功能强、功耗小、一致性好、使用方便、性价比高

实时性 除开电路引入的延时外,处理是实时的 由计算机的处理速度决定的

高频信号处理 可以处理包括微波、毫米波、乃至光波信号 按照奈奎斯特采样定理的要求,收到S/H、A/D和处理速度的限制

数字信号处理和数字信号处理器的区别

① 数字信号处理:侧重理论算法、分析推导,更本质,具有更大的普遍性,基本理论永不过时。

② 数字信号处理器:侧重技术实现、编程优化,具有易变性。随着半导体技术的发展,今天还是功能强大的新芯片,明天可能就成了过时品。

③ 数字信号处理器只是一类芯片,还有其他类型的芯片实现数字信号处理算法,比如FPGA(现场可编程逻辑门阵列)、CPU(中央处理器)、ARM(先进的精简指令集机器)、GPU(图形处理器)。

④ DSP更多的指数字信号处理器,其硬件结构相比其他处理器芯片更适于实时数字信号处理应用。

1.2 实时数字信号处理需求

实时的定义:实时指的是系统必须在有限的时间内对外部输入信号完成指定的处理,即信号处理的速度必须大于等于输入信号的更新速度,而且从信号输入到处理后输出的延迟必须足够小。

不同类型的信号对实时信号处理速度的要求差别很大。

音频信号:40KHz时钟采样,16bit量化,信号的输入数据率640Kbps=80Kb/s

视频信号:每帧数据512*512*16bit,传输速率30帧/秒,信号的输入数据率15MHz。

实际中通常以帧为单位,对信号进行处理,是一种准实时处理。

数字信号处理的典型运算:卷积、乘加(MAC)

实时数字信号处理要求:数字信号处理需要大量的实时计算,其中的数据操作往往具有高度重复的特点,特别是乘加操作在常见的数字信号处理算法中用的最多。

① 嵌入式运行:无界面、体积小、功耗低

② 处理时间可预测:任何环境下的确定性实时处理。

③ 外围电路简单:集成多种外设

④ 高速IO吞吐:高速IO与CPU能力相匹配

⑤ 高速运算能力:典型乘加运算硬件单元

⑥ 无需高级软件功能:不需要频繁的人机交互 

典型DSP系统结构:一个典型的DSP系统应包括抗混叠滤波器、数据采集A/D转换器、数字信号处理器DSP、D/A转换器、低通滤波器。

① 将输入信号x(t)进行抗混叠滤波,滤掉高于折叠频率的分量,以防止信号频谱的混叠。

② 经采样和A/D转换器,将滤波后的相互转换为数字信号x(n)。

③ 数字信号处理器对x(n)进行处理,得数字信号y(n)。

④ 经D/A转换器,将y(n)转换成模拟信号。

⑤ 经低通滤波器,滤除高频分量,得到平滑模拟信号y(t)。

1.3 为什么要使用DSP

DSP的设计思路:分布式处理→多总线→流水线→并行指令→片内分块存储器

DSP的主要特点:指令周期短、多处理单元、DSP特殊指令、多总线结构、流水线结构、哈佛结构

特点1:配有专用的硬件乘法——累加器

DSP内部设有硬件乘法-累加器,可在一个周期内完成一次乘法和一次累加操作,从而可实现数据的乘法-累加操作,从而可实现数据的乘法-累加操作。如卷积、矩阵运算、FIR和IIR滤波、FFT变换等算法、其中都有乘法累加的运算,大量重复乘法和累加。DSP有硬件乘法器,用MAC(取数、乘法、累加)在单周期内完成。

通用计算机的乘法用软件来实现,用若干个机器周期。

特点2:配有多功能单元

DSP内部舍友多个并行操作的功能单元(ALU算术逻辑单元、乘法器和地址产生器)。针对乘加运算,DSP的乘法器和ALU都支持1个周期内同时完成1次乘法和1次加法操作,及操作数移位操作。

特点3:总线结构采用哈佛结构

DSP芯片普遍采用数据总线和程序总线分离的哈佛结构或改进的哈佛结构,比传统处理器的冯诺依曼结构有更快的指令执行速度。

冯诺依曼结构:程序/数据处理器⇄CPU(中央处理器)

哈佛结构:程序存储器⇄CPU(中央处理器)⇄数据存储器

通用微处理器采用的结构:冯诺依曼结构、哈佛矩阵。

DSP为了实现高度并行操作,采用了更为复杂的总线结构。多总线是多种并行操作,包括pipeline(流水线)操作的基础。

特点4:采用流水线技术(pipeline)

一般来说,一条指令的各个阶段所需要的资源是不一样的,因此如果安排得当,不同指令的不同执行阶段可以同时进行。

取指 译码 寻址 取数 运算 存储

        取指 译码 寻址 取数 运算 存储

                取指 译码 寻址 取数 运算 存储

                        取指 译码 寻址 取数 运算 存储

                                取指 译码 寻址 取数 运算 存储

                                        取指 译码 寻址 取数 运算 存储

利用这种流水线结构,加上执行重复操作,就能保证在单指令周期内完成数字信号处理中用得最多的乘法-累加运算。

特点5:具有特殊的DSP指令

FIRS和LMS指令,专门用于完成系数对称的FIR滤波器(有限长单位冲激响应滤波器)和LMS算法(最小均方算法)。

DMOV:延迟操作

LTD:LT、DMOV、APAC

MACD:LT、DMOV、MPY、APAC

RPTK:重复执行

DSP的一些特点

① 丰富的片内外设:简化设计、降低成本

② 算数单元:乘加乘法器、多功能单元

③ 专用寻址单元:地址产生器、LDDW、STDW

④ 不断引入新技术:Pipeline(流水线)、Cache(高速缓冲存储器、缓存)、SIMD(单指令多数据流)、MIMD(多指令多数据流)、VLIW(超长指令集架构)

⑤ 高效的特殊指令:专门用于信号处理AVG4、SUBABS4

⑥ 多总线结构:多总线、哈佛结构

⑦ 片内存储器:多级缓存

⑧ 完成任务时间:精确可预测

⑨ 支持单周期内MAC乘加运算

⑩ 支持多总线的哈佛结构

⑪  专用选择寄存器支持快速寻址

⑫  硬件循环控制器支持零开销循环

⑬  片内集成多级存储器和缓存

DSP在实时数字信号处理的优势

① 实时确定性处理

i)   DSP的性能超过通用处理器。

ii)  架构设计,在数学运算和数据移动方面具有优越的性能。

iii) RTOS(实时操作系统)提供低至10ns的响应时间,具有专为复杂单周期处理的指令。

iv) 确定性处理可使用缓存,并通过DMA(直接存储器访问)实现移动数据。

② 高性能

i)   C66x-DSP在1GHz提供每内核32GMACS和16GFLOPS的性能。

ii)  C66x-DSP内核拥有业界领先的高浮点BDTImark2000分数。

③ 高能效:mW/MHz功耗主频比作为评测指标

④ 可扩展:DSP处理器产品线丰富,可支持从传感器到服务器的各种应用。

⑤ 可轻松编程

i)   软件开发套件(SDK),DSPLIB/IMGLIB/VLIB。

ii)  同一个SDK适用于多种DSP,方便开发和迁移。

iii) 高度优化的编译器,可提高C语言代码性能。

iv) 多种O/S选项,支持OpenCL和OpenMP。

DSP的优势

① 独立于操作系统经优化的多种算法库、SDK(软件开发工具包)

② 软件工具:集成开发环境(CCS)

③ 硬件工具:DSP开发套件EVM、仿真器

④ 在线技术支持和社区,E2E(端到端网络连接)模式

常用可编程器件

① FPGA(现场可编程逻辑门阵列):本质是硬件实现,编程语言与C语言差别较大,调试异常艰难,适于时序转换。

② ARM(高级精简指令集计算机):更适用于人机交互、任务管理等应用,信号处理能力弱。

③ GPU(图形处理器):适于大型图形工作站、密集数据运算。

④ GPCPU(通用图形处理器):其信号处理能力不强、硬件复杂、功耗高或抗环境影响能力较弱。

⑤ DSP(数字信号处理器):通用C语言编程、易调试升级、低功耗、体积小、开发难度小。适于实时信号处理。

DSP不是万能的

① FPGA的高精度时序逻辑、高度并行等是DSP器件无法企及的。

② ARM的人机控制、多任务实时调度等也明显优于其他器件。

③ ARM+DSP、FPGA+DSP异构设计方案、吸纳了不同类型处理器优势,确保了系统的可靠性、实时性和灵活性。

1.4 DSP芯片简介

DSP器件的发展历程

① 1960年代:信息处理技术诞生并迅速的发展

② 1970年代:DSP芯片的理论和算法基础已成熟,但其应用领域受限

③ 1978年:AMI公司发布DSP芯片S2811,但没有现代DSP芯片的硬件乘法器

④ 1979年:美国Intel公司发布商用可编程器件2920,依然没有硬件乘法器

⑤ 1982年:第一代DSP芯片TMS32010及其系列产品诞生

⑥ 1989年:日本NEC公司推出具有硬件乘法器的商用DSP芯片MPD7720

⑦ 1980年代末:第三代DSP芯片问世,运算速度进一步提高,应用范围扩大

⑧ 1990年代:出现了第四代和第五代DSP芯片

诞生于:20世纪70年代末

第一阶段:DSP的雏形阶段(1980年前后)

① 1978年:AMI公司(美商安迈有限公司)生产出第一片DSP芯片S2811

② 1979年:美国Intel公司(英特尔公司)推出商用可编程器件DSP芯片Intel2920

③ 1980年:日本NEC公司(日本电器股份有限公司)推出μPD7720,第一个具有乘法器的商用DSP芯片

④ 1982年:TI公司(德州仪器公司)成功推出第一代DSP芯片TMS320C10及其系列产品TMS320C10/C11/C14/C15/C16/C17

⑤ 1982年:日本Hitachi公司(日立公司)第一个采用CMOS工艺 生产浮点DSP芯片。

⑥ 1983年:日本Fujitsu公司(富士通公司)推出的MB8764,指令周期为120ns,具有双内部总线,使数据吞吐量发生了一个大的飞跃。

⑦ 1984年:AT&T公司(美国电话电报公司)推出DSP32,是较早的具备较高性能的浮点DSP芯片。

第二阶段:DSP的成熟阶段(1990年~2000年前后)

① 硬件结构:更适合数字信号处理的要求,能进行硬件乘法和单指令滤波处理,其单指令周期为80~100ns。

如:TI公司的TMS320C20和TMS320C30,CMOS(互补金属氧化物半导体)制造工艺,存储容量和运算速度成倍提高,为语音处理、图像处理技术的发展奠定了基础。

② 主要器件有:TI公司(德州仪器公司)的TMS320C20、30、40、50系列,Motorola(摩托罗拉公司)的DSP5600、9600系列,AT&T公司的DSP32等。

第三阶段:DSP的完善阶段(2000年以后)

① 信号处理能力更加完善,而且使系统开发更加方便、程序编辑调试更加灵活、功耗进一步降低、成本不断下降。

② 各种通用外设集成到片上,大大地提高了数字信号处理能力。

③ DSP运算精度可达到单指令周期10ns左右,可在Windows下用C语言编程,使用方便灵活。

④ 广泛应用:通信、计算机领域,并渗透到日常消费领域。

DSP的现状

① 制造工艺:早期DSP采用4μm的NMOS(N型金属氧化物半导体)工艺。芯片引脚从原来的40个增加到200个以上,需要设计的外围电路越来越少,成本、体积和功耗不得不降。

② 存储器容量:早期的DSP西片,其片内程序存储器和数据存储器只有几百个单元。目前,片内程序和数据存储器可达到几十K字以上,而片外程序存储器和数据存储器可达到16M×48位和4G×40位以上。

③ 内部结构:目前,DSP内部均采用多总线、多处理单元和多级流水线结构,加上完善的接口功能,使DSP的系统功能、数据处理能力和与外部设备的通信功能都有了很大的提高。

④ 运算精度:近20年的发展,使DSP的指令周期从400ns缩短到10ns以下,其相应的速度从2.5MIPS(单字长定点指令平均执行速度)以上。如TMS320C6201执行一次1024点复数FFT运算的时间只有66μS。

⑤ 高度集成化:集滤波、A/D(模拟数字转换)、D/A(数字模拟转换)、ROM(只读存储器)、RAM(随机访问存储器)和DSP内核于一体的模拟混合式DSP芯片已有较大的发展和应用。

⑥ 运算精度和动态范围:DSP的字长从8位已增加到32位,累加器的长度也增加到40位,从而提高了运算精度。同时,采用超长字指令字(VLIW)结构和高性能的浮点运算,扩大了数据处理的动态范围。

⑦ 开发工具:具有较完善的软件和硬件开发工具,如:软件仿真器Simulator、C编译器和集成开发环境CCS等,给开发应用带来很大方便。CCS是TI公司针对本公司的DSP产品开发的集成开发环境

DSP的发展趋势

① DSP的内核结构将进一步改善:多通道结构和单指令多重数据(SIMD)、特大指令字组(VLIM)将在新的高性能处理器中占主导地位,如ADI公司的ADSP-2116X。

② DSP和微处理器的融合

微处理器MPU:是一种执行智能定向控制任务的通用处理器,它能很好地执行智能控制任务,但是对数字信号的处理功能较差。

DSP处理器:具有高速的数字信号处理能力。

将DSP和微处理器结合起来,可简化设计,加速产品的开发,减少PCB体积,降低功耗和整个系统的成本。

③ DSP和高档CPU的融合

大多数高档MCU、如Pentium(奔腾)和PowerPC都是SIMD指令组的超标量结构,速度很快。

在DSP中融入高档CPU的分支预示和动态缓冲技术,具有结构规范、理由编程、不用进行指令排队,使DSP性能大幅度提高。

④ DSP和SOC的融合:SOC是指把一个系统集成在一个芯片上。这个系统包括DSP和系统接口软件等。

⑤ DSP和FPGA的融合:FPGA是现场可编程逻辑门阵列器件。它和DSP集成在一块芯片上,可实现宽带信号处理,大大提高信号处理速度。

⑥ 实时操作系统RTOS与DSP的结合

随着DSP处理能力的增强,DSP系统越来越复杂,使得软件的规模越来越大,往往需要运行多个任务,各任务间的通信、同步等问题就变得非常突出。

随着DSP性能和功能的日益增强,对DSP应用提供RTOS的支持已成为必然的结果。

⑦ DSP的并行处理结构

为了提高DSP芯片的运算速度,各DSP厂商纷纷在DSP芯片中引入并行处理机制,主要分为片内并行和片间并行。在同一时刻将不同的DSP和不同的任一存储器连通,大大提高数据传输的速率。

⑧ 功耗越来越低

随着超大规模集成电路技术和先进的电源管理设计技术的发展,DSP芯片内核的电源电压将会越来越低。

DSP芯片的分类

① 按照数据格式:定点、浮点

② 按照字长大小:16位、24位、32位

③ 按照不同生产厂家的产品系列

1)TI公司的TMS320系列

2)AD公司的ADSP21系列

3)AT&T公司的DSP16/31系列

4)Motorola公司的MC5600/MC9600系列

5)NEC公司的μPD77系列

衡量DSP芯片运算速度的常用指标

① 指令周期:执行一条命令所需要的时间,通常以纳秒(ns)为单位

② MAC时间:完成一次乘法-累加运算所需要的时间

③ FFT运算时间:运行一个N点FFT程序所需的时间

④ MIPS:百万条指令(秒):按公式S=J/(T_i*10^(-6))计算,其中T_i为指令周期(单位ns),J为每周期并行指令数。

⑤ MOPS:百万次操作(秒)

⑥ MFLOPS:百万次浮点操作(秒)

DSP的综合评价指标:BDTI(伯克利分校设计技术有限公司)提出一种使用核心算法和应用测试的方法。核心算法是构成多数数字信号处理系统的基本模块,包括:FFT、向量加、向量点积、滤波器、控制(转移、压栈、出栈、位操作)

选择DSP芯片考虑的因素:

① 运算速度:MAC、FFT、MIPS、MOPS、MFLOPS

② 价格

③ 硬件资源:片内RAM、ROM数量,可扩展程序和数据空间、接口等

④ 运算精度(字长)

定点:一般16位或32位,少数24位

浮点:一般32位,累加器为40位

⑤ 开发工具

⑥ 功耗

⑦ 其他因素

1.5 DSP芯片产品简介

DSP芯片主要厂商

① TI公司(美国德州仪器公司)

② AT&T公司(美国电话电报公司,现在的Lucent公司)

③ Motorola公司(美国摩托罗拉公司)

④ ADI公司(美国亚德诺半导体技术有限公司)

⑤ NEC公司(日本电器股份有限公司)

⑥ 其他公司

TI公司的DSP芯片介绍:

该公司自1982年推出第一款定点DSP芯片,共计已发展了七代产品。其中,定点运算单处理器的DSP有七个系列,浮点运算单处理器的DSP有三个系列,多核处理器的DSP有一个系列。主要按照DSP的处理速度、运算精度和并行处理能力分类,每一类产品的结构相同,只是片内存储器和片内外设配置不同。

经典产品:TM320C1X、TMS320C25、TMS320C3X/4X、TMS320C5X、TMS320C8X

目前主流系列:

① TMS320C2000:用于数字化控制领域

② TMS320C5000:用于通信、便携式应用领域

③ TMS320C6000:音视频技术、通信基站

④ 达芬奇系列:视频处理器

TI DSP传统的分法:C2000、C5000、C6000

C2000(32位):主要用于控制领域,如汽车、洗衣机、打印机等,TMS320C28XX/F28X

C5000(16位):超低功耗、便携式,TMS320CC55X

C6000(32位):高性能、复杂功能,TMS320C674X、TMS320C66X

1.6 DSP应用领域

DSP应用领域:

通信、消费电子和自动控制、计算机、军事/航空、仪器仪表、工业控制、办公自动化

① DSP技术在多媒体通信的应用:

文字、语言、图像、数据等媒体就是我们平时所说的多媒体。其中视频和音频数据占多媒体数据的绝大部分。对音视频的数字化处理量是非常庞大的,需要先采用先进的压缩编码算法进行压缩处理,大大缩小占用的空间,提高数据传输效率,这样多媒体通信系统才能普遍实现。这就需要在多媒体终端快速处理信息,用户得到良好的体验交互。DSP的出现使其成为了现实,它在语音编码、图像压缩与还原等多媒体图像中得到充分的应用。

实现了H.265、H.264 BP/HP、MPEG4(动态图像专家组)、JPEG(图像文件格式)、JPEG2000图像和视频的编码解码。

类型 平台

硬核 HDVICP

编解码库 DSP-CPU

手工编写源代码 DSP-CPU

基于DSP和DSP+ARM内核处理器产品系列支持音频应用。从混音、回声、消除、去噪、识别、到音频放大器、音频视频接收器等多种应用。TI所有系列的处理器如C55X、C674X、C66X均用于音频处理。

② DSP在仪器仪表邻域的应用

DSP已经涉足测量仪表和测试仪器行业,而且大有取代高档单片机的趋势。使用DSP开发测量仪表和测试仪器可将产品提升到一个崭新的水平。新款DSP丰富的片内资源可以大大简化仪器仪表的硬件电路,实现仪器仪表的SOC(片上系统)设计。仪器仪表的测量精度和速度是一项重要的指标,使用DSP芯片开发产品使这两项指标大大提高。

③ DSP技术军事上的应用

现代智能化高精尖武器设备中,都离不开嵌入式系统和DSP技术。DSP的功耗低、体积小、实时性反应速度都是武器装备中特别需要的。如机载空空导弹,在有限的体积内装有红外探测仪和相应的DSP信号处理器等部分,完成目标的自动锁定与跟踪。先进战斗机上装备的目视瞄准器和步兵个人携带的头盔式微光仪,需用DSP技术完成图像的滤波与增强,智能化目标搜索捕获。DSP技术还用于自动火炮控制、巡航导弹、预警飞机、相控阵天线等雷达数字信号处理中。

1.7 DSP系统及设计过程

设计步骤分为几个阶段

① 明确设计任务,确定设计目标。

② 算法模拟,确定性能指标。

③ 选择DSP芯片和外围芯片。

④ 设计实时的DSP运用系统。

⑤ 硬件和软件调试。

⑥ 系统集成和测试。

流程图:根据需求写出任务书确定设计目标→算法研究和系统模拟实现定义系统性能指标→选择DSP芯片和外围芯片→硬件和软件设计→硬件和软件调试→系统集成和调试

学习过程中要求做到以下几点:

① 多读:DSP处理器芯片、周边芯片等内部结构复杂,采用较多最新技术,没有教材能反映相关内容,需要通过阅读相关的手册和英文资料来正确理解芯片各个部分原理和功能。

② 多动手:DSP芯片内部外设比较复杂,只能通过动手编程才能掌握芯片的控制方法和手段;DSP处理器的目标是实时实现各种信号处理算法,需要掌握程序代码的优化技术;DSP开放平台通常提供软件、硬件资源,对这些资源的使用需要通过实践才能较好地掌握。

③ 多思考与总结:DSP开发技术的学习曲线较陡,需要不断总结与积累才能提高。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3