WO2010034327A1 - Apparatus and method for emulating a full-rate finite state machine - Google Patents

Apparatus and method for emulating a full-rate finite state machine Download PDF

Info

Publication number
WO2010034327A1
WO2010034327A1 PCT/EP2008/008089 EP2008008089W WO2010034327A1 WO 2010034327 A1 WO2010034327 A1 WO 2010034327A1 EP 2008008089 W EP2008008089 W EP 2008008089W WO 2010034327 A1 WO2010034327 A1 WO 2010034327A1
Authority
WO
WIPO (PCT)
Prior art keywords
rate
sub
full
internal state
input signal
Prior art date
Application number
PCT/EP2008/008089
Other languages
French (fr)
Inventor
Jochen Rivoir
Original Assignee
Verigy (Singapore) Pte. Ltd.
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
Application filed by Verigy (Singapore) Pte. Ltd. filed Critical Verigy (Singapore) Pte. Ltd.
Priority to PCT/EP2008/008089 priority Critical patent/WO2010034327A1/en
Priority to TW098132060A priority patent/TWI430124B/en
Publication of WO2010034327A1 publication Critical patent/WO2010034327A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • G06F7/584Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/327Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • G06F30/343Logical level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/58Indexing scheme relating to groups G06F7/58 - G06F7/588
    • G06F2207/581Generating an LFSR sequence, e.g. an m-sequence; sequence may be generated without LFSR, e.g. using Galois Field arithmetic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/58Indexing scheme relating to groups G06F7/58 - G06F7/588
    • G06F2207/582Parallel finite field implementation, i.e. at least partially parallel implementation of finite field arithmetic, generating several new bits or trits per step, e.g. using a GF multiplier

Definitions

  • the present invention relates to sequential control in digital circuits, and in particular to finite state machine (FSM) circuits.
  • FSM finite state machine
  • a typical synchronous FSM circuit comprises several flip-flops which function to hold a previous internal state, and several decoding logic gates which function to determine a current or new internal state.
  • An output signal from such an FSM circuit may, for example, be dependent on both the previous and/or present internal state at the time the flip-flops are clocked. Also, the output signal may for example be dependent on an input signal.
  • an internal state stores information about the past, i.e. it reflects input changes from a start to the present moment.
  • a state transition indicates an internal state change and is described by a condition that would need to be fulfilled to enable the state transition.
  • Hard-wired FSM circuits are limited in the range of functions that can be performed because control functions of the hard-wired FSM are fixed, i.e., each time the FSM circuit being in a particular state receives a certain input signal, then the output signal will be the same.
  • FIG. 1 illustrates a conventional programmable FSM circuit 10 comprising a programmable logic array 11 (PLA) as a basic logical element.
  • PPA programmable logic array 11
  • a first full-rate input signal U n to the PLA 11 is provided via an external input line 12 and a second full-rate input Z n for the PLA 11 is provided via a internal state register output line 13.
  • the second full-rate input i.e.
  • the internal state is sometimes also designated with x.
  • the internal state register 18 has a signal output line 16 which divides in two routes.
  • a first route 17 is coupled to another part of the system of which the full-rate FSM 10 is a subsection and the second route is the previous internal state which is the output line 13.
  • the internal state register receives the second full-rate output signal Z n+I describing a current state, stores the information describing the current state and provides the information describing the current state as a feedback to the PLA 11.
  • the full-rate input signal U n on the external input line 12 is fed into the PLA 11 at a first clock-rate fi and the updated full-rate internal state
  • Z n+ i (zi [n+1] , Z 2 [n+1] , ..., z N [n+l] ) is input to the internal state register 18 via the internal state register input line 15 also at the first clock-rate fi.
  • This updated internal state z n+ i is temporarily stored in the internal state register 18.
  • the PLA 11 receives two input signals, u n and Z n , i.e. a further full-rate input signal, via the external input line 12 and via the internal state register output line 13.
  • the PLA 11 receives the internal state signal representing the previous state of the full-rate finite state machine 10 from the internal state register output line 13.
  • the first clock rate fi for clocking the full-rate input signal U n and the full-rate output signal y n is in the range of several GHz (Giga-Hertz)
  • a sub-rate FSM architecture where logical elements of the sub-rate FSM, such as PLAs or RAMs, can run at a lower clock rate f 2 than the full-rate input and output signals U n , Yn, but wherein the same output sequences ( ⁇ n ,y n +ir -,Yn+R-i) are generated, compared to a full-rate FSM architecture, given the same input sequences (U n , u n+ i, ..., U n+R i 1 ) .
  • a method is needed to find internal state transition equations of a sub-rate FSM when the internal state transition equations -f(z n/ U n ) (f e B N+P x B N ) , g(z n , U n ) (g e B N+P x B Q ) of a full-rate FSM are given .
  • This object is achieved by a method for obtaining a description of a full-rate finite state machine according to claim 1, a method for processing a full-rate input signal according to claim 7, an apparatus for obtaining a description of a full-rate finite state machine according to claim 20, an apparatus for processing a full-rate input signal according to claim 21 and a test-system according to claim 31.
  • the present invention provides a computer program for performing the inventive methods .
  • a description F of a sub-rate internal state transition between a previous sub-rate internal state Z n and an updated sub-rate internal state z n+R of the sub-rate finite state machine can be obtained by subsequently inputting values of the full-rate input signal U n , U n+1 , ..., U n+ ⁇ 1 comprised by the sub-rate input signal U n to the full-rate finite state machine assuming the previous sub-rate internal state Z n as an initial full-rate internal state of the full-rate finite state machine.
  • the full-rate internal state z n+R obtained after inputting the R-th full-rate input signal U ⁇ +R - I to the full-rate finite state machine corresponds to the updated sub-rate internal state of the sub-rate finite state machine.
  • a sub-rate output signal Y n having the second clock rate f 2 comprises R values of the full-rate output signal y n ,Yn+ir -, Yn+R-i/ which would have been obtained with the full-rate finite state machine which is to be emulated by the sub-rate finite state machine.
  • the sub-rate output signal Y n can be obtained by inputting the sub-rate input signal U n and the previous sub-rate internal state Z n to a sub-rate output function G that outputs the sub-rate output signal Y n comprising a plurality of output values y n ,y n +i, ...,y n + R -i being equal to values of the full-rate output signal obtained by subsequently inputting values U n , U n+I , ...,u n+R _i of the full-rate input signal comprised by the sub-rate input signal U n to the full-rate finite state machine assuming the previous sub-rate internal state Z n as initial full-rate internal state of the full-rate finite state machine.
  • embodiments of the present invention provide a method for processing a full-rate input signal U n having a first clock rate fi and for providing a full-rate output signal y n in dependence on the full-rate input signal, comprising de-serializing the full-rate input signal U n to obtain a sub-rate input signal U n comprising a plurality of subsequent values of the full-rate input signal ⁇ n , u n+ i, ...,U n+R - !
  • the sub-rate input signal U n has a second clock rate f 2 being a fraction of the first clock rate fi, updating a sub-rate internal state of a sub-rate finite state machine circuit in dependence on a previous sub-rate internal state Z n and the sub-rate input signal U n at the second clock rate f 2 , providing a sub-rate output signal Y n in dependence on the previous or updated sub-rate internal state z n , z n+R , the sub-rate output signal Y n comprising a plurality of output values, and serializing the sub-rate output signal comprising the plurality of output values y n ,yn+i,-,y n +R-i to obtain a serialized output signal having the first clock rate fi and having values equal to the full-rate output signal.
  • embodiments of the present invention provide an apparatus comprising an input for a full-rate input signal U n having a first clock rate fi, a de-serializer for converting the full-rate input signal U n to a sub-rate input signal U n having a second clock rate f 2 being a fraction of the first clock rate fi, a sub-rate finite state machine circuit configured to update a sub-rate internal state in dependence on a previous sub-rate internal state z n and the sub-rate input signal U n , and to provide a sub-rate output signal Y n in dependence on the previous or updated sub-rate internal state Z n , Z n+ R, and a serializer configured to serialize the sub-rate output signal Y n to obtain a full-rate output signal y n having the first clock rate fi.
  • the sub-rate finite state machine is configured to update the sub-rate internal state at the second clock rate f 2 .
  • an inventive apparatus may be comprised in a test system, the test system further comprising a device under test (DUT), configured to provide a DUT-signal in accordance with a communication protocol, wherein the apparatus comprised by the test system is configured to receive the DUT-signal or a signal derived therefrom as the full-rate input signal U n , wherein the sub-rate finite state machine is configured to process the DUT-signal according to the communication protocol to follow a sequence of states of the communication protocol in dependence on the DUT-signal U n , and wherein the sub- rate finite state machine is configured, such that a single transition between two subsequent sub-rate internal states z nr z n+R of the sub-rate finite state machine reflects a plurality of R subsequent transitions between subsequent communication protocol states Z n ⁇ z n+ i -» ... -> Z ⁇ +R .
  • DUT device under test
  • Yet further embodiments of the present invention provide a method and an apparatus for obtaining a description of a sub-rate finite state machine describing sub-rate internal state transitions between subsequent sub-rate internal states by deriving, from a description f of a full-rate finite state machine, a description F of the sub-rate finite state machine.
  • the method comprises merging a plurality of subsequent full-rate internal state transitions Z n —> Z n+1 -» ... —> z n+R into a single sub-rate internal state transition Z n —> z n+R .
  • embodiments of the present invention allow processing high speed input signals having a high clock rate fi with a finite state machine circuit operating at a lower clock frequency f 2 , and providing output signals at the first clock frequency.
  • the output signals thereby seem to be provided by a full-rate finite state machine circuit running at the first clock frequency fi.
  • an implementation of high-speed re-configurable state machines can be facilitated in some embodiments.
  • Fig. 1 shows a block diagram of a conventional full-rate finite state machine circuit
  • Fig. 2 shows a block diagram of an apparatus for emulating the full-rate finite state machine of Fig. 1, according to an embodiment of the present invention
  • Fig. 3 schematically depicts two clock signals having different clock-rates
  • Fig. 4 shows a flow chart of a method for emulating a full- rate finite state machine, according to an embodiment of the present invention
  • Fig. 5a shows an example of a state transition diagram of full-rate finite state machine
  • Fig. 5b shows an input/state table according to the state transition diagram of Fig. 5a;
  • Fig. 5c shows an input/state table of a sub-rate finite state machine emulating a full-rate finite state machine having the state transition diagram of Fig. 5a;
  • Fig. 5d shows an input/output table according to the state transition diagram of Fig. 5a.
  • Fig. 5e shows an input/output table of a sub-rate finite state machine for emulating the full-rate finite state machine according to Fig. 5a.
  • Fig. 2 illustrates an apparatus 20 for emulating a full- rate FSM according to an embodiment of the present invention.
  • An exemplary full-rate FSM has been described above with regard to Fig. 1.
  • the apparatus 20 comprises a first input 22 for a full-rate input signal U n , wherein subsequent values of the full-rate input signal are being clocked to the input terminal 22 with a first clock rate fi. Further, the apparatus 20 comprises a de-serializer 27 for converting the full-rate input signal U n to a sub-rate input signal U n wherein the sub-rate input signal O n is clocked into a sub-rate finite state machine circuit 21 with a second clock rate t 2 being a fraction of the first clock rate fi. According to an embodiment of the present invention, the de-serializer 27 may be a circuit for a serial-to-parallel conversion of the full-rate input signal U n .
  • the de-serialized sub- rate input signal U n may comprise R subsequent values U n , u n+ i, ...,U n+R - ! of the full-rate input signal, which are being clocked to the sub-rate FSM circuit 21 with the second clock rate f 2 .
  • the sub-rate FSM circuit 21 may be configured to provide a sub-rate output signal Y n in dependence on the previous or updated sub-rate internal state Z n , Z n+R .
  • the sub-rate output signal Y n comprises R signal values y n /Y n +i, -, ⁇ n+ R-i that are fed into a serializer 28 in order serialize the sub-rate output signal Y n to obtain full-rate output signals Y n ,y n+ i, ..., y n +R-i having the first clock rate fi. .
  • the serializer circuit 28 may comprise a circuit for a parallel-to-serial conversion of the sub-rate output signal Y n comprising R output signal values y n /y n +if -,Yn+R-i •
  • the updated sub-rate internal state z n+R is fed into a sub-rate internal state register 29, which may have a single output line 26 which may be divided into two routes.
  • a first route is coupled to another part of the system of which the sub-rate FSM is a sub-section, and a second route is the state register output line 23.
  • Fig. 3 exemplarily shows a graphical representation of two different clock signals 32 and 34, wherein the first clock signal 32 has a first clock rate fi and wherein the second clock signal 34 has a second clock rate f 2 .
  • the clock rates may be defined by the duration of the respective clock signal pulses.
  • a clock signal has a period duration of Ti.
  • a clock signal has a period duration of T 2 .
  • the de-serializer 27 may therefore be configured to serial- to-parallel convert R subsequent values U n , u n +i, ...,U n+R - ! of the full-rate input signal, wherein R denotes the ratio of the full-rate frequency fi to the sub-rate frequency f 2 .
  • the apparatus 20 is designed for emulating the behavior, i.e. the state transitions, of the full-rate FSM 10. It is assumed that the full-rate FSM 10 runs at full-rate frequency fi with P input bits in vector U n at rate fi, N state bits in vector Z n at rate fi and Q output bits in vector y n at rate fi.
  • a memory comprised by the full-rate FSM circuit 11 may look up an updated full-rate internal state Z n+1 and a full-rate output signal y n as a function of the full-rate input U n and the current full-rate internal state Z n .
  • N + P possible address inputs hence lead to N + Q possible data outputs .
  • the full-rate de-serializer 27 combines R sequential full-rate input signals U n , U n+1 , ...,U n+ R- ! ⁇ to the sub-rate input signal U n .
  • U n is hence updated at rate fi/R in this example.
  • the sub-rate output signal Y n which contains R subsequent output values y n ,y n+1 , ...,y n +R-i? is also updated at the second clock rate f 2 .
  • the relationships between updated sub-rate internal states z n+R , sub-rate output signals Y n and sub-rate input signals U n and previous sub-rate internal states Z n can be summarized as follows:
  • Yn (Yn, Yn + I, -,Yn + R-I) ⁇ B QxR (7)
  • z n+R F(Z n , U n ) , F e B N+P*R x B N (8)
  • Y n G(Z n , U n ) , G e B N+p*R x B Q*R (9)
  • the sub-rate FSM circuit 21 may look up the updated sub-rate internal state z n+R in a time interval T 2 corresponding to R time intervals Ti as a function of the current sub-rate internal state Z n and the last R values u n ,u n+ i, ...,u n+R -i of the full-rate input signal.
  • the sub-rate FSM we have N + P x R possible memory address inputs and N + Q * R possible data outputs .
  • the desired sub-rate internal state update function F(Z n , U n ), F 6 B N+P*R X B N may be determined in the following way:
  • Z n+1 £(z n ,u ⁇ ) (10)
  • Z n+ R F(Z n , U n , U n+1 ,..., U n+ ⁇ _, )) 1 3 '
  • the sub-rate FSM circuit 21 is configured to update the sub-rate internal state by inputting the sub-rate input signal U n and the previous sub-rate internal state z n to the sub-rate internal state update function F(z n ,U n ) , F e g N+p*R ⁇ g N ⁇ that outputs the updated sub-rate internal state z n+R , wherein the sub-rate internal state update function JP(SS n , U n ), Jf e B N+P*R x B N , is configured such that the updated sub-rate internal state z n+R is equal to a full-rate internal state obtained by subsequently inputting R values U n , u n +i, ..., U n+R - ! of the full-rate input signal comprised by the sub-rate input signal U n to a full-rate FSM circuit assuming the previous sub-rate internal state Z n as initial full-rate
  • the full-rate internal state z n+k after k clock periods with the first clock rate fi can be determined according to
  • the sub-rate FSM circuit 21 is configured to provide the sub-rate output signal Y n by inputting the sub-rate input signal U n and the previous sub-rate internal state Z n to the sub-rate output function G that outputs the sub-rate output signal Y n comprising a plurality of output values, wherein the sub-rate output function G is configured such that the sub-rate output signal Y n comprises values yn,y n +i,-,yn+R-i of a full-rate output signal which could be obtained by subsequently inputting values U n , u n+ i, ...,U n+R - ! , of the full-rate input signal comprised by the sub-rate input signal U n , to a full-rate finite state machine assuming the previous sub-rate internal state Z n as initial full-rate internal state of the full-rate finite state machine.
  • the memory content may be predetermined by evaluating the sub- rate internal state update function F and the sub-rate output function G for each of the 2 N+PxR combinations that correspond to all possible combinations of the sub-rate internal states (N bits) and the sub-rate input signal U n (P x R input bits) .
  • the sub-rate FSM machine 21 may be implemented using a programmable logic device, for example using a field programmable gate array.
  • the internal state update function may in this case be implemented using a logic circuit for mapping an internal state to a subsequent internal state or successor internal state.
  • a table or logic table (or any other logic description) may be established which describes a mapping between an internal state and a successor internal state.
  • a logic circuit structure for implementation in a field programmable gate array (which may be adapted to a hardware available in the field programmable gate array) may be derived from the table or logic table (or form any other logic description) using any logic circuit design approach.
  • a logic design optimization may also be used, for example to reduce a complexity of the logic circuit.
  • R subsequent full-rate internal states ( or state transitions) updated at the first clock rate fi, dependent on R subsequent full-rate input signals U n , u n+ i, ...,u n+R _i, are merged into a single sub-rate internal state transition at the second clock rate at f 2 being a fraction of the first clock rate fi, dependent on one single sub-rate input signal (or signal vector) U n comprising the R subsequent full-rate input signals (or signal vectors) u n ,u n+ i, ...,u n+R -i .
  • Obtaining the description F of the sub-rate finite state machine based on the description f of the full-rate finite state machine can be performed, for example, by a computer or a micro-controller comprised by the apparatus 20.
  • the apparatus depicted in Fig. 2 can be used to perform a method for processing a full-rate input signal U n having a first clock rate fi and for providing a full- rate output signal y n in dependence on the full-rate input signal, wherein the method is exemplarily shown in Fig. 4.
  • the inventive method comprises a first step 41 of de- serializing the full-rate input signal (or input signal vector) U n to obtain the sub-rate input signal (or input signal vector) U n comprising (for example in a parallel representation) a plurality of subsequent values U n , u n+ i, ...,u n+R _i of the full-rate input signal, such that the sub-rate input signal (or input signal) U n has the second clock rate f 2 being a fraction of the first clock rate fi .
  • a sub-rate internal state of the sub- rate FSM circuit 21 is updated in dependence on a previous sub-rate internal state Z n and the sub-rate input signal U n at the second clock rate f 2 .
  • the sub- rate output signal Y n is provided in dependence on the previous or updated sub-rate internal state Z n z n+R , wherein the sub-rate output signal Y n comprises a plurality of output values y n ,y n +i, ...,y n +R-i-
  • the sub- rate output signal Y n is serialized to obtain the serialized output signal having the first clock rate f 1#
  • the method referred to in Fig. 4 can be used to emulate a full-rate FSM circuit by means of a sub-rate FSM circuit.
  • Updating the internal sub-rate internal state comprises a plurality of subsequent full- rate internal state updates or transitions in one single sub-rate internal state update step or transition. This can be achieved, for example, by updating the sub-rate internal state by looking up the updated sub-rate internal state z n+R at a memory position depending on the sub-rate input signal U n and the previous sub-rate internal state Z n .
  • Providing the sub-rate output signal Y n comprises a plurality of subsequent full-rate output signal provisions in one single output signal provision step. This can be achieved by looking up the sub-rate output signal Y n at a memory position depending on the sub-rate input signal U n and/or the previous or updated sub-rate internal state
  • Fig. 5a shows a state transition diagram 50 of a simple and exemplary full-rate FSM having four full-rate internal states 51 ("0"), 52 ("1"), 53 ("2") and 54 ("3").
  • the related state update/transition table is shown in Fig. 5b.
  • a respective current full-rate internal state Z n is shown.
  • the middle column represents the current full-rate input signal U n .
  • the table shown in Fig. 5b describes the full-rate internal state update function f(Z n , Ti n ).
  • the full-rate FSM having state transitions according to Fig. 5a can be emulated by a sub-rate FSM according to embodiments of the present invention. This shall be explained in the following.
  • the state transitions of the full-rate FSM can be emulated as shown by the sub-rate state transition table in Fig. 5c.
  • the sub-rate state transition table of Fig. 5c corresponds to a state transition diagram (not shown) , where each state serves as a source and a destination for four (2 2 ) data transition arrows, not only two as shown in Fig. 5a.
  • the updated sub-rate internal state Z n+2 can be determined by subsequently applying the full-rate update function £ according to eq. (13).
  • the first value U n of the sub-rate input signal U n defines a first "invisible” state transition according to f(z n ,u n ) . If the first value U n is "1", then there would be an "invisible” state transition from internal state 52 ("1") to internal state S3 ("2") . Applying the second input value U n+1 to this new invisible state £(z n ,u n ) yields the updated sub-rate internal state Z n+2 according to f(f(Z n , U n ) ,U n+1 ) .
  • Fig. 5d shows an exemplary output table according to an exemplary full-rate output function Cj(Z n , U n ).
  • Fig. 5e reflects how the sub-rate output signal Y n comprising the two values y n , y n +i of the full-rate output signal can be obtained based on the sub-rate internal state z n and the sub-rate input signal U n .
  • the first value y n of the sub-rate output signal only depends on the sub-rate Z n and first value U n of the sub-rate input signal.
  • the correct sub-rate output signal entry can be chosen by using memory address indices comprising the sub-rate internal state Z n and the sub-rate input signal U n .
  • Embodiments of the present invention can be used for building test systems for testing a test object or a device under test (DUT) according to a predefined communication protocol, wherein a communication protocol comprises a set of standard rules for data representation, signaling, authentication and error detection required to send information over a communications channel. Thereby the communication protocol may comprise a certain number of valid communication protocol states.
  • embodiments of the present invention provide a test system comprising a DUT, configured to provide a DUT-signal in accordance with the communication protocol, and an apparatus for emulating a full-rate FSM according to an embodiment of the present invention, wherein the apparatus is configured to receive the DUT-signal or a signal derived there from as the full-rate input signal u n , wherein the sub-rate FSM circuit of the apparatus is configured to process the DUT-signal according to the communication protocol to follow a sequence of states of the communication protocol in dependence on the DUT signal, and wherein the sub-rate FSM circuit is configured, such that a single transition between two subsequent sub-rate internal states of the sub-rate FSM circuit reflects a plurality of subsequent transitions between subsequent communication protocol states.
  • the sub-rate FSM circuit may define transitions between a plurality of valid communication protocol states and at least one transition into an invalid communication protocol state in response to a communication protocol violation.
  • the test system may be configured to provide an error detection signal, in case the DUT-signal leads to a sub-rate internal state which indicates a violation of the communication protocol.
  • the sub-rate FSM circuit defines transitions between a plurality of communication protocol states.
  • the sub-rate FSM circuit is configured to extract useful data from the DUT- signal communicated in accordance with the communication protocol and to provide a serialized output signal corresponding to the useful data comprised by the DUT signal. Thereby the useful data does not comprise any signaling information of the communication protocol, but preferably unknown information data.
  • the sub-rate FSM circuit can be used to simulate a communication between the DUT and other components of a network, wherein the network components communicate by means of the communication protocol .
  • Embodiments of the present invention allow to use FSM circuits comprising slow, cheap and power-saving FSM circuit components, such as, for example, low cost memory devices. These slower FSM circuit components may be clocked with a slower clock rate than full-rate input signals to and full-rate output signals from the sub-rate FSM circuit.
  • the inventive method for emulating a full-rate FSM may be implemented in hardware or in software.
  • the implementation may be done on a digital storage medium, particularly a disc or a CD with electronically readable control signals, which may cooperate with a programmable computer system such that the method is executed.
  • the invention does also consist in a computer program product with a program code stored on a machine readable carrier for performing the inventive method when the computer program product runs on a computer and/or micro-controller.
  • the invention may be thus realized as a computer program with a program code for performing the method when the computer program runs on a computer.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

A method for processing a full-rate input signal (un,...,un+R) having a first clock rate (f1) and for providing a full-rate output signal (Yn,..., Yn+R) in dependence on the full-rate input signal (un,..., un+R), the method comprising deserializing the full-rate input signal (un,..., un+R-1) to obtain a sub-rate input signal (Un) comprising a plurality of subsequent values of the full-rate input signal, such that the sub-rate input signal has a second clock rate (f2) being a fraction of the first clock rate (f1), updating a sub-rate internal state of a sub-rate finite state machine in dependence on a previous sub-rate internal state (zn) and the sub-rate input signal (Un) at the second clock rate (f2), providing a sub-rate output signal (Yn) in dependence on the previous or updated sub-rate internal state (zn; zn+R), the sub-rate output signal comprising a plurality of output values (Yn,..., Yn+R-1), and serializing the sub-rate output signal (Yn) comprising the plurality of output values (Yn,..., Yn+R-1) to obtain a serialized output signal having the first clock rate (f1) and having values equal to the full-rate output signal.

Description

Description
Apparatus and method for emulating a full-rate finite state machine
The present invention relates to sequential control in digital circuits, and in particular to finite state machine (FSM) circuits.
Digital processing devices generally utilize FSM circuits where sequential control is required. A typical synchronous FSM circuit comprises several flip-flops which function to hold a previous internal state, and several decoding logic gates which function to determine a current or new internal state. An output signal from such an FSM circuit may, for example, be dependent on both the previous and/or present internal state at the time the flip-flops are clocked. Also, the output signal may for example be dependent on an input signal. In general, an internal state stores information about the past, i.e. it reflects input changes from a start to the present moment. A state transition indicates an internal state change and is described by a condition that would need to be fulfilled to enable the state transition. Hard-wired FSM circuits are limited in the range of functions that can be performed because control functions of the hard-wired FSM are fixed, i.e., each time the FSM circuit being in a particular state receives a certain input signal, then the output signal will be the same.
In order to enable a FSM to perform a greater range of functions, it is known to implement an FSM as a set of instructions (or using a set of instructions) for a microprocessor. Fig. 1 illustrates a conventional programmable FSM circuit 10 comprising a programmable logic array 11 (PLA) as a basic logical element. In a clock interval n, a first full-rate input signal Un to the PLA 11 is provided via an external input line 12 and a second full-rate input Zn for the PLA 11 is provided via a internal state register output line 13. The first full-rate input signal Un may be of the form Un= (ui [n] , u2 [n] , ..., uP [n] ) , wherein up[n] (p=l,...,P; P > 1) represents input signal values from an input signal value alphabet B. In case the values up[n] are binary values, i.e. up[n]e{0;l}, i.e. B = 2, the full-rate input signal vector Un may then comprise Bp = 2P values. The second full-rate input, i.e. a previous full-rate internal state, Zn may be of the form Zn= (Zi [n] , Z2 [n] ,..., zN[n] ) , wherein Z1Jn] (i=l,...,N; N > 1) represents full-rate internal state values from an full- rate internal state value alphabet B. The internal state is sometimes also designated with x. A first full-rate output signal yn= (yi [n] , y2 [n] , ..., uQ [n] ; Q > 1) from the PLA 11 is provided via an output line 14 and a second full-rate output Zn+1= (zi [n+1] , Z2 [n+1] ,..., zN[n+l] ) from the PLA 11 is provided via a state register input line 15. The internal state register 18 has a signal output line 16 which divides in two routes. A first route 17 is coupled to another part of the system of which the full-rate FSM 10 is a subsection and the second route is the previous internal state which is the output line 13. In other words, the internal state register receives the second full-rate output signal Zn+I describing a current state, stores the information describing the current state and provides the information describing the current state as a feedback to the PLA 11.
In operation, the full-rate input signal Un on the external input line 12 is fed into the PLA 11 at a first clock-rate fi and the updated full-rate internal state
Zn+i= (zi [n+1] , Z2 [n+1] , ..., zN[n+l] ) is input to the internal state register 18 via the internal state register input line 15 also at the first clock-rate fi. This updated internal state zn+i is temporarily stored in the internal state register 18. When a new clock cycle commences, the PLA 11 receives two input signals, un and Zn, i.e. a further full-rate input signal, via the external input line 12 and via the internal state register output line 13. The PLA 11 receives the internal state signal representing the previous state of the full-rate finite state machine 10 from the internal state register output line 13. The PLA 11 acts on these inputs according to a full-rate internal state update function according to zn+i = f{zn, un) if ε BN+P x BN) and a full-rate output function according to yn = g(zn, 1Un) {9 £ BN+P x BQ) and outputs the full-rate output signal yn to the output line 14 and an updated full-rate internal state Zn+I to the register input line 15.
In case the first clock rate fi for clocking the full-rate input signal Un and the full-rate output signal yn is in the range of several GHz (Giga-Hertz) , it is required to provide a full-rate finite state machine circuit 10 which is also able to perform the internal state transitions at the first clock rate fi. Since today's finite state machine circuits are based on PLAs or RAMs (Random Access Memory) as basic logical elements, updating internal states with a clock frequency of several GHz is rather infeasible.
Hence, it would be desirable to emulate a full-rate FSM circuit by a sub-rate FSM architecture where logical elements of the sub-rate FSM, such as PLAs or RAMs, can run at a lower clock rate f2 than the full-rate input and output signals Un, Yn, but wherein the same output sequences (γn,yn+ir -,Yn+R-i) are generated, compared to a full-rate FSM architecture, given the same input sequences (Un, un+i, ..., Un+Ri1) . Further a method is needed to find internal state transition equations of a sub-rate FSM when the internal state transition equations -f(zn/ Un) (f e BN+P x BN) , g(zn, Un) (g e BN+P x BQ) of a full-rate FSM are given . This object is achieved by a method for obtaining a description of a full-rate finite state machine according to claim 1, a method for processing a full-rate input signal according to claim 7, an apparatus for obtaining a description of a full-rate finite state machine according to claim 20, an apparatus for processing a full-rate input signal according to claim 21 and a test-system according to claim 31.
According to a further aspect, the present invention provides a computer program for performing the inventive methods .
The present invention is based on the finding that the behavior of a full-rate finite state machine running at a first clock-rate fi can be emulated by sub-rate finite state machine running at a second clock-rate f2 being smaller than the first clock-rate fi by merging a plurality of full-rate internal state transitions, e.g. Zn+1 = f(zn, Un) , Zn+2 = Jf(Zn+I, un+i) , into a single sub-rate internal state transition, e.g. Zn+2 = F(Zn, Un), Un = (un, Un+1). In particular, R (R > 1) subsequent full-rate internal state transitions at the first clock rate fi dependent on R subsequent full-rate input signals Un, Un+1, ..., un+R_i are merged into a single sub-rate internal state transition zn+R = F(Zn, Un) at the second clock rate f2 being a fraction of the first clock rate tlr wherein the single sub-rate internal state transition Zn —> zn+R is dependent on a single sub-rate input signal Un having the second clock- rate f2 and . comprising R subsequent full-rate input signals Un, Un+1, ..., un+R-1.
According to embodiments of the present invention a description F of a sub-rate internal state transition between a previous sub-rate internal state Zn and an updated sub-rate internal state zn+R of the sub-rate finite state machine can be obtained by subsequently inputting values of the full-rate input signal Un, Un+1, ..., Un+^1 comprised by the sub-rate input signal Un to the full-rate finite state machine assuming the previous sub-rate internal state Zn as an initial full-rate internal state of the full-rate finite state machine. The full-rate internal state zn+R obtained after inputting the R-th full-rate input signal UΠ+R-I to the full-rate finite state machine corresponds to the updated sub-rate internal state of the sub-rate finite state machine.
According to embodiments, a sub-rate output signal Yn having the second clock rate f2 comprises R values of the full-rate output signal yn,Yn+ir -, Yn+R-i/ which would have been obtained with the full-rate finite state machine which is to be emulated by the sub-rate finite state machine. The sub-rate output signal Yn can be obtained by inputting the sub-rate input signal Un and the previous sub-rate internal state Zn to a sub-rate output function G that outputs the sub-rate output signal Yn comprising a plurality of output values yn,yn+i, ...,yn+R-i being equal to values of the full-rate output signal obtained by subsequently inputting values Un, Un+I, ...,un+R_i of the full-rate input signal comprised by the sub-rate input signal Un to the full-rate finite state machine assuming the previous sub-rate internal state Zn as initial full-rate internal state of the full-rate finite state machine.
Further, embodiments of the present invention provide a method for processing a full-rate input signal Un having a first clock rate fi and for providing a full-rate output signal yn in dependence on the full-rate input signal, comprising de-serializing the full-rate input signal Un to obtain a sub-rate input signal Un comprising a plurality of subsequent values of the full-rate input signal ^n, un+i, ...,Un+R-!, such that the sub-rate input signal Un has a second clock rate f2 being a fraction of the first clock rate fi, updating a sub-rate internal state of a sub-rate finite state machine circuit in dependence on a previous sub-rate internal state Zn and the sub-rate input signal Un at the second clock rate f2, providing a sub-rate output signal Yn in dependence on the previous or updated sub-rate internal state zn, zn+R, the sub-rate output signal Yn comprising a plurality of output values, and serializing the sub-rate output signal comprising the plurality of output values yn,yn+i,-,yn+R-i to obtain a serialized output signal having the first clock rate fi and having values equal to the full-rate output signal.
Yet further, embodiments of the present invention provide an apparatus comprising an input for a full-rate input signal Un having a first clock rate fi, a de-serializer for converting the full-rate input signal Un to a sub-rate input signal Un having a second clock rate f2 being a fraction of the first clock rate fi, a sub-rate finite state machine circuit configured to update a sub-rate internal state in dependence on a previous sub-rate internal state zn and the sub-rate input signal Un, and to provide a sub-rate output signal Yn in dependence on the previous or updated sub-rate internal state Zn, Zn+R, and a serializer configured to serialize the sub-rate output signal Yn to obtain a full-rate output signal yn having the first clock rate fi. Thereby the sub-rate finite state machine is configured to update the sub-rate internal state at the second clock rate f2.
According to further embodiments, an inventive apparatus may be comprised in a test system, the test system further comprising a device under test (DUT), configured to provide a DUT-signal in accordance with a communication protocol, wherein the apparatus comprised by the test system is configured to receive the DUT-signal or a signal derived therefrom as the full-rate input signal Un, wherein the sub-rate finite state machine is configured to process the DUT-signal according to the communication protocol to follow a sequence of states of the communication protocol in dependence on the DUT-signal Un, and wherein the sub- rate finite state machine is configured, such that a single transition between two subsequent sub-rate internal states znr zn+R of the sub-rate finite state machine reflects a plurality of R subsequent transitions between subsequent communication protocol states Zn → zn+i -» ... -> ZΠ+R.
Yet further embodiments of the present invention provide a method and an apparatus for obtaining a description of a sub-rate finite state machine describing sub-rate internal state transitions between subsequent sub-rate internal states by deriving, from a description f of a full-rate finite state machine, a description F of the sub-rate finite state machine. The method comprises merging a plurality of subsequent full-rate internal state transitions Zn —> Zn+1 -» ... —> zn+R into a single sub-rate internal state transition Zn —> zn+R.
Hence, embodiments of the present invention allow processing high speed input signals having a high clock rate fi with a finite state machine circuit operating at a lower clock frequency f2, and providing output signals at the first clock frequency. The output signals thereby seem to be provided by a full-rate finite state machine circuit running at the first clock frequency fi. Hence it is possible to process high speed input signals with finite state machines circuits that are operated at a slower clock rate than the high speed input signals. In this way power consumption can be reduced, for example. Also, an implementation of high-speed re-configurable state machines can be facilitated in some embodiments.
Preferred embodiments of the present invention are described in detail with respect to the following drawings, in which:
Fig. 1 shows a block diagram of a conventional full-rate finite state machine circuit; Fig. 2 shows a block diagram of an apparatus for emulating the full-rate finite state machine of Fig. 1, according to an embodiment of the present invention;
Fig. 3 schematically depicts two clock signals having different clock-rates;
Fig. 4 shows a flow chart of a method for emulating a full- rate finite state machine, according to an embodiment of the present invention;
Fig. 5a shows an example of a state transition diagram of full-rate finite state machine;
Fig. 5b shows an input/state table according to the state transition diagram of Fig. 5a;
Fig. 5c shows an input/state table of a sub-rate finite state machine emulating a full-rate finite state machine having the state transition diagram of Fig. 5a;
Fig. 5d shows an input/output table according to the state transition diagram of Fig. 5a; and
Fig. 5e shows an input/output table of a sub-rate finite state machine for emulating the full-rate finite state machine according to Fig. 5a.
With respect to the following description, it is to be noted that in the different embodiments the same or similarly acting functional elements have the same reference numerals, and hence the descriptions of these functional elements in the various embodiments illustrated in the following are mutually interchangeable.
Fig. 2 illustrates an apparatus 20 for emulating a full- rate FSM according to an embodiment of the present invention. An exemplary full-rate FSM has been described above with regard to Fig. 1.
The apparatus 20 comprises a first input 22 for a full-rate input signal Un, wherein subsequent values of the full-rate input signal are being clocked to the input terminal 22 with a first clock rate fi. Further, the apparatus 20 comprises a de-serializer 27 for converting the full-rate input signal Un to a sub-rate input signal Un wherein the sub-rate input signal On is clocked into a sub-rate finite state machine circuit 21 with a second clock rate t2 being a fraction of the first clock rate fi. According to an embodiment of the present invention, the de-serializer 27 may be a circuit for a serial-to-parallel conversion of the full-rate input signal Un. Hence, the de-serialized sub- rate input signal Un may comprise R subsequent values Un, un+i, ...,Un+R-! of the full-rate input signal, which are being clocked to the sub-rate FSM circuit 21 with the second clock rate f2. The sub-rate FSM circuit 21, which may comprise a memory, in particular- a RAM, or a programmable logic device or a programmable logic array (PLA), is configured to update a sub-rate internal state in dependence on a previous sub-rate internal state Zn fed to the sub-rate FSM circuit 21 by means of a second input 23 and in dependence on the sub-rate input signal Un = [Un, Un+I,..., un+R_i]. Optionally, the sub-rate FSM circuit 21 may be configured to provide a sub-rate output signal Yn in dependence on the previous or updated sub-rate internal state Zn, Zn+R. Thereby the sub-rate output signal Yn comprises R signal values yn/Yn+i, -,γn+R-i that are fed into a serializer 28 in order serialize the sub-rate output signal Yn to obtain full-rate output signals Yn,yn+i, ..., yn+R-i having the first clock rate fi. . According to embodiments, the serializer circuit 28 may comprise a circuit for a parallel-to-serial conversion of the sub-rate output signal Yn comprising R output signal values yn/yn+if -,Yn+R-i • The sub-rate FSM circuit 21 acts on the inputs in the form of the sub-rate input signal Un = [Un, un+i, ..., un+R-i] and the previous sub-rate internal state Zn and outputs the sub- rate output signal Yn = [ynrYn+i*-./ YΠ+R-I] and an updated sub- rate internal state Zn+R, both with the second clock rate f2. The updated sub-rate internal state zn+R is fed into a sub-rate internal state register 29, which may have a single output line 26 which may be divided into two routes. A first route is coupled to another part of the system of which the sub-rate FSM is a sub-section, and a second route is the state register output line 23.
According to embodiments, the de-serializer 27 is configured to serial-to-parallel-convert the full-rate input signal Un, such that the sub-rate input signal Un comprises, within a time interval T2 (being inverse to the second clock rate f2, i.e. T2 = l/±z), a plurality of subsequent values Un, un+i, ..., un+R_i of the full-rate input signal corresponding to a plurality of subsequent time intervals Ti, which intervals may be inverse to the first clock rate flr i.e. Ti = 1/fi.
Fig. 3 exemplarily shows a graphical representation of two different clock signals 32 and 34, wherein the first clock signal 32 has a first clock rate fi and wherein the second clock signal 34 has a second clock rate f2. In the example given in Fig. 3, the first clock rate fi is twice the second rate f2, i.e. f!=2*f2. The clock rates may be defined by the duration of the respective clock signal pulses. For the first clock signal 32 a clock signal has a period duration of Ti. For the second clock signal 34, a clock signal has a period duration of T2. The relationship Ti/T2 is inverse to the relationship fi/f2. Since in this case the relationship Ti/T2 is 1/2, the relationship of fi/f2 is R=2. In general, the relationship fi/f2 may be R (R > 1).
The de-serializer 27 may therefore be configured to serial- to-parallel convert R subsequent values Un, un+i, ...,Un+R-! of the full-rate input signal, wherein R denotes the ratio of the full-rate frequency fi to the sub-rate frequency f2.
In the following, let us assume that the apparatus 20 is designed for emulating the behavior, i.e. the state transitions, of the full-rate FSM 10. It is assumed that the full-rate FSM 10 runs at full-rate frequency fi with P input bits in vector Un at rate fi, N state bits in vector Zn at rate fi and Q output bits in vector yn at rate fi.
Un = (uχ[n], u2[n],..., up[n]) € Bp (1)
Zn= (Z1Cn], z2[n],..., zN[n]) e BN (2)
yn = (yi[n], y2[n],..., yQ[n]) e BQ (3)
Zn+1 = f(«n, Un), £ e BN+P x BN (4)
yn = g(zn,un), g e BN+P x BQ (5)
That is, a memory comprised by the full-rate FSM circuit 11 may look up an updated full-rate internal state Zn+1 and a full-rate output signal yn as a function of the full-rate input Un and the current full-rate internal state Zn. N + P possible address inputs hence lead to N + Q possible data outputs .
Referring again to Fig. 2 the behavior of a sub-rate machine will be described. The full-rate de-serializer 27 combines R sequential full-rate input signals Un, Un+1, ...,Un+R-!^ to the sub-rate input signal Un. Un is hence updated at rate fi/R in this example. A memory comprised by the sub- rate FSM circuit 21 may run at the second frequency f2 = fi/R. The sub-rate output signal Yn, which contains R subsequent output values yn,yn+1, ...,yn+R-i? is also updated at the second clock rate f2. The relationships between updated sub-rate internal states zn+R, sub-rate output signals Yn and sub-rate input signals Un and previous sub-rate internal states Zn can be summarized as follows:
Un = (Un, Un+1,...,Un+R-!) € BPxR (6)
Yn = (Yn, Yn+I, -,Yn+R-I) ≡ BQxR (7) zn+R = F(Zn, Un) , F e BN+P*R x BN (8) Yn = G(Zn, Un) , G e BN+p*R x BQ*R (9)
In general this means, that the sub-rate FSM circuit 21 may look up the updated sub-rate internal state zn+R in a time interval T2 corresponding to R time intervals Ti as a function of the current sub-rate internal state Zn and the last R values un,un+i, ...,un+R-i of the full-rate input signal. In other words, for the sub-rate FSM we have N + P x R possible memory address inputs and N + Q * R possible data outputs .
The question is now how to choose the sub-rate internal state update function F(Zn, Un), F e BN+P*R x BN, and the sub- rate output function G(Zn, Un), G e BN+P*R x BQ*R, for given full-rate internal state update functions £(zn,un), f e. BN+P x BN, full-rate output functions g(zn,Un), g e BN+P x BQ, and the full-rate to sub-rate clock rate ratio R.
Iteratively applying the full-rate internal state update function f(zn,un), f e BN+P x BN, to the current sub-rate internal state Zn and the R values un,un+i, ...,Un+R-! of the sub-rate input signal Un yields the updated sub-rate internal state zn+R corresponding to a full-rate internal state after R clock periods Ti. That is, the desired sub- rate internal state update function F(Zn, Un), F 6 BN+P*R X BN, may be determined in the following way:
Zn+1 = £(zn,uπ) (10) Zn+2 = f ( zn+i , un+i ) = f ( f ( Zn , Un) , un+ 1 ) ( H )
zn+« =fCl;(f(f(zπ, Un), Un+1 ),...), uπ+/M ) ( 12 !
R tones
Zn+R = F(Zn , Un , Un+1 ,..., Un+Λ_, )) 1 3 '
zn+R = F( Zn , Un ) ( 14 )
Hence, according to embodiments of the present invention, the sub-rate FSM circuit 21 is configured to update the sub-rate internal state by inputting the sub-rate input signal Un and the previous sub-rate internal state zn to the sub-rate internal state update function F(zn,Un) , F e gN+p*R χ gN ^ that outputs the updated sub-rate internal state zn+R, wherein the sub-rate internal state update function JP(SSn, Un), Jf e BN+P*R x BN, is configured such that the updated sub-rate internal state zn+R is equal to a full-rate internal state obtained by subsequently inputting R values Un, un+i, ..., Un+R-! of the full-rate input signal comprised by the sub-rate input signal Un to a full-rate FSM circuit assuming the previous sub-rate internal state Zn as initial full-rate internal state of the full-rate FSM circuit.
That is, in case an updated full-rate internal state zn+i depends on the previous full-rate internal state Zn and the full-rate input signal Un according to Zn+1 = £(zn,un), with f denoting the full-rate internal state update function, the sub-rate internal state update function F(Zn, Un), F 6 β N+p*R χ gN^ between the updated sub-rate internal state zn+R and the previous sub-rate internal state Zn and the sub- rate input signal Un comprising the plurality of full-rate input signals un, un+i, ..., un+R_i I S based on zn+R =fC1;(f(f(zn,uJ5uπ+I),...),uπ+Λ.1) .
R times
Regarding the sub-rate output signal Yn, each of the full- rate output signals yn,yn+i, -,Yn+R-i comprised by the sub-rate output signal Yn this determined by the full-rate output equation yn+k = g"(zn+k, un+k) . The full-rate internal state zn+k after k clock periods with the first clock rate fi can be determined according to
zn+* =£0-^(2,,,un),uπ+1),...),un+jt_,) (is: k tones
To obtain the sub-rate output signal Yn all R subsequent values yn,yn+i,
Figure imgf000015_0001
of the full-rate output signal may be combined according to
Figure imgf000015_0002
γn = G(Zn,Un,Un+1 ,...,u,,+/M) = G(Zn,Un) (17) u.
Hence, according to embodiments of the present invention, the sub-rate FSM circuit 21 is configured to provide the sub-rate output signal Yn by inputting the sub-rate input signal Un and the previous sub-rate internal state Zn to the sub-rate output function G that outputs the sub-rate output signal Yn comprising a plurality of output values, wherein the sub-rate output function G is configured such that the sub-rate output signal Yn comprises values yn,yn+i,-,yn+R-i of a full-rate output signal which could be obtained by subsequently inputting values Un, un+i, ...,Un+R-!, of the full-rate input signal comprised by the sub-rate input signal Un, to a full-rate finite state machine assuming the previous sub-rate internal state Zn as initial full-rate internal state of the full-rate finite state machine.
In case the sub-rate output signal Yn comprises at least two full-rate output signal values yn, yn+i> the first full- rate output signal value yn solely depends on a first full- rate input signal value Un comprised by the sub-rate input signal Un and the previous sub-rate internal state Zn according to yn = g(zn,un). The second full-rate output signal value yn+i solely depends on a second full-rate input signal value un+i, the first full-rate input value Un and the previous sub-rate internal state Zn according to yn+i = g(f(zn,un), Un+1), etc.
In case of a memory-based sub-rate FSM circuit 21 the memory content may be predetermined by evaluating the sub- rate internal state update function F and the sub-rate output function G for each of the 2N+PxR combinations that correspond to all possible combinations of the sub-rate internal states (N bits) and the sub-rate input signal Un (P x R input bits) .
Alternatively, the sub-rate FSM machine 21 may be implemented using a programmable logic device, for example using a field programmable gate array. The internal state update function may in this case be implemented using a logic circuit for mapping an internal state to a subsequent internal state or successor internal state. For example, a table or logic table (or any other logic description) may be established which describes a mapping between an internal state and a successor internal state. A logic circuit structure for implementation in a field programmable gate array (which may be adapted to a hardware available in the field programmable gate array) may be derived from the table or logic table (or form any other logic description) using any logic circuit design approach. A logic design optimization may also be used, for example to reduce a complexity of the logic circuit.
According to an embodiment of the present invention the apparatus 20 is configured to determine the sub-rate internal state update function F and to determine the sub- rate output function G automatically based on the known full-rate internal state up-date function f, the known full-rate output function g and the ratio R = fi/f2- Hence the apparatus 20 may be configurable in order to emulate a plurality of different full-rate FSM circuits, given respective f, g and R. That is, according to embodiments, the apparatus 20 comprises an apparatus for obtaining a description of a full-rate FSM describing a transition between subsequent full-rate internal states according to zn+i = f(zn, Un), f e BN+P x BN, by deriving, from the description f of the full-rate finite state machine, a description F of the sub-rate finite state machine comprising merging a plurality of full-rate internal state transitions into a single sub-rate internal state transition. Thereby, R subsequent full-rate internal states ( or state transitions) updated at the first clock rate fi, dependent on R subsequent full-rate input signals Un, un+i, ...,un+R_i, are merged into a single sub-rate internal state transition at the second clock rate at f2 being a fraction of the first clock rate fi, dependent on one single sub-rate input signal (or signal vector) Un comprising the R subsequent full-rate input signals (or signal vectors) un,un+i, ...,un+R-i . Obtaining the description F of the sub-rate finite state machine based on the description f of the full-rate finite state machine can be performed, for example, by a computer or a micro-controller comprised by the apparatus 20.
To summarize, the apparatus depicted in Fig. 2 can be used to perform a method for processing a full-rate input signal Un having a first clock rate fi and for providing a full- rate output signal yn in dependence on the full-rate input signal, wherein the method is exemplarily shown in Fig. 4.
The inventive method comprises a first step 41 of de- serializing the full-rate input signal (or input signal vector) Un to obtain the sub-rate input signal (or input signal vector) Un comprising (for example in a parallel representation) a plurality of subsequent values Un, un+i, ...,un+R_i of the full-rate input signal, such that the sub-rate input signal (or input signal) Un has the second clock rate f2 being a fraction of the first clock rate fi . In a second step 42 a sub-rate internal state of the sub- rate FSM circuit 21 is updated in dependence on a previous sub-rate internal state Zn and the sub-rate input signal Un at the second clock rate f2. In a third step 43 the sub- rate output signal Yn is provided in dependence on the previous or updated sub-rate internal state Zn zn+R, wherein the sub-rate output signal Yn comprises a plurality of output values yn,yn+i, ...,yn+R-i- In a further step 44 the sub- rate output signal Yn is serialized to obtain the serialized output signal having the first clock rate f1#
As described before, the method referred to in Fig. 4 can be used to emulate a full-rate FSM circuit by means of a sub-rate FSM circuit. Updating the internal sub-rate internal state comprises a plurality of subsequent full- rate internal state updates or transitions in one single sub-rate internal state update step or transition. This can be achieved, for example, by updating the sub-rate internal state by looking up the updated sub-rate internal state zn+R at a memory position depending on the sub-rate input signal Un and the previous sub-rate internal state Zn.
Of course, the same may hold true for the sub-rate output signal Yn. Providing the sub-rate output signal Yn comprises a plurality of subsequent full-rate output signal provisions in one single output signal provision step. This can be achieved by looking up the sub-rate output signal Yn at a memory position depending on the sub-rate input signal Un and/or the previous or updated sub-rate internal state
The emulation of a full-rate FSM shall be explained in more detail referring to a simple example given in the Figs. 5a to 5e.
Fig. 5a shows a state transition diagram 50 of a simple and exemplary full-rate FSM having four full-rate internal states 51 ("0"), 52 ("1"), 53 ("2") and 54 ("3"). The arrows from and to the individual full-rate internal states denote state transitions depending on a full-rate input value τin=(ui[n]) e {0,1}. For example, if the full-rate FSM is in initial state 51 ("0") and a "0" is input to the full-rate FSM the updated full-rate internal state will be again state 51 ("0"). However, if a "1" is received as input signal, there will be a state transition from internal state 51 ("0") to internal state 52 ("1") . Assuming current internal state 52 ("1") and a current full-rate input "1", a state transition to internal state 53 ("2") will happen. In case of a "0" as full-rate input signal, internal state 52 ("1") will transition to internal state 54 ("3") , etc.
The related state update/transition table is shown in Fig. 5b.
In the left column a respective current full-rate internal state Zn is shown. The middle column represents the current full-rate input signal Un. The right column shows the updated full-rate internal state zn+i depending on the current full-rate internal state and the full-rate input signal according to zn+i = -£(zn,un). Hence, the table shown in Fig. 5b describes the full-rate internal state update function f(Zn, Tin). The updated full-rate internal state Zn+1 can be determined by performing a table look-up in a memory depending on the current full-rate internal state zn and the current full-rate input Un. In this example, this would require a look-up table with eight (BN+P = 22+1) entries, corresponding to four (BN = 22) internal states and two (Bp = 21) possible input values.
The full-rate FSM having state transitions according to Fig. 5a can be emulated by a sub-rate FSM according to embodiments of the present invention. This shall be explained in the following.
If two subsequent values Un, un+i of the full-rate input signal are combined to the sub-rate input signal Un the state transitions of the full-rate FSM can be emulated as shown by the sub-rate state transition table in Fig. 5c. The sub-rate state transition table of Fig. 5c corresponds to a state transition diagram (not shown) , where each state serves as a source and a destination for four (22) data transition arrows, not only two as shown in Fig. 5a. Starting from the current sub-rate internal Zn state, the updated sub-rate internal state Zn+2 can be determined by subsequently applying the full-rate update function £ according to eq. (13). For example, being in current internal sub-rate state 52 ("1") the first value Un of the sub-rate input signal Un defines a first "invisible" state transition according to f(zn,un) . If the first value Un is "1", then there would be an "invisible" state transition from internal state 52 ("1") to internal state S3 ("2") . Applying the second input value Un+1 to this new invisible state £(zn,un) yields the updated sub-rate internal state Zn+2 according to f(f(Zn, Un) ,Un+1) . If the second value un+i of the sub-rate input signal Un is "1", there would be a state transition from the invisible state 53 ("2") to the updated sub-rate state 54 ("3") , as can be verified with Fig. 5a. Consequently, applying the inventive concept, one can fill the sub-rate state update table as shown in Fig. 5c, which describes the sub-rate internal state update function F = f{f(zn, un) , Un+1) . The sub-rate internal state updates can be again realized by a table lookup depending on the current sub-rate internal state zn and the combined sub-rate input signal Un. As there are still four sub-rate internal state possibilities but, however, four possibilities for a combined sub-rate input signal Un, this results in a look-up table size of 16 values for Zn+2.
Fig. 5d shows an exemplary output table according to an exemplary full-rate output function Cj(Zn, Un).
Fig. 5e reflects how the sub-rate output signal Yn comprising the two values yn, yn+i of the full-rate output signal can be obtained based on the sub-rate internal state zn and the sub-rate input signal Un. The first value yn of the sub-rate output signal only depends on the sub-rate Zn and first value Un of the sub-rate input signal. The second value yn+i depends on the sub-rate internal state Zn, the first value Un of the sub-rate input signal and the second value Un+1 of the sub-rate input signal according to yn+i = g( zn+i, Un+I) = g-(zn,un,un+i) . This relationship can be pre- computed for each combination of sub-rate internal states Zn and sub-rate input signal Un, which yields a look up table comprising 16 entries for Yn = [yn, yn+i] . The correct sub-rate output signal entry can be chosen by using memory address indices comprising the sub-rate internal state Zn and the sub-rate input signal Un.
Embodiments of the present invention can be used for building test systems for testing a test object or a device under test (DUT) according to a predefined communication protocol, wherein a communication protocol comprises a set of standard rules for data representation, signaling, authentication and error detection required to send information over a communications channel. Thereby the communication protocol may comprise a certain number of valid communication protocol states.
Hence, embodiments of the present invention provide a test system comprising a DUT, configured to provide a DUT-signal in accordance with the communication protocol, and an apparatus for emulating a full-rate FSM according to an embodiment of the present invention, wherein the apparatus is configured to receive the DUT-signal or a signal derived there from as the full-rate input signal un, wherein the sub-rate FSM circuit of the apparatus is configured to process the DUT-signal according to the communication protocol to follow a sequence of states of the communication protocol in dependence on the DUT signal, and wherein the sub-rate FSM circuit is configured, such that a single transition between two subsequent sub-rate internal states of the sub-rate FSM circuit reflects a plurality of subsequent transitions between subsequent communication protocol states.
In some embodiments, the sub-rate FSM circuit may define transitions between a plurality of valid communication protocol states and at least one transition into an invalid communication protocol state in response to a communication protocol violation. In this case the test system may be configured to provide an error detection signal, in case the DUT-signal leads to a sub-rate internal state which indicates a violation of the communication protocol. The sub-rate FSM circuit defines transitions between a plurality of communication protocol states. According to embodiments of the present invention, the sub-rate FSM circuit is configured to extract useful data from the DUT- signal communicated in accordance with the communication protocol and to provide a serialized output signal corresponding to the useful data comprised by the DUT signal. Thereby the useful data does not comprise any signaling information of the communication protocol, but preferably unknown information data.
Within the test system, the sub-rate FSM circuit can be used to simulate a communication between the DUT and other components of a network, wherein the network components communicate by means of the communication protocol . Embodiments of the present invention allow to use FSM circuits comprising slow, cheap and power-saving FSM circuit components, such as, for example, low cost memory devices. These slower FSM circuit components may be clocked with a slower clock rate than full-rate input signals to and full-rate output signals from the sub-rate FSM circuit.
Depending on the circumstances, the inventive method for emulating a full-rate FSM may be implemented in hardware or in software. The implementation may be done on a digital storage medium, particularly a disc or a CD with electronically readable control signals, which may cooperate with a programmable computer system such that the method is executed. In general, the invention does also consist in a computer program product with a program code stored on a machine readable carrier for performing the inventive method when the computer program product runs on a computer and/or micro-controller. In other words, the invention may be thus realized as a computer program with a program code for performing the method when the computer program runs on a computer.
While this invention has been described in terms of several preferred embodiments, there are alternations, permutations and equivalents which fall within the scope of this invention. It should also be noted that there are many alternative ways of implementing the methods and compositions of the present invention. It is therefore intended that the following appended claims be interpreted as including all such alterations, permutations and equivalents as forwarded in the true spirit in the scope of the present invention.

Claims

Claims
1. A method for obtaining a description of a sub-rate finite state machine (10) , for performing a functionality of a full-rate finite state machine using the sub-rate state machine, the method comprising:
obtaining a description of the full-rate state machine, the description describing full-rate internal state transitions between subsequent full-rate internal states; and
deriving, from the description of the full-rate finite state machine, a description of the sub-rate finite state machine (20) ,
wherein deriving the description of the sub-rate finite state machine comprises merging a plurality of full-rate internal state transitions into a single sub-rate internal state transition.
2. The method according to claim 1, wherein deriving the description of the sub-rate finite state machine comprises merging R > 2 subsequent full-rate internal state transitions dependent on R subsequent full-rate input signals into a single sub-rate internal state transition dependent on one single sub-rate input signal comprising the R subsequent full-rate input signals .
3. The method according to claim 1 or 2, wherein deriving a description of a sub-rate internal state transition between a previous sub-rate internal state and an updated sub-rate internal state comprises applying a full-rate state transition function to the previous sub-rate internal state multiple times, to obtain the updated sub-rate internal state,
wherein the full-rate state transition function describes a transition between subsequent full-rate states .
4. The method according to claim 3, wherein applying the full-rate state transition function to the previous sub-rate internal state multiple times comprises taking into consideration temporally subsequent signal values of one or more input signals.
5. The method according to claim 3 or 4, wherein a plurality of different state transitions from a given previous sub-rate internal state to corresponding updated sub-rate internal states is evaluated, wherein the state transitions of the plurality of different state transitions are associated with different sequences of temporally subsequent input signal values .
6. The method according to one of claims 1 to 5, wherein deriving the description of the sub-rate finite state machine comprises deriving a description of a sub-rate internal state transition between a previous sub-rate internal state Zn and an updated sub-rate internal state zn+R of the sub-rate finite state machine using the relationship
Figure imgf000025_0001
with f(',') denoting a description of transitions between subsequent full-rate internal states in dependence on a previous full-rate internal state zn and one or more full-rate input signals and with Un,...,un+R-i denoting R > 2 subsequent full-rate input signals comprised by one single sub-rate input signal.
The method according to one of the preceding claims, wherein deriving the description of the sub-rate finite state machine comprises applying a full-rate output function to an information describing the updated sub-rate internal state, to obtain a component of a sub-rate output function.
The method according to one of the preceding claims, wherein deriving the description of the sub-rate finite state machine comprises deriving a description of a sub-rate output signal based on a previous sub- rate internal state (Zn) and a sub-rate input signal (Un) comprising R subsequent full-rate input signal values or R subsequent sets of input signal values un ... un+R-i according to
Figure imgf000026_0001
Y. £(/(*« iθ,)»o.+i)
Figure imgf000026_0002
with g(',') denoting a description of a relationship between a full-rate output signal, a full-rate internal state and a full-rate input signal.
A method for processing a full-rate input signal (un,...,un+R) having a first clock rate (fx) and for providing a full-rate output signal (yn,..., YΠ+R) in dependence on the full-rate input signal (un, ..., un+R) , the method comprising:
de-serializing the full-rate input signal (un, ...,un+R_i) to obtain a sub-rate input signal (Un) comprising a plurality of subsequent values of the full-rate input signal, such that the sub-rate input signal has a second clock rate (f2) being a fraction of the first clock rate (fi) ;
updating a sub-rate internal state of a sub-rate finite state machine in dependence on a previous sub- rate internal state (zn) and the sub-rate input signal (Un) at the second clock rate (f2) ;
providing a sub-rate output signal (Yn) in dependence on the previous or updated sub-rate internal state (zn; ZΠ+R) I the sub-rate output signal comprising a plurality of output values (yn,..., Yn+R-i) ; and
serializing the sub-rate output signal (Yn) comprising the plurality of output values (yn,..., Yn+R-i) to obtain a serialized output signal having the first clock rate (fi) and having values equal to the full-rate output signal.
10. The method according to claim 9, wherein deserializing the full-rate input signal (Un, ..., un+R) comprises a serial-to-parallel conversion, such that the sub-rate input signal (Un) comprises, within a time interval (IZf2) inverse to the second clock rate (f2), a plurality of subsequent values of the full- rate input signal (Un, ..., un+R) corresponding to a plurality of subsequent time intervals (1/fi) inverse to the first clock rate (fi) .
11. The method according to claim 9 or 10, wherein updating the sub-rate internal state comprises inputting the sub-rate input signal (Un) and the previous sub-rate internal state (Zn) to a sub-rate internal state update function (F) that outputs the updated sub-rate internal state (ZΠ+R) , wherein the sub-rate internal state update function is configured such that the updated sub-rate internal state is equal to a full-rate internal state of a full-rate finite state machine, which would be obtained by subsequently inputting values of the full-rate input signal (un, ...,Un+R-I ) comprised by the sub-rate input signal (Un) to the full-rate finite state machine assuming the previous sub-rate internal state (Zn) as an initial full-rate internal state of the full-rate finite state machine.
12. The method according to claim 11, wherein an updated full-rate internal state (zn+i) depends on the previous full-rate internal state (Zn) and the full-rate input signal (un) according to
Z n+. =/(«„.«„)
with f~(",") denoting a full-rate internal state update function, and wherein the sub-rate internal state update function (F) describing a relationship between the updated sub-rate internal state zn+R and the previous sub-rate internal state zn in dependence on the sub-rate input signal comprising the plurality of full-rate input signals Un, ...,Un+R-! is based on a relationship of the form
zn+« = /(-(/(/(»„«„),"n+i ),-),IWi) ,
R times
whererin n is a time index , and wherein R is an integer greater than one describing how many full-rate state transitions are merged in a sub-rate state transition.
13. The method according to one of claims 9 to 12, wherein providing the sub-rate output signal (Yn) comprises inputting the sub-rate input signal (Un) and the previous sub-rate internal state (zn) or the updated sub-rate internal state to a sub-rate output function (G) that outputs the sub-rate output signal comprising a plurality of output values (yn,..., yn+R-i) r wherein the sub-rate output function is chosen such that the output values of the sub-rate output signal are equal to values of the full-rate output signal which would be obtained by subsequently inputting values (Un, ...,Un+R-I) of the full-rate input signal comprised by the sub-rate input signal (Un) to the full-rate finite state machine assuming the previous sub-rate internal state as initial full-rate internal state of the full- rate finite state machine.
14. The method according to claim 13, wherein the sub-rate output signal (Yn) comprises at least two full-rate output signal values (yn,yn+i), wherein a first full- rate output signal value (yn) solely depends on the first full-rate input signal value (un) comprised by the sub-rate input signal (Yn) and the previous sub- rate internal state (zn), and wherein a second full- rate output signal value (yn+i) depends on a second full-rate input signal value (Un+1), the first full- rate input signal value (un) and the previous sub-rate internal state (zn) .
15. The method according to claim 13 or 14, wherein one of the full-rate output signal values (yn) depends on the previous full-rate internal state (zn) and the full- rate input signal according to
yπ = g(zn>uJ
with g{' ,') denoting a full-rate output function, and wherein the sub-rate output function (G) relating the sub-rate output signal (Yn) and the previous sub-rate internal state (Zn) in dependence on the sub-rate input signal (Un) comprising the plurality of full- rate input signal values (Un, ..., un+R_i) is based on a relationship of the form
Y.
Figure imgf000030_0001
with f(',') denoting a full-rate internal state update function .
16. The method according to one of claims 9 to 15, wherein updating the internal sub-rate internal state (zn) comprises a plurality of subsequent full-rate internal state updates in one single sub-rate internal state update step.
17 The method according to one of claims 9 to 16, wherein updating the sub-rate internal state comprises looking up the updated sub-rate internal state (zn+R) at a memory position depending on the sub-rate input signal (Un) and the previous sub-rate internal state (zn) .
The method according to one of claims 9 to 17, wherein providing the sub-rate output signal (Yn) comprises providing a plurality of subsequent full-rate output signal values in one single output signal provision step.
19. The method according to one of claims 9 to 18, wherein providing the sub-rate output signal (Yn) comprises looking up the sub-rate output signal at a memory position depending on the sub-rate input signal (Un) and the previous or updated sub-rate internal state
Figure imgf000030_0002
.
20. The method according to one of claims 9 to 19, wherein serializing the sub-rate output signal (Yn) comprises a parallel-to-serial conversion, such that the serialized output signal comprises, within a time interval (l/f2) inverse to the second clock rate Cf2), a plurality of subsequent values of the full-rate output signal (yn, ...,yn+R-i) corresponding to a plurality of subsequent time intervals (1/fi) inverse to the first clock rate (fi) .
21. A computer program having a program code for performing a method according to one of the preceding claims, when the program code runs on a computer and/or micro-controller.
22. An apparatus, comprising:
an input (22) for a full-rate input signal (un,...,un+R-i) having a first clock rate (fi);
a deserializer (27) for converting the full-rate input signal (Un, ...,Un+R-!) to a sub-rate input signal (Un) having a second clock rate (f2) being a fraction of the first clock rate (fi) ;
a sub-rate finite state machine (21) configured to update a sub-rate internal state in dependence on a previous sub-rate internal state (zn) and the sub-rate input signal (Un) , and to provide a sub-rate output signal (Yn) in dependence on the previous or updated sub-rate internal state (zn; zn+R) ; and
a serializer (28) configured to serialize the sub-rate output signal (Yn) to obtain a full-rate output signal having the first clock rate (fi) ,
wherein the sub-rate finite state machine is configured to update the sub-rate internal state at the second clock rate (f2) .
23. The apparatus according to claim 22, wherein the deserializer (27) is configured to serial-to-parallel convert the full-rate input signal (un, ...,un+R) , such that the sub-rate input signal (Un) comprises, within a time interval (T2) inverse to the second clock rate (f2) , a plurality of subsequent values of the full- rate input signal (un, ...,un+R) corresponding to a plurality of subsequent time intervals (Ti) inverse to the first clock rate (fi) .
24. The apparatus according to claim 22 or 23, wherein the sub-rate finite state machine (21) is configured to updated the sub-rate internal state by inputting the sub-rate input signal (Un) and the previous sub-rate internal state (zn) to a sub-rate internal state update function (F) that outputs the updated sub-rate internal state (zn+R) , wherein the sub-rate internal state update function (F) is configured such that the updated sub-rate internal state is equal to a full- rate internal state obtained by subsequently inputting values of the full-rate input signal (un, ..., un+R_i) comprised by the sub-rate input signal (Un) to a full- rate finite state machine assuming the previous sub- rate internal state (zn) as initial full-rate internal state of the full-rate finite state machine.
25. The apparatus according to one of claims 22 to 24, wherein the sub-rate finite state machine (21) is configured to provide the sub-rate output signal (Yn) by inputting the sub-rate input signal (Un) and the previous sub-rate internal state (Zn) to a sub-rate output function (G) that outputs the sub-rate output signal comprising a plurality of output values (yn,..., Yn+R-i) , wherein the sub-rate output function (G) is configured such that sub-rate output signal (Yn) comprises values of a full-rate output signal which would be obtained by subsequently inputting values (un, ..., un+R_i ) of the full-rate input signal comprised by the sub-rate input signal (Un) to a full-rate finite state machine assuming the previous sub-rate internal state as initial full-rate internal state of the full-rate finite state machine.
26. The apparatus according to one of claims 22 to 25, wherein the sub-rate finite state machine (21) is configured to determine a sub-rate internal state update function (F) for updating the sub-rate internal state based the sub-rate input signal (Un) and the previous sub-rate internal state (zn) and to determine a sub-rate output function (G) for outputting the sub- rate output signal based on the sub-rate input signal (Un) and the previous sub-rate internal state (zn) , wherein determining the sub-rate internal state update function (F) and the sub-rate output function (G) is performed automatically based on a full-rate internal state update function (£) and a full-rate output function {g) .
27. The apparatus according to one of claims 22 to 26, wherein the sub-rate finite state machine (21) is configured to provide the sub-rate output signal (Yn) with at least two full-rate output signal values (yn^Yn+i) r wherein a first full-rate output signal value (yn) solely depends on a first full-rate input signal value (un) comprised by the sub-rate input signal (Yn) and the previous sub-rate internal state
(Zn) , and wherein a second full-rate output signal value (yn+i) solely depends on a second full-rate input signal value (un+i) , the first full-rate input signal value (un) and the previous sub-rate internal state
(Zn) •
28. The apparatus according to one of claims 22 to 27, wherein the sub-rate finite state machine (21) is configured to update the sub-rate internal state by looking up the updated sub-rate internal state (zn+R) at a memory position depending on the sub-rate input signal (Un) and the previous sub-rate internal state
(Zn) •
29. The apparatus according to one of claims 22 to 28, wherein the sub-rate finite state machine (21) is configured to provide the sub-rate output signal (Yn) comprising a plurality of subsequent full-rate output signal values in one single output signal provision step, such that the plurality of subsequent full-rate output signal values is provided simultaneously.
30. The apparatus according to one of claims 22 to 29, wherein the sub-rate finite state machine (21) is configured to provide the sub-rate output signal (Yn) by looking up the sub-rate output signal at a memory- position depending on the sub-rate input signal (Un) and the previous or updated sub-rate internal state (Zn; 2n+R) .
31. The apparatus according to one of claims 22 to 30, wherein the serializer (28) is configured to serialize the sub-rate output signal (Yn) via a parallel-to- serial conversion, such that the serialized output signal comprises, within a time interval (T2) inverse to the second clock rate (f2), a plurality of subsequent values of the full-rate output signal (Ynr -/Yn+R-i) corresponding to a plurality of subsequent time intervals (Ti) inverse to the first clock rate (U1).
32. A test system comprising:
a device under test, configured to provide a DUT- signal (un) in accordance with a communication protocol; and an apparatus according to one of claims 22 to 31, wherein the apparatus is configured to receive the DUT-signal or a signal derived therefrom as the full- rate input signal (un) ,
wherein the sub-rate finite state machine (21) is configured to process the DUT-signal (un) according to the communication protocol to follow a sequence of states of the communication protocol in dependence on the DUT-signal, and
wherein the sub-rate finite state machine (21) is configured, such that a single transition between two subsequent sub-rate internal states of the sub-rate finite state machine reflects a plurality of subsequent transitions between subsequent communication protocol states.
33. The test system according to claim 32, wherein the sub-rate finite state machine (21) defines transitions between a plurality of valid communication protocol states and at least one transition into an invalid communication protocol state in response to a communication protocol violation and wherein the test system is configured to provide an error detection signal, in case the DUT-signal leads to an internal state which indicates a violation of the communication protocol .
34. The test system according to claim 32 or 33, wherein the sub-rate finite state machine defines transitions between a plurality of communication protocol states and wherein the sub-rate finite state machine is configured extract from the DUT-signal useful data communicated in accordance with the communication protocol and to provide a serialized output signal corresponding to the useful data comprised by the DUT- signal .
PCT/EP2008/008089 2008-09-24 2008-09-24 Apparatus and method for emulating a full-rate finite state machine WO2010034327A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/EP2008/008089 WO2010034327A1 (en) 2008-09-24 2008-09-24 Apparatus and method for emulating a full-rate finite state machine
TW098132060A TWI430124B (en) 2008-09-24 2009-09-23 Method and apparatus for processing a full-rate input signal and method for obtaining a description of a sub-rate finite state machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2008/008089 WO2010034327A1 (en) 2008-09-24 2008-09-24 Apparatus and method for emulating a full-rate finite state machine

Publications (1)

Publication Number Publication Date
WO2010034327A1 true WO2010034327A1 (en) 2010-04-01

Family

ID=40467400

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2008/008089 WO2010034327A1 (en) 2008-09-24 2008-09-24 Apparatus and method for emulating a full-rate finite state machine

Country Status (2)

Country Link
TW (1) TWI430124B (en)
WO (1) WO2010034327A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012016588A1 (en) 2010-08-03 2012-02-09 Verigy (Singapore) Pte. Ltd. Bit sequence generator

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10338558B2 (en) 2014-10-17 2019-07-02 21, Inc. Sequential logic circuitry with reduced dynamic power consumption

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996013902A1 (en) * 1994-11-01 1996-05-09 Virtual Machine Works, Inc. Programmable multiplexing input/output port

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996013902A1 (en) * 1994-11-01 1996-05-09 Virtual Machine Works, Inc. Programmable multiplexing input/output port

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CÁSSIO A CARNEIRO ET AL: "A Real-Time and Parametric Parallel Video Compression Architecture Using FPGA", FRONTIERS OF HIGH PERFORMANCE COMPUTING AND NETWORKING - ISPA 20 06 WORKSHOPS LECTURE NOTES IN COMPUTER SCIENCE;;LNCS, SPRINGER, BERLIN, DE, vol. 4331, 1 January 2006 (2006-01-01), pages 758 - 768, XP019052277, ISBN: 978-3-540-49860-5 *
KONSTANTOULAKIS G E ET AL: "Transfer of data over ATM networks using available bit rate (ABR)", COMPUTERS AND COMMUNICATIONS, 1995. PROCEEDINGS., IEEE SYMPOSIUM ON, IEEE, LOS ALAMITOS, CA, USA, 27 July 1995 (1995-07-27), pages 2 - 8, XP031259304, ISBN: 978-0-8186-7075-6 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012016588A1 (en) 2010-08-03 2012-02-09 Verigy (Singapore) Pte. Ltd. Bit sequence generator
US9575726B2 (en) 2010-08-03 2017-02-21 Advantest Corporation Bit sequence generator and apparatus for calculating a sub-rate transition matrix and a sub-rate initial state for a state machine of a plurality of state machines

Also Published As

Publication number Publication date
TW201033834A (en) 2010-09-16
TWI430124B (en) 2014-03-11

Similar Documents

Publication Publication Date Title
US7864084B2 (en) Serializer architecture for serial communications
US6651231B2 (en) Clock synchronizing circuit and method of designing the same
CN102043123B (en) Test circuit of scan chain
US9547040B2 (en) Efficient event detection
US5796994A (en) Patch mechanism for allowing dynamic modifications of the behavior of a state machine
CN113328733A (en) Duty ratio calibration circuit and method
US7716514B2 (en) Dynamic clock phase alignment between independent clock domains
WO2010034327A1 (en) Apparatus and method for emulating a full-rate finite state machine
CN201867469U (en) Test circuit for scan chain
US6389580B1 (en) Computer readable storage medium having logic synthesis program, and logic synthesis method and apparatus
US11646741B2 (en) Pulse width modulator with reduced pulse width
CN117081751A (en) High-reliability quantitative response arbiter type PUF structure
CN105979021B (en) A kind of information processing method and user terminal
WO2005015251A1 (en) Integrated circuit with bit error test capability
KR101789467B1 (en) Fast reset apparatus of pseudo random binary sequence generator
Yang Static feedback control of switched asynchronous sequential machines
KR100312218B1 (en) Apparatus for making general purpose input/output port
JP2002279792A (en) Semiconductor integrated circuit device
CN117454813B (en) Method and device for calculating flip probability information of circuit and computer equipment
KR100366793B1 (en) Apparatus for pulse sequence generation using Shift Register
US20040096025A1 (en) Method and system for a programmable diphase digital phase lock loop
US20240202088A1 (en) Peripheral component interconnect board programmable link training and status state machine and state branching
CN207720100U (en) A kind of CPLD dual-edge triggers circuit
RU2237374C1 (en) Frame synchronization device
KR960016139B1 (en) Apparatus for inputting 3-test data input to integrated circuit in a boundary scan architecture

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08802566

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08802566

Country of ref document: EP

Kind code of ref document: A1