God måndagkväll, tänkte det var dags att diskutera lite praktikaliteter igen och höra om nån har några bra tips :-) Först och främst de grundläggande byggstenarna jag bygger med: http://www.ludd.ltu.se/~ragge/vtc/drawings/basic-blocks.html Borde vara hyfsat korrekta värden för att snurra i 200kHz på de flesta komponenter. Sen så har jag hållit på och ritat blockscheman över Nova-CPUn och nu tror jag att det börjar vara nåt som kan fungera. Inte helt olikt DGs från den tiden: http://www.ludd.ltu.se/~ragge/vtc/drawings/Blockschema-150314.jpg Jag har också ritat alla ingående delar förutom carry-logiken och statemaskinen för exekveringen, det väntar bara på att bli renskrivet i elektronisk form. Vad som görs för varje instruktion är dock klart. En add kommer till exempel att ta upp 6 klockpulser. Den har 8 register: 4 vanliga + PC + AR (arithmetic) + IR (instruktion) + MB (memory buffer). Alla utom PC är 16 bitar breda. Det finns 3 MUXar: SX (6 input), D (5 input) och MA (2 input + CF driver). ALUn kan i stort sett bara utföra en ADD, men man kan invertera SX-ingången och får därigenom också SUB med vänner. AND får man på köpet. Men: nu kommer det jag stör mej mest på: Det går en oherrans massa rör. De saker jag beskrev ovan är 742 stycken, fördelade på: - 231 ECC91 - 463 EH90 (!) - 32 ECC88 - 16 EAA91 Värst är åtgången av heptoder. Det är främst MUXarna som slukar såna (jag har open-anode i MUXen), så har man 6 ingångar * 16 bit blir det 96 stycken. Här skulle jag behöva tips på hur man kan göra för att få till MUXar som inte behöver såna mängder för att fungera... :-) -- Ragge
On 03/16/2015 10:44 PM, Anders Magnusson wrote:
Först och främst de grundläggande byggstenarna jag bygger med: http://www.ludd.ltu.se/~ragge/vtc/drawings/basic-blocks.html
Inga överraskningar där.
Borde vara hyfsat korrekta värden för att snurra i 200kHz på de flesta komponenter.
Det låter bra. Det är väl i princip samma kretsar som i IBM 604, och där körde de på 50kHz bara, men om du tror 200kHz funkar så kör nog jag på samma eller snarlika kretsar. Börjar känna lust att sätta igång med datorn igen!
Sen så har jag hållit på och ritat blockscheman över Nova-CPUn och nu tror jag att det börjar vara nåt som kan fungera. Inte helt olikt DGs från den tiden: http://www.ludd.ltu.se/~ragge/vtc/drawings/Blockschema-150314.jpg
Jag har också ritat alla ingående delar förutom carry-logiken och statemaskinen för exekveringen, det väntar bara på att bli renskrivet i elektronisk form. Vad som görs för varje instruktion är dock klart. En add kommer till exempel att ta upp 6 klockpulser.
Mycket spännande att det närmar sig implementation!
Men: nu kommer det jag stör mej mest på: Det går en oherrans massa rör.
:)
Värst är åtgången av heptoder. Det är främst MUXarna som slukar såna (jag har open-anode i MUXen), så har man 6 ingångar * 16 bit blir det 96 stycken. Här skulle jag behöva tips på hur man kan göra för att få till MUXar som inte behöver såna mängder för att fungera... :-)
Är varje 6-vägs mux alltså 6 såna pentod-NAND-grindar som du hade i tabellen du urlade, med en spänningsdelare för utgången som de delar på, alla anoder ihopkopplade bara? Jag kan tänka mig att det går att få ner det lite med diodlogik om man kan tänka sig att dedikera utgångarna som insignalerna till muxen kommer från till att bara mata en mux. Tyvärr finns det inte så många såna ställen i ditt blockschema. Hmm... Bjarni
Bjarni Juliusson skrev den 2015-03-17 17:46:
On 03/16/2015 10:44 PM, Anders Magnusson wrote:
Först och främst de grundläggande byggstenarna jag bygger med: http://www.ludd.ltu.se/~ragge/vtc/drawings/basic-blocks.html
Inga överraskningar där. Nope. Det verkar faktiskt vara standardsättet att göra maskiner på den tiden "det begav sig" :-) Det som kan skilja är spänningar och komponentvärdena.
Borde vara hyfsat korrekta värden för att snurra i 200kHz på de flesta komponenter.
Det låter bra. Det är väl i princip samma kretsar som i IBM 604, och där körde de på 50kHz bara, men om du tror 200kHz funkar så kör nog jag på samma eller snarlika kretsar. Börjar känna lust att sätta igång med datorn igen! Kom igen! Jo, 5us klocka är rätt lång tid. RC-kretsarnas tidskonstanter är betydligt kortare än 20us, så det borde ha gått att sparka upp 604:an i betydligt högre hastigheter. Men jag tänkte fokusera på att spara ström till att börja med, och då ligger det bra till.
Sen så har jag hållit på och ritat blockscheman över Nova-CPUn och nu tror jag att det börjar vara nåt som kan fungera. Inte helt olikt DGs från den tiden: http://www.ludd.ltu.se/~ragge/vtc/drawings/Blockschema-150314.jpg
Jag har också ritat alla ingående delar förutom carry-logiken och statemaskinen för exekveringen, det väntar bara på att bli renskrivet i elektronisk form. Vad som görs för varje instruktion är dock klart. En add kommer till exempel att ta upp 6 klockpulser.
Mycket spännande att det närmar sig implementation! Jag har iallafall kommit fram till att jag gör allt som 19"-enheter. Då kan man ha 16 rör på en höjdenhet vilket blir rätt bra :-)
Men: nu kommer det jag stör mej mest på: Det går en oherrans massa rör.
:)
Värst är åtgången av heptoder. Det är främst MUXarna som slukar såna (jag har open-anode i MUXen), så har man 6 ingångar * 16 bit blir det 96 stycken. Här skulle jag behöva tips på hur man kan göra för att få till MUXar som inte behöver såna mängder för att fungera... :-)
Är varje 6-vägs mux alltså 6 såna pentod-NAND-grindar som du hade i tabellen du urlade, med en spänningsdelare för utgången som de delar på, alla anoder ihopkopplade bara?
Yep. Det kommer ju bara att vara en åt gången som leder iallafall.
Jag kan tänka mig att det går att få ner det lite med diodlogik om man kan tänka sig att dedikera utgångarna som insignalerna till muxen kommer från till att bara mata en mux. Tyvärr finns det inte så många såna ställen i ditt blockschema.
Nu har jag tänkt lite, och man kanske kan göra lite roligheter här med diodlogik som du föreslår :-) SX och D består av 6*16 = 96 heptoder vardera == 192 rör. Kör man resistor-diod-logik blir det en diod + ett motstånd per AND, samt att man behöver en triod-or. Det gör att SX och D blir 48 dubbeldioder + 48 dubbeltrioder vardera = 192 rör. Samma som tidigare. Men om man har diodlogik så behöver man katodföljare ut från registren, det blir 48 rör till. Inte bra. Men: Man skall kunna invertera SX i ingången till ALUn, det är 2H*16 + 1T*8 = 40 rör. Dessutom så driver man fulladdern med katodföljare. Det är 16 rör. Om man nu tänker sig att man tar ut och matar SX med inverterade utgången från registren istället för att ha en inverterare och så har man en CF-OR så kan man ersätta inverterlogiken med 32 rör. Vart är vi nu? Originalritningen har 192+40+16=248 rör för SX, D och invertern. Modifierat får vi 192+48+32=272 rör. Det är mera. Får vi dynamiska effekter? Vi borde kunna driva AR->REG med diodlogik, då sparar vi 32 rör. Nu är det break-even. PC får CF-drivning ut vilket gör att MA-MUX kan ha diodlogik. Nu sparar vi 16 rör till. Det här är fortfarande rätt mycket, men jag har en känsla av att det ger ett stabilare system. Dock kräver det dubbeltrioder med fristående katod, och såna har jag ont om. Dessutom kanske man skulle designa om registren att vara CF-INV-CF-INV istället. IBM hade det i 650 tror jag att jag läst nånstans, och det ger ett stabilare register anser dom. Men då blir det ett rör till per bit. Det hade varit trevligt att slippa OR-rören i multiplexern, då hade man sparat en hel del. -- Ragge
Är varje 6-vägs mux alltså 6 såna pentod-NAND-grindar som du hade i tabellen du urlade, med en spänningsdelare för utgången som de delar på, alla anoder ihopkopplade bara?
Yep. Det kommer ju bara att vara en åt gången som leder iallafall.
Om du använder trioder istället för heptoder för att gejta signalerna så kan du halvera antalet rör per input-ord i muxarna. En triod kan ju fungera som en NAND om man kopplar inputtarna till gallret och katoden, fast med ena inputten inverterad, men i fallet med muxarna borde det inte göra något att den ena inputten är inverterad. Det gör heller inget om de två trioderna i ett rör har delad katod, så då kan du använda t.ex. 8st ECC91 för ett input-ord. Bjarni
Bjarni Juliusson skrev den 2015-04-06 21:43:
Är varje 6-vägs mux alltså 6 såna pentod-NAND-grindar som du hade i tabellen du urlade, med en spänningsdelare för utgången som de delar på, alla anoder ihopkopplade bara?
Yep. Det kommer ju bara att vara en åt gången som leder iallafall.
Om du använder trioder istället för heptoder för att gejta signalerna så kan du halvera antalet rör per input-ord i muxarna. En triod kan ju fungera som en NAND om man kopplar inputtarna till gallret och katoden, fast med ena inputten inverterad, men i fallet med muxarna borde det inte göra något att den ena inputten är inverterad. Det gör heller inget om de två trioderna i ett rör har delad katod, så då kan du använda t.ex. 8st ECC91 för ett input-ord. Hm. Rätt smart ja, varför har jag inte tänkt på det? :-) Jag har ju sett den konstruktionen...
Då får man räkna lite på hur mycket ström man behöver för att lyfta/sänka katoden på 8 rör, men det behövs ju bara ett fåtal såna drivrör så det gör mindre. Bra tips, tackar! -- Ragge
Bjarni Juliusson skrev den 2015-04-06 21:43:
Är varje 6-vägs mux alltså 6 såna pentod-NAND-grindar som du hade i tabellen du urlade, med en spänningsdelare för utgången som de delar på, alla anoder ihopkopplade bara?
Yep. Det kommer ju bara att vara en åt gången som leder iallafall.
Om du använder trioder istället för heptoder för att gejta signalerna så kan du halvera antalet rör per input-ord i muxarna. En triod kan ju fungera som en NAND om man kopplar inputtarna till gallret och katoden, fast med ena inputten inverterad, men i fallet med muxarna borde det inte göra något att den ena inputten är inverterad. Det gör heller inget om de två trioderna i ett rör har delad katod, så då kan du använda t.ex. 8st ECC91 för ett input-ord. Nu har jag ritat och räknat lite på det här.
Om man har trioder med separata katoder (E88CC) så borde man kunna styra 16 bittar med 8 rör + 3 effektrör (EL90) genom ett resistornät. Detta räknat med att man har en "viloström" på 5mA. Här är problemet med katodföljare; en ingång i en switch tar då 80mA så det blir en del ström. Här använder jag katoden som den ingång man har för att styra grinden och tar in data på styrgallret. Om man gör tvärtom så måste man ha katodföljardrivning för varje bit istället, så då går det dubbelt så många rör. Jag inser inte hur man skall kunna ha delad katod för två olika bittar? Katoderna kommer ju typ alltid att påverka varandra. -- Ragge
On 04/08/2015 09:53 PM, Anders Magnusson wrote:
Jag inser inte hur man skall kunna ha delad katod för två olika bittar? Katoderna kommer ju typ alltid att påverka varandra.
Men det är två bittar i samma ord, så antingen ska båda vara genomsläppta (katoden låg) eller så ska båda vara blockerade (katoden hög). Bjarni
Bjarni Juliusson skrev den 2015-04-08 22:13:
On 04/08/2015 09:53 PM, Anders Magnusson wrote:
Jag inser inte hur man skall kunna ha delad katod för två olika bittar? Katoderna kommer ju typ alltid att påverka varandra.
Men det är två bittar i samma ord, så antingen ska båda vara genomsläppta (katoden låg) eller så ska båda vara blockerade (katoden hög). Jo, men om den ena biten som släpps igenom är hög så blir ju båda katoderna höga. Är det sen lite skillnad i gallerspänningarna (i fallet båda galler höga) så är det inte säkert att man får igenom nån bit där ena gallret är lite lägre...?
-- Ragge
On 04/09/2015 07:27 AM, Anders Magnusson wrote:
Bjarni Juliusson skrev den 2015-04-08 22:13:
On 04/08/2015 09:53 PM, Anders Magnusson wrote:
Jag inser inte hur man skall kunna ha delad katod för två olika bittar? Katoderna kommer ju typ alltid att påverka varandra.
Men det är två bittar i samma ord, så antingen ska båda vara genomsläppta (katoden låg) eller så ska båda vara blockerade (katoden hög). Jo, men om den ena biten som släpps igenom är hög så blir ju båda katoderna höga. Är det sen lite skillnad i gallerspänningarna (i fallet båda galler höga) så är det inte säkert att man får igenom nån bit där ena gallret är lite lägre...?
OK, det blir kanske lite tight, jag har inte räknat på det. Det kan väl variera tillräckligt mycket mellan hög-nivån på gallren för att ena sidan inte ska lyckas komma upp tillräckligt för att slå på den sidan. Aja, lyckligtvis finns det ju rör med separata katoder som du sa. :) Bjarni
Bjarni Juliusson skrev den 2015-04-09 13:50:
On 04/09/2015 07:27 AM, Anders Magnusson wrote:
Bjarni Juliusson skrev den 2015-04-08 22:13:
On 04/08/2015 09:53 PM, Anders Magnusson wrote:
Jag inser inte hur man skall kunna ha delad katod för två olika bittar? Katoderna kommer ju typ alltid att påverka varandra.
Men det är två bittar i samma ord, så antingen ska båda vara genomsläppta (katoden låg) eller så ska båda vara blockerade (katoden hög). Jo, men om den ena biten som släpps igenom är hög så blir ju båda katoderna höga. Är det sen lite skillnad i gallerspänningarna (i fallet båda galler höga) så är det inte säkert att man får igenom nån bit där ena gallret är lite lägre...?
OK, det blir kanske lite tight, jag har inte räknat på det. Det kan väl variera tillräckligt mycket mellan hög-nivån på gallren för att ena sidan inte ska lyckas komma upp tillräckligt för att slå på den sidan. Aja, lyckligtvis finns det ju rör med separata katoder som du sa. :) Lite mer fundering ger att det å andra sidan blir synnerligen bra om man gör en demux istället. En 4-utgångs demux för 16 bittar blir bara 32 rör typ 6J6. Om man har 4-ingångs mux verkar det dock inte gå att göra bättre än 64 rör, hur man än gör, och jag behöver 4 stycken + 2 styck 2-ingångs. Då är frågan om man skall göra dessa med 64*6CS6 eller 32*6AL5+32*6J6. Tål att funderas på :-)
-- Ragge
Hej Jag har en påse med E92CC (beg) och letade på nätet om någon byggde rördatorer i Sverige. Hittade då ditt namn, så därför frågan: är du intresserad? Eller vet du någon som kan vara det. Pris: Fraktkostnad. Mvh / Jonny, Arboga
Hej Jonny, du skickade till en mailinglista, vilket var en helt korrekt mailinglista för ärendet :-) Vi kollar om nån annan här behöver dom (Bjarni, behöver du lite E92CC)? Jag har inget akut behov, men om ingen annan tar dom så kan jag göra det. -- Ragge Jonny Rosenquist skrev den 2015-05-08 11:45:
Hej
Jag har en påse med E92CC (beg) och letade på nätet om någon byggde rördatorer i Sverige. Hittade då ditt namn, så därför frågan: är du intresserad? Eller vet du någon som kan vara det. Pris: Fraktkostnad.
Mvh / Jonny, Arboga
_______________________________________________ Byggadator mailing list Byggadator@lists.ludd.ltu.se https://lists.ludd.ltu.se/cgi-bin/mailman/listinfo/byggadator
On 05/08/2015 11:45 AM, Jonny Rosenquist wrote:
Hej
Jag har en påse med E92CC (beg) och letade på nätet om någon byggde rördatorer i Sverige. Hittade då ditt namn, så därför frågan: är du intresserad? Eller vet du någon som kan vara det. Pris: Fraktkostnad.
Jag kan kanske tänkas vara intresserad beroende på priset. Hur många rör är det och vad kostar frakten till Uppsala? Bjarni
participants (3)
-
Anders Magnusson
-
Bjarni Juliusson
-
Jonny Rosenquist