Create a working circuit that will continually print out reflected binary code otherwise known as Gray code. This circuit will be used in Logisim.
The circuit will be a sequential combinational circuit with a clock that produces the next Gray code values in the list. For example, if the current Gray code is 000, the next output will be 001 which will change with the clock cycle.
Requirements:
1) The circuit should allow the code to output the Gray code in the forward direction or backwards direction based on one input value. That is, the output will traverse down the list as the forward direction and up the list as the backwards direction.
2) You must use one J/K Flip Flop, one T Flip Flop, and one D Flip Flop.
3) You must use only NOR gates for each combinational circuit leading into a flip-flop.