格雷码 格雷码:又称循环码,相邻两个格雷码之间只有一位二进制位改变。 优点:用格雷码做计数器的值时,因为相邻两个格雷码之间只有1位发生改变,降低了在做状态转换时出现亚稳态的概率。所以在异步FIFO中,会采用格雷码来计数。 注意:格雷码必须是计数到2^n 才是每次改变一个bit,这也就是为什么异步FIFO的深度都是2 ^n,就算浪费面积,也需要把深度这样设置。 二进制转格雷码 原数右移一位在与原数异或 格雷码转二进制 二进制最高位取格雷码最高位,然后循环做二进制高位与低一位的格雷码异或