Google Analytics

26 maart 2022

Bouw: De "mini" Microcomp-2 een controversiële computer

In 1981 verscheen in Australië het eerste nummer van het elektronica tijdschrift Talking Electronics, opgericht en gepubliceerd door Colin Mitchell. 

Het eerste nummer van Talking Electronics

Het tijdschrift verscheen onregelmatig en was gericht op de beginnende elektronica hobbyist. Het  bevatte allerlei leuke ideeën voor het bouwen van diverse zelfbouw schakelingen. In mei 1989 verscheen het laatste nummer: 15.

Het Microcomp-1 ontwerp

In de delen 13 en 14 verscheen het ontwerp voor een computer gebaseerd op de Z80 processor met een minimum aan onderdelen: De Microcomp-1. Deze computer bestond uit slechts 3 IC's en bevatte 2 7-segment displays, een 4x4 led matrix, 8 uitvoer leds en een buzzer. Daarnaast bevat het een reset knop, twee bedieningsknoppen A en B en een 8 voudige dip schakelaar waarmee een programma kan worden geselecteerd.

Het printontwerp is enkelzijdig waardoor er veel draadbruggen nodig zijn en ook de led matrix dient aan de achterkant met draadbruggen aan elkaar te worden verbonden. De afmeting van de printplaat bedraagt ongeveer 17 bij 10 cm.

Er kunnen ook uitbreidingen op worden aangesloten zoals een telefoon kiezer, een morse trainer of een 4 cijfer display.

Het controversiële aan dit ontwerp is dat de Microcomp-1 geen RAM geheugen heeft, alleen een EPROM waarin het programma is opgeslagen. Dit beperkt de mogelijkheden van deze computer behoorlijk aangezien alleen de 11 interne registers en de 7 schaduw registers van de Z80 kunnen worden gebruikt voor het vastleggen van gegevens. Bovendien kunnen bepaalde Z80 instructies die met de geheugenstack werken zoals CALL/RET, LD (xx),yy, PUSH/POP en RST xx niet worden gebruikt.

Nu (2022) ruim 40 jaar later is Colin Mitchell nog steeds actief en biedt de meeste van zijn ontwerpen aan als kits via internet. De Microcomp-1 ontbreekt helaas en daarom heeft Brian Chiha met toestemming van Colin een nieuw kleiner formaat (12 x 6,5 cm) printplaat ontworpen: de "Mini" Microcomp-2.

Op deze nieuwe dubbelzijdige printplaat zijn geen draadbruggen meer nodig.

Deze PCB is als Shared Project te bestellen bij PCBWay.
Hoewel je voor deze computer niet direct een praktische toepassing verwacht, heb ik toch een nuttige inzet gevonden: een Z80 Central Processing Unit (CPU) tester.

Veel eenvoudige CPU-testers werken als zogeheten NOP-testers. NOP (No Operation) is een processorinstructie die zelf geen bewerking uitvoert en alleen de programmateller verhoogt. Ontwikkelaars gebruiken deze instructie vooral bij het testen en debuggen van software. Wanneer je leds op de adreslijnen aansluit, knipperen deze bij een correct functionerende processor. Zo controleer je echter slechts een klein deel van de CPU-functionaliteit.

Dit ontwerp pakt het grondiger aan. Het voert een breed scala aan processorinstructies uit, waardoor de werking van de Z80 veel uitgebreider wordt getest. Dat resulteert in een aanzienlijk betrouwbaardere en representatievere test.

De Bouw

Om het testen van Z80 CPU's te vergemakkelijken, soldeer ik een ZIF-voet in plaats van een standaard IC-voet.

De aansluitingen van een Z80 CPU

Het elektronica ontwerp is nog van voor het USB tijdperk en heeft een 9V wissel of gelijkspanning als voedingsingang. Ik ga dit ontwerp aanpassen met een 5V USB B connector en laat alle componenten die nodig zijn voor de oorspronkelijke voeding achterwege.

De buzzer rechtsonder die kan worden gebruikt om signalen op de print hoorbaar te maken ten behoeve van foutopsporing heb ik ook achterwege gelaten.

Links op de foto hierboven zie je een USB B connector op een breakout printplaatje (onderzijde), deze wordt gesoldeerd op de plaats van de 1000uF condensator (net boven de blauwe instel potmeter) en levert dan direct de 5V voedingsspanning. 

Er is dan geen ruimte meer voor de 1uF condensator die gebruikt wordt voor het reset signaal, dus die soldeer ik aan de onderkant. Ook wordt de in- en uitgang van de niet gebruikte 7805 spanningsregulator met een draadbrug doorverbonden (links). Een dikke dubbelzijdige sterk klevende tape zorgt voor fixatie van de USB printje op de hoofdprint (rechts).

De Software

In het Talking Electronics tijdschrift verschenen diverse software lijsten die door Brian Chiha zijn verzameld. Ook heeft hij zelf enkele toepassingen geschreven zoals spellen en deze gezamenlijk in een bestand ondergebracht die kan worden gebruikt om een 2732 EPROM te programmeren en is te downloaden op github.

De software is opgedeeld in twee geheugenbanken. Door middel van een miniatuur schuifschakelaar in het midden van de print kan tussen de twee banken worden geschakeld.

De eerste bank (schakelaar naar rechts) bevat de volgende programma's:

  • 99 op/aftel teller (dip schakelaar op 0)
  • Quickdraw (dip schakelaar op 2)
  • Scrollende tekst (dip schakelaar op 8)
  • Weergave geheugen (dip schakelaar op 20)
  • Led Demo 1 (dip schakelaar op 30)
  • Dobbelsteen (dip schakelaar op 47)

De tweede bank (schakelaar naar links) bevat de volgende software die door middel van een menu met knop A kan worden doorlopen en met knop B kan worden geselecteerd:

  • Blackjack spel
  • Mastermind spel
  • NIM spel
  • Tug 'O War spel
  • LED demo 2

Het programmeren van de 2732 EPROM bleek een behoorlijke uitdaging. Dit verouderde type EPROM wordt door zijn lange programmeer tijd en/of hoge programmeer spanning niet goed meer door moderne EPROM programmers ondersteund. De 2732A werkt met een programmeer spanning (Vpp) van 21V. en de 2732B met 12.5V.

De laatste versie van de populaire TL866II programmer kan nog maar tot 18V programmeren. Oudere versies van de TL866 konden wel tot 21V. Ook het programmeren van de 2732B versie op 12.5V lukt niet met de TL866II omdat de benodigde stroom niet kan worden geleverd en zelfs de langzaamste instelbare programmeer timing toch nog te snel blijkt voor dit type IC.

Uiteindelijk is het wel gelukt door een 2732A type te programmeren met behulp van een GQ-4x4 EPROM programmer. Deze programmer is echter wel ruim 2x zo duur.
De stoom geleverd door de 5V USB aansluiting bleek niet voldoende dus dient ook een externe 9V voeding op de programmer te worden aangesloten. De programmeer snelheid dient bovendien te worden verlaagd door Speed: 0 in te stellen.

Links de TL866II programmer en rechts de GQ-4x4

Het eindresultaat


Een werkende "Mini" Microcomp-2 met het op/aftel programma en een werkend geteste Z80 CPU.

Rest nu nog om software te schrijven die speciaal gericht is op het testen van Z80 processors door het uitvoeren van zo veel mogelijk instructies en bovendien softwarematig kan detecteren of het een NMOS of CMOS type Z80 betreft.

16 maart 2022

Bouw: EPROM emulator NG

In veel oudere (8-bit) computers worden Erasable Programmable Read-Only Memory (EPROM's) gebruikt voor de opslag van software en gegevens. Deze geheugens kunnen met behulp van een programmer zoals de populaire TL866II worden geprogrammeerd. Eenmaal voorzien van de data blijft deze opgeslagen in het IC, ook als het IC niet op de voedingspanning is aangesloten. Het geheugen kan dan telkens opnieuw worden uitgelezen.

Om een EPROM opnieuw te kunnen programmeren dient eerst in inhoud te worden gewist door middel van Ultra Violet (UV) licht van een specifieke golflengte voor een duur van ongeveer 15-30 minuten. Daarna kan deze weer met nieuwe gegevens worden geprogrammeerd.

Een EPROM uit 1987 van het type AM2732 (4k x 8)
D.m.v. het glaasje in de behuizing kan de inhoud van
de inwendige chip worden gewist met UV licht.

Met name bij ontwikkeling van nieuwe software en het testen daarvan kost het steeds wissen en opnieuw programmeren van de EPROM veel tijd. Het zou heel handig zijn als de software aanpassing die op de computer is gedaan direct in het apparaat waar de EPROM in zit beschikbaar is.

Om deze reden heeft Kris Sekula van My Geeky Hobby een EPROM emulator ontwikkeld: de zo genaamde "EPROM Emulator NG". Deze emulator kan de volgende EPROM's emuleren: 2716, 2732, 2764, 27128, 27256 en de 27512.

Op de website van My Geeky Hobby zijn voorbeelden te zien waar deze emulator zoal kan worden toegepast.

De Hardware

De printplaat van de EPROM Emulator NG versie 2.1

De onderdelen worden gesoldeerd
De printplaat bevat onder andere een Arduino Nano t.b.v. de communicatie met de PC en de aansturing van de onderdelen op de print, een AS6C1008 (128k x 8) SRAM voor de opslag van de data, een 25LC512 (64k x 8) seriële SPI EEPROM ten behoeve van "permanente" opslag en enkele schuifregisters en logica ten behoeve van de aansturing en twee transistors voor de aansturing van de externe reset signalen.

Op de print wordt een 34 polige IDC connector geplaatst waarop een bandkabel kan worden aangesloten die aan het andere uiteinde een 28 polige voet bevat die in de IC voet van de EPROM kan worden gestoken. Daarnaast zijn er nog twee testclips beschikbaar waarmee een reset kan worden uitgevoerd op de computer waar de EPROM aanwezig is.

Ik plaats IC voeten voor de IC's en twee hoge header connectors voor de Arduino Nano omdat eronder ook nog onderdelen zitten.

De printplaat is gereed en de Arduino geplaatst.

Nu kan de bandkabel worden gemaakt en dit bleek nog niet zo eenvoudig. De bandkabel IC plug van Electrosonic, type FDP-628-T kon ik alleen vinden bij het Amerikaanse DigiKey.
De verzendkosten van 18 euro zijn pittig, het beste is om de bestelling dan maar te combineren met andere in Europa slechter verkrijgbare onderdelen.

Ik heb een 40 aderige bandkabel gebruikt die ik nog had liggen en deze gestript op 30 aders. De bandkabel wordt op de gewenste lengte geknipt waarbij twee draden voor de test clips langer worden gelaten. Op de printplaat is een 34 polige IDC gebruikt omdat deze connector gebruikelijk is en goed te verkrijgen. Let er op dat de bovenste 4 aansluitingen op deze connector worden vrijgehouden.

Ten behoeve van het bevestigen van de connectoren op de bandkabel gebruik ik een krimptang zoals op de afbeelding links. Let erop dat de connectoren precies haaks op de bandkabel staan voordat deze erop wordt geperst. Het ging goed bij de normale IDC connector, maar het ging al meteen mis met de IC plug. Op de onderkant komt zoveel druk te staan dat deze connector direct door midden breekt. Het beste is om hier een mini breadboard te gebruiken zodat de pinnen van de IC plug hier in kunnen worden gestoken en het geheel in een bankschroef kan worden samengedrukt.

Nu kunnen de reset clips worden gesoldeerd. Met behulp van deze clips (actief laag of actief hoog) kan de aangesloten elektronica automatisch worden gereset nadat de inhoud van de ge-emuleerde EPROM is gewijzigd. Aangezien de bandkabel draden nogal fragiel zijn heb ik de draden bij de "ingang" de plug vastgezet met een druppel "hot glue".

De EPROM Emulator NG compleet met bandkabel en reset clips.

De Software

De software bestaat uit twee delen:

  • De software voor de Arduino ten behoeve van de aansturing van de print en communicatie met de PC, geschreven in C++
  • De software voor de PC ten behoeve van selectie van het type EPROM, de COM poort, het bestand met de EPROM inhoud en andere instellingen, geschreven in Python.

De EPROM emulator NG software is beschikbaar op Github.

Voor de Arduino Nano heb ik firmware versie 2.0rc4 (EPROM_EMU_NG_FW_2.0rc4.ino) gebruikt. Deze software heb ik met behulp van de Arduino IDE op de Arduino Nano geladen.

Om het Python script (EPROM_NG_v2.0rc3.py) op de PC te kunnen gebruiken dient eerst Python zelf te worden geïnstalleerd en vervolgens nog de libraries pySerial en pySimpleGui door middel van:

pip install pyserial
pip install pysimplegui

Hierna kan het script worden gestart met parameters op de command line, bij voorbeeld:

python EPROM_NG_v2.0rc3.py -mem 27256 -spi y -auto n 27256.HEX com4

of zonder parameters om de grafische interface te starten:


In een van de vervolg blogs zal ik deze EPROM emulator gaan testen in combinatie met een nog te bouwen retro computer.

20 februari 2022

Toepassing: Testen met de Retro Chip Tester Professional (deel 2)

In mijn vorige blog zijn TTL en TTL LS IC's getest met de Retro Chip Tester (RCT) Professional. In deze blog komen de resultaten van o.a. een selectie CMOS IC's aan bod. CMOS staat voor Complementary Metal Oxide Semiconductor. Dit is een halfgeleider techniek die gebruik maakt van metaaloxide-veldeffect transistoren. In tegenstelling tot de stroom gestuurde TTL IC's zijn de CMOS ingangen spanning gestuurd en zouden dus probleemloos getest moeten kunnen worden door de RCT.

De Hoge en lage uitgangsspanningen zijn bij een 5V voedingsspanning anders gedefinieerd dan bij TTL: voor CMOS IC's geldt dat de uitgangsspanning groter of gelijk aan 4,95V dient te zijn bij een logische H (1) en kleiner of gelijk aan 0,05V bij een logische L (0).

CMOS IC's zijn trager dan TTL IC's en veel gevoeliger voor statische ladingen.

Testresultaten CD/HEF/MC CMOS serie.

HEF4001BP 4x 2-input NOR Philips 1991 Chip OK
HCF4011BE 4x 2-input NAND SGS 1993 Chip OK
MC14012BCP 2x 2-input NAND Motorola 1978 Chip OK
MC14013BCP 2x D FF S/RS Motorola 1981 Chip OK
HEF4016BP 4x analog switch Philips 1984 Chip OK
HEF4017BP 4-bit dec counter Philips 1986 Chip OK
HEF4018BP 5-stage Johnson counter Philips 1979 Chip OK
MC14023BCP 3x 3-input NAND Motorola 1978 Chip OK
CD4026BE Decade counter 7-seg RCA 1979 Chip Failed
HEF4027BP 2x J-K FF S/RS Philips 1979 Chip OK
HEF4030P 4x 2-input XOR Philips Geen datecode Chip OK
HCF4040BE 12-bit counter STMicroelectronics 1991 Chip OK
HEF4042P 4x latch Philips Geen datecode Chip OK
HEF4046BP 2x 3-input NOR/INV Philips 1988 Chip OK
HEF4049BP 6x inverter Philips 1975 Chip OK
HEF4050BP 6x buffer Philips 1979 Chip Failed (2x)
HEF4066BP 4x analog switch Philips 1980 Chip OK
CD4069UBE 6x inverter RCA 1974 Chip OK
HEF4071BD 4x 2-input OR Philips 1972 Chip OK
HEF4072P 2x 4-input OR Philips 1979 Chip OK
HCF4093BE 2x 2-input NAND STMicroelectronics 1991 Chip OK
HEF40097BD 2/4-bit buffer Philips 1985 Chip OK
HEF40098BP 2/4-bit buffer INV Philips 1988 Chip OK
40106BP 6x inverter ST Philips 1984 Chip OK
HEF40193BP 4-bit bin counter Philips 1989 Chip OK
HEF4528BP Multivibrator Philips 1988 Niet mogelijk
HEF40097BD Shift register Philips 1978 Chip OK

4016
De HEF4016 (analoge schakelaar) wordt alleen digitaal getest. In de professionele testwereld zou b.v. ook de uitgangsweerstand worden gemeten als functie van de ingangsspanning zoals in onderstaande opstelling met externe spanning- en stroombronnen.

4026
De RCT geeft aan dat bij IC 4026 (een decade teller met 7-seg display uitgang), de 7 segment display uitgangen A, D, E en F defect zijn (altijd laag): C01HHHLGHHHHH00V
De letter C op pin 1 geeft aan dat hier een clock signaal wordt aangeboden.
Metingen bevestigen de uitkomst van de RCT. De Chinese IC tester kan dit IC niet testen. 

4050
Bij de 4050 (6 voudige buffer) blijken enkele uitgangen defect en ook de Chinese IC tester geeft aan dat dit IC defect is.

4528
Zoals ook bij de TTL IC's kan het IC 4528 (multivibrator) niet worden getest op beide testers.

40097
Het 40097 IC kan niet op de Chinese IC tester worden getest. Alhoewel er na de keuze "CD40" 3 cijfers ingevoerd kunnen worden kan simpelweg geen 0 worden gekozen voor het eerste cijfer. Dit is een duidelijke tekortkoming in de bediening.

De RCT richt zich voornamelijk op oude IC's, maar hoe zit het dan met moderne high-speed CMOS IC's, zoals de HC serie?

Testresultaten HC serie (High-Speed CMOS)

SN74HC00N 4x 2-input NAND Texas Instruments 2021 Chip OK
74HC04 6x inverter Chinese kloon 2018 Chip OK
SN74HC08 4x 2-input AND Texas Instruments 2020 Chip OK
SN74HC175N 4-bit D FF Texas Instruments 2017 Chip OK
SN74HC245 8x buffers Texas Instruments 2021 Chip OK
CD74HC4017 (4017) 4-bit dec counter Texas Instruments 2018 Chip OK
CD74HC390E 2x 4-bit dec counter Texas Instruments 2018 Chip OK
SN74HC541N 8x buffers Texas Instruments 2021 Chip OK
SN74HC595 8-bit shift reg. Chinese kloon 2018 Chip OK
CD74HC597 8-bit shift reg. Texas instruments 2004 Chip OK

Hier testen alle moderne IC's OK, ook de goedkope bij AliExpress gekochte Chinese IC klonen functioneren prima.

Als de CD74HC4017 in de Comparelist.html database wordt opgezocht, wordt deze niet gevonden, terwijl deze wel als 4017 getest kan worden. De verwijzing van de CD74HCxxxx  serie kan wellicht nog in deze database worden opgenomen.

Testresultaten DRAM

MN4164P-15A DRAM 64k x 1 Matsushita 1983 Chip OK

De test cyclus die hier wordt doorlopen bij de standaard instellingen is:
Checking 0, 1, 0101..., 1010..., rnd(2)
De totale testtijd voor dit IC is 1:01, gemiddeld circa 12.4 sec. per cyclus.
In het instellingen menu kunnen de March Y en March U geheugentesten worden toegevoegd, als beide worden aangezet dan bedraagt de totale testtijd 2:48.
Met March Y kunnen fouten als "Address-Decode Fault" (AF), "Stuck-At Fault" (SAF), "Transition Fault" (TF) en sommige "Coupling Faults" (CF) worden opgespoord.
Met March U kunnen niet aan elkaar gelinkte geheugen fouten worden opgespoord.
Al deze mogelijkheden maken het testen van de geheugen IC's zeer betrouwbaar.

Testresultaten SRAM

AS6C1008 (xx1024) SRAM 128k x 8 Alliance 2021 Chip OK

Bovenstaande IC codering is een voorbeeld van dat het niet altijd direct duidelijk is met welke RCT selectie een IC gemeten kan worden. Met de bijgeleverde database "Comparelist.html" kan dit IC worden opgezocht en wordt aangegeven met welk type gemeten moet worden, in dit geval de xx1024.


Testresultaten ROM

901229-03 (2364 8k x 8, 24p) Commodore 1541 fdd
(Active states L=20)
MOS 1985 CRC32: 9126E74A
310654-03 (27256 32k x 8, 28p) Commodore 1571 fdd MOS 1985 CRC32: 3889B8B8
318045-01 (27256 32k x 8, 28p) Commodore 1581 fdd MOS 1987 CRC32: 113AF078
251913-01 (23128 16k x 8, 28p) C64 Basic 2r2 / Kernal
(Active states L=20, 22 H=27)
MOS 1985 CRC32: 0010EC31
318018-02 (23128 16k x 8, 28p) C128 Basic 7.0 low MOS 1985 CRC32: 6AAAAFE6
318019-02 (23128 16k x 8, 28p) C128 Basic 7.0 high MOS 1985 CRC32: D551FCE0
318020-03 (23128 16k x 8, 28p) C128 Basic 7.0 / Kernal MOS 1985 CRC32: 1E94BB02
390059-01 (2364, 8k x 8, 24p) C128 Character US MOS 1985 CRC32: 6AAAAFE6
Amstrad (232000, 256k x 8, 32p) NC100 firmware v1.06 English (Amstrad) 1992 CRC32: 849884F9

De ROM's kunnen worden herkend op basis van de CRC32 door plaatsing van het bestand customcrc32.txt en het index bestand customidx.bin op de SD kaart van de RCT. Het txt bestand kan verder worden uitgebreid door extra regels toe te voegen en het index bestand opnieuw te genereren met het programma customcrc32.exe.

Voorbeeld van herkenning van een C128 ROM.

Testresultaten EEPROM

W27C512 64k x 8 C64 Pika Cartridge Winbond
CRC32: 3CBD64C6
AT27C512R 64k x 8 C64 Ultimate Diag. Test Cart. Atmel 2020 CRC32: 633A951A
AT28C16 (2716) 2k x 8 (onbekende inhoud) Atmel 2005 CRC32: DB79A334
AT28C16 (2716) 2k x 8 (onbekende inhoud) Atmel 2012 CRC32: C3DD91A9
AT28C16E (2716) 2k x 8 (onbekende inhoud) Atmel 1990 CRC32: B9173830
AT28C16 (2716) 2k x 8 (onbekende inhoud) Atmel 2013 CRC32: 61574F2D
AT28C16 (2716) 2k x 8 (onbekende inhoud) Atmel 1985 CRC32: 881E2701

Wanneer een van de AT28C16 (als test) met opzet 180 graden gedraaid in de ZIF voet wordt geplaatst is aan de dimmende verlichting van het display te zien dat er redelijk veel stroom wordt getrokken. Door de begrenzingen (weerstanden en Zener dioden) levert dit geen schade op aan het IC of de RCT.

Wanneer de OK knop langer dan 1 seconde wordt ingedrukt, wordt de inhoud van een ROM opgeslagen op de SD kaart. Als bestandsnaam wordt de CRC32 uitkomst gebruikt.

Testresultaten EPROM

D27256 32k x 8 Intel 1986
CRC32:1B43EABD (leeg)
D27256 4x 2-input NOR Intel 1986 CRC32:1B43EABD (leeg)
D27256 6x inverter Intel 1986 CRC32:1B43EABD (leeg)
M27C256B C64 JIFFY / JAFFY STMicroelectronics ? CRC32: B141FAD6

Opvallend is dat wanneer het IC D27256 met lege inhoud verkeerd wordt geplaatst (180 graden gedraaid), een andere CRC32 wordt weergegeven: 4F65CB62. Er is dus geen indicatie dat het IC verkeerd is geplaatst, ook wanneer er geen IC wordt geplaatst wordt de CRC32 van een leeg IC weergegeven. Er kan niet worden bepaald of de EPROM geheel of gedeeltelijk defect is.

Overige IC's

Onder menu Logic > Misc Logic Tests 2 zijn IC's te vinden zoals Transitor arrays, Darlington arrays, Opamps en een tweetal Commodore PLA's, Mijn C128 PLA 315012-01 kan niet gemeten worden omdat deze maar liefst 48 pinnen heeft en dus niet in de voet past. Ook een SN754410NE kan niet worden getest.

Testresultaten overige IC's

ULN2003L 7x Darlington array Unisonic 2020 OK
ULN2803APG 8x Darlington sink driver Toshiba 2020 OK
741HC Opamp Fairchild 1975 OK
315012-01 C128 PLA MOS 1986 Niet mogelijk
CA3086 NPN transistor array RCA 1990 Chip Failed
SN754410NE 4x Half-H driver Texas instruments 2013 Niet mogelijk

741HC
IC's in TO behuizingen kunnen ook worden getest, zoals deze 741 Opamp in TO-99 behuizing.
Let bij het buigen van de pinnen op de juiste pin volgorde. Het metalen lipje geeft bij dit IC pin 8 aan.

CA3086
De RCT geeft de volgende foutcode aan bij het testen van de CA3086 L001L10L10L10L


Dit zou een defect aan de transistor tussen pin 1 2 en 3 betekenen. Echter wanneer deze transistor wordt aangesloten op een transistor tester blijkt deze wel te functioneren. Wellicht heeft de RCT nog een probleem met het correct testen van dit IC.

De transistor op pin 1, 2 en 3 aangesloten op een transistor tester,
geeft een correct functionerende NPN transistor aan.

Update 28-02-2022: Naar aanleiding van mijn feedback heeft de ontwerper van de RCT Stephan Slabihoud de test bekeken en vastgesteld dat de basis stroom te laag was om de transistor te verzadigen. Hij heeft de test aangepast en vanaf firmware versie 0.22 kan dit IC correct worden getest.

Testresultaten displays

Een heel andere mogelijkheid is het testen van cijfer/tekst displays. Deze mogelijkheid is te vinden onder het menu: Logic > Misc Tests.


A 745-007 (TIL311) Dialco 1979 OK
B HDSP-2000 HP 1988 Niet mogelijk
C HP5082-7466 HP 1983 Niet mogelijk
D QDSP-6061 HP 2016 Niet mogelijk
E HPDL1414 (DL1414) HP 1993 OK
F FND507 (1x7 seg, 10p, CA:3,8) (Korea) 1984 1defect van 3
G ACD8143 ADH-Tech 1983 Niet mogelijk
H KW2-561CGA (2x7 seg, 18p, CC:13,14) Lucky Light 2019 OK
I KW2-561ASA (2x7 seg, 18p, CA:13,14) Lucky Light 2019 OK
J 5621AS-1 (2x7 seg, 18p, CC:13,14) XLITX 2019 OK
K HDSP-523G (2x7 seg, 18p, CC:13,14) Avago 2018 OK
L SA56-11EWA (1x7 seg, 10p, CA:3,8) Kingbright 2016 OK
M TDSR5150 (1x7 seg, 10p, CA:3,8) Vishay 2018 OK

Door de lage stroom lichten bij de 7 segment displays alleen de "high brightness" varianten zichtbaar op.

HDSP-2000
Dit is een 4 cijferig alfanumeriek display (14 pins).

HP5082-7466 en QDSP-6061
Dit zijn vijf cijferige bubble displays en worden niet ondersteund.

HPDL1414
Het resultaat van dit IC is altijd "Chip OK" of er nu wel of geen display is geplaatst of verkeerd is geplaatst. De correcte werking dient van het display zelf afgelezen te worden. Van links naar rechts wordt achtereenvolgens getoond: 0 1 2 3 gevolgd door L M N O.

FND507
Van dit 7 segment display was er 1 defect, foutcode: HH1HHHH1LH. De L op positie 9 geeft aan dat segment f defect is. Dit is ook door meting bevestigd.

ACD8143
Dit is een tweevoudig 3 kleuren 7 segment display (14 pins) en wordt niet ondersteund.

Conclusie

De RCT blijkt een goedkope en betrouwbare tester te zijn waar zeer veel uiteenlopende IC's mee getest kunnen worden. Vooral op het gebied van de oudere IC's (RAM/ROM) die niet meer op moderne testers getest kunnen worden, onderscheid deze tester zich van andere.
Handig bij reparatie van oude (spel)computers of andere retro hardware.
De uitstekende handleiding van maar liefst 185 pagina's (versie 2022-02-05), geeft ook goed aan waar valkuilen kunnen zitten tijdens het meten, waar op te letten en wat de beperkingen zijn van de RCT tester.

De basis van deze test was mijn verzameling (oude) IC's. Uiteraard zijn er nog veel meer mogelijkheden op deze RCT tester aanwezig waar ik nog niet op ben ingegaan zoals de vele conversie printplaatjes die in de ZIF voet gestoken kunnen worden waardoor er nog veel meer getest kan worden. De tester wordt bovendien steeds uitgebreid met nieuwe mogelijkheden en van tijd tot tijd verschijnt er dan nieuwe software zoals de mogelijkheid om oude EPROM's te kunnen programmeren vanaf firmware versie v.20.

Alle IC's gaan een keer stuk, het moment waarop deze defect raken is afhankelijk van zeer veel verschillende oorzaken. Door het steeds opwarmen en afkoelen van een IC kan een mechanische spanning op het silicium kristal ontstaan waardoor deze kan breken. Wordt een IC ongebruikt opgeslagen dan gaat deze dus langer mee dan wanneer gebruikt. Er zijn ook tal van andere oorzaken, zoals ionen dispersie uit het substraat of chemische processen die leiden tot hogere weerstandswaarden of onderbrekingen. Complexe IC's met hele kleine afmetingen zullen eerder defect raken dan de simple logica IC's uit de jaren 70 die ook nog in verhouding een veel groter silicium kristal hebben.

Het oudste IC uit mijn collectie is bijna 50 jaar oud en functioneert nog prima! Uit zo'n 100 geteste IC's bleken er maar 5 echt defect, dat had ik niet verwacht en heb mijn prognose over de verwachte levensduur van IC's naar boven bijgesteld...

09 februari 2022

Toepassing: Testen met de Retro Chip Tester Professional (deel 1)

In mijn vorige blog heb ik de bouw van de Retro Chip Tester (RCT) Professional beschreven. De afgelopen weken heb ik me verdiept in de mogelijkheden van deze tester en heb een selectie van mijn IC's uit de jaren '70 '80 getest en deze testresultaten vergeleken met een andere bekende merkloze Chinese IC tester. Ondertussen is er een nieuwe firmware voor de RCT uitgebracht en heb ik versie 0.21 beta4 inmiddels vervangen door v0.21.

Bediening en functies van de RCT

Op het moederbord zijn 3 leds en een LCD display aanwezig. Het LCD display wordt gebruikt om het te testen IC te selecteren en geeft informatie over de functie van het IC en waar het in de voet moet worden geplaatst en na afloop van de test wordt het resultaat getoond.

Aan de linkerkant zijn twee rode leds aanwezig waarvan de bovenste aangeeft dat het moederbord van voedingsspanning wordt voorzien en de onderste geeft aan dat het IC van spanning wordt voorzien. Het te testen IC wordt alleen van voedingsspanning voorzien tijdens het testen. Dit is een goede ontwerpkeuze, zodat er niets verkeerd kan gaan tijdens het plaatsen van het IC in de testvoet. De led rechts van het midden geeft aan dat het test proces in werking is. Mocht dat lang duren, b.v. bij RAM IC's dan knippert deze led.
Op de voedingsprint aan de bovenkant zijn 4 leds aanwezig, de rode links geeft de inkomende voedingsspanning aan van de Barrel connector of de USB connector en de 3 groene geven de +12V/+5V/-5V uitgangsspanningen weer.

Op de RCT (versie 1.2k) zijn vijf drukknoppen aanwezig. 

De reset knop initialiseert de tester naar de begintoestand, hiermee kan ook een lopende test worden afgebroken. De functie van de overige knoppen kan verschillen per hoofd/sub menu.

In het hoofdmenu kan met behulp van de Jump knop een van onderstaande hoofdcategorieën worden geselecteerd (v0.21), de daarbij weergegeven typen zijn slechts de belangrijkste.

SRAMs common > 2021, 2114, 6550, xx16
SRAMs uncommon > 3101, 2101, 2111, 8185
SRAMs cypress > x167, x168, x1257
DRAMs common > 2104, 4116, 4164, 4464
DRAMs uncommon > 41128, 4332, SIMM, ZIP
FIFO > 40105, 74222, 74235
EPROM > 27xxx, 1702, ES
PROM/ROM 1 > 23xxx, 6540, 2513
PROM/ROM 2 > 7488, 74S271, 82S321
LOGIC > 74xx, 40xx, PAL, Misc
CUSTOM > Custom definitions
PROGRAMMING > Experimental
SERVICE > Search, Info, Config

Na het kiezen van een hoofdcategorie kan met behulp van de >>>, <<< en OK toetsen een of meerdere subcategorieën worden gekozen en uiteindelijk kan het betreffende IC worden geselecteerd. Vooral bij de selectie LOGIC IC's zijn dit lange lijsten en duurt het lang om één voor één door te stappen, maar als de >>> of <<< knop langer wordt ingedrukt worden er grotere sprongen gemaakt om sneller bij het gewenste IC uit te komen. Persoonlijk had ik voor deze selectie liever een zogenaamde "Rotary dial" (draaiknop) willen zien, maar dit zou ook een hele snelle afhandeling van de rotary dial pulsen door de ATMega microcontroller vergen, dus ik snap wel de ontwerp keuze. De knop "Func Top" brengt je terug naar het begin van de (sub) selectie en met de OK knop wordt een keuze bevestigd of wordt het testen gestart. Bij het testen van ROM's kan met het langer drukken op de OK knop de inhoud van de ROM worden opgeslagen op de SD kaart of kan het testresultaat worden opgeslagen.
Bovenstaande is slechts een beschrijving van de meest elementaire bediening. Er zijn nog veel meer functies aanwezig die uitgebreid staan beschreven in de "Readme_Pro" handleiding.

Vergelijking RCT met een Chinese IC tester

Alhoewel de specialisatie van de RCT zich richt op (oude) typen RAM/ROM/EPROM heb ik me in deze RCT test meer gefocust op het testen van zogenaamde Logic IC's, zodat ik ook resultaten kan vergelijken met een goedkope merkloze Chinese IC tester genaamd "IC tester". 

Deze IC tester heeft in tegenstelling tot de RCT een smalle IC voet waardoor brede IC's zoals de 74116 niet op deze tester getest kunnen worden. Op de RCT kunnen zowel smalle als brede IC's worden getest. Dit zou nog opgelost kunnen worden met een verloopvoet, maar de 74116 wordt ook niet ondersteund door de software.

De IC tester kan logische IC's aan uit de 74HC, 74LS, CD40, HEF40 en de 45 serie aan, maar ook wat analoge IC's zoals Darlington transistor arrays (ULN), enkele Op-Amps (LM/TL), de NE555 en opto couplers. De RTC beperkt zich tot digitale IC's met combinatorische logica en een beperkt aantal transistor arrays en op-amps. De keuze aan te testen logische IC's is bij de IC tester redelijk beperkt, terwijl de RCT bijna alle logische IC's uit de 74 en CD40 serie aan kan.

De IC tester is in staat om bij (goed functionerende) IC's met een behoorlijke nauwkeurigheid heel snel te detecteren welk IC is geplaatst. Dit kan handig zijn als de opdruk niet meer leesbaar is. De RCT beschikt niet over deze mogelijkheid. Ik vind de IC selectie d.m.v. de cursor toetsen op de IC tester handiger en sneller in gebruik dan bij de RCT.

Een heel groot voordeel van de RCT is dat deze ook laat zien wat er fout is, de IC Tester laat alleen goed of fout zien, zonder nadere informatie.

Testresultaten

De meeste IC's uit de 7400 reeks hebben een +5V op de meest linkse pin boven en 0V op de meest rechtse pin onder. maar bij een aantal IC's zit de voedingsspanning op andere pinnen. De RCT zorgt zelf voor de juiste voedingsspanning op de juiste pinnen. Over het algemeen worden de IC's uiterst links in de ZIF voet geplaatst, maar voor een aantal IC's geldt een uitzondering en wordt op het display de positie aangegeven (Pos) geteld vanaf de linkerkant van de ZIF voet. Het is dus iedere keer goed opletten of er een positie op het display wordt aangegeven zodat het IC op de juiste manier geplaatst wordt. Mocht het IC verkeerd worden geplaatst dan gaat deze niet stuk maar wordt het uiteraard als defect getest.

Links een 7496 op positie 4 en rechts op 4049 op positie 9

Ten behoeve van het testen heb ik een aantal TTL IC's geselecteerd uit mijn jaren '70 '80 IC verzameling van diverse merken. TTL staat voor Transistor Transitor Logic die in 1964 werd geïntroduceerd. Deze IC techniek was de opvolger van de DTL (Diode Transistor Logic) die in 1962 was geïntroduceerd. 

Testresultaten TTL (bipolair) IC's

7400PC 4x 2-input NAND Fairchild 1976 Chip Failed
7401PC 4x 2-input NAND OC Fairchild 1976 Chip OK
DM7402M 4x 2-input NOR National Semiconductor 1977 Chip OK
7407N 6x buffer OC Signetics 1979 Chip OK
SN7408N 4x 2-input AND Texas Instruments 1978 Chip OK
7410/FLH111 3x 3-input NAND Siemens ? Chip OK
7420 2x 4-input NAND Geen merk logo jaren '70 3 van de 8 Failed
7430PC 8-input NAND Fairchild 1976 Chip OK
SN7473N 2x J-K FF Texas Instruments 1978 Chip OK
SN7474N 2x D FF S/RS Texas Instruments 1988 Chip OK
7475N 4-bit bistable latch Signetics 1978 Chip OK
7485N 4-bit comparator Signetics 1978 Chip OK
SN7496N 5-bit shift reg. Texas Instruments 1973 Chip OK
N74116N 2x J-K FF Signetics 1976 Chip OK
SN74121 Monostable multivibr. Signetics 1979 Niet mogelijk
SN74148NV 10:4 priority enc. Texas Instruments 1976 Chip OK
N74153 4:1 multiplexer Signetics 1978 Chip OK
SN75189 4x line receiver Motorola 1975 Chip Failed

Een aantal keren kreeg ik "Chip Failed" als eerste testresultaat. Na het opnieuw plaatsen van het IC in de voet en opnieuw testen was het resultaat wel goed. Dat kan verschillende oorzaken hebben:

  • Door opwarming van het IC kan de uitgangsspanning die dan waarschijnlijk net op de grens ligt er net boven komen.
  • Sommige pootje staan niet helemaal recht en door ze 1x in de ZIF IC voet vast te klemmen worden ze beter uitgericht en gecontacteerd. 
  • Oxidatie van de pootjes, vooral de IC's van Texas Instruments zijn bekend om oxidatie (zie foto).
  • Kwaliteit van de ZIF voet.

Links een Texas Instruments IC uit 1973 met zwarte oxidatie, rechts een Signetics IC uit 1978 nog brandschoon.

De IC's die goed zijn getest op de RCT testen ook goed op de Chinese IC tester. Echter bij de falende 7420 IC's bleken de 3 uitvallers op de Chinese IC tester wel in orde te zijn. Dit vraagt om nader onderzoek en voor deze IC's heb ik enkele metingen verricht.

Metingen aan een 7420 IC.

Volgens definitie voor TTL IC's geldt dat de uitgangsspanning groter dan 2,7V bij een logische H (1) dient te zijn en kleiner of gelijk aan 0,4V bij een logische L (0).




In dit 7420 IC zitten twee NAND poorten met 4 ingangen, waarvan de aansluitingen op de afbeelding links is weergegeven. De uitgangen op pin 6 en 8 zijn alleen laag (L) als de bijbehorende 4 ingangen hoog (H) zijn.

De RCT geeft de volgende foutcode aan:

De betekenis van de derde regel is als volgt: Het eerste teken geld voor pin1, het tweede voor pin2, etc. Een X geeft aan dat deze pin niet wordt aangesloten, een V de 5V voedingsspanning (VCC) en een G de 0V (GND). Een 0 of 1 is wat er aan de betreffende pin wordt aangeboden en een L of H geeft het resultaat van de uitgang weer. Een H met pijl naar beneden geeft aan dat een H is gemeten terwijl er een L is verwacht.

Op deze foto wordt de uigangsspanning met een multimeter gemeten van de bovenste poort,
waarbij de 4 ingangen op H (1) zijn gezet

Meetresultaten 7420:
Poort onder: H=3,6V L=0,03V Logica=OK
Poort boven: H=4,3V L=0,03V Logica=OK

Het IC werkt dus. De uitgangsspanning (H) van de onderste poort is beduidend lager dan van de bovenste poort maar beide spanningen vallen binnen de TTL specificatie. De ingangen van TTL IC's zijn stroom gestuurd. Bij verouderde IC's kan het zijn dat deze net meer stroom aan de ingangen vragen dan de RCT kan leveren en daardoor de uitgang niet schakelt.

Met een pull-up weerstand van 10k aan de uitgang wordt de uitgangsspanning opgekrikt en daardoor is de benodigde ingangsstroom waarschijnlijk net voldoende, zie resultaat hieronder.

Het resultaat met de pull-up weerstand is nu wel goed.

In de handleiding wordt aangeraden om bij het meten van TTL IC's in plaats van de USB aansluiting de Barrel connector te gebruiken omdat dan de voedingsspanning die aan het IC wordt aangeboden net iets hoger kan zijn. Ik heb dit getest en ook in dit geval testen de 7420 IC's (zonder pull-up weerstand) goed.

De 74121 monostabiele multivibrator kan niet worden getest, ook niet op de Chinese IC tester. Hetzelfde geld voor de 74122/23/24 en 74130 multivibrators. Ook de 7456/57 frequentie delers kunnen (nog) niet worden getest. Volgens de documentatie zouden deze in een toekomstige versie worden toegevoegd. Een uitgebreid overzicht van welke IC's wel of niet ondersteund worden is te vinden in het bij de firmware geleverde bestand LOGIC_Pro.pdf.

De 75189 line receiver, compatibel met de MC1489 bleek defect, alle uitgangen zijn altijd L (0). Opvallend hierbij is dat de bijhorende 75188 (MC1488) line driver niet getest kan worden. De 75xxx serie kan niet met de Chinese IC tester worden getest. In de comparelist database wordt de MC1489 wel genoemd bij de 75189, maar zoeken op de MC1489 levert niets op.

Ook opvallend is dat voor het testen van een 74133 (13-input NAND IC, niet in deze test) in het menu voor zowel 74133 als 74133+ gekozen kan worden. Ik kan hier in de documentatie niets over vinden, maar bij navraag blijkt dat bij de eerste test een vector test (sampling) wordt uitgevoerd, de tweede betreft een complete test die de combinatie van alle ingangen test en dus ook veel langer duurt.

Testresultaten TTL LS (Low Power Schottky)

De Low Power Schottky versie (LS) gebruikt minder stroom dan de TTL IC's maar schakelen ook wat trager. 

SN74LS00N 4x 2-input NAND Texas Instruments 2000 Chip OK
74LS02N 4x 2-input NOR Signetics 1979 Chip OK
74LS04 6x inverter Signetics 1984 Chip OK
SN74LS11 3x 3-input AND Texas Instruments ? Chip OK
74LS32N 4x 2-input OR Signetics 1977 Chip OK
SN74LS92N divide-by-12 counter Texas Instruments ? Chip OK
74LS154 4:16 decoder Signetics 1979 Chip OK
SN74LS192N 4-bit dec counter HLF? 2019 Chip OK
DM74LS193N 4-bit bin counter National Semiconductor 1978 Chip OK
74LS194 4-bit shift reg. Signetics 1974 Chip OK
74LS240 8x buffers INV Signetics 1990 Chip OK
SN74LS373N 8x register Texas instruments 1983 Chip OK

Alle 74LS IC's functioneerden goed uit deze test. De 7492 kon niet ter vergelijking op de Chinese IC tester worden getest.

In de volgende blog komen de testresultaten aan bod van de CMOS IC's, de geheugen RAM/ROM IC's en diverse soorten andere IC's en displays.