zynq网络时钟控制寄存器_Xilinx zynq7000,zynq7k上CLOCK Distribution 调试笔记



2时钟Clock

PS和PL的时钟输入都来源于PS_CLK(一般为33.33Mhz或50MHz),PS_CLK经过三个锁相环PLL之后产生不同的输出频率,给不同的模块提供需要的时钟

三个锁相环分别是ARMPLL,DDRPLL和IOPLL.锁相环的倍频系数可以通过设置ARM_PLL_CTRL(0xF8000100)/DDR_PLL_CTRL(0xF8000104)/IO_PLL_CTRL(0xF8000108)

的PLL_FDIV[18..12]字段获得指定的输出频率.DDRPLL可以用来给所有模块(CPU,DDR和IO)提供时钟而ARMPLL和IOPLL则只能给CPU和IO提供时钟.

CPU CLOCK有2种设置模式(6:2:1)或(4:2:1)指的是CPU L2 Cache:APU:IO的和CPU1x的速度比(CPU1x=133,当33.33MHZ或150当50MHz)

以设置SPI1,12.5MHz,PS_CLK输入为33.33MHz,使用IOPLL为例:

IOPLL(0xF8000108)的PLL_FDIV=30 ,即IOPLL[18..12]=30,则IOPLL的输出频率1000MHz

继续设置SPI_CLK_CTRL(0xF8000158)寄存器的DIVISOR=5和SRCSEL=00,CLKACT1=1则指定了SPI模块的输入频率1000/5=200MHz,使用IOPLL.

进入SPI模块配置SPI的工作频率

SPI Config_reg0(0xE0007000)的BAUD_RATE_DIV设置为0b011即16分频,则SPI输出频率为200/16=12.5MHz

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值