Durante la modellazione di un circuito virtuale, qual è il miglior schema di progettazione per verificare i cicli?

0

Per semplicità supponiamo di avere solo porte AND e OR. Ognuno ha due input e uno output. L'uscita di due ingressi può essere utilizzata come ingresso per il prossimo gate. Ad esempio:

A AND B - > E

C AND D - > F

E OR F - > G

Assumendo un numero arbitrario di porte, vogliamo verificare se il circuito si connette sempre a se stesso in uno stato precedente? Ad esempio:

E AND F - > A

Questo dovrebbe essere illegale poiché crea un ciclo infinito. Quale modello di progettazione sarebbe meglio controllare per questi cicli?

    
posta Wallace Brown 02.11.2012 - 15:52
fonte

2 risposte

3

Sembra che tu stia parlando della costruzione di un grafico diretto e del controllo dei cicli. Questo può essere fatto in molti modi. Il più basilare è un ordinamento topologico.

link
 oppure
link

    
risposta data 02.11.2012 - 16:01
fonte
2

Come sottolineato da @Blrfl, il feedback nei circuiti logici è estremamente utile. Il modo di affrontarlo in un modello consiste nell'aggiungere un componente orario, che rappresenta essenzialmente il ritardo di propagazione attraverso il gate. Ad esempio:

A AND B -> B

Il modo in cui gestisci questo è considerare B al tempo 0 e B al tempo 1 come due segnali completamente diversi, come:

A[0] AND B[0] -> B[1]

Questo ti permette di fare i tuoi calcoli senza entrare in un ciclo infinito. Nota che in questo caso devi solo eseguire una iterazione per determinare lo stato stazionario (cosa alla fine si stabilizza). Se A è 1 , B non cambierà dal suo valore iniziale. Se A è 0 , quindi B cambierà anche a 0 e resterà lì.

    
risposta data 02.11.2012 - 18:22
fonte