27.11.2014 Views

VHDL PARTE 1 - - GSE

VHDL PARTE 1 - - GSE

VHDL PARTE 1 - - GSE

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Implementação 1 - Críticas<br />

CALCULADORA - Implementação 2<br />

• Utilização de soma e subtração de forma comportamental, complica a geração<br />

dos sinais de controle, tipo flag (carry out)<br />

• A codificação é complicada, pois à partir da instrução corrente gera-se um sinal<br />

de controle para ser utilizado nas atribuições.<br />

• Estrutural<br />

• Codificação direta do sinais de comando<br />

– o hardware é praticamente o mesmo, registrador<br />

com multiplexador na entrada<br />

– diferença: codificador do teclado na entrada do mux<br />

• Esta implementação conterá 2 blocos:<br />

– registradores com atribuição síncrona ao relógio<br />

– unidade lógico/aritmética combinacional e estrutual<br />

8<br />

8<br />

8<br />

8<br />

RegTop<br />

8 8 X<br />

8<br />

D Q<br />

8<br />

8<br />

CK<br />

8<br />

Codif.<br />

teclado<br />

Professor Fernando Moraes / Ney Calazans<br />

173<br />

Professor Fernando Moraes / Ney Calazans<br />

174<br />

Implementação 2 - registradores<br />

Implementação 2 - registradores<br />

process(clock)<br />

begin<br />

if clock'event and clock='0' then<br />

Bordade<br />

descida<br />

case teclado is<br />

when up => regX regX regX regX <br />

regX regX regX regX regX regX regX regX regy regY regY regY regZ regZ regZ regZ regT regT regT regT cte null;<br />

end case;<br />

Armazenamento da constante junto<br />

if (teclado= add and cout='1') or (teclado=sub and cout='0') aos registradores<br />

then flag

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!