版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、本本 章章 主主 要要 内内 容容 nTMS320C55x的总体结构的总体结构n封装和引脚功能封装和引脚功能nCPU结构结构nCPU寄存器寄存器 n存储空间和存储空间和I/O空间空间 n堆栈操作堆栈操作 n中断和复位操作中断和复位操作 第第2章章 TMS320C55x的硬件结构的硬件结构2.1 TMS320C55x的总体结构的总体结构lC55x芯片由芯片由CPU、存储空间、片内外设组、存储空间、片内外设组成成l不同芯片体系结构相同,具有相同的不同芯片体系结构相同,具有相同的CPU,片上存储器和外围电路配置有所不同片上存储器和外围电路配置有所不同McBSPRTCI2CMMC/SDMcBSPWDO
2、GTIMERA/DGPIOTIMERMcBSPMMC/SDDPLLUSB PLLUSBROM32KW电源控制内部存储器接口SARAM96KWDARAM32KWDMA控制器EHPIGPIO A程序流单元(P unit)地址-数据流单元(A unit)数据运算单元(D unit)指令缓冲单元(I unit)C55xCPU中断控制仿真控制SDRAM控制信号异步存储器控制信号通用地址和数据信号666227/82/47545/4732外设总线引脚的数量视不同封装而定数据读地址总线 BBAB(24)数据读数据总线 BBB(16)程序读地址总线PAB(24)程序读数据总线PB(32)数据读地址总线 CCAB
3、(24)数据读数据总线 CCB(16)数据读数据总线 CCB(16)数据读数据总线 DDB(16)数据写地址总线 EEAB(24)数据写数据总线 EEB(16)数据写数据总线 EEB(16)数据写数据总线 FFB(16)图图2-1 TMS320VC5509A框图框图2.1.1 C55x CPU内部总线结构l内部独立总线内部独立总线:12组组u程序地址总线(程序地址总线(PAB):1组组,24位位u程序数据总线(程序数据总线(PB):1组组,32位位u数据读地址总线(数据读地址总线(BAB、CAB、DAB):3组组,24位位u数据读数据总线(数据读数据总线(BB、CB、DB):3组,组,16位位
4、u数据写地址总线(数据写地址总线(EAB、FAB):2组,组,24位位u数据写数据总线(数据写数据总线(EB、FB):2组组,16位。位。2.1.2 C55x的CPU组成组成组成: : 32 321616位指令缓冲队列位指令缓冲队列; ; 指令译码器。指令译码器。功能功能: : 接收程序代码并放入指令缓接收程序代码并放入指令缓冲队列冲队列; ; 由指令译码器解释指令,再由指令译码器解释指令,再把指令流传给其它的工作单元把指令流传给其它的工作单元l指令缓冲单元(指令缓冲单元(I单元)单元)l程序流单元(程序流单元(P单元)单元)l地址地址-数据流单元(数据流单元(A单元)单元)l数据运算单元(数
5、据运算单元(D单元)单元)l存储器接口单元(存储器接口单元(M单元)单元)组成组成: : 程序地址发生器; 程序控制逻辑功能功能: : 产生所有程序空间地址,并送到PAB总线组成组成: 数据地址产生电路数据地址产生电路 (DAGEN);附加附加16位位ALU和和1组寄存器组寄存器功能功能: 产生读产生读/写数据空间地址,并写数据空间地址,并送到送到BAB、CAB、DAB总线总线组成组成: 1个40位的筒形移位寄存器(barrel shifter); 2个乘加单元(MAC); 1个40位的ALU; 若干寄存器。功能功能: CPU中最主要的部分,是主要的数据处理部件 是是CPU和数据空间或和数据空
6、间或I/O空间空间之间传输所有数据的中间媒介之间传输所有数据的中间媒介 2.1.3 C55x存储器配置l存储空间存储空间l支持的存储器类型支持的存储器类型l特点特点 5510片内存储空间共有片内存储空间共有352KB(176K字)字);外部存储空间共有外部存储空间共有16MB (8M字)字)异步异步SRAM、EPROM;同步同步SDRAM;同步突发同步突发SBSRAM采用统一的程序采用统一的程序/数据空间存储数据空间存储空间空间; I/O空间与程序空间与程序/数据空间分开数据空间分开存储器存储器5501550255035506550755095510ROM(KB)32326464646432R
7、AM(KB)326464128128256320表2-1 C55x片内存储器配置2.1.4 C55x片上外设配置片上外设配置l模数转换器(模数转换器(ADC)l可编程数字锁相环时钟发生器(可编程数字锁相环时钟发生器(DPLL)l指令高速缓存(指令高速缓存(I-Cache)l外部存储器接口(外部存储器接口(EMIF)l直接存储器访问控制器(直接存储器访问控制器(DMA)l多通道串行缓冲口(多通道串行缓冲口(McBSP)1010位,用于采集电压、位,用于采集电压、面板旋钮的输入值面板旋钮的输入值VC5509A的时钟频率可的时钟频率可达达200MHz,最小机器,最小机器周期为周期为5ns1个可配置的
8、个可配置的24KB的存的存储器,可最小化对外部储器,可最小化对外部存储区的访问存储区的访问可以实现与各种存储器可以实现与各种存储器件无缝连接件无缝连接在无在无CPU涉入的情况下,涉入的情况下,允许数据在内部存储器允许数据在内部存储器和外部存储器、增强型和外部存储器、增强型主机接口主机接口(EHPI) 之间传之间传输输为全双工串口,为全双工串口,VC5509设设有有3个个McBSPl增强型主机接口增强型主机接口(EHPI)l2个个16位的通用定时位的通用定时/计计数器数器l8个可配置的通用个可配置的通用I/O引引脚(脚(GPIO)l实时时钟(实时时钟(Real Time Clock,RTC)l看
9、门狗定时器看门狗定时器(Watchdog Timer) lUSB 为为16位并行接口,用于位并行接口,用于提供主处理器对提供主处理器对DSP上上的内部存储器的访问,的内部存储器的访问,可被配置成复用或非复可被配置成复用或非复用形式用形式提供一个时间参考,并提供一个时间参考,并能产生基于时间的报警能产生基于时间的报警来中断来中断DSP可以在软件陷入循环又没可以在软件陷入循环又没有受控退出的情况下,防有受控退出的情况下,防止止 系统死锁系统死锁目前目前VC5506、VC5507、 VC5509各提供了各提供了1个个USB接接口口表2-2 C55x片内外设配置 表表1-1 C55x与与C54x的比较
10、的比较C54xC55xMAC12累加器累加器24读总线读总线23写总线写总线12地址总线地址总线46指令字长指令字长16位位8/16/24/32/40/48位位数据字长数据字长16位位16位位算术逻辑单元算术逻辑单元ALU1(40位)位)1(40位),位),1(16位)位)辅助寄存器字长辅助寄存器字长2字节(字节(16位)位)3字节(字节(24位)位)辅助寄存器辅助寄存器88数据寄存器数据寄存器04存储器空间存储器空间独立的程序独立的程序/数据空间数据空间统一的程序统一的程序/数据空间数据空间2.2 C55x的封装和引脚功能的封装和引脚功能 n不同不同C55x芯片通常有不同封装芯片通常有不同封
11、装n为满足不同用途需求,为满足不同用途需求,C55x同一个芯片也往往同一个芯片也往往有多种封装有多种封装n 本节以本节以TMS320VC5509A PGE 封装为例讲述封装为例讲述引脚配置及功能引脚配置及功能n只给出只给出VC5509A PGE引脚的定义和简要描述,引脚的定义和简要描述,详细描述请参考文献详细描述请参考文献SPRS205J图图2-2 TMS320VC5509A的封装的封装(a) 179脚脚BGA封装封装(底视图底视图) (b) 144脚脚PGE封装封装(顶视图顶视图)2.2.1 引脚属性引脚属性表表2-3 VC5509A PGE信号引脚对应图信号引脚对应图(1)表表2-3 VC
12、5509A PGE信号引脚对应图(信号引脚对应图(2)表表2-3 VC5509A PGE信号引脚对应图(信号引脚对应图(3)表表2-3 VC5509A PGE信号引脚对应图(信号引脚对应图(4)2.2.2 引脚信号定义与描述引脚信号定义与描述n并行总线引脚并行总线引脚n初始化、中断和复位初始化、中断和复位引脚引脚n位输入位输入/输出信号输出信号n振荡器振荡器/时钟信号时钟信号n实时时钟实时时钟nI2C总线总线nMcBSP接口接口nUSB接口接口nA/D接口接口n测试测试/仿真引脚仿真引脚n电源引脚电源引脚1. 并行总线引脚并行总线引脚lA13:0uC55x内核的并内核的并行地址总线行地址总线A
13、13A0的外部引脚。的外部引脚。u3种功能:种功能:HPI地址线地址线HPI.HA13:0EMIF地址总线地址总线EMIF.A 13:0通用输入输出通用输入输出GPIO.A 13:0 lD15:0uC55x内核的并行双内核的并行双向数据总线向数据总线D15D0u2种功能:种功能:EMIF 数据总线数据总线 (EMIF. D15:0) HPI数据总线数据总线(HPI.HD15:0)lC0:EMIF异步存储器读选通异步存储器读选通(EMIF. ) 或通用输入输出口或通用输入输出口8 (GPIO.8)lC1:EMIF异步输出使能(异步输出使能(EMIF. ) 或或HPI中断输出(中断输出(HPI.
14、)lC2:EMIF异步存储器写选通异步存储器写选通 (EMIF. ) 或或HPI读读/写写(HPI. )lC3:EMIF数据输入准备就绪数据输入准备就绪(EMIF.ARDY) 或或HPI输出准备就绪输出准备就绪(HPI.HRDY)AREAOEHINTAWEHRC0C14lC4:存储空间:存储空间CE0的的EMIF片选信号片选信号(EMIF. ) 或通用输入输出口或通用输入输出口9(GPIO.9)lC5:存储空间:存储空间CE1的的EMIF片选信号片选信号(EMIF. ) 或通用输入输出口或通用输入输出口10(GPIO.10)lC6:存储空间:存储空间CE2的的EMIF片选信号片选信号(EMIF
15、. ) 或或HPI访问控制信号访问控制信号0 (HPI.HCNTL0)lC7:存储空间存储空间CE3的的EMIF片选信号片选信号(EMIF. ) 或通用输入输出口或通用输入输出口11(GPIO.11) 或或HPI访问控制信号访问控制信号1 (HPI.HCNTL1)CE0CE1CE2CE3lC8: EMIF字节使能控制字节使能控制0 (EMIF. ) 或或HPI 字节字节 辨识辨识(HPI. )lC9: EMIF字节使能控制字节使能控制1 (EMIF. ) 或或HPI 字节字节 辨识辨识(HPI. )lC10: EMIF SDRAM行选通信号行选通信号(EMIF. ) 或或HPI地址选通信号地址
16、选通信号(HPI. ) 或通用输入输出口或通用输入输出口12(GPIO.12)BE0HBE0BE1HBE1SDRASHASlC11: EMIF SDRAM列选通信号列选通信号(EMIF. ) 或或HPI片选输入信号片选输入信号(HPI. )lC12: EMIF SDRAM写使能信号写使能信号(EMIF. ) 或或HPI数据选通信号数据选通信号 1 (HPI. )lC13: SDRAM A10地址线地址线 (EMIF.SDA10) 或通用输入输出口或通用输入输出口13 (GPIO.13)lC14:SDRAM存储器时钟信号存储器时钟信号(EMIF.CLKMEM) 或或HPI数据选通信号数据选通信号
17、2(HPI. )SDCASHCSHDS2SDWEHDS12. 初始化、中断和复位引脚初始化、中断和复位引脚l l INT4:0外部中断请求信号;外部中断请求信号;为可屏蔽中断,并且可为可屏蔽中断,并且可由中断使能寄存器由中断使能寄存器(IER)和中断方式位屏蔽;和中断方式位屏蔽;可以通过中断标志寄存可以通过中断标志寄存器器(IFR)进行查询和复进行查询和复位位RESET复位信号,低电平有效;复位信号,低电平有效;使使DSP终止程序执行并且使程序计终止程序执行并且使程序计数器指向数器指向FF8000h处。当引脚电平处。当引脚电平为高时,从程序存储器为高时,从程序存储器FF8000h地地址处开始执
18、行;址处开始执行;影响寄存器和状态位;影响寄存器和状态位;此引脚需要外接上拉电阻此引脚需要外接上拉电阻3. 位输入位输入/输出信号输出信号lGPIO7:6,4:0lXF可以配置为输入口或输出口;可以配置为输入口或输出口;当配置为输出引脚时,可以单独当配置为输出引脚时,可以单独置位或者复位;置位或者复位;在复位时,被配置为输入引脚;在复位时,被配置为输入引脚;复位完成后,在片复位完成后,在片bootloader采样采样GPIO3:0 决定启动方式。决定启动方式。为输出信号,用于配置其它处理器的复用为输出信号,用于配置其它处理器的复用状态或者作为通用输出引脚;状态或者作为通用输出引脚;指令指令BS
19、ET XF可以使可以使XF输出电平为高;输出电平为高;指令指令BCLR XF 可以使可以使XF输出电平为低;输出电平为低;加载加载ST1. XF位可以控制位可以控制XF输出电平。输出电平。4.振荡器振荡器/时钟信号时钟信号lCLKOUTlX2/CLKINl X1l TIN/TOUT0 时钟输出引脚;时钟输出引脚;CLKOUT 周期为周期为CPU的机的机器周期;器周期;当当ST3_55的的CLKOFF位为位为1时,时,CLKOUT呈高阻状态呈高阻状态时钟振荡器输入引脚;时钟振荡器输入引脚;若使用内部时钟振荡器,用若使用内部时钟振荡器,用来外接晶振;来外接晶振;若使用外部时钟,该引脚接若使用外部时
20、钟,该引脚接外部时钟输入。外部时钟输入。由内部系统振荡器到晶体的输出引脚;由内部系统振荡器到晶体的输出引脚;若不使用内部振荡器时,若不使用内部振荡器时,X1引脚悬空;引脚悬空;定时器定时器T0 输入输入/输出;输出;当作为定时器当作为定时器T0的输出时的输出时, 计数器减计数器减少到少到0,TIN/TOUT0 信号输出一个脉信号输出一个脉冲或者状态发生改变;冲或者状态发生改变;当作为输入时,当作为输入时,TIN/TOUT0为内部定为内部定时器模块提供时钟;时器模块提供时钟;复位时,此引脚配置为输入引脚。复位时,此引脚配置为输入引脚。 只有定时器只有定时器0 信号可以输出。信号可以输出。定时器定
21、时器T1信号不能提供输出。信号不能提供输出。5.实时时钟实时时钟lRTCINX1u实时时钟振荡器输入。实时时钟振荡器输入。lRTCINX2u实时时钟振荡器输出。实时时钟振荡器输出。6. I2C总线总线lSDAuI2C (双向双向) 数据信号数据信号u复位时,此引脚处于高阻状态。复位时,此引脚处于高阻状态。lSCLuI2C (双向双向) 时钟信号时钟信号u复位时,此引脚处于高阻状态。复位时,此引脚处于高阻状态。7. McBSP接口接口 VC5509A共有共有3个个McBSP接口,其中接口,其中McBSP1与与McBSP2为为多功能口。多功能口。lCLKR0lDR0lFSR0lCLKX0lDX0l
22、FSX0McBSP0串行接收器的串行移位时钟串行接收器的串行移位时钟McBSP0数据接收信号数据接收信号McBSP0接收帧同步信号,初始化接收帧同步信号,初始化DR0的数据接收的数据接收McBSP0发送时钟信号,为串行发送器发送时钟信号,为串行发送器的串行发送时钟。的串行发送时钟。McBSP0数据发送信号。数据发送信号。McBSP0发送帧同步信号,初始化发送帧同步信号,初始化DX0的的数据发送。数据发送。lS10lS11lS12lS13lS14lS15McBSP1 接收时钟信号或者接收时钟信号或者MMC/SD1的命令的命令/响响应信号应信号; 复位时被配置为复位时被配置为McBSP1.CLKR
23、McBSP1 数据接收信号或者数据接收信号或者SD1的数据信号的数据信号1;复位时被配置为复位时被配置为McBSP1.DRMcBSP1接收帧同步信号或者接收帧同步信号或者SD1的数据信号的数据信号2;复位时被配置为复位时被配置为McBSP1.FSRMcBSP1数据发送信号或者数据发送信号或者MMC/SD1串行时串行时钟信号钟信号; 复位时被配置为复位时被配置为McBSP1.DXMcBSP1发送时钟信号或发送时钟信号或MMC/SD1数据信号数据信号0; 复位时被配置为复位时被配置为McBSP1.CLKXMcBSP1发送帧同步信号或者发送帧同步信号或者SD1数据信号数据信号3;复位时被配置为复位时
24、被配置为McBSP1.FSXlS20lS21lS22lS23lS24lS25McBSP2 接收时钟信号或者接收时钟信号或者MMC/SD2的命令的命令/响响应信号应信号; 复位时被配置为复位时被配置为McBSP2.CLKRMcBSP2 数据接收信号或者数据接收信号或者SD2的数据信号的数据信号1;复位时被配置为复位时被配置为McBSP2.DRMcBSP2接收帧同步信号或者接收帧同步信号或者SD2的数据信号的数据信号2;复位时被配置为复位时被配置为McBSP2.FSRMcBSP2McBSP2数据发送信号或者数据发送信号或者MMC/SD2MMC/SD2串行时串行时钟信号钟信号; ; 复位时被配置为复
25、位时被配置为McBSP2.DXMcBSP2.DXMcBSP2发送时钟信号或发送时钟信号或MMC/SD2数据信号数据信号0; 复位时被配置为复位时被配置为McBSP2.CLKXMcBSP2发送帧同步信号或者发送帧同步信号或者SD2数据信号数据信号3;复位时被配置为复位时被配置为McBSP2.FSX8. USB接口接口lDPu差分数据接收差分数据接收/发送发送(正向正向)u复位时,此引脚配置为输入端复位时,此引脚配置为输入端lDNu差分数据接收差分数据接收/发送发送(负向负向)u复位时,此引脚配置为输入端复位时,此引脚配置为输入端lPU:上拉输出:上拉输出u用于上拉用于上拉USB模块需要的检测电阻
26、模块需要的检测电阻u通过一个软件控制开关通过一个软件控制开关(USBCTL寄存器的寄存器的CONN位位),此引脚在,此引脚在VC5509内部与内部与USBVDD连接连接9. A/D接口接口lAIN0:模拟输入通道模拟输入通道0lAIN1:模拟输入通道模拟输入通道1 注意:注意: VC5509A PGE有有2个个 10位位 A/D 接口接口; VC5509A BGA有有4个个 10位位 A/D 接口接口.10.测试测试/仿真引脚仿真引脚lTCK:IEEE 标准标准 1149.1 测试测试时钟时钟输入输入引脚。引脚。lTDI:IEEE 标准标准1149.1测试测试数据数据输入输入信号。信号。lTD
27、O:IEEE 标准标准1149.1测试测试数据数据输出输出信号。信号。lTMS:IEEE 标准标准1149.1测试测试方式方式选择选择信号。信号。l/TRST:IEEE 标准标准1149.1测试复位信号。测试复位信号。lEMU0: 仿真器中断仿真器中断0引脚。引脚。lEMU1/OFFJTAG(Joint Test Action Group;联合测试行动小组;联合测试行动小组)是一种国际标准是一种国际标准测试协议(测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。现在多数的兼容),主要用于芯片内部测试。现在多数的高级器件都支持高级器件都支持JTAG协议,如协议,如DSP、FPGA器件
28、等。标准的器件等。标准的JTAG接口接口是是4线:线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入,分别为模式选择、时钟、数据输入和数据输出线。和数据输出线。11.电源引脚电源引脚l 数字电源,数字电源,+1.6V,专为,专为CPU内核提供电源。内核提供电源。l 数字电源,数字电源,+3.3V,为,为I/O引脚提供电源。引脚提供电源。l 数字电源,数字电源,+3.3V,专为,专为USB 模块的模块的I/O引脚引脚(DP, DN和和PU)提供电源。)提供电源。DDCVDDDVDDUSBVl 数字电源,数字电源,+1.6V。专为。专为USB PLL提供电源。提供电源。l 数字电源
29、,数字电源,+ 3.3V。专为。专为RTC模块的模块的I/O引脚提供电引脚提供电源。源。l 数字电源,数字电源,+ 1.6V。专为。专为RTC模块提供电源。模块提供电源。DDUSBPLLVDDRDVDDRCVl 数字地。数字地。l 模拟电源,专为模拟电源,专为10位位 A/D模块提供电源。模块提供电源。l 模拟地,模拟地,10位位 A/D内核部分接地引脚。内核部分接地引脚。l 模拟数字地,模拟数字地,10位位 A/D模块的数字部分接地引脚。模块的数字部分接地引脚。l 数字地,用于数字地,用于USB PLL。SSVDDAVSSAVSSADVSSUSBPLLV2.3 C55x的的CPU结构结构n
30、存储器接口单元(存储器接口单元(M单元)单元)n 指令缓冲单元(指令缓冲单元(I单元)单元)n程序流单元(程序流单元(P单元)单元)n地址数据流单元(地址数据流单元(A单元)单元)n数据计算单元(数据计算单元(D单元)单元)n内部地址总线与数据总线内部地址总线与数据总线图图2-3 C55x的的CPU结构框图结构框图读数据的数据总线BB,CB,DB(每组16位)读程序的数据总线PB(每组32位)读数据的地址总线BAB,CAB,DAB(每组24位)M单元I单元P单元A单元D单元写数据的地址总线EAB,FAB(每组24位)写数据的数据总线EB,FB(每组16位)C CP PU U外部数据总线外部程序
31、总线读程序的地址总线PAB(每组24位)2.3.1 存储器接口单元(存储器接口单元(M单元)单元)l内部数据流、指令流接口内部数据流、指令流接口l管理所有来自管理所有来自CPU、数据空间或、数据空间或I/O空间的空间的数据和指令数据和指令l负责负责CPU和数据空间以及或和数据空间以及或CPU和和I/O空间空间的数据传输的数据传输2.3.2 指令缓冲单元(指令缓冲单元(I单元)单元)程序读数据总线PB(4字节代码)M单元指令缓冲队列(64字节)指令解码器P 单元A 单元D 单元I单元图图2-4 I单元结构框图单元结构框图每个机器周期,PB从程序空间传送4字节共32位的程序代码至I单元的指令缓冲队
32、列IBQ (Instruction Buffer Queue);最大可以存放64个字节的待译码指令,可以执行块循环指令,具有对分支、调用和返回指令的随机处理能力当CPU准备译码时,6个字节的代码从队列发送到I单元的指令译码器;能够识别指令边界, 译码8、16、24、32、40和48位的指令,决定2条指令是否并行执行,将译码结果和立即数送至P单元、A单元、D单元2.3.3 程序流单元(程序流单元(P单元)单元)图图2-5 P单元结构框图单元结构框图数据读数据总线CB,DB (每组16位数据)M单元程序地址产生器和程序控制逻辑P单元寄存器I单元A单元D单元数据写数据总线EB,FB (每组16位数据
33、)程序读地址总线PAB (24位地址)P单元程序地址产生逻辑:程序地址产生逻辑:产生24位的程序空间取指的地址;可产生顺序地址;也可以产生非连续地址,可由I单元的立即数或D单元的寄存器值作为地址程序控制逻辑程序控制逻辑: 接收来自I单元的立即数,并测试来自A单元或D单元的结果从而执行如下动作: 测试条件执行指令的条件是否成立,把测试结果送程序地址发生器; 当中断被请求或使能时,初始化中断服务程序; 控制单一指令重复或块指令重复;管理并行执行的指令P单元的作用:单元的作用:产生读取程序空间的24位地址,并加载地址到PAB;控制指令流顺序在在P P单元中使用的寄存器分为单元中使用的寄存器分为5 5
34、种类型:种类型:(1 1)程序流寄存器:包括程序计数器()程序流寄存器:包括程序计数器(PCPC)、返回地址寄存器)、返回地址寄存器(RETARETA)和控制流关系寄存器()和控制流关系寄存器(CFCTCFCT)。)。(2 2)块重复寄存器:包括块重复寄存器)块重复寄存器:包括块重复寄存器0 0和和1 1(BRC0BRC0,BRC1BRC1)、)、BRC1BRC1的保存寄存器(的保存寄存器(BRS1BRS1)、块重复起始地址寄存器)、块重复起始地址寄存器0 0和和1 1(RSA0RSA0,RSA1RSA1)以及块重复结束地址寄存器)以及块重复结束地址寄存器0 0和和1 1(REA0REA0,R
35、EA1REA1)。)。(3 3)单重复寄存器:包括单重复计数器()单重复寄存器:包括单重复计数器(RPTCRPTC)和计算单重复)和计算单重复寄存器(寄存器(CSRCSR)。)。(4 4)中断寄存器:包括中断标志寄存器)中断寄存器:包括中断标志寄存器0 0和和1 1(IFR0IFR0,IFR1IFR1)、)、中断使能寄存器中断使能寄存器0 0和和1 1(IER0IER0,IER1IER1)以及调试中断使能寄)以及调试中断使能寄存器存器0 0和和1 1(DBIER0DBIER0,DBIER1DBIER1););(5 5)状态寄存器:包括状态寄存器)状态寄存器:包括状态寄存器0 0,1 1,2 2
36、和和3 3(ST0-55ST0-55,ST1-ST1-5555,ST2-55ST2-55和和ST3-55ST3-55)。)。2.3.4 地址数据流单元(地址数据流单元(A单元)单元)图图2-6 A单元结构框图单元结构框图数据读数据总线 CB,DB(每组16位数据)M单元数据地址产生器单元(DAGEN)A单元寄存器A单元ALU D单元P单元数据写数据总线 EB,FB(每组16位数据)I单元数据写地址总线 EAB,FAB(每组24位地址)数据读地址总线 BAB,CAB,DAB(每组24位地址)A单元 DAGEN产生所有读写数据空产生所有读写数据空间的地址。间的地址。 可接收来自I单元的立即数或来自
37、A单元的寄存器值; 根据P单元指示,对间接寻址方式时选择使用线性寻址还是循环寻址。 16位位ALU可接收来自可接收来自I单元单元的立即数或与存储器、的立即数或与存储器、I/O空间、空间、A单元寄存器、单元寄存器、D单元寄存器和单元寄存器和P单元寄存器进行双向通信。可单元寄存器进行双向通信。可完成如下动作:完成如下动作: 加法、减法、比较、布尔逻加法、减法、比较、布尔逻辑、符号移位、逻辑移位和绝辑、符号移位、逻辑移位和绝对值计算;对值计算; 测试、设置、清空、求补测试、设置、清空、求补A单元寄存器位或存储器位域;单元寄存器位或存储器位域; 改变或转移寄存器值,循改变或转移寄存器值,循环移位寄存器
38、值,从移位器向环移位寄存器值,从移位器向一个一个A单元寄存器送特定值。单元寄存器送特定值。A A单元包括的寄存器有以下几种类型单元包括的寄存器有以下几种类型: :(1 1)数据页寄存器:包括数据页寄存器()数据页寄存器:包括数据页寄存器(DPHDPH,DPDP)和接)和接口数据页寄存器(口数据页寄存器(PDPPDP););(2 2)指针:包括系数数据指针寄存器()指针:包括系数数据指针寄存器(CDPHCDPH,CDPCDP)、栈)、栈指针寄存器(指针寄存器(SPHSPH,SPSP,SSPSSP)和)和8 8个辅助寄存器(个辅助寄存器(XAR0XAR0XAR7XAR7););(3 3)循环缓冲寄
39、存器:包括循环缓冲大小寄存器()循环缓冲寄存器:包括循环缓冲大小寄存器(BK03BK03,BK47BK47,BKCBKC)、循环缓冲起始地址寄存器()、循环缓冲起始地址寄存器(BSA01BSA01,BSA23BSA23,BSA45BSA45,BSA67BSA67,BSACBSAC););(4 4)临时寄存器:包括临时寄存器()临时寄存器:包括临时寄存器(T0T0T3T3)。)。2.3.5 数据计算单元(数据计算单元(D单元单元)图图2-7 D2-7 D单元结构框图单元结构框图数据读数据总线BB,CB,DB(每组16位数据)数据写数据总线 EB,FB(每组16位数据)M单元I单元D单元寄存器D单
40、元ALU 移位器两个MACA单元P单元D单元 接收来自接收来自I单元的立即数,单元的立即数, 与存储器、与存储器、I/O空间、空间、D单元寄单元寄存器、存器、P单元寄存器、单元寄存器、A单元寄单元寄存器进行双向通信;存器进行双向通信; 把移位结果送至把移位结果送至D单元的单元的ALU或或A单元的单元的ALU; 实现实现40位累加器值最大左移位累加器值最大左移31位或最大右移位或最大右移32位;位; 实现实现16位寄存器、存储器或位寄存器、存储器或I/O空间数据最大左移空间数据最大左移31位或最位或最大右移大右移32位;位; 实现实现16位立即数最大左移位立即数最大左移15位;位; 提取或扩张位
41、域,执行位计提取或扩张位域,执行位计数;数; 对寄存器值进行循环移位对寄存器值进行循环移位; 在累加器的值存入数据空间在累加器的值存入数据空间之前,对它们进行取整之前,对它们进行取整/饱和处饱和处理。理。 可从可从I单元接收立即数,或单元接收立即数,或与存储器、与存储器、I/O空间、空间、D单元寄单元寄存器、存器、P单元寄存器、单元寄存器、A单元寄单元寄存器进行双向通信存器进行双向通信,还可接收移还可接收移位器的结果;位器的结果; 加法、减法、比较、取整、加法、减法、比较、取整、饱和、布尔逻辑以及绝对值运算;饱和、布尔逻辑以及绝对值运算; 在执行一条双在执行一条双16位算术指令位算术指令时,同
42、时进行两个算术操作;时,同时进行两个算术操作; 测试、设置、清除以及求测试、设置、清除以及求D单元寄存器的补码;单元寄存器的补码; 对寄存器的值进行移动。对寄存器的值进行移动。 可支持乘法和加可支持乘法和加/减法。在减法。在单个机器周期内,每个单个机器周期内,每个MAC可以进行一次可以进行一次1717位小数或位小数或整数乘法运算和一次带有可选整数乘法运算和一次带有可选的的32或或40位饱和处理的位饱和处理的40位加位加/减法运算。减法运算。MAC的结果送累的结果送累加器;加器; MAC接收来自接收来自I单元的立单元的立即数,或来自存储器、即数,或来自存储器、I/O空空间、间、A单元寄存器的数据
43、,和单元寄存器的数据,和D单元寄存器、单元寄存器、P单元寄存器单元寄存器进行双向通信;进行双向通信; MAC的操作会影响的操作会影响P单元单元状态寄存器的某些位。状态寄存器的某些位。2.3.6 地址总线与数据总线地址总线与数据总线lC55x的的CPU总线(共总线(共12组)组)u1组组32位程序总线:位程序总线:PBu5组组16位数据总线:位数据总线: BB、CB、DB、EB、FBu6组组24位地址总线:位地址总线:PAB、BAB、CAB、DAB、EAB、FABl特点:特点: 这种总线并行机构使这种总线并行机构使CPU在一个机器周期内,能够读在一个机器周期内,能够读1次次32位程序代码、读位程
44、序代码、读3次次16位数据、写位数据、写2次次16位地址位地址表表2-4 地址总线和数据总线的功能地址总线和数据总线的功能表表2-5 各种访问类型下总线的使用(各种访问类型下总线的使用(1)表表2-5 各种访问类型下总线的使用(各种访问类型下总线的使用(2)2.3.7 指令流水线指令流水线 C55x的指令流水线分为两个阶段的指令流水线分为两个阶段:第一阶段第一阶段取指阶段取指阶段:从存储器取来从存储器取来32位指令包,将其存入指令缓冲队列位指令包,将其存入指令缓冲队列(IBQ)中,并送)中,并送48位指令包给第二位指令包给第二流水阶段流水阶段第二阶段第二阶段执行阶段执行阶段:对指令进行译码,对
45、指令进行译码,并完成数据访问和计算。并完成数据访问和计算。1.1.概况:概况:表表2-6 取指阶段流水线的意义取指阶段流水线的意义图图2-8 指令流水线(取指阶段)指令流水线(取指阶段)2.2.取指阶段取指阶段图图2-9 指令流水线(执行阶段)指令流水线(执行阶段)3.3.执行阶段执行阶段表表2-7 执行阶段流水线的意义(执行阶段流水线的意义(1)表表2-7 执行阶段流水线的意义(执行阶段流水线的意义(2)下面通过举例来说明流水线的工作方式。下面通过举例来说明流水线的工作方式。AMOV #k23, XARx :在在AD节拍用一个立即数对节拍用一个立即数对XARx初始化;初始化;MOV #k,
46、ARx :ARx不是通过存储器映射方式寻址的,在不是通过存储器映射方式寻址的,在X节拍用一个节拍用一个立即数初始化立即数初始化ARx;MOV #k, mmap(ARx):ARx是通过存储器映射方式寻址的,在是通过存储器映射方式寻址的,在W节拍节拍用一个立即数初始化用一个立即数初始化ARx;AADD #k, ARx:对于这个特殊指令,在:对于这个特殊指令,在AD节拍用一个立即数对节拍用一个立即数对ARx初初始化;始化;MOV #k, *ARx+:在:在W+节拍对存储器进行写操作;节拍对存储器进行写操作;MOV *ARx+, AC0:在:在AD节拍对节拍对ARx 进行读和更新操作,在进行读和更新操
47、作,在X节拍载入节拍载入AC0;ADD #k, ARx:在:在X节拍的开始时刻读节拍的开始时刻读ARx,在,在X节拍的结束时刻修改节拍的结束时刻修改ARx;ADD ACy, ACx:在:在X节拍读节拍读/写写ACx和和ACy;MOV mmap(ARx) , ACx:ARx是通过存储器映射方式寻址的,在是通过存储器映射方式寻址的,在R节拍节拍读取读取ARx,在,在X节拍修改节拍修改ACx ;MOV ARx, ACx:ARx 不是通过存储器映射方式寻址的,在不是通过存储器映射方式寻址的,在X节拍读取节拍读取ARx,在,在X节拍修改节拍修改ACx ;BSET CPL :在:在X节拍设置节拍设置CPL
48、位;位;PUSH, POP, RET或AADD #K8, SP :在:在AD节拍读取和修改节拍读取和修改SP,如果选择,如果选择32位栈模式,位栈模式,SSP会发生变化;会发生变化;XCCPART overflow(ACx):在:在X节拍判断条件,但是不管条件是否满足节拍判断条件,但是不管条件是否满足| MOV *AR1+, AC1 ,AR1都会加都会加1;XCC overflow(ACx):在:在AD节拍判断条件,只有满足条件时,节拍判断条件,只有满足条件时,AR1加加1| MOV *AR1+, AC1 2.4 CPU寄存器寄存器lC55x的寄存器(见表的寄存器(见表2-8 )lC55x寄存
49、器的映射地址及描述(见表寄存器的映射地址及描述(见表2-9 )2.4.1 概况概况 注意事项:注意事项: ST0_55、ST1_55和和ST3_55都有两个访问地址;都有两个访问地址; T3、RSA0L、REA0L和和SP有两个访问地址;有两个访问地址; 任何装入任何装入BRC1的指令将相同的值装入的指令将相同的值装入BRS1。 对于对于ST0_55、ST1_55和和ST3_55,对于其中一个地址,所有的对于其中一个地址,所有的C55x位均位均可访问;在另外一个地址(称为保护地可访问;在另外一个地址(称为保护地址),某些保护位不能被修改。保护地址),某些保护位不能被修改。保护地址是为了提供对址
50、是为了提供对C54x代码的支持,以代码的支持,以便写入便写入ST0、ST1以及以及PMST(C54x对对应应ST3_55) 对于对于T3、RSA0L、REA0L和和SP,当使用当使用DP直接寻址方式访问存储器映直接寻址方式访问存储器映射寄存器时,将访问两个地址中更高的射寄存器时,将访问两个地址中更高的地址,即地址,即 T3=23H(不是(不是0EH);); RSA0L=3DH(不是(不是1BH);); REA0L=3FH(不是(不是1CH);); SP=4DH(不是(不是18H)表表2-8 寄存器总表(寄存器总表(1)缩 写名 称大小AC0AC3累加器0340位AR0AR7辅助寄存器0716位
51、BK03,BK47,BKC循环缓冲区大小寄存器16位BRC0,BRC1块循环计数器0和116位BRS1BRC1保存寄存器16位BSA01,BSA23,BSA45,BSA67,BSAC循环缓冲区起始地址寄存器16位CDP系数数据指针(XCDP的低位部分)16位CDPHXCDP的高位部分7位CFCT控制流关系寄存器8位CSR计算单循环寄存器16位DBIER0,DBIER1调试中断使能寄存器0和116位DP数据页寄存器(XDP的低位部分)16位DPHXDP的高位部分7位IER0,IER1中断使能寄存器0和116位IFR0,IFR1中断标志寄存器0和116位IVPD,IVPH中断向量指针16位表表2-
52、8 寄存器总表(寄存器总表(2)PC程序计数器24位PDP外设数据页寄存器9位REA0,REA1块循环结束地址寄存器0和124位RETA返回地址寄存器24位RPTC单循环计数器16位RSA0,RSA1块循环起始地址寄存器0和124位SP数据堆栈指针16位SPHXSP和XSSP的高位7位SSP系统堆栈指针16位ST0_55ST3_55状态寄存器0316位T0T3暂时寄存器16位TRN0TRN1变换寄存器0和116位XAR0XAR7扩展辅助寄存器0723位XCDP扩展系数数据指针23位XDP扩展数据页寄存器23位XSP扩展数据堆栈指针23位XSSP扩展系统堆栈指针23位表表2-9 存储器映射寄存器
53、(存储器映射寄存器(1) 表表2-9 存储器映射寄存器(存储器映射寄存器(2) 表表2-9 存储器映射寄存器(存储器映射寄存器(3) 表表2-9 存储器映射寄存器(存储器映射寄存器(4) 表表2-9 存储器映射寄存器(存储器映射寄存器(5) 表表2-9 存储器映射寄存器(存储器映射寄存器(6) 表表2-9 存储器映射寄存器(存储器映射寄存器(7) 表表2-9 存储器映射寄存器(存储器映射寄存器(8) 表表2-9 存储器映射寄存器(存储器映射寄存器(9) 2.4.2 累加器(累加器(AC0AC3)lC55x的的CPU包括包括4个个40位的累加器位的累加器AC0、AC1、AC2、AC3lAC0、A
54、C1、AC2、AC3等价。任何一条使用一个累等价。任何一条使用一个累加器的指令,都可以通过编程来使用加器的指令,都可以通过编程来使用4个累加器中的个累加器中的任何一个任何一个l在在C54x兼容模式(兼容模式(C54CM=1)下,累加器)下,累加器AC0、AC1分别对应于分别对应于C54x里的累加器里的累加器A、B l 每个累加器分为低字(每个累加器分为低字(ACxL)、高字()、高字(ACxH) 和和8个保护位(个保护位(ACxG),用户可以使用访问存储器映射用户可以使用访问存储器映射寄存器的寻址方式,分别访问这寄存器的寻址方式,分别访问这3部分部分 AC0GAC0LAC0HAC1GAC1LA
55、C1HAC2GAC2LAC2HAC3GAC3LAC3HAC0AC1AC2AC339323116150功能:功能:2.4.3 变换寄存器变换寄存器TRN0、TRN1lC55x有有2个变换寄存器个变换寄存器TRN0、TRN1l用途:在用途:在比较比较-选择选择-极值极值指令里使用指令里使用u比较两个累加器的高段字和低段字后,执行选择两比较两个累加器的高段字和低段字后,执行选择两个个16位极值的指令,以更新位极值的指令,以更新TRN0和和TRN1。比较累。比较累加器的高段字后更新加器的高段字后更新TRN0,比较累加器的低段字后,比较累加器的低段字后更新更新TRN1u在比较完两个累加器的全部在比较完两
56、个累加器的全部40位后,执行选择一个位后,执行选择一个40位极值的指令,以更新被选中的变换寄存器位极值的指令,以更新被选中的变换寄存器(TRN0或或TRN1) AC1(39-16)=AC0(39-16)-AC1(39-16),若溢出且若溢出且SATD =1,则,则AC1(39-16)=FF 8000h; AC1(15-0)=AC1(15-0)-AC0(15-0). 最大值保存在最大值保存在AC2. TRN0和和TRN1的的内容右移内容右移1位。若位。若AC0(31-16)AC1(31-16),则),则AC2(39-16)=AC0(39-16)同时同时TRN0(15)清)清0. 若若AC0(15
57、-0)AC1(15-0),则),则AC2(15-0)=AC0(15-0)同时同时TRN1(15)清)清0. 2.4.4 T寄存器(寄存器(T0-T3) l用途用途u存放乘法、乘加以及乘减运算里的一个乘数存放乘法、乘加以及乘减运算里的一个乘数u存放存放D单元里加法、减法和装入运算的移位数单元里加法、减法和装入运算的移位数u用交换指令交换辅助寄存器(用交换指令交换辅助寄存器(AR0-AR7)和)和T寄存器寄存器中的内容时,跟踪多个指针值中的内容时,跟踪多个指针值u在在D单元单元ALU里作双里作双16位运算时,存放位运算时,存放Viterbi蝶形的蝶形的变换尺度变换尺度l CPU包括包括4个个16位
58、通用位通用T寄寄存器:存器:T0、T1、T2、T32.4.5 用作数据地址空间和用作数据地址空间和I/O空间的寄存器空间的寄存器 表表2-10 用作数据地址空间和用作数据地址空间和I/O空间的寄存器空间的寄存器1. 辅助寄存器(辅助寄存器(XAR0XAR7/AR0AR7)低字的作用:低字的作用: 用于用于ARAR间接寻址模式,以间接寻址模式,以及双及双ARAR间接寻址模式。间接寻址模式。 提供提供7 7位数据页内的位数据页内的1616位偏位偏移量(形成一个移量(形成一个2323位地址)位地址); ; 存放位地址存放位地址; ; 作为通用寄存器或计数器。作为通用寄存器或计数器。高高7 7位用于指
59、定要访问数据位用于指定要访问数据空间的数据页空间的数据页访问属性:访问属性: XARn只能用专用指令访问; ARn可用专用指令访问,也可以作为存储器映射寄存器访问; ARnH不能单独访问,必须通过访问XARn来访问ARnHAR1LC:ST2_551lCPU在存储器中映射了一个系数数据指针(在存储器中映射了一个系数数据指针(CDP)和一个相关的扩展寄存器(和一个相关的扩展寄存器(CDPH):):2. 系数数据指针(系数数据指针(XCDP/CDP)lCPU可以连接这个寄存器形成一个扩展系数数据指针可以连接这个寄存器形成一个扩展系数数据指针(XCDP)u高高7位(位(CDPH)用于指定要访问数据空间
60、的数据页)用于指定要访问数据空间的数据页u低字(低字(CDP)用来作为)用来作为16位偏移量与位偏移量与7位数据页形成位数据页形成一个一个23位地址位地址 lXCDP或或CDP用在用在CDP间接寻址方式和系数间接寻间接寻址方式和系数间接寻址方式中,址方式中,CDP可用于任何指令中访问一个单数据可用于任何指令中访问一个单数据空间值,在双空间值,在双MAC指令中,它还可以独立地提供第指令中,它还可以独立地提供第三个操作数。三个操作数。 表表2-12 XCDP的访问属性的访问属性 3. 循环缓冲区首地址寄存器循环缓冲区首地址寄存器lCPU有有5个个16位的循环缓冲区首地址寄存器:位的循环缓冲区首地址
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 临港新建光引擎表面镀膜处理项目可行性研究报告
- 中药材晒干用烘干房建设项目可行性研究报告
- 歌唱青春的课件
- 中文外教兼职可行性研究报告
- 中成药员工健康中心可行性研究报告
- 工厂培训教材课件
- 工厂类型课件
- 安全生产法律法规考点题库及答案
- 保险基础知识与实务实战演练模拟试卷及答案
- 中医妇科学基础理论知识点巩固练习题及答案
- 北京2026年11月小学五年级数学期中试卷及答案
- 人教版八年级英语上册Unit1-Unit 8语法知识点+练习题(含答案)
- 《盘活存量土地和低效用地典型案例2026版》
- 水利水电工程施工图审查技术导则(TJWEA 0001-2025)
- 陕煤电力略阳有限公司招聘笔试题库2026
- 佛教协会工作制度制度
- 2026年分红保险合同
- 叉车司机五级试题+参考答案
- 山东灯塔e支部录入培训课件
- 2026年海南科技职业大学单招职业技能考试备考试题附答案详解
- 2024年云南省选调公务员笔试真题汇编含答案解析(夺冠)
评论
0/150
提交评论