Sida 3 av 15
Re: Restaurera en PDP11/04
Postat: 3 september 2013, 20:07:40
av MattisLind
Mer logikanalysator
Gjorde ett nytt testskott med logikanalysator. Pod 1 kopplad till Adress bussen och triggad på MSYN (negativ flank) och Pod 2 kopplad till Databussen triggad av SSYN (negativ flank)
Inte så lovande. Den borde leta efter adress 24 och 26. Varje mulipel om fyra accesser är en körning efter reset. Notera att adressen på raden 3, 7, 11, och 15 ökar med två hela tiden. Någon form av ALU funktion som ger autoincrement med två...
Visserligen inte så uppmuntrande resultat men å andra sidan stämmer det med känslan jag fick att något är på tok när jag hittade det här dokumenet:
http://vaxhaven.com/images/1/11/EK-KD11D-TM-PRE.pdf
Sidan 108, stycke 6.3.3 beskriver mikrokodsförloppet vid kallstart. Det var inte konstigt att jag tidigare inte förstod mikrokodslistningen. Digital anger adressen som den läses ut i pipeline registret, innan inverteraren. Då blir FE = 01..
Alltså
Om man översätter mikrostegn i föregående analysator trace:
Kod: Markera allt
Mikrosteg Utläst värde Inverterat Oktalt
0 FE 01 001
1 0D F2 362
2 0C F3 363
3 0B F4 364
4 0A F5 365
5 09 F6 366
6 08 F7 367
7 07 F8 368
8 D4 2B 053
9 D2 2D 055
10 5F A0 240
11 5E A1 241
12 5D A2 242
13 FF 00 000
14 DD 22 042
15 5C A3 243
Fram till steg 7 ser allt bra men sen ska det ju vara 113 inte 053. Hur kan det bli så här? Bit 6 har blivit en nolla och bit 5 en etta. Fel på PROM:et? Om något wire-oras in på open collector bussen skulle adressen kunna gå till 1 (eftersom det är inverterat), men aldrig tvärtom.
Måste nog försöka kontrollera hela mikroprogrammet. Puh.
Är det någon på forumet som äger en PROM brännare för bipolära PROM?
Re: Restaurera en PDP11/04
Postat: 3 september 2013, 20:57:30
av säter
"Är det någon på forumet som äger en PROM brännare för bipolära PROM?"
Vad är det för PROM?
Re: Restaurera en PDP11/04
Postat: 3 september 2013, 22:40:23
av MattisLind
säter skrev:"Är det någon på forumet som äger en PROM brännare för bipolära PROM?"
Vad är det för PROM?
Det heter 74S471 och är ett 20 pinnars bipolärt PROM som rymmer 256 x 8 bitar. Det finns flera tillverkat av 256 x 8, tex MMI och Signetics och Texas Instruments, men alla hade olika algoritmer och programmeringsspänningar. Dessutom har chipen slutat tillverkas. Det finns några på nätet som säljer tjänsten att programmera PROM, t ex hobbyrom i USA. Men det är ju alltid enklare om man har en egen...
Re: Restaurera en PDP11/04
Postat: 3 september 2013, 22:43:42
av säter
Jag har införskaffat ett par brännare som ska klara äldre EPROM.
Om de klarar 74S471 har jag inte koll på just nu.
Re: Restaurera en PDP11/04
Postat: 3 september 2013, 23:11:50
av bqt
MattisLind skrev:Mer logikanalysator
Gjorde ett nytt testskott med logikanalysator. Pod 1 kopplad till Adress bussen och triggad på MSYN (negativ flank) och Pod 2 kopplad till Databussen triggad av SSYN (negativ flank)
Inte så lovande. Den borde leta efter adress 24 och 26. Varje mulipel om fyra accesser är en körning efter reset. Notera att adressen på raden 3, 7, 11, och 15 ökar med två hela tiden. Någon form av ALU funktion som ger autoincrement med två...
Är du säker på att du kopplat saker rätt?
Det borde aldrig kunna vara accesser till udda adresser, men alla dina accesser ser ut att vara det.
Att adresserna skulle öka med två är däremot helt rimligt.
Visserligen inte så uppmuntrande resultat men å andra sidan stämmer det med känslan jag fick att något är på tok när jag hittade det här dokumenet:
http://vaxhaven.com/images/1/11/EK-KD11D-TM-PRE.pdf
Sidan 108, stycke 6.3.3 beskriver mikrokodsförloppet vid kallstart. Det var inte konstigt att jag tidigare inte förstod mikrokodslistningen. Digital anger adressen som den läses ut i pipeline registret, innan inverteraren. Då blir FE = 01..
Alltså
Om man översätter mikrostegn i föregående analysator trace:
Kod: Markera allt
Mikrosteg Utläst värde Inverterat Oktalt
0 FE 01 001
1 0D F2 362
2 0C F3 363
3 0B F4 364
4 0A F5 365
5 09 F6 366
6 08 F7 367
7 07 F8 368
8 D4 2B 053
9 D2 2D 055
10 5F A0 240
11 5E A1 241
12 5D A2 242
13 FF 00 000
14 DD 22 042
15 5C A3 243
Fram till steg 7 ser allt bra men sen ska det ju vara 113 inte 053. Hur kan det bli så här? Bit 6 har blivit en nolla och bit 5 en etta. Fel på PROM:et? Om något wire-oras in på open collector bussen skulle adressen kunna gå till 1 (eftersom det är inverterat), men aldrig tvärtom.
Du har inte kastat om två bitar då? Alla stegen innan har ju både bit 5 och 6 satt, så det är ju svårt att säga något om detta tidigare än steg 7.
Re: Restaurera en PDP11/04
Postat: 3 september 2013, 23:30:49
av säter
Jag har en EPROM+.
Den verkar kräva en extra adapter.
http://www.arlabs.com/
Dessutom en Data I/O 29B
Inkl. UniPak 2B.
Du får kolla själv i någon devicelist om det kan fungera.
Re: Restaurera en PDP11/04
Postat: 4 september 2013, 21:15:53
av MattisLind
Förväxlade signaler
Precis som bqt trodde så hade jag förväxlar bit 5 och 6 i mikrokodstracen. Den rätta syns nedan. Nu är tracen tagen efter piplineregsitret, därav av första raden saknas jämfört med tidigare. Maskinen exekverar korrekt mikrokod!
En annan tankevurpa var att alla signaler på bussen är aktivt låga. Så den tidigare tracen på adress och data bus måste inverteras. Här är en ny korrekt trace:
Det intressanta att maskinen lägger först ut adress 24 och sedan adress 26. På databussen får den tillbaka 165020 vilket är helt rätt. Det är första adressen i diagnostikprogrammet. Men när processorn lägger ut denna adress som PC för att exekvera så är den förvanskad till 167020. Bit 10 har blivit hög. Tittar man på Bus receiver 8641 chipet så ser man att en av dessa fyra alltid har pinne 6 på 3,78 V, trots att ingången ligger på 3,31V . Jag misstänker att det är något fel på denna. Teoretiskt sett kan det också vara en 74157 MUX denna bus receiver är kopplad till som kortsluter till +5V. Vidare undersökning och utbyte kanske kan ge framgång!
Re: Restaurera en PDP11/04
Postat: 5 september 2013, 00:06:15
av bqt
Lysande! Nu kommer vi någonstans. Mikrokodsdelen är ok, så den kan vi lämna.
Låter onekligen som din 8641 är dålig, men rota på.
Att adress 24 och sedan 26 läggs ut är helt i sin ordning. När strömmen kommer på hanteras det som en trap till adresss 24 av CPUn.
CPUn kommer då att läsa in en ny PSW från adress 24, och en ny PC från adress 26. Och sedan börja exekvera.
Så det enda felet nu tycks vara den bitten som läses in som blir fel.
Re: Restaurera en PDP11/04
Postat: 5 september 2013, 08:10:50
av MattisLind
säter skrev:Jag har en EPROM+.
Den verkar kräva en extra adapter.
http://www.arlabs.com/
Dessutom en Data I/O 29B
Inkl. UniPak 2B.
Du får kolla själv i någon devicelist om det kan fungera.
EPROM+ från Arlabs verkar vara en ren EPROM progarmmerare. Data I/O 29B är ju en fin gammal klassiker. 1984 tydligen. Hittade denna device lista:
http://arcarc.xmission.com/Test%20Equip ... B-RV26.txt.
Här är manualen:
http://bitsavers.informatik.uni-stuttga ... _Oct84.pdf
Japp. Den klarar bipolära PROM. Men inte TI 74S471. Dock Signetics 82S135 och AMD 6309 (AMD köpte MMI för väldigt länge sedan) som är likvärdiga. Fungerar den? Den använder serieport.
Re: Restaurera en PDP11/04
Postat: 5 september 2013, 08:57:48
av sodjan
Som lite kurriosa så kan jag nämna att vi hade en Data I/O 29A ansluten
till våran PDP11 (antingen /23+ eller /84, minns inte vilken av det var) och
vi körde över PROM filer som vi hämtade från CAD systemen i Stockholm.
Seriellt ansluten så klart. Det var en del av Ericssons CAD/CAM system med lokala
PDP'er på fabrikerna som hämtade filer från CAD systemen i Stockholm, postprocesserade
och körde ut filer till NC, CAT (HP 9825/9826 baserade) och andra lokala produktionssystem.
Jag var sys-manager för systemet på fabriken i Norrköping.
Re: Restaurera en PDP11/04
Postat: 5 september 2013, 08:58:38
av anders_bzn
En 84 har jag stående hemma...
Re: Restaurera en PDP11/04
Postat: 5 september 2013, 11:05:40
av säter
"
inte TI 74S471"
Jag såg att NAT 74LS471 var med i listan.
Skillnaden mellan "S" och "LS" kan jag inte.
"
Fungerar den? Den använder serieport."
Ingen aning.
Jag har ropat in den på Tradera, och aldrig provat den.
Du får gärna låna den om du vill.

Re: Restaurera en PDP11/04
Postat: 7 september 2013, 11:03:28
av MattisLind
Den lever!
Här är den lilla icke fungerande otäckingen:
DS8641 är ingen vanlig IC man köper på ELFA tyvärr. Det är en ganska speciellt avpassad transceiver för Digitals bussar. Och eftersom det inte sålts några Digital-maskiner på länge så har chipen slutat tillverkas. Jag hittade en säljare på EBAY som sålde DS86641 för två dollar styck. Jag köpte ett knappt rör för att ha i reserv. Fast leveranstiden från Kina skulle vara två veckor. Det började klia i fingrarna så jag hittade ett exemplar fastlött på ett annat kort. Förskiktigt löddes detta loss och monterades på CPU-kortet.
Därefter kopplades alla Logikanalysator-probar in och maskien startades upp:
Titta minsann. Den lever! Den börjar exekvera diagnostikprogrammet och hamnar därefter i en loop:
Här ligger den och väntar på att få skicka ett tecken på konsolen. Tittar man i kodlistningen för diagnostikprogrammet (
http://www.ak6dn.dyndns.org/PDP-11/M931 ... -248F1.lst) ser man att det stämmer.
Kod: Markera allt
278 ; fall thru for auto echo
279 ; character TX routine
280 ;
281 ; R2 = 8b character to TX in R2<7:0>
282 ; R3 = return address
283
284 165540 105737 177564 txchar: tstb @#dlxcsr ; wait for TX ready
285 165544 100375 bpl txchar ; not ready yet, loop
286 165546 110237 177566 movb r2,@#dlxbuf ; TX exactly what we RX'ed
287 165552 142702 100200 bicb #<200*U>+<200*L>,r2 ; clear MSB upper/lower characters
288
289 165556 022323 retR3: cmp (r3)+,(r3)+ ; bump return address ptr R3 by +4
290 165560 000163 177776 jmp -2(r3) ; return to (R3)-2
291
Det verkar som att serieportkortet DL11 alltid ger 0 tillbaka. Bit 7 i status registret skall sättas till 1 om det går att sända ett tecken (
http://bitsavers.trailing-edge.com/pdf/ ... _Sep76.pdf). Någonting är galet här. Det kan vara fel på kortet eller så är det felbyglat trots allt.
Re: Restaurera en PDP11/04
Postat: 7 september 2013, 11:15:36
av säter
Jag tror jag har en del kort liggande till PDP-11.
Det kan ju vara värt att kolla, om du kör fast och är utan reservkort.
Troligtvis är dessa till PDP-11/05.
Re: Restaurera en PDP11/04
Postat: 7 september 2013, 12:41:05
av bqt
MattisLind skrev:Den lever!
Här är den lilla icke fungerande otäckingen:
DS8641 är ingen vanlig IC man köper på ELFA tyvärr. Det är en ganska speciellt avpassad transceiver för Digitals bussar. Och eftersom det inte sålts några Digital-maskiner på länge så har chipen slutat tillverkas. Jag hittade en säljare på EBAY som sålde DS86641 för två dollar styck. Jag köpte ett knappt rör för att ha i reserv. Fast leveranstiden från Kina skulle vara två veckor. Det började klia i fingrarna så jag hittade ett exemplar fastlött på ett annat kort. Förskiktigt löddes detta loss och monterades på CPU-kortet.
Därefter kopplades alla Logikanalysator-probar in och maskien startades upp:
Titta minsann. Den lever! Den börjar exekvera diagnostikprogrammet och hamnar därefter i en loop:
Finemang! Som jag trodde. Riktigt bra framsteg här...
Här ligger den och väntar på att få skicka ett tecken på konsolen. Tittar man i kodlistningen för diagnostikprogrammet (
http://www.ak6dn.dyndns.org/PDP-11/M931 ... -248F1.lst) ser man att det stämmer.
Kod: Markera allt
278 ; fall thru for auto echo
279 ; character TX routine
280 ;
281 ; R2 = 8b character to TX in R2<7:0>
282 ; R3 = return address
283
284 165540 105737 177564 txchar: tstb @#dlxcsr ; wait for TX ready
285 165544 100375 bpl txchar ; not ready yet, loop
286 165546 110237 177566 movb r2,@#dlxbuf ; TX exactly what we RX'ed
287 165552 142702 100200 bicb #<200*U>+<200*L>,r2 ; clear MSB upper/lower characters
288
289 165556 022323 retR3: cmp (r3)+,(r3)+ ; bump return address ptr R3 by +4
290 165560 000163 177776 jmp -2(r3) ; return to (R3)-2
291
Det verkar som att serieportkortet DL11 alltid ger 0 tillbaka. Bit 7 i status registret skall sättas till 1 om det går att sända ett tecken (
http://bitsavers.trailing-edge.com/pdf/ ... _Sep76.pdf). Någonting är galet här. Det kan vara fel på kortet eller så är det felbyglat trots allt.
Hmm hmm. DL11 har en UART, och TX RDY kommer, om jag inte minns fel, mer eller mindre rakt av från UARTen, så det är ju bara att mäta på kortet. Först vid UART; och sedan fortsätta fram mot buskretsarna på det kortet med. Jag skulle tro att UARTen själv är ok. Dom brukar hålla bra. Men signalen försvinner någonstans på vägen.
Ska vi tippa på en 8641 till?
