Berkeley RISC: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Riga 21:
RISC I per incrementare le prestazioni utilizzava una [[pipeline dati|pipeline]] a due stadi ma senza un riordino delle istruzioni come fanno le moderne CPU. Il processore aveva problemi a gestire i salti condizionati dato che comunque eseguiva l'istruzione subito dopo il salto indipendentemente dal risultato del salto. Il compilatore doveva mettere dopo il salto un'istruzione indipendente dal salto e spesso per semplicità metteva una <code>NOP</code>.
 
Dopo un mesimese passato a validare ed eliminare i bug del progetto i progettisti il 22 giugno 1981 si rivolsero alla fonderia [[MOSIS]] per produrre il processore con una tecnologia a 2 μm (2000 nanometri secondo la scala moderna). Una serie di incidenti e di ritardi constrinsero la fonderia a rifare quattro volte le maschere del processore e i primi esemplari funzionanti non furono disponibili che nel maggio 1982. Il primo computer funzionate basato sul processore entro in funzione l'11 giugno. Il test del processore mostro dei risultati deludenti, le istruzioni venivano eseguite in 2 μs sebbene il progetto originario prevedesse l'esecuzione in 400 ns, il processore era cinque volte più lento del previsto. La spiegazione di questo difetto non è mai stata chiarita completamente ma alcune istruzioni erano eseguite alla velocità prevista e quindi si presume che sia stato un problema di produzione più che di progettazione.
 
Quando il progetto funziono a piena velocità le prestazioni si dimostrarono eccellenti. Simulazioni basate su una serie di piccoli programmi eseguiti sul RISC I a 4 Megahertz, sul VAX 11/780 a 5 Megahertz e sul processore a 16 bit [[Zilog Z8000]] a 5 Megahertz furono chiarificanti. I programmi erano circa il 30% più grande degli equivalenti programmi VAX e grande quasi quanto quelli dello Z8000. Quindi la temuta esplosione di dimensione del codice non si verificava mentre il RISC I si dimostrava due volte più rapido del VAX e quattro volte più rapido dello Z8000. Era molto interessante notare che il processore effettuava all'incirca lo stesso numero di accessi di un processore CISC, questo era merito dell'ampio numero di registri che limitavano gli accessi alla memoria.