返回信息流经过了前面的介绍,今后开始从MCU的角度讲解嵌入式系统硬件设计的相关知识。我将会以2410为例简要逐步介绍并分析pcb板级系统原理图的设计。
首先,介绍2410这款MCU的接口,由于接口数量较多,因此分成两部分进行描述。
如上图所示,左侧为地址线接口,右侧为数据线接口,下侧是内部A/D,PLL等MCU相关的配置端口,今天主要介绍一下MCU的时钟设计,因为时钟是任何一个时序系统至关重要的组成部分,必须要设计好它。
1.PLL原理
上图给出了PLL的基本原理图,由于本人是做PLL的,可能说的有些笼统,如果有不明白的可以回帖问。简述一下功能,PFD是鉴频鉴相器,PUMP是电荷泵,两个模块组合起来可以通过比较输入时钟信号和反馈时钟信号的频率以及相位来控制环路滤波器(Loop Filter)的电压,从而实现控制VCO(振荡器)的频率,得到我们想要的时钟。P/M/S可以理解成分频器控制逻辑,通过三个控制字,是PLL输出频率的选择更加方便,目标频率的计算方法如下:
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #2561同步于 2008/11/17
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖
嵌入式硬件知识----板级系统(PLL和功耗管理)
fzylijun886
2008/11/17镜像同步7 回复
订阅后,新回复会通过你的通知中心匿名送达。
7 条回复
其中,MPLLCAP/UPLLCAP为外接电容,如图中所示,建议为5pF,Fin段的时钟建议取10~20MHz,端接电容取15~22pF,见下表:
最上端的2410连接图已经给出了PLL配置端口的引出线,下面给出另一端的连接方法:
从途中可以看出,晶振取用的12MHz,电容为18pF,均满足手册的建议取值,经过调试可以放心使用。
有的人可能不明白为什么有个外面的晶振,请看下图:
图中有两个外部时钟的输入端,EXTCLK表示用的外部振荡器输出端作为输入,而XTIpll可以理解成二端口网络且输出是一个震荡信号。
有的人可能会问,既可以用外部时钟源,又可以用晶振,那么系统是如何实现两种方式的选择呢?实际上,在时钟输入端有一个二路选择器,通过配置控制信号就可以实现输入信号的选择,配置规则见下表:
OM[3:2]配置时钟使用策略。需要注意的是在重写寄存器MPLLCON的值之前,晶振时钟或者外部时钟将直接传入系统,因此无论配置值是否改变,我们都需要重写MPLLCON寄存器。
下图描述了整个SOC的时钟分配原理,我们首先分析左上角部分。
如图所示,FCLK提供CPU时钟;
HCLK提供AHB总线时钟,存储控制器时钟,中断控制器时钟,LCD控制器时钟以及DMA和USB模块时钟;
PCLK提供APB总线时钟,WDT(看门狗),IIS,IIC,PWM,MMC,ADC,UART,SPI,GPIO,RTC的时钟;
下表给出了对PLL进行不同分频配置值时,系统的工作频率。
顶啊
【 在 fzylijun886 的大作中提到: 】
: 经过了前面的介绍,今后开始从MCU的角度讲解嵌入式系统硬件设计的相关知识。我将会以2410为例简要逐步介绍并分析pcb板级系统原理图的设计。
: 首先,介绍2410这款MCU的接口,由于接口数量较多,因此分成两部分进行描述。
:
: ...................
2. 功耗管理
实际上,通过软件配置时钟的分配策略可以达到节省功耗的效果,各模式下系统的工作情况如下表所示:
可以看出,功耗管理模块有四种模式。它们分别为:正常,慢速,空闲,关闭
1.正常
最大功耗模式,所有外围电路都可以通过软件配置
2.慢速
没有PLL的工作模式,它使用外部时钟XTIPLL或者EXTCLK充当FCLK提供MCU的工作时钟。
3.空闲
断开FCLK和CPU的连接,节省MCU的功耗
4.关闭
该状态下MCU和内部逻辑电路均没有功耗,跳出该模式可以通过EINT[15:0]或者RTC中断完成。
上图显示了功耗管理模块是如何通过控制时钟分配策略来进行功耗管理的。需要注意的是,当进入慢速状态时,FCLK需要进行分频以使系统工作在较低的频率上。这个分频值是通过SLOW_VAL来设置的,具体规则如下:
没写过usb驱动
我想问下,为什么usbhost需要upll和hclk两种时钟
而usbdevice需要upll和pclk两种时钟呢
【 在 fzylijun886 的大作中提到: 】
: 2. 功耗管理
: 实际上,通过软件配置时钟的分配策略可以达到节省功耗的效果,各模式下系统的工作情况如下表所示:
:
: ...................