第2章TMS320C54x的硬件结构课件.ppt

上传人:小飞机 文档编号:2108819 上传时间:2023-01-11 格式:PPT 页数:84 大小:418.69KB
返回 下载 相关 举报
第2章TMS320C54x的硬件结构课件.ppt_第1页
第1页 / 共84页
第2章TMS320C54x的硬件结构课件.ppt_第2页
第2页 / 共84页
第2章TMS320C54x的硬件结构课件.ppt_第3页
第3页 / 共84页
第2章TMS320C54x的硬件结构课件.ppt_第4页
第4页 / 共84页
第2章TMS320C54x的硬件结构课件.ppt_第5页
第5页 / 共84页
点击查看更多>>
资源描述

《第2章TMS320C54x的硬件结构课件.ppt》由会员分享,可在线阅读,更多相关《第2章TMS320C54x的硬件结构课件.ppt(84页珍藏版)》请在三一办公上搜索。

1、1,第2章 TMS320C54x的硬件结构,知识要点,硬件结构框图,总线结构,CPU结构,存储器和I/O空间,引脚功能,中断系统,1第2章 TMS320C54x的硬件结构知识要点,每课一题,DSP芯片内有3个CPU状态控制寄存器,用于表示工作状态和控制之用,分别说明是哪3个寄存器,并指出其中的状态位或者控制位ARP,DP,XF,INTM,IPTR,MP/MC,OVLY,DROM的作用。,2,每课一题DSP芯片内有3个CPU状态控制寄存器,用于表示工作,3,DSP的硬件结构,DSP的硬件结构:(1)外部结构:引脚信号;(2)内部结构:CPU、存储器、总线、片内外设(如接口、时钟等)等部分组成。,

2、3DSP的硬件结构 DSP的硬件结构:,4,第2章 TMS320C54x的硬件结构,C54x的外部结构:引脚(包括外部总线),TMS320C54x芯片采用CMOS制造工艺,整个系列的型号基本上都采用塑料或陶瓷四方扁平封装形式(TQFP144)不同的器件型号其引脚的个数有所不同。下面 以TMS320VC5402芯片为例,介绍C54x引脚的名称及功能。,4第2章 TMS320C54x的硬件结构C54x的外部结构,5,第2章 TMS320C54x的硬件结构,C5402共有144个引脚(TQFP144 封装),引脚分布如图。,5第2章 TMS320C54x的硬件结构 C54,6,第2章 TMS320C

3、54x的硬件结构,TMS320C5402引脚:,电源引脚时钟引脚 控制引脚地址和数据引脚(即外部总线),串行口引脚 主机接口引脚通用I/O引脚 测试引脚,6第2章 TMS320C54x的硬件结构 TMS320C54,7,第2章 TMS320C54x的硬件结构,TMS320C54x的内部组成,中央处理器CPU,I/O功能扩展接口,内部总线,特殊功能寄存器,数据存储器RAM,程序存储器ROM,串行口,主机通信接口HPI,定时系统,中断系统,C54x的内部结构,7第2章 TMS320C54x的硬件结构TMS320C54x,8,第2章 TMS320C54x的硬件结构,C54x的主要特性,1CPU,2存

4、储器,3指令系统,4在片外围电路,5电源,6片内仿真接口,7速度,8第2章 TMS320C54x的硬件结构C54x的主要特性,9,1CPU,4组总线:P,C,D,E总线 40位逻辑运算单元ALU:包括2个40位的累加器A,B和桶型移位寄存器。乘法器:17*17位;暂存器T(16位)。比较、选择、存储单元(CSSU),可用于Viterbi译码器的加法-比较-选择运算。,指数编码器,是一个支持单周期指令EXP的专用硬件。可以在一个周期内计算40位累加器数值的指数。,配有两个地址生成器,包括8个辅助寄存器和2个辅助寄存器算术运算单元(ARAU)。,9 1CPU 4组总线:P,C,D,E总线 指数编码

5、,10,2存储器,可访问的最大存储空间为192K16位,即64K字的程序存储器、64K字的数据存储器以及64K字的I/O空间。,片内ROM,可配置为程序存储器和数据存储器。,片内RAM有两种类型,即双寻址RAM(DARAM)和单寻址RAM(SARAM)。,10 2存储器 可访问的最大存储空间为19,11,3在片外围电路,具有软件可编程等待状态发生器 设有可编程分区转换逻辑电路 带有内部振荡器或外部时钟源的片内锁相环(PLL)发生器 支持全双工操作的串行口,可进行8位或16位串行通信 带4位预定标器的16位可编程定时器 设有与主机通信的并行接口(HPI)具有外部总线判断控制,以断开外部的数据总线

6、、地址总线和控制信号 数据总线具有总线保持器特性,11 3在片外围电路 具有软件可编程等待状,12,4电源,具有多种节电模式。可用IDLE1、IDLE2和IDLE3指令来控制芯片功耗,使CPU工作在省电方式。可在软件控制下,禁止CLKOUT输出信号。,5片内仿真接口,具有符合IEEE1149.1标准的片内仿真接口。,12 4电源 具有多种节电模式。5片内仿,13,6速度,5.0V电压的器件,其速度可达到40MIPS,指令周期时间为25ns。3.3V电压的器件,其速度可达到80MIPS,指令周期时间为12.5ns。2.5V电压的器件,其速度可达到100MIPS,指令周期时间为10ns。1.8V电

7、压的器件,其速度可达到200MIPS,每个核的指令周期时间为10ns。,13 6速度 5.0V电压的器件,其速度可达,14,第2章 TMS320C54x的硬件结构,C54x的内部结构,TMS320C54x的硬件结构图,14第2章 TMS320C54x的硬件结构C54x的内部,15,总线结构,(1)冯诺伊曼(Von Neuman)结构(DSP不采用),15总线结构(1)冯诺伊曼(Von Neuman)结构(,16,(2)哈佛(Harvard)结构(DSP采用),外部管理数据总线,外部管理地址总线,数据总线,数据地址总线,程序数据总线,程序地址总线,改进型的哈佛结构是采用双存储空间和数条总线,即一

8、条程序总线和多条数据总线。,16(2)哈佛(Harvard)结构(DSP采用)外部管理,17,第2章 TMS320C54x的硬件结构,C54x的内部总线结构,4组总线:P、C、D、E,每组2条,共8条总线,1)P组:程序总线。PB、PAB,访问程序存储器2)C、D组:数据读总线:CB、CAB、DB、DAB;3)E组:数据写总线:EB、EAB,17第2章 TMS320C54x的硬件结构C54x的内部,18,第2章 TMS320C54x的硬件结构,C54x读/写操作占用总线情况,18第2章 TMS320C54x的硬件结构C54x读/写操,19,第2章 TMS320C54x的硬件结构,CPU包括下列

9、基本部件:40位算术逻辑运算单元ALU;2个40位的累加器A和B;支持-1631位移位范围的桶形移位寄存器;能完成乘法-加法运算的乘法累加器MAC;16位暂存寄存器T;16位转移寄存器TRN;比较、选择、存储单元CSSU;指数编码器;CPU状态和控制寄存器。,C54x的中央处理器CPU,19第2章 TMS320C54x的硬件结构CPU包括下列基本,20,第2章 TMS320C54x的硬件结构,ALU的功能框图,算术逻辑单元ALU,20第2章 TMS320C54x的硬件结构ALU的功能框图,21,第2章 TMS320C54x的硬件结构,累加器A和B,累加器结构,保护位:AG、BG 3932,作为

10、算术计算时的数据位余量,以防止迭代运算中的溢出。,高阶位:AH、BH 3116;,低阶位:AL、BL 150。,21第2章 TMS320C54x的硬件结构累加器A和B 累,22,第2章 TMS320C54x的硬件结构,【例】累加器A=FF 0123 4567H,执行带移位的STH和STL指令后,求暂存器T和A的内容。,STH A,8,T;A的内容左移8位,AH存入T,F F 0 1 2 3 4 5 6 7,0 1,2 3,4 5,6 7,0 0,2 3 4 5,T=2345H,A=FF 0123 4567H,STH A,-8,T;A的内容右移8位,AH存入T,F F 0 1 2 3 4 5 6

11、 7,4 5,2 3,0 1,F F,F F,F F 0 1,T=FF01H,A=FF 0123 4567H,STL A,8,T;A的内容左移8位,AL存入T,F F 0 1 2 3 4 5 6 7,0 1,2 3,4 5,6 7,0 0,6 7 0 0,T=6700H,A=FF 0123 4567H,STL A,-8,T;A的内容右移8位,AL存入T,F F 0 1 2 3 4 5 6 7,4 5,2 3,0 1,F F,F F,2 3 4 5,T=2345H,A=FF 0123 4567H,22第2章 TMS320C54x的硬件结构【例】累加器A=F,23,第2章 TMS320C54x的硬

12、件结构,桶形移位寄存器,1.组成框图,多路选择器MUX,MUX,MUX,MUX,符号控制SC,符号控制SC,符号控制SC,移位寄存器,移位寄存器(-1631),移位寄存器(-1631),移位寄存器(-1631),移位寄存器(-1631),写选择电路,写选择MSW/LSW,写选择MSW/LSW,写选择MSW/LSW,多路选择器MUX,用来选择输入数据。,符号控制SC,用于对输入数据进行符号位扩展。,移位寄存器,用来对输入的数据进行定标和移位。,写选择电路,用来选择最高有效字和最低有效字。,23第2章 TMS320C54x的硬件结构桶形移位寄存器,24,第2章 TMS320C54x的硬件结构,2桶

13、形移位寄存器的输入,取自DB数据总线的16位 输入数据;,取自DB和CB扩展数据总 线的32位输入数据;,来自累加器A或B的40位 输入数据。,3桶形移位寄存器的输出,输出至ALU的一个输入端;,经写MSW/LSW选择电路 输出至EB总线。,DB15DB0,DB15DB0,DB15DB0,A,A,A,B,B,B,ALU,ALU,ALU,EB15EB0,EB15EB0,EB15EB0,24第2章 TMS320C54x的硬件结构2桶形移位寄存器,25,第2章 TMS320C54x的硬件结构,乘法-累加单元MAC,C54x的乘法-累加单元MAC是由乘法器、加法器、符号控制、小数控制、零检测器、舍入器

14、、饱和逻辑和暂存器几部分组成。,25第2章 TMS320C54x的硬件结构乘法-累加单元M,26,26零检测舍入器饱和逻辑取整40位加法器MUXXM,27,MAC单元具有强大的乘法-累加运算功能,可在一个流水线周期内完成1次乘法运算和1次加法运算。在数字滤波(FIR和IIR滤波)以及自相关等运算中,使用乘法-累加运算指令可以大大提高系统的运算速度。,27 MAC单元具有强大的乘法-累加运算功能,可在一个,28,第2章 TMS320C54x的硬件结构,比较、选择和存储单元CSSU,C54x的比较、选择和存储单元(CSSU)是一个特殊用途的硬件电路,专门用来完成Viterbi算法中的加法/比较/选

15、择(ACS)操作。,比较电路COMP,状态转移寄存器TRN,状态比较寄存器TC,多路选择器MUX,MUX,MUX,COMP,COMP,TRN,TRN,TC,TC,28第2章 TMS320C54x的硬件结构比较、选择和存储,29,第2章 TMS320C54x的硬件结构,例如,CMPS指令可以对累加器的高阶位和低阶位进行比较,并选择较大的数存放在指令所指定的存储单元中。指令格式:CMPS A,*AR1 功能:对累加器A的高16位字(AH)和低16位字(AL)进行比较,若AHAL,则AH*AR1,TRN左移1位,0TRN(0),0TC;若AHAL,则AL*AR1,TRN左移1位,1TRN(0),1T

16、C。,29第2章 TMS320C54x的硬件结构 例如,CM,30,第2章 TMS320C54x的硬件结构,指数编码器EXP,指数编码器是一个用于支持指数运算指令的专用硬件,可以在单周期内执行EXP指令,求累加器中数的指数值。,功能:求累加器中数据的指数值。指数值=冗余符号位-8,30第2章 TMS320C54x的硬件结构指数编码器EXP,31,例如:教材P34,31指累加器A 累加器B T寄存器 例如:教材P34,32,第2章 TMS320C54x的硬件结构,CPU状态和控制寄存器,C54x提供三个16位寄存器来作为CPU状态和控制寄存器,它们分别为:,状态寄存器0(ST0)状态寄存器1(S

17、T1)工作方式状态寄存器(PMST),ST0和ST1主要包含各种工作条件和工作方式的状态;PMST包含存储器的设置状态和其他控制信息。,32第2章 TMS320C54x的硬件结构CPU状态和控制,33,第2章 TMS320C54x的硬件结构,1状态寄存器0(ST0),表示寻址方式和运行状态。,ST0的结构:,ARP,ARP,TC,TC,C,C,DP,DP:数据存储器页指针。用来与指令中提供的7位地址结合形成1个 16位数据存储器的地址。,DP,33第2章 TMS320C54x的硬件结构1状态寄存器0(,34,ARP:辅助寄存器指针。用来选择使用单操作数间接寻址时的 辅助寄存器AR0AR7。,T

18、C:测试/控制标志。用来保存ALU测试操作的结果。,C:进位标志位。用来保存ALU加减运算时所产生的进/借位。,OVA/B:累加器A/B的溢出标志。用来反映A/B是否产生溢出。,34ARP:辅助寄存器指针。TC:测试/控制标志。C:进位标,35,第2章 TMS320C54x的硬件结构,2状态寄存器1(ST1),表示寻址要求、初始状态的设置、I/O及中断的控制等。,35第2章 TMS320C54x的硬件结构2状态寄存器1,36,BRAF:块重复操作标志位。用来指示当前是否在执行块重复操作。BRAF=0 表示当前不进行重复块操作;BRAF=1 表示当前正在进行块重复操作。,CPL:直接寻址编辑方式

19、标志位;用来指示直接寻址选用何种指针。CPL=0 选用数据页指针DP的直接寻址;CPL=1 选用堆栈指针SP的直接寻址。,36BRAF:块重复操作标志位。CPL:直接寻址编辑方式标志,37,XF:外部XF引脚状态控制位。用来控制XF通用外部输出引脚的状态。执行SSBX XF=1 XF通用输出引脚为1;执行RSBX XF=0 XF通用输出引脚为0。,HM:保持方式位;响应HOLD信号时,指示 CPU是否继续执行内部操作。HM=0 CPU从内部程序存储器取指,继续执行内部操作。HM=1 CPU停止内部操作。,37XF:外部XF引脚状态控制位。HM:保持方式位;响应HO,38,INTM:中断方式控制

20、位;用于屏蔽或开放所有可屏蔽中断。INTN=0 开放全部可屏蔽中断;INTN=1 禁止所有可屏蔽中断。,0:保留位,未被使用,总是读为0。,38INTM:中断方式控制位;0:保留位,未被使用,总是读为,39,OVM:溢出方式控制位;用来确定累加器溢出时,对累加器的加载方式。OVM=0 将运算的溢出结果直接加载到累加器中;OVM=1 当正溢出时,将007FFFFFFFH加载累加器;当负溢出时,将FF80000000H加载累加器。,SXM:符号位扩展方式控制位;用来确定数据 在运算之前是否需要符号位扩展。SXM=0 数据进入ALU之前禁止符号位扩展;SXM=1 数据进入ALU之前进行符号位扩展。,

21、39OVM:溢出方式控制位;SXM:符号位扩展方式控制位;用,40,第2章 TMS320C54x的硬件结构,3工作方式状态寄存器PMST,主要设定和控制处理器的工作方式和存储器的配置,反映处理器的工作状态。,中断向量指针,CPU工作方式选择位,RAM重复占位标志,地址可见控制位,数据ROM映射选择位,时钟输出选择位,乘法饱和方式位,存储饱和位,40第2章 TMS320C54x的硬件结构3工作方式状态寄,41,第2章 TMS320C54x的硬件结构,IPTR:用来指示中断向量表指向哪一页;MP/MC:用来确定是否允许使用片内程序存储器ROM OVLY:用来决定片内双寻址数据RAM是否映射到程序空

22、间。AVIS:用来决定是否可以从器件地址引脚线看到内部程序空间地址线;DROM:用来决定片内ROM是否可以映射到数据存储空间;CLKOFF:用来决定时钟输出引脚CLKOUT是否有信号输出;SMUL:用来决定乘法结果是否需要进行饱和处理;SST:用来决定累加器中的数据在存储到存储器之前,是否需要饱和处理。,41第2章 TMS320C54x的硬件结构 IPTR:用来,42,第2章 TMS320C54x的硬件结构,C54x的存储空间结构,C54x共有192K字的存储空间,分成3个相互独立的存储空间:,64K字(16位)的程序存储空间;64K字(16位)的数据存储空间;64K字(16位)的I/O空间。

23、,42第2章 TMS320C54x的硬件结构 C54x的存,每课一题,DSP的存储器分为程序存储器和数据存储器,都有64K的地址空间,这些地址空间是如何分配和使用的?参看教材P36页的内存图,理解内存资源的使用方法。,43,每课一题DSP的存储器分为程序存储器和数据存储器,都有64K,44,1)程序存储空间:存放指令代码和系数表;2)数据存储空间:存放临时数据;3)I/O存储空间:指其他模块的地址,441)程序存储空间:存放指令代码和系数表;,45,第2章 TMS320C54x的硬件结构,所有C54x芯片都含有片内RAM和ROM。,片内RAM,SARAM,DARAM,单寻址RAM,双寻址RAM

24、,DARAM:由存储器内的一些分块组成。每个DARAM块在单周期内能被访问2次。,SARAM:由存储器分块组成。每个SARAM块在单周期内只能被访问1次。,片内ROM:主要存放固化程序和系数表。一般构成程序存储空间,也可以部分地映射在数据存储空间。,45第2章 TMS320C54x的硬件结构 所有C5,46,第2章 TMS320C54x的硬件结构,片内存储器的优点:,不需要插入等待状态;与外部存储器相比,成本低;比外部存储器功耗小。,DARAM和SARAM既可以被映射到数据存储空间用来存储数据,也可以映射到程序空间用来存储程序代码。,46第2章 TMS320C54x的硬件结构片内存储器的优点:

25、,47,第2章 TMS320C54x的硬件结构,C54x片内存储器资源配置,47第2章 TMS320C54x的硬件结构C54x片内存储,48,第2章 TMS320C54x的硬件结构,存储空间结构,C54x片内和片外存储器(包括程序存储器和数据存储器)统一编址。内部RAM可存数据空间,也可存程序。ROM可存程序,也可以部分存数据;ROM可以存放数据,RAM可以存放程序。,48第2章 TMS320C54x的硬件结构存储空间结构,49,第2章 TMS320C54x的硬件结构,1)MP/MC位:控制片内ROM是否存放程序。指工作模式。,当MP/MC=1时,称为微处理器模式。片内ROM不存放程序。,当M

26、P/MC=0时,称为微计算机模式。片内ROM可存放程序。,3个控制位:MP/MC,OVLY,DROM(控制存储器的使用和分配),49第2章 TMS320C54x的硬件结构 1)MP/,50,第2章 TMS320C54x的硬件结构,OVLY=0时,片内RAM只存放数据。,OVLY=1时,片内RAM可存放程序和数据。,2)OVLY位:控制片内RAM是否存放程序。,DROM=0时,片内ROM只存放程序。,DROM=1时,片内ROM可存放数据。,3)DROM位:控制片内ROM是否存放数据。,50第2章 TMS320C54x的硬件结构 OVLY,51,第2章 TMS320C54x的硬件结构,TMS320

27、VC5402存储器配置结构,51第2章 TMS320C54x的硬件结构TMS320VC5,52,第2章 TMS320C54x的硬件结构,程序存储空间(64K,分为0511页,每页128字),程序可存放在片内ROM、DARAM和片外ROM 3个位置 C5402共有20条地址线,可寻址1M字的外部程序存储器。它的内部ROM和DARAM可通过软件映射到程序空间。当存储单元映射到程序空间时,CPU可自动地按程序存储器对它们进行寻址。如果程序地址生成器(PAGEN)产生的地址处于外部存储器,CPU可自动地对外部存储器寻址。,52第2章 TMS320C54x的硬件结构 程序存储空间(,53,第2章 TMS

28、320C54x的硬件结构,程序存储空间的扩展(了解),在C54x系列芯片中,有些芯片采用分页扩展的方法,使程序存储空间可扩展到1M8M。,如:C5409和C5416可扩展到8M。C5402有20条外部程序地址总线,其程序 空间只能扩展到1M。,53第2章 TMS320C54x的硬件结构程序存储空间的扩,54,第2章 TMS320C54x的硬件结构,分页扩展技术的特点:有20或23条外部程序地址线,可寻址1M或8M存储空间;有1个额外的存储器映像寄存器程序计数器扩展寄存器XPC,7位有效位,27128;有6条寻址扩展程序空间的指令,用于寻址扩展程序空间。,54第2章 TMS320C54x的硬件结

29、构分页扩展技术的特点,55,第2章 TMS320C54x的硬件结构,内部ROM,C5402共有4K字的内部ROM。,当MP/MC=0,4K字的ROM被映射到程序空间,这种模式比较常用。,低2K:用户专用程序,但要找厂家才能烧入,仿真时可用。高2K:TI公司定义,出厂时已经固化了引导程序、中断向量表 和常数表。,55第2章 TMS320C54x的硬件结构内部ROM,56,第2章 TMS320C54x的硬件结构,TI公司定义的内容(ROM高2K中:F800FFFF):,引导程序。,256字律扩展表。256字A律扩展表。256字正弦函数值查找表。保留 中断向量表。,F800H FBFFHFC00HF

30、CFFHFD00HFDFFHFE00HFEFFHFF00HFF7FHFF80HFFFFH,56第2章 TMS320C54x的硬件结构 TI公司定义,57,自举引导方法:复位后先执行复位中断向量指令,从而启动引导程序,引导程序选择一种方式,即从串行口、外部存储器、I/O口、主机接口几种方式中选择一种,搬移用户程序(存放在片外)到片内指定位置,然后将PC指针指向程序入口,从而完成用户程序的引导过程。,数据存储空间(64K,分为0511页,每页128字),数据存储空间的配置,57自举引导方法:复位后先执行复位中断向量指令,从而启动引导,58,第2章 TMS320C54x的硬件结构,C54x的数据存储

31、空间由内部和外部存储器构成,共有64K字,采用内部和外部存储器统一编址。数据可存放在3个区域:片内RAM、ROM和片外RAM中。,58第2章 TMS320C54x的硬件结构 C54x,59,第2章 TMS320C54x的硬件结构,C54x的内部数据存储器由SARAM、DARAM和内部ROM组成。,当DROM=0时,内部ROM不映射到数据空间;当DROM=1时,部分内部ROM映射到数据存储空间。,C54x片内数据存储器容量及其分配,59第2章 TMS320C54x的硬件结构 C54x,60,第2章 TMS320C54x的硬件结构,C5402数据存储空间结构:0511页,0000H0050H 存储

32、器映像寄存器,0060H007FH 暂存器SPRAM,0080H3FFFH 内部DARAM,4000HEFFFH 外部存储器,DROM=1 使用内部ROM,F000HFEFFH 内部ROM,FF00HFFFFH 保留,DROM=0 不使用内部ROM,F000HFEFFH 外部存储器,存储器映像寄存器,暂存器SPRAM,内部DARAM(16K字),外部存储器,DROM=1 内部ROM,DROM=1 保留,60第2章 TMS320C54x的硬件结构C5402数据存,61,第2章 TMS320C54x的硬件结构,内部RAM前面的配置:,存储器映像的CPU寄存器,0000001FH:,特殊功能寄存器,

33、存储器映像的外设寄存器,0020005FH:,外设寄存器,暂存器SPRAM(DP=0),0060007FH:,暂存寄存器,008003FFH(16K):,7个DARAM数据块。,61第2章 TMS320C54x的硬件结构内部RAM前面的配,62,第2章 TMS320C54x的硬件结构,RAM分块:为了便于CPU的并行操作,提高芯片的高速处理能力,从0080H开始,按每80H(128)个存储单元为一个块,将DARAM分成若干个数据块。分块以后,用户可以在同一个周期内从同一块DARAM中取出两个操作数,并将数据写入到另一块DARAM中。,62第2章 TMS320C54x的硬件结构 RAM分,63,

34、第2章 TMS320C54x的硬件结构,存储器映像寄存器(教材P41),在C54x的数据存储空间中,前80H个单元(0页)包含有的CPU寄存器、片内外设寄存器和暂存器。这些寄存器全部映射到数据存储空间,称作存储器映像寄存器MMR。,存储器映像寄存器MMR:CPU寄存器特殊功能寄存器;片内外设寄存器;暂存器SPRAM。,63第2章 TMS320C54x的硬件结构存储器映像寄存器,64,第2章 TMS320C54x的硬件结构,特殊功能寄存器 功能:主要用于程序的运算处理和寻址方式的选 择和设定。地址范围:0000H001FH。,C5402的CPU寄存器共有27个,CPU访问这些寄存器时,不需要插入

35、等待时间。,外设寄存器 功能:用来控制片内外设电路的状态和存放数据。地址范围:0020H005FH。,64第2章 TMS320C54x的硬件结构 C540,65,暂存器SPRAM 功能:用来暂存变量。地址范围:0060H007FH。,包括串行口通信控制寄存器组、定时器定时控制寄存器组、时钟周期设定寄存器组等。,65暂存器SPRAM 包括串行口通信控制寄存器组、定,66,第2章 TMS320C54x的硬件结构,I/O空间(64K,指其他模块的地址),C54x除了程序和数据存储空间外,还提供了一个具有64K字的I/O空间。主要用于对片外设备的访问。可以使用输入指令PORTR和输出指令PORTW对I

36、/O空间寻址。,在对I/O空间访问时,除了使用数据总线和地址总线外,还要用到IOTRB、IS和R/W控制线。,IOTRB和IS:用于选通I/O空间;,R/W:用于控制访问方向。,66第2章 TMS320C54x的硬件结构 I/O空间(,67,DSP中断系统,主程序:一般为监控程序中断程序(ISR):具体实现某种功能中断:当需要处理某个事件时,产生一个中断信号,请求CPU执行中断程序,完成后返回主程序中断源:中断的响应条件:2个控制寄存器:IFR(中断标志),IMR(中断屏蔽控制)优先级中断的分类:中断的响应过程:中断向量中断向量表,67 DSP中断系统主程序:一般为监控程序,68,DSP中断系

37、统,TMS320C54x系列DSP的中断有硬件中断和软件中断之分,共30个中断源,教材P44)。软件中断由程序指令产生(INTR、TRAP或RESET),直接执行某个中断程序。硬件中断由电路的一个信号产生。这些中断使DSP暂时停止主程序的执行,而去执行中断服务程序(ISR)。,68 DSP中断系统TMS320C54x系列DSP的中断有,69,DSP的硬件中断,一般由硬件设备产生。硬件中断分为两种类型:外部硬件中断由外部中断口的信号触发;内部硬件中断由片内外设的信号触发。,当多个硬件中断同时请求时,DSP根据其优先级的不同对其进行响应。,69DSP的硬件中断,一般由硬件设备产生。硬件中断分为两种

38、类,70,可屏蔽中断和非屏蔽中断 可屏蔽中断(可用软件控制是否响应的中断)C54x有16个用户可屏蔽中断,70可屏蔽中断和非屏蔽中断,71,对于C5402,这些中断名为:INT3INT0;RINT0/XINT0、RINT1/XINT1(串口中断)TINT0/TINT1(定时器中断)DMAC4/DAAC5(DMA中断)HPIINT(HPI中断)非屏蔽中断(中断不能禁止,DSP无条件响应)C54x的非屏蔽中断包括所有的软件中断和两个外部硬件中断/RS和NMI。,71对于C5402,这些中断名为:,72,中断寄存器(2个),1)中断标志寄存器IFR如果有中断产生,则IFR对应的中断标志位置1,中断响

39、应后标志位自动清零2)中断屏蔽寄存器IMR用于单独控制每一个中断,若某中断的屏蔽位为0则禁止该中断,为1允许。3)中断总开关INTM(ST1中的控制位)为0时打开所有的中断,为1时关闭所有的中断4)非屏蔽中断不受上述寄存器控制,72中断寄存器(2个)1)中断标志寄存器IFR,73,中断控制,DSP中断处理分为三个阶段 请求中断 响应中断 执行中断服务程序,1.中断请求,一个中断可由硬件器件或软件指令提出请求。当产生一个中断时,中断标志寄存器IFR中相应的中断标志位被置1。不管中断是否被处理器应答,该标志位都会置1。当相应的中断响应后,该标志位自动被清除。,73中断控制DSP中断处理分为三个阶段

40、1.中断请求,74,对于软件中断和非屏蔽中断,CPU将立即响应,进入相应中断服务程序。对于硬件可屏蔽中断,只要满足以下3种条件后CPU才能响应中断。,2.中断响应,当前中断优先级最高。,C54x按照中断优先级响应中断请求。,74 对于软件中断和非屏蔽中断,CPU将立即响应,进入,75,INTM位为0(INTM为可屏蔽中断总开关,在PMST寄存器中),当INTM=0,所有可屏蔽中断被打开。当INTM=1,所有可屏蔽中断被禁止。,中断标志位IFR=1,屏蔽位IMR=1(IMR为中断分开关)。在IMR1,允许该中断,IMR=0禁止该中断,75 INTM位为0(INTM为可屏蔽中断总开关,在PM,76

41、,CPU响应中断后,发送应答信号IACK0,将IFR清零,INTM置1,然后再执行中断,具体过程如下:,3.中断的响应1)中断转移指令(在中断向量单元中)中断服务程序 2)所有中断源的中断向量安排在一起组成中断向量表,占一页的空间,其中每个中断源的中断向量占4个单元,保护现场,将程序计数器PC值压入堆栈;PC中断向量;执行中断向量指令(转移指令,转向中断程序);执行中断服务程序(ISR);执行返回指令;从堆栈中弹出返回地址,加载到PC中;继续执行主程序。,76 CPU响应中断后,发送应答信号IACK0,将I,77,4.保护现场(目的:用于恢复主程序的运行),将PC指针,某些寄存器的值等放在堆栈

42、中保存,中断程序执行完后从堆栈中取出,恢复主程序的运行。,774.保护现场(目的:用于恢复主程序的运行)将P,78,当保存和恢复上下文时,应考虑如下几点:当使用堆栈保存上下文时,必须按相反的方向执行恢复;当恢复ST1寄存器的BRAF位之前,应该恢复BRC位。如果没有按照这个顺序,BRC=0,则BRAF位将被清除。,78 当保存和恢复上下文时,应考虑如下几点:,79,中断操作总结,(1)可屏蔽中断操作过程:设置IFR寄存器的相应标志位;测试中断响应条件;当中断响应后,清除相应的标志位IFR,屏蔽其他可屏蔽中断(INTM=1);PC值保存到堆栈中;执行中断向量中的指令和中断服务程序;中断返回,将返

43、回地址从堆栈中弹出给PC;CPU继续执行主程序。,79中断操作总结(1)可屏蔽中断操作过程:,80,(2)非屏蔽中断操作过程:CPU立刻响应该中断,产生中断响应信号;如果中断是由RS、NMI或INTR指令请求的,则INTM位被置1;,若INTR指令已经请求了一个可屏蔽中断,则相应的标志位被清零;PC值保存到堆栈中;执行中断服务程序;中断返回,将返回地址从堆栈中弹出给PC;CPU继续执行主程序。,80(2)非屏蔽中断操作过程:若INTR指令已经请,81,中断流程图,81中断流程图,82,中断向量地址,计算方法IPTR(高9位)中断号左移2位(低7位)举例:教材P44,中断源说明表教材P47复位中

44、断向量地址FF80H,82中断向量地址计算方法,83,系统的复位(RS有双重作用:对系统复位的同时,也被看作一个非屏蔽中断,会执行复位中断程序,即主程序),C54x设有复位输入引脚RS,通过RS可对芯片进行复位,使程序从FF80H单元开始执行。,83 系统的复位(RS有双重作用:对系统复位的同时,也被,84,第2章 TMS320C54x的硬件结构,通用I/O引脚,C54x芯片为用户提供了两个通用的I/O引脚。,XF:用于程序向外设传输标志信息。通过此引脚的置位或复位,可以控制外设 的工作。,BIO:用来监控外部设备的运行状态。在实时控制系统中,通过查询此引脚控制 程序流向,以避免中断引起的失控现象。,84第2章 TMS320C54x的硬件结构通用I/O引脚,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号