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

文档序号:18641640发布日期:2019-09-11 23:26阅读:258来源:国知局
一种适用于高性能网络处理器芯片的时钟发生器的制作方法

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



背景技术:

网络处理能力的进步,很大程度上依赖硬件技术的进步。当前网络处理应用复杂性的不断提升、吞吐量的持续增长和路由协议的不断演进,对网络处理硬件的性能要求越来越高,高性能网络处理器芯片往往集成复杂处理逻辑和10g及以上高速网络接口,芯片设计在更高速的处理能力平衡和较低的功耗之间寻求平衡。

时钟发生器是高性能网络处理器芯片的核心模块,用来产生芯片内逻辑处理和高速网络接口的时钟信号。网络处理器芯片中逻辑处理部分时钟频率越高,芯片的处理速度越快,处理功能就越强大;同时高速网络接口的参考时钟频率又是固定的,需要时钟发生器提供稳定的参考时钟。因此,需要针对网络处理器芯片设计灵活的时钟发生器,以适应芯片内各个部分的性能及功能需求,同时降低设计代价。

目前芯片的时钟发生器基本上都采用了片外的晶体振荡器配合片内时钟锁相环的方式来实现。其中片外的晶体振荡器提供高质量的时钟源,频率一般在1~50mhz范围,片上的时钟锁相环电路用来将该频率倍频到芯片需要的时钟频率,通过该种方法获得的时钟频率具有低抖动,质量高的特点,因此保证了芯片能够在高速的时钟频率下稳定运行。

现有技术存在以下弊端:芯片片内对变频和定频时钟需求的多样性,使得基本时钟产生锁相环pll数量增加,从而导致启动boot模式的拨码开关增多,占用过多的芯片引脚;不同的应用场景对芯片的性能和功耗有不同的要求,芯片内逻辑处理单元在芯片初始化或运行过程中,可能会调节到不同的时钟频率下运行,然而网络处理器芯片的高速网络接口必须固定在一定的参考时钟下运行,需求的多样性带来了设计的复杂性。

综上所述,需针对网络应用和网络处理器芯片的特征,提供一种低代价的、设计简单、灵活的时钟发生器为网络处理器芯片提供时钟,以满足网络处理器芯片的设计需求。



技术实现要素:

针对现有技术存在的问题,本发明特提供一种高性能网络处理器芯片中的一种启动时钟频率硬件可选,运行软件可调节、低代价、设计简单灵活、具备提供定频和变频时钟频率的时钟发生器。

为解决上述技术问题,本发明采用以下技术方案:

一种适用于高性能网络处理器的灵活时钟发生器,其特征在于:包括两大部分,变频时钟产生模块101和定频时钟产生模块201,还包含:boot端口启动模块000,

其中变频时钟产生模块包括:外部晶体振荡器、基本时钟产生锁相环模块001、端口配置控制模块102、变频参数配置模块103、时钟切换单元002、时钟分频单元104;

定频时钟产生模块包括:外部晶体振荡器、基本时钟产生锁相环模块001、端口配置控制模块202、时钟切换单元002、时钟分频单元201、时钟分频单元203;

所述外部晶体振荡器用于为网络处理器芯片所需的可变频系统时钟和定频参考时钟的提供低频信号;基本时钟产生锁相环模块001将低频晶振时钟信号倍频到网络处理器所需的高频时钟;boot端口启动模块000支持芯片的端口启动配置,在上电芯片引脚复位上升沿锁定bootmode配置信息,根据配置启动变频时钟产生模块和定频时钟产生模块,在完成pll的lock后,通知芯片复位模块;端口配置控制模块102和202,复用芯片引脚,实现芯片boot启动时时钟频率的灵活配置,根据锁定的bootmode配置信息来配置基本时钟产生锁相环模块001的控制寄存器;变频参数配置模块103实现在芯片运行过程中,软件下发基本时钟产生锁相环模块001配置信息,并控制实现时钟频率的改变;时钟切换单元002实现外部晶体振荡器的低频时钟与基本时钟产生锁相环模块001倍频产生的高频时钟间的频率切换,在软件配参调整时钟频率时也起到关键作用;时钟分频单元104和203根据芯片系统时钟与接口参考时钟的频率,将高频时钟分频到相应频率。

作为本发明的进一步改进:

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

所述定频时钟产生模块201用于给高性能网络处理器芯片的高速网络接口提供固定的参考时钟,复用101的bootmode端口,在降低硬件代价的同时,保证和变频时钟产生模块101实现功能隔离,互不干扰。201同样支持bootmode端口的启动配置,与101不同,配置模块接收不同频率的外部晶振低频时钟,在配置模块中计算出产生固定时钟频率001所需要的控制参数,即可接收外部晶振产生的10~50mhz的多种时钟频率,但最终001会产生相同的固定的高频参考时钟输出。

所述时钟切换单元实现外部晶振低频时钟和固定的高频时钟之间的切换,在基本时钟产生锁相环模块001未lock之前,时钟切换单元的输出为外部晶振的低频时钟。

与现有技术相比,本发明原理简单、硬件代价低、时钟产生灵活、频率实时可选可配,能够为高性能网络处理器芯片提供时钟,满足网络处理器芯片的设计需求,并有自己独有的优点:

(1)频率实时可选可配,支持芯片运行过程中的升频和降频,可由软件实时配参,同时能够提供固定的网络接口参考时钟频率;

(2)硬件代价低,定频时钟模块和变频时钟模块共享外部bootmode启动端口,在保证对外部晶振低频时钟更好兼容性的同时,最大降低硬件代价。

附图说明

图1是具有本发明适用于高性能网络处理器的灵活时钟发生器的总体框架示意图,

图2是高性能网络处理器的灵活时钟发生器的配置流程,

图3是201的一种实现实例。

具体实施方式

该时钟发生器既能够通过变频时钟调整网络处理器芯片总体性能和功耗,又能够提供网络处理器芯片专注的千兆和万兆高速传输接口的稳定参考时钟频率,同时复用bootmode下的芯片管脚和内部逻辑,降低芯片设计代价。

以下将结合说明书附图和具体实施例对本发明做进一步详细说明。

如图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根据芯片系统时钟与接口参考时钟的频率,将高频时钟分频到相应频率。

变频时钟产生模块101主要用于给高性能网络处理器芯片系统运行和锁相环控制寄存器、低速外设等提供时钟,101支持bootmode端口的启动配置,在芯片引脚复位的上升沿锁定bootmode配置信息,根据配置启动001,101支持多种端口启动配置,既可接收外部晶振产生的10~50mhz的多种时钟频率,又可以根据bootmode信息配置多种锁相环控制信息,包括倍频分频系数等,支持硬件在一定的时钟频率范围可选。101支持芯片运行过程中的升频和降频,可由软件实时配参。该过程简要描述如下,软件写入通知101改变001的控制信息切换频率,软件下发到103新的控制参数,同时时钟切换单元002将时钟频率切换到低频外部晶振频率,001按照软件配置参数生成新的高频时钟后,002再将时钟频率切换到001产生的新的高频时钟,完成软件实时变频。芯片内的主要逻辑处理路径运行在高频时钟下,另外一些如锁相环控制寄存器的工作频率、低速外设等慢速部件不需要运行在与系统时钟相同的高频时钟下,因此通过时钟分频单元104,产生各个部分对应的时钟频率。

定频时钟产生模块201主要用于给高性能网络处理器芯片的高速网络接口提供固定的参考时钟,尽量复用已有的硬件代价,同时和变频时钟产生模块101实现功能隔离,互不干扰。常用的高速网络千兆网络接口参考时钟为125mhz,万兆网络接口参考时钟为156.25mhz,网络接口参考时钟频率固定,改变频率会造成网络接口无法工作,为支持外部晶振的不同低频接入,201同样支持bootmode端口的启动配置,在芯片引脚复位的上升沿锁定bootmode配置信息,并将配置信息写入配置模块202,与101不同,配置模块接收不同频率的外部晶振低频时钟,在配置模块中计算出产生固定时钟频率基本时钟产生锁相环模块001所需要的控制参数,即可接收外部晶振产生的10~50mhz的多种时钟频率,但最终基本时钟产生锁相环模块001会产生相同的固定的高频参考时钟输出。因此101和102复用bootmode端口,由102和202实现控制信息的计算。时钟切换单元实现外部晶振低频时钟和固定的高频时钟之间的切换,在基本时钟产生锁相环模块001未lock之前,时钟切换单元的输出为外部晶振的低频时钟,由于千兆网络接口和万兆网络接口所需的参考时钟频率不同,因此通过两种时钟分频器生成所需的固定参考时钟。

如图2所示,为高性能网络处理器的灵活时钟发生器的配置流程。高性能网络处理器芯片上电之前,通过拨码开关配置bootmode,芯片上电之后,系统会根据bootmode产生相应的稳定时钟。芯片启动之后,可通过软件配置来改变芯片的工作频率,配置序列如下:

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

2)关断基本时钟产生锁相环模块001;

3)设置时基本时钟产生锁相环模块001的输入控制信号,包括倍频及分频参数等如:plld,pllm,bypass,postdiv1,postdiv2;

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

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

6)将基本时钟产生锁相环模块001配置成非bypass模式,即将系统时钟切换到pll模式。

如图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的八分频时钟,经二选一时钟切换单元,产生万兆以太网口稳定的参考时钟。二选一时钟切换模块,支持频率切换,并消除毛刺。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1