D8155 testen

KGE

Golden Member

Arduino pakken voor de sturing van de gemultiplexed bus en stuurlijnen. Zet een paar weerstandjes van 100 ohm in serie met je data/adreslijntjes en dergelijke, kan er weinig stuk gaan mocht je Arduino output geven en de 8155 ook.

De code kun je aan de hand van de datasheet vrij simpel in elkaar zetten. Snelheid zal niet mega belangrijk zijn.

De IO poorten van de 8155 kun je voor output met leds en weerstandjes zichtbaar maken en met dipswitches kun je de input functie testen. Ook weer wat geschikte weerstanden tussen plaatsen om 'sluiting' te voorkomen.

EricP

mét CE

Op 17 januari 2017 20:26:50 schreef Arco:
[...]
Heel veel... :)
De port regelt het bidirectionele verkeer (anders moet je de pinnen zelf steeds omkeren van input naar output), en heeft alle verdere benodigde signalen zoals RD, WR, ALE,...

Ja, leuk als je wat moet bouwen. Maar nu ben je en die poort aan het leren begrijpen en ook nog eens een chippie wat dubieus is aan het testen.
Een AVR poortje van output naar input zetten is welgeteld 1 instructie. En je hebt alle andere signalen prima in de hand. Ja, dat kost een paar regels codeerwerk. En het doet daarna exact wat je beschreven hebt, zonder dat je een peripheral moet begrijpen. Leuk als het iets is wat je wellicht het veld in wilt schoppen, maar zeker voor de testjes van Fred is dat mi. vooral ongewenste complexiteit - zonder noodzaak, want het hoeft in deze helemaal niet snel (sterker nog... het moet langzaam. Anders moeten we Fred gaan overclocken :) ).

Tja,

Waarom makkelijk als het ook moeilijk kan. (als AVR-adept kun je toch ook moeilijk toegeven dat een PIC beter geschikt is voor sommige taken... :) :) )

Arco - "Simplicity is a prerequisite for reliability" - www.arcovox.com
EricP

mét CE

Arco, als PIC-ding adept kun je toch moeilijk toevoegen dat zo'n PMP in deze context alleen maar ongewenste ballast is... Dat is dus exact wat je NIET wilt... Iets wat dingen automagisch gaat doen. JUIST die controle tot in detail zoek je voor zoiets. Niet iets wat op eigen initiatief vanalles gaat doen.
Wellicht bruikbaar als je er een LA aan hangt. En dat was nou net niet het plan...

Goed, je kunt het vast uit zetten. Dan kom je waarschijnlijk uit met het standaard pic-ding-port gezeur. Yep. Ook controle tot in detail. Onhandig, maar in deze ook bruikbaar... Een geen toegevoegde waarde daar TS reeds met Arduino (ben ik ook geen fan van, maar goed...) bekend is en heeft.

En eh... zal ik je eens een geheimpje verklappen? Je kunt het zo aan een 8051 hangen. Die heeft die hele bus al. Ook ongeschikt voor dit doel. Want... er gebeuren dingen automagisch...

Op 17 januari 2017 19:35:15 schreef henri62:
-Edit- Nog een reparatie tip voor digitale logic:
Heel vaak is een output van een chip defect of ligt er een input in een halve sluiting.
Met een scoop alle lijnen bekijken terwijl het board draait.
Als je op de lijnen logic levels ziet die op een "half" niveau liggen: trapjes etc. of gewoon statisch zijn die een verder onderzoek waard.

Ik heb zo'n logic-probe van HP. Daar hoort eigenlijk nog een stroom probe en een pulsgever bij. Dat is ook een mooi systeem.

Wat jij beschrijft doe ik ook altijd maar het deel over belasten met een weerstand kende ik niet. Bedankt voor de tip. Ik heb er zelfs een heel makkelijk hulpje voor:

Ik heb een kastje waar ik probes in kan prikken met daarin een aantal weerstanden die ik met een draaiknop kan kiezen. Er zitten ook twee leds met voorschakel R, twee koppel condensators en een schakelbaar 24V serie-gloeilampje. Zo kan ik veilig(er) een in of uitgang naar Vcc of Vdd trekken, of condensators ontladen, iets overbruggen of iets inkoppelen etc.

Ik gebruik dat om bv een ingang als test hoog of laag te maken.

Eric: Je zou er eens een scope in moeten prikken. Afgezien van dat er waarschijnlijk wel wat omvalt vanwege de invloed van de probe... Zul je je rot schrikken van wat je ziet: het heeft niks met digitaal te maken. En toch werkt het meestal vrij behoorlijk. :)

Grapjas, ik doe niet anders. Probe invloed ? Kwestie van de juiste probes, de juiste meetmethode en weten wat je doet. Ik gebruik een heel arsenaal probes (current, 10x, 100x, 1000x, diffprobes (RF en HV), fetprobes etc) en "sniffers" maar ook (ongewoon) zelfbouw spul om signalen te volgen of zoeken of injecteren/moduleren.

Als je maar vaak genoeg zonder schema's moet werken (95% van de tijd) wordt je wel creatief op meet gebied.

Hier is trouwens een goede en snelle analoge scoop een waardevol hulpmiddel om de eerste ellende te vinden. Maar een digitale heeft veel ook mogelijkheden die veel mensen niet weten of niet gebruiken. Ik heb ze beide nodig, ze kunnen elkaar niet vervangen.

Eric: En eh... vergeet niet dat heel veel 'digitale' chippies niks anders zijn dan een enorme verzameling gates... Niemand gaat je vertellen hoe het in elkaar zit. En als iemand je het al gaat vertellen, dan gaat het (denk ik) al snel je bevattingsvermogen te boven.

Voor een processor, ASIC, FPGA, etc vast wel maar de meeste 74/40/45 dingen zitten niet zo ingewikkeld in elkaar. Datasheets geven soms zelfs (deel)schema's en dat kan heel handig zijn. En dat spul is meestal ruim vertegenwoordigd in hetgeen hier voorbij komt.
De trigger asic van een Fluke 123 staat zo gedeeltelijk getekend in het SM. Daardoor kon ik de ASIC poorten die ik verdacht afkoppelen en de missende output zelf injecteren. Toen wist ik zeker dat hij stuk was en de rest wel werkte.

Henry62: Is die TL866 niet te programmeren dat je een custom device kunt toevoegen?

Zover ik kan vinden niet. Er zit wel echt al vreselijk veel in en soms kun je ook een ander partnummer pakken.

Arabel: Mischien de snelste testmethode(maar niet waterdicht :-) ) dan?
Ik meet hier meer dan >20Meg Ohm op iedere ABC poort(p21-39) tenopzichte van Massa(pen20).
Vcc(+5volt) naar Vss(gnd) is 809 Ω
Als je ze alle 6 even snel doormeet en je ziet een discrepantie is dat de chip die je beter vernieuwd.

Dat is iets wat ik nog moet doen. Er zijn trouwens meerdere testen die je zo op losse onderdelen kunt loslaten. Dat wordt ook wel pin correlation testing Ik doe dat meestal met een curvetracer (Zie hier hoe, zo doe ik het ook )of component tester. Je krijgt dan meestal een beeld wat ze een stoel noemen. Maar het is om IC's te vergelijken.

Wel uitkijken met de spanningen en stromen. Ook bij gebruik van een DMM. Mijn keithley 2000 (mijn meest gebruikte DMM) kan in diode test stand bv ook 10V genereren en een CT is helemaal iets waar je heel goed je hoofd bij moet houden. Best lullig als hij nog op 1000V stond :-)

KGE: Arduino pakken voor de sturing van de gemultiplexed bus en stuurlijnen. Zet een paar weerstandjes van 100 ohm in serie met je data/adreslijntjes en dergelijke, kan er weinig stuk gaan mocht je Arduino output geven en de 8155 ook.

De code kun je aan de hand van de datasheet vrij simpel in elkaar zetten. Snelheid zal niet mega belangrijk zijn.

Zo doe ik het nu ook, alleen zonder dipswitch maar met jumpers en ipv een arduino een of meer FG's en naast ledjes gebruik ik een scoop. Mijn programma bestaat uit een A4tje met stilistische weergave van de tester en met een kleurpotlood teken ik de gewenste jumpers in. Het opzetten van het board kost minder dan een minuut en het uitzoek werk is gelijk. Bij zoiets als die 8155 heeft de arduino oplossing een duidelijke meerwaarde maar alleen als ik precies weet hoe ik een 8155 moet "programmeren" en daarna hoe ik de Arduino moet programmeren. Het voordeel van schakelaars en ledjes is dat je alle tijd hebt om dingen te checken en beredeneren.

Voorbeeld, ik moest een stuk of 15 dubbel opto's testen. Ze werden voor digitale signalen gebruikt. Ik test ze digitaal (FG blokgolf) en analoog met een potmeter en stroommeter. Digitaal werkte ze maar er was er 1 waar 1 helft analoog heel raar reageerde. Die ging niet geleidelijk open maar in een keer en pas rond de maximale stroom. Dat effect zie je ook wel eens bij half dode torren. Er is geen echte Ib-Ic relatie meer.

Eric: Leuk als het iets is wat je wellicht het veld in wilt schoppen, maar zeker voor de testjes van Fred is dat mi. vooral ongewenste complexiteit - zonder noodzaak, want het hoeft in deze helemaal niet snel (sterker nog... het moet langzaam. Anders moeten we Fred gaan overclocken :) ).

Bedankt he, daar gaat mijn laatste restje digitaal zelfvertrouwen ;-)

Maar ik krijg van Mel twee werkende dus ik kan het zo ook oplossen.

Maar mijn tester werkt tot nu toe erg goed. Door deze discussie heb ik wel wat ideetjes gekregen. Ik denk dat een arduino daarbij wel een toevoeging kan zijn in situaties als bij dit IC. Alleen heb ik nog geen idee hoe dat te doen. Het board zelf gaat ook veranderen. ipv de IC voet jumpers ga ik 16 10 positie draaischakelaars plaatsen. Dan hoef ik alleen nog maar een lijst standen te noteren, het is minder kwetsbaar en ik heb meer opties die ik nu mis. Verder headers voor de rest van de ZIF socket pinnen voor grotere IC's

www.pa4tim.nl, Reparatie van meet- en calibratie apparatuur, ook oud en exotisch

Arco, als PIC-ding adept kun je toch moeilijk toevoegen dat zo'n PMP in deze context alleen maar ongewenste ballast is... Dat is dus exact wat je NIET wilt... Iets wat dingen automagisch gaat doen. JUIST die controle tot in detail zoek je voor zoiets. Niet iets wat op eigen initiatief vanalles gaat doen.

Het gaat om het testen van de i/o chips, niet over het gedetailleerd uitvlooien van de werking van de interface... :)
En daarom is een simpelere interface beter. Een PIC adept ben ik niet, ik heb de meeste MCU's wel gebruikt.
Alleen de 8086/8051/AVR structuur vind ik niet prettig om mee te werken (als het moet doe ik dat soms wel)...

Arco - "Simplicity is a prerequisite for reliability" - www.arcovox.com
EricP

mét CE

Grapjas, ik doe niet anders.

We waren bij de PC en je filmpje he. Met dit spul, heb je zelden of nooit last van een 'probe'. Signalen zijn normaal redelijk 'hard', frequenties (relatief) laag. PC-achtig spul... ander paar mouwen. Paar pF (of minder) doet de boel soms 'stuk' gaan...

Best lullig als hij nog op 1000V stond

Ach, dan weet je in elk geval de uitkomst :)

Bedankt he, daar gaat mijn laatste restje digitaal zelfvertrouwen ;-)

Ach Fred, als jij met 10Hz (al best langzaam...) outputs genereert, dan heb je op de hand (zo je wilt: op het oog) al niet meer in staat om die te volgen. Dus meer in dat daglicht dan in dat jij trager zou zijn dan henri62 of mijzelf ofzo...

Een andere optie zou kunnen zijn om geautomatiseerd te testen. Het ding iets voeren en een 'expected' result met dezelfde Arduino beoordelen. Dat heeft denk ik alleen zin als je er 'veel' moet doen - het opzetten van dergelijke tests heeft best wel wat voeten in de aarde (waarbij overigens een controller die makkelijk een 'bus' achtig iets kan nadoen wel voordelen zou hebben). Maar ik geloof dat dat op dit moment niet aan de orde is.

maar de meeste 74/40/45 dingen zitten niet zo ingewikkeld in elkaar.

Dat klopt wel, maar in die context is een counter of comparator toch al een pak complexer dan een quad-AND chippie. Terwijl je met een berg 'losse poortjes' ook prima een counter of comperator kunt maken. Dat gaat natuurlijk een orde grote (of 2) 'complexer') in iets programmeerbaars.

Wel uitkijken met de spanningen en stromen. Ook bij gebruik van een DMM.

Pas ook nog op met protectie dioden. Als je 'meetspanning' hoog genoeg is, zou het chippie dan wel eens kunnen gaan werken (aangenomen dat je niet in-circuit meet) waardoor je op output pins wel eens rare resultaten kunt krijgen - jij trekt met je meter een pen hoog, de chip wil 'm op basis van z'n (zwevende?) input graag laag zien. Spanning kakt in. Ding doet het niet meer. Spanning komt weer op: je hebt een oscillator :) ).

Het gaat om het testen van de i/o chips, niet over het gedetailleerd uitvlooien van de werking van de interface... :)

Exact. Dus als je niet zeker weet of het ding goed is, moet je exact weten wat je op die interface doet. En niet iets gebruiken wat automagisch aan lijntjes trekt. Da's dan dus juist niet handig...

Alleen de 8086/8051/AVR structuur vind ik niet prettig om mee te werken (als het moet doe ik dat soms wel)...

Bij een 8086 kan ik me daar nog wel wat bij voorstellen (zeker als het ding in von Neumann architectuur gebruikt wordt). 8051 ook. Te onhandig met z'n XDATA en alle gevolgen die dat heeft (al heb je daar als je je compiler beheerst in C niet zoveel last van). Soms wel handig met I/O door z'n toch wat eh... speciale interpretatie ervan (en soms ook weer onhandig en net als pic-dingen erg vatbaar voor RMW-issues). En dan hebben we het nog niet over de erg kleine stack... Maar als er nou 1 architectuur is die grotendeels 'handig' in elkaar zit, dan is het de AVR wel... Zowel voor assembly als voor C... Enige wat daar niet lekker zit is dat je met een ontplofte stack data plat kunt schrijven... Handiger dan pic, 6502, Z80, 6800 en eh... ik ben vast nog wel een paar controller waar ik ooit voor geschreven heb vergeten (al waren de meesten ook prima te doen, met hun eigenaardigheden in het achterhoofd). Als je nou naar rare dingen wilt kijken, dan kom je ook al snel bij ARM terecht. Alhoewel mijn ervaring daarmee beperkt is, vond ik het interrupt mechanisme (zelf uitzoeken wat je triggert) nogal omslachtig - kan prima in hardware.

Ik heb er nu 6 van de 10 uit-gesoldeerd en in voetjes terug geplaatst nadat ik een pin correlatie test op de CT heb gedaan. Nu heb ik er 3 met de zelfde signatuur en 3 ook het zelfde sgnatuur maar anders dan die andere 3. Een van de tweede groep is wel dood want pin 12 is short.

Nu ben ik benieuwd wat die van Mel laten zien (en de 4 die ik nog moet doen). Best een @#$ karwij want de hele zooi zit in de conformal coating en dat houd zo'n 40 pinner verrekte stevig vast.

www.pa4tim.nl, Reparatie van meet- en calibratie apparatuur, ook oud en exotisch

Ik heb nog een D8155C gevonden.

Als de C versie goed is, mail je me adres dan stuur ik um op Fred.

Ehhh, C versie ? Zijn er verschillende versie's dan ? Dan ga ik straks eens de verschillende datsheets zoeken.

Flash: Wanneer nodig graag, maar wacht er maar even mee. Ik denk/hoop niet dat er zoveel stuk zijn.

Net even gekeken en nog gemeten, er zijn dus twee groepen qua signatuur/VI patroon.
Alle poorten een diode overgang (waarvan 1 dus met een short).
2x - NEC D8155HC
1x - NEC D8155C

Groep 2 met Pin 3,4,7,8,9,10,11 een "kromme haak" en de rest de standaard diode overgang
2x Mitsubishi M5L8155P
3x Siemens SAB8155P
1x Toshiba TMP8155P

Nog testen: 1x D8155C en dan nog 2 "onbekende" die nog uitgesoldeerd moet worden. Hopelijk heb ik ze dan eindelijk allemaal.

De 3 afwijkende zijn alle drie van NEC, is het mogelijk dat deze intern net iets anders zijn ?

www.pa4tim.nl, Reparatie van meet- en calibratie apparatuur, ook oud en exotisch
maartenbakker

Golden Member

Dat lijkt me zonder meer mogelijk. NEC was toch een vrij eigenwijze fabrikant met ook eigen interpretaties van de intel architectuur (denk bijvoorbeeld aan de D70108 en D70116 zijnde reverse engineered intel klonen met wat rare extra'tjes). Van Siemens weet ik dat ze zich sterk inzetten om als second source voor intel te dienen, dus ik gok zomaar dat originele intels ook een kromme haak hebben op die pennen.

[Bericht gewijzigd door maartenbakker op 19 januari 2017 22:26:52 (15%)]

"The mind is a funny thing. Sometimes it needs a good whack on the side of the head to jar things loose."
RAAF12

Golden Member

Ach ja die NEC V20 zat ook in mijn Tulip XT tje!

Klopt, in de V20 zit trouwens ook een Z80 compatible instructieset als je dat bedoeld met "Rare extratjes". Met een beetje extra software op MSDOS draai je op een V20 ook CP/M.
Ja dus, NEC heeft zijn eigen CMOS process en ook andere pin eigenschappen.

De Siemens 80286-12 CPU is kwa silicon exact hetzelfde als de Intel 80286-12. Met exact dezelfde bug(s).

Henri's Law 1: De wet van behoud van ellende. Law 2: Ellende komt nooit alleen.
maartenbakker

Golden Member

Dat bedoelde ik, maar ook nog een aanvullende instructieset voor bitmanipulaties meen ik. En op andere processorvarianten snelheidswinst door geen microcode te gebruiken.

In tegenstelling tot Siemens en AMD ging NEC kennelijk voor een eigen processorlijn dus ook niet vreemd dat de intel core er een paar modellen later helemaal uitvloog. Nog weer later is Siemens helemaal op de MCS51 (microcontrollercore) overgegaan en heeft AMD een eigen koers uitgezet.

[Bericht gewijzigd door maartenbakker op 20 januari 2017 16:02:31 (15%)]

"The mind is a funny thing. Sometimes it needs a good whack on the side of the head to jar things loose."