0.1 Modultest af hardware Hardwaren af M2 testes ved, at de enkelte blokke først testes hver for sig, og derefter testes det, om hele modulet virker. TS2-monitoren brændes i ROM, og ved at forbinde M2 og M3 til en PC kan TS2-monitoren bruges til at kontrollere, om modulerne virker. Dette kan først gøres, når M3 er blevet testet. De enkelte blokke testes i følgende rækkefølge: 1. Power on reset 2. 8 M Hz krystaloscillator 3. Adressedekoder 4. Interruptkontrolkredsløb 5. Adresse- og databus 6. BERR* generator 7. DTACK* generator 8. NMI knap På gurerne over testopstillingerne er kun de mest relevante komponenter og databen vist. Indgange, der påtrykkes et højt eller lavt signal vil være mærket "HI"eller "LO". Målepunkter vil være markeret med en ring, og det angives, hvilken indgang på oscilloskopet, der anvendes ved "OSC 0"til "OSC 15". 0.1.1 Test af power on reset Der er tre ting, der skal testes på dette kredsløb. Det skal testes, at ben 5 på H1 holdes lavt i minimum 100 ms, når der sættes strøm til kredsløbet. Det skal testes, at ben 5 på H1 holdes lavt i minimum 100 ms, når reset-knappen påvirkes. Det skal testes, at ben 5 på H1 holdes lavt, hvis V CC falder til under 4, 5 V. 1
Figur 1: Test af power on reset Testopstilling for power on reset kredsløbet ses på gur 1. Test 1: Der måles med et oscilloskop på RESET*, ben 5 på H1, og strømmen tilsluttes. Dermed kan den tid, hvor signalet er lavt aæses. Test 2: Reset-knappen påvirkes, og på oscilloskopet observeres det, om signalet på ben 5 går lavt i minimum 100 ms. Test 3: Forsyningsspændningen sænkes langsomt, og på oscilloskopet observeres det, ved hvilken spænding signalet på ben 5 går lavt. - 0.1.2 Test af 8 M Hz krystaloscillator Det skal testes, at oscillatoren svinger med 8 MHz, og at der kan tages en neddelt clock på 800 khz ud fra M68k. 2
Testopstilling for krystaloscillator ses på gur 2. Figur 2: Test af krystaloscillator Der måles med et oscilloskop på ben 8 på MCO1425B og på ben 22 på M68k. Det kan konkluderes, at krystaloscillatoren svinger med en frekvens på 8 M Hz. Det er ikke et perfekt rkantsignal, idet det buger lidt på den opadgående anke, og der er en del ripple, når signalet er lavt. Se gur??. Afvigelsen vurderes dog ikke at være så stor, at den har nogen betydning. Det kan endvidere konkluderes, at der kan udtages en neddelt clock på 800 khz fra M68k. 0.1.3 Test af adressedekoder Det skal testes, om der kan laves et CS* til RAM, ROM, ACIA og Sonar. Testopstilling for adressedekoder ses på gur 3. Input til testopstillingen består af adresseben A 18, A 22 og A 23 og AS*, LDS* og UDS*. Disse input sættes høje eller lave, jævnfør tabel??, og med oscilloskopet måles CS* på udgangene af kredsene D5, E5 og G4. 3
Figur 3: Test af adressedekoder erne er opstillet i tabel 1 og 2. Når der skal laves et CS* til hukommelseskredsløbet sker det ved hjælp af adressebenene, AS* og enten LDS* eller UDS*. A 18 A 22 A 23 AS* LDS* UDS* 0 0 0 0 ROM_L* (OSC 1) ROM_U* (OSC 0) 0 0 1 0 - - 0 1 0 0 - - 0 1 1 0 - - 1 0 0 0 RAM_L* (OSC 3) RAM_U* (OSC 2) 1 0 1 0 - - 1 1 0 0 - - 1 1 1 0 - - Tabel 1: Test af CS* til hukommelseskredsløbet 4
For at gøre tabellen overskuelig er de kombinationer, hvor LDS*, UDS* eller AS* er høje, ikke medtaget i tabellen, idet disse kombinationer ikke giver noget CS*. Når der skal laves et CS* til de perifere enheder, sker det udelukkende ved hjælp af adresseben A 22 og A 23. A 22 A 23 CS* 0 0-0 1-1 0 ACIA* (OSC 4) 1 1 SONAR* (OSC 5) Tabel 2: Test af CS* til perifere enheder Det kan konkluderes, at der bliver lavet et CS* til hukommelseskredsene og de perifere enheder i overensstemmelse med tabel??. Det blev observeret, at hvis adressebenene blev ydende, gik ben 7 på K6 lav, og det kunne eventuelt give et CS* til sonaren. Hvis det viser sig at være et problem, kan det afhjælpes ved at sætte en pull-up modstand på ben 7 på K6. 0.1.4 Test af interruptkontrolkredsløb En fuldstændig test af interruptkontrolkredsløbet kan ikke gennemføres uafhængigt af de resterende blokke. Den vil først blive gennemført, når hele systemet er kørende. Testopstilling for interruptkontrolkredsløb ses på gur??. Interrupt vælges ved at sætte ben 1, 2, 3, 4 og 13 på J4. Det skal kontrolleres, at når der sættes et interrupt på J4, genereres der et IACK* på tilsvarende niveau som interruptnummeret. Med oscilloskopet måles, om der sættes et VPA*, ben 23 på M68k, og om der genereres et VMA*, ben 21 på M68k. 0.1.5 Test af adresse- og databus For at teste adresse- og databussen skal M68k tvinges til at køre en free-run test. Da der ikke er installeret hukommelseskredse endnu, skal M68k tvinges til at køre en gyldig 5
buscyklus. Dette gøres ved at forbinde DTACK*, ben 10, med AS*, ben 6. Dette medfører, at hver gang der startes en hukommelsestilgang ved at sætte AS*, vil DTACK* automatisk sat og dermed afslutte cyklussen. M68K skal endvidere altid se en gyldig op-kode på databussen. Dette kan gøres ved at forbinde databen D 00 D 15 til enten V CC eller stel gennem en modstand [?, side 883]. Testopstilling for adresse- og databus ses på gur 4. Figur 4: Test af adresse- og databus Free-run testen gennemføres ved at sætte strøm til kredsløbet, og med oscilloskopet måle på adresseben A 01 A 23. Der skal måles rkantsignaler på adressebenene, hvor frekvensen halveres ved hvert adresseben. 6
Free-run testen viser at adresse- og databus virker, og der er rkantsignaler på adressebenene, hvor frekvensen halveres ved hvert adresseben, se gur?? 0.1.6 Test af BERR* generator Ved denne test skal det kontrolleres, at BERR* generatoren sætter et BERR*, når der er gået 16 E-clock perioder, hvis AS* forinden ikke er blevet negeret. Når AS* bliver negeret cleares tælleren, og der sættes ikke et BERR*. Det skal endvidere kontrolleres, at når der kommer et SYSTEM POR* ind på ben 9 på G1, sættes der ikke et BERR*. Testopstilling for BERR* generatoren ses på gur 5. Figur 5: Test af BERR* generator Der sættes først et højt, og derefter et lavt signal på ben 1 på G1 og der måles på ben 15 på G1 med oscilloskopet. Derefter sættes der et lavt signal på ben 9 på G1, og der måles på ben 15 med oscilloskopet. Når der sættes et højt signal på ben 1, måles der et lavt signal i 15 perioder og et højt signal i 1 periode på ben 15. Dette svarer til, at AS* ikke bliver negeret, og der bliver 7
sat et BERR*. Når der sættes et lavt signal på ben 1, måles der et lavt signal på ben 15. Dette svarer til, at AS* bliver negeret, og der bliver ikke sat et BERR*. 0.1.7 DTACK* generatoren Denne test skal kontrollere, at der sættes et DTACK* på ben 10 på M68K, når der laves et CS* til enten RAM eller ROM. Det skal endvidere kontrolleres, at DTACK* først sættes efter minimum 159 ns for at sikre, at hukommelseskredsene har stabile data på bussen. Testopstilling for DTACK* generatoren ses på gur 6. Figur 6: Test af DTACK* generator Input til DTACK* generatoren er et CS* til enten RAM eller ROM, og dette vil simuleres ved at sætte enten ben 4 eller ben 5 på H3 lavt, og der måles på ben 11 på H2 med et oscilloskop. Derefter sættes både ben 4 og ben 5 høje, og der måles igen på ben 11 på H2 med et oscilloskop. Når der sættes et lavt signal på enten ben 4 eller ben 5 på H3, tæller H2, og der sættes et DTACK* med en frekvens på 500 khz. Når der sættes et højt signal på ben 4 og ben 5 på H3, kommer der et højt signal på ben 11 på H2, og der sættes ikke et DTACK*. 8
0.1.8 Test af NMI knap Denne test skal kontrollere, om der sættes et IRQ7*, når NMI knappen påvirkes. Testopstilling for NMI knap ses på gur 7. Figur 7: Test af NMI-knap Der måles med et oscilloskop på ben 6 på J3 og ben 6, 7 og 9 på J4. Når knappen ikke påvirkes, er der et lavt signal på udgangen af J3, og det svarer til intet IRQ7*. Når knappen påvirkes, går signalet på udgangen af J3 højt, og dermed sættes der et IRQ7* på ben 4 på J4. Samtidig går alle udgange på J4 lave. 9