Click Een relais computer Agenda Hoe op het

  • Slides: 15
Download presentation
Click Een relais computer

Click Een relais computer

Agenda Hoe op het idee gekomen Ontwerp ◦ Waar komt het vandaan ◦ Aanpassingen

Agenda Hoe op het idee gekomen Ontwerp ◦ Waar komt het vandaan ◦ Aanpassingen aan het ontwerp Gebruikte Onderdelen Werking Grootste uitdagingen Lessons learned

Geschiedenis (wat vooraf ging) TTL-computer BR 076

Geschiedenis (wat vooraf ging) TTL-computer BR 076

On shoulders of giants

On shoulders of giants

Gebruikte onderdelen Voorjaar 2011: zoektocht naar betaalbare onderdelen. Relais: 200 x 2*wissel, 200 x

Gebruikte onderdelen Voorjaar 2011: zoektocht naar betaalbare onderdelen. Relais: 200 x 2*wissel, 200 x 4*wissel Prijs (ebay, 2011) vanaf 0. 73 (1*wissel) en 1. 10 (4*wissel) Relais ‘new old stock’ 4*wissel voor 0. 5 euro/stuk @ 500 stuks (14 kilo). Form factor niet ideaal, gelukkig heeft Aloys montagestrips en frame op maat gemaakt.

Aanpak Fase 1: ◦ bouw registers, bussen, ALU. ◦ test PC programma -> PIC

Aanpak Fase 1: ◦ bouw registers, bussen, ALU. ◦ test PC programma -> PIC -> I 2 C IO Fase 2: ◦ bouw controle circuit (relais) en memory emulator (solid state) ◦ test single step, leds en heel veel puzzelen Fase 3: ◦ Ecosysteem: macro compiler, downloader, memory module, memory emulator.

Ontwerp: vierkant 12 bit databus ◦ single word instructies met voldoende ruimte om bits

Ontwerp: vierkant 12 bit databus ◦ single word instructies met voldoende ruimte om bits 1 op 1 te gebruiken (bijv ALU: 6 bits operatie + 2 bits carry) ◦ Steeds dezelfde fetch cycle (behalve move_i) 12 bit adres bus -> single word adressen Parallel (bussen, ALU etc. allemaal 12 bits)

Blokschema

Blokschema

Registers (maar dan 12 bits…) (maar dan 12 bits)

Registers (maar dan 12 bits…) (maar dan 12 bits)

2 4 fase klok

2 4 fase klok

ALU (21 instructies) GS PS 3210 0000. 1111 0000. 1010 0000. 1100 0000. 0101

ALU (21 instructies) GS PS 3210 0000. 1111 0000. 1010 0000. 1100 0000. 0101 0000. 0011 0000. 1110 0000. 1101 0000. 1011 0000. 0111 0000. 1000 0000. 0100 0000. 0010 0000. 0001 0000. 0110 0000. 1001 1000. 0110 0100. 1001 0010. 1001 1010. 0000 1100. 0000 Q=0 xff Q=A Q=B Q=/A Q=/B Q= A| B Q=/A| B Q= A|/B Q=/A|/B Q= A& B Q=/A& B Q= A&/B Q=/A&/B Q= A^B Q=/(A^B) Q=A+B Q=/A+B=B-A Q=A+/B=A-B Q=A<<1 //shift left Q=B<<1 //shift left http: //6502. org/users/dieter/a 3_4. htm

Instructieset

Instructieset

Lessons learned (1) ‘Vierkant’ misschien niet meest efficiënt, maar geeft wel eenvoud in aansturing.

Lessons learned (1) ‘Vierkant’ misschien niet meest efficiënt, maar geeft wel eenvoud in aansturing. Afhankelijkheid betrouwbaarheid relais ◦ Slechter door ‘old new stock’? ◦ Ca 150 ‘relais-stappen’ per instructies ◦ Stel: 1 op 10. 000 fout => 99. 99 % betrouwbaar Bij 50 instructies: 0. 9999 ^ (150 * 50) = 47% kans op succes… 4 fases * 3 relais/bit (gemiddeld) * 12 bits = 144

Lessons learned (2) Foutzoeken lastig Geen relais-voeten* Fail modes ◦ soms (meeste storing treden

Lessons learned (2) Foutzoeken lastig Geen relais-voeten* Fail modes ◦ soms (meeste storing treden niet consequent op) ◦ te laat (dynamisch / timing, statisch niet zichtbaar) ◦ contact gemaakt of verbroken (twee verschillende storing) Alle verbindingen bidirectioneel ◦ blijft een bit hangen bij load of wordt het onterecht gezet (gemaakt of verbroken) ? * onbetrouwbare relais vinden zou veel sneller gaan, maar extra contacten geven extra kans op storing. Dus lagere betrouwbaarheid.

www. relaiscomputer. nl

www. relaiscomputer. nl