Sida 2 av 5

Re: CPU-hemmabygge

Postat: 14 december 2012, 09:20:53
av Nerre

Re: CPU-hemmabygge

Postat: 14 december 2012, 09:28:38
av psynoise
Jag hade inte rekommenderat att skapa data för EPROM i Excel. Diverse program ger endast ut teckendata, och den datan motsvarar inte vad man egentligen vill ha. Tabeller för EPROM tror jag är lättast att göra genom ren vanlig C-programmering.

Re: CPU-hemmabygge

Postat: 14 december 2012, 11:54:14
av Lennart Aspenryd
Riktigt Imponerande. Har du läst boken av Tracy Kidder En dators födelse! denna på originalspråk Kidder, Tracy: The soul of a new machine.

Ja Impad blir jag

Vill veta mer säger Lasp ;-)

Re: CPU-hemmabygge

Postat: 14 december 2012, 13:36:00
av calmar
Grymt! Har alltid velat bygga en enklare dator själv från diskreta kretsar.
Har du satt upp nån site med dokumentation nånstans? Kan man få veta mer om arkitekturen?

Fler (porr)bilder? :wink:

Re: CPU-hemmabygge

Postat: 14 december 2012, 18:29:02
av blueint
Kanske man skulle bygga en enkel EMP säker rördator .. ;)

Re: CPU-hemmabygge

Postat: 14 december 2012, 18:43:45
av Spisblinkaren
nablaman skrev:Smaskigt! :tumupp:

Sugen på att diskutera byteshandel inom virtillbehörsområdet ? :wink:
Tack!

Kan eventuellt vara. Jag återkommer!

MVH/Roger

Re: CPU-hemmabygge

Postat: 14 december 2012, 18:56:03
av Spisblinkaren
blueint skrev:Vilken CPU efterliknar du? klockfrekvens? RAM typ?
Jag har plankat OP-koderna och deras mnemonics från Motorola HCS08 även om 6809 är min ursprungliga inspiration.

Arkitekturen är dock min egen även om jag i princip plankat blockschemat över en enkel CPU ur en bok (Heyes, Computer Architecture and Organization).

Så jag efterliknar ingen CPU. Jag försöker bara skapa mig en egen.

Och jag har inga krav på frekvens. Jag är helt enkelt nöjd om jag kan få den att fungera med en "DC-klocka".

Just nu går den på 0,5Hz men den kan också gå på "DC".

Teoretisk maxfrekvens är dock 3MHz. Men då är det de gamla EPROM:en (27C512) som begränsar. CPLD'n klarar minst 150MHz.

MVH/Roger
PS
Bifogar en bild på vald arkitektur.

Re: CPU-hemmabygge

Postat: 14 december 2012, 19:28:55
av Spisblinkaren
bit96 skrev:Imponerande bygge. :bravo:
Alltså, om du har handkodat mellan dec och hex så utgår jag också ifrån att du även programmerat alla EPROM manuellt byte för byte m.h.a. dipswitchar. :)
Tack!

Helt underbar kommentar!

Men nu har du nog imponerats i överkant :)

Jag skapade binära mönster med avseende på de olika kontrollsignalerna och grupperade dom i nibblar (12st totalt). 6 stycken 8-bitars EPROM behövdes således för att generera alla dessa 48 kontrollsignaler (D0-D47, varav 43 används aktivt).

När jag sedan skulle programmera dom mha Dataman 3 behövdes en så kallad S-Record. Detta protokoll (S1) kräver vissa saker som speciellt en checksumma på slutet.

Så när jag satt och skulle räkna ut checksumman för varje Op-kods "kolumnarea" (typ M0) så blev jag tvungen att knappa in varje byte i MS-Kalkylatorn, summera och invertera summan samt trunkera bort eventuell hög byte manuellt.

Detta för att jag inte fattade hur man kunde använda MS Excel för det. Nu vet jag dock att man dels aktivt måste aktivera det funktionsbiblioteket i Excel dels att funktionen heter hex.till.dec(). Att man här måste använda den funktionen har att göra med att funktionen sum() kräver decimala tal. Kalkylatorn hade förstås inte det "problemet".

MVH/Roger

Re: CPU-hemmabygge

Postat: 14 december 2012, 19:45:25
av Spisblinkaren
Lasp skrev:Riktigt Imponerande. Har du läst boken av Tracy Kidder En dators födelse! denna på originalspråk Kidder, Tracy: The soul of a new machine.

Ja Impad blir jag

Vill veta mer säger Lasp ;-)
Tack!

Låter som spännande läsning. Tack för tipset!

MVH/Roger

Re: CPU-hemmabygge

Postat: 14 december 2012, 20:30:48
av Spisblinkaren
calmar skrev:Grymt! Har alltid velat bygga en enklare dator själv från diskreta kretsar.
Har du satt upp nån site med dokumentation nånstans? Kan man få veta mer om arkitekturen?

Fler (porr)bilder? :wink:
Hej & tack!

Vet du vad som är extra roligt?

Jag har programmerat alltihop med hjälp av grindteknik! Xilinx har nämligen ett gratis (obs!) utvecklingsverktyg som heter ECS inbyggt i utvecklingsmiljön (som heter ISE).

Med ECS kan man alltså cadda mha diskreta grindar. Helt sanslöst roligt för jag suger vad beträffar programmeringskunskap. Assembler är det enda jag gillar även om jag förstår vissa fördelar med C.

Men i det här fallet kunde jag alltså nyttja gamla grindkunskaper från 80-talet :D

Jag har alltså caddat rubbet mha diskreta grindar. Det enda lilla undantaget är att ECS vägrade erkänna min grindlösning för klockade vippor (SR-vippa). Efter diskussioner med supporten hänvisades jag till att i stället använda befintliga "optimala" vippor såsom en fördefinierad JK-vippa. Men ack vad det skar sig i stolthetsbröstet när jag tvingades göra det. Nu kan jag nämligen inte fullt ut säga att alla register, räknare och adderare är byggda med hjälp av grindar :(

Jag har ovan bifogat en bild på arkitekturen men gör det igen. Ett försök till förklaring får bli:

FA: Full Adder (det är här addition och subtraktion sker)
CCR: Condition Code Register (det är här utfallet av en aritmetisk operation tas till vara mha flaggor)
SP: Stack Pointer register (håller reda på vart i minnet stacken befinner sig)
SR: Shift Register (är en del av Ackumulatorn. Två SR krävs pga vänster/högerskift)
PC: Program Counter (håller reda på vart i programmet det exekveras kod)
IR: Instruction Register (detta är hjärnan i CPU'n)
IRR: Instruction Register Register (här latchas alla OP-koder in).
BR: Branch Register (sniffar flaggvärdena av en aritmetisk operation. N=Negative, Z=zero).
IRC: Instruction Register Counter (håller reda på delmomenten i en instruktions realisering)

OE står för Output Enable och innebär att data läggs ut på den interna bussen (A eller D)

LD står för Load som innebär att registret laddas synkront med data.

CP står för Clock Pulse och är huvudklockan.

E står för E-clock och är inversen av CP pga tidsmässiga aspekter.

Resten hoppas jag är självförklarande.

Övrig information finns att läsa på: http://sv.wikibooks.org/wiki/CPU_design

Men jag varnar dig. Jag svamlar inledningsvis ganska mycket både om vilken typ av CPU man skulle kunna bygga och om hur. Fast lite senare i boken är det mesta sakligt och relevant. En hel del av informationen är f.ö kopierad från Wikipedia och artikeln Digitalteknik som jag till stora delar också skrivit själv.

Re: CPU-hemmabygge

Postat: 14 december 2012, 20:44:48
av Spisblinkaren
blueint skrev:Kanske man skulle bygga en enkel EMP säker rördator .. ;)
Lustigt att du säger det. Jag bygger nämligen rörförstärkare också :D

MVH/Roger

Re: CPU-hemmabygge

Postat: 14 december 2012, 21:13:23
av Electricguy
Vad är det för slutrör? Riktigt snygga! :D

Re: CPU-hemmabygge

Postat: 14 december 2012, 21:43:06
av Spisblinkaren
Tack!

Det är Sovtek 6550WE.

Numera använder jag dock slutrör av högre kvalitet dvs JJ-Electronic KT88.

MVH/Roger

Re: CPU-hemmabygge

Postat: 14 december 2012, 21:47:28
av blueint
Det finns nog bättre verktyg än Excel för databearbetning av denna typ. Såsom perl.

Re: CPU-hemmabygge

Postat: 15 december 2012, 10:39:26
av anders_bzn
Kul detta. Jag är imponerad. Jag har ju lagat en dator byggd av TTL-kretsar, man får lite annan syn på programmering när man lär sig OP-koderna innan man lär sig mnemonics för instruktionerna..