一种面向软件开发的时钟树建模方法技术

技术编号:27657177 阅读:13 留言:0更新日期:2021-03-12 14:20
本发明专利技术提出一种面向软件开发的时钟树建模方法,通过本发明专利技术建立的时钟树模型中的基本元素既包括叶节点时钟的频率值,也包括时钟树中各电路器件的取值,因此既能支撑时钟树配置软件使用,也能作为完整硬件平台中的一个模块,提供各部件的工作频率;设计简洁统一,仅使用直属父系关系,完整描述时钟树中各组件的电路关系和逻辑关系,建立时钟树的拓扑结构;使用XML Schema技术定义时钟树模型,方便生成多种语言(如Java、C++)的访问类,便于实际访问使用。

【技术实现步骤摘要】
一种面向软件开发的时钟树建模方法
本专利技术涉及软件开发
,尤其是一种面向软件开发的时钟树建模方法。
技术介绍
时钟树又称时钟分布网络,包括从时钟源到达每个终端时钟的电路以及其中的部件。时钟源一般称为时钟根节点,终端时钟称为时钟叶节点,叶节点为芯片各部件提供时钟信号。时钟树相关的软件工具包括能耗评估软件、引导装载程序、时钟树配置工具、操作系统、板级支持包(BSP)等,均需要读取或者配置各部件的时钟频率。目前,硬件平台描述规范将工作频率视为硬件系统的重要元素。例如,多核联盟提出的SHIM规范使用OperatingPointSet罗列各组件可能的频率点;Devicetree规范在CPU节点中使用clock-frequency和timebase-frequency描述CPU的工作频率。然而,二者都未建立时钟树模型,对需要对时钟树中各部件进行配置的软件缺乏支撑能力。此外,现代硬件平台中,为了在保证运算性能的前提下优化功耗,通常需要对主频和各组件频率进行动态调节,如果将每个频率或分频器配置都硬编码到软件中,会降低软件的可重用性。
技术实现思路
针对现有软件开发过程中存在的时钟树描述问题,本专利技术提出一种面向软件开发的时钟树建模方法,通过该方法建立时钟树描述模型,为时钟树相关的软件开发提供统一的软硬件接口,缩短软件开发周期,提高软件可重用性。本专利技术保护一种面向软件开发的时钟树建模方法,包括以下步骤:步骤1,分析时钟树中的基本元素并进行抽象概括,基本元素包括时钟频率、分频器、倍频器和多路选择器;步骤2,分析时钟树中各基本元素之间的输入输出关系并进行抽象概括,输入输出关系包括直属父系关系;步骤3,按照基本元素构建不同集合,汇总时钟频率构建时钟集合,汇总分频器和倍频器构建分频器-倍频器集合,汇总多路选择器构建多路选择器集合,同类集合可嵌套;步骤4,建立最顶层集合,该集合包含1-M个时钟集合,0-N个分频器-倍频器集合,0-L个多路选择器集合,形成时钟树模型。进一步的,时钟频率至少包含name、id、frequency、frequencyUnit的属性,其中name表示名称,id为全局唯一字符串,frequency表示时钟频率数值,frequencyUnit表示时钟频率单位;分频器和倍频器至少包含name、id、value、type的属性,其中name表示名称,id为全局唯一字符串,value表示分频器或倍频器的取值,type为器件类型,即是倍频器或分频器;多路选择器至少包含name、id、value的属性,其中name表示名称,id为全局唯一字符串,value表示输出信号选择第几路输入信号。进一步的,各基本元素之间直属父系关系通过为基本元素增加直属父系属性来限定;对于时钟频率、分频器和倍频器,其直属父系仅有一个,通过增加parentRef属性来限定,其中parentRef的值为直属父系元素的id;对于多路选择器,其直属父系通常为2个,通过2个parentRef属性来限定,2个parentRef的值分别为其2个直属父系元素的id。通过本专利技术建立的时钟树模型中的基本元素既包括叶节点时钟的频率值,也包括时钟树中各电路器件的取值,因此既能支撑时钟树配置软件使用,也能作为完整硬件平台中的一个模块,提供各部件的工作频率;设计简洁统一,仅使用直属父系关系,完整描述时钟树中各组件的电路关系和逻辑关系,建立时钟树的拓扑结构。附图说明图1为时钟树的模型规范;图2为实施例2中实例图示;图3为实施例3中实例图示。具体实施方式下面结合附图和具体实施方式对本专利技术作进一步详细的说明。本专利技术的实施例是为了示例和描述起见而给出的,而并不是无遗漏的或者将本专利技术限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显而易见的。选择和描述实施例是为了更好说明本专利技术的原理和实际应用,并且使本领域的普通技术人员能够理解本专利技术从而设计适于特定用途的带有各种修改的各种实施例。实施例1一种面向软件开发的时钟树建模方法,包括以下步骤:1、分析时钟树中的基本元素并进行抽象概括,仅从软件视角出发,抽象概括出的基本元素包括时钟频率、分频器、倍频器和多路选择器。时钟频率包括时钟源或参考时钟、PLL输出时钟和各种终端时钟,本专利技术使用Clock:<name,id,frequency,frequencyUnit>描述,其中name表示名称,通常为便于识别的字符串,id为全局唯一字符串,frequency表示时钟频率数值,frequencyUnit表示时钟频率单位,枚举包括KHz、MHz、GHz。分频器是指使输出信号频率等于输入信号频率N分之一的电路,倍频器是指使输出信号频率等于输入信号频率M倍的电路,其中N和M通常为正整数。本专利技术使用MultiDivisor:<name,id,value,type>描述,其中name、id含义同上,value表示分频器或倍频器的取值,type为器件类型,枚举包括倍频器、分频器。多路选择器选择多个输入信号中的一个并输出该信号,本专利技术使用Selector:<name,id,value>描述,其中name、id含义同上,value表示输出信号选择第几路输入信号。2、分析时钟树中各基本元素之间的输入输出关系并进行抽象概括,本专利技术使用直属父系关系表示各基本元素之间的输入输出关系。更直白的表达就是,若元素B是元素A的输出信号之一,则元素A为元素B的直属父系,对步骤1中定义的各基本元素模型中增加直属父系属性parentRef。对于时钟,其直属父系仅有一个,且通常为分频器、倍频器或多路选择器。在时钟频率模型中增加直属父系属性,Clock:<name,id,frequency,frequencyUnit,parentRef>描述,其中parentRef的值为其直属父系的id。对于分频器或倍频器,其直属父系仅有一个,且通常为时钟、其他分频器或倍频器、多路选择器。在分频器和倍频器的模型中增加直属父系属性,MultiDivisor:<name,id,value,type,parenentRef>,其中parentRef的值为其直属父系的id。对于多路选择器,其直属父系通常有2个,且为时钟、分频器、倍频器、其他多路选择器。在多路选择器模型中增加直属父系属性Selector:<name,id,value,no0ParentRef,no1ParentRef>,其中no0ParentRef的值为其第一个直属父系的id,no1ParentRef的值为其第二个直属父系的id,value=0表示选取no0ParentRef作为多路选择器的输出信号,value=1表示选取no1ParentRef作为多路选择器的输出信号。3、按照基本元素构建不同集合,汇总时钟频率构建时钟集合ClockSet,汇总分频器和倍频器构建分频器-倍频器集合MultiDivisorSe本文档来自技高网...

【技术保护点】
1.一种面向软件开发的时钟树建模方法,其特征在于,包括以下步骤:/n步骤1,分析时钟树中的基本元素并进行抽象概括,基本元素包括时钟频率、分频器、倍频器和多路选择器;/n步骤2,分析时钟树中各基本元素之间的输入输出关系并进行抽象概括,输入输出关系包括直属父系关系;/n步骤3,按照基本元素构建不同集合,汇总时钟频率构建时钟集合,汇总分频器和倍频器构建分频器-倍频器集合,汇总多路选择器构建多路选择器集合,同类集合可嵌套;/n步骤4,建立最顶层集合,该集合包含1-M个时钟集合,0-N个分频器-倍频器集合,0-L个多路选择器集合,形成时钟树模型。/n

【技术特征摘要】
1.一种面向软件开发的时钟树建模方法,其特征在于,包括以下步骤:
步骤1,分析时钟树中的基本元素并进行抽象概括,基本元素包括时钟频率、分频器、倍频器和多路选择器;
步骤2,分析时钟树中各基本元素之间的输入输出关系并进行抽象概括,输入输出关系包括直属父系关系;
步骤3,按照基本元素构建不同集合,汇总时钟频率构建时钟集合,汇总分频器和倍频器构建分频器-倍频器集合,汇总多路选择器构建多路选择器集合,同类集合可嵌套;
步骤4,建立最顶层集合,该集合包含1-M个时钟集合,0-N个分频器-倍频器集合,0-L个多路选择器集合,形成时钟树模型。


2.根据权利要求1所述的面向软件开发的时钟树建模方法,其特征在于,时钟频率至少包含name、id、frequency、frequencyUnit的属性,其中name表示名称,id为全局唯一字符串,frequency表示时钟频率数值,frequencyUnit表示时钟频率单位;...

【专利技术属性】
技术研发人员:蔡顺
申请(专利权)人:安徽芯纪元科技有限公司
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1