What are different ways synchronize between two clock domain, Computer Engineering

Assignment Help:

What are the different ways synchronize between two clock domains?

The following section describes clock domain interfacing one of the biggest challenges of system-on-chip (SOC) designs is which different blocks operate onto independent clocks.

Integrating these blocks through the processor bus, peripheral busses, memory ports and other interfaces can be troublesome since unpredictable behavior can result while the asynchronous interfaces are not appropriately synchronized. A very general and robust method for synchronizing multiple data signals is a handshake technique as demonstrated in diagram below. It is popular since the handshake technique can easily manage changes in clock frequencies, whereas minimizing latency at the crossing. Nonetheless, handshake logic is considerably more complex than standard synchronization structures.

2144_Synchronize between two clock domains.png

FSM1 (Transmitter) asserts the req (request) signal, asking the receiver to accept the data onto the data bus. FSM2 (Receiver) usually a slow module asserts the ack (acknowledge) signal, signifying which this has accepted the data. This has loop holes: while system Receiver samples the systems Transmitter req line and Transmitter samples system Receiver ack line, they have completed this regarding their internal clock, therefore there will be setup and hold time violation. To ignore this we go for double or triple stage synchronizers that increase the MTBF and therefore are immune to metastability to a fine extent. The figure below demonstrates how this is done.

2200_handshake technique.png

Multi- Bulit Sync

409_handshaking technique.png

Single Bit Metastability Sync


Related Discussions:- What are different ways synchronize between two clock domain

State the tips of timescale directive, State the Tips of timescale directiv...

State the Tips of timescale directive Include a `timescale directive at the top of each module, even if there are no delays i n the module, since some simulators may require th

What is the use of unions in c ?, Unions allow the same area of memory to b...

Unions allow the same area of memory to be accessed as different data types. The insurance example above would not work. Unions are useful (often in embedded programming) when i

Determine the primary memory of the server, Determine the primary memory of...

Determine the primary memory of the server The keys used for accessing the server are held at a secret location in the primary memory of the server. This area or location is hi

Search-based tools, The search-based tools initially identify the problem a...

The search-based tools initially identify the problem and after that appropriately give advice on how to correct it. AT Expert from Cray Research is one of the tools being used

Example of structural hazards - computer architecture, Example of Structura...

Example of Structural hazards - computer architecture: A machine has shared a single-memory pipeline for instructions and data. As a consequence, when an instruction which con

Program testing and debugging, Program testing and debugging: Program ...

Program testing and debugging: Program testing is the method of checking program, to verify that it satisfies its needs and to detect errors. These errors can be of any type-

What is transformation, What is transformation? A transformation is a m...

What is transformation? A transformation is a mapping from the domain of models to the range of models. When modeling, it is significant not only to focus on customer needs, bu

Post interrupts - computer architecture, Post interrupts - computer archite...

Post interrupts - computer architecture: Post interrupts Exact interrupts examine interrupt bit on entering WB Longer latency Handle immediately

What types of calendars can you create with google calendar, What types of ...

What types of calendars can you create with Google Calendar? Personal calendars, like default calendar Public calendars, which others can access through the web

Describe buffer of receiving process, Q. Describe buffer of receiving proce...

Q. Describe buffer of receiving process? MPI_Gather (Sendaddr, Scount, Sdatatype, Receiveaddr, Rcount, Rdatatype,Rank, Comm): 'Using this function process with rank' rank

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd