Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix CDC issue in async FIFO: ensure that Gray code pointers are registered before resynchronisation. #38

Closed
wants to merge 2 commits into from

Commits on Mar 3, 2019

  1. Fix CDC issue in async FIFO: ensure that Gray code pointers are regis…

    …tered before resynchronisation.
    
    Feeding a binary counter into a Gray encoder produces static hazards on
    the encoder outputs, since each XOR gate in the encoder has multiple inputs,
    and potentially ALL of these may transition simultaneously, e.g.
    when the binary counter rolls over.
    
    Registering the Gray output ensures that only 1 bit of the domain-crossing
    path changes at a time. This has been done in a way that does not affect the
    timing or operation of the FIFO.
    Wren6991 committed Mar 3, 2019
    Configuration menu
    Copy the full SHA
    2c99bab View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6b30637 View commit details
    Browse the repository at this point in the history