erro comparação ao implementar um portão MUX em nand2tetris

votos
0

Eu estou tentando implementar um portão MUX (Multiplexor) no curso nand2tetris. A primeira vez que eu tentei, e eu tenho um erro. Mas não importa o que eu mudei Eu sempre tenho o erro. Então, eu tentei verificar algum código on-line, e é isso que a maioria das pessoas usam:

CHIP Mux {
    IN a, b, sel;
    OUT out;

    PARTS:
    Not(in=sel, out=nsel);
    And(a=sel, b=b, out=c1);
    And(a=nsel, b=a, out=c2);
    Or(a=c1, b=c2, out=out);
}

Mas mesmo quando eu tento este código eu ainda obter o seguinte erro: msg

O que eu recebo como uma tabela de verdade:

|   a   |   b   |  sel  |  out  |
|   0   |   0   |   0   |   0   |
|   0   |   0   |   1   |   0   |
|   0   |   1   |   0   |   0   |
|   0   |   1   |   1   |   0   |

O que eu deveria ter:

|   a   |   b   |  sel  |  out  |
|   0   |   0   |   0   |   0   |
|   0   |   0   |   1   |   0   |
|   0   |   1   |   0   |   0   |
|   0   |   1   |   1   |   1   |
|   1   |   0   |   0   |   1   |
|   1   |   0   |   1   |   0   |
|   1   |   1   |   0   |   1   |
|   1   |   1   |   1   |   1   |

Eu tenho o mais novo conjunto de software per 2020/01/13

Publicado 13/01/2020 em 23:48
fonte usuário
Em outras línguas...                            


1 respostas

votos
1

Pelo que pode ser visto seus pinos de entrada são:

a = 0  
b = 1  
sel = 1

Seus pinos internos são:

nsel = 1 
c1   = 1 
c2   = 0

Tudo como esperado até agora.

Espera out = 1 , neste caso, e você começa out = 0. Teste de script pára neste momento por causa da falha.

Agora pode haver duas razões de que:
1) Você não foram carregados correta Mux.hdle porque se você calculou Or(c1,c2)que se obtém 1 que é correto. Se você colocou Andportão no lugar de Orisso explicaria o fracasso
2) a sua implementação Or.hdlé incorrect.Mux usa a sua versão do Orportão, se tal arquivo está presente no mesmo diretório.

Então, primeiro verificar o seu código em Hardware Simulator, em seguida, verificar a sua implementação Or.hdl. O último que você poderia fazer, removendo temporariamente Or.hdla partir de diretório do projeto. Hardware Simulator iria carregar built-in versão do Orportão.

Respondeu 14/01/2020 em 01:56
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more