版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、I课课 程程 设设 计计 任任 务务 书书题目题目 时钟电路控制程序的编写时钟电路控制程序的编写 专业、班级专业、班级 电信电信 09092 2 学号学号 540901030201540901030201 姓名姓名 曹磊曹磊 主要内容、基本要求、主要参考资料等:主要内容、基本要求、主要参考资料等:1、参考课本,C54X Applications Guide.pdf 及 C54X Mnemonic Instruction Set.pdf 编写时钟控制程序。2、要求在掌握 C54X 系列 DSP 时钟电路的基础上编写程序,完成对DSP 时钟电路的编程。3、要求用汇编语言书写,实现 DSP 时钟从分
2、频模式向分频模式的切换、分频模式向倍频模式的切换、倍频模式向分频模式的切换、倍频模式向倍频模式的切换共四个程序段,具体的工作频率可自行指定。4、完成上述要求程序的编写并在 CCS5000 编译连接通过并验证计算结果,设计完成后要求每人上交一份课程设计说明书,说明书要求包含有课程设计任务书,各文件的说明,各文件里关键语句的说明。说明书要求字迹工整、叙述清楚。5、发挥部分,增加设计成为一个完整的项目(附加命令文件和向量表文件) 。6、时间:二周。完完 成成 期期 限:限: 2 20 01 13 3. .0 01 1. .0 07 7- - - -2 20 01 13 3. .0 01 1. .1
3、18 8 指指导导教教师师签签名名: 胡胡智智宏宏 课程负责人签名:课程负责人签名: 胡胡智智宏宏 20132013 年年 1 1 月月 7 7 日日I摘要时钟电路可以简单定义如下:任何工作都按时间顺序。用于产生这个时间的电路就是时钟电路。在 DSP 系统中,时钟电路是关键模块,对时钟电路的编程控制是系统运行的必要步骤。下面对 TMS320C54x 系列 DSP 时钟电路进行编程控制,以实现 DSP 时钟从分频模式向分频模式、分频模式向倍频模式、倍频模式向分频模式和倍频模式向倍频模式共四种不同模式的切换,并在 CCS5000 编译连接通过并验证计算结果。关键词:TMS320C54x DSP 时
4、钟电路控制 CCS5000目录摘要.I1 时钟电路的实现.12 锁相环 PLL 的硬件配置.23 锁相环 PLL 的软件配置.43.1 PLL 工作方式的配置.43.2 复位后时钟模式的配置 .43.3 寄存器 CLKMD 的应用简介 .54 控制 DSP 时钟频率的软件设计.74.1 从分频模式倍频模式的切换编程 .74.2 从倍频模式向分频模式的切换编程 .84.3 从倍频模式向倍频模式的切换编程 .94.4 从分频模式向分频模式的切换编程 .104.5 紧跟在复位之后的 PLL 操作.114.6 使用 IDLE 指令时 PLL 的编程方法.115 心得体会.136 参考文献.141123
5、456ABCD654321DCBATitleNumberRevisionSizeBDate:10-Jun-2008Sheet of File:C:Documents and SettingsAdministrator.DB5759F576924FC体体体DSP体体.ddbDrawn By:体体体体TMS320C54XX1X2CLKIN 4 1 3 2Vdd123456ABCD654321DCBATitleNumberRevisionSizeBDate:10-Jun-2008Sheet of File:C:Documents and SettingsAdministrator.DB5759F57
6、6924FC体体体DSP体体.ddbDrawn By:TSM320C54XX1X2CLKINC1C2体体1 时钟电路的实现我通过查阅书籍和浏览网页,DSP 芯片提供时钟信号一般有两种方法。一,使用外部时钟源的时钟信号,将外部时钟信号直接加到 DSP 芯片的引脚,而引脚悬空。外部时钟源可以采用频率稳定CLKINX/21X的晶体振荡器,具有使用方便,价格便宜,因而得到广泛应用。连接方式如图 1.1 所示;二,利用 DSP 芯片内部的振荡器构成时钟电路,即在芯片的和引脚之间接入一个晶体,CLKMD 引脚必须设置1XCLKINX2以启动内部振荡器,连接方式如图 1.2 所示。 图 1.1 使用外部时钟
7、源图 1.2 使用内部振荡器22 锁相环 PLL 的硬件配置锁相环 PLL 具有功率放大和时钟信号提纯的作用,利用 PLL 的锁定特性可以对时钟频率进行锁定,为芯片提供高稳定频率的时钟信号。除此之外,锁相环还可以对外部时钟频率进行倍频,使外部时钟源的频率低于 CPU 的机器周期,以降低因高速开关时钟所引起的高频噪声。TMS320C54x 的锁相环有两种形式:一,硬件配置的 PLL:用于C541、C542、C543、C545 和 C546 芯片;二,软件可编程 PLL:用于C54A、C546A、C548、C549、C5402、C5410、和 C5420 芯片。硬件配置 PLL,是通过设定 C54
8、x 的 3 个引脚 CLKMD1、CLKMD2 和CLKMD3 的状态来选定时钟方式。上电复位时,DSP 根据这三个引脚的电平,决定 PLL 的工作状态,并启动 PLL 工作。表 2.时钟方式配置引脚状态时钟方式CLKMD1CLKMD2CLKMD选择方案 1选择方案 2000用外部时钟源,3PLL用外部时钟源,5PLL110用外部时钟源,2PLL用外部时钟源,4PLL100用内部振荡器,3PLL用内部振荡器,5PLL010用外部时钟源,5 . 1PLL用外部时钟源,5 . 4PLL001用外部时钟源, 频率除以 2用外部时钟源,频率除以 2111用内部振荡器,频率除以 2用内部振荡器,频率除以
9、 2101用外部时钟源,1PLL用外部时钟源,1PLL3011停止方式停止方式表 2.1 中时钟方式的选择方案是针对不同 C54x 芯片的。对于同样的 CLKMD 引脚状态,使用芯片不同,所对应的选择方案就不同,其选定的工作频率也不同。因此,在使用硬件配置的 PLL 时,应根据所选用的芯片型号来选择正确的引脚状态。由表 2.1 可见,进行硬件配置时,其工作频率是固定的。当不用PLL 时,CPU 的时钟频率等于内部振荡器频率或外部时钟频率的一半;若用 PLL,CPU 的时钟频率等于内部振荡器频率或外部时钟频率乘以系数 N,即对内部或外部时钟倍频,其频率为。在 DSP 正常工作NPLL时,时钟模式
10、不能重新改变和配置。但 DSP 进入省电模式后,其3IDLECLKOUT 输出高电平时,时钟模式便可以重新进行配置。43 3 锁相环 PLL 的软件配置3.1 PLL 工作方式的配置软件可编程 PLL 的特点是具有高度的灵活性。它利用编程方式对时钟方式寄存器 CLKMD 的设定,来定义 PLL 时钟模块中的时钟配置。它包括一个用来提供时钟乘法器系数的时钟定标器,并能直接接通和关断PLL 的功能。一个 PLL 锁定定时器,它可以用于延迟器件 PLL 时钟模式的切换,直到锁定操作完成为止。通过软件编程,可以实现以下两种工作方式:第一,PLL 方式即倍频方式,是芯片的工作频率等于输入时钟 CLKIN
11、 乘以 PLL 的比例系数,其比例系数共 31 种,取值范围为 0.2515,靠锁相环电路获得;第二,DIV 方式即分频方式,是对输入时钟进行 2 分频或 4 分频,在此方式下,所有的模拟电路,包括 PLL 电路将关断,以使芯片功耗最小。3.2 复位后时钟模式的配置复位操作之后,时钟方式寄存器是由 3 个外部引脚CLKMD1、CLKMD2 和 CLKMD3 的值来设定的。3 个 CLKMD 引脚对应的模式由表 3.1 列出。表 3.1复位时设置的时钟模式(C5402)CLKMD1CLKMD2CLKMD3CLKMD 的复位值时钟方式000E007H 15PLL0019007H10PLL01040
12、07H5PLL51001007H2PLL110F007H1PLL1110000H2 分频(PLL 无效)101F000H4 分频(PLL 无效)011保留从表 3.1 可以看出,不同的外部引脚状态对应不同的时钟方式。通常,DSP 系统的程序需要从外部低速 EPROM 中调入,可以采用较低工作频率的复位时钟方式,待程序全部调入内部快速 RAM 后,再用软件重新设置 DSP 寄存器的值,使 DSP 芯片工作在较高的频率上。复位后软件可编程 PLL 可以被编程设置为任意所需的模式。下列时钟模式的引脚的组合可以在复位时开放 PLL:C5402 中是,其它器件中是BBCLKMD110000) 13(。当
13、这些时钟模式引脚组合被使用时,内BBCLKMD101000) 13(部的锁存定时器不再激活。因此,系统必须延迟释放复位以保 PLL 锁存时间的延迟得到满足。3.3 寄存器 CLKMD 的应用简介 对 PLL 的编程就是对 16 位的存储器映射寄存器时钟工作方式寄存器 CLKMD 的编程,其地址为 0058H。其格式如表 3.2 所示。表 3.2时钟模式寄存 CLKMD 的格式位151211103210位定义PLLMULPLLDIVPLLCOUNTPLLON/OFFPLLNDIVPLLSTATUS位操R/WR/WR/WR/WR/WR6作时钟方式寄存器 CLKMD 各位段的功能如表所示。表 3.3
14、 CLKMD 寄存器各位段的功能表位符号名称功能1512PLLMULPLL 乘法(读/写位)与 PLLDIV 以及 PLLNDIV 一起定义PLL 的乘系数,见表 511PLLDIVPLL 除法位(读/写位)与 PLLMUL 以及 PLLNDIV 一起定义PLL 的乘系数,见表 5103PLLCOUNTPLL 计数器值(读/写位)PLL 计数器是一个减法计数器,每 16个输入时钟脉冲 CLKIN 到来后减 1。对 PLL 开始工作之后到 PLL 成为 CPU时钟之前的一段时间进行计数定时。PLL 计数器能够确保在 PLL 锁定之后以正确的时钟信号加到 CPU。2PLLON/OFFPLL 通/关
15、位(读/写位)与 PLLNDIV 位一起决定 PLL 部件的通和断。见下表PLLON/OFFPLLNDIVPLL 状态00断开00工作10工作11工作1PLLNDIVPLL 时钟电路选择位(读/写位)与 PLLMUL 和 PLLNDIV 一起定义 PLL的乘系数,并决定时钟电路的工作方式。PLLNDIV=0,采用 DIV 方式,即分频PLLNDIV=1,采用 PLL 方式,即倍频0PLLSTATUSPLL 的状态位(只读位)用来指示时钟电路的工作方式:PLLSTATUS=0,时钟电路为 DIV 方式PLLSTATUS=1,时钟电路为 PLL 方式其中 DSP 内部时钟信号。系数 CLKOUTC
16、LKOUT 74 控制 DSP 时钟频率的软件设计下面将详细说明改变 PLL 频率的软件控制方法,以及 PLL 在启动的设置,不同时钟模式之间的转换,以及在指令运321IDLEIDLEIDLE行前后的正确使用。4.1 从分频模式倍频模式的切换编程在进行从分频模式向倍频模式的转换时,应当注意如果从 DIV 模式切换到 PLL 模式时 PLL 没有被锁定,那么在模式转换发生之前一定要有PLL 锁定时间延迟,以保证只有合适的时钟信号才会被提供给器件。因此,在从 DIV 模式切换到 PLL 模式时了解 PLL 是否被锁定很重要。在上电时、在 PLLMUL 或 PLLDIV 的值修改后、在 PLL 关闭
17、后(即)或在输入参照时钟丢失之后,PLL 是不锁定的。一旦被0OFFPLL锁定,它将保持锁定状态,甚至在 DIV 模式下也保持。只要 PLL 前面已被锁定,而且自 PLL 锁定以来,PLL 一直没有被关闭过(位OFFPLL保持为 1) ,PLLMUL 和 PLLDIV 的值也没有被改变,那么 PLL 将一直保持锁定状态。从 DIV 模式到 PLL 模式的切换(把 PLLNDIV 设置为 1)激活了PLLCOUNT 可编程锁存定时器(在 PLLCOUNT 被预先装载了一个非零值时),并且这个特点可以用于提供一个实现定时时间延迟的便捷方法。PLLCOUNT 锁存定时器的特性应当用在前面描述过的 P
18、LL 没有被锁定的情况下,除非用一个复位延时来实现锁定时间延迟,或者 PLL 不使用。从 DIV 模式到 PLL 模式的切换是通过对 CLKMD 的装载来完成的。后8面将说明在 PLL 未锁定时从 DIV 模式切换到 PLL 模式的过程如果在 PLL被锁定的条件下进行这个模式转换,效果与从 PLL 模式切换到 DIV 时相同,但是顺序相反。在这种情况下,新时钟模式生效的延迟时间是相同的。在 PLL 没有锁定或模式改变后工作在没有锁定的状态下,从 DIV 模式切换到 PLL 模式可以同过设置 PLLMUL、PLLDIV 和 PLLNDIV 位来选择频率的倍频。并且 PLLCOUNT 位将被设置,
19、以选择所需要的锁定时间延迟。注意,只有在 DIV 模式中才能改变 PLLMUL、PLLCOUNT 和位。DOFFPLLON /一旦 PLLDIV 置位,PLLCOUNT 锁定定时器就从预设值开始递减。当PLLCOUNT 锁定定时器减到 0 后,需要 6 个 CLKIN 周期加上 3.5 个 PLL周期(CLKOUT 频率)切换到 PLL 模式。完成切换后,CLKMD 中的PLLSTATUS 位读出为 1。注意,在 PLL 锁定期间,C54x DSP 仍工作在DIV 模式。下面的指令可以实现从 DIV 模式切换到模式,其中 CLKIN3PLL频率为 13MHz,该值包含了一定的安全冗余量。10)
20、18(PLLCOUNTSTM# 0010000010010111B,CLKMD4.2 从倍频模式向分频模式的切换编程从 PLL 模式切换到 DIV 模式是,没有 PLLCOUNT 延时,这种切换经过短暂的延时后即可实现。从 PLL 模式切换到 DIV 模式时也要装载CLKMD 寄存器。将 PLLDNIV 位清零,选择 DIV 模式而且 PLLMUL 位被设置以选择所需要的频率乘数因子。对所有的 PLLMUL 值(除了 1111B)而言,切换到 DIV 模式需要 6 个 CLKIN 周期加上 3.5 个 PLL 周期9(CLKOUT 频率) 。当 PLLMUL 的值为 1111B,切换过程需要
21、12 个 CLKIN周期加上 3.5 个 PLL 周期。在完成切换到 DIV 模式后,CLKMD 中的PLLSTATUS 位的读出值为 0。下面的程序可以实现从(3 倍频)3PLL模式到二分频模式的切换。在程序中,通过检测 PLLSTATUS 位来确定是否已切换到 DIV 模式,在确认完成切换后,用 STM 指令关闭 PLL。STM# 0B,CLKMD ;转换到 DIV 模式Testb: LDMCLKMD,A AND#01B,A ;查询 STATUS 位 BC TstStatu,ANEQ STM # 0B,CLKMD;若 STATUS 是 DIV 模式时,复位PLLON/OFF4.3 从倍频模
22、式向倍频模式的切换编程要改变 PLL 的倍率,必须先把时钟模式从 PLL 模式切换到 DIV 模式,然后在切换到新的 PLL 模式。不允许从一种 PLL 倍率直接切换到另一种PLL 倍率。为了从一种 PLL 倍率切换到另一种 PLL 倍率,必须遵从以下步骤:1) 将 PLLNDIV 位清 0,选择 DIV 模式。2) 查询 PLLSTATUS 位,该标志位为 0 说明已切换到 DIV 模式。3) 按照所要求的倍率,修改 CLKMD 寄存器中的 PLLMUL、OLLDIV和 PLLNDIV。一旦 PLLDIV 位被置位,PLLCOUNT 锁定定时器就从预设值开始递减。当 PLLCOUNT 锁定定
23、时器减到 0 时,在经过 6 个 CLKIN 周期加上 3.5 个PLL 周期(CLKOUT 频率)的时间后,切换到 PLL 模式。10下面一段指令可以完成从模式切换到 PLL1 的模式:)(XPLLSTM # 0b,CLKMD ;先转换到 DIV 模式Testb: LDM CLKMD,A AND # 01B,A ;查询 STATUS 位 BC TstStatu,ANEQ STM # 0000001111101111B,CLKMD ;转换到模式1PLL4.4 从分频模式向分频模式的切换编程与从 PLL 模式到 PLL 模式切换的情况一样,直接在 2 分频和 4 分频之间的切换也是不允许的。若要
24、在这两个模式之间切换,则必须先切换到 PLL 的整数(非分数)倍频模式,然后在切换到所要求的分频模式。下面的程序可实现从模式切换到模式 :2DIV4DIVSTM # 0000000010010111B,CLKMD ;先从 2 分频模式切换到模式1PLL STM # 0B,CLKMD ;再转换到 DIV 模式Testb: LDM CLKMD,A AND # 01B,A ;查询 STATUS 位 BC TstStatu,ANEQ STM # 000110000000010B,CLKMD;若,则转换到 DIV 模式,设置相关位,从0STATUS。模式模式4DIV1PLL114.5 紧跟在复位之后的
25、PLL 操作在复位之后,时钟模式立即由 3 个外部引脚 CLKMD1、CLKMD2 和CLKMD3 的值决定。从初始时钟模式切换到任意其他模式的转换可以很容易地通过改变 CLKMD 的内容来完成。如果内部振荡器的使用需要一个外部晶振,那么器件的 CLKMD 引脚必须在复位时被设置,一启动内部振荡器。参考表和表中列出的每种器件的外部引脚值和可用模式。 (在C5420 中内部振荡器是无效的)下面的指令可实现从2 模式到 PLL3 的转换:STM # 0010 0001 0100 1111B,CLKMD4.6 使用 IDLE 指令时 PLL 的编程方法在使用一条 IDLE 指令来减少能量需求时,对
26、PLL 的正确管理是很重要的。时钟产生器在禁止 PLL 的 DIV 模式下消耗的能量是最少的。因此,如果功耗是一个很重要的考虑时,在执行 IDLE1IDLE2 或 IDLE3 指令之前,希望从 PLL 模式转换到 DIV 模式并禁止 PLL。在 “从 PLL 模式到 DIV 模式转换”一节中,已经解释了这个过程。在器件从IDLE1/IDLE2/IDLE3 模式唤醒之后,时钟产生器可以被重新编程到 PLL模式,这个过程在“从 DIV 模式到 PLL 模式转换”一节中进行了解释。注意,当 PLL 在模式 IDLE 状态下停止,并且 C54x 器件重新启动且时钟产生器切换回到 PLL 模式时,PLL
27、 锁定延迟会出现,其方式和一般器件12启动时的情况一样。因此,在这种情况下,必须考虑锁定延迟,可以是外部延迟或是用 PLL 锁存定时器延迟。下面一段代码序列使时钟产生器从 PLL3 模式切换到2 模式,并关闭 PLL,进入 IDLE3 状态。当器件从 IDLE3 模式唤醒后,用一条STM 指令将时钟产生器从 DIV 模式转换到 PLL3 模式,此时,为锁存定时器 PLLCOUNT 所设的初值为(64)10 。STM # 0B,CLKMD ;转换到 DIV 模式Testb: LDM CLKMD,A ;(CLKMD)(A)AND # 01B,A ;查询 STATUS 位 BCTestb,ANEQ;若 STATUS=1,未转换到 DIV 模式,跳转到 Testb 处继续检测STM # 0B,CLKMD ;当 ST
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五版生物质发电监理服务合同三方协议3篇
- 二零二五版企业安全风险评估与安保服务合同3篇
- 二零二五年度高品质钢结构装配式建筑安装服务合同3篇
- 二零二五版电影投资融资代理合同样本3篇
- 二零二五版初级农产品电商平台入驻合同2篇
- 二零二五年度电商平台安全实验报告安全防护方案合同3篇
- 二零二五年度白酒销售区域保护与竞业禁止合同3篇
- 二零二五版建筑工程专用防水材料招投标合同范本3篇
- 二零二五年研发合作与成果共享合同2篇
- 二零二五版钢结构工程节能合同范本下载3篇
- 2024年四川省德阳市中考道德与法治试卷(含答案逐题解析)
- 施工现场水电费协议
- SH/T 3046-2024 石油化工立式圆筒形钢制焊接储罐设计规范(正式版)
- 六年级数学质量分析及改进措施
- 一年级下册数学口算题卡打印
- 真人cs基于信号发射的激光武器设计
- 【阅读提升】部编版语文五年级下册第三单元阅读要素解析 类文阅读课外阅读过关(含答案)
- 四年级上册递等式计算练习200题及答案
- 法院后勤部门述职报告
- 2024年国信证券招聘笔试参考题库附带答案详解
- 道医馆可行性报告
评论
0/150
提交评论