一种输入/输出总线时序参数确定方法及装置的制作方法

文档序号:6484204阅读:197来源:国知局
专利名称:一种输入/输出总线时序参数确定方法及装置的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种输入/输出总线时序参数确定方 法及装置。
背景技术
输入/输出总线(IO-BUS, Input/Output BUS)作为一种成熟的芯片间总 线,广泛应用于各种单板类产品,其布线筒单,技术成熟。目前无线各个制 成板上的主要器件如CPU、复杂可编程逻辑器件(CPLD, Complex programmable Logical Device)、逻辑芯片以及数字信号处理器(DSP, Digital Signal Processor)的夕卜挂双倍速率SDRAM ( DDR, Dual Data Rate SDRAM)都是通过该总线被其他器件所访问的。IO-BUS不仅在全球微波接 入互才喿作性(WiMAX, World Interoperability for MicrowaveAccess)基站中 承担控制命令的传输,如,芯片寄存器的访问任务,更肩负着业务数据的传 送,如,基带基站处理单元BBI (Baseband Base Station Uint)单板内CPU 和现场可编程逻辑门阵列(FPGA, Field Programmable Gate Array)之间的 高级数据链路控制(HDLC, High Data Link Control)数据的传输等。
在对单板进行大批量测试时,经常面临IO-BUS对外挂芯片的访问会出现 不同概率的"访问失败",经分析,所述访问失败主要原因在于不同的单 板之间由于器件本身个体差异、印刷电路板(PCB, Printed Circuit Board) 差异、硬件走线长短的微妙不同等,造成了单板之间对于IO-BUS最优时序参 数之间的差异。
现有技术为解决上述问题采用的技术方案为选择最为宽松的配置项,如针对参数WAITJ"CLDATA,选择一个对于所 有可能都尽量足够的数值,例如,参数WAIT一TO—DATA为WE信号建立以后 DATA需要保持的时间,在某些单板上WAI"^TO—DATA设置为2ns即可满足 要求,但在其他单板或某些情况下,该参数需要设置为4ns,即4个CPU的工 作CLOCK。按照目前的做法,各个单板的配置是相同的,使用4ns作为 WAIT—TO—DATA的最终配置。发明人在实践过程中,发现现有技术至少存在如下缺点 现有技术存在访问时间浪费问题,即为了个别单板的差异而牺牲了大多 数单板的访问时间。发明内容本发明实施例提供一种输入/输出总线时序参数确定方法及装置,区分单 板的差异选择不同的IO-BUS时序参数,同时避免访问时间浪费问题。本发明实施例是通过以下技术方案实现的本发明实施例提供一种输入/输出总线时序参数确定方法,包括选择一组输入/输出总线时序参数,以所述选4奪的一组时序参数的初始值 作为动态扫描的中心值,将该初始值调整至规定边界,并固定所述输入/输出 总线的其他组时序参数值,以所述初始值调整至规定边界后的值以及所述其 他组时序参数值配置所述输入/输出总线时序参数;通过配置时序参数后的输入/输出总线访问至少两个地址规定次数;若规定次数访问所述地址均成功,则将所述选择的一组时序参数的当前 值作为所述选择的 一组时序参数的确定值。本发明实施例提供一种输入/输出总线时序参数确定装置,包括选择单元,用于选择一组输入/输出总线时序参数;动态扫描单元,用于以所述选择的一组时序参数的初始值作为动态扫描 的中心值,将该初始值调整至规定边界,并固定所述输入/输出总线的其他组时序参数值,以所述初始值调整至规定边界后的值以及所述其他组时序参数 值配置所述输入/输出总线时序参数,并通过配置时序参数后的输入/输出总线访问至少两个地址少见定次数;确定单元,用于根据动态扫描过程中规定次数访问地址是否成功来确定 时序参数的确定值,若规定次数访问所述地址均成功,则将所述选择的一组 时序参数的当前值作为所述选4奪的 一组时序参数的确定值。由上述本发明实施例提供的技术方案可以看出,本发明实施例可以动态 扫描IO-BUS各组时序参数,从而可以根据各单板的个体差异和运行环境的不 同选择适合的IO-BUS时序参数,且有效避免了访问时间浪费的问题,进而有 效解决了运行效率和运行稳定性之间的矛盾。


图1为本发明 一个实施例IO-BUS时序参数确定方法流程图; 图2为本发明又一 实施例IO-BUS时序参数确定方法流程图; 图3为本发明一个实施例IO-BUS时序参数确定装置结构示意图; 图4为本发明又一个实施例IO-BUS时序参数确定装置结构示意图; 图5为本发明另一个实施例l0-BUS时序参数确定装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行 清楚、完整地描述,可以理解的是,所描述的实施例仅仅是本发明一部分实 施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护 的范围。本发明实施例提供一种IO-BUS时序参数确定方法,如图1中所示,包括如下步骤步骤10:选择一组IO-BUS时序参数,以所述选择的一组时序参数的初始 值作为动态扫描的中心值,将该初始值调整至规定边界,并固定所述IO-BUS 的其他组时序参数值,以所述初始值调整至^见定边界后的值以及所述其他组 时序参数值配置所述IO-BUS时序参数;步骤11:通过配置时序参数后的IO-BUS访问至少两个地址规定次数;上述地址中存储的内容可以为预先知道的内容;步骤12:若规定次数访问所述地址均成功,则将所述选择的一组时序参 数的当前值作为所述选择的一组时序参数的确定值。本发明实施例可以动态扫描IO-BUS各组时序参数,从而可以根据各单板 的差异选择适合的IO-BUS时序参数,有效避免了访问时间浪费的问题。本发明又一 实施例提供一种IO-BUS时序参数确定方法,以图2中所示为 例,包括如下步骤步骤20:选择一组IO-BUS时序参数,以所述选择的一组时序参数的初始 值作为动态扫描的中心值,将该初始值调整至规定边界,并固定所述IO-BUS 的其他组时序参数值,以所述初始值调整至规定边界后的值以及所述其他组 时序参数值配置所述IO-BUS时序参数;在执行该步骤前,可选地将所述IO-BUS时序参数分组,将具有相关性的 时序参数作为 一组时序参数,也就是将具有保持时间和建立时间的IO-BUS时 序参数作为一组,每组可以包括一个、两个或多个IO-BUS时序参数。将所述 IO-BUS时序参数分组可以节省动态扫描的时间。需要注意的是,实际进行时序参数的动态扫描之前,需要对各个时序参 数进行排序,若对时序参数进行了分组,则对各组时序参数进行排序,用以 确定动态扫描的先后顺序,对于具体排序方式本发明实施例不做具体限定, 例如可以按照IO-BUS时序参数本身在时间上的先后顺序进行排序,即,先出现在IO-BUS上的时序对应的参lt排在前面。进行过动态扫描的各时序参数的初始值为上次动态扫描后确定的该时序 参数的确定值,其存储在单板的非易失性存储区中,通过使用上次扫描确定 的结果,可以提高本次扫描的效率。若存在多个与温度对应的初始值,则选 择与当前温度差异最小的初始值作为本次动态扫描的中心值。所述固定所述IO-BUS的其他组时序参数值包括对于已经动态扫描过的 时序参数,使用动态扫描过程中确定的确定值,对于没有执行动态扫描的时 序参数选择对应的初始值,没有进行过动态扫描的时序参数的初始值可以为 根据具体型号芯片的实际规格确定的。所述规定边界可以为上移边界或下移边界, 一般可以预先确定上下移的 总范围,上移范围和下移范围之和一般不超过中心值的15%,可以理解的 是,本发明实施例并不局限于此,例如型号为XLS408的处理器的上移的有 效范围是0.3ns,下移的有效范围是0.5ns,其中心值推荐为6ns,则上移范围 和下移范围之和为中心值的13.3%。 一般为了尽量节约访问时间,希望选择 比当前初始值小的值,因此可以先将初始值下移至少见定的下移边界。步骤21:通过配置后的IO-BUS访问至少两个地址规定次数;上述地址中存储的内容已知;访问地址时,需要轮流访问,每次访问所述地址中存储的内容都是已知 的,这样才可以将读到的内容进行比较,这个值可以事先写入。每次访问的 地址都需要是变化的,这样是为了消除IO-BUS的"地址保持"这一影响。步骤22:判断是否访问成功,若均成功,并执行步骤24,否则,若规定 次数访问所述地址存在失败,执行步骤23。如,将每次访问所述地址获得的内容与已知的内容进行比较,若内容均 一致,则访问成功;若存在一次或多次访问所述地址获得的内容与已知的内 容相比较不一致,则访问所述地址存在失败。步骤23:将正在进行动态扫描的一组时序参数的所述调整后的初始值调整一个变化度量,以所述调整一个变换度量后的值以及所述其他组时序参数值配置IO-BUS的时序参数,之后返回步骤21;若规定次数访问所述地址均成功,则将所述调整一个变化度量后的值作 为该一组时序参数的确定值,并结束本组时序参数的扫描,开始进行下一组 时序参数的扫描。所述变化度量可以为预先确定的 一个值。步骤24:判断所述一组时序参数是否为IO-BUS的最后一组时序参数;若 是,则执行步骤25,否则返回步骤20,依照预定顺序确定所述IO-BUS其他组 时序参数的确定值,直到确定IO-BUS所有组时序参数的确定值。在确定所述IO-BUS其他组时序参数的确定值的过程中,若当前选择的一 组时序参数的初始值在规定边界范围内每次调整后,通过IO-BUS访问至少两 个地址进行比较后,均存在访问失败的情况,则回退到当前一组时序参数的 前一组时序参数,重新为所述前一组时序参数确定一个确定值,该确定方法 是将其确定值调整一个变化度量作为新的确定值,然后重新扫描刚刚扫描失 败的所述当前一组时序参数,以此方式类推。将回退后重新确定的确定值向靠近初始值方向调整至少一个变化度量作 为所述前一组时序参数的确定值。在确定每组时序参数确定值后,由于部分时序参数执行了回退操作,则 将执行回退的各组时序参数回退后重新确定的确定值,向靠近初始值方向调 整至少一个变化度量作为所述执行回退的各组时序参数的确定值。记录所述IO-BUS的所有组时序参数的确定值作为下次单板启动时动态扫 描的对应各组时序参数的初始值。或者记录所述IO-BUS的所有组时序参数的 确定值以及对应的温度,作为下次单板启动时动态扫描的对应各组时序参数 ^/谇刀i台^直。步骤25:使用上述确定的IO-BUS的所有组时序参数的确定值配置所述IO國BUS。
本发明实施例所述的动态扫描确定各IO-BUS时序参数的方案,可以为每块单板配置当前适合的时序参数,可以有效保证IO-BUS访问的稳定性,从而保证了单板的稳定运行,并解决了现有技术的访问时间浪费问题,提高了IO-BUS的访问效率,从而提高单板的运行效率。
为进一步理解本发明,下面以具体实例对本发明上述实施例所述IO-BUS时序参数配置方法作进一步说明。
以IO-BUS的如下几个主要的时序参数为例,包括CS—TO_CS 、WE_TO—CS 、 OE—TO_CS 、 CS_TO—WE 、 CS—TO—OE 、WAIT—TO—DATA、 ALE—TO—CS、 ALE—WIDTH等;在单板中存储有IO-BUS各组时序参数所需要的几组经验数据,该经验数据是用于动态扫描的初始值,并可以根据单板运行温度将所述经验数据分组,用以在不同温度下选取不同的初始^f直。
首先将上述时序参数进行分组,相关性强(具有保持时间和建立时间)的时序参数作为一组,如CS—TO—CS、 WE_TO_CS、 OE—TO—CS作为一组时序参数进行动态扫描,其他各时序参数各自为一组。
对分组后的各组时序参数进行动态扫描,确定确定值,具体包括首先,选择CS—TO—CS、 WE—TO—CS、 OE_TO—CS组成的第一组时序参数进行动态扫描,假设该组时序参数对应的初始值为arA,下移边界为arA-nlAarA,上移边界为arA+n2△ arA,将arA调整至下移边界,即耳又arA-n1 △arA值作为所选择的 一组时序参数的值,并固定其它时序参数CS—TO_WE 、CS_TO—OE、 WAIT_TO—DATA、 ALE—TO—CS、 ALE—WIDTH,即令其他时序参数取值为初始值,以arA-n1 AarA以及固定的其他时序参数值配置所述IO-BUS的时序参数;所述△ arA为预先设置的变化度量;通过IO-BUS若干次访问两个地址,例如,访问两个地址200次,且该两个地址对应的内容已知,且每次访问同 一地址对应的内容是变化的,如果访问200次获得的内容均同已知的内容一致,即访问成功,令该arA-n1 △ arA值
为当前选择的 一组时序参数的确定值;
按照上述过程,依照预定顺序对其他组时序参数进行动态扫描,确定每组时序参数的确定值。假如在确定了第一组时序参数的确定值后,对CSJ"C^WE进行动态扫描时,发现在所述CS一TO—WE对应的初始值上移到规定上移边界以及下移到规定的下移边界后,均无法访问成功,则回退到第一组时序参数的扫描过程,重新确定所述第一组时序参数的确定值,例如以arA-(n 1 -1) △ arA及其他各组时序参数的初始值配置IO-BUS,再执行访问两个地址(可以和第一次动态扫描时的地址相同,也可以不同)若干次的操作,若访问成功,则选择该arA-(n1 -1) △ arA的值作为重新确定的第一组时序参数的确定值。之后再依照预定顺序对其他组时序参数进行动态扫描,确定每组时序参数的确定值。
在确定每组时序参数确定值后,由于部分时序参数执行了回退操作,则将执行回退的各组时序参数回退中重新确定的确定值向靠近初始值方向调整至少一个变化度量作为所述执行回退的各组时序参数的确定值。例如,对于上述实例中的第一组时序参数,由于执行了一次回退操作,在动态扫描了所有时序参数后,最后确定该第 一组时序参数的确定值可以为arA-(n 1 -2) △3rA。
将上述最终确定的各组时序参数的确定值配置到IO-BUS控制器上,并将该温度下的值存储到单板上非易失性存储器中,作为一个经验值供下次动态扫描过程中作为初始值。
本发明实施例还提供一种IO-BUS时序参数确定的装置,以图3中所示为例,该装置包括选择单元30,用于选择一组输入/输出总线时序参数;
动态扫描单元31 ,用于以所述选择的一组时序参数的初始值作为动态扫描的中心值,将该初始值调整至规定边界,并固定所述输入/输出总线的其他组时序参数值,以所述初始值调整至规定边界后的值以及所述其他组时序参数值配置所述输入/输出总线时序参数,并通过配置时序参数后的输入/输出总线访问至少两个地址规定次数;
确定单元32,用于根据动态扫描过程中规定次数访问地址是否成功来确定时序参数的确定值,若规定次数访问所述地址均成功,则将所述选择的一组时序参数的当前值作为所述选择的一组时序参数的确定值。
如图4所示,所述装置还可以包括
第一调整单元33,用于在规定次数访问所述地址存在失败情况下,将所述初始值在规定边界内调整一个变化度量。如图5所示,所述装置还可以包括
回退控制单元34,用于在所述选择的一组时序参数的初始值在规定边界范围内每次调整后,通过输入/输出总线访问至少两个地址,存在访问失败情况下,控制动态扫描单元回退到所述选择的 一 组时序参数的前 一 组时序参数,重新为所述前一组时序参数确定一个确定值。
并可以进一步包括
第二调整单元35,用于将回退后重新确定的确定值向靠近初始值方向调整至少一个变化度量作为所述前一组时序参数的确定值。所述装置还可以进一步包括
第一记录单元36 (图中未示出),用于记录所述IO-BUS时序参数。所述装置还可以进一步包括
第二记录单元37 (图中未示出),用于记录所述IO-BUS时序参数对应的温度。本发明实施例可以动态扫描IO-BUS各组时序参数,从而可以为各单板选择适合的IO-BUS时序参数,有效避免了访问时间浪费的问题。
综上所述,本发明实施例可以动态扫描IO-BUS各组时序参数,从而可以根据各单板的个体差异和运行环境的不同选择适合的IO-BUS时序参数,且有
效避免了访问时间浪费的问题,进而有效解决了运行效率和运4亍稳定性之间的矛盾。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于 一计算机可读存储介质中。该可读存储介质例如只读存储器(简称ROM)、随机存取存储器(简称RAM)、磁盘、光盘等。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
权利要求
1、一种输入/输出总线时序参数确定方法,其特征在于,包括选择一组输入/输出总线时序参数,以所述选择的一组时序参数的初始值作为动态扫描的中心值,将该初始值调整至规定边界,并固定所述输入/输出总线的其他组时序参数值,以所述初始值调整至规定边界后的值以及所述其他组时序参数值配置所述输入/输出总线时序参数;通过配置时序参数后的输入/输出总线访问至少两个地址规定次数;若规定次数访问所述地址均成功,则将所述选择的一组时序参数的当前值作为所述选择的一组时序参数的确定值。
2、 如权利要求1所述的方法,其特征在于,还包括将所述输入/输出总线时序参数分组,将具有保持时间和建立时间的输入/ 输出总线时序参数作为 一组。
3、 如权利要求1所述的方法,其特征在于,选择一组输入/输出总线时序 参数包括依照预定顺序选择输入/输出总线的 一组时序参数。
4、 如权利要求1所述的方法,其特征在于,还包括 若规定次数访问所述地址存在失败,则将所述调整后的初始值在规定边界范围内调整一个变化度量,以所述调整一个变换度量后的初始值以及所述其他组时序参数值配置所述输入/输出总线时序参数;通过配置后的输入/输出总线访问至少两个地址规定次数; 若规定次数访问所述地址均成功,则将所述一组时序参数调整了一个变化度量的初始值作为所述一組时序参数的确定值。
5、 如权利要求4所述的方法,其特征在于,还包括 若所述选择的一组时序参数的初始值在规定边界范围内每次调整后,通过输入/输出总线访问至少两个地址,存在访问失败;则回退到所述选择的 一组时序参数的前一组时序参数,重新为所述前一组时序参数确定 一 个确定值。
6、 如权利要求5所述的方法,其特征在于,还包括 将回退后重新确定的确定值向靠近初始值方向调整至少一个变化度量作为所述前一组时序参lt的确定值。
7、 一种输入/输出总线时序参数确定装置,其特征在于,包括 选择单元,用于选择一组输入/输出总线时序参数;动态扫描单元,用于以所述选择的一组时序参数的初始值作为动态扫描 的中心值,将该初始值调整至规定边界,并固定所述输入/输出总线的其他组 时序参数值,以所述初始值调整至规定边界后的值以及所述其他组时序参数 值配置所述输入/输出总线时序参数,并通过配置时序参数后的输入/输出总线 访问至少两个地址规定次数;确定单元,用于根据动态扫描过程中规定次数访问地址是否成功来确定 时序参数的确定值,若规定次数访问所述地址均成功,则将所述选择的一组 时序参数的当前值作为所述选4奪的一组时序参数的确定值。
8、 如权利要求7所述的装置,其特征在于,还包括 第一调整单元,用于在规定次数访问所述地址存在失败情况下,将所述初始值在规定边界内调整一个变化度量。
9、 如权利要求7或8所述的装置,其特征在于,还包括 回退控制单元,用于在所述选择的一组时序参数的初始值在规定边界范围内每次调整后,通过输入/输出总线访问至少两个地址,存在访问失败情况 下,控制动态扫描单元回退到所述选择的一组时序参数的前一组时序参数, 重新为所述前一组时序参数确定一个确定值。
10、 如权利要求9所述的装置,其特征在于,还包括第二调整单元,用于将回退后重新确定的确定值向靠近初始值方向调整 至少 一个变化度量作为所述前一组时序参数的确定值。
全文摘要
本发明实施例涉及通信领域一种输入/输出总线IO-BUS时序参数确定方法,选择一组IO-BUS时序参数,以所述选择的一组时序参数的初始值作为动态扫描的中心值,将该初始值调整至规定边界,并固定所述IO-BUS的其他组时序参数值,以所述初始值调整至规定边界后的值以及所述其他组时序参数值配置所述IO-BUS时序参数;通过配置时序参数后的IO-BUS访问至少两个地址规定次数;若规定次数访问所述地址均成功,则将所述选择的一组时序参数的当前值作为所述选择的一组时序参数的确定值。本发明实施例还提供一种相应的装置。本发明实施例可以根据各单板的个体差异和运行环境的不同选择适合的IO-BUS时序参数,从而有效解决了运行效率和运行稳定性之间的矛盾。
文档编号G06F13/42GK101520765SQ20091008115
公开日2009年9月2日 申请日期2009年4月3日 优先权日2009年4月3日
发明者祥 李, 王天成 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1