Verilog hdl
Hardware
Autor
Professor Don Thomas
Carnegie Mellon University (CMU) thomas@ece.cmu.edu http://www.ece.cmu.edu/~thomas
Adaptado por
José Soares Augusto
Dep. Física da Fac. Ciências da Un. de Lisboa jasa@fisica.fc.ul.pt http://calypso.inesc-id.pt/jasa.html
© Don Thomas (Portuguese by JSA), 1998, 1
Simulação de Sistemas Digitais
Porquê a simulação?
● O que faz para testar software (ou programas) que escreve?
- Injecta dados e verifica se são processados como pretende
- Após testá-lo, há alguma garantia de que o programa não tem erros (i. e., é ‘bug free’)? — NÃO! (muitas vezes o número de entradas possíveis é virtualmente infinito)
- Mas, tanto quanto foi possível, concluíu que o programa faz o que era suposto fazer
● A simulação testa um modelo do sistema que se quer construir
- O projecto está correcto? Implementa a funcão pretendida correctamente? Por exemplo, funciona como uma UART?
Injecte um byte e veja se o modelo da UART o envia, correctamente, em série
-
Além do mais, o projecto escolhido é o mais acertado?
A UART poderia implementar outras funções?
© Don Thomas (Portuguese by JSA), 1998, 2
© Don Thomas, 1998, Page 1
Simulação de Sistemas Digitais
A simulação verifica duas propriedades do circuito
● A correcção funcional — a lógica está correcta?
- projecto correcto, e projecto corrigido…
● A correcção temporal — a temporização da lógica/interligações está correcta? - e.g. os tempos de ‘setup’ são satisfeitos?
Tem todas as limitações do teste de software
● Todos os casos foram tentados?
● Foram exercitados todos os caminhos? Todas as opções?
© Don Thomas (Portuguese by JSA), 1998, 3
O "Mundo" dos Circuitos Integrados
Circuitos Integrados
'Semi-Custom'
ASICs
'Full-Custom'
ASICs
FPGA
PLD
PAL
PLA
Programáveis pelo utilizador
PML
LUT
(Look-Up Table)
MUX
Portas
© Don Thomas (Portuguese by JSA), 1998, 4
© Don Thomas,