CN1794200A - 定序器和定序方法 - Google Patents
定序器和定序方法 Download PDFInfo
- Publication number
- CN1794200A CN1794200A CNA2005100931593A CN200510093159A CN1794200A CN 1794200 A CN1794200 A CN 1794200A CN A2005100931593 A CNA2005100931593 A CN A2005100931593A CN 200510093159 A CN200510093159 A CN 200510093159A CN 1794200 A CN1794200 A CN 1794200A
- Authority
- CN
- China
- Prior art keywords
- sequencer
- sequencing
- nextstate
- sequencing element
- actual
- 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.)
- Pending
Links
- 238000012163 sequencing technique Methods 0.000 title claims abstract description 154
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000003860 storage Methods 0.000 claims description 30
- 230000006386 memory function Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 5
- 230000011664 signaling Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3177—Testing of logic operation, e.g. by logic analysers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/25—Testing of logic operation, e.g. by logic analysers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/02—Comparing digital values
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Logic Circuits (AREA)
- Tests Of Electronic Circuits (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种用于定序的方法和装置,其基于资源来确定各个可能的前一状态的可能的下一状态,基于实际前一状态来选择一个可能的下一状态作为实际下一状态,并将该实际下一状态作为实际前一状态而进行传递。
Description
技术领域
本发明涉及逻辑分析器,更具体地说,涉及逻辑分析器中的定序器。
背景技术
现在使用的逻辑分析器通过观察多个信道的进入数字数据,并基于进入数据中标识出的位样式(bit pattern)来执行数据存储功能,从而进行工作。逻辑分析器的智能依赖于它的定序器,其观察进入数据信号,并基于进入数据的样式来产生信令。所述信令一般是用于指示逻辑分析器的其它部分执行功能的一组输出信号。用户能够指定要被执行的功能,以及什么样的输入样式会使得所指定的功能被执行。逻辑分析器的定序器是可编程状态机,其基于进入数据中的样式而作出决定。一种实现状态机的方法是提供查找表(这里称为“LUT”)。这样,LUT接受定序器的当前状态以及进入数据作为输入,以提供这样的输出,该输出表明定序器的新状态以及被预定为发起执行所指定的功能的信令。理论上,定序器以进入数据的速度进行工作。但是,随着数据速度和信道数的增加,提供足够快的定序器以容纳进入数据变得愈发困难。
解决数据速度的挑战的一种方法是对进入数据进行解复用,以得到对于LUT来说更易于处理的速度。但是,对于每个解复用系数,为实现定序器而对存储器的需求呈几何增长,而且该解决方案的成本很快就变得过于高昂。另外,需要更多的时间来处理通过定序器的解复用后的数据,而且在某些时候,通过解复用而获得的好处由于增加的处理时间而失去了。另一种方法是对多个LUT进行级联以减少对存储器的需求。但是很不利的是,每个LUT和互连逻辑仍旧必须以进入数据的速度进行工作。目前,进入数字数据的速度是2GHz,并且还在增长。使用当前技术,级联的LUT不能以该速度进行工作。
因此,需要提供这样的定序器,其能够以进入数字数据的速度进行工作,并且具有能够随着技术进步而提高速度的能力。
发明内容
为了解决上述问题而提出本发明。本发明的一个方面公开了一种定序器,包括:以级联形式组合的至少两个定序元件,所述定序元件包括多个查找表,每个查找表接受资源并向所述资源提供各自的可能的下一状态,其中每个可能的下一状态与所述定序器的不同的前一状态有关;以及定序器复用器,其接收所述可能的下一状态,并基于实际前一状态,在定序器复用器的输出处提供所述可能的下一状态之一,作为实际下一状态,其中所述定序元件之一的所述实际下一状态是所述定序元件中另一个的所述实际前一状态。
本发明的另一方面公开了一种用于定序的方法,包括以下步骤:基于资源来确定各个可能的前一状态的可能的下一状态;基于实际前一状态,选择所述可能的下一状态之一作为实际下一状态;将所述实际下一状态作为所述实际前一状态进行传递;以及重复所述确定、选择和传递的步骤。
根据本发明,可以获得这样的定序器,其能够以进入数字数据的速度进行工作,并且具有能够随着技术进步而提高速度的能力。
附图说明
根据下面的详细描述并结合附图,可理解本发明的教导,在附图中:
图1是逻辑分析器的方框图。
图2是根据本教导的定序器的电路图。
图3是根据本教导的定序元件的电路图。
图4是根据本教导的处理的流程图。
图5和图6分别示出根据本教导的定序器和定序元件的另一实施方式。
图7、8和9示出了根据本教导的定序器和定序元件的另一实施方式。
具体实施方式
具体参照图1,其示出了根据本发明教导的、包括定序器102的逻辑分析器的基本构造方框图。逻辑分析器接受来自DUT 108的进入数字数据106,该进入数字数据106由DUT时钟110锁存在状态捕获寄存器104中。解复用器122接受捕获寄存器的输出107,并对其进行8比1的解复用,以将解复用后的数据126同时提供给资源发生器123和等待时间匹配寄存器112。资源发生器123接受解复用后的数据126,并将其与用户所建立的样式125进行比较。资源发生123中的样式匹配结果生成了资源124。由于资源124是解复用的,因此可以以比进入数据速率慢的速度进行进一步的数据处理。定序器102接受资源124,并生成一个或多个控制信号114、116,以用于数据存储。来自定序器102的控制信号114、116被称为触发114和存储116,它们连接到轨迹格式化(trace formatter)118。轨迹格式化118接受等待时间匹配寄存器112的输出128,并选择性地在存储器120中存储一个或多个周期的进入数字数据样式130,以最终提供给逻辑分析器的用户。在特定实施方式中,触发控制信号114及时地控制(anchor)逻辑分析器测量。存储控制信号116控制是否在存储器120中存储任何一个周期的数字数据。
具体参照图2,其示出了包括多个定序元件200的根据本教导的定序器102的第一实施方式。在特定实施方式中,解复用器122对状态捕获寄存器104的输出进行8比1解复用。其它实施方式可具有不同的解复用倍数。由于在本特定实施方式中采用8比1复用,因此进入数据106的每8个周期对应于一个资源周期。在使用8比1解复用的特定实施方式中,有8个定序元件200,每个定序元件处理一个数据周期。定序元件200以级联组合的形式,通过实际下一状态218信号和实际前一状态219信号而互连。来自第一定序元件200a的实际下一状态输出218变为第二定序元件200b的实际前一状态输入219。所有的定序元件200都类似地互连。第八定序元件200h的实际下一状态218被锁存在状态锁存302中。状态锁存器的输出304连接到第一定序元件200a的实际前一状态输入219。因此,最后一个定序元件200h的实际下一状态218在下一资源周期中通知第一定序元件200a。因此,定序元件200在接收下一资源周期之前,使得8个进入数据周期适当地处理一个当前的资源周期。每个定序元件200生成触发和存储控制信号114、116,以提供给轨迹格式化器118。通过等待时间匹配寄存器112和轨迹格式化器118的数据路径被类似地解复用,并且与定序器102中进行的处理并行进行。从定时的角度来看,来自第一定序元件200a的控制信号114、116与对进入数据106的每8个周期中的第一周期的控制有关,来自第二定序元件200b的控制信号114、116与对进入数据106的每8个周期中的第二周期的控制有关,来自第八定序元件200h的控制信号114、116与对进入数据106的每8个周期中的最后一个周期的控制有关。因此在特定实施方式中,轨迹格式化器118接收8个触发控制信号114和8个存储控制信号116。
具体参照图3,其示出了根据本教导的第一定序元件200a的实施方式,其中有4个存储器,分别用作第一、第二、第三和第四查找表201~204。每个查找表201~204都被配置为基于其输入124a来确定四个可能的前一状态中每一个的下一可能状态205~208。第一查找表201假设前一实际状态是状态0,并基于输入124a来确定下一可能状态205;第二查找表202假设前一实际状态是状态1,并基于相同的输入124a来确定下一可能状态206;第三查找表203假设前一实际状态是状态2,并基于相同的输入124a来确定下一可能状态207;第四查找表204假设前一实际状态是状态3,并基于相同的输入124a来确定下一可能状态208。所示示例讨论了4状态的状态机。用于具有多于4个状态的状态机的定序元件的替换实施方式可以具有额外的查找表以容纳额外的状态。每个查找表201~204接受资源124的子集作为自己的输入124a。由于资源子集124a被提供给查找表201~204,因此分别在查找表201~204的输出处提供可能的下一状态205~208。因为本教导的定序器是状态机,因此实际下一状态基于进入数据106以及实际前一状态。对下一状态的多个确定结果为所有的前一状态的可能性提供了有条件的下一状态,并且这些确定结果在查找表处理阶段独立于实际前一状态219。可能的下一状态205~208被锁存在第一、第二、第三和第四定序器寄存器209~212中。用于第一到第四定序寄存器209~212的定序元件时钟信号220包括DUT时钟110的派生信号。在使用8比1解复用的实施方式中,时钟信号220等于DUT时钟110的频率的1/8,并与之同步。各定序器寄存器209~212的输出213~216反映了各个下一可能状态205~208,并且被提供给定序器复用器217。定序器复用器217(所有可能的下一状态对其可用)基于实际前一状态219,从下一可能状态205~208中选择实际下一状态218。有利的是,对可能的下一状态205~208的确定能够发生在对实际前一状态219的确定之前,或与其并行发生。因此,对实际下一状态218的最终确定是一种复用器选择事件,它是比查找表操作更快的处理。查找表的输出205~208还包括与正被处理的资源子集124a有关的触发控制信号114和存储控制信号116的值。图2中的每个定序元件200都具有图3所示的定序元件的结构。当第一定序元件200a根据第一资源子集124a确定了实际下一状态218时,实际下一状态218作为实际前一状态而被提供给第二定序元件200b。然后,第二定序元件200b的定序器复用器217能够根据第二资源子集124b选择实际下一状态218,并将其提供给第三定序元件200c。因此,实际下一状态218依次连续传过定序元件200a到200h。因为所有可能的下一状态都已对定序器复用器217可用,因此对实际下一状态218的确定能够很迅速地依次连续传过。当第八定序元件200h作出确定后,当前资源周期的所有资源124都被处理了。然后,第八定序元件200h从最后的资源周期得到的实际下一状态218被存储在状态锁存302中。因此,用于下一资源周期的实际前一状态219被保持在状态锁存输出304中,从而为下一资源周期作准备。本领域的普通技术人员将从图2和图3认识到,对每个资源子集124a到124h的查找表处理是并行发生的,并且在各个输入213到216向每个定序器复用器217提供所有可能的下一状态。
具体参照图4,其示出了根据本教导的处理流程图。在使用根据本教导的定序器的逻辑分析器的具体示例中,存在来自DUT 108的N位进入数据106、DUT时钟110以及6个用户规定的样式匹配(pattern match)。在每个数据周期,资源发生器123将8个解复用后的数据状态中的每一个与6个样式匹配进行比较,以生成6个比较结果位。因此,对于8比1解复用402,资源发生器123生成6×8=48位的资源124,以提供给定序器102。8个定序元件200中的每一个分别接收6位资源子集124a到124h。在步骤404,资源子集124a到124h分别被同时提供给定序元件200a到200h。在步骤406,每个定序元件200a到200h中的查找表201到204分别对每个资源子集124a到124h确定所有可能的下一状态205到208。每个可能的下一状态205到208被锁存在每个定序元件200a到200h的定序寄存器209~212中,从而使得它们在定序器复用器217的输入处是可用的。在使得实际前一状态219从前一定序元件可用之后,在步骤408中,定序器复用器217选择在其输入处可用的可能的下一状态之一作为实际下一状态218。在步骤410中,在来自前一定序元件200的每个实际下一状态218被传输到下一定序元件200之后,定序器复用器217选择适当的实际下一状态,并且将实际下一状态218作为实际前一状态219依次连续传过定序器102。第八定序元件200h的实际下一状态218被锁存到状态锁存器302中,并且作为实际前一状态219被提供给第一定序元件200a,以在下一资源周期中使用。在412中,重复确定所有可能下一状态、选择实际下一状态和将实际下一状态218作为实际前一状态219传输到下一定序元件200的过程。
作为定序器处理的一部分,逻辑分析器计数器开始于某一可编程值,并且可以基于资源子集124a到124h的值而被任意定序元件200a到200h减少。例如,逻辑分析器可被编程为在匹配某一特定样式或范围一定次数之后触发。为了执行这种功能,计数器被加载某一值,并且每次匹配都减少该值,直到该计数器达到最终计数,此时,它就执行编程的功能。当计数器达到最终计数时,定序器102就根据针对最终计数条件编程的功能执行动作。为了实现根据本发明教导的定序器实施方式中的计数器,每个定序元件200处理用于各个资源子集的计数器。逻辑分析器计数器最好有较大的宽度。然而,计数器越宽,计数器处理需要的时间就越多。在特定的实施方式中,计数器是一种24位的元件。为了减少电路数量和处理计数器的处理时间,24位的计数器被精简为在每个定序元件200中使用的4位的计数器代理。计数器代理是通过以下方法实现的:对计数器的高21位进行精简“或”运算而将其精简为计数器的第四位,而计数器的最低3位不变。因为在特定实施方式中的定序器102在单个资源周期中对8个数据周期进行操作,所以4位的计数器代理的信息足以来确定在8个数据周期中计数器是否达到最终计数,并通过所有定序元件200进行处理而不丢失计数器一致性。
具体参照图5,其示出了包括用于处理计数器和计数器代理的电路的定序器102的另一种实施方式。定序元件200a到200h中的每个把计数器代理作为简单的4位计数器处理。在所有八个定序元件200都已处理过资源124和计数器代理之后,计数器整(clean-up)电路550恢复整个24位计数器的一致性,为处理下一资源周期作准备。在资源处理期间,存在某些可能导致定序元件200重置计数器的条件。例如,计数器可能正对数据中的样式或范围匹配进行计数,但是也被编程为在发现另一种样式时被重置。如果重置,则该计数器就被加载了重置值。在特定的逻辑分析器实现方式中,第一、第二、第三和第四24位计数器重置值510、511、512和513由每个定序元件200接收到。如果出现重置条件,则定序元件200根据定序器102的当前状态选择计数器重置值510到513之一。每个定序元件(例如200b)从前一定序元件(例如200a)接收4位的前一计数器代501。每个定序元件200基于各自的资源子集124和前一计数器代理值501来计算下一计数器代503。下一计数器代503作为前一计数器代理501被提供给下一定序元件200。计数器寄存器505存储当前计数器值,以在下一资源周期中提供给第一定序元件200a。因为定序元件200处理计数器代理,所以在第八定序元件200h的输出处布置有计数器整理电路,用于恢复在计数器寄存器505中维护的24位值的一致性。因此,计数器寄存器505维护每个资源周期的正确的计数器值。
基于资源124重置定序器102会导致计数器重置。取决于定序器102的当前状态,计数器可能被重置为不同的重置值。因此,在4状态定序器中,存在四个各自的计数器重置值510到513。1位重置和2位重置状态被依次连续传过八个定序元件200,以维护用于计数器整理电路550的资源周期中的重置信息。资源周期的开始没有重置,所以逻辑“0”被建立为第一重置入514a和重置状态入515a。在信号被依次连续传过每个定序元件200之后,每个定序元件200从前一定序元件200接受重置入514和重置状态入515信号。如果在定序元件200中没有重置发生,则重置入514和重置状态入515未加改变地作为重置出516和重置状态出517被传递至下一定序元件200。在当前资源周期中,取决于资源124a,前一计数器值501被减少或者不被减少,然后作为下一计数器值503被传递到至下一定序元件200,并且作为前一计数器值501而被下一定序元件200接收到。如果由于各个资源子集124a到124h而导致重置发生,则定序元件200设置重置出516,以作为重置入514提供给下一定序元件200,指示在当前资源周期中已发生了重置。如果发生了重置,定序元件200也设置重置状态出517,指示在其中发生了重置的状态。重置状态出517作为重置状态入515被提供给下一定序元件200。定序元件200基于由定序元件下一状态所确定的计数器重置值510到513之一,进一步将计数器代理出503重置为适当的计数器代理重置值。在所有定序元件200都处理了重置状态517和重置信号514之后,计数器整理电路550恢复计数器值的一致性,用于下一资源周期。因为定序元件200将4位计数器代理作为简单计数器处理,所以来自最后一个定序元件200h的4位计数器代理出503的最高位是这样的指示,其指出在最后的资源周期中,是否发生了对最高的第四位是其代理的计数器的高21位的借位。具体地说,当最后一个定序元件的计数器代理出503的第四位为“0”时,发生了对4位计数器代理的最高位的借位。因此,最后一个定序元件的计数器代理出503的第四位的0值指示为下一资源周期作准备的计数器的高21位的减。如果未对4位计数器代理出503的最高位作出借位,即,当计数器代理出的第四位的值为“1”时,则未指示计数器的高21位的减。当发生重置时,计数器整理电路通过接受每个计数器重置值510~513、元件549将每个值减一、并且将减少后的值提供给4:1第一状态计数器复用器551,来计算该计数器的高21位的正确值。每个计数器重置值的相同的高21位也未减少地被提供给4:1第二状态计数器复用器552。通过使用重置状态出517,选择输入减少后重置计数器复用器551中的四个可能输入之一并选择输入重置计数器复用器552中的四个可能的输入之一。因此,如果代理指示了重置和借位,或者代理指示了重置但是未指示借位,则在代表计数器的高21位的第一状态计数器复用器551和第二状态计数器复用器552的输出处有两个可能的计数器高21位可用。在计数器整理电路中预先计算的是当前计数器的减少后的值和未减少的值。当前计数器的减少后的值和未减少的值作为输入分别被提供给第一和第二重置复用器553、554。到第一和第二重置复用器553、554的另一输入分别是第一和第二状态计数器复用器551、552的输出。基于最后一个定序元件200h的重置出514来选择在第一和第二重置复用器553、554的输出处提供何值。因此,第一和第二重置复用器的输出提供已处理了任何重置条件的减少后的和未减少的条件下的计数器的正确的高21位。第一和第二重置复用器553、554的输出被提供给借位选择复用器555。来自最后一个定序元件200h的计数器代理出503的代理位556从提供给借位选择复用器555的输入中选择在该借位选择复用器的输出处提供的输出。如果代理位556具有值0,则在上一资源周期中的某点处发生了借位,并且选择了减少后的正确的计数器高21位。如果代理位556具有值1,则未发生借位,并且选择了未减少的正确的计数器高21位。因此,借位选择复用器555的输出代表在重置和借位处理之后的正确的计数器高21位。借位选择复用器555的输出与计数器出503的低3位重新组合,以存储在计数器寄存器505中,其在下一时钟边沿被锁存。因此,计数器寄存器505中的值反映了正确的计数器值。然后,在下一资源周期中,计数器寄存器505的低3位作为第一定序元件200a的前一计数器代理值501的低3位被反馈回去。在下一资源周期中,计数器寄存器505的高21位通过精简“或”运算而精简为第一定序元件200a的前一计数器代理值501的计数器代理位。高21位也被提供给整理电路550,以在下一资源周期中的计数器处理中使用。
具体参照图6,其示出了根据本教导的定序元件200的实施方式。图6的实施方式被配置为实现与附图中的图3所示的相同的4状态状态机,但是也被配置为处理参考图5讨论的计数器处理。在图6的实施方式中,在每个定序元件200中存在第一和第二两组查找表,每组4个。当最终计数条件为假时,第一组查找表201a到204a基于资源子集124a确定四个可能的下一状态213a到216a。当最终计数条件为真时,第二组查找表201b到204b基于资源子集124a确定四个可能的下一状态213b到216b。每组查找表201a到204a和201b到204b分别具有与其相关联的定序器复用器217a和217b。每个定序器复用器217a和217b接收实际前一状态219来控制每个定序器复用器输出的选择。图6的实施方式还具有计数器查找表622,该计数器查找表接受与提供给查找表201a到204a和201b到204b的相同的资源子集124a。对于每个可能状态,计数器查找表622基于资源子集124a确定4个可能的1位减信号623,该减信号指示计数器是否要被减少。四个可能的减信号623被存储在4位减锁存器624中。计数器复用器626接受四个可能的减信号623,并且基于实际前一状态219选择实际减信号628。定序元件200从前一定序元件200接收到前一计数器代理501。在计数器比较636中,前一计数器代理501与值1相比较,如果前一计数器代理501等于1,则计数器比较636在计数器比较输出638处提供1。如果前一计数器代理值等于除了1之外的任何值,则计数器比较636在其输出638处提供“0”。计数器比较输出638和实际减控制信号628被输入到2输入“与”最终计数门643中。最终计数门643的输出提供指示计数器是否处于其最终计数处的最终计数状态645。如果是,则最终计数复用器642选择涉及最终计数状态为真的定序器复用器217b的输出。如果不是,则最终计数复用器642选择涉及最终计数状态为假的定序器复用器217a的输出。
作为定序元件200中的计数器处理的一部分,定序元件200接受每个包括对高21位进行精简“或”运算的结果的计数器重置值510到513的低3位,作为第一到第四计数器重置代理610~613。每个查找表201到204都具有与其相关联的各自的计数器重置代理复用器614a到617a和614b到617b。利用每个查找表201a到204a和201b到204b的下一状态输出618,为每个可能状态选择合适的可能计数器重置代理619。可能计数器重置代理值619与各个查找表201a到204a和201b到204b的包括2位的下一状态信息、存储信息、触发信息和重置信息的输出进行组合,共计9位信息。因此,定序器复用器217a和217b选择最终计数假619a条件和最终计数真619b条件下的适当的计数器重置代理,作为实际下一状态218、触发114、存储116和重置确定的一部分。两个可能计数器重置代理619a、619b以及由查找表201a~204a和201b~204b计算出的两个可能下一状态被提供给第一和第二代理/重置复用器620、621。第一和第二代理/重置复用器620、621的另一输入是实际计数器代理503。定序元件200通过接受前一计数器代理值501、在标号632处将其减1、并且然后将减少后的值提供给减复用器634,从而处理了实际计数器代理503。未减少的计数器代理501也提供给减复用器634。利用实际减信号628在来自632的减少后的计数器代理值和未减少的计数器代理值之间作出选择。如上所述,减少后/未减少的计数器代理与最终计数条件为真的计数器重置代理619a之间的选择在第一代理/重置复用器620处利用当前重置640a作出,减少后/未减少的计数器代理与最终计数条件为假的计数器重置代理619b之间的选择在第二代理/重置复用器621处利用当前重置640b作出。第一和第二代理/重置复用器620、621的输出提供最终计数条件为假和为真的两种可能计数器代理、存储、触发、下一状态和重置。使用最终计数复用器642选择这两种可能组来确定实际计数器代理503、触发114、存储116、实际下一状态218和当前重置644。当前重置644在作为重置出516而被提供之前在重置“与”门650中被连接组合。
具体参照图7,其示出了根据本教导的定序器102的另一种实施方式,其中对触发114和存储116的确定被从下一状态、计数和重置确定中移除,并被置于并行的功能块中。在图7的实施方式中,存在通过定序元件接口702进行通信的主定序元件200和副定序元件700。在使用8:1数据到资源解复用的的实施方式中,八个主定序元件200a到200h分别通过定序元件接口702a到702h与八个副定序元件700a到700h进行通信。每个定序元件接口702包括:状态开启719,其是实际前一状态219的锁存值;存储数组703,包括最终计数真条件下的每个可能下一状态的存储信号和最终计数假条件下的每个可能状态的存储信号;触发数组704,用于最终计数真条件下的每个可能下一状态和最终计数假条件下的每个可能状态的触发信号;和最终计数状态645。存储数组703和触发数组704每个都是8位。副定序元件700a接受状态开启719、存储数组703、触发数组704和最终计数645,并且针对每个定序元件200/700确定触发114和存储116。输入到每个定序元件和计数器整理电路的输入与在图5和图6中图示并描述的相同。
具体参考图8,图8示出了根据本教导的主定序元件200的实施方式,其中通过从每个查找表的输出引出可能存储703和触发704,并将其锁存到存储/触发存储器元件705中,从而对图6的定序元件进行了修改。每个查找表都分别与存储/触发存储器元件703/704相关。在具有真和假最终计数条件下的两组不同查找表的特定实施方式中,还存在这两种最终计数条件下的可能存储703和可能触发704。因此,在图示的实施方式中,查找表201a与可能存储位703a和可能触发位704a相关,查找表202a与可能存储位703b和可能触发位704b相关,并且查找表204b与可能存储位703h和可能触发位704h相关。
具体参考图9,副定序元件700最终确定每个主定序元件200/副定序元件700组合的触发114和存储116。每个副定序元件700通过定序元件接口702接受存储703和触发704数组。最终计数条件为假的可能存储位和触发位被提供给第一副定序元件复用器901。类似地,最终计数条件为真的可能存储位和触发位被提供给第二副定序元件复用器902。使用状态开启719信号来选择最终计数假条件和最终计数真条件下的可能存储位和可能触发位中适当的一个。通过将最终计数条件为假和为真的适当的存储位和触发位提供给第三副定序元件复用器903,并且使用最终计数状态645作出选择,从而确定最终的触发114和存储116。第三副定序元件复用器903的输出是主定序元件200和副定序元件700组合的触发114/存储116。
这里通过图示描述了根据本教导的实施方式。通过本教导,本领域的普通技术人员将清楚在所附权利要求范围内但未具体公开的其他实施方式。例如,前面提到本教导适于许多不同的解复用系数。大于8:1的解复用系数导致需要较大的电路面积来实现电路,但是,它们可以产生更快的运行速度。随着解复用系数增大,电路最终会遇到太多的布图寄生阻抗,因此降低了运行速度。就当前技术来看,可以发现当前8:1解复用是优选的。在替换实施方式的另一实施例中,可以用4位的一位热码编码(onehot encoding),而不是所公开的2位二进制编码来代表前一和下一状态。4位的一位热码编码可以导致速度的递增增加,这是因为在每个定序元件200中可以用逻辑来替换处理前一状态信息的二进制输入复用器217。
Claims (21)
1.一种定序器,包括:
以级联形式组合的至少两个定序元件,所述定序元件包括多个查找表,每个查找表接受资源并向所述资源提供各自的可能的下一状态,其中每个可能的下一状态与所述定序器的不同的前一状态有关;以及定序器复用器,其接收所述可能的下一状态,并基于实际前一状态,在定序器复用器的输出处提供所述可能的下一状态之一,作为实际下一状态,其中所述定序元件之一的所述实际下一状态是所述定序元件中另一个的所述实际前一状态。
2.如权利要求1所述的定序器,其中所述资源包括解复用后的进入数字数据。
3.如权利要求1所述的定序器,其中存在N个定序器,其中N大于2,并且所述第N个定序器的所述实际下一状态向所述第一个定序器提供所述实际前一状态。
4.如权利要求1所述的定序器,其中所述查找表的数量等于所述定序器的可能状态的数量。
5.如权利要求1所述的定序器,其中每个所述定序元件包括所述查找表中的第一查找表和第二查找表的并行组,其中所述第一查找表确定第一可能条件下的M个所述可能的下一状态,所述第二组查找表确定第二可能条件下的M个所述可能状态,还包括用于基于实际条件的状态来选择第一或第二定序器的输出的条件复用器。
6.如权利要求1所述的定序器,其中所述定序器复用器的输出还包括用于所述逻辑分析器功能的至少一个控制信号。
7.如权利要求1所述的定序器,还包括辅助查找表,所述辅助查找表与所述定序器并行工作,以基于所述进入数据来对每个可能的下一状态确定条件命令。
8.如权利要求1所述的定序器,其中所述定序元件包括主定序元件和副定序元件,其中来自所述主定序元件中所述查找表的输出的可能的存储和触发位被发送到所述副定序元件,用于基于所述定序元件中另一个定序元件的所述实际前一状态来最终确定存储和触发。
9.如权利要求8所述的定序器,其中所述最终确定操作还基于最终计数条件。
10.如权利要求8所述的定序器,其中对所述存储和触发的最终确定与各个所述主定序元件的所述实际下一状态的确定并行进行。
11.一种用于定序的方法,包括以下步骤:
基于资源来确定各个可能的前一状态的可能的下一状态,
基于实际前一状态,选择所述可能的下一状态之一作为实际下一状态,
将所述实际下一状态作为所述实际前一状态进行传递,以及
重复所述确定、选择和传递的步骤。
12.如权利要求11所述的定序方法,其中至少有第一和第二定序元件,其中每个定序元件都执行所述确定、选择和传递的步骤。
13.如权利要求12所述的定序方法,其中有N个定序元件,其中N大于2,并且其中所述第N个定序元件的所述实际下一状态提供所述第一定序元件的所述实际前一状态。
14.如权利要求11所述的定序方法,其中至少有第一和第二定序器,每个定序器执行所述确定和选择的步骤,其中所述第一定序器确定第一条件下的M个所述可能的下一状态,所述第二定序器确定第二条件下的M个可能状态,并且还包括基于条件状态来选择来自所述第一和第二定序器的输出的步骤。
15.如权利要求11所述的定序方法,其中所述确定步骤还包括确定至少一个控制信号的步骤。
16.如权利要求15所述的定序方法,其中所述控制信号发起存储功能。
17.如权利要求15所述的定序方法,其中所述控制信号发起触发功能。
18.如权利要求11所述的定序方法,还包括确定主定序元件中的可能的存储和触发位以及确定副定序元件中的存储和触发的步骤。
19.如权利要求18所述的定序方法,还包括将所述可能的存储和触发位以及所述实际前一状态传递到所述副定序元件的步骤。
20.如权利要求18所述的定序方法,其中所述确定步骤还包括对所述定序器在最终计数假条件及最终计数真条件下的所有状态确定主定序元件中的可能的存储和触发。
21.如权利要求20所述的定序方法,还包括将所述可能的存储和触发位、所述实际前一状态以及最终计数状态传递给所述副定序元件并且所述副定序元件基于所述实际前一状态和所述最终计数来确定存储和触发的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/022,252 | 2004-12-23 | ||
US11/022,252 US7684447B2 (en) | 2004-12-23 | 2004-12-23 | Sequencer and method for sequencing |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1794200A true CN1794200A (zh) | 2006-06-28 |
Family
ID=35736049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2005100931593A Pending CN1794200A (zh) | 2004-12-23 | 2005-08-19 | 定序器和定序方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7684447B2 (zh) |
JP (1) | JP2006178970A (zh) |
KR (1) | KR20060073488A (zh) |
CN (1) | CN1794200A (zh) |
GB (1) | GB2422029A (zh) |
TW (1) | TW200623636A (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7684447B2 (en) * | 2004-12-23 | 2010-03-23 | Agilent Technologies, Inc. | Sequencer and method for sequencing |
US20060153248A1 (en) * | 2004-12-23 | 2006-07-13 | Michael Rytting | Counter proxy |
US11824761B1 (en) * | 2018-11-26 | 2023-11-21 | Xilinx, Inc. | Identifying alignment markers using partial correlators |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4641348A (en) * | 1983-11-09 | 1987-02-03 | Hewlett-Packard Company | Timing or logic state analyzer with automatic qualified inferential marking and post processing of captured trace data |
US4985825A (en) * | 1989-02-03 | 1991-01-15 | Digital Equipment Corporation | System for delaying processing of memory access exceptions until the execution stage of an instruction pipeline of a virtual memory system based digital computer |
GB8912570D0 (en) | 1989-06-01 | 1989-07-19 | Optimum Solutions Ltd | Logic analyzer |
US5335253A (en) * | 1992-10-01 | 1994-08-02 | Gould, Inc. | Non-integral frequency division using regulated digital divider circuits |
US6094729A (en) * | 1997-04-08 | 2000-07-25 | Advanced Micro Devices, Inc. | Debug interface including a compact trace record storage |
US6247147B1 (en) * | 1997-10-27 | 2001-06-12 | Altera Corporation | Enhanced embedded logic analyzer |
US6105087A (en) * | 1998-06-10 | 2000-08-15 | Hewlett-Packard Company | Event recognition by a state machine whose state is dependent upon historical information |
US6256753B1 (en) * | 1998-06-30 | 2001-07-03 | Sun Microsystems, Inc. | Bus error handling in a computer system |
US6486809B1 (en) * | 1999-06-02 | 2002-11-26 | Texas Instruments Incorporated | Analog to digital converter with configurable sequence controller |
US6732307B1 (en) * | 1999-10-01 | 2004-05-04 | Hitachi, Ltd. | Apparatus and method for storing trace information |
US6918065B1 (en) * | 1999-10-01 | 2005-07-12 | Hitachi, Ltd. | Method for compressing and decompressing trace information |
US6615370B1 (en) * | 1999-10-01 | 2003-09-02 | Hitachi, Ltd. | Circuit for storing trace information |
US6470485B1 (en) * | 2000-10-18 | 2002-10-22 | Lattice Semiconductor Corporation | Scalable and parallel processing methods and structures for testing configurable interconnect network in FPGA device |
US6760867B2 (en) * | 2001-03-08 | 2004-07-06 | International Business Machines Corporation | Guaranteed method and apparatus for capture of debug data |
US7185234B1 (en) * | 2001-04-30 | 2007-02-27 | Mips Technologies, Inc. | Trace control from hardware and software |
US6697466B2 (en) * | 2002-03-05 | 2004-02-24 | Emware, Inc. | Audio status communication from an embedded device |
US6836743B1 (en) * | 2002-10-15 | 2004-12-28 | Agilent Technologies, Inc. | Compensating for unequal load and source match in vector network analyzer calibration |
US7080283B1 (en) * | 2002-10-15 | 2006-07-18 | Tensilica, Inc. | Simultaneous real-time trace and debug for multiple processing core systems on a chip |
US7127639B2 (en) * | 2002-11-22 | 2006-10-24 | Texas Instruments Incorporated | Distinguishing between two classes of trace information |
US7149933B2 (en) * | 2003-08-07 | 2006-12-12 | Arm Limited | Data processing system trace bus |
US7684447B2 (en) * | 2004-12-23 | 2010-03-23 | Agilent Technologies, Inc. | Sequencer and method for sequencing |
US20060236148A1 (en) * | 2005-01-21 | 2006-10-19 | Glenn Wood | One hot counter proxy |
-
2004
- 2004-12-23 US US11/022,252 patent/US7684447B2/en active Active
-
2005
- 2005-04-22 TW TW094112863A patent/TW200623636A/zh unknown
- 2005-08-19 CN CNA2005100931593A patent/CN1794200A/zh active Pending
- 2005-12-13 GB GB0525374A patent/GB2422029A/en not_active Withdrawn
- 2005-12-16 JP JP2005362626A patent/JP2006178970A/ja not_active Withdrawn
- 2005-12-22 KR KR1020050127961A patent/KR20060073488A/ko not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
GB0525374D0 (en) | 2006-01-18 |
US7684447B2 (en) | 2010-03-23 |
GB2422029A (en) | 2006-07-12 |
KR20060073488A (ko) | 2006-06-28 |
TW200623636A (en) | 2006-07-01 |
US20060153195A1 (en) | 2006-07-13 |
JP2006178970A (ja) | 2006-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105301991A (zh) | 使用有限状态机的数字触发 | |
KR100295263B1 (ko) | 문맥 전환에 의해 복수개의 디지털 신호 스트림을 다중 알고리즘 처리하는 방법 및 장치 | |
CN106501695B (zh) | 一种高压电缆局部放电信号采集处理系统及方法 | |
CN1794200A (zh) | 定序器和定序方法 | |
US5819219A (en) | Digital signal processor arrangement and method for comparing feature vectors | |
US4513395A (en) | Apparatus and method for acquiring multiple groups of data signals from a synchronous logic system | |
KR100214758B1 (ko) | 디지틀 펄스 처리장치 | |
CN110633154A (zh) | 一种数据全排序方法及系统 | |
GB2298295A (en) | Data processing systems | |
US20030095718A1 (en) | Median filter | |
CN1916865A (zh) | 一热计数器代理 | |
CN101232277B (zh) | 采样频率转换设备 | |
CN1794201A (zh) | 计数器代理 | |
CN101937364B (zh) | 一种中断合成方法及装置 | |
US6141348A (en) | Constant-time programmable field extraction system and method | |
CN1316391C (zh) | 超取样资料恢复装置及方法 | |
CN103377690A (zh) | 数据发送、接收装置、用于数据传输的系统和方法 | |
CN1074539A (zh) | 多通道数字式示波卡 | |
CN1187070A (zh) | 使用多个处理单元的中值滤波方法及装置 | |
US7756655B2 (en) | Observation apparatus, observation method and program | |
CN100553137C (zh) | 基于逻辑类型交替的异步时钟域信号切换结构 | |
NL8902040A (nl) | Met hoge snelheid werkende directe geheugentoegangsbesturing voor test- en meetinstrumenten. | |
US7193928B2 (en) | Signal output device and method for the same | |
CN116825174A (zh) | 一种m4k资源测试方法及装置、电子设备及存储介质 | |
JPH09128241A (ja) | ファジーロジックプロセッサの言語入力値の所属関数値に対する配列方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |