|
9 | 9 | ####### |
10 | 10 | |
11 | 11 | # La Central Processing Unit è formata da: |
12 | | -# • Unità di elaborazione Aritmetico/Logica (ALU) |
13 | | -# .Fa solo calcoli |
14 | | -# .Non ha uno stato interno |
| 12 | +# • Unità di elaborazione Aritmetico/Logica (ALU) |
| 13 | +# .Fa solo calcoli |
| 14 | +# .Non ha uno stato interno |
15 | 15 |
|
16 | | -# • La Control Unit |
17 | | -# .Coordinare tutte le azioni necessarie per |
18 | | -# l'esecuzione di una istruzione o insiemi di istr. |
| 16 | +# • La Control Unit |
| 17 | +# .Coordinare tutte le azioni necessarie per |
| 18 | +# l'esecuzione di una istruzione o insiemi di istr. |
19 | 19 |
|
20 | | -# • I Registri |
21 | | -# .A uso generale e speciale |
22 | | -# .Consentono manipolazione di istruzioni, dati, |
23 | | -# indirizzi, risultati |
| 20 | +# • I Registri |
| 21 | +# .A uso generale e speciale |
| 22 | +# .Consentono manipolazione di istruzioni, dati, |
| 23 | +# indirizzi, risultati |
24 | 24 |
|
25 | | -# • Il Bus di comunicazione con la Memoria |
26 | | -# • Il Bus di comunicazione con le Perifieriche (in/out) |
| 25 | +# • Il Bus di comunicazione con la Memoria |
| 26 | +# • Il Bus di comunicazione con le Perifieriche (in/out) |
27 | 27 |
|
28 | 28 |
|
29 | 29 | ################# |
|
38 | 38 | # Ciascuna word conteneva 2 istruzioni. |
39 | 39 |
|
40 | 40 | # Componenti della sua CPU: |
41 | | -# • MBR (Memory Buffer Register) |
42 | | -# .Riceve/manda dati dalla/alla memoria |
| 41 | +# • MBR (Memory Buffer Register) |
| 42 | +# .Riceve/manda dati dalla/alla memoria |
43 | 43 |
|
44 | | -# • MAR (Memory Address Register) |
45 | | -# .Indica l'indirizzo della locazione di memoria RAM |
46 | | -# in cui si andrà a leggere/scrivere un dato |
| 44 | +# • MAR (Memory Address Register) |
| 45 | +# .Indica l'indirizzo della locazione di memoria RAM |
| 46 | +# in cui si andrà a leggere/scrivere un dato |
47 | 47 |
|
48 | | -# • PC (Program Counter) |
49 | | -# .Registro contente l'indirizzo dell'istruzione |
50 | | -# in esecuzione |
| 48 | +# • PC (Program Counter) |
| 49 | +# .Registro contente l'indirizzo dell'istruzione |
| 50 | +# in esecuzione |
51 | 51 |
|
52 | | -# • IR (Instruction Register) |
53 | | -# .Riceve l'istruzione da eseguire |
| 52 | +# • IR (Instruction Register) |
| 53 | +# .Riceve l'istruzione da eseguire |
54 | 54 |
|
55 | | -# • IBR (Instruction Buffer Register) |
56 | | -# .Memorizza temporaneamente la seconda istruzione |
57 | | -# della word |
| 55 | +# • IBR (Instruction Buffer Register) |
| 56 | +# .Memorizza temporaneamente la seconda istruzione |
| 57 | +# della word |
58 | 58 |
|
59 | | -# • AC (Accumulatore) |
60 | | -# .Per i risultati parziali dei caloli della ALU |
| 59 | +# • AC (Accumulatore) |
| 60 | +# .Per i risultati parziali dei caloli della ALU |
61 | 61 |
|
62 | | -# • MQ (Multiplier Quotient) |
63 | | -# .Per i risultati parziali dei caloli della ALU |
| 62 | +# • MQ (Multiplier Quotient) |
| 63 | +# .Per i risultati parziali dei caloli della ALU |
64 | 64 |
|
65 | 65 |
|
66 | 66 | ######## |
67 | 67 | # MIPS # -> (Milion Instructions Per Second) |
68 | 68 | ######## |
69 | 69 |
|
70 | 70 | # Il MIPS è un'architettura di tipo RISC: (Reduced Instruction Set Computer) |
71 | | -# • Istruzioni di dimensione fissa |
72 | | -# .Fetch(vedi dopo) della successiva senza decodifica della prec. |
73 | | -# • Istruzioni di formato uniforme |
74 | | -# .Per semplificare la fase di decodifica |
75 | | -# • Operazioni ALU solo tra registri |
76 | | -# .Senza accesso a memoria |
77 | | -# • Molti registri interni |
78 | | -# .Per i risultati parziali senza accessi alla memoria |
79 | | -# • Modi di indirizzamento semplici |
80 | | -# .Con spiazzamento, 1 solo accesso a memoria |
81 | | -# .Durata fissa della istruzione |
82 | | -# .Conflitti semplici |
83 | | -# • Istruz. semplici => pipeline più veloce |
| 71 | +# • Istruzioni di dimensione fissa |
| 72 | +# .Fetch(vedi dopo) della successiva senza decodifica della prec. |
| 73 | +# • Istruzioni di formato uniforme |
| 74 | +# .Per semplificare la fase di decodifica |
| 75 | +# • Operazioni ALU solo tra registri |
| 76 | +# .Senza accesso a memoria |
| 77 | +# • Molti registri interni |
| 78 | +# .Per i risultati parziali senza accessi alla memoria |
| 79 | +# • Modi di indirizzamento semplici |
| 80 | +# .Con spiazzamento, 1 solo accesso a memoria |
| 81 | +# .Durata fissa della istruzione |
| 82 | +# .Conflitti semplici |
| 83 | +# • Istruz. semplici => pipeline più veloce |
84 | 84 |
|
85 | 85 | # Le istruzioni sono tutte a 32 bit. |
86 | 86 | # BYTE(8 bits), HALFWORD (2 bytes), WORD (4 bytes). |
|
98 | 98 |
|
99 | 99 | # Abbiamo 32 registri divisi in gruppi, ogni registro è preceduto da $. |
100 | 100 | # 2 formati per usare i registri: |
101 | | -# • Usando il numero del registro, da $0 a $31 |
102 | | -# • Usando i nomi equivalenti, $t1, $sp ecc.. |
| 101 | +# • Usando il numero del registro, da $0 a $31 |
| 102 | +# • Usando i nomi equivalenti, $t1, $sp ecc.. |
103 | 103 |
|
104 | 104 | # I registri speciali "lo" e "hi", vengono utilizzati dall'assembler per i |
105 | 105 | # risultati parziali di moltiplicazioni e divisioni, direttamente indirizzabili |
|
0 commit comments