收藏 分享(赏)

CPU功能模块和时钟模块.ppt

上传人:精品资料 文档编号:11221566 上传时间:2020-02-20 格式:PPT 页数:21 大小:511.78KB
下载 相关 举报
CPU功能模块和时钟模块.ppt_第1页
第1页 / 共21页
CPU功能模块和时钟模块.ppt_第2页
第2页 / 共21页
CPU功能模块和时钟模块.ppt_第3页
第3页 / 共21页
CPU功能模块和时钟模块.ppt_第4页
第4页 / 共21页
CPU功能模块和时钟模块.ppt_第5页
第5页 / 共21页
点击查看更多>>
资源描述

1、第 3章 TMS320LF240x的 CPU功能模块和时钟模块 3.1 CPU功能模块CPU模块包括 : 输入定标移位器 、 中央算术逻辑部分和 乘法单元 等。图 3.1 CPU模块的功能结构3.1.1 输入定标移位器该单元 将来自程序 /数据存储器的 16位数据 调整为 32位数据送到中央算术逻辑单元(CALU)。因此,输入定标移位器的 16位输入与数据总线相连, 32位输出 与 CALU单元相连。输入定标移位器 在 算术定标 及 逻辑操作设置 时非常有用。输入定标移位器对输入数据进行 0 15位左移 。左移时,输出的最低有效位( LSB)为 0,最高有效位( MSB)根据 状态寄存器 ST

2、1寄存器的 SXM位 (符号扩展方式)的值 来决定是否进行 符号扩展 。当 SXM 1时,则高位进行符号扩展;当 SXM 0时,则高位填 0。移位的次数 由包含在指令中的 常量 或 临时寄存器 ( TREG)中的值来指定。3.1.2 乘法单元乘法单元主要由 乘法器 、 乘积寄存器 以及 乘积移位寄存器 组成。16 16位的硬件乘法器 ,单个机器周期内产生一个 32位的 有符号 或 无符号 乘积。除了执行 无符号乘法 指令( MPYU)外,所有的乘法指令均执行有符号的乘法操作, 即相乘的两个数都作为二进制的补码数,而运算结果为一个 32位的二进制的补码数 。乘法器 接收的 两个乘数 ,一个来自

3、16位的临时寄存器( TREG),另一个通过数据读总线( DRDB)取自数据存储器,或通过程序读总线( PRDB)取自程序存储器。相乘 后, 32位的乘积结果保存在 乘积寄存器( PREG) 中。 乘积移位寄存器 对乘积结果采用 4种 移位方式进行处理,并将结果送到 CALU。TREG3.1.3 中央算术逻辑部分该部分主要由 中央算术逻辑单元 CALU、 累加器和 输出定标移位器 组成。1、中央算术逻辑单元 CALUCALU实现 大部分 算术和逻辑运算功能 ,大多数功能只需 一个时钟周期 ,这些 运算功能包括 :加 /减、布尔运算、位移位和位循环等。由于 CALU可以 执行布尔运算 ,因此使得

4、控制器具有 位操作 功能。 CALU的 位移位 和 位循环 在累加器中完成。一旦操作在 CALU中执行完毕,运算结果会被传送到累加器中,在累加器中再实现如移位等附加操作。CALU有两个输入, 一个由 累加器 提供,另一个由 乘积移位寄存器 或 输入数据定标移位器 提供。2 累加器( ACC)当 CALU中的运算完成后,其结果就被送至累加器, 并在累加器中执行单一的移位或循环操作。累加器的 高位字 和 低位字 中的 任意一个 可以被送至 输出数据定标移位器 ,在此定标移位后,再保存于数据存储器。与累加器有关的 状态位和转移指令, 位于 状态寄存器 ST0和 ST1中。 进位标志位 C 溢出方式标

5、志位 OVM 溢出标志位 OV 测试 /控制标志位 TC3 输出数据定标移位器输出数据定标移位器 的输入是 累加器输出的 32位数据 ,将累加器输出的内容左移 0 7位,然后将移位器的高位字或低位字存到数据存储器中(用SACH或 SACL指令)。 在此过程中,累加器的内容保持不变。3.1.4 辅助寄存器算术单元( ARAU)ARAU完全独立于中央算术逻辑单元 ,图 3.2所示为 ARAU和相关的逻辑。ARAU的 主要功能 是在 CALU操作的同时 执行 8个辅助寄存器AR7-AR0中的算术运算 , 8个辅助寄存器 提供了 强大而灵活的间接寻址能力 。利用 ARAU中的 16位地址 可访问数据存

6、储器 64K字空间 的任一单元。图 3.2 辅助寄存器算术单元 ARAUARAU的 8个辅助寄存器 提供了 强大而灵活的间接寻址能力 。利用辅助寄存器中的 16位地址可访问数据存储器 64K字空间的任一单元。ARAU除可数据存储器的寻址外,还可用作它用:( 1)通过 CMPR指令,利用辅助寄存器 支持条件转移、调用和返回 ;( 2)利用辅助寄存器作为 暂存单元 ;( 3)利用辅助寄存器进行 软件计数 。根据需要将其加 1或减 1。3.1.5 状态寄存器 ST0和 ST1 两个状态寄存器 ST0和 ST1包含了 DSP运行时的 各种状态和控制位 。 ST0和 ST1对控制和编程很重要!ST0ST

7、1两个寄存器的内容可 被读出并保存到数据存储器 ( SST指令 ),或 从数据存储器读出加载到 ST0和 ST1( LST指令 ),从而在子程序调用或进入中断时实现 CPU各种状态的保存。 当采用 SETC指令 和 CLRC指令时,可对 ST0和 ST1中的各个位单独置1或清 0。ARP(位 15-13) : 辅助寄存器( AR)间接寻址的指针 , 选择当前的 8个辅助寄存器 AR中的一个 。ST0OV(位 12) : 溢出标志位 。用以 指示 CALU中是否发生溢出 ,如溢出则该位保持为 1。 OVM(位 11) : 溢出方式标志位 0,累加器中结果正常溢出。 1,根据溢出的情况,累加器被设

8、定为它的最大正值或负值。INTM(位 9) : 中断总开关位 1,所有可屏蔽中断被禁止 0,所有可屏蔽中断有效。DP(位 8-0) : 数据存储器页面指针 ,9位 的 DP与指令中的 7位 形成 16位 的数据存储器的直接地址。ARB(位 15-13) : 辅助寄存器指针缓冲器 ,当 ARP被加载到 ST0时,原来的ARP被复制到 ARB中,也可将 ARB复制到 ARP中。ST1CNF(位 12) : 片内 DARAM配置位 0, 片内 DARAM映射到 数据存储器 区; 1, 片内 DARAM映射到 程序存储器 区。TC(位 11) :测试 /控制标志位 。根据被测试位的值,该位被置 1或清

9、 0。SXM(位 10) :符号扩展方式位 ,决定在计算时是否使用符号扩展: 1,数据通过定标移位器传送到累加器时将产生符号扩展; 0, 不产生符号扩展。C(位 9) :进位标志位, 在加法结果产生进位时被置 1,或在减法结果产生借位是被清 0。ST1XF(位 4) :XF引脚状态位, XF是 DSP的一个通用引脚。该位反映 XF引脚的状态,该位的 1、 0与 XF引脚的逻辑高、低电平一致。可用指令 SETC置 1,用指令 CLRC清 0。PM(位 1-0 ) :乘积移位方式00乘法器的 32位乘积不移位,直接入 CALU。01 PREG左移 1位后装入 CALU,最低位填 0;10 PREG

10、左移 4位后装入 CALU,低 4位填 0;11 PREG输出进行符号位扩展,右移 6位。3.2 锁相环( PLL)时钟模块和低功耗模式LF240xDSP片内集成有 锁相环 (PLL)电路。可从一个较低频率的外部时钟 合成片内较高工作频率的时钟 。 这样,可以相对减少印制板级的电磁干扰,使硬件系统更容易实现,系统性能更好。PLL可以看作为一个片内外设,接在片内外设总线上, 为 DSP提供所需要的各种时钟信号 ,还可以 控制低功耗操作。LF240xDSP有 三个引脚 与时钟模块有关:( 1) XTAL1/CLKIN: 外接的基准晶体到片内振荡器输入引脚;如使用外部振荡器,外部振荡器的输出必须接到

11、该引脚。( 2) XTAL2:片内 PLL振荡器驱动外部晶振的时钟输出引脚; ( 3) CLKOUT/IOPE0: 时钟输出或通用 I/O脚。 CLKOUT可用来 输出 CPU时钟 或看门狗定时器时钟 ,这由 系统控制状态寄存器 SCSR1中的 位 14( CLKSRC)决定。当该脚不用于时钟输出时,就可作通用 I/O。图 3.3 锁相环的时钟模块电路两种 时钟工作方式 :( 1)内部时钟 :外接基准晶体 +片内 PLL(锁相环 )电路共同组成系统时钟电路。( 2)外部时钟 :一个独立的外部时钟接至XTAL1/CLKIN引脚,此时内部时钟振荡器被旁路。XTAL2XTAL1XTALOSCPLLF

12、1PLLF2PLLPLL倍率选择CLKOUTfinCb1Cb2SCSR1,11:9NC外部时钟0-3.3V3.2.1 锁相环( PLL)1.锁相环的时钟模块电路时钟模块电路如图 3.3所示。PLL支持从 0.54倍输入时钟频率 的 倍率 ,由 系统控制状态寄存器( SCSR1)的 位 119来决定。如 表 3.1所示。 CLKPS2 CLKPS1 CLKPS0 倍频系数0 0 0 40 0 1 20 1 0 1.330 1 1 11 0 0 0.81 0 1 0.661 1 0 0.571 1 1 0.5表 3.1 PLL的倍率选择2. 外部滤波器电路回路外部滤波器电路 用来 抑制信号抖动和电

13、磁干扰,使其影响最小。滤波器回路接到 PLLF和 PLLF2引脚,由 R1、 C1和 C2组成。 C1和 C2必须是无极性的,参数根据 振荡器频率 确定,参考教材表 3.3。由于 电路中存在大量噪声 , 如何使得滤波效果最好 ,在设计时,需通过实验来确定滤波器回路元件。fc 10MHzVDDVSSPLLVCCA时钟模块PLLF1PLLF2R1C2 C1可选的低通滤波回路滤波器回路图 3.4 外部滤波电路另外注意事项:1)所有连接 PLL的 PCB导线尽可能短;2)旁路电容 (0.01-0.1uF的陶瓷电容 ),紧连电源。3)可选的低通滤波器,可提高抖动性能,减少电磁干扰;4)导线和器件所围环路

14、面积要小,减少干扰;3. PLL旁路方式可设置为 对片内 PLL旁路的工作方式 ,通过复位时拉低 TRST、 TMS和 TMS2引脚来实现。在这种方式下, 不但可以实现 PLL旁路 , 而且可以实现 PLL时钟预定标 。在这种工作方式下,改变寄存器 SCSR1的位 11-9无效。此时 改变系统时钟的唯一方法是 改变输入时钟频率 , 系统的时钟与外输入时钟相同 。 例如, 要获得一个 30MHzCPU时钟速度,那么一个 30MHz时钟 CLKIN必须提供。在这种方式下, 外部的滤波器元件是不需要的 。 PLL旁路方式下的时钟规范如下 :( 1)使用 内部时钟 方式,那么最小和最大的 CLKIN频

15、率分别为 4MHz和 20MHz。( 2)使用 外部时钟 方式,那么最小和最大的 CLKIN频率分别为 4MHz和 30MHz(对 2407A为 40MHz)。3.2.2 看门狗定时器时钟WDCLK被用来给看门狗提供时钟源。WDCLK来自于 CPU的 CLKOUT,这可以保证即使当 CPU处于 IDLE1或IDLE2模式(低功耗模式,见 3.2.3)看门狗定时器也能持续计数。WDCLK是由看门狗定时器的外围器件生成的,其计算公式为:WDCLK CLKOUT/512当 CPU的挂起信号有效时, WDCLK将被停止 。这可以 通过 停止时钟输入到时钟分频 (由 CLKIN获取 WDCLK)来实现。

16、 3.2.3 低功耗模式LF240x的 IDLE(睡眠)指令, 可关闭 CPU时钟,进入睡眠状态,节约能耗 。 CPU退出睡眠状态 :收到一个中断请求或复位 。1.时钟域LF240x有 两个 时钟域 :( 1) CPU时钟域 :包含大部分 CPU逻辑的时钟;( 2)系统时钟域 :包含外设时钟(来自 CLKOUT分频)和用于 CPU中断逻辑的时钟。IDLE1模式: CPU时钟域 停止, 系统时钟域 继续运行。IDLE2模式: CPU时钟域和系统时钟域均停止 ,进一步降低功耗。HALT模式 : 振荡器(即输入到 PLL的时钟)和 WDCLK被关闭。当执行 IDLE指令时, SCSR1的 13、 1

17、2位 指明进入哪种低功耗模式:0 0 CPU进入 IDLE1模式0 1 CPU进入 IDLE2模式1 x CPU进入 HALT模式 2. 唤醒低功耗模式( 1)复位复位信号可使器件退出 IDLE模式。( 2)外部中断外部中断 XINTx可使器件退出低功耗模式,但不能退出 HALT模式。( 3)唤醒中断有些外设具有启动器件时钟的能力,然后产生一个中断去响应一定的外部事件。如通信线路上的动作。例如,即使没有时钟运行, CAN唤醒中断也可以声明一个 CAN错误中断请求。 3. 退出低功耗模式外设中断 可以用来唤醒处于低功耗模式工作的器件。 根据以下几种情况执行唤醒动作 (和随后的器件动作):n 请求

18、的外设中断是否使能于外设级。n 与请求的外设中断相关的 IMR.n位是否已经被使能。n ST0寄存器 INTM位的状态。3.2.4 片内 Flash的断电与上电进入 HALT模式之前,片内 Flash模块可以被断电,会使电流消耗降到最低。下面为 Flash模块断电 的程序。; Flash模块断电的程序LDP #0h ;设置 DP=0SPLK #0008h, 60h ;设置 0008h,即可将 Flash置于断电模式OUT 60h, #0FF0Fh ;将 Flash置于控制寄存器访问模式LACL #0h ; 0000h为管道控制寄存器的地址TBLW 60h ;写操作可以将 Flash断电 使用 PDPINTx*和 RS*信号 可以退出 LPM2( HALT)模式。 如果PDPINTx*被用于给 Flash模块上电(退出 LPM2状态),当 RS*自动给 Flash上电,需要执行下面程序:; Flash模块上电程序LDP #0h ;设置 DP=0SPLK #0000h, 60h ;设置 0000h,即可退出断电模式OUT 60h, #0FF0Fh ;将 Flash置于控制寄存器访问模式LACL #0h ; 0000h 为管道控制寄存器的地址TBLW 60h ;写操作可以将 Flash上电IN 60h, #0FF0Fh ;将 Flash置于阵列访问模式 结束

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报