WO2004042994A1 - Circuit and method for high speed data transfer - Google Patents

Circuit and method for high speed data transfer Download PDF

Info

Publication number
WO2004042994A1
WO2004042994A1 PCT/EP2003/012390 EP0312390W WO2004042994A1 WO 2004042994 A1 WO2004042994 A1 WO 2004042994A1 EP 0312390 W EP0312390 W EP 0312390W WO 2004042994 A1 WO2004042994 A1 WO 2004042994A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
phase bit
signal
bit streams
circuit arrangement
Prior art date
Application number
PCT/EP2003/012390
Other languages
German (de)
French (fr)
Inventor
Sven Simon
Andreas Wortmann
Original Assignee
Hochschule Bremen
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 Hochschule Bremen filed Critical Hochschule Bremen
Priority to AU2003286154A priority Critical patent/AU2003286154A1/en
Publication of WO2004042994A1 publication Critical patent/WO2004042994A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
    • H04L7/0337Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals
    • H04L7/0338Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals the correction of the phase error being performed by a feed forward loop

Definitions

  • the invention relates to a circuit arrangement for extracting data from a serial data signal for high-bit-rate transmission of data between or within integrated circuits and to a corresponding method.
  • the integrated circuits operate at ever higher clock rates or data rates. Furthermore, the amount of data to be exchanged between ICs or between the functional blocks on an IC increases sharply. Since the maximum number of pins of IC packages is in many cases a limitation for the number of data lines, multiple data streams must be transmitted over lines using the time multiplex method. Therefore, or because the output data stream is already high bit rate, it is necessary that serial data streams can be sent and received with very high data rates (e.g. ⁇ 00 Mbit / s). However, the established circuits for these high-speed connections are based on design processes that require a high degree of manual work and therefore cannot be assigned to the semi-custom design flow. The manual design extends to the level of the mask layout and is called the Fill Custom Design Flow. The implementation of a circuit in a filling custom design flow is also called a hard macro because of the definition of the geometry at the mask layout level
  • the invention is therefore based on the object of specifying a circuit and a corresponding method for extracting data from a received serial data signal for fast, that is to say high-bit-rate transmission of the data between or within integrated circuits which involve the use of a semicustom design flow in the design and enable easier implementation on an IC.
  • an uncontrolled sampling unit for multiple sampling of the data signal within a clock period of a receiver clock signal for generating a plurality of phase bit streams synchronous with the receiver clock
  • a corresponding method according to the invention is specified in claim 20.
  • Advantageous refinements are specified in the subclaims.
  • the circuit arrangement according to the invention which is also referred to as a synthesizable high-speed receiver, is based on a semi-custom design flow.
  • a semi-custom design flow With the exception of placing a few cells, it is possible to use only automatic design steps of a semi-custom design flow.
  • the economic benefits of this circuit architecture lie in a shorter development cycle, easier portability to new process technologies due to the ability to be synthesized, and easier integration into a circuit environment based on a semicustom design flow.
  • a significant reduction in the number of global timing-critical paths can be achieved in the invention, so that the use of a semicustom design flow is made possible.
  • the invention can be used both for data transmission between integrated circuits, which should also include data transmission between several chips or different dies, that is to say also within a single integrated circuit, which should also include data transmission on a single chip or a single die come.
  • phase bit streams are generated from the serial data signal. Their correlation properties are then evaluated, i.e. it is checked whether and to what extent there is agreement or similarity between the phase bit streams, with minor deviations being permitted, if necessary.
  • the data sequence to be output is then determined on the basis of the result, for which there are basically different possibilities.
  • the correlation properties can be defined, for example, using a so-called correlation measure.
  • the correlation measure assigns a so-called correlation vector to each phase bit stream in an observation period.
  • This correlation vector can be determined according to any calculation rules.
  • a suitable calculation rule is one which, in the case of a phase bit stream matching the other phase bit streams and in the event of a phase bit stream not matching the other phase bit streams, results in differences for the correlation vectors of the phase bit stream.
  • the correlation measure then serves in the evaluation unit to extract the data of the data signal from the phase bit streams on the basis of the differences in the above correlation numbers.
  • the scanning unit also contains no regulation. This results in a significant reduction in the number of global timing-critical paths, so that the use of a semicustom design flow is possible. Analog subcircuits and components, especially an analog circuit for clock generation, can also be avoided. Data streams with phase shifts of the transmit data stream and receive data stream of more than one bit duration can thus be received.
  • the sampling is preferably carried out within a clock period of the receiver clock at a fixed point in time, namely using the rising edge of the receiver clock signal.
  • the scanning unit is preferably operated only with a single receiver clock signal via a single line at the input of the scanning unit, that is to say the scanning unit in particular does not have a plurality of clock phases, e.g. via a bus system.
  • the data signal is initially delayed in time, so as to generate different phases of the data signal. These are then sampled in parallel with the same receiver clock signal to generate the phase bit streams.
  • An advantageous embodiment for implementing such a scanning unit is defined in claim 4.
  • the preferred embodiments according to claims 3 and 4 use only one clock range, namely the receiver clock.
  • the receiver clock signal is delayed several times in order to generate different phases of the receiver clock signal.
  • the same data signal is then sampled several times with these phase-shifted receiver clock signals in order to generate the phase currents.
  • a specific embodiment of such a scanning unit is defined in claim 6.
  • the advantage of the preferred embodiments according to claims 5 and 6 lies in the relatively low disturbance of the sampling times for the phase bit streams due to the data dependence of the delay times in the delay chain, since the clock signal is data-independent and strictly periodic.
  • the preferred embodiment of the delay elements of the delay chain according to claim 7 has no means, such as control signals, for setting the delay time. Furthermore, variations in the delay time of the individual delay elements are accepted, and there is no regulating means for regulating the delay elements.
  • the number of delay elements and / or the delay times of the delay elements is selected such that the sum of the delay times of all delay elements is at least as large as the clock period of the data signal.
  • the maximum variation of the delays or phase shifts of the data signal or clock signal can be more than the delay or phase shift of a delay element of the data or clock signal between different ICs or at different times in an IC.
  • the number of data or clock signals with different phases of the identical circuits on different ICs is also variable, or the number of different data or clock signals of the identical circuits on one IC is variable over time. This variation can be in the order of magnitude of factor 2 or more, for example; however, it is limited and not arbitrarily large.
  • phase shift and the transit time of corresponding phase signals are not assumed to be constant, and the number of phase signals with a defined phase shift per clock period is also not assumed to be constant.
  • VCO or PLL structures which set the phases or runtimes by means of a control.
  • the value of the phase shift of data and / or clock signals is variable, in particular during operation.
  • the number of different phase positions or the number of phases per clock period is also variable.
  • a control is provided which sets a delay independent of the sample, the variation of which is smaller than the delay itself.
  • known circuit arrangements use controlled delays which are set via a control signal. Without control, the delay would generally not have the delay time provided for the switching, so that not all of the phase signals necessary for the evaluation unit would be available with the intended values for the phase shift; the circuits would not work reliably.
  • phase bit streams are preferably evaluated in order to determine a data sequence therefrom which matches the data of the received serial data signal as closely as possible.
  • Correlation properties of the phase bit streams are evaluated in order to find a phase bit stream with a large correlation measure.
  • At least one corresponding selection unit is also provided in the evaluation unit, which selects a phase bit stream that best matches the data of the received data signal based on correlation properties of the phase bit streams.
  • several phase bit streams can also be selected using several selection units. If several selection units are provided, these are coordinated with one another by an evaluation control unit. Either a selected phase bit stream is used to determine the data sequence, or the data sequence is determined jointly, for example by majority vote, from a plurality of phase bit streams.
  • At least one difference signal is preferably formed between at least two phase bit streams in order to check whether and to what extent the phase bit streams differ from one another or to determine the correlation of two phase bit streams.
  • the correlations between adjacent phase bit streams are preferably determined and evaluated. If it is found that the phase bit streams do not differ from one another or have a high degree of correlation, it is assumed that the phase bit stream correctly reproduces the data sequence contained in the input data signal.
  • the at least one selection unit additionally has a detection unit in order to observe and, if necessary, to accumulate correlation differences between the phase bit streams ascertained by means of the difference formation unit. It is preferred for each dif- reference signal generates a corresponding detection signal. Instead of selecting the best possible phase bit stream directly from the difference signals, the detection signals are then used in a further embodiment to select the best possible phase bit stream, which may simplify implementation due to simpler timing conditions and which may reduce the tolerance to short-term disturbances of the data signal and can improve short-term variations in the delay times of the delay elements.
  • the selection of the best possible phase bit stream by the at least one selection unit is fundamentally variable in time and is constantly adapted. This means that a single phase bit stream is not selected at the start of the data transmission, but rather is checked at regular intervals whether the selected phase bit stream is also the best choice.
  • the evaluation control unit preferably selects at least one of the phase bit streams selected by the selection units in order to output this data as a received data sequence.
  • the circuit according to the invention can be generated in accordance with the configurations according to claims 16 and 17 in that a synthesis tool generates a gate network list using a standard cell library, starting from a hardware description language (eg VHL, Verilog, SystemC).
  • This grid list consists of cells from a standard cell library, which are placed and wired in a semicustom design flow using tools.
  • VHL hardware description language
  • Verilog Verilog
  • SystemC hardware description language
  • FIG. 1 possible areas of application of the invention
  • FIG. 2 shows a block diagram to illustrate timing problems in synchronous data transmission
  • FIG. 3 shows a time diagram to explain jitter
  • FIG. 4 time diagrams for explaining Skew
  • FIG. 5 shows an eye diagram to explain the scanning in a known solution
  • FIG. 6 shows a block diagram of a known circuit arrangement
  • FIG. 7 shows an eye diagram to explain the scanning in a further known solution
  • FIG. 8 shows a block diagram of a further known circuit arrangement
  • FIG. 9 shows an eye diagram to explain the scanning in the circuit arrangement according to the invention.
  • FIG. 10 shows a block diagram of an embodiment of the circuit arrangement according to the invention.
  • FIG. 11 shows a block diagram of a further embodiment of the circuit arrangement according to the invention.
  • FIG. 12 shows a simplified block diagram of the basic design of the circuit arrangement according to the invention.
  • FIG. 13 shows a first embodiment of a scanning unit
  • FIG. 14 signal curves of the signals occurring in the scanning unit according to FIG. 13,
  • FIG. 15 shows a further embodiment of a scanning unit
  • FIG. 16 shows a block diagram to illustrate the signal curves in the circuit arrangement according to the invention
  • FIG. 17 shows a delay chain in a concrete implementation of the scanning unit
  • FIG. 18 waveforms of the signals occurring in the delay chain according to FIG. 17,
  • FIG. 19 shows a chain of flip-flops in a specific implementation
  • FIG. 20 waveforms of the signals occurring in the circuit according to FIG. 19,
  • FIG. 21 shows a block diagram of an embodiment of the evaluation unit according to the invention.
  • FIG. 22 shows an embodiment of a difference formation unit
  • FIG. 23 signal profiles of the signals occurring in the difference formation unit according to FIG. 22,
  • FIG. 24 shows an embodiment of a zero trap
  • FIG. 25 shows the state diagram of a zero trap according to FIG. 24,
  • FIG. 26 signal curves of the detection signals generated by the zero trap according to FIG. 24 over a longer period of time
  • FIG. 27 signal curves of the detection signals generated by the zero trap over a shorter period of time
  • FIG. 28 shows a state diagram to explain the switchover between different phase bit streams
  • FIG. 29 shows a section of the signal curves according to FIG. 26 to explain the temporal adaptation of the selection of the phase bit stream
  • FIG. 30 shows an alternative embodiment for implementing the scanning unit by means of delay elements arranged in parallel
  • FIG. 31 shows a further embodiment for implementing the scanning unit by combining delay elements and arranged in parallel and in series
  • FIG. 32 shows a block diagram of a further embodiment of the evaluation unit according to the invention.
  • timing problems arise due to differences in runtime between clock and data. Runtime differences arise due to the dependency of the running times on the IC on voltage, temperature and manufacturing tolerances and outside the IC through the dependency of the running times on package and board manufacturing tolerances. These runtime differences can therefore change during the operation of the circuits and are therefore time-dependent.
  • the reason for the timing problems at high data rates is that runtime differences can be of the order of the clock period and there is no guarantee that the data will reach the receiving circuit within the correct clock period, as should normally be the case with synchronous circuit concepts. This problem is clear in Figure 2.
  • time-varying differences in transit time of ⁇ 0.5 ns occur between transmitter 1 and receiver 2 both on the data line 3 and on the clock line 4.
  • the specified transit time of the clock line TD k and the data line TD dat can be statically compensated, but with a small time-dependent relative shift of the two signals, synchronous transmission is not possible, since 1ns already corresponds to an entire clock cycle.
  • the disturbances occurring during data transmission cause disturbing effects which can be observed on the received data signal and which are referred to as jitter and wander. the. These are illustrated in Figures 3 and 4.
  • the jitter is a change in the bit duration of the data signal which is random from clock period to clock period and limited in amount.
  • the physical cause of such jitter is, for example, very brief voltage drops on the supply lines of an IC. These arise, among other things, from the short-term very high current requirements when reloading gate capacities during switching operations due to data changes, for example flip-flops, at the time of a clock edge. Crosstalk and reflection can also lead to jitter.
  • Skew is used here to denote the time-dependent difference in transit time between two signals A and B.
  • the change in the transit time difference between two signals A and B is called a wander.
  • the hike is time-dependent and is subject to a slow dynamic change. It arises, for example, from temperature and voltage fluctuations and different properties of the cables for signals A and B.
  • CDR clock / data recovery architecture
  • the frequency and the phase position of the sampling clock signal are set to the data stream on the basis of the signal change of the data signal in such a way that the data are taken over at a point in time at which they are stable. This can be seen in the eye diagram shown in FIG. 5.
  • the sampling clock is tuned by synchronization with the edges of the data signal.
  • Clock recovery circuits 5 are widely used as phase-locked loops (PLL) or delay-locked loops (DLL). Because of the feedback loop within such a PLL / DLL, this architecture is also referred to in FIG. 6 as the feedback architecture. The timing-critical paths are marked in the circuit diagram.
  • paths are called critical if the signal delay times (eg layout-influenced) or the skew between the signals of a bus must lie within a tolerance window, which is generally much smaller than the highest clock period of the circuit. If the signal transit time or the skew between the signals lies outside the tolerance window, the functionality of the circuit is jeopardized.
  • the timing paths and the modules with timing paths are designed in a fill custom design flow. Independently of each other, such a rather complex circuit is required for each data input. The integration of such a circuit is complex, in particular because of the required power supply and voltage stability.
  • the other circuit concept established in the literature only requires one clock generator for several identical serial data inputs. It is a feed-forward architecture in which only the data and not the clock signal are extracted from the data input signal data_i.
  • This data recovery architecture is shown in FIG. 8.
  • the data signal data_i is oversampled asynchronously with many precisely coordinated phases of the same clock signal clk_ref, preferably at exactly equidistant times, as can be seen in the eye diagram shown in FIG.
  • the data are extracted from the transmitted data signal data_o by means of a majority decision or another suitable method.
  • a PLIJDLL 5 is used in both architectures in order to precisely match the phases generated from the clock signal.
  • the design of a PLL / DLL is correspondingly complex since it is a circuit with analog components. Since the distribution and transport of the different clock phases clk_k is also timing-critical, exact manual placement of the lines and gates is required.
  • a decisive disadvantage of the circuit architecture shown in FIG. 8 is that the timing paths have to be routed from one source to all receiver circuits 2. Such high-speed receiver circuits are therefore implemented using a filling custom design flow. This also applies to the circuit shown in FIG. 6, the subcircuits or modules of which are largely timing-critical.
  • a semicustom design flow is simpler and therefore mostly used in industry to implement less problematic circuits.
  • This design process is heavily computer-aided and largely automated.
  • the function of the circuit is described in a hardware modeling language.
  • the most widely used are the hardware modeling languages VHDL, Verilog and SystemC.
  • Synthesis tools translate the source code into a gate network list using elementary standard cells that are made available by semiconductor manufacturers in libraries. It is said that the circuit can be synthesized.
  • This automated method for circuit design enables large circuits to be created and the target technology to be changed easily by exchanging the cell libraries.
  • Cost minimization in the development of ICs can be achieved by implementing subcircuits that were previously based on a fill custom design flow in a semicustom design flow.
  • the circuit arrangement according to the invention can be implemented in a semicustom design flow.
  • the main advantage of the circuit presented is a simplification and reduction of the circuit area and the design effort.
  • FIG. 10 The concept of the circuit according to the invention is shown in FIG. 10.
  • This has a sampling unit 6 for each data signal of the data signal bus data_i (0..M), in each of which a plurality of phase bit streams SAMPLE which are synchronous with the data clock clk_f_i (often also referred to as the receiver clock) are generated. These are each fed to a separate evaluation unit 7, in which the data sequence which best matches the data of the received data signals data_i (0..M) is determined by correlation properties of the generated synchronous phase bit streams SAMPLE. These are then output as the output signal bus data_ (0..M).
  • the number of timing paths are minimized and reduced to local areas.
  • the distribution of the receiver clock clk_f_i is not critical to the timing, since the phase position of the clock signal clk_f_i is none for the correct functionality of the circuit Role play. In principle, no PLL or DLL is required to operate the circuit. This represents a considerable simplification. As is shown in the eye diagram in FIG. 9, the sampling can take place at times at which the distance is not known and is within a large tolerance range.
  • a PLL will still be present on the IC, since a divided clock clk_ref is taken over externally as a reference clock with a lower clock frequency on the IC, as shown in FIG. 11.
  • the high-frequency clock signal clk_f_i is then recovered from the divided clock signal clkjef with a PLL / DLL 5.
  • the number of PLL / DLLs can often be reduced when using several such receivers with the circuit architecture presented here, since the clock distribution itself is not critical in terms of timing.
  • more complex PLLs with many clock phases as in the feed-forward architectures shown in FIGS. 6 and 8 with complex distribution of the individual clock phases, are in no case necessary.
  • Both receiver architectures are feed forward architectures. This means that the clock signal is not adapted to the data signal. In this approach, the coordination of different clock phases is also dispensed with, so that no regulation of the scanning signals is carried out. This means that the largely manual Fill Custom Design Flow can be dispensed with. This arrangement is therefore particularly suitable for the use of a semi-custom design flow.
  • a sampling unit 6 which, as will be explained in more detail below, preferably has a cascade of N flip-flops, either with N phase-shifted clock signals or with a clock signal clk_f_i and N -data-delayed data signals, N so-called phase bit streams SAMPLE. If the clock phases or data delays are adequately resolved, there is at least one phase bit stream with a stable and approximately the same receiver data rate and clock frequency, which samples the data without errors and without violating the setup hold times of the flip-flops.
  • An algorithm carries out the evaluation in an evaluation unit 7, which is preferably a selection of this phase bit stream.
  • the evaluation unit 7 accordingly controls a multi tiplexer 8, via which the selected phase bit stream is output to the data output as a data output signal data_o.
  • phase bit streams SAMPLE The only difference between the two architectures is the generation of the phase bit streams SAMPLE.
  • an unregulated delay chain is used.
  • a plurality of different phases of the data signal are derived from the data signal dataj
  • a plurality of different phases of the clock signal are derived from the clock signal clk j, with which the phase bit streams are then obtained in each case.
  • the phase position and frequency with which the receiving circuit operates are unregulated in relation to the data signal, so that data errors caused by jitter and wander have an effect on the phase bit streams.
  • the evaluation unit 7 in FIG. 6 now only analyzes the phase bit streams in order to select a phase bit stream SAMPLE which corresponds to the data of the original, unsampled data signal dataj at the input of the circuit.
  • FIG. 13 shows a block diagram of a first architecture of the scanning unit 6, in which several data signal phases are scanned with a common clock.
  • the data signal dataj of the high-speed data input is generated by a chain of N delay elements 10 with a delay time of ⁇ T, «T C
  • the signals thus derived from the original data signal dataj are referred to as phase bit streams SAMPLE.
  • a subsequent circuit analyzes these phase bit streams and selects a phase bit stream that is as identical as possible to the data sequence of the input data stream dataj. This selection is dynamically adjusted with time variations of run times due to voltage changes or temperature changes.
  • FIG. 13 shows a block diagram of a first architecture of the scanning unit 6, in which several data signal phases are scanned with a common clock.
  • the data signal dataj of the high-speed data input is generated by a chain of N delay elements 10 with a
  • FIG. 13 shows an example of a delay chain which is built up from a sequence of buffers 10 with a delay time of ⁇ , ie ⁇ 0 ... N-1 ⁇ .
  • ie ⁇ 0 ... N-1 ⁇ .
  • other elements that have a delay time can also be used here (other gates, subcircuits, line sections).
  • the delay times of the individual elements do not have to be known exactly, it is sufficient that all are approximately the same size.
  • the exact delay time is variable within certain limits due to the semicustom design flow, the placement options, the process and production fluctuations, the supply voltage and the ambient temperature.
  • the delay times of the line sections between the delay elements can be reduced. This can improve the quality of the implementation and also harmonize the delay times.
  • Such manual support of the placement and wiring tools is generally possible in a modern semicustom design flow. In this case, depending on the result of the automatically running placement and wiring algorithms, this procedure can make a decisive contribution to the quality of the implementation in a semicustom design flow.
  • Such a manual placement is not carried out for the classic application of a semicustom design flow, in which the design steps should run automatically as far as possible.
  • the delay elements should all have a delay time that is as comparable as possible, so that ⁇ « ⁇ applies to all i, j e ⁇ 0 N-1 ⁇ .
  • the signals present between the delay elements 10 are referred to here as RAW (0) to RAW (N-1). As indicated in FIG. 13, these RAW signals are simultaneously sampled with the clock signal clk_f_i by means of storage elements 11 such as flip-flops or latches. The sampled signals are then designated SAMPLE (O) to SAMPLE (N-I) and are called phase bit streams. Due to the delay chain, the setup hold time violations and the signal disturbances such as jitter and wander, the phase bit streams are not identical, but are corrected with each other and with the data signal. Some are shifted by one or more bits against each other, others carry incorrect data.
  • phase bit streams on which correct data are present can be divided into three groups, in which the data are identical in each case. Each of these groups represents a so-called data bit stream.
  • the assignment of the phase bit streams to the data bit streams changes due to jitter and phase shift of the data signal. This observation is relevant for the evaluation or selection algorithms.
  • FIG. 15 shows a block diagram of a second architecture of the scanning unit 6, in which the data signal is oversampled by several phases of the clock signal.
  • the central feature of an implementation according to this concept is the delay chain consisting of any delay elements 10, through which different phases of the clock signal clk_f_i are generated in an uncontrolled manner.
  • the clock signal is passed through the delay chain.
  • the clock signals picked up between the delay elements 10 are called clock phases CKP (0) to CKP (N-1).
  • the data signal dataj is sampled with the various clock phases in order to generate the phase bit streams SAMPLE.
  • these phase bit streams correspond to those of the first architecture shown in FIG.
  • slightly modified algorithms may also be used.
  • FIG. 16 shows the architecture of the receiver circuit with the individual functional blocks.
  • the serial bit stream of the received data is present as signal dataj.
  • This data signal is passed through the scanning unit 6 with a chain of delay elements.
  • a (discrete) image of the temporal course of the data signal is created at fixed periodic times.
  • the transmitted data sequence is extracted from the data signal on the basis of this illustration.
  • the implementation consists of the modules shown in FIG. 16.
  • the function of each individual module is specifically dealt with.
  • the input signal is passed through the delay elements 10 and tapped in front of a delay element 10.
  • the circuit is shown in Figure 17.
  • N 20 buffers 10 are selected as delay elements.
  • the signal RAW (1) has passed exactly one delay element 10 more than the signal RAW (O)
  • the signal RAW (10) has, for example, gone through ten delay elements 10 more than the signal RAW (O).
  • the course of these individual signals is shown in FIG. 18.
  • the bit sequence '101' is present at the data input for a period of approx. 818ns - approx. 820ns.
  • the signals RAW (4) to RAW (13) have a low voltage level and reflect the time-delayed '0'.
  • the signals RAW (14) to RAW (19) again have a high signal level which represents the first T.
  • the transmitted bit sequence '101' is thus visible through the delay chain in the data of the RAW signals at the same time.
  • the total delay of the delay chain corresponds approximately to twice the period of the data clock signal.
  • the RAW data signals are all sampled at the same time. This happens for example at the frequency 1 GHz with the clock signal clk_f_i.
  • the corresponding circuit is shown in Figure 19. Asynchronous sampling by flip-flops 11 takes place. The waveforms before and after the sampling are shown in FIG.
  • the data signals SAMPLE which are synchronous with the clock signal clk_f_i are each referred to as a phase bit stream.
  • the correct bit sequence '101' mentioned above can now be found in the signals SAMPLE (O) to SAMPLE (2), SAMPLE (4) to SAMPLE (12) and SAMPLE (14) to SAMPLE (19). Due to setup hold time violations, the phase bit streams SAMPLE (3) and SAMPLE (13) are faulty.
  • phase bit streams three consecutive bits of the data signal can be assigned to the phase bit streams.
  • the boundaries between these three groups are shifted by fluctuations in the phase or frequency of the data signal or reference clock and by jitter.
  • the membership of the phase bit streams to the groups therefore changes dynamically, and faulty phase bit streams occur.
  • Faulty phase bit streams are phase bit streams whose data are faulty compared to the input data. Two adjacent data bit streams are thus shifted from each other by 1 bit or one clock period, but are otherwise identical, and contain exactly the data to be extracted.
  • the correct data is now determined by switching between different phase bit streams, if the wander or jitter behavior changes, and thus following the data bit stream.
  • An evaluation circuit 7 for evaluating the phase bit streams and for determining a phase bit stream that best matches the input data sequence or has a maximum correlation measure is shown in FIG.
  • This has a difference formation unit 12 for forming the difference between at least two phase bit streams, a detection unit 13 for determining the correlation measure and two selectors 15, 16 controlled by a control unit 14 for synchronizing each data bit stream.
  • the individual units will be explained in more detail below.
  • difference formation unit 12 in FIG. 22 and the signals in FIG. 23 show this comparison.
  • difference formation modules 120 e.g. simple logic gates
  • difference signals DI FF of the clocked phase bit streams SAMPLE are formed.
  • the clock signal clk_s_s can be generated from the signal clk_f_i by a simple clock divider. This clock divider is designated as module DivClock 9 in FIG. In order to evaluate the difference signals with this lower clock clk_s_s, signals must be derived therefrom which also change at a lower rate.
  • a zero trap is a memory circuit that remembers over a longer observation period (here clock period of clk_s_s) whether a difference between two neighboring phase bit streams has occurred.
  • the data signal changes detected by the difference signals DIFF which occur during a period of the clock clk_s_s, are accumulated.
  • the information collected in this way is available for each individual difference signal on each positive edge of the clock clk_s_s.
  • FIG. 24 shows an embodiment of such a zero trap 13.
  • the function is shown in FIG. 25 in the form of a finite automaton.
  • the flip-flop 130 which is initially set to the value '1' synchronously by means of the reset signal res_trap, is reset within the observation period if the signal DIFF indicates a difference between two phase bit streams by the value '0'.
  • the circuit thus notes the occurrence of one or more '0' of the difference signal as a sign that two adjacent phase bit streams are different. Since this behavior corresponds to the capture of a '0', the name Nullfalle was chosen to designate the circuit.
  • Such a zero trap is used for each signal DIFF (i).
  • the output signals of the zero traps with the lower data rate are referred to below as TRAP (i).
  • a 'trap' instead of a 'zero trap' could be defined and used, which notes the occurrence of one or more '1' of the difference signal as a sign that two adjacent phase bit streams are different if the signal DIFF by the value '1' indicates a difference between two phase bit streams.
  • jitter and wander Two types of interference are taken into account for the input data signal, which are referred to here as jitter and wander. These disturbances are generated by the variations already described during the operation of the circuit, for example of temperature and voltage. Increasing jitter has an effect on the phase bit streams and TRAP signals in such a way that areas with temporarily faulty phase bit streams arise between the data bit streams and the TRAP signals temporarily have the signal level '0'. Such areas with changing signal levels of the TRAP signals due to the jitter can be seen in FIG.
  • the task of the circuit unit for the selection of the phase bit stream is now to search for a path (a so-called trajectory) between these jitter areas and always to find a phase bit stream that supplies correct data with respect to the input data (data bit stream).
  • This path is shown in Figure 26 as a solid line.
  • an architecture consisting of two selectors 15, 16 makes sense, as shown in FIG.
  • Each selector is implemented as a finite state machine and starts with the position of any phase bit stream. After a correct phase bit stream has been found, this choice is adjusted, if necessary, and the corresponding data bit stream is thus followed. The automaton then synchronized itself to this data bit stream. If the first selector 15 can no longer follow the data bit stream, the second selector 16 takes over.
  • FIG. 27 shows a scenario in which the two selectors A and B adapt their selection of a phase bit stream to the data bit streams.
  • the TRAP signals can be seen here, that is to say the difference signals of two adjacent phase bit streams accumulated over a clock period by means of zero traps.
  • the jitter area of the data signal is therefore noticeable by the low signal levels on these TRAP signals. While the jitter range is quite large in FIG. 26, it claims a smaller one in FIG Area. Two different data signals are therefore considered. In both cases, the jitter range is not restricted to specific phase bit streams.
  • the selectors By shifting the phase position of the data signal relative to the reference clock (wander), the position of the jitter area is shifted within the phase bit streams. This also shifts the positions of the data bit streams. This shift is recognized by the selectors, which adapt their selection of a phase bit stream accordingly.
  • a selector synchronizes itself to a data bit stream and selects a phase bit stream.
  • the amplitude of the wander is low, so that the selector whose selection is marked can follow the phase bit stream.
  • the frequencies of the two signals are slightly different (large wander), as is the case in the example in FIG. 27, a selector cannot follow the data bit stream to which it is synchronized for any length of time.
  • the phase difference of the two signals becomes greater than the total delay time of the delay chain, and the data bit stream is no longer represented by phase bit streams, i.e. the data bit stream leaves the area represented by the phase bit streams.
  • two identical selectors are implemented, which are synchronized to directly adjacent data bit streams. If the data bit stream of one of the selectors falls outside the range, the other takes over the data selection. Which selector makes the decision is shown in FIG. 27 in the signal cur_read_s.
  • a selector If a selector is no longer synchronized to a data bit stream, it searches for a new data bit stream that is directly adjacent to the data bit stream to which the other selector has synchronized. Both selectors are implemented as identical synchronous finite automata.
  • the state diagram of a selector is shown in FIG. 28.
  • the TRAP signals of the phase bit streams are available as input data.
  • position both the control position (hereinafter also simply referred to as position) and the control state are adapted.
  • position is increased until the condition for reliably finding a data bit stream is fulfilled.
  • the data of the four phase bit streams closest to the currently selected phase bit stream p were identical during the last period. This property is shown when the corresponding difference signals do not indicate a difference, that is to say that all four zero traps do not detect any 'O'-signal level of the difference signals. Under this condition, the automaton changes to the SYNC state and the data of the selected phase bit stream p are assumed to be correct.
  • the tuple (1; 1; 1; 1) p for example, means that the phase bit streams SAMPLE (p- 2), SAMPLE (pl), SAMPLE (p), SAMPLE (p + 1) and SAMPLE (p + 2) all during the last period of clk_s_i had identical data.
  • the tuple (0; 1; 1; 1) p indicates that different values have occurred in the phase bit streams SAMPLE (p-2) and SAMPLE (pl), ie they are in the jitter range.
  • phase bit stream is adapted in accordance with this correlation vector. If ml p ⁇ mr p, the position is adjusted to the right (p ⁇ p + 1), if ml p > mr p , the position is adjusted to the left (p ⁇ p-1).
  • the selected phase bit stream is always kept in a safe area.
  • the selector has synchronized to a data bit stream and is following it. But this only works if the jitter area and the wander are not too large.
  • the two selectors are matched to one another, since they are always synchronized to directly adjacent data bit streams. Many variants are conceivable to achieve this state.
  • the task of the evaluation unit described above is to obtain the correct data stream from the phase bit streams.
  • the data transmitted by the sender are considered correct. Since these are obviously not known, since they would otherwise not have to be transmitted, they are to be determined on the basis of other ' characteristics.
  • the interpretation of the received data signal and thus also of the phase bit streams determines the bit error rate (BER) in relation to the transmitted data.
  • BER bit error rate
  • a mutual comparison of the phase bit streams determines which phase bit streams belong to which data bit streams.
  • the phase bit streams near a transition between two adjacent data bit streams are in the jitter range.
  • the boundaries between the data bit streams are recognized when a data signal change occurs, that is to say '10' or '01' is transmitted.
  • the comparison can be carried out with all pairs of directly adjacent phase bit streams.
  • Adjacent phase bit streams whose values are different are in the jitter range.
  • two adjacent phase bit streams a and b are NXOR, linked together and thus determined whether their values are identical.
  • the information from the previous step is accumulated with the aim of being able to make more reliable statements about the individual phase bit streams and to transmit the information into the clock area of the second clock.
  • This step is optional, but is desirable in many cases.
  • the results of the comparison from the first step are observed over time and weighted if necessary.
  • statements are made about the association of phase bit streams with data bit streams and phase bit streams in the jitter range. All phase bit streams that were assigned to the jitter area in a certain past time period of the previous step are assigned to the jitter area, all other phase bit streams each to the corresponding data bit streams.
  • the data bit streams are limited by jitter areas. These assignments are made synchronously with the second bar.
  • a mechanism synchronizes itself to a data bit stream by using the information from the second step.
  • the data of this data bit stream are assumed to be correct. If the data bit stream can no longer be followed, the mechanism synchronizes itself to another data bit stream, the data of which are now assumed to be correct.
  • a finite state machine synchronizes itself to a data bit stream by recognizing the jitter areas and keeping its selection of a phase bit stream within this data bit stream at a sufficient distance from these jitter areas. For this purpose, the 2 n difference signals from the second step closest to the currently selected phase bit stream are considered, n on each side. If a jitter area is detected on one side, the automaton dodges its selection to the other side.
  • the machine searches for a different data bit stream to which it synchronizes. So that no data is lost in the period of time that the automaton needs to find another data bit stream, there is a second identical automaton that is synchronized to another data bit stream and can take over the phase bit stream selection.
  • FIG. 30 shows an alternative embodiment for implementing the scanning unit. While in the embodiment shown in FIGS. 13, 15 and 17 the delay elements 10 are arranged in series and have essentially the same delay time, in this embodiment the delay elements 10 'are arranged in parallel and have different delay times. However, these delay times are all shorter than the clock period of the receiver clock signal dataj and each correspond to a multiple of the smallest delay time of one of the delay elements 10.
  • This configuration can be used both in the constellation shown in FIG. 1) from the receiver clock signal clk_fj, or in the constellation shown in FIG. 15, that is to say to generate a plurality of phase-shifted data signal phases RAW (0..N-1) from the input data signal dataj.
  • FIG. 1 shows an alternative embodiment for implementing the scanning unit. While in the embodiment shown in FIGS. 13, 15 and 17 the delay elements 10 are arranged in series and have essentially the same delay time, in this embodiment the delay elements 10 'are arranged in parallel and have different delay times. However, these delay times are all shorter than the clock period
  • 31 shows a further embodiment for implementing the scanning unit by combining delay elements 10 ′ arranged in parallel with different delay times and delay elements 10 arranged in series with identical delay times. This allows the delay chain to be kept short while still covering a wide phase range.
  • the combination of the parallel connection of the delay elements 10 'with the serially arranged delay elements 10 can be dynamically adapted if necessary. Such an adaptation, as indicated in FIG. 31, can be determined, for example, in the evaluation unit 7 by properties of the phase bit streams.
  • This configuration can also be used to generate a plurality of receiver clock phases or data signal phases, but still avoids the problem of timing-critical paths.
  • delay elements arranged in series and in parallel can be combined in a wide variety of ways in order to generate the signals by means of which the phase bit streams are obtained.
  • FIG. 32 shows a block diagram of a further embodiment of the evaluation unit according to the invention, already shown in FIG. 21, details regarding the simultaneous extraction of several bits from the data signal being recognizable.
  • a plurality of selection units (selectors) 15 ' are provided in the evaluation unit, the selectors 15' being controlled by the evaluation control unit 14 '.
  • Each selector 15 'then again has a trajectory shown in FIGS. 26 and 27.
  • several data bits can be extracted simultaneously per period of the receiver clock signal, thereby increasing the transmission rate or reducing the receiver clock rate.
  • the circuit arrangement according to the invention can be used as a subcircuit in an integrated circuit for the transmission of digital data (e.g. with a clock rate of over 500 MHz).
  • the main idea is based on multi-phase oversampling of the data into different phase bit streams and subsequent evaluation, in particular by selecting the correct phase bit stream.
  • This circuit proposal represents another solution to the known data transmission problem at high data rates.
  • the advantage of this circuit proposal is a simpler implementation on the IC, since a semi-custom design flow can be used if desired.

Abstract

The invention relates to a circuit for extracting data from a serial data signal for data high-speed transmission between or inside integrated circuits and to a corresponding method. In order to simplify a layout on an integrated circuit, in particular by means of a semicustom stream, the inventive circuit is provided with an unadjustable scanning unit for the multiple scanning of a data signal during the clock period of a receiver clock signal in such a way that several phase bit streams, which are synchronous with the receiver clock, are produced. Said circuit also comprises an evaluation unit for determining a data sequence which best matches the data of the data signal by evaluating correlating properties of the synchronous phase data streams and for emitting said data sequence.

Description

Schaltungsanordnung und Verfahren für Hochgeschwindigkeitsdatentransfer Circuit arrangement and method for high-speed data transfer
Die Erfindung betrifft eine Schaltungsanordnung zur Extraktion von Daten aus einem seriellen Datensignal für eine hochbitratige Übertragung der Daten zwischen oder innerhalb von integrierten Schaltungen sowie ein entsprechendes Verfahren.The invention relates to a circuit arrangement for extracting data from a serial data signal for high-bit-rate transmission of data between or within integrated circuits and to a corresponding method.
Mit jeder neuen Prozesstechnologie für integrierte Schaltungen nimmt die Integrationsdichte und die damit verbundene maximal mögliche Schaltungskomplexität (derzeit ca. 10 Mio. Transistoren pro IC) stark zu. Da der Entwurf saufwand mit der Schaltungskomplexität stark steigt, sind rechnergestützte Entwurfsverfahren unerlässlich. Stand der Technik für den Entwurf komplexer ICs ist die automatische Generierung einer Gatternetzliste aus einer Hardware-Beschreibung in einer geeigneten Hardware- Modellierungssprache (z.B. VHDL, Verilog oder SystemC) mit einem sogenannten Synthese-Tool. Die erzeugte Schaltung auf Gatterebene wird durch weitere weitestge- hend automatische Platzierungs- und Verdrahtungs-Schritte in ein Maskenlayout für die IC-Fertigung überführt. Dieser Entwurfsablauf wird als Semicustom Design Flow bezeichnet.With each new process technology for integrated circuits, the integration density and the associated maximum possible circuit complexity (currently approx. 10 million transistors per IC) increases significantly. Because design complexity increases with circuit complexity, computer-aided design techniques are essential. State of the art for the design of complex ICs is the automatic generation of a gate network list from a hardware description in a suitable hardware modeling language (eg VHDL, Verilog or SystemC) using a so-called synthesis tool. The generated circuit at the gate level is further expanded by transferred automatic placement and wiring steps into a mask layout for IC production. This design flow is called the semicustom design flow.
Neben der steigenden Komplexität arbeiten die integrierten Schaltungen bei immer höheren Taktraten bzw. Datenraten. Weiterhin steigt die Menge der auszutauschenden Daten zwischen ICs oder zwischen den Funktionsblöcken auf einem IC stark an. Da die maximale Pinzahl von IC-Gehäusen in vielen Fällen eine Beschränkung für die Anzahl der Datenleitungen darstellt, müssen mehrere Datenströme über Leitungen im Zeitmultipiex-Verfahren übertragen werden. Deshalb, oder weil der Ausgangsdatenstrom schon hochbitratig ist, ist es erforderlich, dass serielle Datenströme mit sehr hohen Datenraten (z.B. ^00 MBit/s) gesendet und empfangen werden können. Die etablierten Schaltungen für diese Hochgeschwindigkeitsverbindungen basieren aber auf Entwurfsverfahren, die ein hohes Maß an manueller Arbeit erfordern, also nicht dem Semicustom Design Flow zuzuordnen sind. Der manuelle Entwurf erstreckt sich hierbei bis auf die Ebene des Maskenlayouts und wird als Füll Custom Design Flow bezeichnet. Die Implementierung einer Schaltung in einem Füll Custom Design Flow wird wegen der Festlegung der Geometrie auf Maskenlayout-Ebene auch Hard-Macro genanntIn addition to the increasing complexity, the integrated circuits operate at ever higher clock rates or data rates. Furthermore, the amount of data to be exchanged between ICs or between the functional blocks on an IC increases sharply. Since the maximum number of pins of IC packages is in many cases a limitation for the number of data lines, multiple data streams must be transmitted over lines using the time multiplex method. Therefore, or because the output data stream is already high bit rate, it is necessary that serial data streams can be sent and received with very high data rates (e.g. ^ 00 Mbit / s). However, the established circuits for these high-speed connections are based on design processes that require a high degree of manual work and therefore cannot be assigned to the semi-custom design flow. The manual design extends to the level of the mask layout and is called the Fill Custom Design Flow. The implementation of a circuit in a filling custom design flow is also called a hard macro because of the definition of the geometry at the mask layout level
Der Erfindung liegt deshalb die Aufgabe zugrunde, eine Schaltung und ein entsprechendes Verfahren zur Extraktion von Daten aus einem empfangenen seriellen Datensignal für eine schnelle, also hochbitratige Übertragung der Daten zwischen oder innerhalb von integrierten Schaltungen anzugeben, die den Einsatz eines Semicustom Design Flows beim Entwurf und eine einfachere Implementierung auf einem IC ermöglichen.The invention is therefore based on the object of specifying a circuit and a corresponding method for extracting data from a received serial data signal for fast, that is to say high-bit-rate transmission of the data between or within integrated circuits which involve the use of a semicustom design flow in the design and enable easier implementation on an IC.
Diese Aufgabe wird erfindungsgemäß gelöst durch eine Schaltungsanordnung nach Anspruch 1 mitThis object is achieved by a circuit arrangement according to claim 1
- einer ungeregelten Abtasteinheit zur mehrfachen Abtastung des Datensignals innerhalb einer Taktperiode eines Empfängertaktsignals zur Erzeugung mehrerer zum Empfängertakt synchroner Phasenbitströme, undan uncontrolled sampling unit for multiple sampling of the data signal within a clock period of a receiver clock signal for generating a plurality of phase bit streams synchronous with the receiver clock, and
- einer Auswerteeinheit zur Bestimmung einer bestmöglich mit den Daten des Datensignals übereinstimmenden Datenfolge durch Auswertung von Korrelationseigenschaften der erzeugten synchronen Phasenbitströme und zur Ausgabe der Datenfolge. Ein entsprechendes erfindungsgemäßes Verfahren ist in Anspruch 20 angegeben. Vorteilhafte Ausgestaltungen sind in den Unteransprüchen angegeben.- An evaluation unit for determining a data sequence that best matches the data of the data signal by evaluating correlation properties of the synchronous phase bit streams generated and for outputting the data sequence. A corresponding method according to the invention is specified in claim 20. Advantageous refinements are specified in the subclaims.
Im Gegensatz zu den bekannten Lösungen basiert die erfindungsgemäße Schaltungsanordnung, die auch als Synthesizable High Speed Receiver bezeichnet wird, auf einem Semicustom Design Flow. Mit Ausnahme der Platzierung weniger Zellen ist es möglich, nur automatische Entwurfsschritte eines Semicustom Design Flows zu verwenden. Der wirtschaftliche Nutzen dieser Schaltungsarchitektur liegt in einem kürzeren Entwicklungszyklus, der leichteren Portierbarkeit zu neuen Prozesstechnologien aufgrund der Synthetisierbarkeit und in einer einfacheren Integrierbarkeit in eine Schaltungsumgebung, die auf einem Semicustom Design Flow beruht. Insbesondere kann bei der Erfindung eine signifikante Reduzierung der Anzahl globaler Timing-kritischer Pfade erreicht werden, so dass die Verwendung eines Semicustom Design Flows ermöglicht wird.In contrast to the known solutions, the circuit arrangement according to the invention, which is also referred to as a synthesizable high-speed receiver, is based on a semi-custom design flow. With the exception of placing a few cells, it is possible to use only automatic design steps of a semi-custom design flow. The economic benefits of this circuit architecture lie in a shorter development cycle, easier portability to new process technologies due to the ability to be synthesized, and easier integration into a circuit environment based on a semicustom design flow. In particular, a significant reduction in the number of global timing-critical paths can be achieved in the invention, so that the use of a semicustom design flow is made possible.
Die Erfindung kann sowohl zur Datenübertragung zwischen integrierten Schaltungen, worunter auch eine Datenübertragung zwischen mehreren Chips oder verschiedenen Dies umfasst sein soll, also auch innerhalb einer einzigen integrierten Schaltung, worunter auch eine Datenübertragung auf einem einzigen Chip oder einem einzigen Die umfasst sein soll, zum Einsatz kommen.The invention can be used both for data transmission between integrated circuits, which should also include data transmission between several chips or different dies, that is to say also within a single integrated circuit, which should also include data transmission on a single chip or a single die come.
Erfindungsgemäß werden aus dem seriellen Datensignal sogenannte Phasenbitströme erzeugt. Deren Korrelationseigenschaften werden dann ausgewertet, d.h. es wird geprüft, ob und in wie weit Übereinstimmung bzw. Gemeinsamkeiten zwischen den Pha- senbitströmen bestehen, wobei ggf. kleinere Abweichungen zugelassen sind. Anhand des Ergebnisses wird dann die auszugebende Datenfolge bestimmt, wozu grundsätzlich verschiedene Möglichkeiten bestehen.According to the invention, so-called phase bit streams are generated from the serial data signal. Their correlation properties are then evaluated, i.e. it is checked whether and to what extent there is agreement or similarity between the phase bit streams, with minor deviations being permitted, if necessary. The data sequence to be output is then determined on the basis of the result, for which there are basically different possibilities.
Die Korrelationseigenschaften können dabei beispielsweise über ein sogenanntes Korrelationsmaß definiert werden. Das Korrelationsmaß ordnet dabei jedem Phasenbit- strom in einem Beobachtungszeitraum einen sogenannte Korrelationsvektor zu. Dieser Korrelationsvektor kann nach beliebigen Rechenvorschriften ermittelt werden. Eine geeignete Rechenvorschrift ist eine, die im Fall der Übereinstimmung eines Phasen- bitstroms mit den anderen Phasenbitströmen und im Fall der Nichtübereinstimmung eines Phasenbitstroms mit den anderen Phasenbitströmen jeweils Unterschiede für die Korrelationsvektoren des Phasenbitstroms ergibt. Das Korrelationsmaß dient dann in der Auswerteeinheit dazu, aus den Phasenbitströmen die Daten des Datensignals aufgrund der Unterschiede der obigen Korrelationszahlen zu extrahieren.The correlation properties can be defined, for example, using a so-called correlation measure. The correlation measure assigns a so-called correlation vector to each phase bit stream in an observation period. This correlation vector can be determined according to any calculation rules. A suitable calculation rule is one which, in the case of a phase bit stream matching the other phase bit streams and in the event of a phase bit stream not matching the other phase bit streams, results in differences for the correlation vectors of the phase bit stream. The correlation measure then serves in the evaluation unit to extract the data of the data signal from the phase bit streams on the basis of the differences in the above correlation numbers.
Erfindungsgemäß enthält die Abtasteinheit außerdem keine Regelung. Dadurch wird eine signifikante Reduzierung der Anzahl globaler Timing-kritischer Pfade erreicht, so dass die Verwendung eines Semicustom Design Flows möglich ist. AnalogeTeilschal- tungen und Komponenten, insbesondere eine analoge Schaltung zur Takterzeugung, können außerdem vermieden werden. Es können somit Datenströme mit Phasenverschiebungen von Sende-Datenstrom und Empfangsdatenstrom von mehr als einer Bitdauer empfangen werden.According to the invention, the scanning unit also contains no regulation. This results in a significant reduction in the number of global timing-critical paths, so that the use of a semicustom design flow is possible. Analog subcircuits and components, especially an analog circuit for clock generation, can also be avoided. Data streams with phase shifts of the transmit data stream and receive data stream of more than one bit duration can thus be received.
In den Ansprüchen 2 bis 7 sind bevorzugte Ausgestaltungen der Abtasteinheit angegeben. Bevorzugt erfolgt die Abtastung innerhalb einer Taktperiode des Empfängertaktes immer zu einem festen Zeitpunkt, nämlich unter Verwendung der steigenden Flanke des Empfängertaktsignals.In the claims 2 to 7 preferred configurations of the scanning unit are given. The sampling is preferably carried out within a clock period of the receiver clock at a fixed point in time, namely using the rising edge of the receiver clock signal.
Bevorzugt wird die Abtasteinheit gemäß Anspruch 2 nur mit einem einzigen Empfängertaktsignal über eine einzige Leitung am Eingang der Abtasteinheit betrieben, also es werden der Abtasteinheit insbesondere keine mehreren Taktphasen, z.B. über ein Bussystem, zugeführt. Bei der bevorzugten Ausgestaltung gemäß Anspruch 3 wird das Datensignal zunächst zeitlich verzögert, um somit verschiedene Phasen des Datensignals zu erzeugen. Diese werden dann mit demselben Empfängertaktsignal zur Erzeugung der Phasenbitströme parallel abgetastet. Eine vorteilhafte Ausgestaltung für die Realisierung einer solchen Abtasteinheit ist in Anspruch 4 definiert. Die bevorzugten Ausgestaltungen gemäß den Ansprüchen 3 und 4 verwenden nur einen Taktbereich, nämlich den Empfängertakt.The scanning unit is preferably operated only with a single receiver clock signal via a single line at the input of the scanning unit, that is to say the scanning unit in particular does not have a plurality of clock phases, e.g. via a bus system. In the preferred embodiment according to claim 3, the data signal is initially delayed in time, so as to generate different phases of the data signal. These are then sampled in parallel with the same receiver clock signal to generate the phase bit streams. An advantageous embodiment for implementing such a scanning unit is defined in claim 4. The preferred embodiments according to claims 3 and 4 use only one clock range, namely the receiver clock.
Bei der anderen bevorzugten Ausgestaltung der Abtasteinheit gemäß Anspruch 5 wird das Empfängertaktsignal mehrfach verzögert, um verschiedene Phasen des Empfängertaktsignals zu erzeugen. Mit diesen phasenverschobenen Empfängertaktsignalen wird dann dasselbe Datensignal mehrfach abgetastet, um die Phasenströme zu erzeugen. Eine konkrete Ausgestaltung einer solchen Abtasteinheit ist in Anspruch 6 definiert. Der Vorteil der bevorzugten Ausgestaltungen gemäß den Ansprüchen 5 und 6 liegt in der relativ geringen Störung der Abtastzeitpunkte für die Phasenbitströme durch die Datenabhängigkeit der Verzögerungszeiten in der Verzögerungskette, da das Taktsignal datenunabhängig und streng periodisch ist. Die bevorzugte Ausgestaltung der Verzögerungselemente der Verzögerungskette nach Anspruch 7 weist keine Mittel, wie z.B. Steuersignale, zur Einstellung der Verzögerungszeit auf. Ferner werden Variationen der Verzögerungszeit der einzelnen Verzögerungselemente in Kauf genommen, und es ist kein Regelungsmittel zur Regelung der Verzögerungselemente vorhanden.In the other preferred embodiment of the scanning unit according to claim 5, the receiver clock signal is delayed several times in order to generate different phases of the receiver clock signal. The same data signal is then sampled several times with these phase-shifted receiver clock signals in order to generate the phase currents. A specific embodiment of such a scanning unit is defined in claim 6. The advantage of the preferred embodiments according to claims 5 and 6 lies in the relatively low disturbance of the sampling times for the phase bit streams due to the data dependence of the delay times in the delay chain, since the clock signal is data-independent and strictly periodic. The preferred embodiment of the delay elements of the delay chain according to claim 7 has no means, such as control signals, for setting the delay time. Furthermore, variations in the delay time of the individual delay elements are accepted, and there is no regulating means for regulating the delay elements.
In einer vorteilhaften Ausgestaltung ist vorgesehen, dass die Anzahl der Verzögerungselemente und/oder die Verzögerungszeiten der Verzögerungselemente derart gewählt wird, dass die Summe der Verzögerungszeiten aller Verzögerungselemente mindestens so groß ist wie die Taktperiode des Datensignals. Die maximale Variation der Verzögerungen bzw. Phasenverschiebungen von Datensignal bzw. Taktsignal kann um mehr als die Verzögerung bzw. Phasenverschiebung eines Verzögerungselementes des Daten- bzw. Taktsignals zwischen verschiedenen ICs oder zu verschiedenen Zeitpunkten bei einem IC sein. Damit ist ebenso die Anzahl der Daten- bzw. Taktsignale mit verschiedenen Phasen der identischen Schaltungen auf verschiedenen ICs variabel oder die Anzahl der verschiedenen Daten- bzw. Taktsignale der identischen Schaltungen auf einem IC zeitlich variabel. Diese Variation kann beispielsweise in der Größenordnung des Faktors 2 oder mehr liegen; sie ist jedoch begrenzt und nicht beliebig groß. Durch die Auswerteeinheit und in bevorzugten Ausgestaltungen vorgesehene Selectoren wird die Auswirkung dieser Variation auf die Auswahl eines vom Jitter ungestörten Phasenbitstroms kompensiert. Anders als bei bekannten Schaltungsanordnungen wird die Phasenverschiebung und die Laufzeit von entsprechenden Phasensignalen nicht als konstant angenommen, und auch die Anzahl der Phasensignale mit einer definierten Phasenverschiebung pro Taktperiode wird nicht als konstant angenommen. Es sind auch keine VCO- oder PLL-Strukturen vorhanden, die durch eine Regelung die Phasen oder Laufzeiten fest einstellen.In an advantageous embodiment it is provided that the number of delay elements and / or the delay times of the delay elements is selected such that the sum of the delay times of all delay elements is at least as large as the clock period of the data signal. The maximum variation of the delays or phase shifts of the data signal or clock signal can be more than the delay or phase shift of a delay element of the data or clock signal between different ICs or at different times in an IC. The number of data or clock signals with different phases of the identical circuits on different ICs is also variable, or the number of different data or clock signals of the identical circuits on one IC is variable over time. This variation can be in the order of magnitude of factor 2 or more, for example; however, it is limited and not arbitrarily large. The effect of this variation on the selection of a phase bit stream undisturbed by the jitter is compensated for by the evaluation unit and selectors provided in preferred configurations. In contrast to known circuit arrangements, the phase shift and the transit time of corresponding phase signals are not assumed to be constant, and the number of phase signals with a defined phase shift per clock period is also not assumed to be constant. There are also no VCO or PLL structures, which set the phases or runtimes by means of a control.
Erfindungsgemäß ist also der Wert der Phasenverschiebung von Daten- und/oder Taktsignalen variabel, insbesondere während des Betriebs. Auch die Anzahl der verschiedenen Phasenlagen bzw. die Anzahl der Phasen pro Taktperiode ist variabel. Bei bekannten Schaltungsanordnungen ist dagegen eine Regelung vorgesehen, die ex- emplar-unabhängig ein Delay einstellt, dessen Variation kleiner ist als das Delay selbst. Weiterhin verwenden bekannte Schaltungsanordnungen geregelte Delays, die über ein Steuerungssignal eingestellt werden. Ohne Regelung würde dort das Delay im Allgemeinen nicht die für die Schaltung vorgesehenen Verzögerungszeit haben, so dass nicht in allen Fällen alle für die Auswerteeinheit notwendigen Phasensignale mit den vorgesehenen Werten für die Phasenverschiebung vorhanden wären; die Schaltungen würden also nicht zuverlässig funktionieren.According to the invention, the value of the phase shift of data and / or clock signals is variable, in particular during operation. The number of different phase positions or the number of phases per clock period is also variable. In the case of known circuit arrangements, on the other hand, a control is provided which sets a delay independent of the sample, the variation of which is smaller than the delay itself. Furthermore, known circuit arrangements use controlled delays which are set via a control signal. Without control, the delay would generally not have the delay time provided for the switching, so that not all of the phase signals necessary for the evaluation unit would be available with the intended values for the phase shift; the circuits would not work reliably.
Bevorzugte Ausgestaltungen der Auswerteeinheit sind in den Ansprüchen 8 bis 10 und 15 angegeben. Bevorzugt werden erfindungsgemäß mindestens zwei benachbarte Phasenbitströme ausgewertet, um daraus eine Datenfolge zu bestimmen, die möglichst gut mit den Daten des empfangenen seriellen Datensignals übereinstimmt. Dazu werden Korrelationseigenschaften der Phasenbitströme ausgewertet, um einen Phasenbitstrom mit großem Korrelationsmaß zu finden.Preferred configurations of the evaluation unit are specified in claims 8 to 10 and 15. According to the invention, at least two adjacent phase bit streams are preferably evaluated in order to determine a data sequence therefrom which matches the data of the received serial data signal as closely as possible. Correlation properties of the phase bit streams are evaluated in order to find a phase bit stream with a large correlation measure.
Bevorzugt ist nach Anspruch 9 weiter mindestens eine entsprechende Auswahleinheit in der Auswerteeinheit vorgesehen, die aufgrund von Korrelationseigenschaften der Phasenbitströme jeweils einen bestmöglich mit den Daten des empfangenen Datensignals übereinstimmenden Phasenbitstrom auswählt. Bei dieser Auswahl können durch mehrere Auswahleinheiten auch mehrere Phasenbitströme ausgewählt werden. Sind mehrere Auswahleinheiten vorgesehen, so werden diese durch eine Auswertungssteuereinheit untereinander koordiniert. Entweder wird ein ausgewählter Phasenbitstrom zur Bestimmung der Datenfolge herangezogen oder aus mehreren Phasenbitströmen wird gemeinsam, beispielsweise durch Mehrheitsentscheid, die Datenfolge bestimmt.Preferably, according to claim 9, at least one corresponding selection unit is also provided in the evaluation unit, which selects a phase bit stream that best matches the data of the received data signal based on correlation properties of the phase bit streams. With this selection, several phase bit streams can also be selected using several selection units. If several selection units are provided, these are coordinated with one another by an evaluation control unit. Either a selected phase bit stream is used to determine the data sequence, or the data sequence is determined jointly, for example by majority vote, from a plurality of phase bit streams.
Vorteilhafte Weiterbildungen der genannten Auswahleinheit sind in den Ansprüche 11 bis 14 angegeben. Bevorzugt erfolgt zur Auswahl des Phasenbitstroms die Bildung mindestens eines Differenzsignals zwischen mindestens zwei Phasenbitströmen, um zu prüfen, ob und inwieweit die Phasenbitströme voneinander abweichen bzw. um die Korrelation zweier Phasenbitströme zu bestimmen. Bevorzugt werden dabei die Korrelationen zwischen benachbarten Phasenbitströmen bestimmt und ausgewertet. Sofern sich dabei ergibt, dass die Phasenbitströme nicht voneinander abweichen bzw. ein hohes Korrelationsmaß aufweisen, wird davon ausgegangen, dass der Phasenbitstrom die in dem Eingangsdatensignal enthaltene Datenfolge korrekt wiedergibt.Advantageous further developments of the aforementioned selection unit are specified in claims 11 to 14. For the selection of the phase bit stream, at least one difference signal is preferably formed between at least two phase bit streams in order to check whether and to what extent the phase bit streams differ from one another or to determine the correlation of two phase bit streams. The correlations between adjacent phase bit streams are preferably determined and evaluated. If it is found that the phase bit streams do not differ from one another or have a high degree of correlation, it is assumed that the phase bit stream correctly reproduces the data sequence contained in the input data signal.
In einer weiteren Ausgestaltung ist vorgesehen, dass die mindestens eine Auswahleinheit zusätzlich eine Detektionseinheit aufweist, um mittels der Differenzbildungseinheit festgestellte Korrelationsunterschiede der Phasenbitströme über einen vorgegebenen Zeitraum zu beobachten und ggf. zu akkumulieren. Bevorzugt wird dabei für jedes Dif- ferenzsignal ein entsprechendes Detektionssignal generiert. Statt somit direkt aus den Differenzsignalen einen bestmöglichen Phasenbitstrom auszuwählen, erfolgt dann in einer weiteren Ausgestaltung anhand der Detektionssignale die Auswahl eines bestmöglichen Phasenbitstroms, wodurch sich ggf. die Implementierung aufgrund einfacherer Timingbedingungen vereinfachen lässt und wodurch sich ggf. die Toleranz gegenüber kurzzeitigen Störungen des Datensignals und kurzzeitigen Variationen der Verzögerungszeiten der Verzögerungselemente verbessern lässt.In a further embodiment, it is provided that the at least one selection unit additionally has a detection unit in order to observe and, if necessary, to accumulate correlation differences between the phase bit streams ascertained by means of the difference formation unit. It is preferred for each dif- reference signal generates a corresponding detection signal. Instead of selecting the best possible phase bit stream directly from the difference signals, the detection signals are then used in a further embodiment to select the best possible phase bit stream, which may simplify implementation due to simpler timing conditions and which may reduce the tolerance to short-term disturbances of the data signal and can improve short-term variations in the delay times of the delay elements.
Die Auswahl des bestmöglichen Phasenbitstroms durch die mindestens eine Auswahleinheit ist grundsätzlich zeitlich variabel und wird ständig angepasst. Dies bedeutet, dass nicht zu Beginn der Datenübertragung ein einziger Phasenbitstrom ausgewählt wird, sondern in regelmäßigen Zeitabständen überprüft wird, ob der ausgewählte Phasenbitstrom auch noch die beste Wahl darstellt.The selection of the best possible phase bit stream by the at least one selection unit is fundamentally variable in time and is constantly adapted. This means that a single phase bit stream is not selected at the start of the data transmission, but rather is checked at regular intervals whether the selected phase bit stream is also the best choice.
Die Auswertungssteuereinheit wählt gemäß Anspruch 15 bevorzugt mindestens einen der durch die Auswahleinheiten ausgewählten Phasenbitströme aus, um diese Daten als empfangene Datenfolge auszugeben. Durch Auswertung mehrerer ausgewählter Phasenbitströme können dabei mehrere Datenbits des Eingangssignals innerhalb einer Empfängertaktperiode extrahiert werden. Ferner wird bei Änderung der Auswahl durch die Auswertungssteuereinheit sichergestellt, dass eine lückenlose Extraktion der Daten stattfindet und kein Datenbit mehrfach ausgewertet wird.According to claim 15, the evaluation control unit preferably selects at least one of the phase bit streams selected by the selection units in order to output this data as a received data sequence. By evaluating several selected phase bit streams, several data bits of the input signal can be extracted within a receiver clock period. Furthermore, when the selection is changed by the evaluation control unit, it is ensured that the data is extracted without gaps and that no data bit is evaluated multiple times.
Die erfindungsgemäße Schaltung kann gemäß den Ausgestaltungen nach den Ansprüchen 16 und 17 dadurch erzeugt werden, dass ein Synthesetool ausgehend von einer Hardware-Beschreibungssprache (z.B. VHL, Verilog, SystemC) unter Verwendung einer Standardzellbibliothek eine Gatternetzliste erzeugt. Diese Gatternetzliste besteht aus Zellen einer Standardzellbibliothek, welche in einem Semicustom Design Flow mit Hilfe von Tools platziert und verdrahtet werden. Gemäß der Ausgestaltung nach Anspruch 18 kann, durch manuelle Unterstützung der Platzierungsalgorithmen des entsprechenden Tools, die Laufzeit der Signale auf den Timing-kritischen Pfaden wie z.B. zwischen den Verzögerungselementen reduziert oder angeglichen werden. Die Erfindung wird nachfolgend anhand der Zeichnungen näher erläutert. Es zeigen:The circuit according to the invention can be generated in accordance with the configurations according to claims 16 and 17 in that a synthesis tool generates a gate network list using a standard cell library, starting from a hardware description language (eg VHL, Verilog, SystemC). This grid list consists of cells from a standard cell library, which are placed and wired in a semicustom design flow using tools. According to the embodiment according to claim 18, by manually supporting the placement algorithms of the corresponding tool, the transit time of the signals on the timing-critical paths, such as between the delay elements, can be reduced or adjusted. The invention is explained in more detail below with reference to the drawings. Show it:
Figur 1 mögliche Einsatzgebiete der Erfindung,FIG. 1 possible areas of application of the invention,
Figur 2 ein Blockschaltbild zur Verdeutlichung von Timingproblemen bei der synchronen Datenübertragung,FIG. 2 shows a block diagram to illustrate timing problems in synchronous data transmission,
Figur 3 ein Zeitdiagramm zur Erläuterung von Jitter,FIG. 3 shows a time diagram to explain jitter,
Figur 4 Zeitdiagramme zur Erläuterung von Skew,FIG. 4 time diagrams for explaining Skew,
Figur 5 ein Augendiagramm zur Erläuterung der Abtastung bei einer bekannten Lösung,FIG. 5 shows an eye diagram to explain the scanning in a known solution,
Figur 6 eine Blockschaltbild einer bekannten Schaltungsanordnung,FIG. 6 shows a block diagram of a known circuit arrangement,
Figur 7 ein Augendiagramm zur Erläuterung der Abtastung bei einer weiteren bekannten Lösung,FIG. 7 shows an eye diagram to explain the scanning in a further known solution,
Figur 8 ein Blockschaltbild einer weiteren bekannten Schaltungsanordnung,FIG. 8 shows a block diagram of a further known circuit arrangement,
Figur 9 ein Augendiagramm zur Erläuterung der Abtastung bei der erfindungsgemäßen Schaltungsanordnung,FIG. 9 shows an eye diagram to explain the scanning in the circuit arrangement according to the invention,
Figur 10 ein Blockschaltbild einer Ausgestaltung der erfindungsgemäßen Schaltungsanordnung,FIG. 10 shows a block diagram of an embodiment of the circuit arrangement according to the invention,
Figur 11 ein Blockschaltbild einer weiteren Ausgestaltung der erfindungsgemäßen Schaltungsanordnung,FIG. 11 shows a block diagram of a further embodiment of the circuit arrangement according to the invention,
Figur 12 ein vereinfachtes Blockschaltbild der grundsätzlichen Ausgestaltung der erfindungsgemäßen Schaltungsanordnung,FIG. 12 shows a simplified block diagram of the basic design of the circuit arrangement according to the invention,
Figur 13 eine erste Ausgestaltung einer Abtasteinheit,FIG. 13 shows a first embodiment of a scanning unit,
Figur 14 Signalverläufe der bei der Abtasteinheit gemäß Figur 13 auftretenden Signale,FIG. 14 signal curves of the signals occurring in the scanning unit according to FIG. 13,
Figur 15 eine weitere Ausgestaltung einer Abtasteinheit, Figur 16 ein Blockschaltbild zur Verdeutlichung der Signalverläufe bei der erfindungsgemäßen Schaltungsanordnung,FIG. 15 shows a further embodiment of a scanning unit, FIG. 16 shows a block diagram to illustrate the signal curves in the circuit arrangement according to the invention,
Figur 17 eine Verzögerungskette bei einer konkreten Implementierung der Abtasteinheit,FIG. 17 shows a delay chain in a concrete implementation of the scanning unit,
Figur 18 Signalverläufe der bei der Verzögerungskette gemäß Figur 17 auftretenden Signale,FIG. 18 waveforms of the signals occurring in the delay chain according to FIG. 17,
Figur 19 eine Kette von Flip-Flops in einer konkreten Implementierung,FIG. 19 shows a chain of flip-flops in a specific implementation,
Figur 20 Signalverläufe der bei der Schaltung gemäß Figur 19 auftretenden Signale,FIG. 20 waveforms of the signals occurring in the circuit according to FIG. 19,
Figur 21 ein Blockschaltbild einer Ausgestaltung der erfindungsgemäßen Auswerteeinheit,FIG. 21 shows a block diagram of an embodiment of the evaluation unit according to the invention,
Figur 22 eine Ausgestaltung einer Differenzbildungseinheit,FIG. 22 shows an embodiment of a difference formation unit,
Figur 23 Signalverläufe der bei der Differenzbildungseinheit gemäß Figur 22 auftretenden Signale,FIG. 23 signal profiles of the signals occurring in the difference formation unit according to FIG. 22,
Figur 24 eine Ausgestaltung einer Nullfalle,FIG. 24 shows an embodiment of a zero trap,
Figur 25 das Zustandsdiagramm einer Nullfalle gemäß Figur 24,FIG. 25 shows the state diagram of a zero trap according to FIG. 24,
Figur 26 Signalverläufe der von der Nullfalle gemäß Figur 24 erzeugten Detektionssignale über einen längeren Zeitraum,FIG. 26 signal curves of the detection signals generated by the zero trap according to FIG. 24 over a longer period of time,
Figur 27 Signalverläufe der von der Nullfalle erzeugten Detektionssignale über einen kürzeren Zeitraum,FIG. 27 signal curves of the detection signals generated by the zero trap over a shorter period of time,
Figur 28 ein Zustandsdiagramm zur Erläuterung der Umschaltung zwischen unterschiedlichen Phasenbitströmen,FIG. 28 shows a state diagram to explain the switchover between different phase bit streams,
Figur 29 ein Ausschnitt aus den Signalverläufen gemäß Figur 26 zur Erläuterung der zeitlichen Anpassung der Auswahl des Phasenbitstroms,FIG. 29 shows a section of the signal curves according to FIG. 26 to explain the temporal adaptation of the selection of the phase bit stream,
Figur 30 eine alternative Ausgestaltung zur Implementierung der Abtasteinheit durch parallel angeordnete Verzögerungselemente, Figur 31 eine weitere Ausgestaltung zur Implementierung der Abtasteinheit durch Kombination von parallel und seriell angeordneten Verzögerungselementen undFIG. 30 shows an alternative embodiment for implementing the scanning unit by means of delay elements arranged in parallel, FIG. 31 shows a further embodiment for implementing the scanning unit by combining delay elements and arranged in parallel and in series
Figur 32 ein Blockschaltbild einer weiteren Ausgestaltung der erfindungsgemäßen Auswerteeinheit.FIG. 32 shows a block diagram of a further embodiment of the evaluation unit according to the invention.
In den Figuren 1a und 1 b sind grob die Einsatzgebiete der vorliegenden Erfindung dargestellt, nämlich Interchip-Kommunikation zwischen, beispielsweise über PCB, Stecker oder Kabel verbundene Chips IC1 , IC2 (Fig. 1a) oder Intrachip-Kommunikation innerhalb von ICs (Fig. 1b), beispielsweise zwischen verschiedenen Taktbereichen CD1 , CD2 (CD = Clock Domain).FIGS. 1a and 1b roughly show the areas of application of the present invention, namely interchip communication between chips IC1, IC2 (FIG. 1a) connected, for example, via PCB, plug or cable or intrachip communication within ICs (FIG. 1b ), for example between different clock areas CD1, CD2 (CD = Clock Domain).
Werden Daten zwischen verschiedenen ICs bei hohen Datenraten (mehr als 500Mbit/s) übertragen, so treten Timing-Probleme durch Laufzeitunterschiede zwischen Takt und Daten auf. Laufzeitunterschiede entstehen durch die Abhängigkeit der Laufzeiten auf dem IC von Spannungs-, Temperatur- und Fertigungstoleranzen und außerhalb des ICs durch die Abhängigkeit der Laufzeiten von Package- und Board- Fertigungstoleranzen. Diese Laufzeitunterschiede können sich deshalb während des Betriebs der Schaltungen ändern und sind somit zeitabhängig. Der Grund für die Timing-Probleme bei hohen Datenraten ist, dass Laufzeitunterschiede in der Größenordnung der Taktperiode liegen können und nicht sichergestellt ist, dass die Daten innerhalb der richtigen Taktperiode die Empfangsschaltung erreichen, wie es bei synchronen Schaltungskonzepten normalerweise der Fall sein sollte. Dieses Problem wird in Figur 2 deutlich.If data is transferred between different ICs at high data rates (more than 500Mbit / s), timing problems arise due to differences in runtime between clock and data. Runtime differences arise due to the dependency of the running times on the IC on voltage, temperature and manufacturing tolerances and outside the IC through the dependency of the running times on package and board manufacturing tolerances. These runtime differences can therefore change during the operation of the circuits and are therefore time-dependent. The reason for the timing problems at high data rates is that runtime differences can be of the order of the clock period and there is no guarantee that the data will reach the receiving circuit within the correct clock period, as should normally be the case with synchronous circuit concepts. This problem is clear in Figure 2.
In dem dargestellten Beispiel treten zwischen Sender 1 und Empfänger 2 zeitlich variable Laufzeitunterschiede von ±0,5ns sowohl auf der Datenleitung 3 als auch auf der Taktleitung 4 auf. Beispielsweise beträgt die spezifizierte Laufzeit der Taktleitung TD k und der Datenleitung TDdat. Die mittlere Laufzeitdifferenz |TDdat - TDdk| kann statisch ausgeglichen werden, aber bei einer geringen zeitabhängigen relativen Verschiebung der beiden Signale ist keine synchrone Übertragung möglich, da 1ns bereits einem ganzen Taktzyklus entspricht.In the example shown, time-varying differences in transit time of ± 0.5 ns occur between transmitter 1 and receiver 2 both on the data line 3 and on the clock line 4. For example, the specified transit time of the clock line TD k and the data line TD dat . The mean transit time difference | TD dat - TD dk | can be statically compensated, but with a small time-dependent relative shift of the two signals, synchronous transmission is not possible, since 1ns already corresponds to an entire clock cycle.
Die bei einer Datenübertragung auftretenden Störungen rufen am empfangenen Datensignal beobachtbare Störeffekte hervor, die als Jitter und Wander bezeichnet wer- den. Diese sind in den Figuren 3 und 4 verdeutlicht. Der Jitter ist eine von Taktperiode zu Taktperiode zufällige und vom Betrag begrenzte Änderung der Bitdauer des Datensignals. Physikalische Ursache für einen solchen Jitter sind beispielsweise sehr kurzzeitige Spannungseinbrüche auf den Versorgungsleitungen eines ICs. Diese entstehen unter anderem durch den kurzfristig sehr hohen Strombedarf beim Umladen von Gatekapazitäten bei Schaltvorgängen aufgrund der Datenänderungen, beispielsweise von Flip-Flops, zum Zeitpunkt einer Taktflanke. Auch Crosstalk und Reflektion kann zu Jitter führen.The disturbances occurring during data transmission cause disturbing effects which can be observed on the received data signal and which are referred to as jitter and wander. the. These are illustrated in Figures 3 and 4. The jitter is a change in the bit duration of the data signal which is random from clock period to clock period and limited in amount. The physical cause of such jitter is, for example, very brief voltage drops on the supply lines of an IC. These arise, among other things, from the short-term very high current requirements when reloading gate capacities during switching operations due to data changes, for example flip-flops, at the time of a clock edge. Crosstalk and reflection can also lead to jitter.
Mit Skew soll hier der zeitlich unveränderliche Laufzeitunterschied zwischen zwei Signalen A und B bezeichnet werden. Als Wander wird dieNeränderung des Laufzeitunterschiedes zwischen zwei Signalen A und B bezeichnet. Der Wander ist zeitabhängig und einer langsamen dynamischen Änderung unterworfen. Er entsteht zum Beispiel durch Temperatur- und Spannungsschwankungen und unterschiedliche Eigenschaften der Leitungen für die Signale A und B.Skew is used here to denote the time-dependent difference in transit time between two signals A and B. The change in the transit time difference between two signals A and B is called a wander. The hike is time-dependent and is subject to a slow dynamic change. It arises, for example, from temperature and voltage fluctuations and different properties of the cables for signals A and B.
Für die Lösung dieses Datenübertragungsproblems sind Vorschläge bekannt, die sich in zwei verschiedene Konzepte einteilen lassen. Bei einer Clock/Data-Recovery- Architektur (CDR), wie in Figur 6 skizziert, wird aufgrund der Signalwechsel des Datensignals die Frequenz und die Phasenlage des abtastenden Taktsignals so auf den Datenstrom eingestellt, dass die Daten zu einem Zeitpunkt übernommen werden, zu dem sie stabil anliegen. Dies ist in dem in Figur 5 gezeigten Augendiagramm erkennbar. Durch Synchronisation mit den Flanken des Datensignals wird der abtastende Takt abgestimmt.There are known proposals for solving this data transmission problem, which can be divided into two different concepts. In a clock / data recovery architecture (CDR), as outlined in FIG. 6, the frequency and the phase position of the sampling clock signal are set to the data stream on the basis of the signal change of the data signal in such a way that the data are taken over at a point in time at which they are stable. This can be seen in the eye diagram shown in FIG. 5. The sampling clock is tuned by synchronization with the edges of the data signal.
Aus dem Eingangssignal werden sowohl die Daten, als auch der Datentakt gewonnen. Taktrückgewinnungsschaltungen 5 sind als Phase-Locked-Loops (PLL) oder Delay- Locked-Loops (DLL) weit verbreitet. Wegen der Rückkopplungsschleife innerhalb einer solchen PLL/DLL wird diese Architektur in Figur 6 auch als Feedback-Architektur bezeichnet. Die Timing-kritischen Pfade sind in der Schaltungsskizze markiert.Both the data and the data clock are obtained from the input signal. Clock recovery circuits 5 are widely used as phase-locked loops (PLL) or delay-locked loops (DLL). Because of the feedback loop within such a PLL / DLL, this architecture is also referred to in FIG. 6 as the feedback architecture. The timing-critical paths are marked in the circuit diagram.
Pfade werden im Folgenden Timing-kritisch genannt, wenn (z.B. durch Layout beein- flusste) Signallaufzeiten oder der Skew zwischen den Signalen eines Busses innerhalb eines Toleranzfensters liegen müssen, das im allgemeinen sehr viel kleiner als die höchste Taktperiode der Schaltung ist. Liegt die Signallaufzeit oder der Skew zwischen den Signalen außerhalb des Toleranzfensters, ist die Funktionalität der Schaltung ge- fährdet. In der dargestellten Schaltungsarchitektur werden die Timing-khtischen Pfade und die Module mit Timing-khtischen Pfaden in einem Füll Custom Design Flow entworfen. Unabhängig voneinander ist für jeden Dateneingang eine solche recht aufwendige Schaltung erforderlich. Insbesondere aufgrund der erforderlichen Stromversorgung und Spannungsstabilität ist die Integration einer solchen Schaltung aufwendig.In the following, paths are called critical if the signal delay times (eg layout-influenced) or the skew between the signals of a bus must lie within a tolerance window, which is generally much smaller than the highest clock period of the circuit. If the signal transit time or the skew between the signals lies outside the tolerance window, the functionality of the circuit is jeopardized. In the circuit architecture shown, the timing paths and the modules with timing paths are designed in a fill custom design flow. Independently of each other, such a rather complex circuit is required for each data input. The integration of such a circuit is complex, in particular because of the required power supply and voltage stability.
Das andere in der Literatur etablierten Schaltungs-Konzept benötigt nur einen Taktgenerator für mehrere identische serielle Dateneingänge. Es handelt sich um eine Feed- forward-Architektur, bei der nur die Daten und nicht das Taktsignal aus dem Dateneingangssignal data_i extrahiert werden. Diese Data-Recovery-Architektur ist in Figur 8 gezeigt. Das Datensignal data_i wird asynchron mit vielen exakt aufeinander abgestimmten Phasen des selben Taktsignals clk_ref überabgetastet, vorzugsweise zu exakt äquidistanten Zeitpunkten, wie in dem in Figur 7 gezeigten Augendiagramm zu erkennen ist. Mittels Mehrheitsentscheid oder eines anderen geeigneten Verfahrens werden die Daten aus dem gesendeten Datensignal data_o extrahiert. Für die Realisierung einer solchen Architektur mit mehreren seriellen Empfängern 2 wird zwar nur eine PLL/DLL 5 zur Erzeugung der Taktphasen benötigt, es müssen jedoch viele Taktphasen clk_k erzeugt werden, und die Verteilung dieser vielen globalen Signale zu den einzelnen Empfängermodulen 2 ist Timing-kritisch.The other circuit concept established in the literature only requires one clock generator for several identical serial data inputs. It is a feed-forward architecture in which only the data and not the clock signal are extracted from the data input signal data_i. This data recovery architecture is shown in FIG. 8. The data signal data_i is oversampled asynchronously with many precisely coordinated phases of the same clock signal clk_ref, preferably at exactly equidistant times, as can be seen in the eye diagram shown in FIG. The data are extracted from the transmitted data signal data_o by means of a majority decision or another suitable method. To implement such an architecture with a plurality of serial receivers 2, only one PLL / DLL 5 is required to generate the clock phases, but many clock phases clk_k must be generated, and the distribution of these many global signals to the individual receiver modules 2 is timing-critical ,
Um die aus dem Taktsignal erzeugten Phasen exakt aufeinander abzustimmen, wird in beiden Architekturen eine PLIJDLL 5 verwendet. Der Entwurf einer PLL/DLL ist aber, da es sich um eine Schaltung mit analogen Komponenten handelt, entsprechend aufwendig. Da die Verteilung und der Transport der verschiedenen Taktphasen clk_k auch Timing-kritisch ist, ist eine exakte manuelle Platzierung der Leitungen und Gatter erforderlich. Generell ist ein entscheidender Nachteil der in Figur 8 gezeigten Schaltungsarchitektur, dass die Timing-khtischen Pfade von einer Quelle zu allen Empfänger- Schaltungen 2 geführt werden müssen. Die Realisierung solcher High Speed Receiver Schaltungen erfolgt daher unter Verwendung eines Füll Custom Design Flows. Dies gilt ebenso für die in Figur 6 gezeigte Schaltung, deren Teilschaltungen oder Module überwiegend Timing-kritisch sind.A PLIJDLL 5 is used in both architectures in order to precisely match the phases generated from the clock signal. However, the design of a PLL / DLL is correspondingly complex since it is a circuit with analog components. Since the distribution and transport of the different clock phases clk_k is also timing-critical, exact manual placement of the lines and gates is required. In general, a decisive disadvantage of the circuit architecture shown in FIG. 8 is that the timing paths have to be routed from one source to all receiver circuits 2. Such high-speed receiver circuits are therefore implemented using a filling custom design flow. This also applies to the circuit shown in FIG. 6, the subcircuits or modules of which are largely timing-critical.
Nur mit dieser Entwurfsmethodik, bei der die einzelnen Transistoren dimensioniert und Leitungen bzw. Zellen platziert werden, ist es möglich, die analogen Schaltungsteile so zu entwerfen, dass die PLIJDLL 5 entsprechend exakte Taktsignale erzeugt und diese Timing-kritischen Signale präzise verteilt werden. Der Aufwand, der durch diese He- rangehensweise entsteht, ist allerdings sehr hoch. Die Implementierung ist technologieabhängig und erfordert einen manuellen Schaltungsentwurf. Zur Verifikation des Entwurfs ist eine zeitintensive Analogsimulation notwendig. Diese Entwurfs-Methode ist daher sehr teuer.Only with this design method, in which the individual transistors are dimensioned and lines or cells are placed, is it possible to design the analog circuit parts in such a way that the PLIJDLL 5 generates correspondingly exact clock signals and these timing-critical signals are precisely distributed. The effort that this approach arises, but is very high. Implementation is technology dependent and requires manual circuit design. A time-consuming analog simulation is necessary to verify the design. This design method is therefore very expensive.
Einfacher und daher in der Industrie zur Realisierung weniger problematischer Schaltungen größtenteils verwendet, ist ein Semicustom Design Flow. Dieser Entwurfspro- zess ist stark rechnergestützt und weitgehend automatisiert. Hier wird die Funktion der Schaltung in einer Hardware-Modellierungssprache beschrieben. Am stärksten verbreitet sind die Hardware-Modellierungssprachen VHDL, Verilog und SystemC. Synthese- Tools übersetzten den Quellcode in eine Gatternetzliste unter Verwendung von ele- mentaren Standardzellen, die von Halbleiter-Herstellern in Bibliotheken zur Verfügung gestellt werden. Man spricht davon, dass die Schaltung synthetisierbar ist. Diese automatisierte Methode zum Schaltungsentwurf ermöglicht erst die Erstellung großer Schaltkreise und den einfachen Wechsel der Zieltechnologie durch den Austausch der Zellenbibliotheken.A semicustom design flow is simpler and therefore mostly used in industry to implement less problematic circuits. This design process is heavily computer-aided and largely automated. Here the function of the circuit is described in a hardware modeling language. The most widely used are the hardware modeling languages VHDL, Verilog and SystemC. Synthesis tools translate the source code into a gate network list using elementary standard cells that are made available by semiconductor manufacturers in libraries. It is said that the circuit can be synthesized. This automated method for circuit design enables large circuits to be created and the target technology to be changed easily by exchanging the cell libraries.
Eine Kostenminimierung bei der Entwicklung von ICs ist erreichbar, indem Teilschaltungen, die bisher auf einem Füll Custom Design Flow basierten, in einem Semicustom Design Flow realisiert werden. Die erfindungsgemäße Schaltungsanordnung kann in einem Semicustom Design Flow implementiert werden. Der wesentliche Vorteil der vorgestellten Schaltung liegt in einer Vereinfachung und Reduzierung der Schaltungsfläche und des Entwurfsaufwands.Cost minimization in the development of ICs can be achieved by implementing subcircuits that were previously based on a fill custom design flow in a semicustom design flow. The circuit arrangement according to the invention can be implemented in a semicustom design flow. The main advantage of the circuit presented is a simplification and reduction of the circuit area and the design effort.
Das Konzept der erfindungsgemäßen Schaltung ist in Figur 10 gezeigt. Diese weist für jedes Datensignal des Datensignalbusses data_i(0..M) eine Abtasteinheit 6, in denen jeweils mehrere zum Datentakt clk_f_i (oft auch als Empfängertakt bezeichnet) synchrone Phasenbitströme SAMPLE generiert werden, auf. Diese werden jeweils einer gesonderten Auswerteeinheit 7 zugeführt, in der jeweils die bestmöglich mit den Daten der empfangenen Datensignale data_i(0..M) übereinstimmenden Datenfolge durch Korrelationseigenschaften der erzeugten synchronen Phasenbitströme SAMPLE bestimmt werden. Diese werden dann als Ausgangssignalbus data_ (0..M) ausgegeben.The concept of the circuit according to the invention is shown in FIG. 10. This has a sampling unit 6 for each data signal of the data signal bus data_i (0..M), in each of which a plurality of phase bit streams SAMPLE which are synchronous with the data clock clk_f_i (often also referred to as the receiver clock) are generated. These are each fed to a separate evaluation unit 7, in which the data sequence which best matches the data of the received data signals data_i (0..M) is determined by correlation properties of the generated synchronous phase bit streams SAMPLE. These are then output as the output signal bus data_ (0..M).
Die Anzahl der Timing-khtischen Pfade werden darin minimiert und auf lokale Gebiete reduziert. Die Verteilung des Empfängertaktes clk_f_i ist nicht Timing-kritisch, da die Phasenlage des Taktsignals clk_f_i für die korrekte Funktionalität der Schaltung keine Rolle spielt. Für den Betrieb der Schaltung ist grundsätzlich auch keine PLL oder DLL erforderlich. Dies stellt eine erhebliche Vereinfachung dar. Wie in dem Augendiagramm in Figur 9 gezeigt ist, kann die Abtastung zu Zeitpunkten erfolgen, deren Abstand nicht bekannt ist und innerhalb eines großen Toleranzbereichs liegt.The number of timing paths are minimized and reduced to local areas. The distribution of the receiver clock clk_f_i is not critical to the timing, since the phase position of the clock signal clk_f_i is none for the correct functionality of the circuit Role play. In principle, no PLL or DLL is required to operate the circuit. This represents a considerable simplification. As is shown in the eye diagram in FIG. 9, the sampling can take place at times at which the distance is not known and is within a large tolerance range.
In manchen Anwendungen, wird jedoch trotzdem eine PLL auf dem IC vorhanden sein, da ein heruntergeteilter Takt clk_ref als Referenztakt extern mit einer niedrigeren Taktfrequenz auf dem IC übernommen wird, wie in Figur 11 gezeigt ist. Das hochfrequente Taktsignal clk_f_i wird dann mit einer PLL/DLL 5 aus dem heruntergeteilten Taktsignal clkjef zurückgewonnen. In diesen Fällen wird jedoch mit der hier vorgestellten Schaltungsarchitektur häufig die Anzahl der PLL/DLLs bei Verwendung mehrerer solcher Receiver reduzierbar sein, da die Taktverteilung selbst Timing-unkritisch ist. Aufwendigere PLLs mit vielen Taktphasen, wie bei den in den Figuren 6 und 8 gezeigten Feed- forward-Architekturen mit aufwendiger Verteilung der einzelnen Taktphasen sind aber in keinem Fall erforderlich.In some applications, however, a PLL will still be present on the IC, since a divided clock clk_ref is taken over externally as a reference clock with a lower clock frequency on the IC, as shown in FIG. 11. The high-frequency clock signal clk_f_i is then recovered from the divided clock signal clkjef with a PLL / DLL 5. In these cases, however, the number of PLL / DLLs can often be reduced when using several such receivers with the circuit architecture presented here, since the clock distribution itself is not critical in terms of timing. However, more complex PLLs with many clock phases, as in the feed-forward architectures shown in FIGS. 6 and 8 with complex distribution of the individual clock phases, are in no case necessary.
Es werden zwei alternative Architekturvarianten des neuen Konzeptes vorgeschlagen, die im Folgenden weiter erläutert werden. Beide Architekturen des Empfängers sind Feedforward-Architekturen. Das heißt, dass keine Anpassung des Taktsignals an das Datensignal stattfindet. In diesem Ansatz wird auch auf die Abstimmung verschiedener Taktphasen verzichtet, so dass keine Regelung der abtastenden Signale vorgenommen wird. Dadurch kann auf die Verwendung des weitgehend manuellen Füll Custom Design Flow verzichtet werden. Deshalb ist diese Anordnung besonders für die Verwendung eines Semicustom Design Flows geeignet.Two alternative architecture variants of the new concept are proposed, which are explained further below. Both receiver architectures are feed forward architectures. This means that the clock signal is not adapted to the data signal. In this approach, the coordination of different clock phases is also dispensed with, so that no regulation of the scanning signals is carried out. This means that the largely manual Fill Custom Design Flow can be dispensed with. This arrangement is therefore particularly suitable for the use of a semi-custom design flow.
In dem in Figur 12 gezeigten Empfänger entstehen nach einer Abtastung des Datensignals dataj durch eine Abtasteinheit 6, die, wie nachfolgend noch näher erläutert wird, bevorzugt eine Kaskade von N Flip-Flops aufweist, entweder mit N phasenverschobenen Taktsignalen oder mit einem Taktsignal clk_f_i und N-fach verzögerten Datensignalen, N sogenannte Phasenbitströme SAMPLE. Bei hinreichender Auflösung der Taktphasen oder Datenverzögerungen existiert bei stabiler und etwa gleicher Empfängerdatenrate und Taktfrequenz mindestens ein Phasenbitstrom, der fehlerfrei ohne Verletzung der Setup-Hold-Zeiten der Flip-Flops die Daten abtastet. Ein Algorithmus nimmt die Auswertung in einer Auswertungseinheit 7 vor, die bevorzugt eine Auswahl dieses Phasenbitstroms ist. Die Auswertungseinheit 7 steuert entsprechend einen Mul- tiplexer 8, über den der ausgewählte Phasenbitstrom an den Datenausgang als Datenausgangssignal data_o ausgegeben wird.In the receiver shown in FIG. 12, after a sampling of the data signal dataj by a sampling unit 6, which, as will be explained in more detail below, preferably has a cascade of N flip-flops, either with N phase-shifted clock signals or with a clock signal clk_f_i and N -data-delayed data signals, N so-called phase bit streams SAMPLE. If the clock phases or data delays are adequately resolved, there is at least one phase bit stream with a stable and approximately the same receiver data rate and clock frequency, which samples the data without errors and without violating the setup hold times of the flip-flops. An algorithm carries out the evaluation in an evaluation unit 7, which is preferably a selection of this phase bit stream. The evaluation unit 7 accordingly controls a multi tiplexer 8, via which the selected phase bit stream is output to the data output as a data output signal data_o.
Der Unterschied der beiden Architekturen besteht nur in der Erzeugung der Phasenbitströme SAMPLE. In beiden Varianten wird eine ungeregelte Verzόgerungskette verwendet. In der ersten Architektur werden mit dieser aus dem Datensignal dataj eine Vielzahl verschiedener Phasen des Datensignals und in der zweiten Architektur aus dem Taktsignal clk j eine Vielzahl verschiedener Phasen des Taktsignals abgeleitet, mit denen dann jeweils die Phasenbitströme gewonnen werden. Die Phasenlage und Frequenz, mit der die Empfangsschaltung arbeitet, sind auf das Datensignal bezogen ungeregelt, so dass sich Datenfehler, die durch Jitter und Wander entstehen, auf die Phasenbitströme auswirken. Die Auswertungseinheit 7 in Figur 6 analysiert nun lediglich die Phasenbitströme, um daraus einen Phasenbitstrom SAMPLE auszuwählen, der mit den Daten des ursprünglichen, nicht abgetasteten Datensignals dataj am Eingang der Schaltung übereinstimmt.The only difference between the two architectures is the generation of the phase bit streams SAMPLE. In both variants, an unregulated delay chain is used. In the first architecture, a plurality of different phases of the data signal are derived from the data signal dataj, and in the second architecture a plurality of different phases of the clock signal are derived from the clock signal clk j, with which the phase bit streams are then obtained in each case. The phase position and frequency with which the receiving circuit operates are unregulated in relation to the data signal, so that data errors caused by jitter and wander have an effect on the phase bit streams. The evaluation unit 7 in FIG. 6 now only analyzes the phase bit streams in order to select a phase bit stream SAMPLE which corresponds to the data of the original, unsampled data signal dataj at the input of the circuit.
Grundsätzlich sind für den Auswertungsmechanismus verschiedene Algorithmen denkbar. Eine Beispielimplementierung, die auf zwei endlichen Automaten, sogenannten Finite State Machines, und der Autokorrelation des Datensignals bzw. der Korrelation der erzeugten Phasenbitströme basiert, wird weiter unten näher erläutert. Alternativ kann ein Algorithmus mit zusätzlicher Redundanz und Kodierung des Eingangsdatenstroms den korrekten Phasenbitstrom bei einem Dekodierungsvorgang erkennen. Weiterhin ist eine Vielzahl von möglichen alternativen Algorithmen denkbar.In principle, various algorithms are conceivable for the evaluation mechanism. An example implementation based on two finite state machines, so-called finite state machines, and the autocorrelation of the data signal or the correlation of the generated phase bit streams is explained in more detail below. Alternatively, an algorithm with additional redundancy and coding of the input data stream can recognize the correct phase bit stream during a decoding process. A variety of possible alternative algorithms are also conceivable.
Figur 13 zeigt ein Blockschaltbild einer ersten Architektur der Abtasteinheit 6, bei der eine Abtastung mehrerer Datensignalphasen mit einem gemeinsamen Takt erfolgt. Das Datensignal dataj des High-Speed-Daten-Eingangs wird durch eine Kette aus N Verzögerungselementen 10 mit einer Verzögerungszeit von ΔT, « TC|k_f , ie{0,...,N-1} geleitet und zwischen den einzelnen Verzögerungselementen 10 mit einem gemeinsamen Takt abgetastet. Die hierdurch aus dem ursprünglichen Datensignal dataj abgeleiteten Signale werden als Phasenbitströme SAMPLE bezeichnet. Eine nachfolgende Schaltung analysiert diese Phasenbitströme und wählt einen zur Datenfolge des Eingangsdatenstromes dataj bestmöglich identischen Phasenbitstrom aus. Diese Auswahl wird dynamisch mit zeitlichen Variationen von Laufzeiten aufgrund von Spannungsänderungen oder Temperaturänderungen angepasst. Figur 13 zeigt ein Beispiel einer Verzögerungskette, die aus einer Folge von Buffern 10 mit einer Verzögerungszeit von Δη, ie{0...N-1} aufgebaut ist. Natürlich sind hier auch andere Elemente, die über eine Verzögerungszeit verfügen, einsetzbar (andere Gatter, Teilschaltungen, Leitungsstücke). Die Verzögerungszeiten der einzelnen Elemente müssen nicht exakt bekannt sein, es ist ausreichend, dass alle in etwa gleich groß sind. Die exakte Verzögerungszeit ist aufgrund des Semicustom Design Flows, der Platzierungsmöglichkeiten, der Prozess- und Produktionsschwankungen, der anliegenden Versorgungsspannung und der Umgebungstemperatur in gewissen Grenzen variabel.FIG. 13 shows a block diagram of a first architecture of the scanning unit 6, in which several data signal phases are scanned with a common clock. The data signal dataj of the high-speed data input is generated by a chain of N delay elements 10 with a delay time of ΔT, «T C | k _ f , ie {0, ..., N-1} and scanned between the individual delay elements 10 with a common clock. The signals thus derived from the original data signal dataj are referred to as phase bit streams SAMPLE. A subsequent circuit analyzes these phase bit streams and selects a phase bit stream that is as identical as possible to the data sequence of the input data stream dataj. This selection is dynamically adjusted with time variations of run times due to voltage changes or temperature changes. FIG. 13 shows an example of a delay chain which is built up from a sequence of buffers 10 with a delay time of Δη, ie {0 ... N-1}. Of course, other elements that have a delay time can also be used here (other gates, subcircuits, line sections). The delay times of the individual elements do not have to be known exactly, it is sufficient that all are approximately the same size. The exact delay time is variable within certain limits due to the semicustom design flow, the placement options, the process and production fluctuations, the supply voltage and the ambient temperature.
Durch die manuelle Platzierung der Verzögerungselemente können die Verzögerungszeiten der Leitungsstücke zwischen den Verzögerungselementen reduziert werden. Dadurch kann die Qualität der Implementierung verbessert werden und die Verzögerungszeiten ebenfalls einander angeglichen werden. Eine solche manuelle Unterstützung der Platzierungs- und Verdrahtungstools ist in einem modernen Semicustom Design Flow generell möglich. Im vorliegenden Fall kann diese Vorgehensweise je nach Ergebnis der automatisch ablaufenden Platzierungs- und Verdrahtungsalgorithmen einen entscheidenden Beitrag zur Qualität der Implementierung in einem Semicustom Design Flow leisten. Für die klassische Anwendung eines Semicustom Design Flows, bei dem die Entwurfsschritte so weit wie möglich automatisch ablaufen sollen, wird eine solche manuelle Platzierung nicht durchgeführt.By manually placing the delay elements, the delay times of the line sections between the delay elements can be reduced. This can improve the quality of the implementation and also harmonize the delay times. Such manual support of the placement and wiring tools is generally possible in a modern semicustom design flow. In this case, depending on the result of the automatically running placement and wiring algorithms, this procedure can make a decisive contribution to the quality of the implementation in a semicustom design flow. Such a manual placement is not carried out for the classic application of a semicustom design flow, in which the design steps should run automatically as far as possible.
Die Verzögerungselemente sollen alle eine möglichst vergleichbare Verzögerungszeit haben, so dass gilt Δ «Δ für alle i, j e{0 N-1}. Die zwischen den Verzögerungselementen 10 anliegenden Signale werden hier mit RAW(0) bis RAW(N-1 ) bezeichnet. Diese RAW-Signale werden, wie auch in Figur 13 angedeutet, gleichzeitig mittels speichernden Elementen 11 wie Flip-Flops oder Latches mit dem Taktsignal clk_f_i abgetastet. Die abgetasteten Signale werden dann mit SAMPLE(O) bis SAMPLE(N-I ) bezeichnet und Phasenbitströme genannt. Aufgrund der Verzögerungskette, der Setup- Hold-Time Verletzungen und der Signalstörungen, wie Jitter und Wander, sind die Phasenbitströme nicht identisch, jedoch miteinander und mit dem Datensignal korre- liert. Einige sind um ein bzw. mehrere Bits gegeneinander verschoben, andere tragen teilweise falsche Daten.The delay elements should all have a delay time that is as comparable as possible, so that Δ «Δ applies to all i, j e {0 N-1}. The signals present between the delay elements 10 are referred to here as RAW (0) to RAW (N-1). As indicated in FIG. 13, these RAW signals are simultaneously sampled with the clock signal clk_f_i by means of storage elements 11 such as flip-flops or latches. The sampled signals are then designated SAMPLE (O) to SAMPLE (N-I) and are called phase bit streams. Due to the delay chain, the setup hold time violations and the signal disturbances such as jitter and wander, the phase bit streams are not identical, but are corrected with each other and with the data signal. Some are shifted by one or more bits against each other, others carry incorrect data.
Für ein Beispiel mit N = 20 sind in Figur 14 die RAW- und die SAMPLE-Signale für einen kurzen Zeitabschnitt abgebildet. SAMPLE(3) und SAMPLE(13) stellen fehlerhafte Phasenbitströme dar, während in SAMPLE(O) bis SAMPLE(2), SAMPLE(4) bis SAM- PLE(12) und SAMPLE(14) bis SAMPLE(19) korrekte Daten anliegen. Die Phasenbitströme, auf denen korrekte Daten anliegen, lassen sich in drei Gruppen einteilen, in denen die Daten jeweils identisch sind. Jede dieser Gruppen repräsentiert einen sogenannten Datenbitstrom. Durch Jitter und Phasenverschiebung des Datensignals verändert sich die Zuordnung der Phasenbitströme zu den Datenbitströmen. Diese Beobachtung ist für die Auswertungs- bzw. Auswahlalgorithmen relevant.For an example with N = 20, the RAW and SAMPLE signals are shown in FIG. 14 for a short period of time. SAMPLE (3) and SAMPLE (13) represent incorrect ones Phase bit streams, while correct data are present in SAMPLE (O) to SAMPLE (2), SAMPLE (4) to SAMPLE (12) and SAMPLE (14) to SAMPLE (19). The phase bit streams on which correct data are present can be divided into three groups, in which the data are identical in each case. Each of these groups represents a so-called data bit stream. The assignment of the phase bit streams to the data bit streams changes due to jitter and phase shift of the data signal. This observation is relevant for the evaluation or selection algorithms.
Figur 15 zeigt ein Blockschaltbild einer zweiten Architektur der Abtasteinheit 6, bei der eine Überabtastung des Datensignals durch mehrere Phasen des Taktsignals erfolgt. Zentrales Merkmal einer Implementierung nach diesem Konzept ist die Verzögerungskette aus beliebigen Verzögerungselementen 10, durch die ungeregelt verschiedene Phasen des Taktsignals clk_f_i erzeugt werden. Das Taktsignal wird durch die Verzögerungskette geleitet. Die zwischen den Verzögerungselementen 10 abgenommenen Taktsignale werden Taktphasen CKP(0) bis CKP(N-1) genannt. Mit den verschiedenen Taktphasen wird das Datensignal dataj abgetastet, um die Phasenbitströme SAMPLE zu erzeugen. Diese Phasenbitströme entsprechen im Prinzip denen der ersten, in Figur 13 gezeigten Architektur. Um optimale Extraktionsergebnisse zu erreichen, werden, da die Phasenbitströme unterschiedlich gewonnen werden und daher unterschiedliche Eigenschaften haben, auch gegebenenfalls leicht modifizierte Algorithmen zur Anwendung kommen.FIG. 15 shows a block diagram of a second architecture of the scanning unit 6, in which the data signal is oversampled by several phases of the clock signal. The central feature of an implementation according to this concept is the delay chain consisting of any delay elements 10, through which different phases of the clock signal clk_f_i are generated in an uncontrolled manner. The clock signal is passed through the delay chain. The clock signals picked up between the delay elements 10 are called clock phases CKP (0) to CKP (N-1). The data signal dataj is sampled with the various clock phases in order to generate the phase bit streams SAMPLE. In principle, these phase bit streams correspond to those of the first architecture shown in FIG. In order to achieve optimal extraction results, since the phase bit streams are obtained differently and therefore have different properties, slightly modified algorithms may also be used.
Nachfolgend wird exemplarisch die Implementierung der in Figur 12 gezeigten Schaltungsarchitektur näher erläutert. Figur 16 zeigt die Architektur der Empfängerschaltung mit den einzelnen funktionalen Blöcken. Der serielle Bitstrom der Empfangsdaten liegt als Signal dataj an. Dieses Datensignal wird durch die Abtasteinheit 6 mit einer Kette aus Verzögerungselementen geleitet. Indem zwischen den einzelnen Verzögerungselementen die Signale gleichzeitig abgetastet werden, entsteht zu festen periodischen Zeitpunkten eine (diskrete) Abbildung vom zeitlichen Verlauf des Datensignals. Anhand dieser Abbildung wird die gesendete Datenfolge aus dem Datensignal extrahiert.The implementation of the circuit architecture shown in FIG. 12 is explained in more detail below by way of example. FIG. 16 shows the architecture of the receiver circuit with the individual functional blocks. The serial bit stream of the received data is present as signal dataj. This data signal is passed through the scanning unit 6 with a chain of delay elements. By simultaneously scanning the signals between the individual delay elements, a (discrete) image of the temporal course of the data signal is created at fixed periodic times. The transmitted data sequence is extracted from the data signal on the basis of this illustration.
Diese Extraktion für eine realisierte Implementierung soll nun im einzelnen erläutert werden. Die Implementierung besteht aus den in Figur 16 gezeigten Modulen. Es wird auf die Funktion jedes einzelnen Moduls speziell eingegangen. Das Eingangssignal wird durch die Verzögerungselemente 10 geleitet und jeweils vor einem Verzögerungselement 10 abgegriffen. Ein Verzögerungselement 10 ist hier als ein einfacher Buffer mit einer Verzögerungszeit von ΔT = i00ps der Standardzellen- Bibliothek realisiert. Es handelt sich in diesem Beispiel also um aktive Verzögerungselemente, die zur Signalaufbereitung beitragen. Die Schaltung ist in Figur 17 gezeigt. Es sind N = 20 Buffer 10 als Verzögerungselemente gewählt. Das Signal RAW(1 ) hat beispielsweise genau ein Verzögerungselement 10 mehr als das Signal RAW(O) durchlaufen, und das Signal RAW(10) hat beispielsweise zehn Verzögerungselemente 10 mehr durchlaufen als das Signal RAW(O). Der Verlauf dieser einzelnen Signale ist in Figur 18 dargestellt.This extraction for a implemented implementation will now be explained in detail. The implementation consists of the modules shown in FIG. 16. The function of each individual module is specifically dealt with. The input signal is passed through the delay elements 10 and tapped in front of a delay element 10. A delay element 10 is implemented here as a simple buffer with a delay time of ΔT = i00ps of the standard cell library. In this example, these are active delay elements that contribute to signal processing. The circuit is shown in Figure 17. N = 20 buffers 10 are selected as delay elements. For example, the signal RAW (1) has passed exactly one delay element 10 more than the signal RAW (O), and the signal RAW (10) has, for example, gone through ten delay elements 10 more than the signal RAW (O). The course of these individual signals is shown in FIG. 18.
In diesem Beispiel liegt die Bitfolge '101 ' in der Zeitspanne ca. 818ns - ca. 820ns am Dateneingang an. Zum Zeitpunkt 820ns liegt am Eingang dataj also ein hoher Spannungspegel an, die Signale RAW(4) bis RAW(13) haben einen niedrigen Spannungspegel und spiegeln die zeitlich verzögerte '0' wider. Die Signale RAW(14) bis RAW(19) haben wieder einen hohen Signalpegel, der die erste T repräsentiert. Die übertragene Bitfolge '101 ' wird durch die Verzögerungskette also in den Daten der RAW-Signale gleichzeitig sichtbar. Die Gesamtverzögerung der Verzögerungskette entspricht in diesem Beispiel etwa der doppelten Periode des Datentaktsignals.In this example, the bit sequence '101' is present at the data input for a period of approx. 818ns - approx. 820ns. At time 820ns there is a high voltage level at the input dataj, the signals RAW (4) to RAW (13) have a low voltage level and reflect the time-delayed '0'. The signals RAW (14) to RAW (19) again have a high signal level which represents the first T. The transmitted bit sequence '101' is thus visible through the delay chain in the data of the RAW signals at the same time. In this example, the total delay of the delay chain corresponds approximately to twice the period of the data clock signal.
Die gegeneinander phasenverschobenen Datensignale RAW werden alle gleichzeitig abgetastet. Dies geschieht beispielsweise bei der Frequenz 1 GHz mit dem Taktsignal clk_f_i. Die entsprechende Schaltung ist in Figur 19 gezeigt. Es findet eine asynchrone Abtastung durch Flip-Flops 11 statt. Die Signalverläufe vor und nach der Abtastung sind in Figur 20 gezeigt. Die zum Taktsignal clk_f_i synchronen Datensignale SAMPLE werden jeweils als Phasenbitstrom bezeichnet. Die korrekte, oben erwähnte Bitfolge '101 ' findet sich nun in den Signalen SAMPLE(O) bis SAMPLE(2), SAMPLE(4) bis SAMPLE(12) und SAMPLE(14) bis SAMPLE(19) wieder. Durch Setup-Hold-Time Verletzungen sind die Phasenbitströme SAMPLE(3) und SAMPLE(13) fehlerhaft.The RAW data signals are all sampled at the same time. This happens for example at the frequency 1 GHz with the clock signal clk_f_i. The corresponding circuit is shown in Figure 19. Asynchronous sampling by flip-flops 11 takes place. The waveforms before and after the sampling are shown in FIG. The data signals SAMPLE which are synchronous with the clock signal clk_f_i are each referred to as a phase bit stream. The correct bit sequence '101' mentioned above can now be found in the signals SAMPLE (O) to SAMPLE (2), SAMPLE (4) to SAMPLE (12) and SAMPLE (14) to SAMPLE (19). Due to setup hold time violations, the phase bit streams SAMPLE (3) and SAMPLE (13) are faulty.
In diesem Fall können den Phasenbitströmen also drei aufeinanderfolgenden Bits des Datensignals zugeordnet werden. Daraus ergeben sich drei Gruppen, die jeweils einen sogenannten Datenbitstrom repräsentieren. Durch Schwankungen der Phase bzw. Frequenz von Datensignal bzw. Referenztakt und durch Jitter verschieben sich die Grenzen zwischen diesen drei Gruppen. Die Zugehörigkeit der Phasenbitströme zu den Gruppen ändert sich daher dynamisch, und es können auch fehlerhafte Phasen- bitströme auftreten. Fehlerhafte Phasenbitströme sind Phasenbitströme, deren Daten fehlerhaft gegenüber den Eingangsdaten sind. Zwei benachbarte Datenbitströme sind also um 1 Bit bzw. eine Taktperiode gegeneinander verschoben, aber sonst identisch, und enthalten genau die zu extrahierenden Daten. Die korrekten Daten werden nun bestimmt, indem, falls sich der Wander oder das Jitter-Verhalten ändert, zwischen verschiedenen Phasenbitströmen gewechselt, und so dem Datenbitstrom gefolgt wird.In this case, three consecutive bits of the data signal can be assigned to the phase bit streams. This results in three groups, each of which represents a so-called data bit stream. The boundaries between these three groups are shifted by fluctuations in the phase or frequency of the data signal or reference clock and by jitter. The membership of the phase bit streams to the groups therefore changes dynamically, and faulty phase bit streams occur. Faulty phase bit streams are phase bit streams whose data are faulty compared to the input data. Two adjacent data bit streams are thus shifted from each other by 1 bit or one clock period, but are otherwise identical, and contain exactly the data to be extracted. The correct data is now determined by switching between different phase bit streams, if the wander or jitter behavior changes, and thus following the data bit stream.
Eine Auswertungsschaltung 7 zur Auswertung der Phasenbitströme und zur Bestimmung eines bestmöglich mit der Eingangsdatenfolge übereinstimmenden bzw. ein maximales Korrelationsmaß aufweisenden Phasenbitstroms ist in Figur 21 gezeigt. Diese weist eine Differenzbildungeinheit 12 zur Differenzbildung zwischen mindestens zwei Phasenbitströmen, eine Detektionseinheit 13 zur Bestimmung des Korrelationsmaßes sowie zwei von einer Steuereinheit 14 gesteuerte Selectoren 15, 16 zur Einsynchroni- satioπ auf jeweils einen Datenbitstrom auf. Die einzelnen Einheiten sollen nachfolgend näher erläutert werden.An evaluation circuit 7 for evaluating the phase bit streams and for determining a phase bit stream that best matches the input data sequence or has a maximum correlation measure is shown in FIG. This has a difference formation unit 12 for forming the difference between at least two phase bit streams, a detection unit 13 for determining the correlation measure and two selectors 15, 16 controlled by a control unit 14 for synchronizing each data bit stream. The individual units will be explained in more detail below.
Indem jeweils zwei benachbarte Phasenbitströme auf Gleichheit geprüft werden, wird bestimmt, zwischen welchen Phasenbitströmen ein Datenwechsel auf dem Eingangssignal stattfindet. Die Differenzbildungeinheit 12 in Figur 22 und die Signale in Figur 23 zeigen diesen Vergleich. Zur Erkennung von Datenwechseln bzw. Flanken des Datensignals werden mittels Differenzbildungsmodulen 120, z.B. einfachen Logikgattern, Differenzsignale DI FF der abgetakteten Phasenbitströme SAMPLE gebildet. Jeweils zwei benachbarte Phasenbitströme werden auf Gleichheit geprüft. DIFF(3) zeigt beispielsweise an, ob SAMPLE(3) und SAMPLE(4) identisch sind. Gilt für zwei beliebige, benachbarte Phasenbitströme SAMPLE(i), SAMPLE(i+1 ), dass SAMPLE(i) ≠ SAM- PLE(i+1 ) , so folgt DIFF(i) = 0.By checking two adjacent phase bit streams for equality, it is determined between which phase bit streams a data change takes place on the input signal. The difference formation unit 12 in FIG. 22 and the signals in FIG. 23 show this comparison. To detect data changes or edges of the data signal, difference formation modules 120, e.g. simple logic gates, difference signals DI FF of the clocked phase bit streams SAMPLE are formed. Two adjacent phase bit streams are checked for equality. For example, DIFF (3) indicates whether SAMPLE (3) and SAMPLE (4) are identical. If SAMPLE (i) ≠ SAMPLE (i + 1) applies to any two adjacent phase bit streams SAMPLE (i), SAMPLE (i + 1), then DIFF (i) = 0 follows.
Die Schaltung zur Implementierung des Algorithmus zur Phasen- und Datenbitstrom- Auswahl, die in diesem Beispiel als Zustandsautomat realisiert wird, soll auf einer niedrigeren Taktrate clk_s_s als die Empfängertaktrate clk_f_i (z.B. 1 GHz) betrieben werden (f = fast, s = slow). Damit sind alle Pfade innerhalb dieses Zustandsautomaten Timing-unkritisch. Das Taktsignal clk_s_s kann durch einen einfachen Taktteiler aus dem Signal clk_f_i erzeugt werden. Dieser Taktteiler ist in Figur 16 als Modul DivClock 9 bezeichnet. Um die Differenzsignale mit diesem niedrigeren Takt clk_s_s auszuwerten, müssen daraus Signale abgeleitet werden, die sich ebenfalls mit einer niedrigeren Rate ändern. Dazu wird exemplarisch eine Schaltung vorgeschlagen, die im folgenden als Nullfalle bezeichnet wird. Eine Nullfalle ist eine gedächtnisbehaftete Schaltung, die sich in einem längeren Beobachtungszeitraum (hier Taktperiode von clk_s_s) merkt, ob eine Differenz zwischen zwei benachbarten Phasenbitströmen aufgetreten ist. Dazu werden die durch die Differenzsignale DIFF detektierten Datensignalwechsel, die während einer Periode des Taktes clk_s_s auftreten, akkumuliert. In diesem Implementierungsbeispiel stehen bei jeder positiven Flanke des Taktes clk_s_s die so gesammelten Informationen für jedes einzelne Differenzsignal zur Verfügung.The circuit for implementing the algorithm for phase and data bit stream selection, which in this example is implemented as a state machine, is to be operated at a lower clock rate clk_s_s than the receiver clock rate clk_f_i (eg 1 GHz) (f = fast, s = slow). This means that all paths within this state machine are timing-uncritical. The clock signal clk_s_s can be generated from the signal clk_f_i by a simple clock divider. This clock divider is designated as module DivClock 9 in FIG. In order to evaluate the difference signals with this lower clock clk_s_s, signals must be derived therefrom which also change at a lower rate. For this purpose, a circuit is proposed as an example, which is referred to below as a zero trap. A zero trap is a memory circuit that remembers over a longer observation period (here clock period of clk_s_s) whether a difference between two neighboring phase bit streams has occurred. For this purpose, the data signal changes detected by the difference signals DIFF, which occur during a period of the clock clk_s_s, are accumulated. In this implementation example, the information collected in this way is available for each individual difference signal on each positive edge of the clock clk_s_s.
Figur 24 zeigt eine Ausgestaltung einer solchen Nullfalle 13. Die Funktion ist in Form eines endlichen Automaten in Figur 25 dargestellt. Gemäß Figur 24 wird das Flip-Flop 130, das zunächst mittels des Reset-Signal res_trap synchron auf den Wert '1 ' gesetzt wird, innerhalb des Beobachtungszeitraums zurückgesetzt, falls das Signal DIFF durch den Wert '0' eine Differenz zweier Phasenbitströme anzeigt. Die Schaltung merkt sich also das Auftreten von einer oder mehreren '0' des Differenzsignals als Zeichen dafür, dass zwei benachbarte Phasenbitströme unterschiedlich sind. Da dieses Verhalten dem Einfangen einer '0' entspricht, wurde der Name Nullfalle zur Bezeichnung der Schaltung gewählt. Für jedes Signal DIFF(i) wird eine solche Nullfalle verwendet. Die Ausgangssignale der Nullfallen mit der niedrigeren Datenrate werden im folgenden als TRAP(i) bezeichnet.FIG. 24 shows an embodiment of such a zero trap 13. The function is shown in FIG. 25 in the form of a finite automaton. According to FIG. 24, the flip-flop 130, which is initially set to the value '1' synchronously by means of the reset signal res_trap, is reset within the observation period if the signal DIFF indicates a difference between two phase bit streams by the value '0'. The circuit thus notes the occurrence of one or more '0' of the difference signal as a sign that two adjacent phase bit streams are different. Since this behavior corresponds to the capture of a '0', the name Nullfalle was chosen to designate the circuit. Such a zero trap is used for each signal DIFF (i). The output signals of the zero traps with the lower data rate are referred to below as TRAP (i).
Alternativ könnte genauso gut eine .Einsfalle' statt einer .Nullfalle' definiert und eingesetzt werden, die sich das Auftreten von einer oder mehreren '1 ' des Differenzsignals als Zeichen dafür merkt, dass zwei benachbarte Phasenbitströme unterschiedlich sind, falls das Signal DIFF durch den Wert '1 ' eine Differenz zweier Phasenbitströme anzeigt.Alternatively, a 'trap' instead of a 'zero trap' could be defined and used, which notes the occurrence of one or more '1' of the difference signal as a sign that two adjacent phase bit streams are different if the signal DIFF by the value '1' indicates a difference between two phase bit streams.
Nun wird eine Schaltung für die Auswahl des Phasenbitstroms aufgrund der TRAP- Signale erläutert. Für die Simulation werden für das Eingangsdatensignal zwei Arten von Störungen berücksichtigt, die hier mit Jitter und Wander bezeichnet werden. Diese Störungen werden durch die bereits beschriebenen Variationen während des Betriebs der Schaltung beispielsweise von Temperatur und Spannung erzeugt. Zunehmender Jitter wirkt sich auf die Phasenbitströme und TRAP-Signale so aus, dass zwischen den Datenbitströmen Gebiete mit zeitweise fehlerhaften Phasenbitströmen entstehen und die TRAP-Signale zeitweise den Signalpegel '0' haben. Solche Gebiete mit wechselnden Signalpegeln der TRAP-Signale aufgrund des Jitters sind in Figur 26 zu sehen.A circuit for selecting the phase bit stream based on the TRAP signals will now be explained. For the simulation, two types of interference are taken into account for the input data signal, which are referred to here as jitter and wander. These disturbances are generated by the variations already described during the operation of the circuit, for example of temperature and voltage. Increasing jitter has an effect on the phase bit streams and TRAP signals in such a way that areas with temporarily faulty phase bit streams arise between the data bit streams and the TRAP signals temporarily have the signal level '0'. Such areas with changing signal levels of the TRAP signals due to the jitter can be seen in FIG.
Weiterhin ist mit länger andauernden Störungen zu rechnen, die durch langsame Temperaturschwankungen oder langsamen Spannungsänderungen verursacht werden können. Dies wurde in den beschriebenen Simulationen so modelliert, dass die Bitdauer über mehrere Taktperioden zugenommen hat. Danach hat diese wieder abgenommen. Dadurch werden die Grenzen zwischen Datenbitströmen verschoben. In Figur 26 ist diese Grenze durch das Jitter-Gebiet erkennbar. Durch die Zu- und Abnahme der Bitdauer über mehrere Taktperioden entsteht der sinusförmige Verlauf des Jitter- Gebietes in Figur 26, da die Veränderung der Bitdauer exemplarisch als sinusförmig angenommen wird.Furthermore, longer-lasting disturbances can be expected, which can be caused by slow temperature fluctuations or slow voltage changes. In the simulations described, this was modeled so that the bit duration increased over several clock periods. Then it has decreased again. This shifts the boundaries between data bit streams. This limit can be seen in FIG. 26 through the jitter region. The increase and decrease in the bit duration over several clock periods results in the sinusoidal course of the jitter region in FIG. 26, since the change in the bit duration is assumed to be sinusoidal.
Die Aufgabe der Schaltungseinheit für die Auswahl des Phasenbitstroms ist nun, einen Weg (eine sogenannte Trajekto e) zwischen diesen Jitter-Gebieten zu suchen und immer einen Phasenbitstrom zu finden, der gegenüber den Eingangsdaten korrekte Daten liefert (Datenbitstrom). Dieser Weg ist in Figur 26 als durchgezogene Linie dargestellt.The task of the circuit unit for the selection of the phase bit stream is now to search for a path (a so-called trajectory) between these jitter areas and always to find a phase bit stream that supplies correct data with respect to the input data (data bit stream). This path is shown in Figure 26 as a solid line.
Ist beispielsweise die maximale Phasendifferenz zwischen Empfängertakt und Datensignal größer als die gesamte Verzögerungszeit der Verzögerungselemente, so ist eine Architektur bestehend aus zwei Selectoren 15, 16 sinnvoll, wie in Figur 21 gezeigt. Jeder Selector ist als endlicher Automat realisiert und startet mit der Position eines beliebigen Phasenbitstromes. Nachdem ein korrekter Phasenbitstrom gefunden wurde, wird diese Wahl, falls notwendig, angepasst und so dem entsprechenden Datenbitstrom gefolgt. Der Automat hat sich dann auf diesen Datenbitstrom einsynchronisiert. Falls der erste Selector 15 dem Datenbitstrom nicht weiter folgen kann, so übernimmt der zweite Selector 16.If, for example, the maximum phase difference between the receiver clock and the data signal is greater than the total delay time of the delay elements, an architecture consisting of two selectors 15, 16 makes sense, as shown in FIG. Each selector is implemented as a finite state machine and starts with the position of any phase bit stream. After a correct phase bit stream has been found, this choice is adjusted, if necessary, and the corresponding data bit stream is thus followed. The automaton then synchronized itself to this data bit stream. If the first selector 15 can no longer follow the data bit stream, the second selector 16 takes over.
Die beiden Selectoren werden mit SelectorA bzw. SelectorB bezeichnet. Figur 27 zeigt ein Szenario, in dem die beiden Selectoren A und B den Datenbitströmen folgend ihre Auswahl eines Phasenbitstromes anpassen. Zu sehen sind hier die TRAP-Signale, also die über jeweils eine Taktperiode mittels Nullfallen akkumulierten Differenzsignale zweier benachbarter Phasenbitströme. Der Jitter-Bereich des Datensignals macht sich also durch niedrige Signalpegel auf diesen TRAP-Signalen bemerkbar. Während in Figur 26 der Jitter-Bereich recht groß ist, beansprucht er in Figur 27 einen kleineren Bereich. Es werden also zwei unterschiedliche Datensignale betrachtet. Der Jitter- Bereich ist in beiden Fällen nicht auf bestimmte Phasenbitströme beschränkt. Durch eine Verschiebung der Phasenlage des Datensignals relativ zum Referenztakt (Wander) verschiebt sich die Position des Jitter-Bereiches innerhalb der Phasenbitströme. Damit verschieben sich auch die Positionen der Datenbitströme. Diese Verschiebung wird von den Selectoren erkannt, die ihre Auswahl eines Phasenbitstromes entsprechend anpassen. Ein Selector synchronisiert sich auf einen Datenbitstrom ein und wählt einen Phasenbitstrom aus.The two selectors are named SelectorA and SelectorB. FIG. 27 shows a scenario in which the two selectors A and B adapt their selection of a phase bit stream to the data bit streams. The TRAP signals can be seen here, that is to say the difference signals of two adjacent phase bit streams accumulated over a clock period by means of zero traps. The jitter area of the data signal is therefore noticeable by the low signal levels on these TRAP signals. While the jitter range is quite large in FIG. 26, it claims a smaller one in FIG Area. Two different data signals are therefore considered. In both cases, the jitter range is not restricted to specific phase bit streams. By shifting the phase position of the data signal relative to the reference clock (wander), the position of the jitter area is shifted within the phase bit streams. This also shifts the positions of the data bit streams. This shift is recognized by the selectors, which adapt their selection of a phase bit stream accordingly. A selector synchronizes itself to a data bit stream and selects a phase bit stream.
In dem Beispiel in Figur 26 ist die Amplitude des Wander gering, so dass der Selector, dessen Auswahl markiert ist, dem Phasenbitstrom folgen kann. Sind die Frequenzen der beiden Signale leicht unterschiedlich (großer Wander), wie dies im Beispiel in Figur 27 der Fall ist, so kann ein Selector dem Datenbitstrom, auf den er einsynchronisiert ist, nicht beliebig lange folgen. Die Phasendifferenz der beiden Signale wird größer als die gesamte Verzögerungszeit der Verzögerungskette, und der Datenbitstrom wird nicht mehr durch Phasenbitströme repräsentiert, d.h. der Datenbitstrom verlässt den durch die Phasenbitströme dargestellten Bereich. Um auch in diesem Fall die Daten sicher extrahieren zu können, sind zwei identische Selectoren implementiert, die auf direkt benachbarte Datenbitströme einsynchronisiert sind. Fällt der Datenbitstrom eines der Selectoren aus dem Bereich hinaus, so übernimmt der andere die Datenauswahl. Welcher Selector die Entscheidung trifft ist in Figur 27 im Signal cur_read_s dargestellt.In the example in FIG. 26, the amplitude of the wander is low, so that the selector whose selection is marked can follow the phase bit stream. If the frequencies of the two signals are slightly different (large wander), as is the case in the example in FIG. 27, a selector cannot follow the data bit stream to which it is synchronized for any length of time. The phase difference of the two signals becomes greater than the total delay time of the delay chain, and the data bit stream is no longer represented by phase bit streams, i.e. the data bit stream leaves the area represented by the phase bit streams. In order to be able to extract the data safely in this case, too, two identical selectors are implemented, which are synchronized to directly adjacent data bit streams. If the data bit stream of one of the selectors falls outside the range, the other takes over the data selection. Which selector makes the decision is shown in FIG. 27 in the signal cur_read_s.
Ist ein Selector nicht mehr auf einen Datenbitstrom einsynchronisiert, so sucht er einen neuen Datenbitstrom, der direkt zum Datenbitstrom, auf den sich der andere Selector einsynchronisiert hat, benachbart ist. Implementiert sind beide Selectoren als identische synchrone endliche Automaten. Das Zustandsdiagramm eines Selectors ist in Figur 28 dargestellt. Ein Zustand ist als Paar z = (s; p) von Kontrollzustand (s) und Kontrollposition (p) definiert. Es giltIf a selector is no longer synchronized to a data bit stream, it searches for a new data bit stream that is directly adjacent to the data bit stream to which the other selector has synchronized. Both selectors are implemented as identical synchronous finite automata. The state diagram of a selector is shown in FIG. 28. A state is defined as a pair z = (s; p) of control state (s) and control position (p). It applies
s e {SEEKNEXTUP; SEEKNEXTDOWN; SEEKUP; SEEKDOWN; SYNC; LOST}s e {SEEKNEXTUP; SEEKNEXTDOWN; SEEKUP; SEEKDOWN; SYNC; LOST}
und, da N = 20and, since N = 20
p e {2... 17}.p e {2 ... 17}.
Als Eingangsdaten stehen die TRAP-Signale der Phasenbitströme zur Verfügung. Der Automat startet mit beliebiger Kontrollposition im Kontrollzustand s = SEEKUP. In jedem Taktzyklus wird nun sowohl Kontrollposition (im folgenden auch einfach als Position bezeichnet), als auch Kontrollzustand angepasst. Zu Beginn wird die Position solange erhöht, bis die Bedingung für das sichere Auffinden eines Datenbitstromes erfüllt ist. Für diese gilt, dass während der letzten Periode die Daten der vier zum aktuell ausgewählten Phasenbitstrom p nächst gelegenen Phasenbitströme identisch waren. Diese Eigenschaft zeigt sich, wenn die entsprechenden Differenzsignale keinen Unterschied anzeigen, also alle vier Nullfallen keinen 'O'-Signalpegel der Differenzsignale detektieren. Der Automat geht unter dieser Bedingung in den Zustand SYNC über, und die Daten des ausgewählten Phasenbitstromes p werden als korrekt angenommen. Die Bedingung, dass die vier zur aktuellen Position p nächsten Phasenbitströme identisch sind, wird im Folgenden mit (1 ; 1; 1 ; 1)p bezeichnet. Für eine gegebene Kontrollposition p werden die Eigenschaften der vier nächsten Phasenbitströme durch folgendes 4-Tupel erfasst, indem die Differenzsignale ausgewertet werden: -The TRAP signals of the phase bit streams are available as input data. The machine starts with any control position in the control state s = SEEKUP. In each clock cycle, both the control position (hereinafter also simply referred to as position) and the control state are adapted. At the beginning, the position is increased until the condition for reliably finding a data bit stream is fulfilled. For these, the data of the four phase bit streams closest to the currently selected phase bit stream p were identical during the last period. This property is shown when the corresponding difference signals do not indicate a difference, that is to say that all four zero traps do not detect any 'O'-signal level of the difference signals. Under this condition, the automaton changes to the SYNC state and the data of the selected phase bit stream p are assumed to be correct. The condition that the four phase bit streams next to the current position p are identical is referred to below as (1; 1; 1; 1) p . For a given control position p, the properties of the next four phase bit streams are recorded by the following 4-tuple by evaluating the difference signals:
(TRAP(p - 1); TRAP(p); TRAP(p + 1 ); TRAP(p + 2))p (TRAP (p - 1); TRAP (p); TRAP (p + 1); TRAP (p + 2)) p
Das Tupel (1 ; 1 ; 1 ; 1 )p beispielsweise bedeutet, dass die Phasenbitströme SAMPLE(p- 2), SAMPLE(p-l ), SAMPLE(p), SAMPLE(p+1 ) und SAMPLE(p+2) alle während der letzten Periode von clk_s_i identische Daten hatten. Das Tupel (0; 1 ; 1 ; 1 )p zeigt an, dass in den Phasenbitströmen SAMPLE(p-2) und SAMPLE(p-l ) unterschiedliche Werte aufgetreten sind, diese also im Jitter-Bereich liegen.The tuple (1; 1; 1; 1) p, for example, means that the phase bit streams SAMPLE (p- 2), SAMPLE (pl), SAMPLE (p), SAMPLE (p + 1) and SAMPLE (p + 2) all during the last period of clk_s_i had identical data. The tuple (0; 1; 1; 1) p indicates that different values have occurred in the phase bit streams SAMPLE (p-2) and SAMPLE (pl), ie they are in the jitter range.
Der Automat ist unter der Bedingung (1 ; 1 ; 1 ; 1 )p im Kontrollzustand s = SYNC, und die Position bleibt konstant. Durch Wander oder die Veränderung des Jitterverhaltens ist diese Bedingung nicht mehr unbedingt erfüllt. Gilt beispielsweise (0; 1 ; 1 ; 1 )p , so wird die Position angepasst, da der ausgewählte Phasenbitstrom p recht nahe an einen potentiell fehlerhaften Phasenbitstrom liegt und in den Jitter-Bereich geraten könnte. In dieser Situation bleibt der Automat im Zustand s = SYNC, passt aber seine Position an (p → p + 1 ). Der Selector weicht sozusagen den fehlerhaften Phasenbitströmen aus. Dies ist in Figur 29 in einem Ausschnitt gezeigt.Under the condition (1; 1; 1; 1) p the machine is in the control state s = SYNC and the position remains constant. This condition is no longer necessarily fulfilled due to wandering or changes in jitter behavior. For example, if (0; 1; 1; 1) p applies, the position is adjusted because the selected phase bit stream p is quite close to a potentially faulty phase bit stream and could get into the jitter range. In this situation, the automat remains in the state s = SYNC, but adjusts its position (p → p + 1). The selector evades the faulty phase bit streams, so to speak. This is shown in a detail in FIG. 29.
Aus den aktuellen Werten dieses 4-Tupels wird mit einem Korrelationsmaß der Korrelationsvektor (mlp,mrp) des ausgewählten Phasenbitstromes p folgendermaßen berechnet: m/p = ((TRAP(p)+(TRAP(p)*TRAP(p-1 ))/2Using a correlation measure, the correlation vector (ml p , mr p ) of the selected phase bit stream p is calculated from the current values of this 4-tuple as follows: m / p = ((TRAP (p) + (TRAP (p) * TRAP (p-1)) / 2
mrp - ((TRAP(p+1 )+(TRAP(p+1 )*TRAP(p+2))/2mr p - ((TRAP (p + 1) + (TRAP (p + 1) * TRAP (p + 2)) / 2
Damit ergeben sich folgende Fälle:This results in the following cases:
(1 ;1;1 ;1 ) => m/p =1 und mrp =1(1; 1; 1; 1) => m / p = 1 and mr p = 1
(1 ;1;1 ;0) => m/p =1 und mrp =0.5(1; 1; 1; 0) => m / p = 1 and mr p = 0.5
(1 ;1;0;x) => m/p =1 und mrp =0(1; 1; 0; x) => m / p = 1 and mr p = 0
(0;1;1 ;1 ) => mlp =0.5 und mrp =1(0; 1; 1; 1) => ml p = 0.5 and mr p = 1
(x;0;1 ;1 ) => m/p =0 und mrp =1(x; 0; 1; 1) => m / p = 0 and mr p = 1
(0;1 ;1 ;0) => mlp =0.5 und mrp =0.5(0; 1; 1; 0) => ml p = 0.5 and mr p = 0.5
(x;0;0;y) => mlp =0 und mrp =0(x; 0; 0; y) => ml p = 0 and mr p = 0
wobei x und y für beliebige Werte 0 oder 1 stehen.where x and y stand for any values 0 or 1.
Die Anpassung der Auswahl eines Phasenbitstromes wird entsprechend dieses Korrelationsvektors vorgenommen. Gilt mlp<mrp , so findet eine Anpassung der Position nach rechts (p→ p+1 ) statt, gilt mlp>mrp , so findet eine Anpassung der Position nach links (p→ p-1 ) statt.The selection of a phase bit stream is adapted in accordance with this correlation vector. If ml p <mr p, the position is adjusted to the right (p → p + 1), if ml p > mr p , the position is adjusted to the left (p → p-1).
Auf diese Weise wird der ausgewählte Phasenbitstrom immer in einem sicheren Bereich gehalten. Der Selector hat sich auf einen Datenbitstrom einsynchronisiert und folgt diesem. Das funktioniert aber nur, wenn der Jitter-Bereich und der Wander nicht zu groß ist.In this way, the selected phase bit stream is always kept in a safe area. The selector has synchronized to a data bit stream and is following it. But this only works if the jitter area and the wander are not too large.
In drei Situationen kann diese Synchronisation verloren gehen. Dies ist der Fall, wenn der Wander zu stark ist, der Jitter einen zu großen Anteil an der Bitzeit hat, oder wenn der Datenbitstrom, auf den der Selector einsynchronisiert ist, aus dem durch die Phasenbitströme repräsentierten Bereich herausläuft. In jedem dieser Fälle geht der Automat in den Kontrollzustand s=LOST über und wird durch die Logik, die beide Selectoren koordiniert (Modul coordSelectors 14 in Figur 21 ) zurückgesetzt. Läuft der Datenbitstrom aus dem durch die Phasenbitströme repräsentierten Bereich heraus, so ist garantiert, dass der benachbarte Datenbitstrom von dem anderen Selector ausgewählt wird. In den beiden anderen Fällen ist das Datensignal signifikant schlechter geworden, so dass unter Umständen beide Selectoren in den Zustand s=LOST übergegangen sind. In diesem Fall treten Bitfehler auf und die ganze Schnittstelle wird zurückgesetzt, r da sich beide Selectoren auf jeweils einen neuen Datenbitstrom einsynchronisieren.This synchronization can be lost in three situations. This is the case if the wander is too strong, the jitter has too much of the bit time, or if the data bit stream to which the selector is synchronized runs out of the area represented by the phase bit streams. In each of these cases, the machine goes into the control state s = LOST and is reset by the logic that coordinates the two selectors (module coordSelectors 14 in FIG. 21). If the data bit stream runs out of the area represented by the phase bit streams, then it is guaranteed that the neighboring data bit stream is selected by the other selector becomes. In the other two cases, the data signal has become significantly worse, so that both selectors may have changed to the state s = LOST. In this case, bit errors occur and the entire interface is reset, since both selectors synchronize to a new data bit stream.
Die beiden Selectoren sind aufeinander abgestimmt, da sie immer auf direkt benachbarte Datenbitströme synchronisiert sind. Um diesen Zustand zu erreichen sind viele Varianten denkbar. In diesem Beispiel haben die zugehörigen Automaten die beiden Zustände SEEKNEXTUP und SEEKNEXTDOWN. Ist ein Automat auf einen Datenbitstrom einsynchronisiert und wird der andere Automat zurückgesetzt, so findet dieser den direkt benachbarten Datenbitstrom, der beispielsweise durch Phasenbitströme mit höherem Index repräsentiert ist, indem er im Kontrollzustand s=SEEKNEXTUP startet und die Kontrollposition des einsynchronisierten Automaten übernimmt. Der Kontrollzustand wird nun bei jedem Takt erhöht, bis er sich im Jitter-Bereich zum nächsten Datenbitstrom befindet. Dies wird durch die Bedingung (x^ 0; 0; x2)p festgestellt, wobei Xx. und x2 einen beliebigen Wert ('0' oder '1 ') repräsentiert, da hier der Korrelationsvektor den Wert (0,0) hat. Ist diese Bedingung erfüllt, so ist der Jitter-Bereich zum nächsten Datenbitstrom erkannt und der Automat geht in den Kontrollzustand SEEKUP über. Der nächste Phasenbitstrom, der die Bedingung (1 ; 1 ; 1 ; 1 )p erfüllt, wird gesucht, damit sich der Selector auf den direkt benachbarten Datenbitstrom einsynchronisieren kann und der Automat in den Zustand s=SYNC übergeht. Der Zustand SEEKNEXTDOWN wird entsprechend benötigt, wenn der benachbarte Datenbitstrom, der durch Phasenbitströme mit niedrigerem Index repräsentiert ist, gesucht wird.The two selectors are matched to one another, since they are always synchronized to directly adjacent data bit streams. Many variants are conceivable to achieve this state. In this example, the associated machines have the two states SEEKNEXTUP and SEEKNEXTDOWN. If one machine is synchronized to a data bit stream and the other machine is reset, it finds the directly adjacent data bit stream, which is represented, for example, by phase bit streams with a higher index by starting in the control state s = SEEKNEXTUP and taking over the control position of the synchronized machine. The control state is now increased with each clock until it is in the jitter area for the next data bit stream. This is determined by the condition (x ^ 0; 0; x 2 ) p , where Xx. and x 2 represents an arbitrary value ('0' or '1'), since here the correlation vector has the value (0.0). If this condition is met, the jitter area for the next data bit stream is recognized and the machine goes into the control state SEEKUP. The next phase bit stream that fulfills the condition (1; 1; 1; 1) p is sought so that the selector can synchronize with the directly adjacent data bit stream and the automaton changes to the state s = SYNC. The state SEEKNEXTDOWN is required accordingly if the neighboring data bit stream, which is represented by phase bit streams with a lower index, is sought.
Aufgabe der oben beschriebenen Auswertungseinheit ist es, den korrekten Datenstrom aus den Phasenbitströmen zu gewinnen. Als korrekt werden die Daten, die vom Sender übertragen wurden, angesehen. Da diese offenbar nicht bekannt sind, da sie ja sonst nicht übertragen werden müssten, sind sie anhand anderer ' Merkmale zu bestimmen. Die Interpretation des empfangenen Datensignals und damit auch der Phasenbitströme bestimmt im Bezug zu den übertragenen Daten die Übertragungsfehlerrate (bit error rate, BER). Nachfolgend wird die beschriebene Implementierung der Auswertungseinheit nochmals allgemeiner dargestellt.The task of the evaluation unit described above is to obtain the correct data stream from the phase bit streams. The data transmitted by the sender are considered correct. Since these are obviously not known, since they would otherwise not have to be transmitted, they are to be determined on the basis of other ' characteristics. The interpretation of the received data signal and thus also of the phase bit streams determines the bit error rate (BER) in relation to the transmitted data. In the following, the described implementation of the evaluation unit is presented in a more general manner.
Die Auswertungseinheit ist in zwei Taktbereiche aufgeteilt. Es wird ein erster Takt mit Periode T1 und synchron dazu ein zweiter Takt mit T2 = n T1 verwendet. Der Faktor n ist wählbar. Zunächst müssen Phasenbitströme erkannt werden, die im Jitterbereich liegen.The evaluation unit is divided into two cycle areas. A first cycle with period T1 and synchronously with it a second cycle with T2 = n T1 are used. The factor n is selectable. First, phase bit streams that are in the jitter range must be recognized.
Durch gegenseitigen Vergleich der Phasenbitströme wird festgestellt, welche Phasenbitströme zu welchen Datenbitströmen gehören. Die Phasenbitströme in der Nähe eines Überganges zwischen zwei benachbarten Datenbitströmen liegen im Jitterbereich. Durch den Vergleich von mindestens zwei ausgewählten Phasenbitströmen werden die Grenzen zwischen den Datenbitströmen erkannt, wenn ein Datensignalwechsel auftritt, also '10' oder '01' übertragen wird. Beispielsweise kann der Vergleich mit allen Paaren direkt benachbarter Phasenbitströme durchgeführt werden. Benachbarte Phasenbitströme, deren Werte unterschiedlich sind, liegen im Jitterbereich. Jeweils zwei benachbarte Phasenbitströme a und b werden mittels der logischen Verknüpfung, z.B. NXOR, miteinander verknüpft und damit festgestellt, ob deren Werte identisch sind. Es wird jeweils ein Differenzsignal c berechnet. Genau dann, wenn NXOR(a, b)=c=0 gilt, a und b also unterschiedliche Werte haben, liegen beide Phasenbitströme a und b im Jitterbereich.A mutual comparison of the phase bit streams determines which phase bit streams belong to which data bit streams. The phase bit streams near a transition between two adjacent data bit streams are in the jitter range. By comparing at least two selected phase bit streams, the boundaries between the data bit streams are recognized when a data signal change occurs, that is to say '10' or '01' is transmitted. For example, the comparison can be carried out with all pairs of directly adjacent phase bit streams. Adjacent phase bit streams whose values are different are in the jitter range. In each case two adjacent phase bit streams a and b are NXOR, linked together and thus determined whether their values are identical. A difference signal c is calculated in each case. Exactly when NXOR (a, b) = c = 0, a and b have different values, both phase bit streams a and b are in the jitter range.
Nun werden die Information aus dem vorangegangenen Schritt mit dem Ziel, sicherere Aussagen über die einzelnen Phasenbitströme machen zu können und die Information in den Taktbereich des zweiten Taktes zu übertragen, akkumuliert. Dieser Schritt ist optional, aber in vielen Fällen wünschenswert. Die Ergebnisse des Vergleichs aus dem ersten Schritt werden über die Zeit beobachtet und ggf. gewichtet. Synchron zu dem zweiten Takt werden Aussagen über die Zugehörigkeit von Phasenbitströmen zu Datenbitströmen und Phasenbitströmen im Jitterbereich gewonnen. Alle Phasenbitströme, die in einer bestimmten vergangenen Zeitspanne des vorangegangenen Schritts dem Jitterbereich zugeordnet wurden, werden dem Jitterbereich zugeordnet, alle anderen Phasenbitströme jeweils den entsprechenden Datenbitströmen. Die Datenbitströme werden von Jitterbereichen begrenzt. Diese Zuordnungen werden synchron zu dem zweiten Takt getroffen. Jedes Differenzsignal c aus dem vorangegangenen Schritt wird mit Hilfe einer sogenannten Nullfalle über eine Taktperiode des zweiten Takts beobachtet. Tritt in dieser Zeit c=0 auf, dann geht die Nullfalle vom initialen Zustand '1' in den Zustand '0' über. Synchron zu dem zweiten Takt werden alle Nullfallen ausgewertet und zurückgesetzt. Phasenbitströme, die Einfluss auf eine Nullfalle, die sich bei Auswertung im Zustand '0' befindet, haben, werden dem Jitterbereich zugeordnet. Anschließend erfolgt nun die Auswahl und Anpassung der Auswahl eines/mehrerer Phasenbitströme aufgrund der Information aus dem zweiten Schritt innerhalb des Taktbereiches des zweiten Takts. Entsprechend der Aussagen aus dem zweiten Schritt wird der Phasenbitstrom mit der geringsten Fehlerwahrscheinlichkeit ausgewählt und dessen Daten als empfangene korrekte Daten angenommen. Ein Mechanismus synchronisiert sich auf einen Datenbitstrom ein, indem er die Informationen aus dem zweiten Schritt nutzt. Die Daten dieses Datenbitstroms werden als korrekt angenommen. Kann dem Datenbitstrom nicht mehr gefolgt werden, so synchronisiert sich der Mechanismus auf einen anderen Datenbitstrom ein, dessen Daten nun als korrekt angenommen werden. Ein endlicher Automat synchronisiert sich auf einen Datenbitstrom ein, indem er die Jitterbereiche erkennt und seine Auswahl eines Phasenbitstroms innerhalb dieses Datenbitstroms in ausreichender Entfernung von diesen Jitterbereichen hält. Es werden dazu beispielsweise die 2n zum aktuell ausgewählten Phasenbitstrom nächsten Differenzsignale aus dem zweiten Schritt betrachtet, n auf jeder Seite. Wird an einer Seite ein Jitterbereich erkannt, so weicht der Automat mit seiner Auswahl zur anderen Seite aus. Kann die Auswahl nicht mehr angepasst werden, weil z.B. in der entsprechenden Richtung kein Phasenbitstrom mehr zu Verfügung steht, so sucht der Automat einen anderen Datenbitstrom, auf den er sich einsynchronisiert. Damit in der Zeitspanne, die der Automat benötigt, einen anderen Datenbitstrom zu finden, keine Daten verloren gehen, existiert ein zweiter identischer Automat, der auf einen anderen Datenbitstrom einsynchronisiert ist und die Phasenbitstrom-Auswahl übernehmen kann.Now the information from the previous step is accumulated with the aim of being able to make more reliable statements about the individual phase bit streams and to transmit the information into the clock area of the second clock. This step is optional, but is desirable in many cases. The results of the comparison from the first step are observed over time and weighted if necessary. In synchronism with the second clock, statements are made about the association of phase bit streams with data bit streams and phase bit streams in the jitter range. All phase bit streams that were assigned to the jitter area in a certain past time period of the previous step are assigned to the jitter area, all other phase bit streams each to the corresponding data bit streams. The data bit streams are limited by jitter areas. These assignments are made synchronously with the second bar. Each difference signal c from the previous step is observed with the help of a so-called zero trap over a clock period of the second clock. If c = 0 occurs during this time, the zero trap changes from the initial state '1' to the state '0'. All zero traps are evaluated and reset in synchronism with the second cycle. Phase bit streams that have an influence on a zero trap, which is in state '0' when evaluated, are assigned to the jitter range. The selection and adaptation of the selection of one or more phase bit streams then takes place on the basis of the information from the second step within the clock range of the second clock. In accordance with the statements from the second step, the phase bit stream with the lowest probability of error is selected and its data accepted as correct data received. A mechanism synchronizes itself to a data bit stream by using the information from the second step. The data of this data bit stream are assumed to be correct. If the data bit stream can no longer be followed, the mechanism synchronizes itself to another data bit stream, the data of which are now assumed to be correct. A finite state machine synchronizes itself to a data bit stream by recognizing the jitter areas and keeping its selection of a phase bit stream within this data bit stream at a sufficient distance from these jitter areas. For this purpose, the 2 n difference signals from the second step closest to the currently selected phase bit stream are considered, n on each side. If a jitter area is detected on one side, the automaton dodges its selection to the other side. If the selection can no longer be adjusted because, for example, there is no longer any phase bit stream available in the corresponding direction, the machine searches for a different data bit stream to which it synchronizes. So that no data is lost in the period of time that the automaton needs to find another data bit stream, there is a second identical automaton that is synchronized to another data bit stream and can take over the phase bit stream selection.
Figur 30 zeigt eine alternative Ausgestaltung zur Implementierung der Abtasteinheit. Während bei der in den Figuren 13, 15 und 17 gezeigten Ausgestaltung die Verzögerungselemente 10 seriell angeordnet sind und im wesentlichen eine gleich große Verzögerungszeit aufweisen, sind bei dieser Ausgestaltung die Verzögerungselemente 10' parallel angeordnet und weisen unterschiedlichen Verzögerungszeiten auf. Diese Verzögerungszeiten sind jedoch alle kleiner als die Taktperiode des Empfängertaktsignals dataj und entsprechen jeweils einem Vielfachen der kleinsten Verzögerungszeit eines der Verzögerungselemente 10. Diese Ausgestaltung kann sowohl in der in Figur 13 gezeigten Konstellation, also zur Erzeugung mehrerer phasenverschobener Empfängertaktphasen CKP(0..N-1) aus dem Empfängertaktsignal clk_fj, oder in der in Figur 15 gezeigten Konstellation, also zur Erzeugung mehrerer phasenverschobener Daten- signalphasen RAW(0..N-1 ) aus dem Eingangsdatensignal dataj, verwendet werden. Figur 31 zeigt eine weitere Ausgestaltung zur Implementierung der Abtasteinheit durch Kombination von parallel angeordneten Verzögerungselementen 10' mit unterschiedlichen Verzögerungszeiten und seriell angeordneten Verzögerungselementen 10 mit identischen Verzögerungszeiten. Dadurch kann die Verzögerungskette kurz gehalten und trotzdem ein weiter Phasenbereich abgedeckt werden. Die Kombination der Parallelschaltung der Verzögerungselemente 10' mit den seriell angeordneten Verzögerungselementen 10 kann dabei bei Bedarf dynamisch angepasst werden. Eine solche Anpassung kann, wie in der Figur 31 angedeutet, beispielsweise in der Auswerteeinheit 7 durch Eigenschaften der Phasenbitströme bestimmt werden. Auch diese Ausgestaltung kann zur Erzeugung mehrerer Empfängertaktphasen oder Datensignalpha- sen verwendet werden, vermeidet aber nach wie vor das Problem Timing-kritischer Pfade. Über dieses Beispiel hinaus können seriell und parallel angeordnete Verzögerungselemente in verschiedenster Art und Weise kombiniert werden, um die Signale zu erzeugen, mittels derer die Phasenbitströme gewonnen werden.FIG. 30 shows an alternative embodiment for implementing the scanning unit. While in the embodiment shown in FIGS. 13, 15 and 17 the delay elements 10 are arranged in series and have essentially the same delay time, in this embodiment the delay elements 10 'are arranged in parallel and have different delay times. However, these delay times are all shorter than the clock period of the receiver clock signal dataj and each correspond to a multiple of the smallest delay time of one of the delay elements 10. This configuration can be used both in the constellation shown in FIG. 1) from the receiver clock signal clk_fj, or in the constellation shown in FIG. 15, that is to say to generate a plurality of phase-shifted data signal phases RAW (0..N-1) from the input data signal dataj. FIG. 31 shows a further embodiment for implementing the scanning unit by combining delay elements 10 ′ arranged in parallel with different delay times and delay elements 10 arranged in series with identical delay times. This allows the delay chain to be kept short while still covering a wide phase range. The combination of the parallel connection of the delay elements 10 'with the serially arranged delay elements 10 can be dynamically adapted if necessary. Such an adaptation, as indicated in FIG. 31, can be determined, for example, in the evaluation unit 7 by properties of the phase bit streams. This configuration can also be used to generate a plurality of receiver clock phases or data signal phases, but still avoids the problem of timing-critical paths. In addition to this example, delay elements arranged in series and in parallel can be combined in a wide variety of ways in order to generate the signals by means of which the phase bit streams are obtained.
Figur 32 zeigt ein Blockschaltbild einer weiteren Ausgestaltung der erfindungsgemäßen, bereits in Fig. 21 gezeigten Auswerteeinheit, wobei Details hinsichtlich der gleichzeitigen Extraktion von mehreren Bits aus dem Datensignal erkennbar sind. Dabei sind in der Auswerteeinheit mehrere Auswahleinheiten (Selectoren) 15' vorgesehen, wobei die Selectoren 15' von der Auswertesteuereinheit 14' gesteuert werden. Jeder Selector 15' weist dann wieder eine in den Figuren 26 und 27 gezeigte Trajektorie auf. Je nach Datenrate und Empfängertakt können mehrere Datenbits gleichzeitig pro Periode des Empfängertaktsignals extrahiert und damit die Übertragungsrate gesteigert oder die Empfängertaktrate gesenkt werden.FIG. 32 shows a block diagram of a further embodiment of the evaluation unit according to the invention, already shown in FIG. 21, details regarding the simultaneous extraction of several bits from the data signal being recognizable. A plurality of selection units (selectors) 15 'are provided in the evaluation unit, the selectors 15' being controlled by the evaluation control unit 14 '. Each selector 15 'then again has a trajectory shown in FIGS. 26 and 27. Depending on the data rate and receiver clock, several data bits can be extracted simultaneously per period of the receiver clock signal, thereby increasing the transmission rate or reducing the receiver clock rate.
Die erfindungsgemäße Schaltungsanordnung kann als Teilschaltung in einer integrierten Schaltung zur Übtragung digitaler Daten (mit z.B. einer Taktrate von über 500MHz) verwendet werden. Die wesentliche Idee beruht auf einer vielphasigen Überabtastung der Daten in verschiedene Phasenbitströme und anschließenden Auswertung, insbesondere durch Auswahl des richtigen Phasenbitstroms. Dieser Schaltungsvorschlag stellt eine andere Lösung des bekannten Datenübertragungsproblems bei hohen Datenraten dar. Der Vorteil dieses Schaltungsvorschlags ist eine einfachere Implementierung auf dem IC, da ein Semicustom Design Flow verwendet werden kann, falls dies gewünscht wird. The circuit arrangement according to the invention can be used as a subcircuit in an integrated circuit for the transmission of digital data (e.g. with a clock rate of over 500 MHz). The main idea is based on multi-phase oversampling of the data into different phase bit streams and subsequent evaluation, in particular by selecting the correct phase bit stream. This circuit proposal represents another solution to the known data transmission problem at high data rates. The advantage of this circuit proposal is a simpler implementation on the IC, since a semi-custom design flow can be used if desired.

Claims

Ansprüche Expectations
1. Schaltungsanordnuπg zur Extraktion von Daten aus einem seriellen Datensignal für eine hochbitratige Übertragung der Daten zwischen oder innerhalb von integrierten Schaltungen mit1. Circuit arrangement for extracting data from a serial data signal for high bit rate transmission of data between or within integrated circuits
- einer ungeregelten Abtasteinheit zur mehrfachen Abtastung des Datensignals innerhalb einer Taktperiode eines Empfängertaktsignals zur Erzeugung mehrerer zum Empfängertakt synchroner Phasenbitströme, undan uncontrolled sampling unit for multiple sampling of the data signal within a clock period of a receiver clock signal for generating a plurality of phase bit streams synchronous with the receiver clock, and
- einer Auswerteeinheit zur Bestimmung einer bestmöglich mit den Daten des Datensignals übereinstimmenden Datenfolge durch Auswertung von Korrelationseigenschaften der erzeugten synchronen Phasenbitströme und zur Ausgabe der Datenfolge.- An evaluation unit for determining a data sequence that best matches the data of the data signal by evaluating correlation properties of the generated synchronous phase bit streams and for outputting the data sequence.
2. Schaltungsanordnung nach Anspruch 1 , dadurch gekennzeichnet, dass die Abtasteinheit zur mehrfachen Abtastung des Datensignals mittels eines einzigen der Abtasteinheit zugeführten Empfängertaktsignals ausgestaltet ist.2. Circuit arrangement according to claim 1, characterized in that the sampling unit is designed for multiple sampling of the data signal by means of a single receiver clock signal supplied to the sampling unit.
3. Schaltungsanordnung nach Anspruch 1 , dadurch gekennzeichnet, dass die Abtasteinheit zur mehrfachen parallelen Abtastung verschiedener Phasen des Datensignals innerhalb einer Taktperiode des Empfängertaktsignals zur Erzeugung der Phasenbitströme ausgestaltet ist.3. Circuit arrangement according to claim 1, characterized in that the sampling unit is designed for multiple parallel sampling of different phases of the data signal within a clock period of the receiver clock signal for generating the phase bit streams.
4. Schaltungsanordnung nach Anspruch 3, dadurch gekennzeichnet, dass die Abtasteinheit mehrere in Serie angeordnete Verzögerungselemente mit einer im wesentlichen identischen Verzögerungszeit, die kleiner als die Taktperiode des Empfängertaktsignals ist, und/oder mehrere parallel angeordnete Verzögerungselement mit unterschiedlichen Verzögerungszeiten, die kleiner als die Taktperiode des Empfängertaktsignals sind, zur Erzeugung mehrerer phasenverschobener Datensignalphasen zwischen den Verzögerungselementen aus dem empfangenen Datensignal und Mittel zur parallelen Abtastung der phasenverschobenen Datensignale mit dem Empfängertakt aufweist. 4. Circuit arrangement according to claim 3, characterized in that the scanning unit has a plurality of delay elements arranged in series with an essentially identical delay time which is less than the clock period of the receiver clock signal, and / or a plurality of delay elements arranged in parallel with different delay times which are less than the clock period of the receiver clock signal for generating a plurality of phase-shifted data signal phases between the delay elements from the received data signal and means for parallel sampling of the phase-shifted data signals with the receiver clock.
5. Schaltungsanordnung nach Anspruch 1 , dadurch gekennzeichnet, dass die Abtasteinheit zur mehrfachen phasenverschobenen Abtastung des Datensignals innerhalb einer Taktperiode des Empfängertaktsignals zur Erzeugung der Phasenbitströme ausgestaltet ist.5. Circuit arrangement according to claim 1, characterized in that the sampling unit is designed for multiple phase-shifted sampling of the data signal within a clock period of the receiver clock signal for generating the phase bit streams.
6. Schaltungsanordnung nach Anspruch 5, dadurch gekennzeichnet, dass die Abtasteinheit mehrere in Serie angeordnete Verzögerungselemente mit einer im wesentlichen identischen Verzögerungszeit, die kleiner als die Taktperiode des Empfängertaktsignals ist, und/oder mehrere parallel angeordnete Verzögerungselement mit unterschiedlichen Verzögerungszeiten, die kleiner als die Taktperiode des Empfängertaktsignals sind, zur Erzeugung mehrerer phasenverschobener Taktphasen zwischen den Verzögerungselementen aus dem Empfängertaktsignal und Mittel zur phasenverschobenen Abtastung des empfangenen Datensignals mit den Taktphasen aufweist.6. Circuit arrangement according to claim 5, characterized in that the scanning unit has a plurality of delay elements arranged in series with an essentially identical delay time which is less than the clock period of the receiver clock signal, and / or a plurality of delay elements arranged in parallel with different delay times which are less than the clock period of the receiver clock signal, for generating a plurality of phase-shifted clock phases between the delay elements from the receiver clock signal and means for phase-shifted sampling of the received data signal with the clock phases.
7. Schaltungsanordnung nach Anspruch 4 oder 6, dadurch gekennzeichnet, dass die Verzögerungselemente ungeregelt, insbesondere ohne Mittel zur Einstellung der Verzögerungszeit, ausgestaltet sind.7. Circuit arrangement according to claim 4 or 6, characterized in that the delay elements are unregulated, in particular without means for setting the delay time, are designed.
.,
8. Schaltungsanordnung nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass die Auswerteeinheit zur Bestimmung der Datenfolge aus mindestens zwei Phasenbitströmen, insbesondere zwei benachbarten Phasenbitströmen, ausgestaltet ist.8. Circuit arrangement according to one of the preceding claims, characterized in that the evaluation unit is designed to determine the data sequence from at least two phase bit streams, in particular two adjacent phase bit streams.
9. Schaltungsanordnung nach Anspruch 8, dadurch gekennzeichnet, dass die Auswerteeinheit mindestens eine Auswahleinheit zur Auswahl eines bestmöglich mit den Daten des empfangenen Datensignals übereinstimmenden Phasenbitstroms durch Auswertung der Korrelationseigenschaften, insbesondere durch gegenseitigen Vergleich der erzeugten Phasenbitströme, aufweist.9. Circuit arrangement according to claim 8, characterized in that the evaluation unit has at least one selection unit for selecting a phase bit stream which best matches the data of the received data signal by evaluating the correlation properties, in particular by comparing the generated phase bit streams.
10. Schaltungsanordnung nach Anspruch 9, dadurch gekennzeichnet, dass die Auswerteeinheit mehrere Auswahleinheiten und eine Auswertungssteuereinheit zur Koordinierung der Auswahleinheiten und zur Bestimmung der extrahierten Datenfolge aus den Phasenbitströmen aufweist. 10. The circuit arrangement as claimed in claim 9, characterized in that the evaluation unit has a plurality of selection units and an evaluation control unit for coordinating the selection units and for determining the extracted data sequence from the phase bit streams.
1 1. Schaltungsanordnung nach einem der Ansprüche 7 bis 10, dadurch gekennzeichnet, dass die mindestens eine Auswahleinheit eine Differenzbildungseinheit zur Bildung mindestens eines Differenzsignals zwischen mindestens zwei Phasenbitströmen zur Prüfung der Korrelation der Phasenbitströme aufweist.1 1. Circuit arrangement according to one of claims 7 to 10, characterized in that the at least one selection unit has a difference formation unit for forming at least one difference signal between at least two phase bit streams for checking the correlation of the phase bit streams.
12. Schaltungsanordnung nach Anspruch 11 , dadurch gekennzeichnet, dass die Differenzbildungseinheit zur Bildung von Differenzsignalen zwischen jeweils zwei benachbarte Phasenbitströmen ausgestaltet ist.12. Circuit arrangement according to claim 11, characterized in that the difference formation unit is designed to form difference signals between two adjacent phase bit streams.
13. Schaltungsanordnung nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass die mindestens eine Auswahleinheit eine Detektions- einheit zur Bestimmung der Korrelationseigenschaften über einen vorgegebenen Zeitraum und zur Erzeugung eines Korrelationssignals aufweist.13. Circuit arrangement according to one of the preceding claims, characterized in that the at least one selection unit has a detection unit for determining the correlation properties over a predetermined period of time and for generating a correlation signal.
14. Schaltungsanordnung nach einem der Ansprüche 11 bis 13, dadurch gekennzeichnet, dass die mindestens eine Auswahleinheit zur Anpassung der Auswahl eines Phasenbitstromes durch Auswertung der Korrelationssignale oder der Korrelationseigenschaften in regelmäßigen Zeitabständen ausgestaltet ist.14. Circuit arrangement according to one of claims 11 to 13, characterized in that the at least one selection unit is designed to adapt the selection of a phase bit stream by evaluating the correlation signals or the correlation properties at regular time intervals.
15. Schaltungsanordnung nach Anspruch 10, dadurch gekennzeichnet, dass die Auswertuπgssteuereinheit zur Koordinierung der Auswahleinheiten und zur lückenlosen Extraktion der Datenfolge durch Auswertung mindestens eines von einer Auswahleinheit ausgewählten Phasenbitstromes ausgestaltet ist.15. Circuit arrangement according to claim 10, characterized in that the evaluation control unit is designed to coordinate the selection units and to seamlessly extract the data sequence by evaluating at least one phase bit stream selected by a selection unit.
16. Schaltungsanordnung nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass die Schaltungsanordnung mittels Zellen einer Standardzellbibliothek eines Semicustom Design Flows ausgestaltet ist.16. Circuit arrangement according to one of the preceding claims, characterized in that the circuit arrangement is designed by means of cells from a standard cell library of a semicustom design flow.
17. Schaltungsanordnung nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass die Schaltungsanordnung mittel eines Semicustom Design Flows implementiert ist. 17. Circuit arrangement according to one of the preceding claims, characterized in that the circuit arrangement is implemented by means of a semicustom design flow.
18. Schaltungsanordnung nach Anspruch 16, dadurch gekennzeichnet, dass die Platzierung von Zellen der Standardzellbibliothek, vorzugsweise von Elementen der Abtasteinheit, insbesondere von Verzögerungselementen, durch manuelle Beeinflussung ausgestaltet ist.18. Circuit arrangement according to claim 16, characterized in that the placement of cells of the standard cell library, preferably elements of the scanning unit, in particular delay elements, is designed by manual influencing.
19. Schaltungsanordnung nach Anspruch 7, dadurch gekennzeichnet, dass die Anzahl der Verzögerungselemente und/oder die Verzögerungszeiten der Verzögerungselemente derart gewählt wird, dass die Summe der Verzögerungszeiten aller Verzögerungselemente mindestens so groß ist wie die Taktperiode des Datensignals.19. Circuit arrangement according to claim 7, characterized in that the number of delay elements and / or the delay times of the delay elements is selected such that the sum of the delay times of all delay elements is at least as large as the clock period of the data signal.
20. Verfahren zur Extraktion von Daten aus einem seriellen Datensignal für eine hochbitratige Übertragung der Daten zwischen oder innerhalb von integrierten Schaltungen mit den Schritten:20. A method for extracting data from a serial data signal for high-bit-rate transmission of data between or within integrated circuits, comprising the steps:
- mehrfache ungeregelte Abtastung des Datensignals innerhalb einer Taktperiode eines Empfängertaktsignals zur Erzeugung mehrerer zum Empfängertakt synchroner Phasenbitströme,multiple unregulated sampling of the data signal within one clock period of a receiver clock signal to generate a plurality of phase bit streams synchronous with the receiver clock,
- Bestimmung einer bestmöglich mit den Daten des Datensignal übereinstimmenden Datenfolge durch Auswertung von Korrelationseigenschaften der erzeugten synchronen Phasenbitströme und- Determination of a data sequence that best matches the data of the data signal by evaluating correlation properties of the generated synchronous phase bit streams and
- Ausgabe der Datenfolge. - Output of the data sequence.
PCT/EP2003/012390 2002-11-08 2003-11-06 Circuit and method for high speed data transfer WO2004042994A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2003286154A AU2003286154A1 (en) 2002-11-08 2003-11-06 Circuit and method for high speed data transfer

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE2002151950 DE10251950A1 (en) 2002-11-08 2002-11-08 Circuit for extracting data from serial data signal for high bit-rate transmission between or within integrated circuits, determines best fit of data sequence matching data signal received by evaluating correlation characteristics
DE10251950.1 2002-11-08

Publications (1)

Publication Number Publication Date
WO2004042994A1 true WO2004042994A1 (en) 2004-05-21

Family

ID=32115373

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2003/012390 WO2004042994A1 (en) 2002-11-08 2003-11-06 Circuit and method for high speed data transfer

Country Status (3)

Country Link
AU (1) AU2003286154A1 (en)
DE (1) DE10251950A1 (en)
WO (1) WO2004042994A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0418641A2 (en) * 1989-09-19 1991-03-27 Siemens Aktiengesellschaft A synchronization device for a digital signal
EP0673132A2 (en) * 1994-03-17 1995-09-20 Fujitsu Limited Clocking converter for asynchronous data
EP0738057A2 (en) * 1995-04-12 1996-10-16 Siemens Aktiengesellschaft Method and device for bit synchronisation
US5822386A (en) * 1995-11-29 1998-10-13 Lucent Technologies Inc. Phase recovery circuit for high speed and high density applications

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4821297A (en) * 1987-11-19 1989-04-11 American Telephone And Telegraph Company, At&T Bell Laboratories Digital phase locked loop clock recovery scheme
DE58903075D1 (en) * 1988-04-29 1993-02-04 Siemens Ag METHOD AND ARRANGEMENT FOR RECOVERY OF THE CLOCK FROM A DATA SIGNAL BY CONTINUOUSLY ADAPTING A LOCALLY GENERATED CLOCK TO A DATA SIGNAL.
EP0390958A1 (en) * 1989-04-07 1990-10-10 Siemens Aktiengesellschaft Method and circuit for the regeneration of the data clock for data signals
FR2704376B1 (en) * 1993-04-22 1995-06-30 Rainard Jean Luc Method for clock recovery and synchronization for the reception of information transmitted by an ATM network and device for implementing the method.
US5671258A (en) * 1994-12-20 1997-09-23 3Com Corporation Clock recovery circuit and receiver using same
JP3189774B2 (en) * 1998-01-28 2001-07-16 日本電気株式会社 Bit synchronization circuit
JP3109588B2 (en) * 1998-03-12 2000-11-20 日本電気株式会社 Oversampling type clock recovery circuit
US6122335A (en) * 1999-10-01 2000-09-19 Quantum Bridge Communications, Inc. Method and apparatus for fast burst mode data recovery

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0418641A2 (en) * 1989-09-19 1991-03-27 Siemens Aktiengesellschaft A synchronization device for a digital signal
EP0673132A2 (en) * 1994-03-17 1995-09-20 Fujitsu Limited Clocking converter for asynchronous data
EP0738057A2 (en) * 1995-04-12 1996-10-16 Siemens Aktiengesellschaft Method and device for bit synchronisation
US5822386A (en) * 1995-11-29 1998-10-13 Lucent Technologies Inc. Phase recovery circuit for high speed and high density applications

Also Published As

Publication number Publication date
AU2003286154A1 (en) 2004-06-07
DE10251950A1 (en) 2004-05-19

Similar Documents

Publication Publication Date Title
DE602004004533T2 (en) PHASE MIXING WITH DELAYED CONTROL CIRCUIT
DE60003378T2 (en) SYSTEM AND METHOD FOR GENERATING SLAVE CLOCK SIGNALS FOR SYNCHRONOUS DATA TRANSMISSION NETWORKS
DE69633539T2 (en) Clock distribution circuit
DE10014477B4 (en) Method and system for synchronizing multiple subsystems using a voltage controlled oscillator
DE112007000758B4 (en) Data signal generating device #
EP0389662B1 (en) Method for the phase synchronization of the signals of two clock generators in communication networks
DE102007030117B4 (en) Programmable delay for clock phase error correction
DE69737903T2 (en) Method and device for interference-free switching between redundant signals
DE10330796A1 (en) Register controlled delay locked loop with acceleration mode
DE69734954T2 (en) Method and apparatus for phasing digital time signals, e.g. a clock signal and a data stream
DE102012205315A1 (en) Fast Lock Clock Data Recovery for Live Steps
DE19849779C2 (en) Clock generator and clock generation method capable of changing a clock frequency without increasing the number of delay elements
DE19531962A1 (en) Clock signal distribution circuit for semiconductor implementation
DE60211244T2 (en) Semiconductor device
DE10312261A1 (en) Delay control loop having a variable voltage regulator
DE102005024648A1 (en) Electrical circuit for measuring times and method for measuring times
DE19625185C2 (en) Precision clock
DE10243765A1 (en) Semiconductor device with delay correction function
DE10039898B4 (en) Clock generating device and method for generating clock signals
DE10310065B4 (en) Method and apparatus for a delay lock loop
DE10138883B4 (en) Method and device for synchronous signal transmission between logic / memory modules
DE10312260A1 (en) Delay locked loop, which has an edge detector and a fixed delay
WO2004042994A1 (en) Circuit and method for high speed data transfer
EP1094610A1 (en) Digital phase-locked loop
DE69531810T2 (en) Method of sampling a serial digital signal

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP