Bygga egen CPU av logik-kretsar
Bygga egen CPU av logik-kretsar
Tänkte ta och bygga mig en egen 8-bitars processor av bara 74xx kretsar. Är det någon här som har gjort det tidigare som kan komma med lite tips?
Tanken är att bygga allt från grunden. ALU (ej 74181), Register, RAM, I/O m.m. och sedan kunna ge den ett enkelt litet program som den genomför.
Jag har aldrig gjort något i den här skalan förut så det ska bli ett spännande vinterprojekt och ett kul sätt att lära sig lite mer.
Alla tips är välkomna.
Tanken är att bygga allt från grunden. ALU (ej 74181), Register, RAM, I/O m.m. och sedan kunna ge den ett enkelt litet program som den genomför.
Jag har aldrig gjort något i den här skalan förut så det ska bli ett spännande vinterprojekt och ett kul sätt att lära sig lite mer.
Alla tips är välkomna.
- FormerMazda
- Inlägg: 6445
- Blev medlem: 27 februari 2006, 14:59:36
- Ort: Asby (Östergötland)
Re: Bygga egen CPU av logik-kretsar
Tips: Kolla gammal skollitteratur.
Minns att det fanns som ett projekt i skolan, att bygga en egen "dator" med logikkretsar. Sen kunde man ha antingen en klocka, eller pulsa själv med en fjädrande vippbrytare för att se på LEDs hur all data skiftades runt.
Minns att det fanns som ett projekt i skolan, att bygga en egen "dator" med logikkretsar. Sen kunde man ha antingen en klocka, eller pulsa själv med en fjädrande vippbrytare för att se på LEDs hur all data skiftades runt.
Re: Bygga egen CPU av logik-kretsar
Har du alltså tänkt använda enbart grindar? Inga färdiga vippor, latchar eller liknande?
När jag gjorde lumpen mekade jag ju Censor 932 V (tror jag den hette)... det var grejer det, 32-bitars "CPU" virad av TTL-logik.
Eller för att inte tala om "radarvarnaren" (som jag inte minns vad den hette), den hade också TTL-logik. Den drog 80 A eller nåt sånt på 5 V-matningen, det var kopparskenor på typ 5x15 mm som gick mellan bakplanen.
När jag gjorde lumpen mekade jag ju Censor 932 V (tror jag den hette)... det var grejer det, 32-bitars "CPU" virad av TTL-logik.
Eller för att inte tala om "radarvarnaren" (som jag inte minns vad den hette), den hade också TTL-logik. Den drog 80 A eller nåt sånt på 5 V-matningen, det var kopparskenor på typ 5x15 mm som gick mellan bakplanen.
Re: Bygga egen CPU av logik-kretsar
FormerMazda: Det va lite tanken att jag skulle ha leds på register å databussar m.m. för att se datan på alla "intressanta" ställena.
Nerre: Är osäker på om jag ska använda enbart grindar eller inte. Det hade helt klart varit det häftigaste och kretsarna är ju inte bedrövligt dyra (runt 2:- st).
Nerre: Är osäker på om jag ska använda enbart grindar eller inte. Det hade helt klart varit det häftigaste och kretsarna är ju inte bedrövligt dyra (runt 2:- st).
Re: Bygga egen CPU av logik-kretsar
Samma 8bit som på safir ?
..välkommen isåfall.
Eller ja, välkommen annars med

Eller ja, välkommen annars med

Re: Bygga egen CPU av logik-kretsar
Finns det inte ett liknande projekt här på forumet?
Avsomnat vill jag minnas.
Avsomnat vill jag minnas.

Re: Bygga egen CPU av logik-kretsar
Vi byggde något liknande med FLEXprosessorn som är någon sorts förenkning av en motorola som används på Chalmers. Där i slutet av kursen hade vi en labb där man byggde upp hela prosessorn med sladdar på labbmoduler.
Somliga kopplade ett led och verifierade innan nästa led kopplades. Andra kopplade upp allt och fick göra om när det inte gick att felsöka i sladdhärvan
Kika igenom pdf-erna som finns på kurshemsidan så kan du kanske hitta lite matnyttigt.
http://www.cse.chalmers.se/edu/year/2010/course/EDA216/
Somliga kopplade ett led och verifierade innan nästa led kopplades. Andra kopplade upp allt och fick göra om när det inte gick att felsöka i sladdhärvan

Kika igenom pdf-erna som finns på kurshemsidan så kan du kanske hitta lite matnyttigt.
http://www.cse.chalmers.se/edu/year/2010/course/EDA216/
- Krille Krokodil
- Inlägg: 4062
- Blev medlem: 9 december 2005, 22:33:11
- Ort: Helsingborg
Re: Bygga egen CPU av logik-kretsar
Det här projektet är oerhört väl dokumenterat: http://www.homebrewcpu.com/
Re: Bygga egen CPU av logik-kretsar
Du kan ju också kika i serviceböckerna för de första CRAY-datorerna, de var uppbyggda helt med (ECL)-grindar har jag för mig, du hittar två av dessa manualer på min ebaman-server
Re: Bygga egen CPU av logik-kretsar
Lite tips:
Du måste testa din design på något sätt. Som jag ser det finns två alternativ.
* VHDL och simulering på PC.
* Experimentkort och logikanalysator.
Med experimentkort brukar det löna sig att bygga upp allt i moduler. Du behöver definiera en buss som du kan koppla olika moduler till. Sedan konstruerar du och testar ordentligt varje modul för sig själv. Hur det går till i VHDL säger sig själv om man är påläst.
Ytterligare en tanke med moduluppbyggnaden är att du kan välja att realisera vissa funktioner med specifika kretsar för att sedan byta ut mot rena grindar vid ett senare tillfälle.
Självklart för de flesta är att avkoppla matningsspänningen vid varje integrerad krets ordentligt samt använda logikkretsar ur samma familj. Som vid alla stora projekt är struktur och planering mycket viktigt. Bättre att vara ordentlig från början istället för att ägna långa stunder åt felsökning. Dock gör alla fel så se till att mät och verifiera ordentligt.
Du måste testa din design på något sätt. Som jag ser det finns två alternativ.
* VHDL och simulering på PC.
* Experimentkort och logikanalysator.
Med experimentkort brukar det löna sig att bygga upp allt i moduler. Du behöver definiera en buss som du kan koppla olika moduler till. Sedan konstruerar du och testar ordentligt varje modul för sig själv. Hur det går till i VHDL säger sig själv om man är påläst.
Ytterligare en tanke med moduluppbyggnaden är att du kan välja att realisera vissa funktioner med specifika kretsar för att sedan byta ut mot rena grindar vid ett senare tillfälle.
Självklart för de flesta är att avkoppla matningsspänningen vid varje integrerad krets ordentligt samt använda logikkretsar ur samma familj. Som vid alla stora projekt är struktur och planering mycket viktigt. Bättre att vara ordentlig från början istället för att ägna långa stunder åt felsökning. Dock gör alla fel så se till att mät och verifiera ordentligt.
Re: Bygga egen CPU av logik-kretsar
Sök på TAC-1 på forumet för ett liknande projekt. Där kan du plocka lite idéer.
Re: Bygga egen CPU av logik-kretsar
Jag byggde en 16-bit TTL-dator med 74181 på 1970-talet.
Kostade ca 3000 kr på den tiden, dvs en dryg månadslön.
Det tog väl drygt ett halvår att bygga den på fritiden.
Ett par hundra kretsar.
Gissningsvis kostar det ungefär lika mycket att bygga en liknande idag.
Det som har restvärde idag är mässingsskenorna till lådan som kostar mer än dubbelt så mycket
som en modern arm-processor som kanske har tusen gånger så mycket kapacitet
Klockfrekvens: 500 kHz med typiskt 4 cykler per instruktion.
16-bit Multiplikation ca 30 cykler.
(Planerad för 2 MHz, men jag fick skruva ner frekvensen för att den skulle fungera)
Minne: 2kByte.
Kasettbandspelare som massminne.
Tv som bildskärm.
Hemmagjort ickestandard tangentbord.
Programmerades med maskinkod. Drömde om att skiva en enkel
assembler, men det blev aldrig av.
Det var nog mitt största elektronikprojekt genom tiderna!
Det finns en del liknande projekt här:
http://www.homebrewcpu.com/
Mitt tips är att strunta helt i snabbheten. Bygg den minimalistiskt
med seriearitmetik. Det ger nog lika mycket nöje/kunskap.
Kostade ca 3000 kr på den tiden, dvs en dryg månadslön.
Det tog väl drygt ett halvår att bygga den på fritiden.
Ett par hundra kretsar.
Gissningsvis kostar det ungefär lika mycket att bygga en liknande idag.
Det som har restvärde idag är mässingsskenorna till lådan som kostar mer än dubbelt så mycket
som en modern arm-processor som kanske har tusen gånger så mycket kapacitet

Klockfrekvens: 500 kHz med typiskt 4 cykler per instruktion.
16-bit Multiplikation ca 30 cykler.
(Planerad för 2 MHz, men jag fick skruva ner frekvensen för att den skulle fungera)
Minne: 2kByte.
Kasettbandspelare som massminne.
Tv som bildskärm.
Hemmagjort ickestandard tangentbord.
Programmerades med maskinkod. Drömde om att skiva en enkel
assembler, men det blev aldrig av.
Det var nog mitt största elektronikprojekt genom tiderna!
Det finns en del liknande projekt här:
http://www.homebrewcpu.com/
Mitt tips är att strunta helt i snabbheten. Bygg den minimalistiskt
med seriearitmetik. Det ger nog lika mycket nöje/kunskap.
- PHermansson
- EF Sponsor
- Inlägg: 4340
- Blev medlem: 22 december 2004, 00:46:38
- Ort: Särestad Grästorp
- Kontakt:
Re: Bygga egen CPU av logik-kretsar
Spännande projekt! Jag är imponerad av att någon ens tänker tanken på att lägga ned mycket tid och pengar på ett sånt här projekt. Antar att svaret på frågan Varför? är -För att det går!?
Re: Bygga egen CPU av logik-kretsar
Jag och ett par kompisar byggde en mikrokodad 8-bitarsprocessor med egen instruktionsuppsättning under tiden vi pluggade på universitetet i mitten av 1990-talet. Allt virat på totalt sådär 20x30 cm experimentkort. Vi använde färdiga vippor, räkare och liknande ur 74LSxx-serien och det blev ändå bortåt 150 kretsar... Vi gjorde även en assemblator (i Pascal om jag inte missminner mig) och en simulator (i C++) till bygget 
Någonstans i gömmorna finns nog både mjukvara, dokumentation och blandade foton men det vete tusan var nånstans...
En intressant feature var att vi kunde ändra klockfrekvensen dynamiskt från mjukvaran för att t.ex. underlätta vid fördröjningsloopar och liknande. Om jag minns rätt var det i ett antal steg från 62,5 kHz till 4 MHz.

Någonstans i gömmorna finns nog både mjukvara, dokumentation och blandade foton men det vete tusan var nånstans...
En intressant feature var att vi kunde ändra klockfrekvensen dynamiskt från mjukvaran för att t.ex. underlätta vid fördröjningsloopar och liknande. Om jag minns rätt var det i ett antal steg från 62,5 kHz till 4 MHz.