一种适用于高性能网络处理器芯片的时钟发生器转让专利

申请号 : CN201910524568.6

文献号 : CN110221650B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨惠李韬吕高锋赵国鸿毛席龙冯振乾全巍刘汝霖熊智挺

申请人 : 中国人民解放军国防科技大学

摘要 :

本发明涉及一种适用于高性能网络处理器的时钟发生器,是一种高性能网络处理器芯片中的一种启动时钟频率硬件可选,运行软件可调节、低代价、设计简单灵活、具备提供定频和变频时钟频率的时钟发生器。包括两大部分,变频时钟产生模块101和定频时钟产生模块201。本发明的时钟发生器频率实时可选可配,支持芯片运行过程中的升频和降频,可由软件实时配参,同时能够提供固定的网络接口参考时钟频率;定频时钟模块和变频时钟模块共享外部BOOTMODE启动端口,在保证对外部晶振低频时钟更好兼容性的同时,最大降低硬件代价。本发明具有原理简单、硬件代价低、时钟产生灵活、频率实时可选可配的特点,能够支持最前沿网络应用中各类高性能网络处理器芯片的全芯片时钟产生。

权利要求 :

1.一种适用于高性能网络处理器芯片的时钟发生器,包括两大部分,变频时钟产生模块(101)和定频时钟产生模块(201),还包含: BOOT端口启动模块(000),其特征在于:所述变频时钟产生模块包括:第一外部晶体振荡器、第一基本时钟产生锁相环模块、第一端口配置控制模块(102)、变频参数配置模块(103)、第一时钟切换单元、第一时钟分频单元(104);

所述定频时钟产生模块包括:第二外部晶体振荡器、第二基本时钟产生锁相环模块、第二端口配置控制模块(202)、第二时钟切换单元、第二时钟分频单元、第三时钟分频单元(203);

所述第一外部晶体振荡器及第二外部晶体振荡器用于为网络处理器芯片所需的可变频系统时钟和定频参考时钟的提供低频信号;

所述第一基本时钟产生锁相环模块、第二基本时钟产生锁相环模块将低频晶振时钟信号倍频到网络处理器所需的高频时钟;

所述BOOT端口启动模块(000)支持芯片的端口启动配置,在上电芯片引脚复位上升沿锁定BOOTMODE配置信息,根据配置启动变频时钟产生模块和定频时钟产生模块,在完成基本时钟产生锁相环模块的LOCK后,通知芯片复位模块;

所述第一端口配置控制模块(102)复用芯片引脚,实现芯片BOOT启动时时钟频率的灵活配置,根据锁定的BOOTMODE配置信息来配置第一基本时钟产生锁相环模块的控制寄存器,所述第二端口配置控制模块(202 )复用芯片引脚,实现芯片BOOT启动时时钟频率的灵活配置,根据锁定的BOOTMODE配置信息来配置第二基本时钟产生锁相环模块的控制寄存器;

变频时钟产生模块(101)和定频时钟产生模块(201)均支持BOOTMODE端口的启动配置,在复位信号的上升沿锁定BOOTMODE配置信息,定频时钟产生模块(201)通过拨码开关BOOTMODE端口,在第二端口配置控制模块(202)中实现不同的配置参数,因此芯片引脚拨码开关是复用的,内部状态定义不同即可在上电时锁定成不同的配置信息;

所述变频参数配置模块(103)实现在芯片运行过程中,下发第一基本时钟产生锁相环模块配置信息,并控制实现时钟频率的改变;

所述第一时钟切换单元实现第一外部晶体振荡器的低频时钟与第一基本时钟产生锁相环模块倍频产生的高频时钟间的频率切换,所述第二时钟切换单元实现第二外部晶体振荡器的低频时钟与第二基本时钟产生锁相环模块倍频产生的高频时钟间的频率切换;

所述第一时钟分频单元(104)和第三时钟分频单元(203)根据芯片系统时钟与接口参考时钟的频率,将高频时钟分频到相应频率;

所述时钟发生器的配置流程为:高性能网络处理器芯片上电之前,通过拨码开关配置BOOTMODE,芯片上电之后,根据BOOTMODE产生相应的稳定时钟,芯片启动之后,通过配置来改变芯片的工作频率,配置序列如下:

1) 将第一基本时钟产生锁相环模块、第二基本时钟产生锁相环模块中的BYPASS控制模式位置位,等待外部晶振若干个时钟周期,保证基本时钟产生锁相环模块切换到BYPASS模式;

2) 关断第一基本时钟产生锁相环模块、第二基本时钟产生锁相环模块;

3) 设置时第一基本时钟产生锁相环模块、第二基本时钟产生锁相环模块的输入控制信号,包括倍频及分频参数;

4) 至少等待1us后将第一基本时钟产生锁相环模块、第二基本时钟产生锁相环模块打开;

5) 查询第一基本时钟产生锁相环模块、第二基本时钟产生锁相环模块是否LOCK,如果是,执行步骤6,否则继续等待;

6) 将第一基本时钟产生锁相环模块、第二基本时钟产生锁相环模块配置成非BYPASS模式,即将系统时钟切换到PLL模式。

2.根据权利要求1所述的一种适用于高性能网络处理器芯片的时钟发生器,其特征在于:

作为进一步改进:

所述变频时钟产生模块(101)用于给高性能网络处理器芯片系统运行和锁相环控制寄存器、低速外设提供时钟,该时钟频率可变,以使网络处理器芯片运行在不同的频率上,变频时钟产生模块(101)支持BOOTMODE端口的多种启动配置,支持芯片运行过程中的升频和降频,由软件实时配参;

所述定频时钟产生模块(201)用于给高性能网络处理器芯片的高速网络接口提供固定的参考时钟,复用变频时钟产生模块(101)的BOOTMODE端口,在降低硬件代价的同时,保证和变频时钟产生模块(101)实现功能隔离,互不干扰;

所述定频时钟产生模块(201)支持BOOTMODE端口的启动配置,第二端口配置控制模块(202)接收10~50Mhz频率的外部晶振低频时钟,在第二端口配置控制模块(202)中计算出产生固定第二基本时钟产生锁相环模块所需要的控制参数,即接收外部晶振产生的10~

50Mhz的多种时钟频率,最终第二基本时钟产生锁相环模块产生固定的高频参考时钟输出。

3.根据权利要求1所述的一种适用于高性能网络处理器芯片的时钟发生器,其特征在于:所述变频时钟产生模块(101)和定频时钟产生模块(201)的第一时钟切换单元实现外部晶振低频时钟和固定的高频时钟之间的切换,在变频时钟产生模块(101)和定频时钟产生模块(201)的第一基本时钟产生锁相环模块未LOCK之前,变频时钟产生模块(101)和定频时钟产生模块(201)的第一时钟切换单元的输出为外部晶振的低频时钟。

说明书 :

一种适用于高性能网络处理器芯片的时钟发生器

技术领域

[0001] 本发明涉及面向网络处理的高性能网络处理器芯片中时钟发生器,特指在高性能网络处理器芯片中的一种启动时钟频率硬件可选,运行软件可调节、具备提供定频和变频
时钟频率的时钟发生器。

背景技术

[0002] 网络处理能力的进步,很大程度上依赖硬件技术的进步。当前网络处理应用复杂性的不断提升、吞吐量的持续增长和路由协议的不断演进,对网络处理硬件的性能要求越
来越高,高性能网络处理器芯片往往集成复杂处理逻辑和10G及以上高速网络接口,芯片设
计在更高速的处理能力平衡和较低的功耗之间寻求平衡。
[0003] 时钟发生器是高性能网络处理器芯片的核心模块,用来产生芯片内逻辑处理和高速网络接口的时钟信号。网络处理器芯片中逻辑处理部分时钟频率越高,芯片的处理速度
越快,处理功能就越强大;同时高速网络接口的参考时钟频率又是固定的,需要时钟发生器
提供稳定的参考时钟。因此,需要针对网络处理器芯片设计灵活的时钟发生器,以适应芯片
内各个部分的性能及功能需求,同时降低设计代价。
[0004] 目前芯片的时钟发生器基本上都采用了片外的晶体振荡器配合片内时钟锁相环的方式来实现。其中片外的晶体振荡器提供高质量的时钟源,频率一般在1~50MHz范围,片
上的时钟锁相环电路用来将该频率倍频到芯片需要的时钟频率,通过该种方法获得的时钟
频率具有低抖动,质量高的特点,因此保证了芯片能够在高速的时钟频率下稳定运行。
[0005] 现有技术存在以下弊端:芯片片内对变频和定频时钟需求的多样性,使得基本时钟产生锁相环PLL数量增加,从而导致启动BOOT模式的拨码开关增多,占用过多的芯片引
脚;不同的应用场景对芯片的性能和功耗有不同的要求,芯片内逻辑处理单元在芯片初始
化或运行过程中,可能会调节到不同的时钟频率下运行,然而网络处理器芯片的高速网络
接口必须固定在一定的参考时钟下运行,需求的多样性带来了设计的复杂性。
[0006] 综上所述,需针对网络应用和网络处理器芯片的特征,提供一种低代价的、设计简单、灵活的时钟发生器为网络处理器芯片提供时钟,以满足网络处理器芯片的设计需求。

发明内容

[0007] 针对现有技术存在的问题,本发明特提供一种高性能网络处理器芯片中的一种启动时钟频率硬件可选,运行软件可调节、低代价、设计简单灵活、具备提供定频和变频时钟
频率的时钟发生器。
[0008] 为解决上述技术问题,本发明采用以下技术方案:
[0009] 一种适用于高性能网络处理器的灵活时钟发生器,其特征在于:包括两大部分,变频时钟产生模块101和定频时钟产生模块201,还包含: BOOT端口启动模块000,
[0010] 其中变频时钟产生模块包括:外部晶体振荡器、基本时钟产生锁相环模块001、第一端口配置控制模块102、变频参数配置模块103、时钟切换单元002、第一时钟分频单元
104;
[0011] 定频时钟产生模块包括:外部晶体振荡器、基本时钟产生锁相环模块001、第二端口配置控制模块202、时钟切换单元002、第二时钟分频单元、第三时钟分频单元203;
[0012] 所述外部晶体振荡器用于为网络处理器芯片所需的可变频系统时钟和定频参考时钟的提供低频信号;基本时钟产生锁相环模块001将低频晶振时钟信号倍频到网络处理
器所需的高频时钟;BOOT端口启动模块000支持芯片的端口启动配置,在上电芯片引脚复位
上升沿锁定BOOTMODE配置信息,根据配置启动变频时钟产生模块和定频时钟产生模块,在
完成PLL的LOCK后,通知芯片复位模块;第一端口配置控制模块102和第二端口配置控制模
块202,复用芯片引脚,实现芯片BOOT启动时时钟频率的灵活配置,根据锁定的BOOTMODE配
置信息来配置基本时钟产生锁相环模块001的控制寄存器;变频参数配置模块103实现在芯
片运行过程中,软件下发基本时钟产生锁相环模块001配置信息,并控制实现时钟频率的改
变;时钟切换单元002实现外部晶体振荡器的低频时钟与基本时钟产生锁相环模块001倍频
产生的高频时钟间的频率切换,在软件配参调整时钟频率时也起到关键作用;第一时钟分
频单元104和第三时钟分频单元203根据芯片系统时钟与接口参考时钟的频率,将高频时钟
分频到相应频率。
[0013] 作为本发明的进一步改进:
[0014] 所述变频时钟产生模块101用于给高性能网络处理器芯片系统运行和锁相环控制寄存器、低速外设等提供时钟,该时钟频率可变,以使网络处理器芯片运行在多种不同的频
率上,满足工作场景和性能需求。变频时钟产生模块101支持BOOTMODE端口的多种启动配
置,支持芯片运行过程中的升频和降频,可由软件实时配参。
[0015] 所述定频时钟产生模块201用于给高性能网络处理器芯片的高速网络接口提供固定的参考时钟,复用变频时钟产生模块101的BOOTMODE端口,在降低硬件代价的同时,保证
和变频时钟产生模块101实现功能隔离,互不干扰。定频时钟产生模块201同样支持
BOOTMODE端口的启动配置,与变频时钟产生模块101不同,配置模块接收不同频率的外部晶
振低频时钟,在配置模块中计算出产生固定时钟频率是基本时钟产生锁相环模块001所需
要的控制参数,即可接收外部晶振产生的10~50Mhz的多种时钟频率,但最终基本时钟产生
锁相环模块001会产生相同的固定的高频参考时钟输出。
[0016] 所述时钟切换单元实现外部晶振低频时钟和固定的高频时钟之间的切换,在基本时钟产生锁相环模块001未LOCK之前,时钟切换单元的输出为外部晶振的低频时钟。
[0017] 与现有技术相比,本发明原理简单、硬件代价低、时钟产生灵活、频率实时可选可配,能够为高性能网络处理器芯片提供时钟,满足网络处理器芯片的设计需求,并有自己独
有的优点:
[0018] (1)频率实时可选可配,支持芯片运行过程中的升频和降频,可由软件实时配参,同时能够提供固定的网络接口参考时钟频率;
[0019] (2)硬件代价低,定频时钟模块和变频时钟模块共享外部BOOTMODE启动端口,在保证对外部晶振低频时钟更好兼容性的同时,最大降低硬件代价。

附图说明

[0020] 图1是具有本发明适用于高性能网络处理器的灵活时钟发生器的总体框架示意图,
[0021] 图2是高性能网络处理器的灵活时钟发生器的配置流程,
[0022] 图3是定频时钟产生模块201的一种实现实例。

具体实施方式

[0023] 该时钟发生器既能够通过变频时钟调整网络处理器芯片总体性能和功耗,又能够提供网络处理器芯片专注的千兆和万兆高速传输接口的稳定参考时钟频率,同时复用
BOOTMODE下的芯片管脚和内部逻辑,降低芯片设计代价。
[0024] 以下将结合说明书附图和具体实施例对本发明做进一步详细说明。
[0025] 如图1所示,为构建具有本发明适用于高性能网络处理器的灵活时钟发生器的总体框架示意图。主要由两大部分构成变频时钟产生模块101和定频时钟产生模块201,其包
含:外部晶体振荡器、BOOT端口启动模块000、用于变频和定频时钟产生的基本时钟产生锁
相环模块001、第一端口配置控制模块102、变频参数配置模块103、时钟切换单元002、第一
时钟分频单元104。外部晶体振荡器用于为网络处理器芯片所需的可变频系统时钟和定频
参考时钟的提供低频信号;基本时钟产生锁相环模块001将低频晶振时钟信号倍频到网络
处理器所需的高频时钟;BOOT端口启动模块000支持芯片的端口启动配置,在上电芯片引脚
复位上升沿锁定BOOTMODE配置信息,根据配置启动变频时钟产生模块和定频时钟产生模
块,在完成PLL的LOCK后,通知芯片复位模块;第一端口配置控制模块102和第二端口配置控
制模块202,复用芯片引脚,实现芯片BOOT启动时时钟频率的灵活配置,根据锁定的
BOOTMODE配置信息来配置基本时钟产生锁相环模块001的控制寄存器;变频参数配置模块
103实现在芯片运行过程中,软件下发基本时钟产生锁相环模块001配置信息,并控制实现
时钟频率的改变;时钟切换单元002实现外部晶体振荡器的低频时钟与基本时钟产生锁相
环模块001倍频产生的高频时钟间的频率切换,在软件配参调整时钟频率时也起到关键作
用;第一时钟分频单元104和第三时钟分频单元203根据芯片系统时钟与接口参考时钟的频
率,将高频时钟分频到相应频率。
[0026] 变频时钟产生模块101主要用于给高性能网络处理器芯片系统运行和锁相环控制寄存器、低速外设等提供时钟,变频时钟产生模块101支持BOOTMODE端口的启动配置,在芯
片引脚复位的上升沿锁定BOOTMODE配置信息,根据配置启动基本时钟产生锁相环模块001,
变频时钟产生模块101支持多种端口启动配置,既可接收外部晶振产生的10 50Mhz的多种
~
时钟频率,又可以根据BOOTMODE信息配置多种锁相环控制信息,包括倍频分频系数等,支持
硬件在一定的时钟频率范围可选。变频时钟产生模块101支持芯片运行过程中的升频和降
频,可由软件实时配参。该过程简要描述如下,软件写入通知变频时钟产生模块101改变基
本时钟产生锁相环模块001的控制信息切换频率,软件下发到变频参数配置模块103新的控
制参数,同时时钟切换单元002将时钟频率切换到低频外部晶振频率,基本时钟产生锁相环
模块001按照软件配置参数生成新的高频时钟后,002再将时钟频率切换到基本时钟产生锁
相环模块001产生的新的高频时钟,完成软件实时变频。芯片内的主要逻辑处理路径运行在
高频时钟下,另外一些如锁相环控制寄存器的工作频率、低速外设等慢速部件不需要运行
在与系统时钟相同的高频时钟下,因此通过第一时钟分频单元104,产生各个部分对应的时
钟频率。
[0027] 定频时钟产生模块201主要用于给高性能网络处理器芯片的高速网络接口提供固定的参考时钟,尽量复用已有的硬件代价,同时和变频时钟产生模块101实现功能隔离,互
不干扰。常用的高速网络千兆网络接口参考时钟为125Mhz,万兆网络接口参考时钟为
156.25Mhz,网络接口参考时钟频率固定,改变频率会造成网络接口无法工作,为支持外部
晶振的不同低频接入,定频时钟产生模块201同样支持BOOTMODE端口的启动配置,在芯片引
脚复位的上升沿锁定BOOTMODE配置信息,并将配置信息写入第二端口配置控制模块202,与
变频时钟产生模块101不同,配置模块接收不同频率的外部晶振低频时钟,在配置模块中计
算出产生固定时钟频率基本时钟产生锁相环模块001所需要的控制参数,即可接收外部晶
振产生的10~50Mhz的多种时钟频率,但最终基本时钟产生锁相环模块001会产生相同的固
定的高频参考时钟输出。因此变频时钟产生模块101和第一端口配置控制模块102复用
BOOTMODE端口,由第一端口配置控制模块102和第二端口配置控制模块202实现控制信息的
计算。时钟切换单元实现外部晶振低频时钟和固定的高频时钟之间的切换,在基本时钟产
生锁相环模块001未LOCK之前,时钟切换单元的输出为外部晶振的低频时钟,由于千兆网络
接口和万兆网络接口所需的参考时钟频率不同,因此通过两种时钟分频器生成所需的固定
参考时钟。
[0028] 如图2所示,为高性能网络处理器的灵活时钟发生器的配置流程。高性能网络处理器芯片上电之前,通过拨码开关配置BOOTMODE,芯片上电之后,系统会根据BOOTMODE产生相
应的稳定时钟。芯片启动之后,可通过软件配置来改变芯片的工作频率,配置序列如下:
[0029] 1) 将基本时钟产生锁相环模块001中的BYPASS控制模式位置位,等待外部晶振若干个时钟周期,保证基本时钟产生锁相环模块001切换到BYPASS模式;
[0030] 2) 关断基本时钟产生锁相环模块001;
[0031] 3) 设置时基本时钟产生锁相环模块001的输入控制信号,包括倍频及分频参数等如:PLLD,PLLM,BYPASS,POSTDIV1,POSTDIV2;
[0032] 4) 至少等待1us后将基本时钟产生锁相环模块001打开;
[0033] 5) 查询基本时钟产生锁相环模块001是否LOCK,如果是,执行步骤6,否则继续等待;
[0034] 6) 将基本时钟产生锁相环模块001配置成非BYPASS模式,即将系统时钟切换到PLL模式。
[0035] 如图3所示,为定频时钟产生模块201的一种实现实例。为了使本发明的技术方案更加清楚明白,结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述
的具体实施例仅仅用以解释本发明,并不用于限定本发明。B_PLL是指图1中的基本时钟产
生锁相环模块001基本时钟产生PLL,B_PLL控制同步逻辑表示图1中的第二端口配置控制模
块202。通过B_PLL控制同步逻辑通过配置PLL的REFDIV、FBDIV、POSTDIV1、POSTDIV2等参数,
产生1.25GHz的频率,用于生成到万兆以太网、千兆GMAC的参考时钟。PLL单元通过配置B_
PLL控制同步逻辑中的相应寄存器可关断。通过对1.25G的时钟10分频产生发送到GMAC的时
钟,为保证时钟信号的稳定,消除毛刺,再经过一级二选一时钟切换单元,时钟切换单元的
输入端为外部晶振低频时钟CLKB和125M的10分频时钟,经二选一时钟切换单元,产生GMAC
稳定的参考时钟。同样,万兆参考时钟的产生,也经过一级二选一时钟切换单元,时钟切换
单元的输入端为外部晶振低频时钟CLKB和156.25M的八分频时钟,经二选一时钟切换单元,
产生万兆以太网口稳定的参考时钟。二选一时钟切换模块,支持频率切换,并消除毛刺。