版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
复习内容及考试安排
一、考试题型
1、选择题:每空1分,共7分
考察点:
易混淆的概念(DSP芯片系列分类、总线结构及作用、存储器结构及配置、流水线操作、中断控制、指令理解)
2、填空题:每空1分,共20分
考察点:(1)DSP芯片性能特点(工作频率/采样周期/MAC运算速度等);(2)5402DSP外部引脚及其工作电源(地址引脚/数据引脚/控制/VCDD/DVDD);(3)5402DSP程序、数据存储器寻址范围及其片上存储器资源;(4)5402DSP内部结构、硬件资源及其中断系统(中断源、中断地址等);(5)5402DSP的7种寻址方式的特点及其表示;(6)5402DSP中小数的Q15定标计算及其表示;(7)5402DSP汇编程序语法、数域、及其书写格式;
15、阅读改错并回答问题:1大题,共10分
4、阅读程序并回答问题:1大题,共20分考察点:(1)汇编程序与存储器配置cmd文件的阅读、理解、计算与分析;(2)汇编程序中段的类型名称、地址分配及其与cmd文件的对应关系;(3)汇编程序的加、减、乘、除运算操作以及数据的装载、存储与执行过程分析;考察点:(1)汇编程序的阅读理解、分析计算与地址指针的正确运用等;(2)汇编程序的书写格式、语法规则以及易混淆出错之处;(3)存储器配置cmd文件的书写格式以及易混淆出错之处;3、简答题:4小题,共13分考察点:(1)5402DSP直接寻址、间接寻址、中断矢量地址计算;(2)5402DSP汇编指令功能理解、执行过程计算及执行结果填写等;26、程序设计题:1大题,共30分
考察点:CLKMD、PRD、TCR、IMR等寄存器的初始化设置与计算;中断矢量表程序段的结构及其正确书写;线性缓冲区/循环缓冲区间接寻址的FIR子程序设计;(4)链接命令cmd文件的格式结构及其正确书写;(5)系数表中小数的表示;(6)间接寻址时数据地址指针的正确运用;(7)输入/输出端口地址设置以及数据的读入与写出;(8)基于CCS软件平台的DSP工程建立、开发及调试过程以及
产生的各种文件名称及其后缀。3DSP技术
DSP技术是DigitalSignalProcessing开头字母的缩写形式,意为数字信号处理(过程或技术)。凡是利用计算机或专用数字设备,以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等运算处理,均称为数字信号处理。在近二十多年时间里,数字信号处理技术已经在电子信息、图象处理、通信系统等领域得到了极为广泛的应用。4数字信号处理包括两方面的内容DSP技术算法研究——理论研究。常用算法:卷积、滤波、FFT。算法特点:大量的乘法累加运算。算法实现——应用研究。
理论研究与应用研究是相互促进,共同发展的。
5
序列长度
DFT算法FFT算法高效FFT算法乘法加法乘法加法乘法加法
12832768326401792268810241664
25613107213081640966144230437125125242885237769216138245120819210242097152209612820480307201126417920算法研究DSP技术6在通用的计算机(如PC机)上用软件实现在通用计算机系统中加上专用的加速处理机实现用通用的单片机(如MCS—51、96系列等)实现用通用的可编程DSP芯片实现用专用的DSP芯片实现用FPGA/CPLD开发ASIC芯片(SOPC)实现数字信号处理算法DSP技术算法实现7不同软件可在一个硬件系统上实现不同功能DSP技术8
典型的DSP系统DSP技术9DSP技术DSP系统一般组成10
DSP芯片,又称数字信号处理器(DigitalSignalProcessor,简称DSP),是伴随着数字信号处理技术和集成电路微电子技术的高速发展应运而生的,它的诞生为数字信号处理技术的实现提供了高效而可靠的硬件基础,已成为数字信号处理算法的主要实现手段。数字信号处理器DSP芯片DSP芯片11DSP芯片DSP芯片主要特点
哈佛及改进的哈佛结构程序与数据空间分开
多处理单元算逻单元ALU、双累加器ACCA/ACCB、专用硬件乘法器、移位器、比较器等
流水线操作2-6级流水线,实现单指令周期操作多总线结构8-12条总线,可并行执行多个操作丰富的片内外设、快速的中断处理及硬件I/O支持特殊的DSP指令FIR、FFT及位倒序寻址等快速的指令周期(10-40)ns的单指令周期12DSP芯片哈佛结构早期的微处理器大多采用冯·诺曼(Von-Neumann)结构,将指令、数据存储在同一存储空间中,统一编址,依靠指令计数器提供的地址来区分是指令地址、还是数据地址。取指令和取数据访问同一存储器,通过一条总线分时进行,数据吞吐率低。哈佛(Havard)结构是不同于传统冯·诺曼结构的并行体系结构,其主要特点是将程序和数据存储在不同的存储空间中,每个存储器独立编址,独立访问,允许同时取指令和取操作数,从而使数据的吞吐率提高了一倍。13采用冯.诺依曼结构的处理器:程序和数据存储空间合二而一DSP芯片14采用哈佛结构的DSP处理器:程序和数据分开存储DSP芯片15多总线结构
DSP芯片内部大都采用多总线结构,以保证在一个机器周期里可以同时访问程序空间和数据空间。
TMS32054xx内部共设置了8条总线,包括一条程序总线,三条数据总线和四条地址总线,可保证在一个机器周期内从程序存储器取1条指令、从数据存储器读2个操作数和向数据存储器写1个操作数,大大提高了DSP的运行速度。一般来说,内部总线是个十分重要的资源,总线越多,运行速度越快,可以完成的功能也越复杂。DSP芯片16系统控制
程序地址控制数据地址控制PAB控制界面特殊功能寄存器PBCABCBDABDBEABEB
程序/数据存储器串行口并行口定时器计数器中断存储控制界面外设控制界面
乘法器加法器
算术逻辑运算
桶形移位器
中央处理器
比较器
多总线结构DSP芯片17
DSP芯片广泛采用流水线以减少指令执行时间,从而增强处理器的并行处理能力。DSP执行一条指令,需要经过取指、译码、取操作数和执行等几个阶段,采用流水线结构,程序运行过程中这几个阶段是重叠进行的,即在执行本条指令的同时,还依次完成了后面几条指令的取操作数、译码和取指等过程,可降低指令周期,提高运行速度。DSP芯片流水线结构18TMS320系列处理器的流水线深度从2--6级不等。DSP芯片19第一阶段(1980年前后),DSP雏形阶段:运算速度大约为单指令周期200一250nsDSP芯片发展过程代表性器件有:1978年
AMI公司发布S2811(不含硬件乘法器)1979年Intel公司发布2920(不含硬件乘法器)1980年NEC公司推出μPD7720(含硬件乘法器)1982年TI公司推出定点DSP芯片TMS32010DSP芯片发展20代表性器件有:TI公司系列产品TI公司自1982年推出第一款定点DSP芯片TMS32010后,相继推出了七代定点DSP:
C1X、C2X、C2XX、C5X、C54X及C6X
三代浮点DSP:C3X、C4X、C67X
以及高性能DSP芯片TMS320C80等。DSP芯片发展过程DSP芯片发展第二阶段(1990年前后),DSP成熟阶段:运算速度大约为单指令周期40一100ns,含硬件乘法器、硬件FFT、单指令滤波处理等功能部件。21除TI公司外,AD公司、Motorola公司、LUCENT公司也占据部分市场分额,目前市场上DSP共300多种,其中定点DSP达200多种,DSP生产厂商超出80家。第三阶段(2000年前后),DSP完善阶段:运算速度大约为单指令周期10ns左右,片上集成通用外设,芯片的价格不断下降,促进了DSP的普及和应用。DSP芯片发展过程DSP芯片发展2223
公司DSP芯片推出时间(年)MAC周期(ns)定点位数浮点位数TITMS32010TMS32020TMS320C25TMS320C30TMS320C40TMS320C50TMS320C203TMS320LC549TMS320C62X19821987198919891992199019961996199739020010060403512.510516/3216/3216/3224/323216/3216/3216/3216/3232/4040TI公司推出的DSP芯片其2XX系列DSP具有较高的控制功能,广泛应用于工业自动化、电机控制、家用电器和消费电子等领域.C5000系列DSP主要应用领域为:手机、数码相机、便携式媒体播放器、电信和IP产品。C6000系列DSP主要应用于:宽带通信、无线局域网、多媒体网关、语音识别、图像处理、医疗成象、安全认证、工业扫描机、高速打印、高级加密等。24
公司DSP芯片推出时间(年)MAC周期(ns)定点位数浮点位数NEC
PD7720
PD772301980198525015016/3232AMIS2811197830012/16MotorolaMC56001MC96002MC560021986199019917550502432/6424/4832/44
AT&TDSP32CDSP16ADSP321019881988199280256016或2416/362432/4032/40
ADADSP2101ADSP21020199019916040163232/40
其它公司推出的DSP芯片25为方便用户,各大DSP生产商都建立了自己的公司网站。如果需要查找具体的芯片资科,可以直接登陆相应的公司网站搜寻,这些公司的网址是:TI:www.ti.comMotorola:www.Motorola.comAD:www.ad.comNEC:www.nec.com26
DSP芯片可从以下几个方面分类:(1)按基础特性分:即根据DSP芯片的工作时钟和指令类型来分类静态DSP芯片一致性DSP芯片(2)按数据格式分:根据DSP芯片工作的数据格式来分类定点DSP芯片浮点DSP芯片(3)按用途分:按照DSP的用途来分类通用型DSP芯片专用型DSP芯片DSP芯片分类27DSP芯片分类按基础特性分如果在某时钟频率范围内的任何时钟频率上,DSP芯片都能正常工作,除计算速度有变化外,没有性能的下降,这类DSP芯片一般称为静态DSP芯片。TI公司的TMS320C2XX系列芯片均属于静态DSP芯片。如果有两种或两种以上的DSP芯片,它们的指令集及管脚结构相互兼容,则这类DSP芯片称为一致性DSP芯片。TI公司的TMS320C54X系列芯片就属于一致性DSP芯片。28DSP芯片分类按数据格式分数据以定点格式工作的DSP芯片称为定点DSP芯片,如TI公司的TMS320C1X/C2X、TMS320C2XX/C5X、TMS320C54X/C62XX系列,AD公司的ADSP21XX系列,AT&T公司的DSPl6/16A,Motorola公司的MC5600等。29DSP芯片分类按用途分按照用途,可将DSP分为通用型DSP芯片和专用型DSP芯片。
通用型DSP芯片适合普通的DSP应用,如TI公司的系列DSP芯片均属于通用型DSP芯片。
专用型DSP芯片是为特定的DSP运算而设计的,更适合特殊的运算,如数字滤波、卷积和FFT算法等,Motorola公司的DSP56200等就属于专用型DSP芯片。30DSP芯片的选择应考虑以下几个因素:DSP芯片选择原则(1)DSP芯片的运算速度(2)DSP芯片的运算精度(4)DSP芯片的开发工具(3)DSP芯片的硬件资源(5)DSP芯片的功耗(6)DSP芯片的价格31运算速度是DSP芯片的一个最重要的性能指标,也是选择DSP芯片时所需要考虑的一个主要因素。
指令周期:即执行一条指令所需的时间,通常以ns为单位。如TMS320C549-80在主频为80MHz时的指令周期为12.5ns。DSP芯片选择原则DSP芯片运算速度DSP芯片的运算速度可以用以下几种性能指标来衡量
MIPS:即每秒执行百万条指令数。如TMS320LC549-80的处理能力为80MIPS,即每秒可执行八千万条指令。32
MAC时间:即一次乘法和一次加法的时间。大部分DSP芯片可在一个指令周期内完成一次乘法和加法操作,如TMS320C549-80的MAC时间就是12.5ns。
FFT执行时间:即运行一个N点FFT程序所需的时间。由于FFT运算涉及的运算在数字信号处理中很有代表性,因此FFT运算时间常作为衡量DSP芯片运算能力的一个指标。DSP芯片选择原则应用实例采样率(kHz)采样周期(
s)256抽头LMS滤波运算量(MAC数)1#每样点允许MAC指令数(指令周期200ns)2#每样点允许
MAC指令数(指令周期50ns)3#每样点允许MAC指令数(指令周期25ns)话音8125768125/0.2=625
125/0.05=2500125/0.025=5000声频44.122.776822.7/0.2=11322.7/0.05=45322.7/0.025=907运算速度是选择DSP芯片的重要依据:33一般定点DSP芯片的字长为16位,如TMS320系列。但有的公司的定点芯片为24位,如Motoro1a公司的MC5600l等。浮点芯片的字长一般为32位,累加器为40位。DSP芯片选择原则DSP芯片运算精度34
不同的DSP芯片所提供的硬件资源是不相同的。
TMS320c5xx系列与TMS320c2xx系列片内资源相差甚大如片内RAM、ROM的数量,外部可扩展的程序和数据空间,总线接口,I/O接口等。即使是同一系列的DSP芯片(如TI的TMS320c54x系列),系列中不同DSP芯片也具有不同的内部硬件资源,可以适应不同的需要。DSP芯片选择原则DSP芯片硬件资源35
在DSP系统的开发过程中,开发工具是必不可少的。如果没有开发工具的支持,要想开发一个复杂的DSP系统几乎是不可能的。如果有功能强大的开发工具的支持,如集成开发环境CCS的支持,则开发时间就会大大缩短。所以,在选择DSP芯片的同时必须注意其开发工具的支持情况,包括软件和硬件的开发工具。DSP芯片选择原则DSP芯片开发工具36
在某些DSP应用场合,功耗也是一个需要特别注意的问题。如便携式的DSP设备、手持设备、野外应用的DSP设备等都对功耗有特殊的要求。目前3.3/1.8v供电的低功耗、高速DSP芯片已大量使用。DSP芯片选择原则DSP芯片功耗37
DSP芯片的价格也是选择DSP芯片所需考虑的一个重要因素。如果采用价格昂贵的DSP芯片,即使性能再高,其应用范围肯定会受到一定的限制,尤其是民用产品。因此根据实际系统的应用情况,需确定一个价格适中的DSP芯片。当然,由于DSP芯片发展迅速,DSP芯片的价格往往下降较快,因此在开发阶段选用某种价格稍贵的DSP芯片,等到系统开发完毕,其价格可能己经下降一半甚至更多。DSP芯片选择原则DSP芯片价格38
除了上述因素外,选择DSP芯片还应考虑到封装的形式、质量标准、供货情况、生命周期等。如果所设计的DSP系统不仅仅是一个实验系统,而是需要批量生产并可能有几年甚至十几年的生命周期,那么需要考虑所选的DSP芯片供货情况如何,是否也有同样甚至更长的生命周期等。DSP芯片选择原则其他39在上述众多因素中,一般而言,定点DSP芯片的价格较便宜,功耗较低,但运算精度稍低。而浮点DSP芯片的优点是运算精度高,且C语言编程调试方便,但价格稍贵,功耗也较大。例如TI的TMS320C2XX/C54X系列属于定点DSP芯片,低功耗和低成本是其主要的特点。而TMS320C3X/C4X/C6X属于浮点DSP芯片,运算精度高,用C语言编程方便,开发周期短,但指令执行周期不可预测,同时其价格和功耗也相对较高。40
通用DSP比单片机推出时间稍晚,而复杂度、性能要高得多。以最简单的性能指标MIPS(百万条指令每秒)为例,单片机为1~10MIPS,DSP为50~100MIPS。单片机只有少量总线,且地址、数据线分时复用;而DSP具有多总线结构,且地址、数据线分开,还有比异步串口(UART)速度高得多的同步串口或通信口,数据输入、输出能力较强。DSP数据位宽、乘加器位宽也比单片机大,进行数字信号处理时不仅速度快、精度也高。DSP有大容量的的片内存储器。但单片机的控制接口种类比DSP多,适合于以控制为主的模数混合设计。DSP芯片与单片机比较DSP与单片机41
DSP与FPGA/CPLD
FPGA/CPLD与专用DSP一样,是用硬件完成数字信号处理运算的,其单一运算的速度很高,输入至输出的延迟也比通用DSP小,适合于FPGA/CPLD完成的数字电路功能和数字信号处理功能有计数、译码、锁存、状态机、乘加、FIR、FFT、编码器、查表、FIFO等。但它在进行数字信号处理算法的灵活性及各种混合功能的实现性方面不如DSP芯片。数字电路设计中常把DSP的灵活性和FPGA/CPLD的高效、高速结合在一起,充分发挥二者各自在软件、硬件上的可编程能力。
DSP芯片与可编程器件比较42DSP芯片应用领域
DSP芯片应用领域43(5)军事——如保密通信、雷达处理、声纳处理、导航、导弹制导等;(6)仪器仪表——如频谱分析、函数发生、锁相环、地震处理等;(7)自动控制——如电机控制、电力系统控制、机器人控制、磁盘控制、自动驾驶、安全检测等;(8)医疗——如助听、超声设备、诊断工具、病人监护等;(9)家用电器——如高保真音响、音乐合成、音调控制、玩具与游戏、数字电话/电视等。DSP芯片应用领域44
DSP系统开发流程
根据需求写出任务说明书根据任务书确定技术指标选择DSP芯片及外围芯片总体设计确定软硬件分工软件设计说明书硬件设计说明书软件编程与调试硬件(.sch/.pcb)系统集成硬件调试系统测试、样机完成、联试、产品测试与生产DSP系统开发流程45
DSP知识平台
DSP技术
计算机学科
电子学科
计算机硬件计算机软件
电子线路数字信号处理46
第1章习题1.举例说明数字信号处理技术的特点与应用。2.简述DSP芯片的主要特点、分类方法及其选择原则。3.设某DSP芯片的MAC时间为40ns,应用于128阶FIR滤波系统设计时,理论上,被处理信号的最高频率不得高于多少?47第2章
TMS320C54XDSP硬件结构
48本章内容1、TMS32054XDSP结构特点2、TMS32054XDSP结构框图3、TMS32054XDSP总线结构4、TMS32054XDSP存储器结构5、TMS32054XDSP处理器结构6、TMS32054XDSP片上外设
7、TMS32054XDSP芯片引脚
8、TMS32054XDSP复位操作49TMS32054XDSP结构特点结构特点
10-25ns的指令周期(40-100MIPS)高效快速
192K×16位的(最小)可寻址存储空间哈佛结构两个40位累加器ACCA、ACCB
40位算术逻辑单元(ALU),包括一个40位的桶型移位寄存器
17×17位硬件乘法器,允许16位带符号或不带符号的乘法
4组数据/地址内部总线及双地址生成单元多总线结构
8个辅助寄存器及一个堆栈
2—6级的并行流水线操作流水线结构
1.8V,2.5V,3.3V低功耗节电模式,宜于电池供电应用丰富的片内外设,包括串、并接口,软件可编程定时器、等待状态发生器及可配置PLL的时钟发生器50
TMS320C54xDSP内部由中央处理器CPU、程序/数据存储器、内部总线及其控制、片内外设等几大部分组成结构框图系统控制
程序地址控制数据地址控制PAB控制界面特殊功能寄存器PBCABCBDABDBEABEB
程序/数据存储器
串行口并行口定时器计数器中断存储控制界面外设控制界面
乘法器加法器
算术逻辑运算
桶形移位器
中央处理器
比较器
51多总线结构可以在每个指令周期内产生两个存储地址,实现流水线并行数据处理,提高操作的性能和灵活性。总线结构
TMS320C54x采用多总线结构,片内共有8条16位总线即:4条程序/数据总线和4条地址总线包括:一条程序总线(PB)、三条数据总线(CB、DB、EB)
四条地址总线(PAB、CAB、DAB、EAB)TMS32054XDSP总线结构52
这些总线的功能是
总线结构PB传送取自程序存储器的指令代码和立即操作数CB和DB传送读自数据存储器的操作数(LD)EB传送写到存储器(程序/数据)的数据(ST)4条地址总线(PAB、CAB、DAB和EAB)传送指令代码及操作数的地址下面以程序的6级执行过程为例说明各总线使用情况53
DSP芯片广泛采用流水线结构以减少指令执行时间,流水线深度从2--8级不等,VC5402DSP采用6级流水操作,代表1条指令执行的6个步骤,如下图所示。
PrefetchFetchDecodeAccessReadExecute/write上图中的6级流水操作是相互独立的,在任何一个给定周期内,流水线各级上都会有1到6条指令的不同操作在运行,即允许重叠执行。6级流水操作的功能分别是:Prefetch:预取指,把将要执行的指令地址提供给程序地址总线PAB。Fetch:取指,从程序总线PB上读取程序指令,并放入指令寄存器IR。Decode:译码,指令寄存器IR中的内容被译码,同时判定操作数类型、寻址方式及控制顺序。Access:访问寻址,数据地址产生单元DAGEN把将要访问的数据存储区地址提供给数据地址总线DAB和CAB。Read:读操作数,从数据总线DB和CB上读取操作数,同时把将要写的数据存储区地址提供给写地址总线EAB。Execute/write:执行/写操作,执行指令,同时通过数据写总线EB完成写操作。
时钟
PC内容加载PAB指令内容通过PB加载IR
PB内容在IR中被译码操作数1/2地址加载DAB/CAB操作数1/2加载DB/CB存储地址加载EAB执行结果加载EB54读写方式PABCABDABEAB
PBCBDBEB程序读√√程序写√√单数据读√√双数据读√√√√长数据读√(hw)√(lw)√(hw)√(lw)单数据写√√数据读/
数据写√√√√双数据读/
系数读√√√√√√双数据读/
数据写√√√√√√外设读√√
总线结构程序执行读写操作时用到的总线55
TMS320C54xDSP采用改进的哈佛结构,分成3个独立的存储空间:
存储器结构
64K字的程序存储空间。程序存储器空间存放要执行的指令和执行中所用的系数表。
64K字的数据存储空间。数据存储器存放执行指令所要用的数据(操作数)。
64K字的I/O空间。I/O存储空间与存储器映象外围设备相接口,也可以作为附加的数据存储空间使用。TMS32054XDSP存储器结构虽然C54xDSP提供了至少192K字的存储空间,但真正存储容量是由芯片实际存储器的大小决定的。56所有’C54x片内部都含有数据存储器和程序存储器,
但不同型号芯片的RAM和ROM容量是不相同的。
存储器结构存储器型式’C541’C542’C543’C548’C549’C5402’C5409
ROM
28K
2K
2K
2K16K
4K
4K程序存储器
20K
2K
2K
2K16K
4K
4K程序/数据
8K
0
0
0
0
0
0
DARAM
5K
30K10K
8K
8K16K32K
SARAM
0
0
024K24K
0
057存储器结构一般来说,片内RAM被优先安排到数据存储空间;片内ROM被优先激活于程序存储空间。但在改进的哈佛结构中,片内RAM可以部分地被配置为程序存储空间;片内ROM也可以部分地被定义为数据存储空间。在改进的哈佛结构中,用户可根据需要,通过设置工作方式控制寄存器PMST的3个位控信息MP/MC,OVLY和DROM,灵活方便地将片内ROM和RAM(包括SARAM和DARAM)配置定义为程序存储空间或数据存储空间。其中MP/MC、OVLY影响程序存储空间配置,DROM影响数据存储空间配置5864K程序存储空间64K程序存储空间64K数据存储空间所有’C54x片内部都含有数据存储器和程序存储器,
但不同型号芯片的RAM和ROM容量及驻留区域是不相同的
59VC5402DSP片内配置有4K字的ROM,驻留在程序存储空间的F000H—FFFFH区间内。程序存储器CPU工作方式控制位MP/MC决定了F000H—FFFFH(4K字)程序空间的片内/片外地址分配及片内ROM的使用情况。MP/MC=1,F000H—FFFFH(4K字)程序空间定义为片外存储器。MP/MC=0,F000H—FFFFH(4K字)程序空间定义为片内存储器。重复占用控制位OVLY决定了0000H—3FFFH(16K字的DARAM)程序空间的片内/片外地址分配及片内DARAM的使用情况。OVLY=1,0080H—3FFFH(约16K字)可定义为片内程序存储空间,能片内寻址(但不得与数据存储地址重叠);OVLY=0,0000H—3FFFH(16K字)被定义为片外程序存储空间,只能片外寻址(0000H—3FFFH全部作为数据存储地址)。
MP/MC和OVLY位的状态影响着程序存储空间的分配F800H—FBFFH(1K字):Bootload引导程序FC00H—FCFFH(256字):u律扩展表FD00H—FDFFH(256字):A律扩展表FE00H—FEFFH(256字):sine表FF00H—FF7FH(128字):机内自检程序FF80H—FFFFH(128字):中断矢量表60两个控制位可通过PMST寄存器软件设置,其状态对VC5402DSP程序存储空间配置的影响见下表MP/MCOVLY程序存储空间配置1064K的程序存储空间全部定义为外部程序存储器,需片外寻址11007FH—3FFFH(约16K字)DARAM可定义为片内程序存储器;4000H—FFFFH(48K字)定义为外部程序存储器,需片外寻址000000H—EFFFH(60K字)定义为外部程序存储器,需片外寻址;F000H—FFFFH(4K字)定义为片内程序存储器(2K字保留)01007FH—3FFFH(约16K字)DARAM可定义为片内程序存储器;4000H—EFFFH(44K字)定义为外部程序存储器,需片外寻址;F000H—FFFFH(4K字)定义为片内存储器(2K保留)程序存储器61
MP/MC可以通过装载PMST寄存器软件设置,也可以通过MP/MC引脚(32)硬件设置。程序存储器硬件复位时,CPU首先检测MP/MC引脚状态并存储到PMST中如果MP/MC引脚为低电平,则VC5402片内的4K字ROM将自动映射到程序存储空间第0页的F000H—FEFFH内,同时,中断向量指针指向片内程序存储空间的FF80H。如果MP/MC引脚为高电平,则程序空间全部定义为片外存储器,中断向量也被映射到片外程序存储空间的FF80H—FFFFH。硬件复位后,CPU将忽略MP/MC引脚状态,可通过软件编程设置MP/MC控制位来决定程序存储空间的分配.62数据存储器
0000H—007FH(128字)为特殊功能寄存器空间,CPU及片内外设寄存器驻留在该区域,构成DSP存储器映像寄存器MMR;
0080H—3FFFH(约16K字)为片内DARAM数据存储空间,当CPU产生的数据地址在片内数据存储器范围内时,可直接对片内数据存储器寻址;
4000H—EFFFH(44K字)为片外数据存储空间,需外扩片外数据存储RAM,当CPU产生的数据地址不在片内数据存储器范围内时,则自动对片外数据存储区寻址;
F000H—FFFFH(4K字)的数据存储空间的片内/片外地址分配由DROM位控制决定:
DROM=1,F000H—FFFFH可部分地定义为片内数据存储空间;
DROM=0,F000H—FFFFH定义为片外数据存储空间。VC5402DSP片内含有16k字的DARAM,驻留在数据存储空间的0000H—3FFFH区间内,可片内寻址。63控制位DROM可通过PMST寄存器软件设置,其状态对
VC5402DSP数据存储空间配置的影响见下表DROM数据存储空间配置00000H—3FFFH(16K字)DARAM定义为片内数据存储器;4000H—FFFFH(48K字)定义为外部数据存储器,需片外寻址10000H—3FFFH(16K字)DARAM定义为片内数据存储器;4000H—EFFFH(44K字)定义为外部数据存储器,需片外寻址;F000H—FFFFH(4K字)部分定义为片内数据存储器数据存储器64为提高CPU并行处理能力,通常将数据存储器划分为80H个存储单元(128字)的数据块,构成若干个数据页。
VC5402可寻址64K字的数据存储空间,即64K的数据空间可被分成512页(其中片内16K字的DARAM被分成128页),每页128个字单元。数据存储器VC5402数据存储空间及其DARAM前1K字的空间配置示意如下图所示。65DP9-bit9-bit的DP指向数据存储空间的512个数据页中的一页0125105117-bit的偏移地址指向某数据页中128个单元中的一个LD#0000H,ALD#02H,DPADD00H,16,ASTHA,7FH数据存储器66
VC5402的数据存储器及其DARAM前1K字的空间配置示意图存储器映像CPU寄存器(DP=0)存储器映像外设寄存器(DP=0)DARAM(DP=1)DARAM(DP=2)DARAM(DP=3)DARAM(DP=4)DARAM(DP=5)DARAM(DP=6)DARAM(DP=7)0000H0020H0080H0100H0180H0200H0280H0300H0380H数据存储器03FFH67图中看出,C5402DSP片内DARAM的前1K字中,数据存储空间第0页被配置为特殊功能寄存器区,驻留着存储器映像CPU/外设寄存器,用户不得占用(OVLY位的设置对其不起作用):0000H一001FH区间内连续分布着30个CPU特殊功能寄存器;0020H一007FH区间内,分布着片上外设处理寄存器。
数据存储器这些位于数据存储空间第0页上的特殊功能寄存器均属存储器映像寄存器MMR。寻址存储器映像CPU寄存器无须等待时间,而寻址存储器映像外设寄存器则至少需要2个机器周期,具体由片内外设电路决定。
从0080H开始将DARAM分成每80H(128字)个存储单元为一个数据页,以便于CPU的并行操作,提高芯片的高速处理能力。68CPU映射寄存器IMR00中断屏蔽寄存器IFR11中断标志寄存器—2-52-5保留(用以测试)ST066状态寄存器0ST177状态寄存器1AL88累加器A的低位字(15—0)AH99累加器A的高位字(31—16)AG10A累加器A的保护位(39—32)BL11B累加器B的低位字(15—0)BH12C累加器B的高位字(31—16)BG13D累加器B的保护位(39—32)TREG14E暂时寄存存器TRN15F转换寄存存器CPU
映射寄存器69AR01610辅助寄存存器0AR11711辅助寄存存器1AR21812辅助寄存存器2AR31913辅助寄存存器3AR42014辅助寄存存器4AR521`15辅助寄存存器5AR62216辅助寄存存器6AR72317辅助寄存存器7SP2418堆栈指针寄存器BK2519循环缓冲大小寄存器BRC261A块重复计数寄存器RSA271B块重复首址寄存器REA281C块重复尾址寄存器PMST291D处理器方式状态寄存器XPC301E扩展程序计数寄存器—311F保留CPU
映射寄存器70外设映射寄存器DRR203220McBSP0缓冲串口数据接收寄存器2DRR103321McBSP0缓冲串口数据接收寄存器1DXR203422McBSP0缓冲串口数据发送寄存器2DXR103523McBSP0缓冲串口数据发送寄存器1TIM3624定时器0减计数寄存器PRD3725定时器0周期寄存器TCR3826定时器0控制寄存器—3927保留SWWSR4028软等待状态寄存器BSCR4129外部块间转换控制寄存器—422A保留SWCR412B软等待状态控制寄存器HPIC442C主机接口控制寄存器—45-472D-2F保留
外设映射寄存器71TIM14830定时器1减计数寄存器PRD14931定时器1周期寄存器TCR15032定时器1控制寄存器—51-5533-37保留SPSA05638McBSP0口子区地址寄存器SPSD05639McBSP0口子区数据寄存器—58-593A-3B保留GPIOCR603C通用IO口控制寄存器GPIOSR613D通用IO口状态寄存器—62-633E-3F保留DRR216440McBSP1缓冲串口数据接收寄存器2DRR116541McBSP1缓冲串口数据接收寄存器1DXR216642McBSP1缓冲串口数据发送寄存器2DXR116743McBSP1缓冲串口数据发送寄存器1—68-7144-47保留SPSA17248McBSP1口子区地址寄存器SPSD17349McBSP1口子区数据寄存器—74-834A-53保留DMPREC8454DMA通道优先级和使能控制寄存器DMSA8555DMA子区地址寄存器DMSDI8656带地址自增的DMA子区数据寄存器DMSDN8757DMA子区数据寄存器CLKMD8858时钟模式寄存器—89-9559-5F保留72
54XDSP中所有的片内/片外--程序/数据存储器分别统—编址,从0000H-FFFFH。
存储器结构存储器小结所有54xDSP都含有片内数据存储器和程序存储器,但不同型号的DSP片内RAM和ROM容量及驻留区域不相同。
与片外存储器相比,片内存储器不需插入等待状态时间,具有速度快和功耗小等优点。当然,片外扩展存储器的存储能力,则是片内存储器无法比拟的。在改进的哈佛结构中,PMST的3个控制位MP/MC,OVLY和DROM可以灵活地重新配置片内ROM和RAM的程序/数据空间(地址不能重叠)。
MP/MC、OVLY影响程序存储空间配置,DROM影响数据存储空间配置73
TMS320C54x系列所有芯片的中央处理器CPU完全相同,由运算部件(硬件)和控制部件(软件)组成:
处理器结构2.控制部件控制部件是’C54x芯片的中枢神经。’C54x控制部件包括3个16位CPU工作状态和方式控制寄存器:状态寄存器ST0和ST1,工作方式控制寄存器PMST
。1.运算部件TMS320C54x运算部件硬件结构主要包括:(1)一个40位的算术逻辑运算单元(ALU)(2)两个40位的累加器(3)一个移位-16—30位的桶形移位寄存器(4)硬件乘法/累加器单元(5)16位数据暂存器(6)比较、选择和存储单元(CSSU)(7)指数编码器7440位算逻单元ALU40位累加器A/B桶形移存器乘法累加单元数据暂存器比较选择存储单元指数编码器75
40位的算术逻辑运算单元ALU执行算术和逻辑操作功能。大多数算术逻辑运算指令都是单周期指令。ALU的输入:(1)来自移位寄存器的输出(2)来自数据总线DB、CB的操作数(3)来自累加器A、B中的数据(4)来自寄存器T中的数据ALU的输出:除存储操作指令(ADDM、ANDM、ORM和XORM)外,ALU的运算结果通常都被传送到40位的目的累加器A或B中。ALU受SXM,OVM,C16,C位控制,同时影响OVA/B,ZA/B,TC位.算术逻辑运算单元运算部件76ALU结构框图运算部件77
累加器A和B都可以配置成乘法器/加法器或ALU的目的寄存器,用来存放从ALU和乘/加单元输出的数据同时,其运算结果也能输出到ALU或乘/加单元中。此外,在执行MIN和MAX指令或者并行指令LDMAC时都要用到它们(一个累加器加载数据,另一个完成运算)
累加器A和B的主要区别在于:累加器A的高16位可作为乘法器的一个输入,而累加器B则不能。累加器A和B都可分为三部分:累加器A和B运算部件78
bit39-32称作累加器的保护位,既可防止诸如自相关那样的迭代运算时溢出,也可用做符号扩展;Bit31-16称作累加器的高位字,Bit15-0称作累加器的低位字。
AGAHAL保护位高阶位低阶位累加器A39-3231-1615-0BGBHBL保护位高阶位低阶位累加器B39-3231-1615-0累加器A和B的差别在于累加器A的高16位可以用作乘法器的一个输入,而累加器B不能。运算部件79
’C54xDSP桶形移位寄存器的任务是为输入/输出的数据定标。有一个与累加器或数据总线(CB、DB)相连接的输入以及一个与ALU或EB总线相连接的输出,能将输入数据进行0-31位的左移和0-16位的右移。所移的位数由ST1中的移位数域(ASM)、被指定作为移位数寄存器的暂存器(TREG)或指令操作数决定。
移存器的输入:(1)来自数据总线DB、CB的操作数(16位/32位)(2)来自累加器A、B中的数据(40位)
移存器的输出:(1)至ALU的一个输入端(2)至写数据总线EB
移位操作受ASM,TREG,SXM,TC位与指令操作数的控制与影响。
桶形移位寄存器运算部件80MUXSigncontrolBarrelshifter(-16~31)MSW/LSMWriteselectEB15-EB0CB15-CB0DB15-DB0Legend:AAccumulatorABAccumulatorBCCBdatabusDDBdatabusTTregister1616CDAB4040BASXMTC(testbit)ALU4016CSSUT:-16through31rangeASM(4-0):-16through15rangeInstructionregisterimmediate:-16Through15or0through15range桶形移位寄存器结构框图
运算部件8140位的桶形移位寄存器功能任务是:(1)在ALU运算前,对来自数据存储器的操作数或者累加器的值进行定标。(2)对累加器的值进行算术或逻辑移位。(3)对累加器进行归一化处理。(4)对累加器存储到数据存储器的值送走之前进行定标。运算部件82
乘法/加法器由乘法器、加法器、带符号/无符号输入控制、小数控制、零检测器、舍入器、溢出/饱和逻辑电路和暂存寄存器TREG组成。
乘法器的一个输入端X的数据可从来自暂存寄存器T、累加器A的32—16位以及数据总线DB传过来的数据存储器操作数中选择;
乘法器的另一个输入端Y的数据则可从来自程序总线PB传过来的程序存储器操作数、DB总线和CB总线传过来的数据存储器操作数以及累加器A的32—16位中选择。
17X17乘法器的输出接至加法器的一个输入端。
乘法/加法器运算部件83
硬件乘法/加法器结构框图
运算部件84
40位加法器的一个加数来自硬件乘法器积的输出,另一个加数则来自累加器A或累加器B,一般在一个流水线周期内可以完成一次乘法累加运算。
加法器的输出通过零检测器、舍入器(2的补码)、溢出/饱和逻辑电路,送至工作状态寄存器,影响溢出标志和零标志。最后的运算结果送入两个目的累加器,A还是B,由运算指令决定。运算部件85
比较、选择和存储单元(CSSU)完成累加器的高位字和低位字之间的最大值比较,即选择累加器中较大的字并存储在数据存储器中,不改变状态寄存器ST0中的测试/控制位和传送寄存器(TRN)的值。同时,CSSU利用优化的片内硬件促进Viterbi型蝶形运算。比较,选择和存储单元(CSSU)运算部件86指数编码器是用于支持单周期指令EXP的专用硬件。在EXP指令中,累加器中的指数值能以二进制补码的形式存储在T寄存器中,范围为bit-8至31。指数值定义为前面的冗余位数减8的差值,即累加器中为消除非有效符号位所需移动的位数。当累加器中的值超过了32bits,该操作将产生负值。指数编码器运算部件87控制部件是’C54x芯片的中枢神经。‘C54x有三个状态和控制寄存器:状态寄存器ST0,状态寄存器ST1和处理器方式状态寄存器PMST。
ST0和ST1包括了各种条件和方式的状态,PMST则包括了存储器配置状态和控制信息。ST0(06H)ST1(07H)PMST(1DH)控制部件88IPTRMP/MCOVLYAVISDROMCLKOFFSMULSSTl
工作方式控制寄存器PMST(ProcessorModeStatus)
PMST主要设定并控制处理器的工作方式,同时反映处理器的工作状态,其各位的定义如下图所示。
IPTR(InterruptVectorPointer):中断向量指针。
IPTR的9位字段(15一7):16位中断向量地址的高9位。复位时,这9位全置成1,复位向量总是驻留在程序存储空间的FF80H地址处,即复位时,PC=FF80H。
115-76543210控制部件89
MP/MC(MicroProcess/MicroComputer):微处理器/微计算机工作方式选择位。这一位的信息可以由硬件连接方式决定,也可以由软件置位或清零选择。但复位时由硬件引脚连接方式决定。芯片复位时,CPU采样32#引脚的电平,电平为高时,芯片工作于微处理器状态,不能寻址片内的程序存储器(片内ROM);电平为低时,芯片工作于微计算机状态,可以寻址片内的程序存储器。
OVLY(Overlay):RAM重复占用标志位。OVLY=1,允许片内双访问数据RAM块映射到程序空间。即片上DARAM可作为程序空间寻址。但数据0页(0-7FH)作为特殊寄存器空间,不能映射。若OVLY=0,则片上RAM只能作为数据空间寻址。
DROM(DataROM):数据ROM位。DROM用来控制片内ROM能否映射到数据空间。DROM=1,片内ROM可以映射到数据空间;DROM=0,则片内ROM不可以映射到数据空间。控制部件90
AVIS(AddressVisibility):地址可见控制位。AVIS=1,允许在地址引脚上看到内部程序空间的地址内容;而当AVIS=0时,外部地址线上的信号不能随内部程序地址一起变化。
CLKOFF(ClockOff):时钟关断位。CLKOFF=1,94#CLKOUT引脚禁止输出;CLKOFF=0,CLKOUT引脚输出时钟脉冲。
SMUL(SaturationonMultiplication):乘法饱和方式位。SMUL=1,使用多项式加MAC或多项式减MAS指令进行累加时,对乘法结果进行饱和处理,
SST(SaturationonStore):存储饱和方式位。SST=1,对存储前的累加器进行饱和处理。控制部件91ARPTCCOVAOVBDP
15-1312111098-0l
状态寄存器ST0(Status0)
ST0主要反映寻址要求以及计算运行的中间状态。
控制部件92
C(Carry):进位标志。加法进位时,置1;减法借位时,清零。
OVA(OverflowofA):累加器A的溢出标志。当ALU的运算结果送入累加器A且溢出时,OVA置1。
OVB(OverflowofB):累加器B的溢出标志。当ALU的运算结果送入累加器B且溢出时,OVB置1。
DP(DataMemoryPagePointer):数据储储器页指针。DP的9位数作为高位与直接寻址指令中的低7位结合,形成16位直接寻址方式下的数据存储器地址。这种寻址方式要求ST1中的编译方式位CPL=0。控制部件93BRAFCPLXFHMINTM0OVMSXMC16FRCTCMPTASM
151413121110987654-0
l
状态寄存器ST1(Status1)ST1主要反映寻址要求、初始状态设置、I/O及中断控制
BRAF(BlockRepeatActionFlag):块重复操作标志。此标志置位表示正在执行块重复操作指令;此标志位清零表示没有进行块操作。
CPL(Compilemode):直接寻址编译方式标志位,表示直接寻址选用何种指针。CPL=1表示选用堆栈指针(SP)直接寻址方式;CPL=0表示选用页指针(DP)直接寻址方式。控制部件94
XF(ExternalFlag):27#外部引脚XF状态控制位。可通过软件置位或清零控制通用外部I/O引脚XF的输出状态。
HM(HoldMode):芯片响应HOLD信号时,CPU保持工作方式标志。置1表示CPU暂停内部操作;清零表示CPU从内部处理器取指继续执行内部操作,外部地址/数据线挂起呈高阻态。
INTM(InterruptMode):中断方式控制位。置1(SSBX指令)则关闭所有可屏蔽中断;清零(RSBX指令),则开放所有可屏蔽中断。此位不影响不可屏敝中断RS、NMI。
OVM(OverflowMode):溢出方式控制位。置1(SSBX)时,ALU运算发生正溢出,目的累加器置成正的最大值(007FFFFFFFH);ALU运算发生负溢出,目的累加器置成负的最大值(FF80000000H)。清零(RSBX)时,则直接加载实际运算结果。控制部件95
SXM(SignextensionMode):符号扩展方式控制位,SXM=1,数据进入ALU之前需进行符号位扩展;SXM=0,则禁止进行符号位扩展。此位可由指令SSBX和RSBX置位或清零。
C16(DoubleprecisionArithmaticMode):双16位/双精度算术运算模式。C16=1,ALU工作于双16位算术运算方式;C16=0,ALU工作于双精度算术运算方式。
FRCT(FractionMode):小数方式控制位。FRCT=1,乘法器输出自动左移1位,消去多余的符号位。
CMPT(CompatibilityMode):辅助寄存器修正方式控制位CMPT=0(标准方式)时,ARP的内容必须清零,且不能修改。CMPT=1(兼容方式)时,除AR0外,当间接寻址单个数据存储器操作数时,可通过修正ARP的内容改变辅助寄存器AR1-AR7的值。
ASM(AccumulateShiftMode):累加器移位方式控制位。
5位字段的ASM规定了从-16至15的移位(2的补码),可以用LD指令(短立即数)对ASM加载。控制部件96
所有的’C54x的CPU结构及功能完全相同,但片上外设的配置可能不同,一般包括如下部分:1.特殊功能寄存器2.时钟发生器3.硬件定时器4.软件可编程等待状态发生器5.并行口6.串行口7.通用I/O口8.中断系统
片上外设97TMSC5402芯片引脚芯片引脚NCNCHCNTL0VSSBCCLKR0BCCLKR1BFSR0BFSR1BDR0HCNTL1123456789101112131415161718192021222324252627282930313233343536777675747382818079788786858483929190898897969594931021011009998108107106105104103373839404142434445464748495051525354555657585960616263646566676869707172144143142141140139138137136135134133132131130129128127126125124123122121120119118117116115114113112111110109NCNCVSSDVDDA10HD7A11A12A13A14A15NCHASVSSNCCVDDHCSHR/WREADYPS
DSISR/WMSTRBIOSTRBMSC
XFHOLDAIAOHOLDBIOMP/MCDVDD
VSSNCNCA18A17VSSA16D5D4D3D2D1D0RSX2/CLKINX1HD3CLKOUTVSSHPIENACVDDNCTMSTCKTRSTTDITDO
EMU1/OFFEMU0TOUT0HD2NCCLKMD3CLKMD2CLKMD1VSSDVDDNCNCNCNCCVDDA9A8A7A6A5A4HD6A3A2A1A0DVDDHDS2VSSHDS1NCCVDDHD5D15D14D13HD4D12D11D10D9D8D7D6DVDDVSSNCA19BDR1BCLKX0BCLKX1VSSHINT/TOUR1CVDDBFSX0BFSX1HRDYDVDDVSSHD0BDX0BDX1IACKHBILNMIINT0INT1INT2INT3CVDDHD1VSSNCNC
’C5402共有144个引脚,按功能可分为电源引脚、时钟引脚、控制引脚、地址引脚、数据引脚、通讯端口引脚、外部中断引脚、通用I/O引脚等8个部分。
98TMSC5402芯片引脚芯片引脚NCNCHCNTL0VSSBCCLKR0BCCLKR1BFSR0BFSR1BDR0HCNTL1123456789101112131415161718192021222324252627282930313233343536777675747382818079788786858483929190898897969594931021011009998108107106105104103373839404142434445464748495051525354555657585960616263646566676869707172144143142141140139138137136135134133132131130129128127126125124123122121120119118117116115114113112111110109NCNCVSSD
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年麻精药品培训试题附答案
- 文化市场与营销山大本科考试题库及答案
- 铁路段2005年春季劳动安全试卷及答案
- 水泥行业职业卫生培训试题及答案
- 食品安全管理员考试题库及答案2026年
- 2026年山东省泰安市泰山区社区工作者试卷(附答案)
- 2026年培训管理员招聘笔试题(附答案)
- 2026年国家安全基层宣讲真题(附答案)
- 软件销售顾问智能软件产品KPI考核表
- 2026年电网调度员考试题库及答案
- 2026湖北恩施州恩施市面向市外教师选调65人考前冲刺密卷及参考答案详解(培优B卷)
- 关于项目工期的确认函7篇范本
- 2026年山东齐兴发展集团有限公司及权属企业招聘(42人)考试模拟试题及答案详解
- 2026年内蒙古自治区医师定期考核试题附答案
- 二升三语文暑假特色作业(2026版)
- 2027年高考化学复习必刷题-化学反应与能量(解答大题)
- 放射性肺炎诊疗专家共识
- 2026年档案修裱技术规范与破损档案抢救修复流程考核
- 2026年中国邮政储蓄银行金融同业部同业业务面试
- 《保障农民工工资支付条例》宣贯会
- 浙江省A9协作体高一上学期期中考试 化学试题【含答案详解】
评论
0/150
提交评论