CN1307800C - 集成电路时序调试装置及方法 - Google Patents

集成电路时序调试装置及方法 Download PDF

Info

Publication number
CN1307800C
CN1307800C CNB2004100314683A CN200410031468A CN1307800C CN 1307800 C CN1307800 C CN 1307800C CN B2004100314683 A CNB2004100314683 A CN B2004100314683A CN 200410031468 A CN200410031468 A CN 200410031468A CN 1307800 C CN1307800 C CN 1307800C
Authority
CN
China
Prior art keywords
clock pulse
signal
phase difference
pulse signal
clock
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
CNB2004100314683A
Other languages
English (en)
Other versions
CN1529414A (zh
Inventor
达瑞尔斯·D·盖斯金
詹姆斯·R·朗勃格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
INTELLIGENCE FIRST CO
Original Assignee
INTELLIGENCE FIRST CO
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/682,351 external-priority patent/US6903582B2/en
Application filed by INTELLIGENCE FIRST CO filed Critical INTELLIGENCE FIRST CO
Publication of CN1529414A publication Critical patent/CN1529414A/zh
Application granted granted Critical
Publication of CN1307800C publication Critical patent/CN1307800C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)

Abstract

一种用于集成电路(IC)的时序调试工具,其能改变主要时钟脉冲信号的可控制数量时钟脉冲周期的选取边缘的相位差。该调试工具能辨识、隔离及分析集成电路上的时序问题。集成电路包括可编程时钟脉冲相位差逻辑,以将一程序化相位差量施加于一时钟脉冲信号的选取边缘。调试系统包括时钟脉冲控制逻辑,其更包括一延迟模块及测试逻辑电路。该延迟模块用于延迟第一时钟脉冲信号的选取数量的转态,以提供第二时钟脉冲信号,其中第二时钟脉冲信号的每一选取转态会依据一同步信号,被延迟一预设相位差量或一程序化相位差量。测试逻辑电路能动态地控制此同步信号,并动态地将该选取相位差量程序化。

Description

集成电路时序调试装置及方法
技术领域
本发明涉及分析及解决集成电路上的时序问题,尤指可动态地改变集成电路上核心时钟脉冲信号的可控制数量时钟脉冲周期的相位差(skew)的集成电路时序调试(debug)装置及方法,以利于发现及分析数据保持(hold)/准备(setup)时序的问题。
背景技术
集成电路设计者已使用模拟及/或测试,来辨识、隔离及分析芯片上的时序问题,通常这些问题在最好的情况下,只是使芯片不能以目标时钟脉冲速度来执行,但最坏的情形则会导致芯片在大量制造之前,必须进行设计上的修改。通常,会利用芯片上每个逻辑模块内的暂存器逻辑电路,将数据传送到后续的逻辑阶段,或从先前的逻辑阶段接收数据。若一逻辑模块所执行的运算具有相关的关键延迟路径(critical delay path),且其使得有效数据在一特定时钟脉冲速度下,直到下一逻辑阶段的时钟脉冲边缘产生后,才被送至用来闩锁(latch)此数据的下一逻辑阶段,则此时会发生准备时间问题。而若该逻辑模块将有效数据送至下一逻辑模块,但此数据在用来闩锁此数据的下一逻辑模块产生一时钟脉冲边缘前,就变成无效,则此时会发生保持时间问题。在准备时间问题的情形,对有效数据的传送而言,下个逻辑阶段的闩锁时钟脉冲边缘产生得太早。在保持时间问题的情形,则是产生得太晚。
图1A是一电路100的简化框图,该电路100具有二个代表性的连续逻辑模块101及103,可接收时钟脉冲信号。第一逻辑模块101(逻辑模块1)接收第一时钟脉冲信号ECLK1,并将数据信号DATA送到第二逻辑模块103(逻辑模块2),其会接收第二时钟脉冲信号ECLK2。图1B对照显示了电路100在同步化的时钟脉冲与具相位差(skewd)的时钟脉冲下工作的时序图。该时序图显示了ECLK1、ECLK2及DATA信号相对于时间的波型(Trace)。特定时间点显示于其中,依序为T1、T2、T3、T4及T5。
图1B中,前二个波型显示ECLK1及ECLK2时钟脉冲信号为同步的情况,以解说准备时间问题。例如,如图所示,ECLK1及ECLK2信号具有同步边缘,包括在时间T1,实质上同时产生的下降沿,以及在时间T3,实质上同时产生的上升沿。第三个波型则显示来自于第一逻辑模块101的DATA信号的相对时序,其中DATA信号在时间T4(其在时间T3后),会切换而变为有效。同步时钟脉冲的情况是用来说明准备时间的问题,其中第一逻辑模块101具有一关键延迟路径,以至于直到时间T3的上升时钟脉冲缘产生后,DATA信号在时间T4产生的有效数据才会被送到逻辑模块103。由于逻辑模块101中的工作延迟比一时钟脉冲周期的时间还长,所以ECLK2在时间T3产生上升沿时,无效数据即被送入逻辑模块103。
图1B中,第四及第五波型显示ECLK2信号相对于ECLK1信号具有相位差的情况。特别是,第四波型中,ECLK1信号的变化情形与第一波型的ECLK1信号相似。第五波型显示相对于ECLK1,具有相位差的ECLK2,其中ECLK2的下降沿产生于时间T1后的时间T2,而ECLK2的后续上升沿则产生于时间T4后的时间T5。具相位差的时钟脉冲的情况是说明由将ECLK2相对于ECLK1进行延迟,可消除准备时间问题。特别是,ECLK2的上升沿会被延迟,直到DATA信号变成有效,因此可使来自于第一逻辑模块101的数据有效地转移到第二逻辑模块103。
迄今,设计者已提出硬件接线(hardwired)逻辑,如熔线(fuse)及一次性可编程逻辑组件,可使送到连续逻辑模块的时钟脉冲具有相位差,以解决关键路径及保持时间的问题。这样的解决方式所提供的时钟脉冲相位差,在设定后即不能改变,除非修改芯片的设计。再者,参考前述的例子,一般本技术领域的普通技术人员即可了解到,只有在第二逻辑模块103有可进行延迟的余地时,才能延迟ECLK2。另一种解决方式为,将前一逻辑模块(如逻辑模块101)闩锁送入数据所用的时钟脉冲提前,以使其留有更多时间进行工作。然而,这种解决方式并不总是可行,且可能导致新的不可预见的时序问题。
若发生上述的准备及保持问题,但不是在每个时钟脉冲周期发生,则辨识及隔离问题区域的工作,可能会变得非常复杂。例如,现代的微处理器多为管线化系统的类型,其中此种问题是与所执行的指令流有关。不难想象,时序问题可能要到微处理器开始工作很久后的某个时钟脉冲周期内,才会发生。然而,这种单一的时序错误却可能导致微处理器无法工作。使所有的管线时钟脉冲周期具有相位差,这种做法将不足以辨识及隔离不会在每个时钟脉冲周期发生的时序问题。事实上,使所有的管线时钟脉冲周期具有相位差,可能会掩盖掉周期性或一次性的准备及保持时间问题。
实际上,将一芯片设计做成产品之前,设计者会分析及仿真集成电路中的复杂逻辑路径。但是本技术领域的普通技术人员都了解,时钟脉冲相位差中的些微差异并无法足够精确地进行仿真,且产品工序的变化也无法精确地模型化。因此,所制造的集成电路经常会出现一些不可预期的关键时序路径,而迫使设计者需在出货之前进行处理。因此,在芯片已制成且时钟脉冲相位差已确立之后,若在发生任何准备时间问题,只能由降低组件的时钟脉冲速度来消除。更糟的是,此时若发生保持时间问题,将使芯片完全无法工作。不论是哪一种情况,都需要在设计上做明显的修改(通常包括改变屏蔽,电子光束分析等),来修正这些类型的问题。
发明内容
本发明的集成电路(IC)时序调试装置及方法能改变一主要时钟脉冲信号中,任何选取边缘的可控制数量的时钟脉冲周期的相位差。这样的装置及方法能辨识、隔离及分析IC上的准备及保持时序问题,包括被隔离的问题,或只在单一时钟脉冲边缘发生的问题。一旦判断出时序问题,即可对IC进行程序化以修正该时序问题,使芯片能以目标时钟脉冲速度来工作。IC的程序化可采用任何所要的方式来实施,如由烧断熔线,或将可擦除可编程只读存储器(EPROM)程序化,或任何其它的程序化的方法,来调整一个或多个局部时钟脉冲信号的相位差。
本发明的一实施例提供一种集成电路,其包括有一时钟脉冲产生器,用以将一主要时钟脉冲信号与一反馈时钟脉冲信号同步化;一第一可编程时钟脉冲相位差逻辑电路,耦接至该时钟脉冲产生器,用以接收一第一同步信号,并使该主要时钟脉冲信号具有相位差,以提供一具相位差的主要时钟脉冲信号;一时钟脉冲分布网络,用以将该具有相位差的主要时钟脉冲信号的多个副本分布于该集成电路上;一时钟脉冲相位同步节点,用以接收该具有相位差的主要时钟脉冲信号的该些副本,并送回一核心时钟脉冲信号;以及一第二可编程时钟脉冲相位差逻辑电路,耦接至该时钟脉冲产生器,用以接收一第二同步信号及该核心时钟脉冲信号,并提供具有补偿相位差的该反馈时钟脉冲信号;一外部接口;以及
一测试逻辑电路,耦接至该第一和第二可编程时钟脉冲相位差逻辑电路及该外部接口,用以使能该程序化相位差量的程序化及该同步信号的控制,其中,该测试逻辑电路提供对应于该主要时钟脉冲信号的该第一同步信号,以及对应于该核心时钟脉冲信号的该第二同步信号。
本发明已考虑到测试逻辑电路在工作上的许多变化例。在一实施例中,测试逻辑电路执行一调试例程(debug routine),其用以将可编程时钟脉冲相位差逻辑电路程序化,并控制该同步信号。在另一实施例中,测试逻辑电路是由该外部接口所耦接的外接芯片测试器,来存取可编程时钟脉冲相位差逻辑电路,以程序化相位差及控制该同步信号。
每个可编程时钟脉冲相位差逻辑模块可采用使时钟脉冲信号产生相位差的任何适合方式来实施。在一实施例中,可编程时钟脉冲相位差逻辑电路包括一可编程相位调整逻辑电路及一时钟脉冲相位差缓冲器。相位调整逻辑电路接收一同步信号,并提供一组显示程序化相位差量的延迟位。时钟脉冲相位差缓冲器接收此组延迟位,并将一输入时钟脉冲信号延迟此组延迟位所决定的相位差量。相位调整逻辑电路包括一可编程存储器,用以储存该程序化相位差值。
可编程时钟脉冲相位差逻辑模块更可包括第一与第二时钟脉冲相位差缓冲器及选择逻辑电路。相位调整逻辑电路提供第一组延迟位至该第一缓冲器,并提供显示一预设相位差值的第二组延迟位至该第二缓冲器。这些缓冲器分别提供第一具相位差时钟脉冲信号及第二具相位差时钟脉冲信号至选择逻辑电路的输入端,其中第二具相位差时钟脉冲信号将该输入时钟脉冲信号延迟一预设相位差量。相位调整逻辑电路则提供由同步信号所控制的一选择信号至选择逻辑电路的选择输入端。在一实施例中,第一可编程时钟脉冲相位差逻辑模块的相位调整逻辑电路是以第一相位差值进行程序化,第二可编程时钟脉冲相位差逻辑模块的相位调整逻辑电路则以第二相位差值进行程序化。第二相位差值相对于预设相位差量,提供一个与第一相位差值大小相等且方向相反的相位差量。
本发明的一实施例提供一种调试系统,用以改变一集成电路中一时钟脉冲相位差的可控制数量的时钟脉冲周期,该集成电路具有一外部测试端口,其特征在于,该调试系统包括:整合于该集成电路上的一时钟脉冲控制逻辑电路,包括:一延迟模块,用以延迟一第一时钟脉冲信号中一选定数量的转态,以提供一第二时钟脉冲信号,其中该第二时钟脉冲信号中每个所选取的转态是依据一第一同步信号,而被一预设相位差量与一选取相位差量两者之一所延迟;以及一时钟脉冲产生器,用以将该第一时钟脉冲信号与一反馈时钟脉冲信号同步化;一时钟脉冲分布网络,依据该第二时钟脉冲信号,分布至少一第三时钟脉冲信号;一时钟脉冲相位同步节点,用以接收该至少一第三时钟脉冲信号,并送回一核心时钟脉冲信号;一补偿延迟模块,用以延迟该第一时钟脉冲信号的该选取转态所对应的该核心时钟脉冲信号的转态,以提供该反馈时钟脉冲信号,其中该核心时钟脉冲信号的每一选取转态是依据一第二同步信号,被延迟一预设相位差量或一补偿相位差量的两者之一;以及一测试逻辑电路,耦接至该延迟模块,并可由该外部测试端口进行存取,其使能动态地控制该第一同步信号,且使能动态地程序化该选取相位差量,该测试逻辑电路提供对应于该第一时钟脉冲信号的该第一同步信号,以及对应于该核心时钟脉冲信号的该第二同步信号;以及一芯片测试器,由该外部测试端口耦接至该测试逻辑,用以提供该选取相位差量,并控制该第一同步信号。
该调试系统的时钟脉冲控制逻辑电路还可包括用以将第一时钟脉冲信号与一反馈时钟脉冲信号同步化的时钟脉冲产生器、依据第二时钟脉冲信号分布一或多个第三时钟脉冲信号的时钟脉冲分布网络、用以接收第三时钟脉冲信号并回送一核心时钟脉冲信号的时钟脉冲相位同步节点,以及用以延迟对应到第一时钟脉冲信号的选取转态的核心时钟脉冲信号的转态,以提供该反馈时钟脉冲信号的补偿延迟模块。核心时钟脉冲信号的每一选取转态会依据第二同步信号,被延迟一预设相位差量或一补偿相位差量。测试逻辑电路会提供对应于第一时钟脉冲信号的第一同步信号,以及对应于核心时钟脉冲信号的第二同步信号。在一实施例中,补偿相位差量是该选取相位差量相对于预设相位差量的一反向差值。
本发明的一实施例提供一种由调整一主要时钟脉冲信号的可控制数量时钟脉冲周期的相位差,以调试IC的方法,其包括步骤:(a)经由一外部测试接口将一芯片测试器耦接至该集成电路的测试逻辑电路上;(b)经由时钟脉冲输入接脚将一外部时钟脉冲信号输入该集成电路的时钟脉冲产生器上,该时钟脉冲产生器将利用所述外部时钟脉冲信号产生主要时钟脉冲信号;(c)通过一调试例程将该集成电路的该测试逻辑电路程序化,以便将第一程序化的相位差值及第一同步信号和第二程序化的相位差值及第二同步信号分别提供给第一钟脉冲相位差逻辑电路和第二时钟脉冲相位差逻辑电路;(d)将第一时钟脉冲相位差逻辑电路和第二时钟脉冲相位差逻辑电路程序化;(e)通过该程序化的测试逻辑电路对该集成电路进行测试;以及(f)储存测试结果,对该集成电路进行后续分析及处理。
本发明的效果、特征及优点,在配合下列说明及附图后,将可获得更好的理解。
附图说明
图1A是一电路的简化框图,该电路具有二个代表性的连续逻辑模块,可接收对应的时钟脉冲信号;
图1B是对照显示图1B的电路在同步化的时钟脉冲与具相位差的时钟脉冲下工作的时序图;
图2是根据本发明的一示范实施例显示的包含一时序调试系统的集成电路(IC)的框图;
图3是图2中的时钟脉冲相位差控制逻辑模块的一范例实施例的更详细的框图;
图4是时钟脉冲相位差缓冲器的一示范实施例概图,其用来实施图3中的时钟脉冲相位差缓冲器;
图5是图2的选取信号的时序图,以显示根据本发明的一实施例,使用时钟脉冲相位差控制将EEE CLK0信号的选取上升沿延迟的情形;
图6是图2的选取信号的另一时序图,以显示根据本发明的一实施例,使用时钟脉冲相位差控制将EEE CLK0信号的选取上升沿提前的情形;
图7是图2的选取信号的另一时序图,以显示根据本发明的一实施例,使用时钟脉冲相位差控制将EEE CLK0信号的选取下降沿延迟的情形;
图8是图2的选取信号的另一时序图,以显示根据本发明的一实施例,使用时钟脉冲相位差控制将EEE CLK0信号的选取下降沿提前的情形;
图9是图2的选取信号的另一时序图,以显示根据本发明的一实施例,使用时钟脉冲相位差控制将EEE CLK0信号的两个相邻边缘提前的情形;以及
图10是根据本发明的一示范实施例,显示了用以调试图2的IC的时序问题的测试流程图。
其中,附图标记说明如下:
100:电路
101,103:逻辑模块
200:集成电路(IC)
201:时钟脉冲产生器
203:时钟脉冲输入接脚
205A、205B、300:时钟脉冲相位差控制逻辑电路
207:时钟脉冲分布网络
208:时钟脉冲相位同步节点
211:测试逻辑电路
213:外部测试端口
215:芯片测试器
301:相位调整逻辑电路
303:第一时钟脉冲相位差缓冲器
305:第二时钟脉冲相位差缓冲器
307:多工器
309:可编程存储器
400:时钟脉冲相位差缓冲器
401、403、405:反相器/缓冲器
501、503、505、507、702、704、706、708:上升沿
701、703、705、707:下降沿
具体实施方式
以下的说明,是在一特定实施例及其必要条件的脉络下而提供,可使一般熟习此项技术的人能够利用本发明。然而,各种对该较佳实施例所作的修改,对本技术领域的普通技术人员而言是显而易见的,并且,在此所讨论的一般原理,也可应用至其它实施例。因此,本发明并不限于此处所展示与叙述的特定实施例,而是具有与此处所揭露的原理与新颖特征相符的最大范围。
发明人已了解到将时序调试工具提供给集成电路(IC)设计者,以辨识、隔离及分析芯片上的时序问题的需求。据此,本申请发明人开发出一种IC时序调试装置及方法,可改变IC上核心时钟脉冲信号的可控制数量时钟脉冲周期的相位差,以辨识、隔离及分析数据准备及保持时序问题,如下文配合图2-10所做的进一步说明。
图2是根据本发明的一示范实施例的包含一时序调试系统的集成电路(IC)200的框图。在示范实施例中,IC200为微处理器,然而要了解到的是,本发明可应用于建造于芯片上的任何型式的电路或功能。BUSCLK信号由一时钟脉冲输入接脚203,从外部来源(未显示)送到IC200内的时钟脉冲产生器201。时钟脉冲产生器201会使用BUSCLK信号,并且会产生「quad-E」或EEEE CLK信号,其会送到芯片上的时钟脉冲控制逻辑电路,其包括时钟脉冲相位差控制逻辑电路205A。EEEE CLK信号为主要时钟脉冲信号,其用以衍生出分布于整个IC 200的时钟脉冲信号。时钟脉冲相位差控制逻辑电路205A会产生对应的基本EEE CLK0信号,其会送到时钟脉冲分布网络207。时钟脉冲分布网络207会提供多个分布副本或版本的EEE CLK0信号,分别表示为信号EEE CLK1、EEE CLK2,...,EEE CLKN,其中N为大于0的整数。分布的EEE CLK信号为主要EEEE CLK信号的具有相位差的版本,其会送到分布在整个IC200上的逻辑模块(未显示),这些逻辑模块是执行运行于IC200上的组件的主要逻辑功能。
EEE CLK信号在时钟脉冲分布电路的最后一段行程,则是以核心时钟脉冲信号CORECLK的形式,从IC200上的时钟脉冲相位同步节点(CPSN)208返回。核心时钟脉冲信号CORECLK,如下文进一步所述,会被转换为反馈时钟脉冲信号COREFB送至时钟脉冲产生器201,用以进行同步补偿。时钟脉冲产生器201以一锁相回路(PLL)电路进行配置,PLL电路是用以使EEE CLK信号与COREFB信号间的时钟脉冲及工作周期(duty cycle)同步,如一般本技术领域的普通技术人员已知的。依照本发明的一实施例,该返回CORECLK信号会被送到包括时钟脉冲相位差控制逻辑电路205B的时钟脉冲控制逻辑电路,其会产生COREFB信号,其为CORECLK信号的具相位差的版本。
IC200包括芯片上的测试逻辑电路211,其会将相位差控制信号送到时钟脉冲相位差控制逻辑模块205A及205B,以改变要施加到一可控制数量的时钟脉冲周期(其意指所选取的时钟脉冲边缘或时钟脉冲转态)的相位差的量。特别是,测试逻辑电路211会将相位差调整信号SKADJ_QE送到时钟脉冲相位差控制逻辑电路205A,其用以决定每一EEE CLK信号的选取边缘相对于EEEE CLK信号的相对相位差量。配合要施加该程序化相位差量的一或多个EEEE信号的时钟脉冲边缘,测试逻辑电路211会对应地将一同步信号SYNC_QE设定或产生脉冲,以送至时钟脉冲相位差控制逻辑电路205A。
以类似的方式,测试逻辑电路211会将另一个相位差调整信号SKADJ_CC送到时钟脉冲相位差控制逻辑电路205B,其决定要施加于COREFB信号的选取边缘的相对相位差量。配合要施加该程序化(programmed)相位差量的一或多个CORECLK信号的时钟脉冲边缘,测试逻辑电路211会对应地将另一同步信号SYNC_CC设定或产生脉冲,以送至时钟脉冲相位差控制逻辑电路205B。如下文进一步所述,时钟脉冲相位差控制逻辑电路205B可被程序化,以相对于一预定相位差量,提供一个与时钟脉冲相位差控制逻辑电路205A所提供的程序化相位差值大小相等且方向相反的相位差量,施加于CORECLK信号对应于EEE CLK0信号的选取边缘的边缘,以补偿EEEE CLK与COREFB信号间的相对时序。
测试逻辑电路211可由IC200所提供的外部接口或外部测试端口213,从外部进行存取。测试端口213可包括IC200上任意数目的外部接脚,其可能为专用的测试接脚或双用途的接脚,如一般本技术领域的普通技术人员所已知的。芯片测试器215是由测试端口213(其可作为芯片测试器215与测试逻辑电路211之间的传输接口),而耦接至IC200。测试逻辑电路211及测试端口213可根据JTAG(Joint Test Action Group,联合测试动作组)来实现,其中测试逻辑电路211包括JTAG逻辑电路,而测试端口213包括JTAG端口。在标准测试架构中,芯片测试器215包括插槽或类似物(未显示),用以连接IC200。芯片测试器215能控制IC200的外部接脚,包括测试端口213的所有接脚。在典型的JTAG架构中,例如,在对IC200进行配置用以测试时,芯片测试器215会启动IC200的电源,并且将其保持于重置状态。在测试配置期间,虽然IC200保持于重置状态,但是芯片测试器215能由测试端口213,来存取测试逻辑电路211,并且设定选取暂存器中的值或位,或甚至加载测试数据及/或用于测试及调试用途的一或多种测试或调试程序。然后,芯片测试器215会使IC200离开重置状态,并且监视及控制IC200的工作。
在一实施例中,在测试及/或重置状态期间,芯片测试器215会由测试逻辑211,以对应的相位差调整值,对时钟脉冲相位差控制逻辑模块205A及205B进行程序化。数字相位差值会被设定于SKADJ_QE及SKADJ_CC信号线的每一条之上,以分别将时钟脉冲相位差控制逻辑模块205A及205B程序化。在一实施例中,SKADJ_QE及SKADJ_CC信号的每个包括单一信号线,其中数字相位差值是以一串行比特流的形式提供。在另一实施例中,SKADJ_QE及SKADJ_CC信号的每个包括多条信号线,其中数字相位差值系以并列格式来提供。任何合适的程序化技术均可用来以对应的相位差值,将时钟脉冲相位差控制逻辑模块205A及205B程序化,如使用另外的控制信号(未显示),或以一预定的程序化样本,来触发对应的SKADJ_X信号。
一旦将相位差值程序化,而送到时钟脉冲相位差控制逻辑模块205A及205B时,测试逻辑电路211会对应地设定SYNC_QE及SYNC_CC信号,使其配合要相对于该预设相位差量延迟或提前的选取时钟脉冲信号边缘。在一实施例中,测试逻辑电路211是以一测试/调试例程来程序化,该例程可辨识一或多个所选取的时钟脉冲信号边缘,并对应地设定SYNC_QE及SYNC_CC信号。在另一实施例中,调试例程是位于芯片测试器215之内,用以控制测试逻辑电路211,在适当的时候设定SYNC_QE及SYNC_CC信号。在又一实施例中,相位差值可在“转移中”(on the fly)或调试例程执行时,进行程序化动作。例如,芯片测试器215会在重置期间,以调试例程将测试逻辑电路211程序化,接着重置状态会被移除,以使调试例程工作。在其工作期间,调试例程配置为依据所要测试的时钟脉冲信号边缘,决定时钟脉冲相位差控制逻辑模块205A及205B的程序化次数。对于每个程序化相位差而言,调试例程是被程序化为在适当时候设定SYNC_QE及SYNC_CC信号,该些适当时候是与所选取的要具有相位差或提前的时钟脉冲边缘同时。测试逻辑电路211可储存测试的结果,或者测试结果可由芯片测试器215进行动态地监测。
图3是时钟脉冲相位差控制逻辑电路300的一示范实施例的更详细的框图,其可用于时钟脉冲相位差控制逻辑模块205A及205B中的任一个或二者。一对信号SYNC及SKADJ会被送到相位调整逻辑电路301的各自输入端,相位调整逻辑电路301则提供第一组延迟位CAP[M:0]/CAPB[M:0]至第一时钟脉冲相位差缓冲器303的对应输入端,且提供第二组延迟位KCAP[M:0]/KCAPB[M:0]至第二时钟脉冲相位差缓冲器305的对应输入端。M为正整数,且(M+1)相等于各组延迟位的位数的一半。在图示的实施例中,每组延迟位包括3个真值位CAP0、CAP1及CAP2(第一组),与KCAP0、KCAP1及KCAP3(第二组),以及对应的3个互补位CAPB0、CAPB1及CAPB2(第一组),与KCAPB0、KCAPB1及KCAPB3(第二组),其中M=2。附加于信号名称后的「B」是代表互补逻辑位。输入时钟脉冲信号CLK IN会被送到时钟脉冲相位差缓冲器303及305(其会分别送出输出时钟脉冲信号CLK01及CLK02)的另一输入端。CLK01信号会被送到多工器(MUX)307的第一或逻辑「1」输入端,而CLK02信号则被送到MUX307的第二或逻辑「0」输入端。相位调整逻辑电路301会将选择信号SEL送到MUX307的选择输入端。MUX307的输出端会送出输出时钟脉冲信号CLK OUT。对于时钟脉冲相位差控制逻辑电路205A而言,CLK IN、SYNC、SKADJ及CLK OUT信号会分别耦接至EEEE CLK、SYNC_QE、SKADJ_QE及BEE CLKO信号。对于时钟脉冲相位差控制逻辑电路205B而言,CLK IN、SYNC、SKADJ及CLK OUT信号则分别耦接至CORECLK、SYNC_CC、SKADJ_CC及COREFB信号。
时钟脉冲相位差缓冲器303及305是以实质上与图示实施例相同的方式来实施,以使得CLK01及CLK02信号相对于CLK IN信号的相位差分别由第一及第二组延迟位输入来控制。由相位调整逻辑电路301所设定的第一组延迟位CAP[M:0]/CAPB[M:0],可使得时钟脉冲相位差缓冲器303对于CLKOUT信号相对于CLK IN信号所调整的相位差量,能相对于第二组延迟位KCAP[M:0]/KCAPB[M:0]所提供的预设相位差量来调整大小。在图示的实施例中,因为每组延迟位包括3个真值位及3个互补位,所以全部会有八种不同的相位差值,表示为000b、001b、010b、...、111b,其中附加于数字后的小写字母“b”是表示二进制记号。如下文将更完整说明的,各组延迟位在从相当少或无延迟(即000b)到最大延迟(即111b)的范围内,每递增二进制的一,即代表增加一个相当固定的延迟增量或延迟单位。
第二组延迟位KCAP[M:0]/KCAPB[M:0]被设定或另以硬件接线为一预设相位差值100b。因此,若MUX307的“0”输入端被选取,则CLK OUT信号会相对于CLK IN信号被延迟一预设相位差量。而当MUX307的“1”输入端被选取时,若第一组延迟位CAP[M:0]/CAPB[M:0]被程序化为大于100b的值,则其会使CLK OUT信号延迟得比该预设相位差量更多;若被程序化为小于100b的值,则其会将CLK OUT信号有效地提前,而延迟得比该预设相位差量少。
在图示的实施例中,相位调整逻辑电路301包括一可编程存储器309,或能储存程序化相位差值的任何型式的逻辑组件。相位调整逻辑电路301会根据储存于存储器309中的程序化相位差值,而设定延迟位CAP[M:0]/CAPB[M:0]。在一实施例中,相位差值为储存于存储器309中的3位编码值,而相位调整逻辑电路301会使用此相位差值,以推得延迟位CAP[M:0]/CAPB[M:0]。例如,对于代表3个延迟单位的程序化相位差值011b而言,CAP[M:0]位等于011b,而CAPB[M:0]位等于100b。相位调整逻辑电路301会根据预定的预设相位差值(如对应于4个延迟单位的100b),来设定预设延迟位KCAP[M:0]/KCAPB[M:0]。以此方式,若相位调整逻辑电路301以大于100b的相位差值来程序化,则会使CLK IN信号相对于该预设相位差值延迟一或多个选取时钟脉冲边缘,而若以小于100b的相位差值来程序化,则会相对于该预设相位差值提前一或多个选取时钟脉冲边缘。
在图示的实施例中,SYNC信号用以当作触发信号,以切换SEL信号。因此,若SEL信号为低电位或逻辑0且SYNC信号产生脉冲,则SEL信号会变成高电位或逻辑1。当SYNC信号再次产生脉冲时,SEL信号会再次变成低电位。当SEL信号为低电位时,MUX307的“0”输入端会被选取,以使得CLK OUT信号会相对于CLK IN信号延迟该预设相位差量。当SEL信号为高电位时,MUX307的“1”输入端会被选取,以使得CLK OUT信号会相对于CLK IN信号延迟存储器309所存的程序化相位差量。因此,在图示的实施例中,SYNC信号会刚好在CLK IN信号的第一上升或下降沿之前被触发或产生脉冲,而使一连串的一或多个边缘延迟或提前该程序化相位差量,然后SYNC信号会刚好在此一连串的最后一个边缘后再次产生脉冲,而返回到该预设相位差量。当然,此一连串边缘也可能为单一的边缘。
许多替代的实施方式可用于时钟脉冲相位差控制模块300。在其中一变化例中,会移除MUX307及时钟脉冲相位差缓冲器305,并修改相位调整逻辑电路301,以使CAP[M:0]/CAPB[M:0]在默认值与程序化值之间作切换。如此,时钟脉冲相位差缓冲器303的输出会直接设定CLK OUT信号。在另一种自动重置的变化例中,相位调整逻辑电路301会接收CLK IN信号,并在CLKIN信号的下个边缘后,将SEL信号自动切换回预设情形。如此,SYNC信号会刚好在目标边缘前发出脉冲,以使得相位调整逻辑电路301将SEL信号设定为高电位,以将目标边缘延迟或提前该程序化相位差量。接着,在此目标边缘之后,相位调整逻辑电路301会自动将SEL信号设回到低电位,继续平常的工作。在另一变化例中,SYNC信号依据电位而切换,而非由脉冲触发,所以当SYNC为低电位时,SEL信号为低电位,而当SYNC为高电位时,SEL信号为高电位。在此种情况中,SEL信号及其相关逻辑会被移除,而直接使用SYNC信号来控制MUX307的选择输入端。当然,如一般本技术领域的普通技术人员所已知的,还可以有许多其它的变化实施例。
图4是时钟脉冲相位差缓冲器400的一示范实施例概图,其用来实施所显示的实施例中的时钟脉冲相位差缓冲器303及305。CLK IN信号会送到一反相器/缓冲器401的输入端,而反相器/缓冲器401会在其输出端设定一信号IN0,送到另一反相器/缓冲器403的输入端。反相器/缓冲器403会在其输出端设定一信号IN1,而耦接到另一反相器/缓冲器405的输入端。反相器/缓冲器405会在其输出端设定一输出时钟脉冲信号CLK OX,对时钟脉冲相位差缓冲器303来说其为CLK01信号,而对时钟脉冲相位差缓冲器305来说则为CLK02信号。要注意的是,在图示的实施例中,由于反相器的数量为奇数,CLK OX信号会反相于对应的CLK IN信号。额外的反相器/缓冲器(未显示)可用来使时钟脉冲信号再次反相,而若有需要,可将反相器/缓冲器401、403或405中的任一个配置为缓冲器。
时钟脉冲相位差缓冲器400包括一组输入节点ACAP[2:0]/ACAPB[2:0],其耦接为接收时钟脉冲相位差缓冲器303所用的延迟位CAP[M:0]/CAPB[M:0],或接收时钟脉冲相位差缓冲器305所用的延迟位KCAP[M:0]/KCAPB[M:0]。ACAP0节点耦接至二个N沟道组件N1及N2的栅极,而ACAPB0节点耦接至二个P沟道组件P1及P2的栅极。ACAP1节点耦接至一对N沟道组件N3及N4(合起来标示为N4:N3)的栅极,并耦接至另一对N沟道组件N5及N6(合起来标示为N6:N5)的栅极。ACAPB1节点系耦接至一对P沟道组件P3及P4(合起来标示为P4:P3)的栅极,并耦接至另一对P沟道组件P5及P6(合起来标示为P6:P5)的栅极。ACAP2节点耦接至一阵列的四个N沟道组件N7、N8、N9及N10(合起来标示为N10:N7)的栅极,并耦接至另一阵列的四个N沟道组件N11、N12、N13及N14(合起来标示为N14:N11)的栅极。CAPB2节点耦接至一阵列的四个P沟道组件P7、P8、P9及P10(合起来标示为P10:P7)的栅极,并耦接至另一阵列的四个P沟道组件P11、P12、P13及P14(合起来标示为P14:P11)的栅极。
N沟道组件N1、N3、N4与N7-N10的漏极,以及P沟道组件P1、P3、P4与P7-P10的漏极均会耦接至反相器/缓冲器401的输出端。N沟道组件N2、N5、N6与N11-N14的漏极,以及P沟道组件P2、P5、P6与P11-P14的漏极均会耦接至反相器/缓冲器403的输出端。由参考标号407所表示的全部N沟道组件N1-N14及P沟道组件P1-P14的源极会浮接(浮接源极),所以在信号转态期间,从反相器/缓冲器401与403的输出端,会看到每个所耦接的组件的沟道及源极电容。
如图所示的局部时钟脉冲缓冲器400使用具有一或多个中间节点的循序耦接(sequentially-coupled)缓冲器,以及耦接至一或多个中间节点的二元分布N沟道及P沟道阵列来实施,以达成可数字控制的相位差。特别是,N沟道组件N1、N4:N3及N10:N7会构成二元分布的N沟道阵列,而P沟道组件P1、P4:P3及P10:P7会构成对应的互补且二元分布的P沟道阵列。以类似的方式,N沟道组件N2、N6:N5及N14:N11会构成另一个二元分布的N沟道阵列,而P沟道组件P2、P6:P5及P14:P11会构成另一个对应的互补且二元分布的P沟道阵列。在图示的实施例中,从CLK IN信号到CLK OX信号之间会提供二阶段的延迟,以补偿P沟道及N沟道组件的不同的导通及关闭特性。例如,第二阶段(IN0到IN1)中的N沟道组件关闭特性会补偿第一阶段(CLK IN到IN0)中的P沟道组件导通特性。每个时钟脉冲缓冲器的特定架构仅是范例,而一般本技术领域的普通技术人员皆能明了,此处也可使用任何其它型式的数字可编程延迟逻辑电路。
ACAP0/ACAPB0节点是用以控制一组N及P沟道组件(N1/P1及N2/P2),ACAP1/ACAPB1节点是用以控制二个阵列的类似N及P组件(N4:N3/P4:P3及N6:N5/P6:P5),而ACAP2/ACAPB2节点则用以控制四个阵列的N及P组件(N10:N7/P10:P7及N14:N11/P14:P11)。以此方式,设定ACAP2节点所导致的CLK IN信号的延迟,为设定ACAP0节点所导致CLK IN信号延迟的四倍。在一实施例中,每对P及N沟道组件会匹配,以提供实质上相同的电阻/电容(RC)特性,使得该3位编码信号每递增一次,即能多延迟一相当固定的延迟单位。在一实施例中,每个延迟单位约为6微微秒(ps)。因此,当ACAP0节点设定为高电位(逻辑1),而ACAPB0节点设定为低电位(逻辑0)时,在CLK IN信号与CLK OUT信号之间,会增加6ps的延迟。以类似的方式,当ACAP1节点设定为高电位,而ACAPB1节点设定为低电位时,会增加12ps的延迟,而当ACAP2节点设定为高电位,而ACAPB2节点设定为低电位时,会增加24ps的延迟。例如,ACAP2∶ACAP0=011b的值即相当于通过局部时钟脉冲缓冲器303会产生约18ps的总时钟脉冲延迟等。总之,使用3位延迟ACAP2∶ACAP0节点,可使延迟在0到48ps的范围内以6ps为单位增加。本技术领域的普通技术人员将了解到,设定ACAPx及ACAPBx信号之所以可产生如前述的延迟,是由于通道至栅极电容的形成,此种电容对应组件在其相关ACAPx及ACAPBx信号被设定时,从栅极所看到的。例如,一N沟道组件会看到一沟道至栅极电容,此因当其栅极为高电位时,从其漏极到源极会形成一反转通道,而形成通过N沟道组件的漏极所看到的通道至栅极电容。若该N沟道组件的栅极为低电位,则不会形成反转。例如,考虑组件N1(忽视寄生电容),若ACAP0为高电位,则信号IN0会看到N1的栅极电容、源极电容及漏极电容。但若ACAP0为低电位,则信号IN0只会看到N1的漏极电容。如图4所配置的P沟道组件在其对应的ACAPBx信号被设为低电位时,也会产生类似的延迟。
请往回参考图2,时钟脉冲相位差控制逻辑模块205A及205B最初均会使用预设相位差量(如4个延迟增量),以使EEE CLK0信号的每个边缘会相对于EEEE CLK信号延迟预设相位差,并且COREFB信号的每个边缘会相对于CORECLK信号延迟相同的预设相位差。若所有的时钟脉冲边缘具有相同量的相位差,则时钟脉冲产生器201会将EEEE CLK与COREFB信号间的时钟脉冲与工作周期保持同步(即使两者各自的边缘相对具有相位差)。时钟脉冲相位差控制逻辑电路205A会由SKADJ_QE信号进行程序化,以相对于预设相位差值,延迟或提前EEE CLK0的选取时钟脉冲边缘以及EEE CLK1-EEE CLKN信号的选取时钟脉冲边缘,如此则可依测试与调试目的进行不同的相位差调整。特定数量的时钟脉冲边缘的选取,是由使SYNC_QE信号刚好在所选取的时钟脉冲边缘之前与之后产生脉冲而取得。时钟脉冲相位差控制逻辑电路205B会由SKADJ_CC信号进行程序化,以延迟或提前CORECLK信号的对应时钟脉冲边缘一特定相位差量,该特定相位差量是与时钟脉冲相位差控制逻辑电路205A所用的相位差调整量大小相等且方向相反,以便在被送回时钟脉冲产生器201前补偿此相位差调整量。例如,若EEE CLK0信号的一个或多个边缘被提前二个延迟单位,则COREFB信号的对应时钟脉冲边缘会被延迟二个延迟单位作为补偿。因此,时钟脉冲产生器201不会知道所产生的相位差,以防止对EEEE CLK信号的时钟脉冲及/或相位进行不必要的修正。
图5示出了图2的选取信号的时序图,以显示根据本发明的一实施例,使用时钟脉冲相位差控制将EEE CLK0信号的选取上升沿延迟的情形。此时序图包括选取信号(Y垂直轴)相对于时间(X水平轴)的波型。所绘示的信号包括EEEE CLK信号、代表时钟脉冲相位差控制逻辑电路205A的CAP[2:0]/CAPB[2:0]位的一组信号CAP_QE、代表时钟脉冲相位差控制逻辑电路205B的CAP[2:0]/CAPB[2:0]位的一组信号CAP_CC、SYNC_QE信号、代表时钟脉冲相位差控制逻辑电路205A的SEL信号的信号SEL_QE、EEE CLK0信号(也代表施加于EEE CLK1-EEE CLKN信号的相位差)、CORECLK信号、SYNC_CC信号、代表时钟脉冲相位差控制逻辑电路205B的SEL信号的信号SEL_CC、以及COREFB信号。CAP_QE及CAP_CC信号的相关相位差值在图上显示为二进制数或“X”(忽略),后者施加100b的默认值。相对的相位差不必然配合所使用的时钟脉冲而照比例显示,而放大显示只是为了方便说明。特定时间点显示为以字母“T”开头的参考标号,其依讨论顺序所任意编的号码,并非代表时间上的任何特定序列或顺序。
图5显示了EEEE CLK信号的一特定序列的时钟脉冲周期,以显示本发明能使相位差施加于任何所选取的时钟脉冲边缘。如图所示,特定的时钟脉冲周期标号987,645,321是发生于EEEE CLK信号从时间T0到T1的相邻上升沿之间,下个周期标号987,645,322则发生于从时间T1到T2的相邻上升沿之间,其余依此类推。在时间T0的EEEE CLK信号的上升沿期间,SEL_QE信号为低电位,以至于时钟脉冲相位差控制逻辑电路205A会将4单位延迟施加于EEE CLK0信号,并设定时间T3的对应上升沿。EEEE CLK信号的后续下降沿发生于时间T4,而时钟脉冲相位差控制逻辑电路205A会将4单位延迟施加于EEE CLK0信号,并设定时间T5的对应下降沿。而在时间T6,SKADJ_QE及SKADJ_CC信号会被设定,以将时钟脉冲相位差控制逻辑模块205A及205B程序化,以2单位延迟施加于EEE CLK0信号,并将COREFB信号提前二个延迟单位。如图中时间T6所示,CAP_QE位会被程序化为110b,而CAP_CC位则被程序化为010b。
在时间T7,SYNC_QE信号会产生脉冲(先设为高电位,再变为低电位),以使SEL_QE信号在其后的时间T8被设为高电位。因为在时间T1的EEEE CLK信号的下个上升沿501期间,SEL_QE为高电位,并且因为时钟脉冲相位差控制逻辑电路205A是程序化为比4单位的预设延迟额外多2单位延迟,所以时钟脉冲相位差控制逻辑电路205A会在时间T9(其为时间T1经6个延迟单位后的时间点)将EEE CLK0信号的后续上升沿503设定。在其后的时间T10,SYNC_QE信号会再次产生脉冲,其在EEEE CLK信号的下个下降沿产生于时间T12之前,使SEL_QE信号在时间T11被设为低电位。因此,时钟脉冲相位差控制逻辑电路205A会在时间T13(其为时间T12经预设的4个延迟单位后的时间点)设定EEE CLK0信号的后续上升沿。因为在时间T2时,下个周期标号987,645,323开始,而在EEEE CLK信号的下个上升沿期间,SEL_QE信号会保持低电位,所以时间T14的EEE CLK0信号的下个上升沿会出现于时间T12经4个延迟单位后。
具相位差的EEE CLK0信号会送到时钟脉冲分布网络207进行处理,时钟脉冲分布网络207会产生具有相位差的时钟脉冲信号EEE CLK1-EEE CLKN,以送到时钟脉冲相位同步节点208。时钟脉冲相位同步节点208会送回COREFB信号,其为延迟版本的EEE CLK0信号。如图所示,CORECLK信号会相对于EEE CLK0信号延迟一延迟量“D”,使得在时间T15、T16、T17、T18及T19所产生的CORECLK信号的边缘分别相对于在时间T3、T5、T9、T13及T14所产生的EEE CLK0信号的对应边缘,延迟该延迟量D。由于在时间T15的CORECLK信号的上升沿期间,SEL_CC为低电位,所以时钟脉冲相位差控制逻辑电路205B会在时间T20(其为时间T15经4个延迟单位后的时间点)设定COREFB信号的后续上升沿。再者,COREFB信号的后续下降沿会产生于时间T21,其为时间T16的下个下降沿经4个延迟单位后的时间点。
SYNC_CC信号会在时间T22产生脉冲,而SEL_CC信号在时间T23会被设为高电位,其位于时间T17的CORECLK信号下个上升沿505之前。因为时钟脉冲相位差控制逻辑电路205B是以2个延迟单位的相位差(其代表相对于预设的4个延迟单位,提前2个延迟单位)来程序化,所以时钟脉冲相位差控制逻辑电路205B会在时间T24(其为时间T17的CORECLK信号上升沿505经2个延迟单位后的时间点)设定COREFB信号的下个上升沿507。SYNC_CC信号会在时间T25再次产生脉冲,而SEL_CC信号在时间T26(在时间T18的CORECLK信号下个下降沿之前)会回到低电位。因此,时钟脉冲相位差控制逻辑电路205B会在时间T27(其为时间T18经4个延迟单位后的时间点)设定COREFB信号的下个下降沿。再者,时钟脉冲相位差控制逻辑电路205B会在时间T28(其为时间T19的CORECLK信号下个上升沿经4个延迟单位后的时间点)设定COREFB信号的下个上升沿。
CORECLK信号会以EEE CLK0信号的延迟版的形式送回,以使得对应于上升沿503的CORECLK信号的上升沿505也会具有相位差。时钟脉冲相位差控制逻辑电路205B是由将边缘507相对于预设的延迟量提前2个延迟单位,来修正具有相位差的边缘503。以此方式,CORECLK信号在被送到时钟脉冲产生器201作为COREFB信号之前,会先做补偿,以防止时钟脉冲产生器201试图校正时钟脉冲及相位,来修正具有相位差的边缘503。因此,施加于EEECLK0的相位差量,可由在COREFB信号中引进一相反方向的相位差作为补偿,以使时钟脉冲产生器201所察觉到为预设的相位差状态。
总之,当SEL_QE信号为低电位时,EEE CLK0信号的每个边缘相对于EEEECLK信号会具有一预设量的相位差,而当SEL_QE信号为高电位时,则具有一程序化相位差量的相位差。在图5所示的情况中,时钟脉冲相位差控制逻辑电路205A会使EEE CLK0的单一上升沿503相对于启始EEEE CLK信号的时钟脉冲周期987,645,322的对应上升沿501,多出2个延迟单位的相位差。所有EEE CLK1-EEE CLKN信号的对应上升沿也会具有同样的相位差。此种调整目标边缘相位差的方式能辨识、隔离及分析IC200的时序问题。例如,IC200可能因为一或多种制程变化而产生不可预期的关键路径时序问题,使其不能以目标时钟脉冲速度执行,或是根本不能工作。一旦判断出有关键路径时序问题,则IC200会被程序化以调整及去除此时序问题,而能以目标时钟脉冲速度来工作。
图6是图2的选取信号的另一时序图,以显示根据本发明的一实施例,使用时钟脉冲相位差控制将EEE CLK0信号的选取上升沿提前的情形。图6的时序图与图5类似,包括相同信号(Y垂直轴)相对于时间(X水平轴)的波型。然而,此处时钟脉冲相位差控制逻辑电路205A被程序化为相对于该预设延迟量,使EEE CLK0信号的上升沿503提前3个延迟单位,并使COREFB信号的上升沿507延迟3个延迟单位。图6的工作实质上与图5类似,除了EEE CLK0信号在时间T9的上升沿503是上升于EEEE CLK信号在时间T1的上升沿501后仅一个延迟单位。再者,COREFB信号在时间T24的上升沿507,是在CORECLK信号在时间T17的上升沿505后经过7个延迟单位才被设定。若与图5做比较,则因时钟脉冲相位差控制逻辑电路205A已提供相对的补偿,所以无论时钟脉冲相位差控制逻辑电路205A所施加的相位差为何,送到时钟脉冲产生器201的COREFB信号都是相同的。
图7是图2的选取信号的另一时序图,以显示根据本发明的一实施例,使用时钟脉冲相位差控制将EEE CLK0信号的选取下降沿延迟的情形。图7的时序图类似图5及图6,包括相同信号(Y垂直轴)相对于时间(X水平轴)的波型。然而,此处时钟脉冲相位差控制逻辑电路205A虽以相对于4单位的预设延迟量提前1单位来程序化,但在时间T37时,时钟脉冲相位差控制逻辑电路205A则被程序化为延迟1单位。再者,在另一个任选的编号987,800,002时钟脉冲周期期间,目标边缘为EEEE CLK信号在时间T33的下降沿701。编号987,800,002的时钟脉冲周期产生于EEEE CLK信号在时间T30及T31的上升沿之间。前一个时钟脉冲周期987,800,001期间的EEEECLK信号的前一个下降沿产生于时间T32,而下个时钟脉冲周期987,800,003期间的EEEE CLK信号的下个下降沿则产生于时间T34。
在时钟脉冲周期987,800,001期间,SEL_QE信号为低电位,使得EEECLK0信号在时间T35(其为时间T32经4个延迟单位后的时间点)产生一下降沿。再者,EEE CLK0信号在时间T36(其为时间T30经4个延迟单位后的时间点)会产生下个上升沿。在时间T38,SYNC_QE信号会产生脉冲,而在时间T39,其位于时间T30之后且位于EEEE CLK信号在时间T33的下降沿701之前,SEL_QE信号会被设为高电位。在时间T40(其为时间T33的下降沿701经5个延迟单位后的时间点),时钟脉冲相位差控制逻辑电路205A会设定EEE CLK0信号的下个下降沿703。在时间T41,SYNC_QE信号会再次产生脉冲,而在时间T42,其位于EEEE CLK信号在时间T31的下个上升沿之前,SEL_QE信号会被设为低电位。因此,EEE CLK0信号在时间T43的下个上升沿,会产生于时间T31经4个延迟单位后的时间点,而EEE CLK0信号在时间T44的后续下降沿,则产生于EEEE CLK信号在时间T34的下个下降沿经4个延迟单位后的时间点。以此方式,相对于EEEE CLK信号的下降沿701,EEE CLK0信号的下降沿703会多具有一延迟单位的相位差。
如前所述,CORECLK信号会相对于EEE CLK0信号被延迟一延迟量“D”,其中CORECLK信号包括产生于时间T45、T46、T47、T48及T49的连续边缘,其分别对应于产生于时间T35、T36、T40、T43及T44的EEE CLK0信号的连续边缘,并且分别对应于产生于时间T50、T51、T54、T57及T58的COREFB信号的连续边缘。当SEL_CC信号为低电位时,COREFB信号在时间T50及T51的边缘会分别产生于CORECLK信号在时间T45及T46的边缘经4个延迟单位后的时间点。在时间T52,SYNC_CC信号会产生脉冲,而在CORECLK信号的下降沿705之前的时间T53,SEL_CC信号会被设为高电位。COREFB信号在时间T54的下个下降沿707会产生于CORECLK信号的下降沿705经3个延迟单位后的时间点,用来补偿。在时间T55,SYNC_CC信号会再次产生脉冲,而在时间T56,SEL_CC信号会回到低电位。因此,COREFB信号在时间T57及T58的下二个边缘,会分别产生于CORECLK信号在时间T48及T49的对应边缘经4个延迟单位后的时间点。
在图7所示的情况中,时钟脉冲相位差控制逻辑电路205A会使EEE CLK0的单一下降沿703相对于启始EEEE CLK信号的时钟脉冲周期987,8005,002的对应下降沿701,多出1个延迟单位的相位差。所有EEE CLK1-EEE CLKN信号的对应下降沿也会具有同样的相位差。CORECLK信号会以EEE CLK0信号的延迟版的形式送回,以使得对应于下降沿703的CORECLK信号的下降沿705也会具有同样的相位差。时钟脉冲相位差控制逻辑电路205B是由将下降沿707相对于预设的延迟量提前1个延迟单位,来修正具有相位差的下降沿703。以此方式,CORECLK信号在被送到时钟脉冲产生器201之前,会先做补偿,如前所述。
图8是图2的选取信号的另一时序图,以显示根据本发明的一实施例,使用时钟脉冲相位差控制将EEE CLK0信号的选取下降沿提前的情形。图8的时序图类似图7,包括相同信号(Y垂直轴)相对于时间(X水平轴)的波型。然而,此处时钟脉冲相位差控制逻辑电路205A被程序化为相对于该预设延迟量,使EEE CLK0信号的下降沿703提前2个延迟单位,并使COREFB信号的下降沿707延迟2个延迟单位。图8的工作实质上与图7类似,除了在时间T40的下降沿703下降于EEEE CLK信号在时间T33的下降沿701后仅二个延迟单位。再者,COREFB信号在时间T54的下降沿707,是在CORECLK信号在时间T47的下降沿705后经过6个延迟单位才被设定。若与图7做比较,则因时钟脉冲相位差控制逻辑电路205A已提供相对的补偿,所以无论时钟脉冲相位差控制逻辑电路205A所施加的相位差为何,送到时钟脉冲产生器201的COREFB信号都是相同的。
图9是图2的选取信号的另一时序图,以显示根据本发明的一实施例,使用时钟脉冲相位差控制将EEE CLK0信号的两个相邻边缘提前的情形。图9的时序图类似图8,包括相同信号(Y垂直轴)相对于时间(X水平轴)的波型。然而,此处时钟脉冲相位差控制逻辑电路205A被程序化为相对于该预设延迟量,使EEE CLK0信号的下降沿703及后续上升沿704提前2个延迟单位,并使COREFB信号的下降沿707及后续上升沿708延迟2个延迟单位。
SYNC_QE信号在时间T41的重置脉冲,产生于EEEE CLK信号在时间T31的上升沿702之后,是以在上升沿702期间,SEL_QE信号为高电位。因此,在时间T31的EEEE CLK信号上升沿702之后,EEE CLK0信号在时间T43的上升沿704也被提前2个延迟单位。CORECLK信号在时间T47及T48的对应下降沿705及上升沿706因而也会分别提前2个延迟单位。再者,SYNC_CC信号在时间T55的重置脉冲会产生于CORECLK信号在时间T48的上升沿706之后,使得SEL_CC信号在上升沿706期间为高电位。因此,在时间T48的CORECLK信号上升沿706之后,COREFB信号在时间T57的对应上升沿708会被延迟6个延迟单位。由于在时间T49的CORECLK信号下个下降沿之前,SEL_CC信号会变为低电位,所以COREFB信号在时间T58的后续下降沿会产生于CORECLK信号在时间T49的下降沿经4个延迟单位后的时间点,以补偿COREFB信号的时钟脉冲及相位,供时钟脉冲产生器201用。
图5至9的时序图显示,对EEE CLK信号所选取的任意数量的时钟脉冲边缘或连续时钟脉冲边缘,可应用时钟脉冲相位差控制逻辑电路205A来加以延迟或提前。时钟脉冲相位差控制逻辑电路205B则可用来施加与预设相位差值大小相等且方向相反的相位差值,以使时钟脉冲产生器201的PLL在工作时不会感受到所施加的相位差。
图10是根据本发明的一示范实施例,显示了用以调试IC200的时序问题的测试流程图。在步骤1001,由外部测试端口213,将IC200耦接至芯片测试器215。在下一步骤1003,则选取EEE CLK信号的一个或多个边缘来做测试。在下一步骤1005,决定每个选取边缘所要施加的相位差量。如上所述,不同的相位差量可施加于不同的时钟脉冲转态。在下一步骤1007,会将用以测试IC200的调试例程程序化,以利用所要的相位差量来测试所选取的边缘。调试例程可被加载于芯片测试器215或测试逻辑电路211或前二者的组合,以进行执行。
在下一步骤1009,会执行调试例程,并使IC200工作,以进行测试。要注意的是,有许多变化例及实施例可用来实施调试例程及测试程序。在一实施例中,调试例程是完全自动的,在测试人员启动后,就会执行到完成所规划的测试动作,然后自动停止。在此种情况下,调试例程会进行启动、执行及完成模拟与测试所需的所有步骤,以测试IC200上潜在的时序问题。在另一实施例中,调试例程可以任何不同程度的互动方式来实施。在互动的情况下,测试人员与调试例程互动合作来进行测试。例如,调试例程可能被程序化为启动与停止一定的次数,或响应预定触发点,如特定的时钟脉冲周期编号或类似项目,来启动与停止。测试人员可于任一或更多个停止点期间修改设定值,如相位差值及新触发点程序化,然后重新启动工作。
在下一步骤1011,会将相位差值送到IC200,并将时钟脉冲相位差控制逻辑电路程序化。例如,在时钟脉冲相位差控制逻辑电路205A及205B内的相位调整逻辑电路301的存储器309,会以所提供的相位差值来程序化。在一实施例中,在工作期间,调试例程会提供相位差值及/或自动将相位调整逻辑301程序化。在另一实施例中,在调试例程执行之前,或在预先排定的停止点期间,测试人员可手动地提供相位差值,并手动地将相位调整逻辑电路301程序化。
在IC200的工作期间,时钟脉冲控制逻辑电路会执行数个时钟脉冲功能,如下步骤1013中所述。时钟脉冲产生器201会产生主要的EEEE CLK信号,并且会使主要的EEEE CLK信号与COREFB信号同步。EEE CLK0信号的转态或边缘会由时钟脉冲相位差控制逻辑电路205A(其产生EEE CLK0信号)而具有相位差。EEE CLK0信号是由时钟脉冲分布网络207,以EEE CLK1-EEECLKN信号(其会从时钟脉冲相位同步节点208送回,作为CORECLK信号)的形式,来复制及分布。CORECLK信号的转态或边缘会由时钟脉冲相位差控制逻辑电路205B(其产生COREFB信号,作为送到时钟脉冲产生器的反馈信号)而具有相位差。
在下一步骤1015,刚好在每个选取边缘要产生相位差之前,SYNC信号(包括SYNC_QE及SYNC_CC信号)会被设定或产生脉冲。一开始,时钟脉冲相位差控制逻辑电路205A及205B会处于预设状态,其中时钟脉冲相位差控制逻辑电路205A会将预设相位差量施加到EEEE CLK信号的每个边缘,而时钟脉冲相位差控制逻辑电路205B则将预设相位差量施加到COREECLK信号的每个边缘。在下一步骤1017,当SYNC信号被设定或产生脉冲时,会施加程序化相位差值,以调整或改变EEE CLK信号及COREFB信号的对应边缘。在一实施例中,时钟脉冲相位差控制逻辑电路205B所使用的相位差量,相较于时钟脉冲相位差控制逻辑电路205A所用的相位差量,与预设相位差大小相等且方向相反。因此,对于每个被延迟的EEE CLK信号边缘而言,COREFB信号的对应边缘会被提前相同量,反之亦然。SYNC信号会变为无效或再次设定,以将时钟脉冲相位差控制逻辑模块205A及205B重置为预设状态,以施加预设相位差量。
在完成测试之后,在下一步骤1019,会储存测试结果,以便于辨识及分析IC200中的时序问题。在下一步骤1021,一旦任何时序问题被侦测到且隔离出来,则任何一个或多个局部时钟脉冲相位差会由IC200上的任何合适的程序化装置(如熔线或EPROM或类似物)来程序化,而完成测试。局部时钟脉冲相位差的程序化技术揭示及叙述于申请中的相关美国专利申请,标题为“用于微调集成电路的时钟脉冲信号的方法及装置”中,其在此全部并入做为参考。这种程序化技术可解决任何所辨识出的时序问题(如准备或保持时序问题),使IC200可实施或工作于较高的目标时钟脉冲。
根据本发明的实施例,本发明的集成电路时序调试装置及方法的一项优点是,可将可控制大小的时钟脉冲相位差送到构成部件,以侦测及隔离复杂的逻辑时序问题。另一项优点为,可提供一种用于调试关键路径问题的装置,此种问题可能会导致某些部件损坏。第三项优点为提供一种技术,其不同于导致芯片布局需要修改的复杂技术(如电子光束分析),而可由简单的测试分析技术(如JTAG技术),量化地测量及补偿制程变化所产生的效应。
虽然本发明及其目的、特征与优点已详细叙述,其它实施例也可包含在本发明的范围内。例如,若需要的话,可增设额外的阵列式N沟道及P沟道组件阶段或层级,以提供更多的延迟。再者,在不脱离本发明的精神及范围之下,可修改控制信号的特定工作方式。例如,SYNC信号可依电位切换(level-sensitive),而非脉冲式的。此外,虽然本申请考虑金氧半导体(MOS)型式组件(包括互补MOS及类似组件,如NMOS及PMOS晶体管)方面的应用,但是本发明以类似方式,亦可应用于模拟型式的技术及配置,如双载子组件及类似组件。
总之,以上所述,仅为本发明的较佳实施例而已。所有依本发明权利要求所作的均等变化与修饰,均仍属于本发明专利的范围内。

Claims (22)

1.一种集成电路,其特征在于,包括:
一时钟脉冲产生器,用以将一主要时钟脉冲信号与一反馈时钟脉冲信号同步化;
一第一可编程时钟脉冲相位差逻辑模块,耦接至该时钟脉冲产生器,用以接收一第一同步信号,并使该主要时钟脉冲信号具有相位差,以提供一具相位差的主要时钟脉冲信号;
一第二可编程时钟脉冲相位差逻辑模块,耦接至该时钟脉冲产生器,用以接收一第二同步信号及该核心时钟脉冲信号,并提供具有补偿相位差的该反馈时钟脉冲信号;
一时钟脉冲分布网络,用以将该具有相位差的主要时钟脉冲信号的多个副本分布于该集成电路上;
一时钟脉冲相位同步节点,用以接收该具有相位差的主要时钟脉冲信号的该些副本,并送回一核心时钟脉冲信号;以及
一外部接口;以及
一测试逻辑电路,耦接至该第一和第二可编程时钟脉冲相位差逻辑电路及该外部接口,用以使能该程序化相位差量的程序化及该同步信号的控制,
其中,该测试逻辑电路提供对应于该主要时钟脉冲信号的该第一同步信号,以及对应于该核心时钟脉冲信号的该第二同步信号。
2.如权利要求1所述的集成电路,其特征在于,该测试逻辑电路执行一调试例程,以将该第一和第二可编程时钟脉冲相位差逻辑电路程序化,及控制该同步信号。
3.如权利要求1所述的集成电路,其特征在于,该测试逻辑电路是由该外部接口所耦接的一外接芯片测试器,而能存取该第一和第二可编程时钟脉冲相位差逻辑电路,以程序化相位差及控制该同步信号。
4.如权利要求1所述的集成电路,其特征在于,该第一及第二可编程时钟脉冲相位差逻辑模块中的每一个包括:
一可编程相位调整逻辑电路,耦接为接收一对应同步信号,其为该第一及第二同步信号其中一个,该可编程相位调整逻辑电路是用以提供一组显示该程序化相位差量的延迟位;以及
一时钟脉冲相位差缓冲器,用以接收该组延迟位及一输入时钟脉冲信号,该输入信号为该主要时钟脉冲信号及该核心时钟脉冲信号的其中一个,其中,该时钟脉冲相位差缓冲器将该输入时钟脉冲信号延迟该组延迟位所决定的一相位差量。
5.如权利要求4所述的集成电路,其特征在于,该时钟脉冲相位差缓冲器包括:
多个循序耦接的缓冲器,具有接收该输入时钟脉冲信号的一输入端、至少一中间节点、以及提供一具相位差时钟脉冲信号的一输出端;以及
至少一阵列的P沟道及N沟道组件,每一该阵列具有接收该组延迟位的多个输入端,以及至少一输出端,耦接至该至少一中间节点。
6.如权利要求5所述的集成电路,其特征在于,该至少一阵列的P沟道及N沟道组件中的每一个包括一N沟道阵列,其包括多个具有浮接源极的二元分布的N沟道组件,其具有接收来自于该组延迟位的真值延迟位的输入端,且具有耦接至该中间节点的一输出端,该N沟道阵列也包括一P沟道阵列,其包括多个具有浮接源极的二元分布的P沟道组件,其具有接收来自于该组延迟位的互补延迟位的输入端,且具有耦接至该中间节点的一输出端。
7.如权利要求4所述的集成电路,其特征在于,该第一及第二可编程时钟脉冲相位差逻辑模块中的每一个还包括:
一第一组延迟位,位于该组延迟位;
一第一时钟脉冲相位差缓冲器,用以接收该第一组延迟位,并提供一第一具相位差时钟脉冲信号;
一第二组延迟位,显示一预设相位差值,并提供由该对应同步信号所控制的一选择信号;
一第二时钟脉冲相位差缓冲器,用以接收该输入时钟脉冲信号及该第二组延迟位,并将该输入时钟脉冲信号延迟由该第二组延迟位所决定的一预设相位差量,以提供一第二具有相位差时钟脉冲信号;以及
一选择逻辑电路,具有接收该第一具相位差时钟脉冲信号的一第一输入端、接收该第二具有相位差时钟脉冲信号的一第二输入端、接收该选择信号的一选择输入端、以及提供一选取的具有相位差时钟脉冲信号的一输出端。
8.如权利要求7所述的集成电路,其特征在于:
该第一可编程时钟脉冲相位差逻辑模块的该相位调整逻辑是以一第一相位差值进行程序化;以及
该第二可编程时钟脉冲相位差逻辑模块的该相位调整逻辑是以一第二相位差值进行程序化,以相对于该预设相位差量,提供与该第一相位差值大小相等且方向相反的一相位差量。
9.一种调试系统,用以改变一集成电路中一时钟脉冲相位差的可控制数量的时钟脉冲周期,该集成电路具有一外部测试端口,其特征在于,该调试系统包括:
整合于该集成电路上的一时钟脉冲控制逻辑电路,包括:
一延迟模块,用以延迟一第一时钟脉冲信号中一选定数量的转态,以提供一第二时钟脉冲信号,其中该第二时钟脉冲信号中每个所选取的转态是依据一第一同步信号,而被一预设相位差量与一选取相位差量两者之一所延迟;
一时钟脉冲产生器,用以将该第一时钟脉冲信号与一反馈时钟脉冲信号同步化;
一时钟脉冲分布网络,依据该第二时钟脉冲信号,分布至少一第三时钟脉冲信号;
一时钟脉冲相位同步节点,用以接收该至少一第三时钟脉冲信号,并送回一核心时钟脉冲信号;
一补偿延迟模块,用以延迟该第一时钟脉冲信号的该选取转态所对应的该核心时钟脉冲信号的转态,以提供该反馈时钟脉冲信号,其中该核心时钟脉冲信号的每一选取转态是依据一第二同步信号,被延迟一预设相位差量或一补偿相位差量的两者之一;
一测试逻辑电路,耦接至该延迟模块,并可由该外部测试端口进行存取,其使能动态地控制该第一同步信号,且使能动态地程序化该选取相位差量,该测试逻辑电路提供对应于该第一时钟脉冲信号的该第一同步信号,以及对应于该核心时钟脉冲信号的该第二同步信号;以及
一芯片测试器,由该外部测试端口耦接至该测试逻辑,用以提供该选取相位差量,并控制该第一同步信号。
10.如权利要求9所述的调试系统,其特征在于,该测试逻辑执行一测试例程,其下载自提供该选取相位差量且控制该第一同步信号的该芯片测试器。
11.如权利要求9所述的调试系统,其特征在于,该芯片测试器执行一测试例程,其通过该芯片逻辑,提供该选取相位差量且控制该第一同步信号。
12.如权利要求9所述的调试系统,其特征在于,该补偿相位差量是该选取相位差量相对于该预设相位差量的一反向差值。
13.一种集成电路时序调试方法,其特征在于,包括步骤:
(a)经由一外部测试接口将一芯片测试器耦接至该集成电路的测试逻辑电路上;
(b)经由时钟脉冲输入接脚将一外部时钟脉冲信号输入该集成电路的时钟脉冲产生器上,该时钟脉冲产生器将利用所述外部时钟脉冲信号产生主要时钟脉冲信号;
(c)通过一调试例程将该集成电路的该测试逻辑电路程序化,以便将第一程序化的相位差值及第一同步信号和第二程序化的相位差值及第二同步信号分别提供给第一钟脉冲相位差逻辑电路和第二时钟脉冲相位差逻辑电路;
(d)将第一时钟脉冲相位差逻辑电路和第二时钟脉冲相位差逻辑电路程序化;
(e)通过该程序化的测试逻辑电路对该集成电路进行测试;以及
(f)储存测试结果,对该集成电路进行后续分析及处理。
14.如权利要求13所述的方法,其特征在于,所述步骤(c)的所述调试例程包括设定相位差调整信号以及同步信号,以将所述程序化的相位差值提供给该脉冲相位差逻辑电路,所述同步信号用于选取所述主要时钟脉冲信号的边缘。
15.如权利要求14所述的方法,其特征在于,所述选取所述主要时钟脉冲信号的边缘是依据所述第一同步信号刚好在所选取的主要时钟脉冲边缘之前与之后产生脉冲而取得。
16.如权利要求13所述的方法,其特征在于,所述将第一时钟脉冲相位差逻辑电路和第二时钟脉冲相位差逻辑电路程序化的步骤(d)分别是由所述测试逻辑电路以第一程序化的相位差值和第二程序化的相位差值来实现的。
17.如权利要求13所述的方法,其特征在于,所述步骤(e)包括子步骤:
(e1)将在第一时钟相位差逻辑电路的相位调整逻辑电路的储存器中储存并经由第一组延迟位传送至第一时钟脉冲缓冲器的该第一程序化的相位差量、在第一时钟相位差逻辑电路的第二组延迟位设置并传送至第二脉冲相位差缓冲器的预设相位差量、由所述测试逻辑电路提供的第一同步信号、以及在第一时钟相位差逻辑电路的相位调整逻辑电路的第一选择信号,并通过第一多工器由所述主要时钟脉冲信号获得基本时钟脉冲信号;
(e2)所述基本时钟脉冲信号经由时钟脉冲分布网络以及时钟脉冲相位同步节点转换成核心时钟脉冲信号;以及
(e3)将在第二时钟相位差逻辑电路的相位调整逻辑电路的储存器中储存并经由第一组延迟位传送至第一时钟脉冲缓冲器的第二程序化的相位差、在第二时钟相位差逻辑电路的第二组延迟位设置并传送至第二脉冲相位差缓冲器的预设相位差量、由所述测试逻辑电路提供的第二同步信号、以及由第二同步信号所控制的并由第二时钟相位差逻辑电路的相位调整逻辑电路输出的第二选择信号,并通过第二多工器由所述核心时钟脉冲信号获得反馈脉冲信号。
18.如权利要求17所述的方法,其特征在于,所述基本脉冲信号为所述主要时钟脉冲信号的具有相位差的版本。
19.如权利要求17所述的方法,其特征在于,所述核心时钟脉冲信号为所述基本时钟脉冲信号的具有一延迟量的版本。
20.如权利要求17所述的方法,其特征在于,所述反馈时钟脉冲信号为核心时钟脉冲信号的具有另一相位差的版本。
21.如权利要求17所述的方法,其特征在于,所述第一程序化的相位差量相对与所述预设相位差量的差和所述第二程序化的相位差量相对与所述预设相位差量的差大小相等且方向相反。
23.如权利要求18或20所述的方法,所述反馈时钟脉冲信号与所述主要时钟脉冲信号同步。
CNB2004100314683A 2003-10-09 2004-03-29 集成电路时序调试装置及方法 Expired - Lifetime CN1307800C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/682,351 2003-10-09
US10/682,351 US6903582B2 (en) 2002-12-13 2003-10-09 Integrated circuit timing debug apparatus and method

Publications (2)

Publication Number Publication Date
CN1529414A CN1529414A (zh) 2004-09-15
CN1307800C true CN1307800C (zh) 2007-03-28

Family

ID=34314138

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100314683A Expired - Lifetime CN1307800C (zh) 2003-10-09 2004-03-29 集成电路时序调试装置及方法

Country Status (1)

Country Link
CN (1) CN1307800C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104657306A (zh) * 2013-11-22 2015-05-27 阿尔特拉公司 具有高速调试访问端口的集成电路

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100507588C (zh) * 2006-06-09 2009-07-01 华为技术有限公司 一种JTAG Bridge的接口时序设计方法及其实现装置
CN101110590B (zh) * 2007-08-21 2011-05-25 中兴通讯股份有限公司 一种时序余量检测过程中相位调整的方法及装置
US7787314B2 (en) * 2008-09-11 2010-08-31 Altera Corporation Dynamic real-time delay characterization and configuration
US8258775B2 (en) * 2009-04-15 2012-09-04 Via Technologies, Inc. Method and apparatus for determining phase error between clock signals
CN102254055B (zh) * 2011-03-30 2012-09-19 山东华芯半导体有限公司 集成电路动态时序检测方法
CN102854451A (zh) * 2011-06-29 2013-01-02 鸿富锦精密工业(深圳)有限公司 印刷电路板的信号群延迟分析系统及方法
CN106209060B (zh) * 2016-06-27 2019-04-19 东南大学 一种基于电流监测的时序错误监控系统
CN109039306A (zh) * 2018-06-13 2018-12-18 晶晨半导体(深圳)有限公司 测量数字接口时序余量的系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03257949A (ja) * 1990-03-06 1991-11-18 Advanced Micro Devices Inc 遅延回路
US5809034A (en) * 1996-09-27 1998-09-15 Altera Corporation Apparatus and method for operating electronic device testing equipment in accordance with a known overall timing accuracy parameter
EP1004168A1 (en) * 1998-06-22 2000-05-31 Xilinx, Inc. Delay lock loop with clock phase shifter
US6192092B1 (en) * 1998-06-15 2001-02-20 Intel Corp. Method and apparatus for clock skew compensation
WO2003050944A1 (en) * 2001-12-12 2003-06-19 Emulex Design & Manufacturing Corporation Phase-locked loop (pll) circuit for selectively correcting clock skew in different modes

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03257949A (ja) * 1990-03-06 1991-11-18 Advanced Micro Devices Inc 遅延回路
US5809034A (en) * 1996-09-27 1998-09-15 Altera Corporation Apparatus and method for operating electronic device testing equipment in accordance with a known overall timing accuracy parameter
US6192092B1 (en) * 1998-06-15 2001-02-20 Intel Corp. Method and apparatus for clock skew compensation
EP1004168A1 (en) * 1998-06-22 2000-05-31 Xilinx, Inc. Delay lock loop with clock phase shifter
WO2003050944A1 (en) * 2001-12-12 2003-06-19 Emulex Design & Manufacturing Corporation Phase-locked loop (pll) circuit for selectively correcting clock skew in different modes

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104657306A (zh) * 2013-11-22 2015-05-27 阿尔特拉公司 具有高速调试访问端口的集成电路
CN104657306B (zh) * 2013-11-22 2019-03-15 阿尔特拉公司 具有高速调试访问端口的集成电路

Also Published As

Publication number Publication date
CN1529414A (zh) 2004-09-15

Similar Documents

Publication Publication Date Title
CA1326713C (en) Computer system clock generator
KR100810817B1 (ko) 집적 회로
KR100512935B1 (ko) 내부 클럭신호 발생회로 및 방법
US7810003B2 (en) Method of generating test clock signal and test clock signal generator for testing semiconductor devices
EP2221970A2 (en) Clock control circuit and clock control method
CN1307800C (zh) 集成电路时序调试装置及方法
KR20020002526A (ko) 링 딜레이와 카운터를 이용한 레지스터 제어 지연고정루프
US6903582B2 (en) Integrated circuit timing debug apparatus and method
KR100408727B1 (ko) 클럭 동기 장치
KR100313255B1 (ko) 디지털주파수체배기용조합지연회로
US7716514B2 (en) Dynamic clock phase alignment between independent clock domains
CN113360444B (zh) 一种基于菊花链级联数据产生系统的数据同步产生方法
US6359483B1 (en) Integrated circuit clock distribution system
US6822914B2 (en) Circuits and methods for generating high frequency extended test pattern data from low frequency test pattern data input to an integrated circuit memory device
KR102038831B1 (ko) 송신 장치, 수신 장치 및 이를 포함하는 시스템
KR100418470B1 (ko) 최적의 신호 발생 시간에 출력 클록 신호를 발생시키기위한 회로
US7221126B1 (en) Apparatus and method to align clocks for repeatable system testing
KR100673678B1 (ko) 데이터 입력 도메인 크로싱 마진을 보장하는 반도체 메모리장치의 데이터 입력 회로 및 그 데이터 입력 동작 방법
US5487163A (en) Fast synchronization of asynchronous signals with a synchronous system
US7124314B2 (en) Method and apparatus for fine tuning clock signals of an integrated circuit
US6275068B1 (en) Programmable clock delay
CN1322673C (zh) 集成电路及用于微调一集成电路时钟信号的方法和系统
JP2000249747A (ja) 半導体試験装置のタイミング信号発生回路
KR940008732B1 (ko) 클럭 선택 제어회로
KR100870753B1 (ko) 동기형 기억 장치 및 그 제어 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CI01 Publication of corrected invention patent application

Correction item: Inventor

Correct: Darius D. Geisking

False: (the first inventor) Daruiersi D Gus Xin

Number: 37

Volume: 20

CI02 Correction of invention patent application

Correction item: Inventor

Correct: Darius D. Geisking

False: (the first inventor) Daruiersi D Gus Xin

Number: 37

Page: The title page

Volume: 20

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: ( THE FIRST INVENTOR ) DARIUS D. GASKIN TO: DARIUS D. GEISKING

ERR Gazette correction

Free format text: CORRECT: INVENTOR; FROM: ( THE FIRST INVENTOR ) DARIUS D. GASKIN TO: DARIUS D. GEISKING

C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20070328