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

What is hyper-threading, Hyper-threading officially known as Hyper-threadin...

Hyper-threading officially known as Hyper-threading Technology (HTT) is Intel's trademark for their functioning of simultaneous multithreading technology on Pentium 4 micro-archite

Explain significance of init() & destroy( ) method of applet, Explain the s...

Explain the significance of init() and destroy( ) methods of an applet? Also explain two ways of invoking an applet. The init( ) method is utilized for fundamental initializati

Explain switch statement, Switch This is another form of the multi way ...

Switch This is another form of the multi way decision. It is well structured, but can only be used in certain cases where; Only one variable is tested, all branches must

Why is packet switching important, Why is packet switching important? Give ...

Why is packet switching important? Give at least two reasons. Packet switching is significant due to the following two purposes: 1. A sender and the receiver require coordin

Explain ai applications, AI Applications Search is a important elemen...

AI Applications Search is a important element of an AI system, and search functions are executed on huge quantities of complicated structured data by means of unstructured in

What is cache coherency, Cache coherence refers to the integrity of data st...

Cache coherence refers to the integrity of data stored in local caches of a shared resource. Cache coherence is a special case of memory coherence. When clients in a system, mainly

Design-centered virtual manufacturing, Design-Centered Virtual Manufacturin...

Design-Centered Virtual Manufacturing This gives manufacturing information to the designer throughout the design phase. In this observing the short term and long time definitio

Subtraction using 2's complement method of binary number, Subtraction of 00...

Subtraction of 0011.1001 - 0001.1110 using 2's complement method Ans. Firstly 1's complement of 0001.1110 is 1110.0001 and 2's complement is 1110.0010. If a last carry

Operating system, define request edge and assignment edge

define request edge and assignment edge

Granularity and , Granularity In parallel computing, granularity is a ...

Granularity In parallel computing, granularity is a important measure of the ratio of computation to communication. Coarse Granularity: relatively huge amounts of computa

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