Por "volteado", ¿quiere decir que cuando control = 0, c = a y d = b, y cuando control = 1, c = byd = a? Si es así, le sugiero que comience por averiguar la salida de c en términos de control, a y b. Luego calcule la salida d de manera similar, pero con las funciones de las entradas a y b cambiadas.
Un enfoque convencional para calcular c basado en a y b usaría una "o" compuerta, dos "y" compuertas, y un inversor; un circuito exactamente igual utilizaría tres puertas "nand" y un inversor. El inversor calcula la misma señal al calcular c que al calcular d, y por lo tanto podría cumplir ambas funciones (por lo que el total para calcular tanto c como d sería de seis puertas "nand" y un inversor).
Un enfoque alternativo usaría tres puertas "xor" y una "y" puerta. Eso requiere menos puertas en total, pero las puertas "xor" son generalmente dos veces más caras en silicio que las puertas "nand", por lo que en realidad no es mucho "ganar".