马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
Zynq器件的时钟子系统是PS(ARMCortex-A9)系统的一个集成部分,本文就ZYNQ器件的时钟子系统作一个抛砖引玉的描述,以期大家对它有个基本了解,如有不当或需要补充之处欢迎大家发言指出。
PS时钟子系统产生的所有时钟都源自三个可编程的PLL锁相环之一,这三个PLL锁相环分别为:CPU PLL、DDRPLL、I/O PLL,每个PLL分别和CPU、DDR、外设系统时钟有着松散地联系,时钟子系统的框图如下图示:
在正常操作情况下,PLL锁相环是使能的,时钟源自PS_CLK时钟脚,在bypass旁路模式下,PS_CLK时钟脚的信号不经过PLL直接作为内容各时钟发生器的源输入,根据Zynq器件的DATA SHEET要求,PS_CLK时钟信号最低频率为30MHz, 最高频率为60MHz, 占空比要求在40%~60%之间。
当PS_PORreset上电复位信号释放时,锁相环旁路启动模式引脚被采样而决定是否旁路或所能这三个PLL锁相环。对比正常操作模式,用旁路模式运行系统可以显著地减少系统地功耗,这个低功耗应用时十分有用。在系统启发BOOT后,用户代码执行后就可以用软件分别控制每个PLL锁相环的旁路模式和输出频率。要正确设置参数使PLL锁相环的输出频率的大小满足DATA SHEET要求,如下图示:
锁相环输出的最小频率为780MHz,最大频率为1600MHz~2000MHz。
注意从减少功耗的角度考虑,使用锁相环时应在满足时钟要求的条件下尽可能降低锁相环的输出频率。比如,如果所有的时钟都可以由DDR PLL产生,那就不使能另外两个锁相环ARM PLL
和I/O PLL可以获得比较低的功耗。
时钟产生路径还包括无毛刺的选择器和时钟门控电路以支持动态的时钟控制。
三个PLL锁相环特性如下:
·三个PLL使用同一个外部基准时钟输入引脚
ARMPLL:CPU时钟和互连(interconnect)的通用时钟源。
DDR PLL:DDR DRAM控制器和AXI_HP接口的通用时钟源。
I/O PLL:
I/O外设的通用时钟源。
·独立地旁路模式和输出频率编程
·共享VCO的带隙参考电压电路
时钟分支(Clock Branches)特性如下:
·6比特的可编程序的频率除法器
·大部分的时钟电路可以动态开关
·有四个PL(FPGA)的时钟发生器
由于时钟子系统是PS(ARM Cortex-A9)系统的一部分,但系统复位时,所有控制时钟模块的寄存器就重置为系统复位值。
系统的时钟域分布如下图示:
上图中,
CPU_6x时钟域主要用作CPU时钟,CPU互连和OCM仲裁。
CPU_2x时钟域主要用作L2Cache,I/O外设的AXI互连和OCM RAM。
CPU_1x时钟域主要用作I/O外设的AHB和APB总线互连。
DDR_3x时钟域主要用作DDR存储控制器。
DDR_2x时钟域主要用作访问PL(AXI_HP{0:3})的高性能的AXI总线互连。
最后提下PL的时钟,前面提到Zynq器件的时钟子系统有四个时钟发生器产生时钟连到FPGA,但FPGA可以有自己的时钟管理和分发特性,仅仅是把这四个PS时钟子系统过来的信号作为一个可选的时钟输入源而已,这点等同于普通地XILINX 7系统FPGA。更详细内容请参考Zynq-7000 EPP Technical Reference Manual。 |