DOC PREVIEW
Berkeley COMPSCI 150 - Lab Lecture 10 Final Project I

This preview shows page 1-2 out of 7 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 7 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 7 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 7 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

1EECS 150 Spring 2003Lab Lecture 10Final Project I4/10/2003Sandro Pintz Asynchronous Clock Crossings The world is Asynchronous 100% chance to encounter issues No Exhaustive Simulation Possible Failures could be very sporadic and environmentally dependant Failures are very hard to debug2Most Common Cases External Signals Coming into Synchronous Designs Interfacing to external standard interfaces: PCI (33/66 MHz) Video (27 MHz) Networking (100 MHz) System Optimization (Area/Performance/Heat Dissipation)What is the problem? Will be covered by JohnW in class, but … to give you an idea From fast to slow clock: Miss a pulse From slow to fast clock: double pulse Metastability if we violate setup or hold time on synchronous elements Result: Malfunction!3Level Synchronization Input is stable for a long time Output is stable for a long time Delay of at most 3 clocks… why?QQSETCLRDQQSETCLRDReceiving ClockSynchronizedLevelAsynchronousLevelPulse Synchronization (1) From Slow Clock to Fast Clock Source pulse could be captured twiceOutput PulseQQSETCLRDQQSETCLRDQQSETCLRDQQSETCLRDFast ReceivingClockSlow SourceClockSource Pulse4Pulse Synchronization (2)QQSETCLRDQQSETCLRDQQSETCLRDQQSETCLRDPulse InSource Clk Receiving Clock From Fast Clock to Slow Clock or From Slow Clock to Fast ClockPulse Synchronization (3) In Source region we don’t know when pulse happened in Receiving RegionClk2SynchDataClk1write enableWhen is it written here? ..Can we overwrite here?5Pulse Synchronization (4)QQSETCLRDQQSETCLRDQQSETCLRDQQSETCLRDQQSETCLRDQQSETCLRDPulse InPulse OutSource Clk Receiving ClockAcknowledge We need Full HandshakeGlitches Combination logic generates glitches because of different prop. delays. A unintended glitch can easily be captured by another clock Use only glitch-free signals to go across clock domains!!! How do you guarantee glitch-free?6Races You can’t assume the arrival time of two simultaneous signals that go across clock domains!Clk2SynchClk1Synchin1in2out1out2If they show up at the sametime here ....it doesn't mean ...they will show up at thesame time here .....Data, Fifos (1) Do NOT Synchronize whole data busses Race conditions! Synchronize only the control signals for it If you need to balance data rates across domains -> Use Asynchronous FIFOs7Data, Fifos (2)Register Fileor Dual PortMemoryWrite Pointer(counter)Read Pointer(counter)FullLogicEmptyLogicread enableread clockData InData OutSynch.LogicSynch.LogicData, Fifos (3) Use gray counters to synchronize pointers: Change 1-bit for every count => no race conditions! There is a delay from write enable to fifo full There is a delay from read enable to fifo


View Full Document

Berkeley COMPSCI 150 - Lab Lecture 10 Final Project I

Documents in this Course
Lab 2

Lab 2

9 pages

Debugging

Debugging

28 pages

Lab 1

Lab 1

15 pages

Memory

Memory

13 pages

Lecture 7

Lecture 7

11 pages

SPDIF

SPDIF

18 pages

Memory

Memory

27 pages

Exam III

Exam III

15 pages

Quiz

Quiz

6 pages

Problem

Problem

3 pages

Memory

Memory

26 pages

Lab 1

Lab 1

9 pages

Memory

Memory

5 pages

Load more
Download Lab Lecture 10 Final Project I
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lab Lecture 10 Final Project I and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lab Lecture 10 Final Project I 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?