1.DSP芯片的主要结构特点:(1)哈佛结构;(2)专用的硬件乘法器;(3)流水线操作;(4)特殊的DSP指令;(5)快速的指令周期。2.中央处理器的体系架构可以分为:冯•诺依曼结构和哈佛结构。冯·诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。由于取指令和存取数据要从同一个存储空间存取,经由同一总线传输,因此它们无法重叠执行,只有一个完成后再进行下一个。哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。可以减轻程序运行时的访存瓶颈。3.DSP芯片的发展:美国AMI公司在1978年发布第一个单片DSP芯片;美国德州仪器公司(TexasInstruments,简称TI)的DSP芯片包含三大系列:TMS320C2000系列、TMS320C5000系列、TMS320C6000系列。4.PSP系统的设计开发过程:需求分析、DSP体系结构设计、软硬件设计、软硬件调试、系统集成调试、系统集成测试。DSP系统的设计过程:5.’28系列DSP芯片的结构包括:中央处理器CPU、片内存储器、片内外设、时钟管理模块、中断管理(/扩展)模块。它们之间由芯片内部的数据总线和地址总线互相连接通信。6.TMS320F2812芯片的封装方式有两大类:179引脚的GHH球形网格阵列BGA封装(BallGridArray);176引脚的LQFP封装(Low-profileQuad)。所有输入引脚的电平均与TTL兼容,但输入不能够承受5V电压;所有输出引脚均为3.3VCMOS电平。上拉电流/下拉电流均为100μA;所有输出引脚的输出缓冲器驱动能力典型值是4mA。7.DSP内部总线分为:地址总线和数据总线。任意时刻同时发生的两种操作不能使用同一条总线,因此,程序空间不能同时执行读写操作。DSP外部总线:即DSP芯片与外扩存储器的总线接口,包括19根地址线和16根数据线。8.TMS320F28xDSP处理器有两个独立的存储空间,即片内存储器和外部存储器,存储器的各个区块都统一映射到程序空间和数据空间,并且划分为如下几部分:1)程序/数据存储器:SARAM、ROM、Flash2)CPU的中断向量:保留了64个地址作为CPU的32个中断向量;3)保留区:某些地址被保留作为CPU的仿真寄存器使用。需求分析(确定系统功能和性能指标)DSP系统体系结构设计(确定系统整体方案)系统软件设计系统硬件设计系统软件调试系统硬件调试系统集成调试系统集成测试9.命令文件即CMD(Command)是DSP运行程序必不可少的文件,用于指定DSP存储器分配。CMD文件主要由两个伪指令构成,即MEMORY和SECTIONS。MEMORY指令定义目标存储器的配置,SECTIONS指令规定程序中各个段及其在存储器中的位置。MEMORY{PAGE0:name1[attr]:origin=constant,length=constant;PAGEn:namen[attr]:origin=constant,length=constant;}1)PAGE0为程序存储器,PAGE1以后为数据存储器;若不规定,则视为PAGE0。2)不同PAGE上的存储区间可以取同样名字,相同PAGE上的名字不能相同;地址不许重叠。attr为任选项,有四个属性可以选择,分别是R(可读)、W(可写)、X(可装入可执行代码)和I(可对存储器初始化)3)origin规定存储区的起始地址,length规定存储区的长度10.‘28x系列DSP时钟和系统控制电路包括振荡器、锁相环(PLL)、看门狗和工作模式选择等;锁相环和振荡器的作用是为DSP芯片中的CPU及相关外设提供可编程的时钟;芯片内部的外设分为高速外设和低速外设,可以设置不同的工作频率;看门狗模块用于监控程序的运行状态,它是提高系统可靠性的重要环节。11.锁相环Phase-LockedLoop(PLL):通过软件程序实时地配置CPU系统时钟和片内外设时钟。PLL禁止,系统时钟等于XCLKIN;PLL旁路(上电时默认配置,PLLCR寄存器为零),系统时钟等于XCLKIN/2;PLL使能(PLLCR寄存器中有一个非零值n),系统时钟等于XCLKIN的(n/2)倍。12.‘28xDSP片上晶振电路模块允许采用内部振荡器或外部时钟源为CPU内核提供时钟;在使用片上晶振模块的内部振荡器时,应当在X1/XCLKIN和X2两个引脚之间连上一个石英晶振,典型的晶振频率是30MHz。采用外部时钟应把时钟信号直接接到X1/XCLKIN引脚,X2引脚则必须悬空。13.看门狗单元,又称为看门狗定时器WatchDogTimer(WDT),其本质是一个定时器电路;若使能看门狗单元,则在系统运行时,看门狗定时器自动计数;如果不能定时清除看门狗计数器(俗称“喂狗”,或“踢狗”KickDog),那么看门狗定时器就会溢出从而引起看门狗中断,强行系统复位。看门狗单元可以防止系统程序发生死循环(俗称“程序跑飞”),监测软件和硬件的运行状态,从而提高系统的可靠性。28XDSP芯片的看门狗计数器WDCNTR为8位,计数器达到最大值28-1=255时,看门狗模块输出一个DSP系统复位脉冲。喂狗操作:在看门狗计数器达到最大值之前向看门狗复位密钥寄存器WDKEY先后写入0x55和0xAA,则看门狗计数器清零,并自动开始下一轮的递增计数;写入其他任何数据都会引起DSP系统复位。14.CPU定时器用于精确定时控制。TMS320F2812内部有3个CPU定时器;均为32位的递减计数器;定时器以系统时钟SYSCLKOUT作为定时时钟;CPU-Timer0、CPU-Ti1mer可以在用户程序中使用;和CPU-Timer2留给实时操作系统使用。15.28x系列DSP的中断可以由软件触发或硬件触发16.DSP处理器内核共有16根中断线,包括XRS(取非)和NMI两个不可屏蔽中断和INT1至INT14等14个可屏蔽中断(均为低电平有效)17.PIE中断工作原理(以外设中断为例)1)当某外设产生中断时,该外设中断标志寄存器(IF)的相应位被置1;如果外设中断使能(IE)寄存器相应的使能位也被置1,则外设生成中断请求发送到PIE控制器。(外设中断标志寄存器内的中断标志位必须用软件进行清除。)2)相应的中断标志PIEIFRx.y被置1;若PIEIERx.y被使能,且PIE中断确认位PIEACKx被清零,则则PIE控制器生成中断请求发送到CPU。(PIE中断确认位PIEACKx则需要手工清除)3)一旦向CPU发出了中断请求,CPU级中断标志寄存器(IFR)中对应INTx的位将被置1;CPU级中断使能寄存器(IER)和全局中断屏蔽位(INTM)都被使能时,CPU响应该中断请求。18.‘28x系列DSP芯片内包含两个事件管理器(EVA和EVB)。每个事件管理器包含通用定时器、全比较PWM单元、捕获单元以及正交编码脉冲电路(QEP)。全比较PWM单元产生脉宽调制信号可以控制直流电机或步进电机的转速;捕获单元对光电编码器的输出信号进行测量可以计算电机的转速;正交编码脉冲电路根据增量编码器信号计算电机的旋转方向等信息。19.通用定时器的寄存器:控制寄存器TxCON:决定通用定时器的操作模式,例如选择计数模式、时钟、预分频系数、比较寄存器的重装载条件;全局控制寄存器GPTCONA/B:规定了通用定时器针对不同事件采取的动作,读取计数方向,定义ADC的启动信号;比较寄存器TxCMPR:与通用定时器的计数值不断比较,匹配时,相应引脚跳变,请求中断;周期寄存器TxPR:决定定时器的计数周期;比较寄存器和周期寄存器是双缓冲的,任意时刻,都可以修改映像寄存器20.通用定时器的中断:上溢中断TxOFINT:当通用定时器的计数值达到FFFFH时,发生上溢事件;下溢中断TxUFINT:当计数值达到0000H时,发生下溢事件;比较匹配TxCINT:当计数值与比较寄存器中的值相等时,发生比较匹配事件;周期匹配TxPINT:当计数值与周期寄存器中的值相等时,发生周期匹配事件;发生以上事件会将相应中断标志置位,如果外设中断未被屏蔽,则会产生一个外设中断请求21.通用定时器的计数模式:对TxCON寄存器中的TMODE1~TMODE0位进行设置,选择不同的计数模式;每个通用定时器都支持4种计数模式:停止/保持模式、连续递增计数模式、定向递增/递减计数模式和连续递增/递减计数模式。设置TxCON.6即TENABLE位可以使能或禁止定时器的计数操作;22.使用通用定时器产生PWM波形的步骤如下:(1)根据PWM载波周期设置TxPR的值;(2)设置TxCON,选择计数模式、计数时钟源并启动操作;(3)将在线计算得到的PWM脉冲宽度(占空比)装载入TxCMPR。在连续递增计数模式下,将期望的PWM周期除以通用定时器时钟周期,并减去1,得到的结果装入TxPR;在连续递增/递减计数模式下,将期望的PWM周期除以2倍的定时器时钟周期,得到的值装入TxPR。23.每个EV模块各有3个全比较器,每个比较器对应两路PWM输出;EVA模块中,全比较器的时钟由通用定时器1提供,EVB模块中,全比较器的时钟由通用定时器3提供;每个比较单元包括3个比较寄存器CMPRx,各带一个映像寄存器;1个比较控制寄存器COMCONA;1个动作控制寄存器ACTRA;6路带三态输出的PWM引脚以及控制和中断逻辑;比较单元的输入包括来自控制寄存器的控制信号,通用定时器1的时钟信号及下溢信号、周期匹配信号和复位信号。比较单元的输出信号是一个比较匹配信号,如果比较操作被使能的话,比较匹配信号将中断标志置位,并在对应的PWM引脚上产生跳变。24.中断包括比较中断、周期中断、上溢中断、下溢中断25.ADC模块的工作原理:ADC排序器有两个独立的8状态排序器(SEQl和SEQ2),它们可以组成双排序器,也可以级联成一个16状态的单排序器(SEQ),即级联模式,将一系列的转换请求自动排序;每次收到启动转换信号(SOC)时,通过多路选择器选择任意一个通道进行转换。模数转换结果被存储到对应的结果寄存器内,第一个转换结果储存ADCRESULT0内,第二个转换结果储存在ADCRESULT1内……;可以对同一个通道进行多次采样,即“重复采样”,或“过采样”。“过采样”得到的结果比单次采样转换结果分辨率高;在双排序器顺序采样模式下,新的SOC信号只能在当前排序命令完成后才能得到响应;如果SEQ1和SEQ2启动转换命令同时发生,那么SEQ1启动转换命令拥有优先执行权。26.ADC模块特点:12位模数转换内核,内置双采样/保持器;顺序采样模式或并行采样模式;模拟输入电压范围:0V~3V;快速的转换时间,最高采样率12.5MSPS;16通道模拟信号输入;自动排序功能支持16通道自动转换,转换通道由软件编程选择;排序器可以工作在启动/停止模式,允许AD转换与多个按时间排序的触发源同步;双排序器模式下,EVA和EVB触发源可独立触发转换;采样保持器的时间窗口有独立的预分频控制;27.顺序采样时,CONVxx的4位均用来定义输入引脚,最高位为0说明采样的是A组,1说明采样的是B组。低3位定义偏移量,决定了某一组内的特定引脚。例如,CONVxx的数值0101b说明选择的输入通道是ADCINA5引脚。CONVxx的数值1011b,说明选择的输入通道是ADCINB3引脚;并行采样时,CONVxx的最高位被舍弃,只有低3位的数据有效,例如CONVxx的数值0101b,则对ADCINA5和ADCINB5同时进行采样,转换的结果被储存在相邻的两个结果储存器中。28.AdcRegs.ADCTRL3.bit.SMODE_SEL=1;//设置并行采样模式AdcRegs.ADCTRL3.bit.SMODE_SEL=0;//设置顺序采样模式AdcRegs.ADCTRL1.bit.SEQ_CASC=0;//设置双排序器模式AdcRegs.ADCTRL1.bit.SEQ_CASC=1;//设置级联排序模式AdcRegs.ADCMAXCONV