• No results found

RELIABLE DATA SYNCHRONIZATION IN GALS’ SOC

N/A
N/A
Protected

Academic year: 2020

Share "RELIABLE DATA SYNCHRONIZATION IN GALS’ SOC"

Copied!
6
0
0

Loading.... (view fulltext now)

Full text

(1)

RELIABLE DATA SYNCHRONIZATION

IN GALS’ SOC

VIVEK E. KHETADE

Assistant Professor, Department of Electronic Design Technology Shri Ramdeobaba College of Engineering & Management, Rashtrasant Tukdoji Maharaj Nagpur university Nagpur, India

[email protected]

DR. S. S. LIMAYE

Professor, Department of electronics engineering, Jhulelal Institute of Technology

Rashtrasant Tukdoji Maharaj Nagpur university Nagpur, India [email protected]

Abstract

Synchronizer used for data synchronization posses non-zero probability of failure in Globally Asynchronous Locally synchronous System on Chip. It plays very crucial role in determining the reliability of system. Synchronizer is susceptible to metastability if asynchronous data changes in setup and hold time window. The output of synchronizer is indeterminate .This risk must be mitigated. In this paper structure of synchronizer is proposed for improved reliability. It determines change of data in the metastability window with signal setup start (SS) and hold end(HE) . To receive synchronised data, it samples synchronizer which is placed in parallel with operating synchronizer .This parallel placed synchronizer receives delayed data. This proposed architecture is modelled with VHDL and simulated with ModelSim SE6.2C for functional correctness. Asynchronous data rate is generated at varying frequency .MTBF is improved substantially with the increase penalty of one cycle.

KEYWORDS:

Data synchronisation, Globally Asynchronous Locally synchronous synchronizer (GALS), metastability, SOC.

1. Introduction

Data synchronization is required for transferring the data from one clock domain into another clock domain or when asynchronous data enters into synchronous clock domain on the same chip .This synchronization is performed by synchronizer. System-on-chip that consists of multiple clock domain connected through asynchronous interconnect are called globally asynchronous and locally synchronous Network-on chip (GALS-NOC). Frequency and phase of each synchronous module (IP core) is independent. Number of synchronizer is proportional to number of clock domain. Synchronizer is the gateway through which asynchronous input enter synchronous domain. Reliability of synchronizer is crucial for the reliability of SOC. When the data violates setup and hold constraints of the synchronizer, then it enters in to Metastable state, where we are unable to determine the state of output i.e. zero or one. Reliability of synchronizer is estimated based on probability that it enter into metastability and time to exit from metastability. Mean time between failures [1] for the two flip-flop synchronizer is expressed as

Failure (t) ≡ the synchronizer that became metastable at time 0 is still metastable at time t.W ≡ Danger window during a clock cycle: If the input data to a synchronizer changes during W, then the synchronizer is assumed to become metastable. FC ≡ sampling clock frequency T ≡ sampling clock cycle time. FD ≡ Frequency of changes in the input data. τ ≡ Resolution time constant of the synchronizer. This synchroniser is proved quite safe under some assumption

 

(2)

But there exist nonzero probability of occurrence of change of data in metastability window. Reliability of synchronizer depends on data rate, frequency of operation of synchronizer and performance parameter of synchronizer such as setup and hold window. These performance parameters are deteriorating with technology scaling, process, and voltage variation.

Various synchronizers are proposed over the decade Two flip-flop synchronizer (conventional), Jamb-Latch synchronizer, cascaded Flip-flop synchronizer, robust latch synchronizer, wagging synchronizer[2][3][4]. Various technique for data synchronization has been implemented which played with clock i.e. Pausible clock, stretchable clock ,data driven clock to make reliable data transfer across clock domain[5][6][7].Here we are suggested mechanism for metastability free data transfer where if data changes in window, then don’t sample the output of synchronizer rather delay the data and then sampled the parallel placed synchronizer. This work is little similar with data delay adaptive synchronizer [4] .This paper proposes the structure for metastability free data synchronization and its analysis. Paper is organised as follows. In section 2 principal of proposed architecture of delayed data synchronisation is explained with help of block representation. In section3 black box representation of synchronizer controller along with its hardware realisation is presented. Simulation and result analysis is discussed in section 4. Conclusion and Reference are given in section 5 and 6 respectively.

2.Proposed Architecture of delayed Data synchronisation

2 .1 Principal of operation with Block Representation

When data changes in the metastability window (sum of setup and hold time) with respect to the clock edge, then asynchronous data is not entered correctly in clock domain through synchronizer .The output of synchronizer may be unpredictable, it can be in the middle of zero and one. The effort is made to delay the data rather than any other parameter in clock domain. If the data changes in the metastability window then the output of synchronizer1a will not be taken in system, rather delayed data and synchronizer 1b will be taken. In this system, clock period is needs to be exactly calculated at input synchronizer. When clock edge is detected, delay of setup time and hold time for next clock cycle can be derived. Metastability window begin with start of setup time and ends with end of hold time shown in fig 2. The signal ‘ss’ is indicating the beginning of metastability window and the signal ‘HE’ indicates the end of metastability window. Whenever signal ‘ss’ becomes high, data change detection block will poll for the data change and continue till signal ‘HE’ is high. If in between the data changes then data change detection block will generate control signal. This control signal is used as select line of mux .Data will gets delayed by delay Tw and then sampled by synchronizer 1b. Data will be appearing correctly at synchronizer1b whereas synchroniser 1a will enter in metastability .It will not be selected by mux.

Data change detection is achieved with simple xoring of data. This pulse of data change is combined with ‘SS’ and ‘HE’ pulse to select the mux input line. Here we have assumed that synchronizer1a‘s output is indeterminate once the data changes in window. Synchronizer 1b received the data with delay of ‘Tw’ and naturally data will not change in the window. It will sample the data at next clock edge and we will get the synchronised data. This representation is shown in more explored way in fig 3 and waveform with their timing relation is given fig 5.

   

(3)

3. Synchronizer controller

The black box representation of the synchroniser controller is shown in fig 4 It is represented with one input i.e.clk and two output setup start (SS) and hold end (HE) with respect to rising edge of clock. With the predetermined delay, we are able to estimate the setup start and hold end for the next clock cycle. Setup time and hold time of the synchronizer is fixed once we selected the technology specific synchronizer.

3.1Hardware Realisation of synchronizer controller

Synchronizer selection controller consists of Monoshot, Predetermined delay su and su+he, phase detector, shift register, encoder and delay line as shown in Fig 6. Monoshot is used to extend pulse width of the clock period up to setup start of the next clock edge. Predetermined delay su and su+he will offer the delay equal to delay of setup time and (setup + hold) time of synchronizer. Phase detector compares the phases of reference input clock and delay output. Comparisons yields a signal proportional to phase error i.e. pump up(pu) and pump down(pd) .These signals are connected to shift left(sl) and shift right(sr) of shift register. Shift register is loaded with one bit high. This bit is shifted left or right depending on phase error. Encoder will encode the output of synchronizer. Encoder ouput is used to select the delay from delay line. As long as there phase error, delay is adjusted. Once the phase error becomes zero, delay will get lock.

3.1.1 Monoshot & Delay line

Monoshot is used to increase pulse width of clock signal up to setup time of next clock cycle. This width is set with the help of delay line. This is connected to the clr pin of flip-flop as shown in fig 7. Fig 8 describes the implementation of Delay line [8] using multiplexer and delay element i.e. buffer .It offers the delay of 2nsec to 5nsec. This is implemented as Icells in altera PLD devices which provides delay of 1.5nsec.The minimal delay is achieved by select line of multiplexer i.e. when select lines are “0000”.The maximum delay is achieved when select lines of multiplexer are “1111”.

Fig 4 Black box representation of controller

Fig 6 Circuit diagram for synchronizer controller

(4)

3.1.2 Phase detector

Phase detector received the input from clock and output of predetermined delay su. It compares their phase and generates the phase error signal as shown in Fig 9 and Fig 10. When both signals are aligned then there will not be any error signal. Delay of delay line is adjusted automatically so that there will no phase error. Phase detector is constructed with flipflop and NAND gates as shown in fig the clock of one of the flip-flop is drive through clock of local generator and clock of another flip-flop is derived from signal P2

4. Simulations and Result Analysis

System is model in VHDL and simulated on Modelsim 6.2C .C lock frequency is consider for simulation is 10 MHz. Setup and hold window is considered as 20nsec i.e. 10 ns for setup and 10ns for hold. In the waveform Fig. 11 it has been observed that select line is generating if the data changes in the metastability window and synchronised data appears at next clock cycle.

Data rate faced by synchronizer is depends on application behaviour. One synchronizer may take data from many clock domains with different data rate. Average data rate appearing at the input synchronizer affects the performance. Modelling of data rate gives us clear cut picture of arrival rate at synchronizer. It is as good as modelling of environment for synchronizer. It helps us in estimating constraints on synchronizer.

Here we are modelling the data rate for the conventional synchronizer and proposed architecture of synchronizer. This consists of random number generator, parametric delay of steps of 4ns and counter which is connected to select line of MUX to modulate the data rate. The frequency of Clk1 is set for 25MHz and

  Fig 8. Delay Line

Fig.9 Phase Detector

   

  Fig 7. Monoshot Circuit

0 . 0 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 0 . 6 0 . 7 0 . 8 0 . 9 1 . 0

T im e (u s ) 0 . 0

0 . 5 1 . 0 1 . 5 2 . 0 2 . 5 3 . 0

Vo lt a ge ( V )

v ( N_4 ) pha s e_ det

0 . 0 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 0 . 6 0 . 7 0 . 8 0 . 9 1 . 0

T im e (u s ) 0 . 0

0 . 5 1 . 0 1 . 5 2 . 0 2 . 5 3 . 0

Vo lta g e ( V )

v ( N_5 )

pha s e_ det

0 . 0 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 0 . 6 0 . 7 0 . 8 0 . 9 1 . 0

T im e (u s ) 0 . 0

0 . 5 1 . 0 1 . 5 2 . 0 2 . 5 3 . 0

V ol ta ge ( V )

v ( O u t 2)

pha s e_ det

0 . 0 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 0 . 6 0 . 7 0 . 8 0 . 9 1 . 0

T im e (u s ) 0 . 0

0 . 5 1 . 0 1 . 5 2 . 0 2 . 5 3 . 0

V ol ta ge ( V )

v ( O u t 1)

pha s e_ det

 

Fig.10 Simulation of phase detector

(5)

frequency of the synchroniser block is set at clk3=40MHz.The frequency of Clk2 is varied from 20MHz to 1GHz.

Mean time between failures of synchronizer depends on the data rate of asynchronous input metastability window, and frequency of receiving synchronizer. We are estimated the MTBF for varying the data rate, varying frequency, and metastability window and plotted on the graph shown in fig 14, 15, &16

5 Conclusions

Synchronizer circuit performance is characterised by MTBF .Non zero probability of failure exist for each synchronizer. MTBF is specified in 1028 years. As data rate is increased for the specified synchronizer, MTBF reduces drastically and failure probability increases. Similar is the case for metastability window and frequency of operation of synchronizer. Failure of synchronizer is sure if the data changes in the window .We have demonstrated the improved reliability of data synchronization by detecting data change in the window and provides alternative synchronizer which receives the delayed data for the same clock. The latency of the system is affected .Duplication of synchronizer is required .But it ensures correct data transfer.

   

   

 

Fig .12 Modulated Data rate Modelling Fig .13 Simulation result

Synchronizer H/W Latency Through-

-put

Failure probability

2-flop 35 1-2 1/latency 70%

Proposed scheme

100

0-1 1 10%

 

Fig .14 Variation of MTBF with Frequency  Fig 15 Variation of MTBF with Data rate

(6)

6. References

[1] Ginosar Ran,“Metastability and synchronizer: A Tutorial”, IEEE Design &Test of computer,September/October 2011.

[2] Alshaikh M David Kiniment, Alex Yakovlev, “Robust Synchronization using wagging Technique”, Technical Report NCL-EECE – MSD-TR-2010 -165,University of Newcastle upon Tyne, 2010.

[3] Sohini Dasgupta , Alex Yakovlev , “Modelling and Performance analysis of GALS Architecture”, Technical Report NCL-EECE – MSD-TR-2006 -114,University of Newcastle upon Tyne, 2006.

[4] Ran Ginosar,and RKol, “Adaptive synchronisation”,1998 IEEE International Conference on Computer Design(ICCD’98),oct 1998. [5] David J kinniment,Charles E.Dike ,keith Heron,Gordon Russell, Alxander V Yakovlev, “Measuring Deep metastability and its effect

on synchronizer performance”,IEEE transaction on Very Large Scale Integration (VLSI) system, Vol 15,No-9 ,September 2007 . [6] Jun Zhou, David J kinniment,Charles E.Dike , Gordon Russell, Alxander V Yakovlev, “on chip measurement of Deep metastability

in synchronizer” IEEE Journal of Solid State Circuit,Vol 43,No-2 ,February-2008.

[7] Yaron Semiat and Ran Ginosar, “Timing Measurement of synchronization Circuit”, proceeding of Ninth International Symposium on asynchronous circuit and System,( ASYNC’2003).

Figure

Fig 1 Two Flip-flop Synchronizer
Fig 6 Circuit diagram for synchronizer controller
Fig.9 Phase Detector
Fig 15 Variation of MTBF with Data rate

References

Related documents

ESS/MSS Talent Management & Nakisa Visualization HR Scorecards based on Xcelsius and BW technology Federated Portal landscape project. External facing Portal project RPM

specifications of the serial flash memory used in this application, both master and slave output data on the falling edge of the clock, and latch data on the rising edge of the

En efecto, así como los libertarianos ven en cual- quier forma de intervención del Estado una fuente inevitable de interferencias arbitrarias –con la excepción de aquella acción

• The clock period depends on the data path delay, the clock skew between registers, the source register’s clock-to-output time, and the destination register’s setup time.. –

The logic level must remain on the D input for a time equal to or greater than t h after the triggering edge of the clock pulse for reliable data entry.

selain hal itu pada tahun 2008 Pemasaran telah melakukan beberapa event penting dalam rangka meningkatkan penjualan produk kimia farma dan peningkatan brand

throttle to pull in cable, ideally chute falls right in front of winch.. 20 Herbert Kilian, Chicago

The researcher gathered data and examined if school districts of high risk and non-high risk students were using RTI as a preventative method aimed at increasing student state