Questo HAT per Raspberry Pi collega un vero 8086 all'header GPIO

Un interessante progetto permette di collegare un CPU Intel 8086 direttamente al Raspberry Pi tramite un HAT.

Avatar di Antonello Buzzi

a cura di Antonello Buzzi

Editor

L'ingegnere canadese Robin Grosset ha trovato il modo di utilizzare un chip del 1978, più precisamente l'Intel 8086, su un Raspberry Pi 4. In realtà, per questo progetto Grosset, che ha lavorato in precedenza in IBM e ora è CTO di MindBridge, ha usato un clone dell'originale chip a 16 bit di casa Intel, il NEC V30, impiegato anche nella console portatile Wonderswan e nel PDA Psion Series 3.

L'interfacciamento diretto tra Raspberry Pi e Intel 8086 avviene tramite un HAT appositamente progettato, che usa il Raspberry Pi come bus dati, nonché per le richieste della CPU, gestire le operazioni di lettura e scrittura alla memoria e ai dispositivi di Input/Output, consentendo così al chip 8086 di eseguire MS-DOS in modo nativo. Per quanto riguarda l'alimentazione, il processore sfrutta la linea 3,3V del connettore GPIO, il che porta a pensare che il funzionamento non è garantito su tutte le CPU 8086, in quanto alcuni modelli richiedono sino a 7V.

Grosset ha affermato:

Questo è un work in progress realizzato solo per un po' di divertimento. Il progetto originale è stato creato da Elijah Miller. Mi sono interessato ad esso perché pensavo che collegare una CPU collegata direttamente all'header di Raspberry Pi fosse abbastanza folle. Questo è reso possibile senza altri chip di interfaccia di supporto: solo collegamenti tramite cablaggio diretto.

Nel caso foste interessati, il codice di Grosset per l'HAT 8086, inclusa la libreria C per l'interfacciamento, è disponibile liberamente su GitHub al seguente indirizzo. Il codice funziona anche con l'Intel 8088, variante di 8086 con bus dati a 8 bit, e, al momento, l'8086 gira solo a circa 0,3 MHz.

Grosset, in attesa che arrivassero i componenti necessari per completare il suo progetto, ha testato anche il processore 6502 su un Raspberry Pi Zero 2 ottenendo una frequenza di 2,6MHz, un risultato davvero interessante.