Timinganalyse en CDC

Welke waarde is de omzetting van de 4-bit binaire waarde 0110 (decimaal 6) naar Gray-code?

  1. A0111
  2. B0100
  3. C0101
Antwoord en toelichting tonen

Antwoord: C. 0101

Bij de omzetting van binair naar Gray-code wordt van elke bit de XOR genomen met de bit direct erboven (de meest significante bit blijft ongewijzigd). Als formule: g = b XOR (b >> 1). De XOR van 0110 met de 1 bit naar rechts geschoven waarde 0011 geeft 0110 XOR 0011 = 0101. 0111 is de Gray-code van 5 en 0100 die van 7: de waarden vóór en na 6. Bij 5→6→7 gaat het 0111→0101→0100, waarmee te controleren is dat tussen opeenvolgende waarden maar één bit verandert.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Timinganalyse en CDC

  1. Wat is de juiste reden waarom in een asynchrone FIFO met een diepte van 16 woorden de schrijf- en leespointer 5 bits zijn, 1 bit meer dan het adres?
  2. 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?
  3. 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?
  4. 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)?
  5. 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)?