Преобразование серого кода, чтобы сделать его немного короче
Один из способов преобразования n-битного (обычного, инвертированного) серого кода в (n-1)-битный серый код состоит в том, чтобы повторно использовать (n-2) младшие биты и получить старший бит (n- 1) -битный серый код как XOR двух старших бит n-битного серого кода.
Это работает, потому что младшие n-2 бита n-битного кода состоят из двух идентичных блоков (т.е. кодов для [0..2^{n-3}) и [2^{n-3}..2^{n-2}) одинаковы).
В документе по адресу http://www.sunburst-design.com/papers/CummingsSNUG2002SJ_FIFO1.pdf страницы 6 и 7 посвящены конверсии.
В статье n-битный серый код создается из двоичного числа (рис. 3 на стр. 7). Мне кажется, можно было бы сохранить ворота XOR и о странице объяснения. Это можно сделать, используя бит n-2 двоичного счетчика в качестве верхнего бита (n-1)-битного серого кода?
Что мне не хватает, пожалуйста?