在电路板上调节延迟的数字系统的制作方法

文档序号:6474257阅读:318来源:国知局
专利名称:在电路板上调节延迟的数字系统的制作方法
背景计算机电路板上线路的长度会影响通过系统的信号。例如,系统总线经常平行地运行一些线路。但是,线路的长度会引起信号到达时间之间的延迟。
为了将在总线不同元件之间引起延迟的长度减到最小,已应用了一些布局考虑。比如,可使用反复试验的技术来细微地调节信号的通路,从而使信号同步到达。
在布局图上的不同区域可添加诸如弯曲形之类的额外长度。
附图简述在附图中

图1示出了用于分级的硬件实施;图2示出了分级的流程图;以及图3示出了时钟偏差操作的流程图。
详细描述本发明示出了一种解决分级的系统。该系统例如在计算机可找到应用,比如存储器互连、前侧总线互连、图形设备、I/O互连以及任何其它使用多比特互连的设备。
描述了一种硬件方案,该方案在这样的系统中产生特殊类型的可编程延迟。该硬件方案可包括一寄存器,该寄存器在多根线路中的每一根上设置理想的延迟。
在图1中示出了第一实施例。元件100产生如总线110所示的几个输出。总线110可包括多根线路,它们可以具有不匹配的布线延迟也可以不具有。这些线路由I/O缓冲器115进行缓冲。在图1中示出了线路120、122、124、126中的每一根线路。虽然在图1中只示出了四根线路,但应该理解的是,该总线可具有更多根线路。比如,总线通常具有8根、16根或32根或更多根线路。
在线路上设置可编程的延迟元件130、132、134和136。在该实施例中,每根线路都有一个单独的延迟元件,但是一根或更多根线路可不设计延迟元件。每个延迟元件由各个控制线138控制。另外,每个根线也可以有多根延迟线路。
信号120、122、124和126由各个延迟元件延迟,从而形成(延迟的)输出信号160、162、164和166。这些信号耦合到核心逻辑170,该核心逻辑可以是取决于比如存储器、图形、母板芯片组或本文描述的其它应用的设备的功能的电路。
分级寄存器140存储了多个值。它可为延迟元件130-136中的每个元件存储单独不同的值。这些延迟值可将信号延迟规定的时间;比如,延迟的时间使信号之间基本同时到达,或在预定时间内到达。
仲裁逻辑150执行对存储在分级寄存器中值的判断。仲裁逻辑150可与输出线160、162、164和166相连。仲裁逻辑150检查信号160到166,并判定理想的计时时间。例如,仲裁逻辑150可判定邻近的线路互相是超前还是滞后。根据这个判断,判定对延迟元件130-136的设置。这些设置使输出线160、162、164和166上的值互相成规定的关系被延迟,例如,基本同步,或按规定地进行偏移。
在该分级寄存器140中存储信息。使用该值双向地延迟信号通路上的信号。
另外,仲裁逻辑150可判定信号的前沿和后沿,并可对分级寄存器中的值进行编程。
可使用任何可根据所施加信号将信号延迟可变时间量的元件来形成可编程的延迟元件130-136。这些元件可包括数字延迟元件、具有多个分接头的锁相环路(PLL)、数字锁环路(DLL),或其它技术,诸如饿电流(current starving)晶体管,以延迟通过其的信号的传播。此外,如上所述,不是每根线路都需要一个延迟元件,比如,一些输出线路可不包括延迟元件。但是,较佳的是,这些包括延迟元件的线路中的每一个都包括它自己独立的延迟线138。
该系统可用于几个不同的应用场合。本发明的一个应用是在高速平行的互连中,其中总线长度实际上可影响数据到达核心逻辑的方式。这也可用于存储器互连、前侧总线互连、图形、IO互连等之中。
如上所述,由仲裁逻辑150执行的仲裁技术对存储在分级寄存器140中的值进行判定,而分级寄存器随之存储用于对延迟元件130-136中的不匹配进行分级的内容。
本文中披露了执行仲裁的不同方法。
总的来说,仲裁逻辑150中的仲裁只需要当有系统事件时才执行。系统事件可包括,比如,安装在系统中部件的变化,诸如安装了新存储器和/或新卡,或者会改变某些与信号延迟相关的问题的任何其它部件。可确定会引起新仲裁的不同类型的事件。在WindowsTM系统中,该事件可存储在系统寄存器中,并由比如Plug和PlayTM检测系统来触发。
诸如系统崩溃等之类的灾难性的系统问题也会使新的仲裁被执行。
图2中的流程图示出了仲裁技术。它可由处理器、微控制器来运行,或者使用专用的硬连线逻辑来执行,使用硬件设计语言编程为现场可编程门阵列或编程为离散电路。
该系统的操作起始于在200处的硬引导程序,其中在205处判定特殊的标志。该标志表示是否已发生了所判定类型的系统事件。如果没有,则控制转到210,其中从非易失性存储器142恢复分级值。在215该信息被存储到分级寄存器140中,并随后用于信号的分级。
如果在205已发生了系统事件,则该系统从220开始运行对互连分级延时的过程。互连分级延时首先包含向“从属”设备100发出信号的主设备,从而在外部数据总线110上产生信号。通过添加一定量的延迟时间来使每根线路高频脉动。当所有的信号都在同时到达,或彼此相差规定的时间到达时,分级寄存器中的当前延迟可被当作适当的分级延迟。在230处,这通过检查边缘的对齐来物理地完成。在235,如果边缘没有对齐,则仲裁器向分级寄存器发出一该变,以使用下一个高频脉动值来检查对齐。流程返回到225,其中,主设备向从属设备发出信号,从而再次产生信号以开始新的测试。
在230当边缘对齐时,当前的设置被当作为适当值,且读取分级寄存器的设置并存储在非易失性存储器142中。
在线250上示出了特殊边缘测试的操作。在图3中更加详细地描述了边缘测试的操作。在本领域中公知,系统定时边缘是需要设定的级别并将线路分配给时钟边缘的级别。但是,在本系统中,可编程的延迟可在用户的控制下改变。因为这些可编程的延迟,某些设备可在正常的定时边缘外进行操作。这意味着,系统一些部件操作的时间相对于系统其它部件操作的时间发生延迟。
可如图3所示,在系统中执行系统定时边缘。同样,在300处,分级寄存器140中的延迟发生高频脉动。每次发生不同的高频脉动时,主设备总会在305处向从设备发出信号,并且核心逻辑170中的数据比较器将检查失败的数据。如果系统通过,则这些值将被当作是可用的,且使用下一值。在315读取任何失败的值,在320与预期的边缘进行比较,并使用以形成报告。使用报告325来为分级寄存器设定值。这些值不一定会使信号同时到达,但却会使信号以理想的方式到达,即使核心逻辑中的某些分开的目标彼此相对地操作。比如,可以因为系统定时的某些原因,某些部件可以有意地相对于其它部件被延迟。
虽然以上只详细公开了几个实施例,但其它的修改也是可以的。比如,可使用其它的可编程延迟元件。
权利要求
1.一种系统,其特征在于,包括数据源,它具有多根不同的线路;多个可编程延迟元件,每个延迟元件与所述多根线路中的一根相连,从而控制所述一根线路中的延迟以产生延迟值;以及寄存器,存储所述可编程延迟元件的值,该可编程延迟元件分别控制由所述延迟元件引起的延迟时间量。
2.如权利要求1所述的系统,其特征在于,所述多根线路中的每一根都有一个所述的可编程延迟元件。
3.如权利要求1所述的系统,其特征在于,所述寄存器存储多个值,每个所述的多个值控制一个所述的可编程延迟元件。
4.如权利要求3所述的系统,其特征在于,还包括非易失性存储器,用于存储所述的多个值。
5.如权利要求1所述的系统,其特征在于,还包括仲裁逻辑,它耦合到所述的多个延迟值,并可操作用于确定所述多根线路的相对定时。
6.如权利要求5所述的系统,其特征在于,所述的仲裁逻辑包括第一元件,它产生所述寄存器的一组第一值,以及第二元件,它根据所述的第一值确定信号的相对到达。
7.如权利要求6所述的系统,其特征在于,所述的仲裁逻辑在不同组的值之间高频脉动,并确定所述多个值中的哪一个产生了最佳的理想结果,并将所述的最佳结构进行存储。
8.如权利要求1所述的系统,其特征在于,还包括图形设备,且其中,所述的信号来自所述的图形设备。
9.如权利要求1所述的系统,其特征在于,还包括非易失性存储器,用于存储所述延迟元件的值,并在规定的时间内将所述的值加载到所述的寄存器中。
10.如权利要求8所述的系统,其特征在于,还包括仲裁逻辑,它与所述的多个延迟值相连,在不同组的值之间高频脉动,确定所述多个值中的哪一个产生了最佳的理想值,并在所述的非易失性存储器中存储所述的最佳结果。
11.如权利要求10所述的系统,其特征在于,所述的最佳结果是基本同时接收多个延迟信号的结果。
12.如权利要求10所述的系统,其特征在于,所述的最佳结果是在一定时间偏移处接收多个延迟信号的结果,该时间偏移使某些逻辑元件正确操作。
13.一种电子设备,其特征在于,包括第一设备,产生多个第一输出;多个可编程延迟元件,所述的多个可编程元件中的每一个都在一端与所述多个输出中的一个相连,且每个都产生相对于所述第一输出发生延迟的第二输出;分级寄存器,存储多个值,所述值中的每一个都单独控制一个所述的延迟元件,从而控制由所述延迟元件与所述多个输出中的一个引起的延迟量。
14.如权利要求13所述的系统,其特征在于,还包括仲裁逻辑,它连接于每一个所述的第二输出,并且确定所述第二输出中的相对延迟。
15.如权利要求14所述的系统,其特征在于,所述的仲裁逻辑响应于系统事件标志,该标志表示系统中的特定事件。
16.如权利要求15所述的系统,其特征在于,所述特定的事件是硬件变化。
17.如权利要求15所述的系统,其特征在于,所述特定的事件是系统事故。
18.如权利要求15所述的系统,其特征在于,所述的仲裁逻辑响应于所述标志以产生所述分级寄存器的第一组值,向所述第一设备发出指令以产生所述的信号,并根据所述的第一组值确定所述信号之间的相对延迟。
19.如权利要求14所述的系统,其特征在于,还包括存储分级值的非易失性存储器,所述仲裁逻辑在所述的非易失性存储器中存储所述的分级值。
20.如权利要求15所述的系统,其特征在于,还包括,在初始系统启动时从所述非易失性存储器向所述分级寄存器下载值。
21.如权利要求15所述的系统,其特征在于,所述可编程的延迟元件是锁相环路。
22.一种方法,其特征在于包括从外部设备接收多个信号,每个所述的多个信号彼此相关;以及根据预存的值相对于其它所述信号可编程地延迟一些所述信号。
23.如权利要求22所述的方法,其特征在于,多个信号是来自总线的信号。
24.如权利要求23所述的方法,其特征在于,所述的多个信号是来自图形总线的信号。
25.如权利要求22所述的方法,其特征在于,所述的延迟包括在非易失性存储器中存储延迟值;以及使用所述非易失性存储器中的所述值以调节可编程延迟元件的值。
26.如权利要求25所述的方法,其特征在于,所述的系统事件是系统硬件配置方面的变化。
27.如权利要求25所述的方法,其特征在于,所述的系统事件是系统事故。
28.如权利要求25所述的方法,其特征在于,所述的重新获得包括,使在存储所述可编程延迟值的寄存器中的值发生高频脉动,确定各种结果,并接受已产生特定延迟的值。
29.如权利要求28所述的方法,其特征在于,还包括在所述非易失性存储器中存储所述的值。
30.如权利要求28所述的方法,其特征在于,所述的特定延迟是所有信号到达之间延迟最小的结果。
31.如权利要求28所述的方法,其特征在于,所述的特定延迟是所有信号到达之间有特定延迟的结果,从而允许在至少一个特定逻辑元件中有时钟偏差。
32.一种使信号的延迟时间均衡的方法,其特征在于包括提供多个信号,这些信号在彼此同步的时间内产生;使所述多个信号中的每一个都分别延迟一个量,其中所述的各个量对于每个所述的不同信号都是彼此不同的;测试所述信号,以确定所述信号中的相对延迟量,从而产生所述的延迟时间量;并且使用所述的延迟量以延迟所述信号。
33.如权利要求32所述的方法,其特征在于,所述的多个信号是来自图形处理设备的信号。
34.如权利要求32所述的方法,其特征在于,所述的延迟包括使每个信号延迟一个量,从而使它们基本同时地到达一个特定的位置。
35.如权利要求32所述的方法,其特征在于,所述的延迟包括使所述信号延迟特定的量,从而使它们以互相有时滞的时间到达所述的位置,其中所述的时滞是相对于系统的时钟边缘。
36.一种在系统中设置延迟的方法,其特征在于包括在寄存器中存储表示时间延迟的值,将所述表示延迟的时间延迟施加于信号以获得特定的结果;检测表示所述时间延迟应被改变的系统事件;当未检测到所述事件时,使用所述寄存器中的所述值,以通过向各个可编程延迟元件施加所述值来产生信号延迟;以及当检测到所述事件时,使用逻辑元件以判定新延迟值,并向所述可编程延迟元件施加所述新的延迟值,从而根据所述新的延迟值来产生信号延迟。
37.如权利要求36所述的方法,其特征在于,所述的使用包括,向多个各可编程延迟元件施加多个延迟值,从而延迟多根线路。
38.如权利要求36所述的方法,其特征在于,还包括在非易失性存储器中存储所述的新延迟值。
39.如权利要求36所述的方法,其特征在于,所述的系统事件包括系统元件的变化。
40.如权利要求36所述的方法,其特征在于,所述的系统事件是操作系统的事故。
41.一种方法,其特征在于,包括从特定的设备并行地接收多个信号,该信号是基本同时产生的;向可使所述信号各自有延迟的可编程延迟设备施加所述的多个信号;以及控制所述的多个可编程延迟设备,以使信号以特定的方式到达至少一个特定的位置。
42.如权利要求41所述的方法,其特征在于,所述的特定方式是所述信号基本同时地到达所述的至少一个特定的位置。
43.如权利要求41所述的方法,其特征在于,所述的特定方式是,所述的信号在所述的至少一个特定位置彼此有特定的关系,该特定关系不是同步的,以使系统正常工作。
44.如权利要求41所述的方法,其特征在于,还包括在非易失性存储器中存储所述的信息。
45.如权利要求24所述的方法,其特征在于,还包括确定是否发生了系统事件,并在所述非易失性存储器中存储新延迟值以响应所述系统事件的发生。
全文摘要
披露了调节信号之间延迟的技术和系统。产生几个信号,并确定信号之间的延迟。使用可编程的延迟元件,每个都由表示一个延迟的信号驱动。通过使每个信号延迟不同的时间,可使信号在理想的时间到达,比如,互相同步地到达。
文档编号G06F13/40GK1484793SQ01818453
公开日2004年3月24日 申请日期2001年9月14日 优先权日2000年9月15日
发明者R·M·博内拉, J·哈尔博特, Rm- 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1