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

Explain why most interrupts are active low, Explain why most interrupts are...

Explain why most interrupts are active low? This answers why most signals are active low when you see the transistor level of a module, active low implies that the capacitor in

Explain the structure of a c program, Explain the Structure of a C Program?...

Explain the Structure of a C Program? Each C program consists of one or more functions one of the which must be main(). A function name is forever followed by a pair of parenth

Explain a macro, Explain a macro Macro is a preprocessor directive, als...

Explain a macro Macro is a preprocessor directive, also called as macro definition takes the following general form:  #define identifier string

What do you mean by rad, a. What are the activities included during the pro...

a. What are the activities included during the process of developing a formal specification of a sub-system interface? b. Explain the Pair Programming? What are the benefits of

Can the size of an array be declared at runtime, Can the size of an array b...

Can the size of an array be declared at runtime?              No, the size of an array can't be declared at run time, we always require to mention the dimensions of an array at

Explain the fork-join, Explain the fork-join? fork-join: It is prim...

Explain the fork-join? fork-join: It is primitives in a programming language of higher level for implementing interacting processes. The syntax is as given below: fork

Components of magnetic disk, Q. Components of magnetic disk? Disk itsel...

Q. Components of magnetic disk? Disk itself is mounted in a disk drive that comprises arm which is a shaft that rotates disk and the electronics required for input and output b

What are the uses of interrupts, What are the uses of interrupts?  ...

What are the uses of interrupts?  Recovery from errors Debugging Communication among programs Use of interrupts in operating system

Microcomputer - controlled breadmaking machine, Q. Microcomputer - Controll...

Q. Microcomputer - Controlled Breadmaking Machine? Figure shows a simplified schematic diagram of a microcomputer-controlled breadmaking machine. A microcomputer along with its

What is dynamic random access memory, What is dynamic random access memory ...

What is dynamic random access memory Computer memory today comprises mainly of dynamic random access memory (DRAM) chips which have been built into multi-chip modules that are

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