Timinganalyse en CDC

Welke voorwaarde om aan de schrijfkant vol (full) te detecteren is juist bij een asynchrone FIFO met een diepte van 16 woorden en 5-bit Gray-codepointers?

  1. ADe bovenste 2 bits van de schrijfpointer en de gesynchroniseerde leespointer zijn elk tegengesteld en de onderste 3 bits zijn gelijk
  2. BAlle 5 bits van de schrijfpointer en de gesynchroniseerde leespointer zijn gelijk
  3. CAlleen de meest significante bit van de schrijfpointer en de gesynchroniseerde leespointer is tegengesteld en de onderste 4 bits zijn allemaal gelijk
Antwoord en toelichting tonen

Antwoord: A. De bovenste 2 bits van de schrijfpointer en de gesynchroniseerde leespointer zijn elk tegengesteld en de onderste 3 bits zijn gelijk

Binair is de FIFO vol als de schrijfpointer precies 16 voor de leespointer ligt; dan verschilt alleen de meest significante bit. Omgezet naar Gray-code wordt de meest significante bit gewoon omgekeerd, keert de tweede bit, die met een XOR met de meest significante bit wordt gevormd, mee om, en blijven de onderste 3 bits gelijk. Is de leespointer bijvoorbeeld 00000, dan is de schrijfpointer bij vol 11000. Alleen de meest significante bit tegengesteld is de voorwaarde voor het binaire geval, en alle 5 bits gelijk is de voorwaarde voor leeg (empty).

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Timinganalyse en CDC

  1. In een asynchrone FIFO wordt de pointer van de andere kant gesynchroniseerd gebruikt, dus de zichtbare pointerwaarde is 2–3 cycli oud. Welk effect heeft deze vertraging juist op de full/empty-detectie?
  2. In een asynchrone FIFO met 100 MHz aan de schrijfkant en 80 MHz aan de leeskant schrijft de schrijfkant bursts van 100 woorden, elke cyclus 1 woord, en leest de leeskant elke cyclus 1 woord. Tussen de bursts is er voldoende rust. Wat is de minimale diepte om overlopen te voorkomen (vertraging door synchronisatie wordt genegeerd)?
  3. De schrijfkant schrijft op 200 MHz elke cyclus 1 woord, in bursts van 120 woorden. De leeskant leest met een klok van 150 MHz in 2 van elke 3 cycli 1 woord. Wat is de minimale diepte om overlopen te voorkomen (vertraging door synchronisatie wordt genegeerd)?
  4. Met 250 MHz aan de schrijfkant en 200 MHz aan de leeskant wordt aan beide kanten elke cyclus 1 woord overgedragen. Wat is de berekende minimale diepte van een FIFO die bursts van 64 woorden ontvangt (vertraging door synchronisatie wordt genegeerd, naar boven afronden)?
  5. Welke opbouw van een resetsynchronisator, die uit een actief-lage externe reset een interne reset maakt die „asynchroon wordt geactiveerd en synchroon wordt gedeactiveerd”, is juist?