总线时序参数配置方法和装置的制作方法

文档序号:6334874阅读:278来源:国知局
专利名称:总线时序参数配置方法和装置的制作方法
技术领域
本发明涉及通信领域,尤其涉及总线时序参数配置方法和装置。
背景技术
总线(Bus)在物理形态上就是一组共用的导线,许多器件挂接其上传输信号,实 现互连和信息交换。所谓总线时序,是指中央处理器(CP^CentralProcessing Unit)对总 线进行操作(例如,读/写、释放总线和中断响应等)时,总线上各个信号之间在时间上的 配合关系,这种配合关系与CPU的操作功能相关。以CPU与闪存(Flash)芯片对接的局部总线(Local Bus,也称为外围总线)为例, CPU对Flash发起的读写操作,必须符合一定的时序,S卩,必须要求片选(CE)、输出使能(OE) 和写使能(WE)等信号保持一定的时间,并且相互配合才能正常工作。例如,当CPU发起读 操作时,在地址、CE和OE信号发出后,外围器件需要在限定的时间内返回数据,并且,数据 的建立/保持时间也必须满足CPU的要求。一个电子设备的CPU小系统可能包含各类硬件存储器件、复杂可编程逻辑器件 (CPLD,Complex Programmable Logic Device)、特殊应用集成电路(Application-specific integrated circuit, ASIC)和现场可编程门阵列(FPGA,Field Programmable Gate Array)等,在开发新单板时,CPU对这些器件的访问操作需要不同的局部总线时序参数。 当单板的数量众多、器件型号各异时,通常,软件开发人员需要通过查找器件手册和CPU手 册,根据硬件的布线情况对CPU进行局部总线时序参数配置。在获得硬件反馈的测量结果 后,进一步调整这些参数的配置,最终得出合适的参数,并固化到初始化程序中。由于硬件布线的原因,实际应该配置的局部总线时序参数可能与手册中提供的参 考值存在一定差异,因此需要人工反复调试。然而,人工调试和配置这些局部总线时序参数 的工作量巨大,从而加大了单板开发的成本。

发明内容
本发明实施例提供总线时序参数配置方法和装置,以缩短一个软件的开发周期, 降低设备的维护成本。本发明实施例提供一种总线时序参数配置方法,包括选择总线时序参数配置至中央处理器的控制器;判断所述中央处理器按照所述配置的总线时序参数对应的总线时序对外围器件 发起访问的访问结果是否异常;若所述访问结果异常,则选择未被配置过的总线时序参数配置至所述控制器。本发明实施例提供一种中央处理器,包括第一选择模块、判断模块和第二选择模 块;所述第一选择模块,用于选择总线时序参数配置至中央处理器的控制器;所述判断模块,用于判断所述中央处理器按照所述配置的总线时序参数对应的总线时序对外围器件发起访问的访问结果是否异常;所述第二选择模块,用于所述判断模块判断所述访问结果异常时,从选择未被配 置过的总线时序参数配置至所述控制器。从上述本发明实施例可知,总线时序参数是由软件程序通过循环遍历的方式配置 至CPU的控制器,并以CPU按照配置的总线时序对外围器件发起访问的访问结果是否正确 作为总线时序参数选择的最终依据,整个过程不需要人工参与调试和配置。因此,与现有技 术通过查找手册来人工调试和配置总线时序参数的方法相比,本发明实施例提供的是一种 动态选择总线时序参数的方法,可以在短时间内精确确定总线时序参数,缩短一个软件的 开发周期,增加设备的可维护性。


为了更清楚地说明本发明实施例的技术方案,下面将对现有技术或实施例描述中 所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实 施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以如这些附图 获得其他的附图。图1是本发明实施例提供的总线时序参数配置方法流程示意图;图2是本发明实施例提供的中央处理器逻辑结构示意图;图3是本发明另一实施例提供的中央处理器逻辑结构示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。请参阅附图1,是本发明实施例提供的总线时序参数配置方法流程示意图。主要包 括步骤S101,选择总线时序参数配置至中央处理器的控制器。通常可以由待配置网络设备执行本发明实施例的步骤,具体的,可以由待配置网 络设备的中央处理器实现执行。总线时序参数是片选信号建立时间、输出使能信号保持时间、读使能信号保持时 间和写使能信号保持时间等参数的全部或部分的组合,这些片选信号、输出使能信号和读 写使能信号等等在时间上按照一定的次序相互配合输出就构成总线时序。可以从可能的总 线时序参数中选择一种配置至中央处理器的控制器。所谓控制器,是指由程序计数器、指令 寄存器、指令译码器、时序产生器和操作控制器等组成,其主要功能是从内存中取出一条指 令,指出下一条指令在内存中位置对指令进行译码或测试,产生相应的操作控制信号,以便 启动规定的动作,指挥并控制CPU、内存和输入/输出设备之间数据流动的方向。可选地,可以由相关软件开发人员确定几个关键的子总线时序参数,例如地址建 立时间Tadr、片选建立时间Tce和输出使能保持时间Toe等。然后,采用循环遍历的方法, 从由各子总线时序参数构成的所有组合中选择一种组合作为总线时序参数配置至中央处理器的控制器。例如,假设地址建立时间Tadr、片选建立时间Tce和输出使能保持时间Toe可能 的范围是1至100个时钟周期,以下文字说明中将时钟周期简写为Tc,则可能的总线时 序参数包括 l(Tc),l(Tc),l(Tc)、l(Tc),l(Tc),2(Tc)、. . .、100 (Tc),100 (Tc),100 (Tc)等 等。其中,I(Tc),I(Tc),2 (Tc)表示地址建立时间Tadr、片选建立时间Tce和输出使能保 持时间Toe分别为1个时钟周期、1个时钟周期和2个时钟周期,其余类推。采用循环遍历 时,首先选择总线时序参数1 (Tc),1 (Tc),1 (Tc);第二次选择总线时序参数1 (Tc),1 (Tc), 2 (Tc);...,最后选择总线时序参数 100 (Tc),100 (Tc),100 (Tc)。另一种可选方案为,直接从可能的总线时序参数中选择一个配置至中央处理器的 控制器。上述可能的总线时序参数可以保存在网络设备的存储器,举例来说可以保存在 易失性(volatile)存储设备,例如,动态随机存取存储器(DRAM,Dynamic Random Access Memory)中,也可以保存在非易失性(non-volatile)存储设备,例如,只读存储器(ROM, Read-Only Memory)中,此外也可以保存在高速缓存(Cache)或硬盘中。例如,有三个可能 的总线时序参数,存储在网络设备的ROM中,这三个可能的总线时序参数的Tadr、Tce和Toe 分别为 1 (Tc),1 (Tc),1 (Tc)、1 (Tc),4 (Tc),4 (Tc)和 3 (Tc),9 (Tc),9 (Tc),则可以从这这三 个可能的总线时序参数选择一个配置至中央处理器的控制器。S102,判断所述中央处理器按照配置的总线时序参数对应的总线时序对外围器件 发起访问的访问结果是否异常。在CPU小系统中,与CPU关系密切并且经常与之交互的器件可以称为CPU的外围 器件,例如,内存、Flash存储器以及一些特殊用途的IC等。CPU对外围器件的总线时序是 否异常,反映到软件层面就是数据的存取是否正常、器件功能是否稳定。基于这个原则,基 本输入输出系统(BIOS,Basic Input/OutputSystem)在初始化时,对外围器件尝试进行访 问,例如,读取Flash的CFI接口校验返回的数据是否正常、读取CPLD/FPGA的版本/ID寄 存器并校验等。如能正确获取这些数据,则表明CPU外围器件的总线时序是正确,CPU可以 按照这组总线时序对外围器件进行访问。考虑到CPU外围器件的身份标识(ID) —般而言是固定值,在本发明实施例中,CPU 按照配置的总线时序对外围器件发起访问具体可以是按照配置的总线时序读取外围器件 的身份标识,而判断CPU按照配置的总线时序对外围器件发起访问的访问结果是否正确具 体可以是判断CPU按照配置的总线时序参数对应的总线时序读取外围器件的身份标识是 否错误。当然,若CPU外围器件没有身份标识(ID)可供读取,也可以读取其他具有固定值 的寄存器,本发明对此并不加以限制。S103,若步骤S102的判断结果为访问结果异常,则选择未被配置过的总线时序参 数配置至中央处理器的控制器。例如,按照前述步骤S102的实施例,若第一次选择1 (Tc),1 (Tc),1 (Tc)这种组合 配置至控制器作为一组总线时序,CPU按照这组总线时序不能正确读取外围器件的ID,则 说明选择的总线时序参数不正确。于是可以在第二次选择I(Tc),I(Tc),2 (Tc)这种组合配 置至控制器作为一组总线时序,CPU可以按照这组总线时序去读取外围器件的ID,若仍然 不能正确读取,则再选择另一种组合形式的总线时序参数配置至控制器。需要说明的是,采用本发明提供的总线时序参数配置方法配置出来的总线时序可以固化到初始化程序中,也可以不固化到初始化程序中。不固化到初始化程序中是因为,当 外界条件变化时,例如温度、湿度和/或电压变化时,原本可用的总线时序可能有些不能再 用,此时,可以采用本发明提供的总线时序参数配置方法获得正确的总线时序。从上述本发明实施例可知,总线时序参数是由软件程序通过循环遍历的方式配置 至CPU的控制器,并以CPU按照配置的总线时序对外围器件发起访问的访问结果是否正确 作为最终总线时序参数选择的依据,整个过程不需要人工参与调试和配置。因此,与现有技 术通过查找手册来人工调试和配置总线时序参数的方法相比,本发明实施例提供的是一种 动态选择总线时序参数的方法,可以在短时间内精确确定总线时序参数,缩短一个软件的 开发周期,增加设备的可维护性。按照上述实施例提供的方法,可能得到多种可用的总线时序的组合,即,CPU按照 配置的多种总线时序对外围器件发起访问的访问结果均正确,这种情况是由CPU外围器件 的特性决定的。然而,当外界条件变化时,例如温度、湿度和/或电压变化时,原本可用的总 线时序可能有些不能再用。在本发明实施例中,可以在得到一个能够使CPU正确访问外围器件的总线时序参 数后就停止选择新的可能的总线时序参数,此时该总线时序参数已配置至CPU的控制器。 也可以继续在未被配置过的总线时序参数当中选择新的总线时序参数重复上述流程,直到 尝试完所有可能的总线时序参数为止,将能够使CPU正确访问外围器件的总线时序参数配 置至CPU的控制器。采用尝试所有可能的总线时序参数的方案时,当CPU按照不同的总线 时序参数对应的多种总线时序对外围器件发起访问的访问结果均正确时,总线时序参数配 置装置可以让CPU做进一步的压力测试,即,CPU按照不同的总线时序参数对应的多种总线 时序对外围器件发起大批量的读写访问测试,再检查大批量读写访问测试时哪种总线时序 仍然可用。具体地,可以统计CPU分别按照不同的总线时序参数对应的多种总线时序配置 对外围器件发起多次访问时的访问正确率,选择访问正确率高的总线时序参数配置至CPU 的控制器。例如,假设按照地址建立时间Tadr、片选建立时间Tce和输出使能保持时间Toe为 1 (Tc),1 (Tc),1 (Tc)的总线时序,CPU可以正确访问其外围器件;按照地址建立时间Tadr、 片选建立时间Tce和输出使能保持时间Toe为1 (Tc),1 (Tc), 3 (Tc)的总线时序,CPU也可 以正确访问其外围器件,那么,分别统计CPU按照1 (Tc),1 (Tc),1 (Tc)的总线时序和1 (Tc), KTc), 3 (Tc)的总线时序对外围器件发起多次访问时的访问正确率,若前者访问正确率高, 则选择总线时序参数1 (Tc),1 (Tc),1 (Tc)配置至控制器,若后者访问正确率高,选择总线 时序参数1 (Tc),1 (Tc),3 (Tc)配置至控制器。请参阅图2,是本发明实施例提供的一种总线时序参数配置装置逻辑结构示意图。 为了便于说明,仅仅示出了与本发明实施例相关的部分。通常可以由待配置网络设备执行 该总线时序参数配置装置的功能,具体地,可以由待配置网络设备的中央处理器实现该总 线时序参数配置装置。图2所示中央处理器包括第一选择模块201、判断模块202和第二选 择模块203,其中第一选择模块201,用于选择总线时序参数配置至中央处理器的控制器;判断模块202,用于判断中央处理器按照所述配置的总线时序参数对应的总线时 序对外围器件发起访问的访问结果是否异常;
第二选择模块203,用于判断模块202判断访问结果异常时,选择未被配置过的总 线时序参数配置至控制器。在本实施例中,CPU按照配置的总线时序参数对应的总线时序对外围器件发起访 问具体可以为CPU按照配置的总线时序读取CPU外围器件的身份标识(ID),判断模块202 具体用于判断所述CPU按照所述配置的总线时序读取所述外围器件的身份标识(ID)是否 错误,其中,总线时序参数可以为地址建立时间Tadr、片选建立时间Tce和输出使能保持时 间 iToe。图2所示总线时序参数配置装置可以进一步包括统计模块301和第三选择模块 302,如附图3所示本发明另一实施例提供的中央处理器,其中统计模块301,用于若中央处理器分别按照不同的总线时序参数对应的多种总线 时序对外围器件发起访问的访问结果均正常,则统计所述CPU按照所述不同的总线时序参 数对应的的多种总线时序对外围器件发起多次访问时的访问正确率;第三选择模块302,用于选择所述访问正确率高的总线时序参数配置至所述控制
ο需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与 本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容 可参见本发明方法实施例中的叙述,此处不再赘述。本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可 以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存 储介质可以包括只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。以上对本发明实施例提供的总线时序参数配置方法和一种中央处理器进行了详 细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说 明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据 本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不 应理解为对本发明的限制。
权利要求
1.一种总线时序参数配置方法,其特征在于,所述方法包括选择总线时序参数配置至中央处理器的控制器;判断所述中央处理器按照所述配置的总线时序参数对应的总线时序对外围器件发起 访问的访问结果是否异常;若所述访问结果异常,则选择未被配置过的总线时序参数配置至所述控制器。
2.如权利要求1所述的方法,其特征在于,所述判断所述中央处理器按照所述配置的 总线时序参数对应的总线时序对外围器件发起访问的访问结果是否正确具体为,判断所述 中央处理器按照所述配置的总线时序参数对应的总线时序读取所述外围器件的身份标识 是否错误。
3.如权利要求1所述的方法,其特征在于,若所述中央处理器按照不同的总线时序参 数对应的多种总线时序,对外围器件发起访问的访问结果均正常,则统计所述中央处理器 分别按照所述不同的总线时序参数对应的多种总线时序对外围器件发起多次访问时的访 问正确率,选择访问正确率高的总线时序参数配置至所述控制器。
4.一种中央处理器,其特征在于,所述中央处理器包括第一选择模块、判断模块和第二 选择模块;所述第一选择模块,用于选择总线时序参数配置至中央处理器的控制器;所述判断模块,用于判断所述中央处理器按照所述配置的总线时序参数对应的总线时 序对外围器件发起访问的访问结果是否异常;所述第二选择模块,用于所述判断模块判断所述访问结果异常时,选择未被配置过的 总线时序参数配置至所述控制器。
5.如权利要求4所述的中央处理器,其特征在于,所述判断所述中央处理器按照所述 配置的总线时序参数对应的总线时序对外围器件发起访问的访问结果是否正确具体为,判 断所述中央处理器按照所述配置的总线时序参数对应的总线时序读取所述外围器件的身 份标识是否错误。
6.如权利要求5所述的中央处理器,其特征在于,所述中央处理器还包括统计模块和 第三选择模块;所述统计模块,用于若所述中央处理器按照不同的总线时序参数对应的多种总线时序 对外围器件发起访问的访问结果均正常,则统计所述中央处理器按照所述不同的总线时序 参数对应的多种总线时序对外围器件发起多次访问时的访问正确率;所述第三选择模块,用于选择所述访问正确率高的总线时序参数配置至所述控制器。
全文摘要
本发明实施例提供总线时序参数配置方法和装置,以缩短一个软件的开发周期,降低设备的维护成本。所述方法包括选择总线时序参数配置至中央处理器的控制器;判断所述中央处理器按照所述配置的总线时序参数对应的总线时序对外围器件发起访问的访问结果是否异常;若所述访问结果异常,则选择未被配置过的总线时序参数配置至所述控制器。与现有技术通过查找手册来人工调试和配置总线时序参数的方法相比,本发明实施例提供的是一种动态选择总线时序参数的方法,可以在短时间内精确确定总线时序参数,缩短一个软件的开发周期,增加设备的可维护性。
文档编号G06F13/10GK102141967SQ20101052847
公开日2011年8月3日 申请日期2010年11月2日 优先权日2010年11月2日
发明者陈凡 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1