首页 > 其他分享 >AG32 PLL时钟输出

AG32 PLL时钟输出

时间:2024-12-05 12:01:11浏览次数:6  
标签:输出 相位 AG32 CPLD 频率 PLL 时钟

AG32内部集成一个PLL,供MCU和CPLD使用, 支持5路时钟输出。PLL时钟输出以MCU优先。

这里整理下5路时钟:

PLLCLK0:就是 SYSCLK (名字使用SYSCLK)

PLLCLK1:VE里如果定义USB0 device,系统会自动生成60Mhz时钟给USB用;

PLLCLK2:VE里定义了MAC信号时,这路时钟给MAC用(25 MII/50M RMII);

PLLCLK3:VE里定义BUSCLK时(只能是sysclk整数分频)给CPLD用;

PLLCLK4:独立给用户使用;

这里的SYSCLK相当于RISC-V的运行频率,也是AHB时钟。系统如果没有定义USB, Ethernet MAC的情况下,相应的几路时钟都可以给CPLD用。这里的BUSCLK相当于CPLD与MCU通过AHB通讯时的APB时钟。当MCU需要运行到200Mhz以上时,ADC部分的逻辑无法运行到这么高的频率,需要定义BUSCLK给CPLD用。

时钟的设置限制及计算方式:

PLLCLK是用户期望的目标值,是由外部时钟通过PLL倍频和分频后产生的:

  1. VCO=HSE*X/Y,X,Y皆为整数

  2. VCO小于1200MHZ。

  3. 所有的设置频率必须能被这个最终VCO整除。

举例:mcu主频100M,系统用了MAC(50M),系统用了USB(60M),cpld自定义了PLLCLK3为80M,cpld自定义了PLLCLK4为60M。则,PLL目标值就是100\50\60\80\60的最小公倍数,为1200M。

如果使用到一些特殊频率,则可能需要通过选择外部时钟来实现。

VSCODE 编译的时候,会输出时钟的一些信息的。如:

图片

PLL时钟的相位:

PLL 除了输出时钟频率外,还能输出不同相位的时钟。我们有一个例程,提供了高精度的PWM输出,输出精度可以达到100pS。 可能有人奇怪了,VCO最高也就输出1.2G,也就0.8nS左右的精度,怎么可以达到100pS的精度呢?这里设计就用到了时钟相位。

VE里可以定义时钟的不同相位:

图片

相位以45°为单位,可以产生8个不同的相位,再加上1.2G的频率,相当于可以产生10G的频率,就可以实现100pS的精度。

大家可以用示波器测测相位,这样更容易理解。

标签:输出,相位,AG32,CPLD,频率,PLL,时钟
From: https://blog.csdn.net/xinxingzhe5127/article/details/144129996

相关文章

  • AG32的时钟输入种类
    内部HSI:AG32有内置的HSI时钟:8Mhz。但是这个时钟偏差比较大,个别甚至接近10Mhz。这个时钟对于有时序要求的接口,如UART,USB等是无法接受的。为了改善这个时钟,AGM做了一个内部时钟校准,利用下载器的时钟来校准,然后存在内部flash中。校准后的精度可以在1%以内。AGM的串口启动,是没......
  • 时钟案例
    制作一个时钟,如下图:点击查看代码<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title><style>*{margin:0;padding:0;......
  • 使用js写一个时钟的程序
    <!DOCTYPEhtml><html><head><title>JavaScriptClock</title><style>body{font-family:sans-serif;display:flex;justify-content:center;align-items:center;min-height:100vh;background-......
  • stm32内部高速晶振打开作为主时钟
    首先建议你别这么干,因为内部晶振特别容易受温度等外界影响,很容易卡死或堵死程序我是因为没画外部晶振电路,所以只能开内部晶振来作为时钟适用于stm32f103系列把下面的代码换掉源文件里的时钟源配置/*开启HSI即内部晶振时钟*/ RCC->CR|=(uint32_t)0x00000001;//RCC......
  • 同步时钟,异步时钟
     synchronous&asynchronous在静态时序分析中,有一个很重要的概念是同步和异步如果launchclock与captureclock有固定的相位差,那就是同步时序如果两者没有固定的相位差,那就是异步时序一般情况下,STA只检查同步时序,不用检查异步时序同步时序又分为以下几种情况:a)launch......
  • 使用css3绘制一个圆形动态的时钟
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>CSSClock</title>......
  • 07—PCB设计中如何防止时钟偏差
    PCB设计中如何防止时钟偏差在PCB设计中,作为设计者都希望时钟信号能够准确的到达芯片终端。但是在实际应用中,时钟偏差的问题会导致时钟信号提前或延迟到达某些芯片。这样就会导致芯片的数据完整性不一致。1.什么是时钟偏差时钟偏差是一种时钟信号以不同的间隔到达不同目的......
  • DS1302时钟
    一、使用的MCU为STC89C52RC二、DS1302驱动1#include<REGX52.H>2#include"DS1302.h"3#include"LCD1602.h"4#include"Delay.h"5#include"Timer0.h"6#include"SKey.h"789voidsetMo......
  • 数字IC知识点:处理多个时钟
    1.多时钟域图1.多时钟域对于工程师来说,开发含多个时钟(见图1)的设计是一种挑战。这样的设计中可能有以下任何一个,或者全部类型的时钟关系:时钟的频率不同时钟频率相同,但相位不同以上两种关系如图2所示。图2.多时钟间关系(在多时钟域中)2.多时钟域设计的难题2.1违背建......
  • 时钟使能、
    时钟使能如果正确使用,时钟使能能够显著地降低系统功耗,同时对面积或性能的影响极小。但是如果不正确地使用时钟使能,可能会造成下列后果:•面积增大•密度减小•功耗上升•性能下降在许多使用大量控制集的设计中,低扇出时钟使能可能......