第二部分TMS320C5416结构与工作原理剖析_第1页
第二部分TMS320C5416结构与工作原理剖析_第2页
第二部分TMS320C5416结构与工作原理剖析_第3页
第二部分TMS320C5416结构与工作原理剖析_第4页
第二部分TMS320C5416结构与工作原理剖析_第5页
已阅读5页,还剩106页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、曹洪龙 DSP芯片组成 中央处理器 总线结构 存储系统 片内外设和引脚 中断系统特点运算速度快组成CPU存储器系统片内外设其他功能模块CPU片内存储器片内存储器串行通信接口串行通信接口PLLJTAGHPI通用通用I/0口口中断系统中断系统Timer其他硬件电路其他硬件电路可编程分区转换逻辑可编程分区转换逻辑软件可编程等待状态发生器软件可编程等待状态发生器JTAG 测试测试/仿真接口仿真接口McBSP1McBSP2McBSP3Clock PLL Generator HPI GP I/OS/W WaitstateGenerator64KW 单访问单访问RAM 64KW 双访问双访问RAM 16KW

2、 ROMCPUTimerPeripheral BusProgram/Data BusesDMA电源管理电源管理40位算术逻辑运算单元ALU40位累加器A和B桶形移位寄存器,支持-16至31移动范围乘法/累加器16位暂存器T16位传输寄存器TRN比较、选择和存储单元CSSU指数编码器CPU状态和控制寄存器。系统控制接口程序地址产生器PAGEN数据地址产生器DAGEN存 储 器 和外部接口DMA控制器片内外设PABPBCABCBDABDBEABEB乘法/加法器算 术 逻 辑单元ALU指数编码器CPU状态控制寄存器桶 形 移 位寄存器比较、选择和存储单元累加器B累加器ACPU状态寄存器0(ST0)状

3、态寄存器1(ST1)处理器工作模式状态寄存器(PMST)由于三个寄存器都是存储器映射的,他们都能存储到数据存储器或从数据存储器中获得。它们也能用子程序或中断服务子程序(ISR)保存或恢复。 1状态寄存器状态寄存器0(ST0):15 1312111098 0ST0:ARPTCCOVAOVBDP2状态寄存器状态寄存器1 (ST1):1514131211109876540BRAF CPLXFHMINTM0OVM SXM C16 FRCT CMPTASMBRAFCPLXFHMINTM0OVM SXM C16 FRCT CMPT ASMBRAF CPLXFHMINTM0OVM SXM C16 FRCT

4、CMPTASM 3工作方式状态寄存器工作方式状态寄存器PMST:SSTSMULCLKOFFDROMAVISOVLYMP/MCIPTR0123456157IPTR:用来指示中断向量所驻留的:用来指示中断向量所驻留的128字程序地置;字程序地置;MP/MC:用来确定是否允许使用片内:用来确定是否允许使用片内ROM OVLY:用来决定片内:用来决定片内DARAM是否映射到程序空间。是否映射到程序空间。 AVIS:用来决定是否可以从器件地址引脚线看到内部程:用来决定是否可以从器件地址引脚线看到内部程序空间地址线;序空间地址线;DROM:用来决定片内程序存储器是否可以映射到数据空:用来决定片内程序存储器

5、是否可以映射到数据空间;间;CLKOFF:用来决定时钟输出引脚:用来决定时钟输出引脚CLKOUT是否有信号是否有信号输出;输出;SMUL:用来决定乘法结果是否需要进行饱和处理;:用来决定乘法结果是否需要进行饱和处理; SST:用来决定累加器中的数据在存储到存储器之前,是:用来决定累加器中的数据在存储到存储器之前,是否需要饱和处理。否需要饱和处理。 40位ALU(Arithmetic Logic Unit)配合累加器A和B,执行算术、逻辑运算、布尔运算功能,绝大多数算术逻辑运算指令都在一个周期内完成。一个运算操作在ALU执行后,运算的结果一般被送到累加器A或B中(执行存储操作指令ADDM、AND

6、M、ORM、XORM除外)算术逻辑运算单元ALU累加器A累加器B数据总线CB15-CB0数据总线DB15-DB0乘法/累加单元(MAC)输出符号控制符号控制转移输出(40)ADD *AR1,AALU的输入移位器输出(32位或16位数据存储器操作数或者移位后累加器的值)。数据总线DB的数据存储器操作数。Y端的输入来自下列3个方向中的一个:累加器A或B。数据总线CB的数据存储器操作数。T寄存器的数据ALU的输出ALU的输出为40位,被送入累加器A或B。 ALU溢出处理 和ST1中的OVM有关. 发生溢出时后,溢出标志位OVA或OVB置位,直到复位或执行溢出条件指令时恢复。 ALU进位位 ALU的进

7、位位C受大多数算术指令影响(包括循环和移位指令)。进位位可以用来支持扩展精度的算术运算。进位位不受累加器装载、逻辑运算、其他非算术指令或控制指令影响,所以它还可以用来进行溢出管理。 根据进位位的值,可以利用条件操作指令C和NC来进行分支转移、调用或返回操作。利用指令RSBX、SSBX或硬件复位来对进位位置位。 双16位算术运算 CPU状态寄存器ST1的C16如果处于置位状态,用户就可以让ALU在单周期内进行特殊的双16位算术运算,即进行两次16位加法或两次16位减法。 举例 DADST Lmen,dst;C16=1 则:则:;Lmem(31至至16)+Tdst(39至至16);Lmem(15至

8、至0)-Tdst (15至至0);C16=0 则:则:;dst=Lmem+(TAA(15150 0);则;则A A(31311616)-* *AR1AR1,;TRNTRN左移左移1 1位,位,0-TRN0-TRN(0 0),),0-TC0-TC ;否则;否则A A(15150 0)-* *AR1AR1,TRNTRN左移左移1 1位,位,;1-TRN1-TRN(0 0),),1-TC,1-TC,TRNTRN状态转移寄存器,状态转移寄存器,TCTC测试控制寄存器测试控制寄存器If (M1+D1)(M2+D2)then N1= M1+D1Else N1= M2+D2D1D2M1(尺度尺度1)M2(尺

9、度尺度2)2*J2*J+1N1JN2J+8D1D2 指数编码器是一个在单周期内完成EXP指令的专用硬件,其结构如图2.8所示。该指令获得累加器中的指数值并以二进制补码的形式(-8至31)把它存储到T中。为消除多余符号位而将累加器中的数值左移,其左移的位数和累加器指数值冗于符号位-8有关,当累加器的值超过32位时,这个结果为负数。EXP指数编码器指数编码器ABT寄存器寄存器举例举例EXP A EXP A ; T T把累加器把累加器A A的指数的指数T TST TST T,EXPONENT EXPONENT ;保存指数(;保存指数(T T)到数据存储区)到数据存储区NORM A NORM A ;归

10、一化寄存器;归一化寄存器A A,依靠,依靠T T的值移动累加的值移动累加器器A A的值的值若:若:40位累加器位累加器A中的定点数中的定点数FF FFFF F001则:则:11111111 111111111111111111110000000000011111 1111 1000 0000 0000 1000 0000 0000 0000 0000则:则:T=27-8=19则:Norm A ; 需要左移19位,结果如下 C54x系列DSP的总线结构是由8条16位总线构成(4条程序/数据总线和4条地址总线)。 程序总线PB:传送来自程序存储器的指令和立即数。 数据总线CB、DB、EB:连接各个

11、功能单元,如CPU、数据地址产生逻辑、程序地址产生逻辑、片内外设和数据存储器。CB、DB传送来自数据存储器被读取的立即数,EB传送被写到存储器去的数据。 地址总线PAB、CAB、DAB、EAB传送执行指令所需要的地址。 总线结构图:总线结构图:Program A/D Bus (P)Data Read A/D Bus (D)Data Read A/D Bus (C)Data Write A/D Bus (E)ExtlMemI/FADInternalMemoryExternalMemoryExternal: 1 access / cycleup to 8M words programInterna

12、l: Up to 4 accesses / cycle 普通存储器的概念 ROM和RAM 存储器的计算 通常来说,存储器的容量是和它的地址线和数据线有关的。在地址线、数据线不复用的情况下,比如10根地址线8根数据线组成的存储器,通常的存储容量就是8bit,即寻址空间为1024,存储容量为1K字节;又如16根地址线16根数据线组成的存储器,通常的存储容量就是16bit,即寻址空间为8K,存储容量为8K字 64K Words的的DARAM (双访问(双访问RAM)p 每一块,被分成块,由低地址开始记作每一块,被分成块,由低地址开始记作DARAM0DARAM7p 在同一块内一个指令周期支持两个操作在

13、同一块内一个指令周期支持两个操作 64K Words的的SARAM (单访问(单访问RAM)p 每一块,被分成块,由低地址开始记作每一块,被分成块,由低地址开始记作SARAM0SARAM7p 在同一块内一个指令周期仅支持一个操作,但支持一个指在同一块内一个指令周期仅支持一个操作,但支持一个指令周期同时对不同的块完成两个操作令周期同时对不同的块完成两个操作 16K Words的的ROMp 掩模掩模ROM,只能读不能写,只能读不能写TMS320VC5416 DSPTMS320VC5416 DSP的内部存储资源的内部存储资源 片内ROM内容 C54x器件提供了各种ROM尺寸(2K字、4K字、16K字

14、、28K字、48K字)。片内ROM引导区2K字(F800H-FFFFH)范围内一般包含下列内容,具体型号内容可以见相应芯片文档。 自举加载程序,可从串口、外部存储器、I/O端口、主机接口加载。 256字律扩展表 256字A律扩展表 256正弦函数查值表 中断向量表用户代码保留中断向量表自举引导程序256字律扩展表256字A律扩展表256正弦函数查值表保留中断向量表TMS320VC5416 DSP 的的存存储储空空间间 以以TMS320VC5416 DSPTMS320VC5416 DSP为例为例 数据空间数据空间p 支持支持1616位地址和位地址和1616位数据宽度位数据宽度p 访问空间为访问空

15、间为2 2161616bit16bit64K Words64K Words 程序空间程序空间p 支持支持2323位地址和位地址和1616位数据宽度位数据宽度p 分成分成2 27 7128128页页 64K Words64K Words的程序空间的程序空间 IOIO空间空间p 支持支持1616位地址和位地址和1616位数据宽度,固定片外寻址位数据宽度,固定片外寻址p 访问空间为访问空间为2 2161616bit16bit64K Words64K Wordsp PortRPortR和和PortWPortW两条汇编指令用于两条汇编指令用于IOIO空间访问空间访问 C54x DSP除了程序存储空间和数

16、据存储空间外,还提供I/O存储空间。I/O存储空间64K字寻址范围(0000H-FFFFH),仅仅存在片外。芯片通过2条指令PORTR、PORTW来访问这个空间。访问时,读时序和读程序存储空间、数据存储空间不同,它是访问独立的I/O映射设备而不是存储器。 I/O空间还有两个专用I/O管脚BIO和XF。分支转移控制输入引脚BIO用来监控外围设备,决定分支转移的去向,以替代中断,不干扰对时间要求苛刻的循环。外部标志输出引脚XF可以向外部设备发信号,以控制外部设备工作。TMS320VC5416 DSPTMS320VC5416 DSP的存储空间映射的存储空间映射 由处理器工作方式与状态寄存器由处理器工

17、作方式与状态寄存器PMSTPMST控制控制p 具体由具体由MP/MCMP/MC、OVLYOVLY、DROMDROM三个位控制三个位控制DROMOVLYMP/MCIPTR地址第0页程序存储器地址第0页程序存储器地址数据存储器0000H007FH保留(OVLY=1)外部使用(OVLY=0)0000H007FH保留(OVLY=1)外部(OVLY=0)0000H005FH存储器映射寄存器0060H007FHScratch-PadRAM0080H7FFFH片内DAAM0-3(OVLY=1)外部使用(OVLY=0)0080H7FFFH片内DARAM0-3(OVLY=1)外部使用(OVLY=0)0080H7

18、FFFH片内DARAM0-3(32K16位)8000H0FF7FH外部使用8000H0BFFFH外部使用8000H0FFFFH片内DARAM4-7(DROM=1)或者片外(DROM=0)C000H0FEFFH片内ROM(4K16位)0FF80H0FFFFH中断(片外)0FF00H0FF7FH保留0FF80H0FFFFH中断(片内)MP/MC=1微处理器模式MP/MC=0微计算机模式扩展的程序存储器映射扩展的程序存储器映射 扩展的程序存储器映射扩展的程序存储器映射(续续) XPC =XPC =DROM=1OVLY=1MP/MC=10 0DARAM03块DARAM03块(0 x0000(0 x00

19、000 x007F保留)0 x007F保留)内部内部ROM映射到ROM映射到0 xFC000 xFC000 xFFFF0 xFFFFDARAM03块DARAM03块(0 x0000(0 x00000 x007F保留)0 x007F保留)外部寻址外部寻址DSP片内外设是集成在芯片内部的外部设备. 外部设备在片内主要有以下优点 片内外设访问速度快 简化电路的设计 提供一些必须的特殊功能.这些特殊功能必须以片内外设的方式来实现,如JTAG口,等待状态发生器等CPU核对片内外设的访问是通过对相应的控制寄存器的访问来完成的.软件可编程等待状态发生器可编程分区转换逻辑1个主机接口HPI3个多通道缓冲串行口

20、McBSPs DMA控制器1个硬件定时器带锁相环的时钟发生器PLL 它能把外部总线周期扩展到最多14个机器周期,这样可以方便地与慢速的外部存储器和I/O设备接口。 它不需要任何外部硬件,只由软件完成。 在访问外部存储器时,软件等待状态寄存器SWWR可为每32K字的程序、数据存储单元块和64K字的I/O空间确定0-14个等待状态 软件可编程等待状态发生器可以通过编程来延长总线的等待周期,最多可达到714个机器周期。这样可以方便地使C54x DSP与慢速的片内存储器和I/O器件接口。 若外部器件要求插入的等待周期大于14个机器周期时,可以利用硬件READY线来实现。 当所有的外部器件都配置在0等待

21、状态时,加到等待状态发生器的内部时钟将被关断。器件工作在省电状态。位号位号复位值复位值功能功能150XPA=0XPA=0,程序存储空间不扩展,程序存储空间不扩展XPA=1XPA=1,程序存储空间扩展,程序存储空间扩展14-12111对对0000H0000HFFFFH I/OFFFFH I/O空间空间插入等待状态数空间空间插入等待状态数11-9111对对8000H8000HFFFFHFFFFH数据空间插入等待状态数数据空间插入等待状态数8-6111对对0000H0000H7FFFH7FFFH数据空间插入等待状态数数据空间插入等待状态数5-3111XPA=0XPA=0:XX8000HXX8000H

22、XXFFFFHXXFFFFHXPA=1XPA=1:400000H400000H7FFFFFH7FFFFFH2-0111XPA=0XPA=0:XX0000HXX0000HXX7FFFHXX7FFFHXPA=1XPA=1:000000H000000H3FFFFFH3FFFFFH软件可编程等待状软件可编程等待状态发生器态发生器 C5416 DSP,除了有一个软件等待状态寄存器SWWSR外,还有一个SWCR SWCR中的SWSM位用来确定扩展最大的等待周期软件可编程等待状软件可编程等待状态发生器态发生器 可编程分区转换逻辑允许器件在外部存储器分区之间转换时不需要使用额外的等待状态。 在程序空间或数据空

23、间内,分区转换逻辑在访问通过32K字存储块边界时,自动插入一个周期。 当对程序存储器进行一次读操作后,紧随其后对不同的存储器分区进行另一次程序存储器或数据存储器读操作 对数据存储器进行一次读操作后,再对一个不同的存储器分区进行另一次程序存储器或数据存储器读操作 对C548、C549等器件,一次程序存储器读操作后,再对不同页程序存储器进行另一次读操作 C54X的主机接口(HPI)是一个8位并行口,是与主设备或主处理器通信的接口(一般来说是与其他DSP或者单片机等设备,即主控方通信)。 信息在C54X和主机之间通过C54X存储器进行交换。 主机和C54X都可以访问HPI控制寄存器。 外部主机是HP

24、I的主控者,HPI作为一个外设与主机相连,使主机的访问操作很容易。 主机通过专用地址和数据寄存器、HPI控制寄存器与HPI通信,另外还会使用外部数据与接口控制信号。 HPI作为主机的一个外围设备,共有8个外部数据线HD0-7,当C54x与主机传送数据时,HPI能自动将外部接口连续传来的8位数组合成16位数,传送至C54x。 当主机使用HPI寄存器执行一个数据传输时,HPI控制逻辑自动执行对一个专用2K字的C54x内部的双访问RAM的访问,以完成数据处理,然后C54x可以在它的存储器空间访问读写数据。 HPI RAM也可以用做通用的双寻址数据或程序RAMHPIHPI主机接口主机接口 共用寻址模式

25、SAM (常用方式) 主机和C54x都能寻址HPI存储器。当C54X与主机的周期发生冲突时,则主机具有寻址优先权,C54x将等待一个周期 仅主机寻址模式HOM HPI存储器只能让主机寻址,C54x则处于复位状态或者处于所有内部和外部时钟都停止工作的IDLE2空转状态。因此主机可以访问HPI RAM,而C54x处于最小功耗配置。HPIHPI主机接口主机接口 SAM方式 若HPI每5个CLKOUT传送一个字节,那么主机的运行频率可达F*N/5,F为C54x的CLKOUT频率,N为主机每进行一次外部寻址的周期数,通常N是3或4。如C54x的CLKOUT频率为40M,那么主机频率可达32M或24M。且

26、不插入等待周期。 HOM方式 主机可以获得更高的速度每50ns寻址一个字节(160MBIT/S),且与C54x的时钟速度无关。HPIHPI主机接口主机接口 HPI通过8位数据总线与主机交换信息。 由于C54X的16位字的结构,主机与DSP之间的传输数据必须包含两个连续的字节。 专用的HBIL脚用来确定传输的是第一个还是第二个字节 HPI控制寄存器HPIC的BOB位决定第一个或第二个字节,放置在16位字的高8位,而主机不必破坏两个字节的访问顺序。如果字节的传输顺序被破坏,则数据可能会丢失,产生不可预测的结果HPIHPI主机接口主机接口 HAS:地址选通信号 HCS:片选信号 HD0-HD7:数据

27、总线 HRDY:HPI准备好端 HCNTL0、HCNTL1:主机控制信号 HDS1、HDS2:数据选通信号 HINT:HPI中断输出信号 HBIL:字节识别信号 HR/W:读写信号HPIHPI主机接口主机接口 地址选通信号。 若主机的地址和数据是一条多路总线,则HAS与主机的ALE引脚相连。在HAS的下降沿,锁存HBIL、HCNT0/1和HR/W信号;若主机的地址和数据线是分开的,则HAS接高电平,此时由HDS1、HDS2或HCS中最迟的下降沿锁存HBIL、HCNTL01和HR/W信号 若地址和数据总线非复用时,接高电平。HPIHPI主机接口主机接口 片选信号。 作为HPI的使能输入端,在每次

28、寻址期间必须为低电平,而两次寻址之间也可以停留在低电平 连接到主机的地址线或控制线HPIHPI主机接口主机接口 HPI准备好端。 连接到主机的异步准备好端 高电平表示HPI已准备好执行一次数据传送;低电平表示HPI正忙于完成当前事务。HPIHPI主机接口主机接口 连接到主机的地址或控制信号HCNTL0HCNTL0HCNTL1HCNTL1说明说明0 00 0主机可以读写主机可以读写HPICHPIC寄存器寄存器0 01 1主机可以读写主机可以读写HPIDHPID寄存器。每读寄存器。每读1 1次,次,HPIAHPIA事事后增后增1 1;每写;每写1 1次,次,HPIAHPIA事先增事先增1 11 1

29、0 0主机可以读主机可以读/ /写写HPIAHPIA寄存器。这个寄存器指向寄存器。这个寄存器指向C54xC54x的片内的片内RAMRAM1 11 1主机可以读主机可以读/ /写写HPIDHPID寄存器。寄存器。HPIAHPIA寄存器不受寄存器不受影响影响HPIHPI主机接口主机接口 数据选通信号 连接到主机的读选通和写选通或数据选通端 在主机寻址HPI周期内,控制HPI数据的传送。HDS1和HDS2与HAS一起产生内部选通信号HPIHPI主机接口主机接口 HPI中断输出信号 连接到主机的中断输入端 受HPIC寄存器中的HINT位控制。当C54X复位时为高电平。HPIHPI主机接口主机接口 字节

30、识别信号 连接到主机的地址或控制线 识别主机传送过来的是第一个字节还是第2个字节 HBIL=0,第1个字节 HBIL=1,第2个字节 第一个字节是高字节还是低字节,由HPIC寄存器中BOB位决定HPIHPI主机接口主机接口 读写信号 连接到主机的读/写选通、地址线或多路地址/数据 高电平表示主机读HPI,低电平表示写HPI。若主机没有读写信号,可用一根地址线代替。HPIHPI主机接口主机接口 HPI控制寄存器HPIC HPI控制寄存器为16位寄存器,用来控制HPI的操作 HPI地址寄存器HPIA HPI地址寄存器,主机直接访问该寄存器 HPI数据寄存器HPID。 HPI数据寄存器,只能由主机直

31、接访问,包含从HPI存储器读出的数据,或者要写到HPI寄存器的数据。HPIHPI主机接口主机接口 两个控制输入(HCNTL0和HCNTL1)表示哪个HPI寄存器被访问。这两个输入与HBIL一起由主机地址总线驱动。 使用HCNTL0/1输入,主机可以指定对HPI寄存器的访问:HPI控制寄存器HPIC、HPI地址寄存器HPIA、HPI数据寄存器HPID。HPIA可以使用自动增寻址方式访问HPIA。 通过写HPIC,主机可以中断C54X,并且HINT输出可以被C54X用来中断主机。HPIHPI主机接口主机接口标准同步串口SP 带缓冲的串行口BSP 时分复用串口TDM 多通道缓冲串口McBSPC54X

32、 DX FSX CLKX C54XDRFSRCLKR缓冲串行口在标准同步串行口的基础上增加了一个自动缓冲单元 ABU全双工、双缓冲,允许连续数据流ABU利用独立于CPU的专用总线,让串行口直接读/写C54x的片内存储器。这样可以使串行口处理事务的开销最小,并能提高效率。 BSP有两种工作方式非缓冲方式和自动缓冲方式。当工作在非缓冲方式下时,其数据传输和标准同步串行口一样;当工作在自动缓冲方式下时,串行口直接与C54x 片内存储器进行16位数据传输。 带缓冲的串行口带缓冲的串行口BSP BSP TDM将时间分成时间段,按时间段顺序周期性地与不同器件通信。时分复用串行口时分复用串行口TDM TDM

33、 多通道缓冲串行口McBSP是基于标准同步串行口的,允许直接与C54x/LC54x器件、编码设备或其他设备相连,它具有如下特点 全双工通信双缓冲数据寄存器,允许连续数据流独立的接收/发送时钟和帧信号支持T1/E1、MVIP、ST-BUS、IOM-2、AC97、IIS、SPI和一般的串行外设高达128个通道的多通道传输包括8、12、16、20、24、32位的宽范围数据位选择律和A律压缩对发送/接收数据时钟和帧同步信号极性可编程内部时钟和帧信号可编程多通道缓冲串口多通道缓冲串口McBSPMcBSP多通道缓冲串口多通道缓冲串口McBSPMcBSP 器件直接内存访问(The device direct

34、 memory access,DMA)控制器可以不在CPU干涉的情况下直接进行存储器映射内的两点间的直接传输。DMA允许在CPU运行的情况下进行内部存储器、片内外设、外部器件之间进行数据移动。它有6个独立的可编程通道,允许6个不同的内容进行DMA操作。DMA控制器也提供来自主机接口(HPI-8、HPI-16)需求的利用DMA总线的服务 C54x片内16位定时器是根据每个时钟自减,当定时器的计数器自减到0时,一个定时中断就产生了。定时器能被停止、重新启动、复位,或通过指定状态位进行禁止运行。 定时器寄存器组成定时器寄存器TIM:此寄存器被PRD寄存器的值加载,并随计数减少。定时器周期寄存器PRD

35、:此寄存器提供TIM数据加载。定时器控制寄存器TCR:此寄存器是定时器的控制和状态寄存器, 位名称复 位 值保留,总是01512ReservedSoft和Free一起决定在调试中遇到断点时,定时器的状态。(1) Soft=0,Free=0:定时器立即停止。(2) Soft=1,Free=0:定时器在计数器减到0时停止工作。(3) Soft=x,Free=1:定时器无视Soft位,继续工作11Soft010Free096PSC定时器预定标计数器值。当PSC的值减少到0后,TDDR中的数据加载到PSC,TIM减15TRB定时器重新加载控制位。当TRB为1时,TIM重新装载PRD的值,PSC重新装载

36、TDDR的值。TRB总是读作04TSS0定时器停止位。T为0时,启动定时器;T为1时,停止定时器30TDDR0000当PSC被减少到0后,PSC被TDDR的值装载 定时器公式 预标定器PSC根据CPU提供的时钟,每来一个时钟自减1,当PSC的值减少到0时,TDDR的内容加载到PSC(当系统复位(RESET输入信号有效)或定时器单独复位(TRB有效)时,TDDR的内容也加载到PSC);TIM根据预标定器PSC提供的时钟,每来一个预标定PSC的输出时钟减1,当TIM减数到0后,PRD中的内容自动加载到TIM(当系统复位或定时器单独复位时,PRD的内容也加载到TIM中),同时 TIM会产生一个定时器

37、中断TINT信号,该信号被送到CPU和定时器输出TOUT管脚。 由此,定时器的中断周期 11PRDTDDRCLKTTT C54x时钟发生器由内部振荡器和锁相环电路构成,可通过晶振或外部时钟驱动。锁相环具有频率放大和时钟信号提纯的作用。利用PLL可以对时钟频率进行锁定、为芯片提供高稳定度的时钟信号,对外部时钟可以进行倍频,使外部时钟的周期低于CPU机器周期,以降低因高速开关时钟引起的高频噪声。 当前锁相环电路有两种不同的配置方式 一些器件使用硬件配置PLL电路, 另外一些采用软件编程的方式进行配置 硬件配置PLL模式选择管脚时钟模式CLKMD1CLKMD2CLKMD3选择1选择2000外部时钟源

38、,PLL3外部时钟源,PLL5110外部时钟源,PLL2外部时钟源,PLL4100内部振荡器,PLL3内部振荡器,PLL5010外部时钟源,PLL1.5外部时钟源,PLL4.5001外部时钟源,频率除以2外部时钟源,频率除以2111内部振荡器,频率除以2内部振荡器,频率除以2101外部时钟源,PLL1外部时钟源,PLL1011停止模式停止模式软件配置PLL软件可编程PLL非常灵活,它包括提供时钟的各种乘法系数,能够直接使能和禁止PLL。它可以锁定定时器,用来延迟转换PLL的时钟方式,直到锁定为止。软件可编程PLL可以通过两种模式来配置时钟输出PLL模式:输入时钟CLKIN以31个系数倍频,倍频

39、范围为0.25至15。DIV模式:输入时钟被分频,分频范围为2或4。当采用DIV模式时,所有的模拟电路、包括PLL电路是被禁止的以达到减少功耗的目的。 CLKMOD寄存器初始化值为寄存器初始化值为0 x9007CLKMOD寄存器初始化值为寄存器初始化值为0 x77F7 数据信号 初始化,中断和复位 多处理信号 存储控制信号 时钟信号 多通道缓冲串口0、1、2信号 主机接口信号 电源管脚 测试管脚 C54x C54x ABAB15150 0 PS PS MSTRB MSTRB R/ R/ W W DS DS IS IS IOSTRB IOSTRB DB DB15150 0 DATADATA CS

40、2 D CS2 D WE WE CS1CS1A OEA OE PGMPGMA D A D CS1 CS1 CS2 OECS2 OE I/OI/O CS1 DCS1 DCS2CS2WEWEA OEA OE 中断系统是为计算机系统提供实时操作、多任务和多进程的关键部件。 中断信号的产生 中断是由硬件驱动或者软件驱动的信号 例如由外设向CPU传送数据(ADC)或外设向CPU提供数据(DAC)的硬件设备来产生的 定时器 当CPU响应中断时,将暂时停止当前程序的执行,而去执行中断服务程序ISR 可屏蔽中断 16个用户可屏蔽中断 非屏蔽中断 软件中断 复位RS中断 NMI中断 中断屏蔽寄存器IMR中断屏蔽

41、寄存器主要是用来屏蔽外部或内部中断。如果CPU状态寄存器中的INTM位为0且IMR寄存器中有一位为1,就开放IMR寄存器中的那一位中断。RS和NMI都不能被IMR屏蔽。用户可以读写IMR寄存器。 中断标志寄存器IFR中断标志寄存器是一个存储器映射寄存器。当一个中断出现时,IFR中相应的中断标志位置1,直到此中断被CPU处理。任何下列事件都会清除IFR中的中断标志 C54x DSP被硬件复位中断触发被响应一个1被写入相应的尚未处理的IFR中断标志位使用相应中断号INTR指令被执行接受中断请求 应答中断 执行中断服务程序ISR 一个中断由硬件或软件指令请求。 当产生一个中断时,IFR寄存器中的相应

42、的中断标志位被置1。不管中断是否被处理器应答,该标志位都会置1。当相应的中断响应后,该标志位自动清零 外部硬件中断由外部中断口的信号发出请求,而内部硬件由片内外设的信号发出中断请求。例如,C54X硬件中断可以由如下信号发出 INT3-INT0管脚 RS和NMI管脚 RINT0、XINT0、RINT1、XINT1串行中断 TINT定时器中断 INTR INTR指令允许执行任何的可屏蔽中断,包括用户定义的中断(从SINT0到SINT30) TRAP TRAP与INTR的不同之处是TRAP启动中断时,状态寄存器ST1的中断方式INTM位不受影响。所以在TRAP启动中断服务时,该中断服务程序可以被其他

43、硬件中断所中断。 RESET 复位指令可在程序的任何时候产生,它使处理器返回一个预定状态,复位指令影响ST0和ST1寄存器,但对PMST寄存器没有影响。 对于软件中断和非屏蔽中断,CPU将立即响应,进入相应的中断服务程序。对于硬件可屏蔽中断,只要满足下列三个条件后,CPU才能响应中断 当前中断优先级最高 INTM位清0 IMR屏蔽位为1 满足上述条件后,CPU响应中断,终止当前正在运行的操作,指令计数器PC自动转向相应的中断向量地址,取出中断服务程序地址,并发出硬件中断响应信号IACK(中断应答)而清除相应的中断标志位 CPU执行中断服务程序的步骤 保护现场 将中断向量的地址加载PC 获取位于

44、向量地址的指令 执行分支转移 执行ISR直到一个返回指令终止ISR 从堆栈中弹出返回地址到PC中 继续执行主程序 中断向量可以映射到程序存储器的任何128字页面的起始位置,除保留区域外。 C54X中,中断向量地址是由PMST寄存器中的IPTR和左移2位后的中断向量序号所组成。 INT0被申明为低优先级,并且IPTR=0001H,则中断向量地址为00C0H。 复位时,IPTR所有的位置1,并按此值将复位向量映射到程序存储器的511页空间。所以,硬件复位后总是从0FF80H开始执行程序。以以TMS320VC5416 TMS320VC5416 的中断设计为例的中断设计为例1. 1. 中断初始化设计中

45、断初始化设计 置置ST1ST1寄存器的寄存器的INTMINTM位为位为1 1,屏蔽所有屏蔽中断,屏蔽所有屏蔽中断 向向IFRIFR寄存器写入寄存器写入0 xFFFF0 xFFFF,清除所有的中断标志,清除所有的中断标志 根据要处理的中断设置根据要处理的中断设置IMRIMR寄存器,例如开放寄存器,例如开放INT0INT0中断,向中断,向IMRIMR中写入中写入0 x10 x1 设置设置PMSTPMST寄存器,主要完成以下初始化寄存器,主要完成以下初始化中断向量指针中断向量指针IPTRIPTR的初始化,设置中断向量表地址的初始化,设置中断向量表地址MP/MCMP/MC、OVLYOVLY和和DROMDROM位初始化,设置存储空间映射位初始化,设置存储空间映射CLKOFFCLKOFF位设置位设置置置ST1寄存器的寄存器的INTM位为位为0,响应,响应IMR寄存器允许寄存器允许的可屏蔽中断的可屏蔽中断以以TMS320VC5416 TMS320VC5416 的中断设计为例的中断设计为例2. 2. 中断向量地址计算方法中断向量地址计算方法(1 1)取)取PMSTPMST寄存器的寄存器的IPTRIPTR的值的值( (中断向量指针,中断向量指针,9 9位位) ) (2 2)查)查DSPDSP的中断表得到中断向量序号的中断表得到中断向量序号(5(5位位) )(3 3)将中断向量序号左移)将

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论