《DSP技术TMS320C54x系列DSP硬件结构.ppt》由会员分享,可在线阅读,更多相关《DSP技术TMS320C54x系列DSP硬件结构.ppt(77页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2020年10月15日,1,3.1TMS320C54x DSP的特点与基本结构 3.2TMS320C54x DSP的总线结构 3.3TMS320C54x DSP的CPU结构 3.4 TMS320C54x DSP的存储器结构 3.5 TMS320C54x DSP的片内外设,第3章 TMS320C54x系列DSP硬件结构,2020年10月15日,2,3.1TMS320C54x DSP的特点与基本结构 TMS320C54x(简称C54x)是TI公司1996年推出的新一代DSP,是为了实现低功耗、高速实时信号处理而专门设计的数字信号处理器,采用改进的哈佛结构,具有高度的操作灵活性和运行速度,适应于远程
2、通信等实时嵌入式应用的需要,现已广泛地应用于无线电通信系统中。,技术指标 对于同一系列的DSP器件,各型号器件所采用的CPU是基本相同的。TMS320C54x系列芯片中各型号器件内部CPU结构完全相同,只是在时钟频率、工作电压、片内存储器容量大小、外围设备和接口电路的设计上有所不同。,表3.1 TMS320C54x系列DSP芯片的技术特征,2020年10月15日,DSP原理及应用,5,TMS320C54x的硬件结构图,2020年10月15日,6,TMS320C54X DSP的主要特点,1.CPU可实现高效的数据存储能力和数据处理能力。 CPU是DSP芯片中的核心部分,是用来实现数据信号处理运算
3、和高速控制功能的部件。CPU的内部包括: (1)采用先进的多总线结构,通过1条程序总线、3条数据总线和4条地址总线来实现。可同时访问程序区和数据区,还可进行双操作数读操作,32位的双字读和并行的单字数据读/写能力。 (2)40位算术逻辑运算单元ALU,包括1个40位桶形移位寄存器和2个独立的40位累加器A、B。,2020年10月15日,7,(3)1717位并行乘法器,与40位专用加法器相连,可用于进行非流水线的单周期乘法-累加运算。 (4)比较、选择、存储单元(CSSU),可用于Viterbi译码器的加法-比较-选择运算。 (5)指数编码器,是一个支持单周期指令EXP的专用硬件。可以在一个周期
4、内计算40位累加器数值的指数。 (6)集成Viterbi加速器,专门用于通信中 Viterbi算法。 (7)两个地址生成器,包括8个辅助寄存器和2个辅助寄存器算术运算单元(ARAU)。,2020年10月15日,8,2.存储器的组成 (1)192K*16位的可选择空间(64K字程序存储空间、64K的数据存储空间和64K的I/O空间) 。 (2)片内ROM,可配置为程序/数据存储器 (3)片内双寻址RAM(DARAM) (4)部分54x含片内单寻址RAM(SARAM),2020年10月15日,9,3.专业的指令集可帮助快速实现复杂算法和优化编程 (1)单指令重复和块指令重复操作。 (2)块存储移动
5、指令,用于程序和数据管理。 (3)32位长整数操作指令。 (4)同时读入2个或3个操作数的指令。 (5)能并行存储和加载的算术指令。 (6)条件存储指令。 (7)快速中断返回指令。,2020年10月15日,10,4.执行指令速度快 TMS320C54x DSP执行单周期定点指令时间可以为25/20/15/12.5/10ns,对应每秒指令数分别为40/66/100MIPS(百万条/秒)。,2020年10月15日,11,5.电源可处于低功耗状态,可在3.3V和2.7V电压下工作,三个低功耗方式(IDLE1、IDLE2、IDLE3)可节省功耗,以便DSP更适合无线移动设备。 6.智能外设可以很方便地
6、实现与外部处理器的数据通信和对芯片的仿真与测试。,2020年10月15日,12,3.2 TMS320C54x DSP的总线结构 TMS320C54x片内有8条16位总线,即4条程序/数据总线和4条地址总线。PB是程序总线,CB、DB和EB是数据总线,地址总线分别是:PAB、CAB、DAB和EAB。 程序总线PB 3条数据总线CB、DB和EB 4条地址总线PAB、CAB、DAB和EAB,表3.2 读/写访问时的总线占用说明,3.3 TMS320C54x的CPU结构,CPU决定了DSP的运算速度和程序效率,为了能在一个指令周期内完成高速的算术运算,TMS320C54x CPU采用了流水线指令执行结
7、构和相应的并行结构设计。 TMS320C54x CPU的寄存器在存取数据时,可以使用寄存器寻址方式,以达到快速保存和恢复数据的目的。 TMS320C54x CPU主要包括:一个40位的算术逻辑单元(ALU)、两个40位的累加器、一个桶形移位乘累加器、16位的暂存器(TREG)、16位的状态转移寄存器(TRN)、比较/选择/存储单元(CSSU)和指数编码器。,一、算术逻辑运算单元,一、算术逻辑运算单元,ALU的两个输入操作数可以来自: 16位的立即数 数据存储器中的16位字 暂存器T中的16位字 数据存储器中读出的2个16位字 累加器A或B中的40位数 移位寄存器的输出。 ALU通过指令识别输入
8、数据。 ALU的40位输出结果送入累加器A或B。,二、累加器,累加器A和B可作为ALU和乘法器/加法器单元的目的寄存器,累加器也能输出数据到ALU或乘法器/加法器中。累加器可分为三部分:保护位(或称前导位)、高位字和低位字。 累加器A和B的唯一区别是累加器A 的3216位能被用作乘/加单元中乘法器的输入,而累加器B则不能。 累加器A和累加器B的保护位用作算术运算时的空白头,目的是防止迭代运算中的溢出。 AG、AH、AL、BG、BH和BL都是存储器映像寄存器(在存储空间中占有地址),由特定的指令将其内容放到16位数据存储器中,并从数据存储器中读出或写入32位累加器值。,三、移位寄存器(桶形移位器
9、),功能:把输入的数据进行031位的左移和015位的右移。 输入数据来自数据总线DB的16位输入数据、CB的16位输入数据及任意一个40位累加器,并输出到ALU,经过MSW/LSW(最高有效字/最低有效字)写选择单元至EB总线。 所移的位数就是指令中的移位数。 移位数都是用二进制补码表示,正值表示左移,负值表示右移。 移位数可由立即数、状态寄存器ST1中的累加器移位方式(ASM)字段和被指定为移位数值寄存器的暂存器T来决定。,图3.5 桶形移位寄存器,四、乘累加单元,TMS320C54x CPU乘累加单元由1717 bit的硬件乘法器、40位专用加法器、符号位控制逻辑、小数控制逻辑、0检测器、
10、溢出/饱和逻辑和16位的暂存器(T)等部分组成,能够在一个周期内完成一次17*17 bit的乘法和一次40位的加法。 乘累加单元的一个输入操作数来自T寄存器、数据存储器或累加器A(3116位);另一个则来自于程序存储器、数据存储器、累加器A(3116位)或立即数。 乘法器的输出加到加法器的输入端,累加器A或B则是加法器的另一个输入端,最后结果送往目的累加器A或B。,图3.6 乘累加单元结构图,五、比较选择存储单元(CSSU),CSSU单元(其结构如图3.7所示)支持各种Viterbi算法并利用优化的片内硬件加速Viterbi的蝶形运算。 加法由ALU单元完成,只要将ST1中的C16置1,所有的
11、双字指令都会变成双16位算术运算指令,这样ALU就可以在一个机器周期内完成两个16位数的加/减法运算,其结果分别存放在累加器的高16位和低16位中。 CSSU通过CMPS指令、一个比较器和16位的转移寄存器完成比较和选择操作。 在比较选择中,比较指定累加器的两个16位部分并把比较结果移入TRN寄存器的第0位,比较结果也存入ST0寄存器的T0位。根据比较结果,选择累加器中较大的字(AH或AL)存入数据存储器。,图3.7 比较选择存储单元结构图,六、指数编码器,指数编码器是一个专用硬件,如下图所示,它专门用于单周期指令EXP。它可以求出累加器中的指数值,并以二进制补码形式存放于T中。,指数编码器结
12、构图,2020年10月15日,25,七、CPU状态控制寄存器,C54X包括3个状态控制寄存器,分别是: 状态寄存器ST0 状态寄存器ST1 处理器工作方式状态寄存器PMST。,2020年10月15日,26,1状态寄存器0(ST0),主要反映处理器的寻址要求和计算机的运行状态。,ST0的结构:,ARP,ARP:辅助寄存器指针。 用来选择使用单操作数间接寻址时的 辅助寄存器AR0AR7。,TC,TC:测试/控制标志。 用来保存ALU测试操作的结果。,C,C:进位标志位。 用来保存ALU加减运算时所产生的进/借位。,OVA/B:累加器A/B的溢出标志。 用来反映A/B是否产生溢出。,DP,DP:数据
13、存储器页指针。 用来与指令中提供的7位地址结合形成1个 16位数据存储器的地址。,2020年10月15日,27,2状态寄存器1 (ST1),BRAF:块重复操作标志位。 用来指示当前是否在执行块重复操作。 BRAF=0 表示当前不进行重复块操作; BRAF=1 表示当前正在进行块重复操作。,CPL:直接寻址编辑方式标志位; 用来指示直接寻址选用何种指针。 CPL=0 选用数据页指针DP的直接寻址; CPL=1 选用堆栈指针SP的直接寻址。,XF:外部XF引脚状态控制位。 用来控制XF通用外部输出引脚的状态。 执行SSBX XF=1 XF通用输出引脚为1; 执行RSBX XF=0 XF通用输出引
14、脚为0。,HM:保持方式位;响应HOLD信号时,指示 CPU是否继续执行内部操作。 HM=0 CPU从内部程序存储器取指, 继续执行内部操作。 HM=1 CPU停止内部操作。,INTM:中断方式控制位; 用于屏蔽或开放所有可屏蔽中断。 INTN=0 开放全部可屏蔽中断; INTN=1 禁止所有可屏蔽中断。,0:保留位,未被使用,总是读为0。,OVM:溢出方式控制位; 用来确定累加器溢出时,对累加器的加载方式。 OVM=0 将运算的溢出结果直接加载到累加器中; OVM=1 当正溢出时,将007FFFFFFFH加载累加器; 当负溢出时,将FF80000000H加载累加器。,SXM:符号位扩展方式控
15、制位;用来确定数据 在运算之前是否需要符号位扩展。 SXM=0 数据进入ALU之前禁止符号位扩展; SXM=1 数据进入ALU之前进行符号位扩展。,C16:双16位/双精度算术运算方式控制位; 用来决定ALU的算术运算方式。 C16=0 ALU工作在双精度算术运算方式; C16=1 ALU工作在双16位算术运算方式。,FRCT:小数方式控制位; 用来确定乘法器的运算方式。 FRCT=1 乘法器的输出左移一位, 消除多余的符号位。,CMPT:间接寻址辅助寄存器修正方式控制位; 用来决定ARP是否进行修正。 CMPT=0 在进行间接寻址单操作数时,不修正ARP; CMPT=1 在进行间接寻址单操作
16、数时,修正ARP。,ASM:累加器移位方式控制位。 为某些具有移位操作的指令设定一个从-1615范围内的移位值。,主要反映处理器的寻址要求、计算初始状态的设置、I/O及中断的控制等。,2020年10月15日,28,在操作中,可以使用置位指令SSBX和复位指令RSBX对ST0和ST1的各个位进行单独置位(置1)或清零(置0)。例如: SSBX SXM ; SXM=1,允许符号扩展 RSBX SXM ; SXM=0,禁止符号扩展 APR、DP和ASM字段可以通过LD指令装载一个短立即数,ASM和DP也可以通过使用LD指令用数据存储器的值来装载。,2020年10月15日,29,3处理器工作方式状态寄
17、存器PMST,主要设定和控制处理器的工作方式和存储器的配置,反映处理器的工作状态。PMST寄存器内容可由存储器映射寄存器指令装载,如STM指令。,中 断 向 量 指 针,CPU 工 作 方 式 选 择 位,RAM 重 复 占 位 标 志,地 址 可 见 控 制 位,数 据 ROM 映 射 选 择 位,时 钟 输 出 选 择 位,乘 法 饱 和 方 式 位,存 储 饱 和 位,八、寻址单元,TMS320C54x DSP有两个地址发生器:程序地址生成单元PAGEN(Program Address Generation Logic)和数据地址生成单元DAGEN(Data Address Genera
18、tion Logic)。 1程序地址生成单元(PAGEN ) PAGEN包括5个寄存器:程序计数器PC、重复计数器RC、块重复计数器BRC、块重复起始地址RSA和结束地址REA(后四个寄存器合起来也叫重复寄存器),这些寄存器可支持程序存储器寻址。,2020年10月15日,31,PAGEN、逻辑寄存器和流水线硬件进行地址生成和程序排队操作,形成了指令的流水线。流水线共有6级: (1)程序预取:将一条指令的地址(PC的内容)加载到程序地址总线(PAB)上。 (2)程序取指:用取指得到的指令字加载PB。 (3)解码:用PB的内容加载IR,解码IR的内容。 (4)访问:将指令的读操作数地址送到数据地址
19、总线(DAB/CAB)上。 (5)读操作数:从数据总线(DB和CB)读数据操作数。 (6)执行:执行指令,用写数据加载EB。,2数据地址生成单元(DAGEN) 包括辅助寄存器指针ARP、循环缓冲区大小寄存器BK、DP、堆栈指针寄存器SP、8个辅助寄存器(AR0AR7)和2个辅助寄存器算术单元(ARAU0和ARAU1)。 8个辅助寄存器和2个辅助寄存器算术单元一起可进行16位无符号数算术运算,支持间接寻址,AR0AR7由ST0中的ARP来指定。,2020年10月15日,33,3.4 TMS320C54x DSP的存储器结构 TMS320C54x的存储空间为192K字,分成3个可选择的存储空间:6
20、4K的程序存储空间、64K的数据存储空间和64K的I/O空间。这个系列的芯片都有随机存储器(RAM)和只读存储器(ROM)。其中RAM有两种:单寻址RAM(SARAM)和双寻址RAM(DARAM)。 DARAM:能够在一个机器周期内执行4次存储器操作:1次取址、读2个操作数和写1个操作数。 使用片内存储器优点:因为无须等待周期故性能更高;比外部存储器成本低、功耗小。 当片内存储器不能满足系统设计的存储要求时,就需要扩展片外存储器。,2020年10月15日,34,表3.3 常用的TMS320C54x DSP器件的片内存储器配置,2020年10月15日,35,TMS320C54x通过3个状态位控制
21、(PMST中)程序存储器和数据存储区的“使能”和“禁止”: MP/MC位:若MP/MC=0,则片内ROM安排到程序空间;若MP/MC=1,则片内ROM不安排到程序空间。 OVLY位:若OVLY=1,则片内RAM安排到程序和数据空间;若OVLY=0,则片内RAM只安排在数据存储空间。 DROM位:若DROM=1,则部分片内ROM安排到数据空间;若DROM=0,则片内ROM不安排到数据空间。DROM的用法与MP/MC的用法无关。,2020年10月15日,36,C5402数据存储空间结构,0000H0050H 存储器映像寄存器,0060H007FH 暂存器SPRAM,0080H3FFFH 内部DAR
22、AM,4000HEFFFH 外部存储器,DROM=1 使用内部ROM,F000HFEFFH 内部ROM,FF00HFFFFH 保留,DROM=0 不使用内部ROM,F000HFEFFH 外部存储器,2020年10月15日,37,内部RAM前1K的配置:,存储器映像的CPU寄存器,特殊功能寄存器,0000001FH:,特殊功能寄存器,存储器映像的外设寄存器,0020005FH:,外设寄存器,暂存寄存器SPRAM,0060007FH:,暂存寄存器,008003FFH:,7个DARAM数据块。,2020年10月15日,38,为了便于CPU的并行操作,提高芯片的高速处理能力,从0080H开始,按每80
23、H(128)个存储单元为一个块,将DARAM分成若干个数据块。 分块以后,用户可以在同一个周期内从同一块DARAM中取出两个操作数,并将数据写入到另一块DARAM中。,2020年10月15日,39,存储器映像寄存器,在C54x的数据存储空间中,前80H个单元(数据页0)包含有CPU寄存器、片内外设寄存器和暂存器。这些寄存器全部映射到数据存储空间,称作存储器映像寄存器MMR。,存储器映像寄存器MMR: CPU寄存器特殊功能寄存器; 片内外设寄存器; 暂存器SPRAM。,2020年10月15日,40,特殊功能寄存器 功能:主要用于程序的运算处理和寻址方式的选 择和设定。地址范围:0000H001F
24、H。,C5402的CPU寄存器共有27个,CPU访问这些寄存器时,不需要插入等待时间。,外设寄存器 功能:用来控制片内外设电路的状态和存放数据。 地址范围:0020H005FH。,包括串行口通信控制寄存器组、定时器定时控制寄存器组、时钟周期设定寄存器组等。,暂存器SPRAM 功能:用来暂存变量。地址范围:0060H007FH。,2020年10月15日,DSP原理及应用,41,第2章 TMS320C54x的硬件结构,TMS320C54x存储器映像CPU寄存器(特殊功能寄存器),2020年10月15日,DSP原理及应用,42,2存储器映像寄存器,片内外设寄存器存在于一个专用的外设总线结构中,它可以
25、发送数据至外设总线或者从外设中接收数据。设置或清除寄存器的控制位可以激活、屏蔽或者重新配置外设状态。 不同型号的芯片具有不同的片内外设寄存器。,C5402 DSP外设的存储器及相应的地址,2020年10月15日,43,I/O存储器,C54x除了程序和数据存储空间外,还提供了一个具有64K字的I/O空间。 主要用于对片外设备的访问。可以使用输入指令PORTR和输出指令PORTW对I/O空间寻址。,在对I/O空间访问时,除了使用数据总线和地址总线外,还要用到IOTRB、IS和I/W控制线。,IOTRB和IS :用于选通I/O空间;,I/W:用于控制访问方向。,2020年10月15日,44,3.5
26、TMS320C54x DSP的片内外设,C54x器件除了提供哈佛结构的总线、功能强大的CPU以及大容量的存储空间外,还提供了必要的片内外部设备。 不同型号的C54x芯片,所配置的片内外设有所不同,这些片内外设主要包括:,通用I/O 中断系统 定时器 时钟发生器 软件可编程等待状态发生器(SWWSR),可编程的组合切换逻辑 串行口 直接存储器访问(DMA)控制器 主机接口HPI 外部总线接口,2020年10月15日,45,1通用I/O引脚,C54x芯片为用户提供了两个软件控制的通用I/O引脚。,XF:外部标志输出引脚 用于程序向外设传输标志信息。 通过此引脚的置位或复位,可以控制外设 的工作。
27、是状态寄存器ST1中的位。,2. 中断系统 中断是指DSP暂时停止原程序执行转而为外部设备服务(执行中断服务程序),并在服务完成后自动返回原程序执行的过程。CPU在和外设交换信息时通过中断就可以避免不必要的等待和查询,从而提高CPU的工作效率,所以中断系统是衡量CPU性能好坏的一项重要指标。,(1)中断类型,可屏蔽中断 指可用软件来屏蔽或开放的中断,即通过对中断屏蔽寄存器(IMR)中的相应位和状态寄存器(ST1)中的中断允许控制位INTM编程来屏蔽或开放中断。 MS320C54x DSP最多可支持16个用户可屏蔽中断。 非屏蔽中断 指通过软件改变IMR和ST1中的位已不能影响中断是否被屏蔽,T
28、MS320C54x对这类中断总是立即响应的。TMS320C54x的非屏蔽中断包括:所有的软件中断、由芯片的复位引脚引起的中断和由芯片的外中断引脚引起的中断。,(2)中断向量,TMS320C54x DSP给每个中断源都分配一个确定的偏移地址,叫中断向量,中断向量中存放中断子程序的入口地址,所有的中断向量放在一起就是中断向量表。 在TMS320C54x 中,中断向量地址的产生是由PMST寄存器中9位的中断向量指针(IPTR)形成中断向量地址的高9位,中断向量序号乘以4(左移2位),形成中断向量地址的低7位,二者连接并组成16位的中断向量地址。 TMS320C54x DSP内部有两个中断管理寄存器:
29、中断标志寄存器和中断屏蔽寄存器。,表3.4 TMS320C54x DSP中断向量表,(3)中断处理流程,TMS320C54x中断处理分为三个阶段:接受中断请求、响应中断和执行中断服务程序。 中断处理流程如下,2020年10月15日,52,2 定时器,用于事件计数和产生相应中断。 在工业应用中,计数器和定时器常用于检测和控制中的时序协调及控制。 C54x的片内定时器是一个可编程的定时器,可用于周期地产生中断。定时器的最高分辨率为处理器的CPU时钟速度。通过带4位预定标器的16位计数器,可以获得较大范围的定时频率。,2020年10月15日,53,定时器主要由定时寄存器TIM、定时周期寄存器PRD、
30、定时控制寄存器TCR及相应的逻辑控制电路组成。 寄存器TIM、PRD和TCR是存储器映像寄存器,地址分别为0024H、0025H和0026H。,(1).定时器的组成,图3.21 TMS320C54x DSP片内定时器结构,2020年10月15日,55,定时寄存器TIM,逻辑控制电路,定时周期寄存器PRD,定时控制寄存器TCR,16位减1计数器。地址:0024H,用来存放定时时间。地址:0025H,存放定时器的控制位和状态位。地址:0026H。 TCR能决定定时器的工作模式,即是连续工作,仅计数一次,还是停止计数。,用来控制定时器协调工作。,2020年10月15日,56,16位存储器映像寄存器,
31、包含定时器的控制位和状态位。,定时控制寄存器TCR,软件调试控制位,预定标计数器,重新 加载位,停止 状态位,分 频 系 数,2020年10月15日,57,TDDR:定时器分频系数,用来对CLKOUT进行分频,以改变定时周期。 当PSC减到0后,以TDDR中的数加载PSC。,TSS:定时器停止状态位,用于停止或启动定时器 复位时,TSS位清0,定时器立即定时。 TSS=0,定时器启动工作; TSS=1,定时器停止工作。,2020年10月15日,58,TRB:定时器重新加载位,用来复位片内定时器。 当TRB置1时,以PRD中的数加载TIM,以及以TDDR中的值加载PSC。,PSC:定时器预定标计
32、数器,其标定范围为116。当PSC减到0后,TDDR位域中的数加载到PSC, TIM减1。,2020年10月15日,59,Free、Soft:软件调试控制位。Free和Soft位结合使用,用来控制调试程序断点操作情况下的定时器工作状态。,保留:读成0。,2020年10月15日,60,注: 用定时器可以产生系统所需要的定时时钟信号。 有两种方法产生定时时钟信号:其一,直接利用TOUT信号作为外围电路的时钟源;其二,利用定时器中断产生系统定时。 在C5402内部有两个完全相同的定时器:定时器0和定时器1。定时器1的输出信号TOUT1只有在禁止HPI-8片上外设时才能使用。,2020年10月15日,
33、61,(2).定时器的定时时间公式为: Tt = CLKOUT(TDDR+1)(PRD+1) 其中:Tt为定时周期,单位是s(秒); CLKOUT为时钟周期,即主频的倒数。 定时器的最大定时周期为: Tt= CLKOUT(65535+1)(15+1) =220CLKOUT=1048576CLKOUT 当主频为100MHz时,则 CLKOUT=1/100MHz=10-8 s=10-5 ms时, 因此 Tt=10.48576ms。,2020年10月15日,62,(3).举例:用定时器中断在主频为4MHz的应用系统中,产生脉冲周期为8ms的输出信号。 解:因为输出的周期为8ms,所以定时中断周期为4
34、ms,每中断一次,输出端电平取反一次。 先计算CLKOUT: CLKOUT=1/(4MHz)=0.2510-6s 再计算TDDR和PRD: Tt=CLKOUT(TDDR+1)(PRD+1) 即: (TDDR+1)(PRD+1) =TtCLKOUT =410-30.2510- 6=16000=160010 TDDR=9,PRD=1599,2020年10月15日,63,(4).定时器初始化步骤如下: TCR的TSS位置1,关闭定时器,停止定时; 装载PRD值; 装入TCR中的TDDR值。 设置TSS=0(启动定时器)和TRB=1(装载PRD到TIM,装载TDDR到PSC)。,2020年10月15日
35、,64,void set_t0() *(unsigned int*)TCR=?; /停止T0定时器记数 *(unsigned int*)PRD=?; /设置T0的周期寄存器 *(unsigned int*)TCR=?; /允许T0定时器计数 ,2020年10月15日,65,例题:定时器,C5402内部有两个完全相同的定时器:定时器0(Timer0)和定时器1(Timer1),现在需要用定时器1产生5ms定时,计算TDDR1和PRD1。并用C语言语句写出初始化步骤。(设系统时钟频率为100MHZ),2020年10月15日,66,Tt=CLKOUT(TDDR1+1)(PRD1+1) (TDDR1+
36、1)(PRD1+1)=Tt/CLKOUT =510(-3)10010(6)=500000 =(49999+1)(9+1) 所以 PRD1=49999,TDDR1=9,2020年10月15日,67,初始化步骤: (1)TSS1=1或TCR1|=0X0010; (2)PRD1=49999; (3)TDDR1=9或TCR1|=9; (4)TRB1=1或TCR1|=0X0020; (5)TSS1=0或TCR1,2020年10月15日,68,3时钟发生器,主要用来为CPU提供时钟信号,由内部振荡器和锁相环(PLL)电路两部分组成。可通过内部的晶振或外部的时钟源驱动。 锁相环电路具有频率放大和信号提纯的功
37、能,利用PLL的特性,可以锁定时钟发生器的振荡频率,为系统提供高稳定的时钟频率。 锁相环能使时钟源乘上一个特定的系数,得到一个比内部CPU时钟频率低的时钟源。,2020年10月15日,69,4软件可编程等待状态发生器(SWWSR),功能:通过软件设置,完成外部总线周期的扩展,从而方便地实现C54x芯片与慢速的外部存储器和I/O设备的接口。 在访问外部存储器时,软件等待状态寄存器(SWWSR)可为每32K字的程序、数据存储单元块和64K字的I/O空间确定014个等待状态。,2020年10月15日,70,5可编程的组合切换逻辑,也称为可编程分区转换逻辑,或可编程存储器转换逻辑。 当访问过程跨越程序
38、或数据存储器边界时,可编程分区转换逻辑会自动插入一个周期。 当存储过程由程序存储器转向数据存储器时,也会插入一个周期。 附加周期可以使存储器在其他器件驱动总线之前允许存储器释放总线,以避免总线竞争。 转换的存储块的大小由存储器转换寄存器(BSCR)确定。,2020年10月15日,71,6串行通信接口,C54x内部具有功能很强的高速、全双工串行通信接口,可以和其他串行器件直接接口。 四种串行口: 标准同步串行口SP 缓冲同步串行口BSP 时分多路串行口TDM 多路缓冲串行口 McBSP,2020年10月15日,72,C54x串行口的配置,2020年10月15日,73,7直接存储器访问(DMA)控
39、制器,DMA控制器可以在存储器不同区域之间传输数据,而不需要CPU的干预。,2020年10月15日,74,8主机接口HPI,主机接口HPI是C54x芯片具有的一种8位或16位的并行接口部件,主要用于DSP与其他总线或主处理机进行通信。 HPI接口通过HPI控制寄存器(HPIC)、地址寄存器(HPIA)、数据锁存器(HPID)和HPI内存块实现与主机通信。,2020年10月15日,75, 接口所需要的外部硬件少; HPI单元允许芯片直接利用一个或两个数据选通信号; 有一个独立或复用的地址总线; 一个独立或复用的数据总线与微控制单元MCU连接; 主机和DSP可独立地对HPI接口操作; 主机和DSP握手可通过中断方式来完成; 主机可以通过HPI直接访问CPU的存储空间,包括存 储器映像寄存器。 主机还可以通过HPI接口装载DSP的应用程序、接收 DSP运行结果或诊断DSP运行状态。,主要特点:,2020年10月15日,76,9 外部总线接口,C54x通过外部总线与外部存储器及I/O器件相连。外部总线接口包括:数据总线、地址总线和控制信号。,2020年10月15日,77,1、参考图3.1来对比DSP和单片机结构上有哪些区别(要详细详述)? 2、DSP有哪些种类的存储器?各有什么特点? 3、上网查找一个使用DSP 5000系列的电子产品的成功案例,并且简要描述其硬件配置。,作业题,
限制150内