C6678的PLL模块设置
这部分讲解的是Main PLL和 PLL Controller的配置,主要介绍怎样提供DSP核 C66X CorePac需要的工作时钟;C6678除了Main PLL,还有 DDR3 PLL、PASS PLL。
1、Keystone1架构 C6678: Main PLL and PLL Controller结构图:

2、 CLKIN 是提供的参考时钟,即输入时钟,经过Main PLL后时钟输出为 PLLOUT,再输入到PLL Controller中,PLL Controller可以通过设置相关寄存器对输入的PLLOUT时钟进行分频,来获取多种不同频率的时钟,满足核心和外设的时钟需求,由图可以看出PLL Controller一共输出了16种不同的时钟;
3、16种不同的时钟中,SYSCLK1时钟用来作为核C66X CorePac的工作时钟,SYSCLK1时钟频率直接等于PLLOUT,不进行分频,所以C66X CorePac的工作时钟直接等于PLLOUT;其它时钟都具有不同的分频系数,其中只有PLLDIV2、PLLDIV5、PLLDIV8三个分频系数可以通过寄存器进行调整,其它的分频系数都是固定的;这些时钟的具体作用参考data manual;
4、如何设置核C66X CorePac的工作时钟?例如:输入时钟为100MHZ,怎样设置核C66X CorePac的工作时钟为1000MHZ,即核的工作时钟为输入参考时钟的10倍?
(1)、核C66X CorePac的工作时钟为SYSCLK1,即等于PLLOUT;当MAIN PLL工作在Bypass Mode时,PLLOUT的值直接等于输入的参考时钟CLKIN;当MAIN PLL工作在PLL Mode时,PLLOUT的值由输入时钟CLKIN、Main PLL的分频系数PLLD、倍增系数PLLM、以及OUTPUTDIVIDE值共同决定,公式如下:

对于Keystone1架构的芯片,OUTPUTDIVIDE值默认为1,而Keystone2架构的芯片,OUTPUTDIVIDE值默认为0,OUTPUTDIVIDE值通过寄存器SECCTL[22:19]来设置;
PLLM的值一共有13位,PLLM[12:0],13位被分成两个部分,高位部分PLLM[12:6]由寄存器MAINPLLCTL0[18:12]决定,低位部分PLLM[5:0]由寄存器PLLM[5:0]决定;PLLD的值由寄存器MAINPLLCTL0[5:0]决定;寄存器的具体地址和设置,参考专门介绍PLL的数据手册;
(2)、当输入参考时钟为100MHZ时,设置核C66X CorePac的工作时钟SYSCLK1为1000MHZ,即PLLOUT等于1000MHZ:
根据公式设置OUTPUTDIVIDE值为1,PLLM值为19,PLLD值为0,则PLLOUT等于1000MHZ;另外寄存器的设置要满足公式:BWADJ = ((PLLM + 1)>> 1)- 1;BWADJ[11:0]的值由两部分决定,一部分BWADJ[11:8]由寄存器MAINPLLCTL1[3:0]决定,另一部分BWADJ[7:0]由寄存器MAINPLLCTL0[31:24]决定;
一般PLLM[12:6]都设为0,所以PLLM的值一般由PLLM[5:0]决定,即由寄存器MAINPLLCTL0[5:0]决定;C6678的PLL设置例程很多,可以参考例程代码;
C6678的PLL模块设置的更多相关文章
- nginx利用limit模块设置IP并发防CC攻击
nginx利用limit模块设置IP并发防CC攻击 分类: 系统2013-01-21 09:02 759人阅读 评论(0) 收藏 举报 来源:http://blog.xencdn.net/nginx- ...
- 关于金蝶k3 wise供应生门户登陆界面屏蔽业务账套多余功能模块设置方法
关于金蝶k3 wise供应生门户登陆界面屏蔽业务账套多余功能模块设置方法 1. 找到以下路径 ...\Kingdee\K3ERP\KDHR\SITEFILE\WEBUI\ 找到“Login.aspx” ...
- 蓝牙进阶之路 (001) - HC-05蓝牙无线模块设置
USB转串口的有线转接方式,实在太难看了,尤其是寻接头,那是相当的不方便.其它电器厂商都想把是接头做小,做精致,唯独串口接头还是那么庞大,感觉应该换一换了,都已经完全不符合这个时代的审美观了. 于是, ...
- apache +php +php curl 模块设置
2.2 linux 下面 2.2.1 web服务器安装 1目前采用的web服务器是apache2,在ubuntu 下安装 apt-getupdate apt-get installapache2 测试 ...
- python3给socket模块设置代理
最近需要在公司学习socket编程,但是不能直接连接外网,需要设置一个代理才能正常访问.报错示例: import socket def blocking(wd): sock = socket.sock ...
- 使用kuboard界面配置springcloud的其中一个模块设置环境变量,使用nacos配置地址等有关设置
总结: 工作负载类型是StatefulSet的pod,不论其上层的service是nodeport还是Headless, 对外提供的地址格式是: <pod name>.<servic ...
- FastAdmin 怎么把模块设置默认的首页?
F4NNIU: 参考 ThinkPHP5 的路由设置. fangke-河南: 或者看config.php Karson:需要把插件设置为默认首页吗?在后台就可以,设置他插件的为伪静态,即可.
- nginix.conf 中的gzip模块设置
gizp模块配置 gzip on; gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.0; g ...
- Python调用time模块设置当前时间-指定时间
import datetimeimport time#新建元旦时间#将程序打包def A(): # 设定时间 newyear =datetime.datetime(2033,10,1) #调用当前时间 ...
随机推荐
- 利用div+css实现九宫格,然后用js实现点击每个格子可以随机更改格子(div)的背景颜色
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 2019-04-24-day039-数据库的增查
内容回顾 多积累使用工具的经验 尽量多练习 1.多练几种类型 2.不要照着写好的sql敲,要自己组织语言 内容回顾 存储引擎 innodb : 外键 行级锁(并发修改) 事务(客户管理系统) myis ...
- 使用flask+SQL语句实现通过前台收到的信息向数据库中插入事件+初级CSS+HTML拯救一下我的主页·····
1.使用flask+SQL语句实现**#@&&(懒得再扣一遍题目) 上代码: @app.route('/register', methods=['POST', 'GET']) def ...
- TP5对数据库操作的事物作用
假如: 你写好了一段完整的代码,模型对数据库的操作,增删改查什么的,都没有问题,当然运行速度也是最快的,完全不用担心会出错, 前提肯定是已经写好的一整段代码, 但是,万一服务器中断了呢,执行一半,后面 ...
- Ubuntu文件系统
(). 关于Linux中的文件: (). 在Linux系统中, 一切都是文件 : 所有数据都是文件,包括设备. (). 最小的数据存储单元也是文件. (). 文件系统: 文件系统就是文件的组织和管理方 ...
- Learning Structured Representation for Text Classification via Reinforcement Learning 学习笔记
Representation learning : 表征学习,端到端的学习 pre-specified 预先指定的 demonstrate 论证;证明,证实;显示,展示;演示,说明 attempt ...
- 软件测试_Fiddler抓包工具二
多数资料摘至:https://www.cnblogs.com/nihaorz/p/5455148.html Fiddler 的命令使用 如何打开命令行:左下方的小黑条命令行,点击它就可以输入命令了(a ...
- 你想知道吗?come
从大二接触Java开始,到现在也差不多三个年头了.从最基础的HTML.CSS到最后的SSH自己都是一步一个脚印走出来的,其中开心过.失落过.寂寞过.虽然是半道出家但是经过自己的努力也算是完成了“学业” ...
- cin.ignore
功能:函数用于输入流.它读入字符,直到已经读了num 个字符(默认为1)或是直到字符delim 被读入(默认为EOF).其调用形式为cin.ignore(n,终止字符) 原型:istrea ...
- 10. Firewalls (防火墙 2个)
Netfilter是在标准Linux内核中实现的强大的包过滤器. 用户空间iptables工具用于配置. 它现在支持数据包过滤(无状态或有状态),各种网络地址和端口转换(NAT / NAPT),以及用 ...