Tengo que diseñar un contador con dos entradas: x y y . Si es y = 0 , el contador se comporta como un contador de anillo de 3 bits, y si y = 1 , se comporta como un contador Johnson de 3 bits. Si es x = 0 , cuenta hacia arriba, y si x = 1 , cuenta hacia abajo. Puedo solo usar chancletas D y las puertas lógicas que requiera.
Para referencia, aquí están las tablas de estado de un anillo de 3 bits y un contador Johnson (en ese orden):

Naturalmente, creé esta gran tabla de estados:
Como hay dos entradas y tres estados, cada estado siguiente depende de cinco bits. Por lo tanto, los mapas K para Q1+ , Q2+ y Q3+ (que en realidad son D1 , D2 y D3 para los flip flops) son mapas de cinco variables, lo que hace que esto sea algo complicado.
La pregunta es: ¿hay una manera de hacer la minimización con k-maps de una manera más simple (tal vez me esté faltando algo)? O, si no hay manera de simplificar la minimización, ¿es más inteligente usar k-maps de cinco variables o quizás otro método (quizás quine-mccluskey, o algo completamente diferente)?
