课件5 -- 时钟模块

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
■ PLLCR寄存器中的DIV字段用来控制PLL是否 旁路,并设置PLL时钟比例(非旁路时)。 ■ 复位之后PLL旁路是默认模式。如果 PLLSTS[DIVSEL]字段为10或者01时,切勿更改DIV 字段。如果PLL处于limp模式时,意味着 PLLSTS[MCLKSTS]为1. ■ 更改PLLCR,要遵循“图5. 19 改变PLLCR 的流程图”所示的更改流程。
PLLSTS[MCLK STS]是否等于1 否
LOGO
是 器件处于limp模式。 不要写入PLLCR
PLLSTS[DIVSEL]是 否为2或者3
是 设置 PLLSTS[DIVSEL]为0

设置PLLSTS[MCLKOFF]为一。 用来屏蔽时钟失效检测逻辑
设置新的PLLCR值
继续等待PLL锁定 PLLSTS[PLLOCKS]是 否为1 否
开始
LOGO
是否处于 limp模式? 是 执行ESTOP0 否
DIVSEL是否为0
否 设置DIVSEL为0

新的DIV值是否 和现值一样? 否 设置MCLKOFF为1
设置DIV为新值
屏蔽看门狗

等待PLL锁定
设置MCLKOFF为0
设置DIVSEL
Page 17
返回
习题和实验
小组内合作完成
LOGO
LOGO
■ 如果输入时钟OSCCLK失效或者丢失,则PLL会进入“limpmode”的模式。 ■ 振荡器失效检测模块的原理是:用两个计数器去检测OSCCLK 信号是否存在。 ■ 使用PLL时,我们要特别注意一些事项: ◆ 改变PLL控制寄存器时,要使用恰当的流程 ◆ 当器件处于limp模式时,切勿写入PLLCR寄存器
Page 15
5.6 实例讲解 – 硬件设计
■ ■ ■ 采用两个起振电容来连接无源晶体。 可以增加一个非门设计。 特别要注意布局和布线
LOGO
Page 16
5.6 实例讲解 – 软件设计
■ 设置PLL模块时,要注意一些流程上的先后循序以及判 断。 ■初始化时钟函数InitPll ◆通过设置val和divsel来指定倍频值和分频值。 ◆在函数InitSysCtrl调用InitPll时,传入的倍 频值是10,分频值是2,外部晶振是30MHz,所以DSP运行 的主频是150MHz。
LOGO
Page 10
5.5 时钟寄存器PCLKCR0/1/3
LOGO
■ PCLKCR0/1/3寄存器可以用来使能/屏蔽各个外设模块的时钟 信号。 ■ 当写入PCLKCR0/1/3寄存器时,需要2个SYSCLKOUT周期的延时 之后才会使新设置生效。 ■ 当某些外设不使用时,我们可以关掉这个外设的时钟,进而可 以节约系统的功耗。
谢谢大家!
Page 11
5.5 时钟寄存器HISPCP和LOSPCP
LOGO
■ 高速外设和低速外设时钟预定标(HISPCP和LOSPCP)寄存器, 用来配置高速/低速的外设时钟。 ■ HISPCP和LOSPCP寄存器同样位于系统控制寄存器 SYS_CTRL_REGS定义范围内
Page 12
开始
5.5 时钟寄存器PLLCR
LOGO
Page 6
5.3 基于PLL时钟模块
■ PLL锁相环。 可以使用外部振荡器或者晶振 PLL提供了高达10倍的比例。 PLL的比例可以通过软件来改变。 基于PLL的时钟模块,提供了两种操作模式: ◆ 晶体/共鸣器操作模式 ◆ 外部时钟源操作模式
LOGO

Page 7
5.3 输入时钟缺失
Page 3
引子
LOGO
时钟clock,是电子系统运行的基石。 良好的时钟信号,应该是一个正弦波或者方波,杂波/谐波尽可能的少, 抖动尽可能少。 可以用一个无源晶振作为输入,经过PLL倍频之后成为150MHz的信号
电源模块
复位模块
F28335 DSP内核 150MHz PLL 30MHz 无源晶振
LOGO
TMS320F28335 DSP开发实战-模块精讲
第5章 时钟模块
目录
引子
LOGO
XCLKOUT的产生
总览
时钟寄存器
晶振和PLL模块
实例讲解
Page 2
本章阅读小提点
LOGO
1、本书“实战为线,倒序学习”。 2、0000B表示二进制的0000,而不是十六进制的0x0000B。 3、“xxx寄存器位6”意思是“xxx寄存器的字位6号”, 也就是xxx寄存器从0字位开始数,字位6号, 注意:从0字位开始,而不是从1开始;
Page 8
5.4 XCLKOUT的产生
■ XCLKOUT信号是指DSP芯片内部输出时钟。 ◆ 可以用XCLKOUT来和外部芯片进行时钟同步 ◆ 可以利用XCLKOUT来检测DSP芯片是否正常工作 XCLKOUT和SYSCLKOUT的关系可以是:等于、1/2、1/4
L来自百度文库GO

Page 9
5.5 时钟寄存器
LOGO
Page 14
5.6 实例讲解 – 设计思路
LOGO
■ 我们要设计一个稳定可靠的时钟源作为基础,整个DSP系统才能稳定 正常地运行。 ■ 我们要选用某一种时钟信号作为CLKIN,之后通过DSP内部的PLL模块, 变为SYSCLKOUT。 ◆ 选定外部时钟源; ◆ 设计时钟源电路,要特别留意布局布线; ◆ 编写PLL的设置代码 ■ 无源晶体
是 设置PLL[MCLKOFF]为零。用 来使能时钟失效检测逻辑
如果需要则配置 PLLSTS[DIVSEL]
Page 13
结束
5.5 时钟寄存器PLLSTS
■ DIVSEL 分频选择。该位可以选择/4, /2或者 /1 ■ PLLOFF PLL关闭字位。该字位用来关闭PLL。可以用来测试 系统噪声。 ■ PLLLOCKS PLL锁定状态位.
1、如何评判一个时钟设计质量 的好与坏?
2、F2833x的时钟模块内部构架 是什么样子?能否不看书,尽可 能地画出来? 3、F2833x的时钟方案有哪些? 各有什么优缺点? 4、时钟寄存器有哪些字段、字 位不理解?试着在英文 datasheet中寻找答案 5、能否自行设计一个有源晶振 的时钟方案?
Page 18
Page 4
5.2 总览
1、CLKINT是输入到CPU的时钟 信号,之后作为SYSCLKOUT输 出,所以说CLKIN 和SYSCLKOUT有着同样的频率。 2、输出到众多外设的时钟, 可以设置为使能/屏蔽,这样 可以减少功耗。
LOGO
Page 5
5.3 晶振和PLL模块
1、CLKIN是输入时钟,由晶振和PLL模块产生。 2、三种时钟方案及优缺点。 A、3.3V外部时钟。 B、1.9V外部时钟。 C、内部振荡器+起振电容。
相关文档
最新文档