Forum: Mikrocontroller und Digitale Elektronik Austausch Logik-Baustein


von Harald H. (hhoopi)


Angehängte Dateien:

Lesenswert?

Hallo Elektroniker,
Ich habe das Problem, in einer alten, weit verbreiteten Schaltung einen 
Baustein (HEF4755) austauschen zu müssen. Dieses Teil ist nicht mehr zu 
bekommen. Ich muss also dessen Funktion exakt nachbilden. Hat jemand 
schon mal ähnliches gemacht? Oder weiß einer, wie genau das Teil innen 
funktioniert? Das Datenblatt (ist angehängt) gibt nicht viel her. Der 
Takt für das IC liegt bei 500KHz, es wird daher mit einem Prozessor 
schon eng, wenn alles nachgebildet werden soll, was im IC verdrahtet 
ist.
Gruß
hhoopi

von Klugscheisser (Gast)


Lesenswert?

Ein oft auftretendes Problem aber nicht wirklich schwierig. Da die 
Funktion beschrieben ist, wird die interne Logik halt einfach neu 
erfunden.
Evtl. ein kleineres FPGA.

Stückzahlen?
Preisvorstellungen?
Termine?
Lizenzen?

Poste doch mal Deine Email-Adresse.

von crazy horse (Gast)


Lesenswert?


von spess53 (Gast)


Lesenswert?

Hi

1. Kurzes 'gurgeln' ergab, das das Teil durchaus noch erhältlich ist.
2. Erstmal abklären welche Funktionen überhaupt benutzt werden. Mit
   grosser Wahscheinlichkeit muss nicht die gesamte Funktionalität
   nachgebildet werden.
3. Muss das Pinout eingehalten werden?
....

MfG Spess

von Harald H. (hhoopi)


Lesenswert?

Hallo,
Das Pinout des HEF4755 ist schnurz, da Platz genug vorhanden ist. Die 
Funktion wird tatsächlich nur in Teilen genutzt. Trotzdem finde ich es 
schon schwierig, z.B. das "redundancy check byte" in Logik nachzubilden. 
Ich kenne mich leider mit FPGA's nicht so gut aus, daher dachte ich 
zunächst an einen schnellen Prozessor wie den Atmel Mega8.

Gruß
hhoopi

von Klugscheisser (Gast)


Lesenswert?

@ Harald Hoopmann
Wenn ich Dich soweit richtig verstehe, dann fragst Du also ob das mit 
einem ATMega8 (oder einem ähnlichen Baustein) zu machen ist. Richtig?

Dann aber wäre es sinnvoll genau festzulegen, welche Funktionen des HEF 
Du nachbilden willst. Nach einem ersten Blick meine ich das z.B. einige 
Low-Level-Funktionen wie die Bitabtastung nicht eins-zu-eins identisch 
mit den Atmel-Schnittstellen (UART, I2C, SPI, 2-Wire) sind. D.h. Du 
müsstest Dir überlegen oder testen ob und inwiefern Du solche 
Eigenschaften brauchst.

Das Beste wäre wohl, die nötigen Funktionen einfach zu implementieren 
und dann zu testen.

Ich finde Deine Firma nicht im Internet. Kann mir also auch kein Urteil 
über Deine möglichen Vorkenntnisse bilden. Aber das Du die 
Redundancy-Check-Funktion nicht nachbilden kannst, liegt woran? Das Du 
die Beschreibung nicht verstehst? Das Du das nicht in C oder Asm 
programmieren kannst?

von Harald H. (hhoopi)


Lesenswert?

Hallo,
Ich verstehe nicht, wie dieser Check gebildet wird. Ist etwas seltsam 
beschrieben, wenn nicht sogar unverständlich und/oder unvollständig. Aus 
den Angaben kann ich das komplette Datenpaket nicht rekonstruieren. Ich 
finde aber auch nichts genaueres im Netz, worauf ich mich beziehen 
könnte. Das Teil ist anscheinend nicht oft eingesetzt worden.

Gruß hhoopi

von Klugscheisser (Gast)


Lesenswert?

@ Harald H.
>Ich verstehe nicht, wie dieser Check gebildet wird.

OK. So kommen wir ja langsam weiter.

Was verstehst Du denn nicht?
Welchen Satz, welches Bild?

Gib uns irgendetwas, worauf wir uns beziehen können.
Irgendetwas von Deinem bisherigen Verständnis, oder etwas was Du schon 
gelesen hast, damit wir Dir sagen können ob wir das auch so verstehen 
oder inwiefern unser Verständnis von Deinem abweicht.

Bitte nimm das nicht krumm, aber auf den Satz: "Ich verstehe X nicht" 
kann man eigentlich nichts weiter sagen, als "Aha". Wo soll man da 
ansetzen, wenn nicht, wie ich es am Anfang getan habe, Dir eine Leistung 
anzubieten? Ich kann das Problem ja nicht stellvertretend für Dich 
verstehen, bzw. wenn, dann nur so, dass ich an Deiner Stelle daraus 
etwas reales mache (eine Schaltung, eine Beschreibung, eine SW usw.).

Im allgemeinen ist dies Forum (und auch andere sonst) ja dazu gedacht 
Dir bei einem Problem zu helfen aber nicht, es für Dich zu lösen. (Dafür 
schreibe ich Rechnungen). :-) Du musst also schon selbst Eigeninitiative 
zeigen; das Du selbst schon Anstrengungen unternommen hast, das Problem 
zu lösen.

Also bitte, bitte, bitte: Was, im Detail, verstehst Du nicht?

von Harald H. (hhoopi)


Lesenswert?

Hallo,
Es geht zunächst um das Size-Byte, die Bildung ist mir suspekt. Muss 
erst auf DIO0-DIO2 die Anzahl der Datenbytes angegeben werden? Und was 
soll P sein? Dann ist die genaue Bildung des redundancy-byte nicht 
beschrieben, nur, dass das Byte : "completes the data bytes with 15 (7) 
bits as a code word". Toll und wie nach welchem Muster? Es fehlt mir da 
an einem Beispiel.

Gruß
hhoopi

von Olaf (Gast)


Lesenswert?

> Ich kenne mich leider mit FPGA's nicht so gut aus, daher
> dachte ich zunächst an einen schnellen Prozessor wie den
> Atmel Mega8.

Das koennte ein Problem sein. Ob der Mega8 schnell genug
den CRC mit deiner Baudrate durchzufuehre, darueber darfst
du sich auch noch nachdenken, aber ich vermute mal der
Baustein haengt nicht einfach in der Luft sondern am
Bus eines aehnlich betagten Prozessors (z.B Z80)?
Wenn das so ist dann muss dein Controller bei Bytezugriffen
entsprechend schnell auf R/W und /CS reagieren koennen. Das
solltest du mal pruefen bevor du einen weiteren Gedanken an den
Controller verschwendest.
Ich koennte mir vorstellen das es sonst aus Timinggruenden auf
ein CPLD hinauslaufen koennte. Wobei gleich das naechste Problem
am Horizont auftaucht, ein CPLD laeuft mit 3.3V, dein IC mit 5-12V.

> Ich verstehe nicht, wie dieser Check gebildet wird. Ist etwas
> seltsam beschrieben, wenn nicht sogar unverständlich und/oder
> unvollständig.

Der Controller verwendet CRC. Wenn du mal danach googelst und vieleicht 
noch nach "Hamming Distance" dann sollte da einiges zu finden sein.
Eigentlich beschreiben sie in dem Datenblatt sogar alles wesentliche
zum Thema das man wissen muss NACHDEM man sich dazu nochmal die 
Grundlagen
reingezogen hat.
Trotzdem kann es noch ein bisschen spassig werden weil es immer
ein paar Kleinigkeiten gibt an denen es hakelt. (z.B Startwerte in den
Registern, gehoeren Syncbytes am Blockanfang mit zum CRC oder nicht, 
usw)
Ich hoffe du hast noch einen funktionierenden Baustein und einen guten 
Logicanalyzer. :-)

Ansonsten ein lustiger Baustein, war vermutlich vor 20Jahren mal was
richtig edles oder?

Olaf

von Ralf S. (spacedog) Benutzerseite


Lesenswert?

Moment mal, das Teil ist ja im Prinzip einfach ein sehr eingeschränkter 
USART, wie er in jedem neueren Mikrocontroller  vorhanden ist. Das 
müsste relativ einfach mit nem Tiny oder so realisierbar sein. Die darin 
enthaltenen Transceiver sind in grossem Umfang programmierbar und den 
CRC kann man ja selber nachempfinden..

von Harald H. (hhoopi)


Lesenswert?

Hallo,
Schon mal vielen Dank für den netten Feedback.
Ich werde das Teil wahrscheinlich ausmessen. Die Schaltung drum herum 
besteht aus viel HEF-Logik mit Zählern, Schieberegistern, Multiplexer...
Der erzeugte Datenstrom geht dann über Kabel auf eine Prozessorplatte. 
Der Baustein ist fest verdrahtet auf "transmitting in asynchronous 
mode". Er bekommt parallele Daten und sendet diese plus die 
dazugepackten noch nicht ganz verstandenen Datas per Startsignal mit 
500kHz weiter.
Es wird schon einiges an Arbeit kosten, den genauen Steuerablauf 
herauszufinden. In der Zwischenzeit wird sich der Kunde wohl um 
Ersatzbausteine auf dem Schwarzmarkt bemühen müssen. Eine Ersatzplatine 
müsste wohl auch noch eine Pegelanpassung (wie von Olaf befürchtet) 
enthalten.
Schönen Dank nochmal für die Hilfestellungen.

Gruß
hhoopi

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.