Op vrijdag 21 juni 2024 12:32:46 schreef henri62:
-edit- blijkbaar zijn er 2 checksums C####* en <ETX>#### waarbij de laatste de transmission checksum is.
Er is afkeur bij een CRC mismatch van de fusemap, bij een file transport CRC mismatch hoeft dat niet het geval te zijn.
[Bericht gewijzigd door Bobosje op (44%)]
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Ik denk dat ik al weet waar het fout gaat:
Dit staat er in de file als fuse checksum:
C12ec0*
Dat kan niet want dat getal is maar 16 bits, dus ik denk dat het dit moet zijn:
C2ec0*
Waarschijnlijk een bug in de programmer readout die geen modulo 64k doet.
Ik heb het nog niet geprobeerd of dat werkt. Moet ik mijn oude systeem weer opstarten.
De transmit csum dan 0 maken zou misschien werken.
In mijn vele testen heb ik de 1 in C12ec0* weggehaald (om er modulo 65535 van te maken) en er eens allemaal hoofdletters van gemaakt, niets hielp...
De file transmit checksum op 0000 zetten hielp ook niet...
Steeds weer dezelfde error...
Probeer het ook maar dan is alles dubbel goed getest.
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Inderdaad niks werkt, net ook gechecked met de 1 eraf en 0000 als TX checksum.
Misschien dat er ergens op het web een on-line JEDEC file checker is die een fatsoenlijke foutmelding produceerd wat er nu echt fout aan is.
Maar daar heb ik nu even geen tijd meer voor om dat te checken.
Wordt later dit weekeinde.
Zojuist even een test herhaald omdat ik niet zeker wist of met de 1 verwijderd en alles hoofdletters had getest...
Met C2EC0* (alles hoofdletters) Disassembleert het zonder errors...
Ook met C12EC0* (alles hoofdletters) Disassembleert het zonder errors...
In de CRC's moeten hoofdletters staan anders struikelt PLDShell ...
Ter info: Beide JEDEC CRC's (fusemap en file transmit) zijn don't care voor de Disassembly functie in PLDShell Plus V4.
De fusemap CRC moet wel hoofdletters hebben voor de file transmit CRC hoeft dat niet (deze CRC zal wel door de Disassembly functie helemaal niet gelezen worden.)
De gegenereerde .pds design file uit de VCE-V1.4.jed file is echter, in mijn optiek, geheel onzinnig en nutteloos...
Talisman
Van lezen wordt je slimmerder
Het lijkt helaas toch allemaal iets complexer dan ik had gehoopt.
Vanavond zal ik eens kijken hoe de EP610 op de print verweven zit.
De EP610 die Henri nu in handen heeft met de VCE software erin is in orde.
bij een defecte EP610 geeft het moederbord een foutmelding en werkt de print verder ook niet, dat was met deze chip niet aan de orde.
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Nog effe wat tijd gehad, met die case conversie lukt mij het ook:
; OPTIONS TURBO=OFF
CHIP U1 5C060
PIN 1 clk1
PIN 7 io7
PIN 8 io8
PIN 9 io9
PIN 12 GND
PIN 13 clk2
PIN 16 io16
PIN 17 io17
PIN 18 io18
PIN 24 VCC
EQUATIONS
io18.T := VCC
io18.RSTF = VCC
io18.CLKF = VCC
io17.T := VCC
io17.RSTF = VCC
io17.CLKF = VCC
io16.T := VCC
io16.RSTF = VCC
io16.CLKF = VCC
io7.T := VCC
io7.RSTF = VCC
io7.CLKF = VCC
io8.T := VCC
io8.RSTF = VCC
io8.CLKF = VCC
io9.T := VCC
io9.RSTF = VCC
io9.CLKF = VCC
Slaat inderdaad nergens op.
Maar hier zie ik dus inderdaad ook precies wat ik op de pinnen meet: De al die 6 pinnen worden hard 0. Dit is op de copie chip natuurlijk, ik probeer nog niet het origineel.
Ik meet ook geen verschil als ik op de CLK1 of CLK2 een clock signaal zet.
Dus "talisman" probeer op een bord waar die EPLD stuk is eens gewoon 6 pulldown weerstandjes van 100 ohm of zo naar GND te knopen op pin 7,8,9,16,17,18 en kijk eens of het bord werkt?
Het lijkt mij beter om aan een werkende EPLD en PCB te meten en op de EPLD pinnen meten of er data naar toe gaat en er data uitkomt en/of de CLK1 en CLK2 pinnen togglen of niet.
Lijkt mij onwaarschijnlijk dat er een dure EPLD op de print zit die echt helemaal niets doet...
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Op vrijdag 21 juni 2024 18:54:14 schreef Bobosje:
Lijkt mij onwaarschijnlijk dat er een dure EPLD op de print zit die echt helemaal niets doet...
Mij ook, maar misschien heeft er wel ooit iets in gezeten en is het "weggeprogrammeerd" goedkoper als een redesign van de print. Het is ook V1.4, wel raar voor iets wat niks doet. 
Op vrijdag 21 juni 2024 18:57:26 schreef henri62:
[...] Het is ook V1.4, wel raar voor iets wat niks doet.
Dat bedoel ik. 
Talisman
Van lezen wordt je slimmerder
Bij deze een tekening van hoe de EP610 op de print zit.
Uiteindelijk worden er 20 relais bestuurd.
Tevens zijn er 4 dipswitches waarmee met dezelfde kaarten tot 100 relais kunnen worden bestuurd.
Er zijn maximaal vijf van dit type print mogelijk in het systeem.
Zoals ik al vermoedde zit er een werkend design in de EP610. Een design dat in de verste verte niet overeenkomt met de uitgelezen VCE-V1.4.jed file.
In de EP610 is of het Security-Bit actief (net zoals in het andere device) of de uitgelezen EP610 is defect.
Vrees een dood spoor naar een oplossing...
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Wat ik heel raar vind is dat de chip blijkbaar maar half uitgelezen word. Dit gaat er bij mij niet in, die andere EPLD leest alle nullen (moet dus protected zijn) dus er is iets heel raars aan de hand. Ik heb ook meerdere keren het device uitgelezen om te kijken of er gammele bits in zitten maar dat is dus niet zo.
Aan de hand van de tekening is het dus ook onlogisch dat pin 7,8,9 output zijn. Die zouden op zijn minst tristate oid moeten kunnen worden.
Het hele ding is combinatorisch want de clk1/2 zijn niet aangesloten. Dat maakt het wel weer iets simpeler.
Ik zal de WIE chip (een andere die ik ook opgestuurd heb gekregen) eens decompilen dit weekeinde want daar staan wel fuses in die op het oog zinnig eruit zien om te kijken wat daar uit komt.
[Bericht gewijzigd door henri62 op (15%)]
Op zaterdag 22 juni 2024 01:44:42 schreef henri62:
Het hele ding is combinatorisch want de clk1/2 zijn niet aangesloten. Dat maakt het wel weer iets simpeler.
Nee, daar maak je een denkfout. De clk input van de flipflop in de macrocellen kan worden gevoed vanuit het logic-array (Mode 0 en Mode 1).
Het design kan dus zowel combinatorisch als registered zijn.
Talisman
Van lezen wordt je slimmerder
Van de EP610 met VCE software heb ik ook nog een versie 1.2
Beide versies zijn gewoon uitwisselbaar.
Misschien is het nog een optie om deze chip uit te lezen.
Bestaat de firma nog die deze hardware heeft ontwikkeld?
Zijn de EPLD design files misschien bij hun of ergens anders opvraagbaar?
Talisman
Van lezen wordt je slimmerder
De firma bestaat zeker nog ja, maar die gaan die bestanden niet weggeven.
Het is een commercieel product.
Ze hebben er geen enkel belang bij dat ik hun printen probeer te repareren.
Duidelijk, het had gekund dat het product obsolete was na al die jaren en de firma bereid zou zijn om je te helpen.
rew
four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Het stukje schema wat ik gezien heb... Dat ontwerp komt uit de jaren tachtig. D'r is in de tussenliggende 40 jaar(*) heus wel eens een ongelukje geweest waardoor de broncode verloren is gegaan.
(*) Ok. Bij nader inzien iets overdreven. Gezien de PLD 30 jaar.
Het schijnt nog een commercieel product te zijn, het kan zo zijn dat de design files nog bestaan maar of de firma die los wil verkopen of gratis geven is maar de vraag.
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Op zaterdag 22 juni 2024 12:53:41 schreef Talisman:
De firma bestaat zeker nog ja, maar die gaan die bestanden niet weggeven.
Het is een commercieel product.
Ze hebben er geen enkel belang bij dat ik hun printen probeer te repareren.
Maar heb je dat ook gevraagd? Of neem je dat gewoon aan?
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Op zaterdag 22 juni 2024 01:52:23 schreef Bobosje:
[...]Nee, daar maak je een denkfout. De clk input van de flipflop in de macrocellen kan worden gevoed vanuit het logic-array (Mode 0 en Mode 1).
Het design kan dus zowel combinatorisch als registered zijn.
Klopt, heb je gelijk in. Dat maakt het wel een stuk lastiger.
Als ik het board zie waar die VCE chip op zie zitten is dat niet echt spannend. De rest reverse engineren is niet zo moeilijk.
Ik zie 3x 74HC273 8 bit latch zitten + ULN2003 dat zijn de de uitgangs bits (20 stuks). Mij vermoeden is dat de D-in van die buffers allemaal aan de databus hangen. Flatcable pins 4 t/m 11. Dus de 3 latches van die chips moeten uit de EPLD komen na decodering.
Dan zit er alleen nog een comparator 74HC85, die output (pin 6) komt waarschijnlijk op de EPLD pin 23 uit. 4 inputs gaan geheid naar de dipswitch (+ pullup/down) op dat board, en die andere 4 pinnen komen waarschijnlijk van de EPD een van die pinnen 4 t/m 9.
Eigenlijk lijk je net 1 output tekort te komen op de EPLD?
Dus toch maximaal 16 borden zo te zien aan de dipswitch van dit type in ieder geval.
Misschien dat er na reverse engineering nog wat af te leiden is hoe die EPLD in elkaar zit.
Een vervelende factor is het DIR input signaal voor de Octal Transceiver 74F245. Dit DIR signaal wordt gegenereerd door de EP610 en welke EP610 input signalen daarbij allemaal een rol spelen (combinatorisch of registered) is een zeer lastige om uit te vinden.
Verder kan de EP610 evt. data op de 8-bit bus interpreteren en er acties op uitvoeren op interne of externe signalen.
Vrees dat (foutloos) reversen van de EP610 een lastige zaak is...
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Dat DIR signaal is inderdaad een lastige en ook een rare constructie.
Normaal zou je verwachten dat de OE gebruikt wordt icm met het DIR signaal om glitches/shorts met de EPLD te voorkomen.
Er moet dus zeer waarschijnlijk iets zijn dat terug gelezen kan worden, maar wat? Er is niet iets op het board wat direct terugleesbaar is aan de componenten op de foto te zien. Daar maakt het ook bijzonder lastig omdat het een intern bit kan zijn.
Ik heb net even gechecked of ik de goede EPLD kan bewegen iets op de databus te zetten voor de input pinnen te togglen (van de CPU flatcable), maar de pins naar de 245 blijven tristate zelfs een combinatie van 2 pinnen rondom 12,13,14,15 (ik ga er vanuit dat die active low zijn).