Come funziona una CPU: comparatore #0.3.5.5

Nell’articolo di oggi analizzeremo nel dettaglio il funzionamento del comparatore.

Negli articoli precedenti abbiamo visto:

Il comparatore è un modulo puramente combinatorio e si occupa di effettuare l’operazione di confronto tra 2 operandi su n-bit. Ha 3 uscite, ciascuna delle quali rappresenta uno dei possibili esiti del confronto tra gli operandi. Inoltre è provvisto di un segnale di Enable che, eventualmente, disabilita tutte le uscite.

Il confronto viene effettuato a partire dai bit più significativi. Se l’esito del confronto tra questi ultimi è una disuguaglianza, allora l’operando avente i bit più significativi maggiori è a sua volta maggiore del secondo operando.

Connessione di comparatori

Connettendo in cascata più comparatori a 4-bit si possono creare moduli più complessi, come per esempio un Comparatore a 16-bit.

comparatore

Questo modulo confronta i bit degli operandi a gruppi di 4, partendo dai più significativi. Questo comparatore è quindi costituito da 4 Comparatori a 4-bit. I segnali di Enable degli ultimi 3 Comparatori dipendono ciascuno dall’uscita “equals” del Comparatore precedente. D’altronde, solo se il confronto tra 2 gruppi di bit non ha prodotto alcuna disuguaglianza è necessario confrontare i gruppi di bit successivi e quindi abilitare il Comparatore successivo. In caso contrario, gli Enable pongono a 0 tutte le uscite dei rispettivi Comparatori. Le uscite relative alle disuguaglianze fanno capo a delle porte OR, cosicché il confronto possa terminare con successo nel caso in cui un Comparatore rilevi delle differenze tra 2 gruppi di bit e ponga ad 1 la corrispondente uscita. Da quel momento tutti gli altri Comparatori inviano uno 0 a tutte le porte logiche ma, trattandosi di OR, basta il solo 1 prodotto dal Comparatore iniziale per stabilire l’esito finale del confronto. Se invece ogni Comparatore rileva una relazione di uguaglianza tra i vari gruppi di bit, le porte OR riceveranno in ingresso solo il valore 0 mentre l’ultimo Comparatore a 4-bit produrrà un 1 direttamente sull’uscita del Comparatore a 16-bit per indicare che i 2 operandi sono uguali.

Iscriviti ai nostri gruppi Telegram

Link utili

Seguici per non perdere le prossime novità!

Simone Candido è un ragazzo appassionato del mondo tech nella sua totalità. Simone ama immedesimarsi in nuove esperienze, la sua filosofia si basa sulla irrefrenabile voglia di ampliare a 360° le sue conoscenze abbracciando tutti i campi del sapere, in quanto ritiene che il sapere umano sia il connubio perfetto tra cultura umanistica e scientifica.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.