時序分析與CDC

將4位元二進位 0110(十進位的6)轉換為格雷碼的結果是哪一個?

  1. A0111
  2. B0100
  3. C0101
查看答案與解析

正確答案:C. 0101

二進位轉格雷碼,是將各位元與其上一個位元做XOR(最高位元保持不變)。以算式表示為 g = b XOR (b >> 1)。將 0110 右移1位元得到 0011,兩者做XOR得 0110 XOR 0011 = 0101。0111 是5的格雷碼,0100 是7的格雷碼,為6的前後值。依5→6→7前進為 0111→0101→0100,可確認相鄰值之間只有1個位元改變。

練習這個領域 前往領域頁面

時序分析與CDC的其他題目

  1. 在深度16字組的非同步FIFO中,讓寫入指標與讀取指標比位址多1位元、成為5位元的理由,何者正確?
  2. 在使用5位元格雷碼指標、深度16字組的非同步FIFO中,寫入端判定滿(full)的條件何者正確?
  3. 非同步FIFO是將對方的指標同步化後使用,因此看到的指標值會舊2~3個週期。這個延遲對full/empty判定的影響,何者正確?
  4. 在寫入端 100 MHz、讀取端 80 MHz 的非同步FIFO中,寫入端以每個週期1字組的方式寫入100字組的突發,讀取端每個週期讀出1字組。突發之間有足夠的間隔。為了不溢位,所需的最小深度是多少(忽略同步化造成的延遲)?
  5. 寫入端以 200 MHz、每個週期1字組寫入120字組的突發。讀取端以 150 MHz 的時脈,每3個週期中只有2個週期各讀出1字組。為了不溢位,所需的最小深度是多少(忽略同步化造成的延遲)?