Architettura PC

Interfaccia

Le componenti di Johnny Simulator e i comandi delle barre Macro Code e Micro Code.

Esplora la finestra di Johnny Simulator partendo dalla vista con l’unità di controllo nascosta. Seleziona poi Ctrl per visualizzare registri, microcodice e i relativi comandi.

1. Il modello logico alla base

Memoria e CPU comunicano attraverso i bus.

Il simulatore traduce visivamente i principi cardine dell'Architettura di Von Neumann, un modello fondamentale per comprendere l’organizzazione di un calcolatore. In questa architettura due elementi dialogano costantemente attraverso linee di collegamento dette bus:

Schema del collegamento tra CPU e memoria RAM attraverso i bus

Johnny adotta questo schema: troverai la memoria principale da un lato e l'area di elaborazione (il processore con i suoi registri dedicati) dall'altro, collegate da condotti grafici che si illuminano o cambiano valore durante il trasferimento delle informazioni.

2. Le barre nella parte superiore

La finestra si legge dall’alto verso il basso: titolo, strumenti e area di simulazione.

La barra del titolo

Barra del titolo di Johnny 1.01
La barra del titolo identifica il programma, la versione e l’autore.

La prima fascia è la barra del titolo. Nell’immagine mostra Johnny 1.01, il nome dell’autore Peter Dauscher e gli anni 2009–2014. Nella finestra completa, sul lato destro, si trovano anche i controlli del sistema operativo per ridurre, ingrandire e chiudere la finestra.

La barra degli strumenti

Barra degli strumenti con gruppo Macro Code, casella Ctrl e opzioni
Sotto il titolo, la barra degli strumenti raccoglie i pulsanti operativi.

La seconda fascia è la barra degli strumenti: contiene pulsanti che eseguono azioni. Il gruppo Macro Code permette di preparare la RAM, aprire e salvare programmi, eseguire una macroistruzione oppure avviare il programma in automatico.

Accanto si trova il controllo Ctrl, con ingranaggi e casella di selezione; all’estremità destra la chiave inglese apre le opzioni. Nell’immagine Ctrl non è selezionato e i dettagli dell’unità di controllo sono nascosti.

Per iniziare osserva la schermata con Ctrl non selezionato; il passaggio alla vista dettagliata è illustrato subito dopo.

3. La schermata con unità di controllo nascosta

Partiamo dalla vista con la casella Ctrl non selezionata.

Johnny 1.01 con i dettagli dell’unità di controllo nascosti
Vista iniziale con Ctrl non selezionato: il pannello centrale copre i dettagli dell’unità di controllo.

In questa vista puoi già riconoscere la RAM a sinistra, l’ALU con accumulatore a destra, il bus degli indirizzi azzurro in alto e il bus dei dati verde in basso. Al centro compare un pannello con la scritta Control Unit: i registri e il microcodice non sono ancora visibili.

4. Mostrare l’unità di controllo con Ctrl

Dalla vista semplificata ai dettagli interni.

Controllo Ctrl con ingranaggi e casella

Seleziona ora la casella Ctrl accanto agli ingranaggi nella barra superiore. Il pannello centrale lascia il posto ai dettagli dell’unità di controllo e, in alto, compare il gruppo Micro Code.

Ctrl controlla la visibilità del pannello: non è il tasto Ctrl della tastiera. Deselezionando la casella puoi tornare alla vista precedente; le operazioni interne continuano a funzionare anche quando sono nascoste.

5. La schermata con unità di controllo visibile

Solo dopo aver selezionato Ctrl compaiono questi dettagli.

Johnny 1.01 dopo la selezione di Ctrl: registro istruzione, Program Counter, contatore e tabella del microcodice visibili
Dopo la selezione di Ctrl, l’unità di controllo è visibile al centro e la barra Micro Code compare in alto.

Ora puoi osservare i componenti che nella vista precedente erano coperti:

ElementoDove si trova e a cosa serve
INS — Instruction RegisterIl registro istruzione, nella parte alta del pannello centrale, conserva il comando prelevato dalla RAM e il suo operando.
PC — Program CounterA destra del registro istruzione. Il contatore del programma indica l’indirizzo RAM da cui prelevare il comando.
MC — Microcode CounterIl numero sopra la tabella Micro Code indica la prossima riga del microcodice da eseguire.
Tabella Micro CodeLa prima colonna mostra gli indirizzi delle microistruzioni; la seconda i comandi. La riga gialla indica il prossimo passo.
Pulsanti dei trasferimentiPermettono di eseguire operazioni interne, come pc->ab e db->ins. Le frecce mostrano la direzione del trasferimento.

La RAM, l’accumulatore e i bus restano nelle stesse aree. Le celle RAM contengono un programma dimostrativo: per riconoscere i componenti non è necessario eseguirlo.

6. Menu Macro Code

Aprire, salvare ed eseguire il programma RAM.

Il gruppo Macro Code gestisce il programma nella RAM. Il triangolo singolo completa un’istruzione; il doppio triangolo avvia l’esecuzione continua. Le icone nella tabella sono quelle presenti sulla barra.

Barra Macro Code di Johnny
IconaFunzioneQuando usarla
Nuova RAM: azzera la memoriaAzzera la RAM.Per iniziare un programma nuovo, dopo aver salvato quello precedente.
Apri memoria RAMApre un file della memoria RAM.Per caricare un programma salvato.
Salva memoria RAMSalva la RAM.Per conservare dati e istruzioni del programma.
Macro passoEsegue un macro passo.Per completare una macroistruzione e osservarne il risultato.
Esecuzione automaticaAvvia il programma automaticamente.Per proseguire senza un clic per ogni istruzione.
Regolatore della velocitàRegola la velocità dell’esecuzione automatica.Per rendere più facile seguire i cambiamenti.
PausaInterrompe l’esecuzione.Per fermarsi a osservare lo stato della macchina.
Reset dei registriAzzera PC e gli altri registri del processore.Per ripartire; verifica anche i dati RAM prima di una nuova prova.
Ctrl: mostra o nasconde unità di controlloMostra o nasconde i dettagli dell’unità di controllo e la barra Micro Code.Per osservare registri, contatore e sequenze interne.

7. Menu Micro Code

Aprire, salvare e seguire il microcodice.

Il gruppo Micro Code gestisce le sequenze interne che realizzano le istruzioni. Il triangolo con μ avanza di una sola operazione interna, non di un’intera istruzione.

Barra Micro Code con apertura, salvataggio e micro passo
IconaFunzioneDifferenza dalla barra Macro Code
Apri microcodiceCarica un microcodice.Carica la definizione interna delle istruzioni, non il programma RAM.
Salva microcodiceSalva il microcodice.Conserva le sequenze interne e i nomi delle istruzioni.
Esegui un micro passoEsegue un micro passo.Compie una sola operazione interna, non necessariamente un’intera macroistruzione.

Torna all’indice della pagina