Forum: Mikrocontroller und Digitale Elektronik Wozu Latch vor Ram ?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Sven (Gast)


Lesenswert?

Guten abend Liebe gemeinde

Ich hatte heute beim Besuch meines lieblings Recyklers etwas Glück und 
konte einige Platinen mit sehr vielen 628512 (512k*8 Ram's) abstauben.
Jetzt hab ich mir gedacht damit bau ich mir ganz klassisch einen Logic 
Analyser bzw Signal Rekorder. Nich schnell dafür aber mit viel Speicher.
Nun hab ich gerade einige Schaltungen durchgesehen und bei fast allen 
wurden Latch bausteine 74hc573 vor die Eingänge der Rams geschaltet.

Wenn ich das richtig verstanden habe speichert soein Latch ein Bit 
zwischen ? Aber warum einen "Speicher" vor einen Speicher?

Andere frage es sollte doch möglich sein durch abwechselndes Schreiben 
in zwei Rams die geschwindigkeit zu verdoppeln oder?

von MaWin (Gast)


Lesenswert?

Speichern meist die Adressen damit die die ganze Zeit stabil anliegen.
wenn das Ding an einem Bus hängt, wo auf denselben Leitungen erst die 
Adressen und dann die Daten kommen.

von Michael L. (michaelx)


Lesenswert?

Das kann verschiedene Gründe haben. Poste doch mal einen Link auf so 
eine Schaltung, dann kann man dir wahrscheinlich mehr sagen.

von Sven (Gast)


Lesenswert?

Ne ich meine schon direkt La schaltungen. Zwischen eingang und Ram.
Aber ich glaube Schalten war das Sprichwort. Die la Eingänge gehen durch 
den Latch zum Ram und zum Prozessor ohne Latch als Schalter würden beim 
auslesen des Rams durch den Prozi die daten am eingang rauskommen. So 
ergibt es einen Sinn.

von Sven (Gast)


Angehängte Dateien:

Lesenswert?

Diesen wunderschönen Plan hab ich unter anderen gemeint

von amateur (Gast)


Lesenswert?

Latches sind üblicherweise dazu da, damit jemand stillhält. Sind ja im 
Grunde nix anderes als (Zwischen)Speicher.
Früher wurden, aus Mangel an Anschlüssen, Adressen, z.B. 16 Bit, in zwei 
Portionen á 8 Bit, zusammen mit einem Impulsausgang, ausgegeben. Neun 
statt 16 Anschlüsse sind ein guter Schnitt.
Es kann aber auch sein, dass Daten nur sehr kurz ausgegeben werden 
(können). Werden diese dann Zwischengespeichert, kann der Ausgeber 
weitermachen und der Empfänger in Ruhe die Daten anschauen.
Also entweder Zwischenspeicher oder Zeitverlängerung. Trickser verwenden 
allerdings auch Latches gerne als Erweiterung der vorhandenen Ausgänge 
oder, bei Problemen mit der Last, als Verstärker.

von MaWin (Gast)


Lesenswert?

> Diesen wunderschönen Plan hab ich unter anderen gemeint

Du warst nur zu faul, ihn gleich zu Beginn zu posten.

Diese Latches im Logicnalyzer dienen der genauen Zeitsynchronisation
wann der Zustand aller Leitungen in die RAMs geht, RAMs selbst mögen es 
nicht so gern wenn sich während des Schreibzyklus die Eingangsdaten 
ändern.

von amateur (Gast)


Lesenswert?

Habe erst jetzt deine Zeichnung öffnen können.
Wahrscheinlich fällt die Funktion deines Latches in die Rubrik: 
Tricksen.
Wichtig ist hierbei der OE Anschluss, der die getrennte Nutzung der 
Datenleitungen von der CPU oder der externen Anschlüsse zulässt.

+OE bewirkt das die Ausgänge Q0 bis Q7 high (und das ohne Haschisch) 
werden.
Die CPU kennt den Zustand.
Jetzt kann die CPU den Datenbus selber nutzen.
Im anderen Fall schaltet die CPU ihre Ausgänge auf high oder in den 
input zustand (ignorieren oder lauschen) und überlässt der Peripherie 
den Bus.

von Sven (Gast)


Lesenswert?

Ok vielen Dank soweit

Ich war nicht zu faul den plan zu Posten dachte nur es währe nicht 
nötig.
Wenn die Rams es nicht mögen das sich das signal während des schreibens 
verändert dürfte der Latch in der Schaltung aufeinmal sogar doppelt 
sinvoll sein.
Unter diesen bedingungen werde ich wohl auch welche einplanen. Mal sehen 
wie ich das Bidirektional hinbekomme, da mein La das gefangene signal 
auch wieder ausgeben soll.

von amateur (Gast)


Lesenswert?

Da -WE und LE gleichzeitig arbeiten würde ich mir vom "Einfriereffekt" 
nicht allzu viel versprechen.

Aber Die CPU mag es nicht wenn ein Fremder ihr dazwischen quatscht.
Oder anders ausgedrückt: Auf einem Datenbus gibt es keine Demokratie.
Es sei denn Du willst den effektiven Pegel aus der Summe der abgegebenen 
Stimmen (Pegel) ermitteln. Treiber sagt: Logisch 1; CPU sagt Logisch 0 
der Speicher sucht sich dann aus was ihm gefällt.
Manche Chips mögen auch die damit einhergehende Belastung.

von amateur (Gast)


Lesenswert?

à propos Latches.

Für die Adressierung des Speichers benutzt Du Zähler. Die letzte 
Speicherstelle anzusprechen "kostet" mehr als 65536 Taktzyklen. Zwei 
zusätzliche Latches auf den Datenbus, in zwei eigenen Zyklen zwei Bytes 
gelatcht und Du hast eine 15/16 Bit Adresse für dein RAM. Der 
Platzbedarf ist, in Sachen Chips, vergleichbar (2x74HC573 statt 
2x74HC4040).
Vor allem die Zeitersparnis ist immens. Während der Adressierung 
(Tick-Tack) ist der Bus sowieso unbrauchbar.

von Axel S. (a-za-z0-9)


Lesenswert?

amateur schrieb:
> Wahrscheinlich fällt die Funktion deines Latches in die Rubrik:
> Tricksen.

Nein.

Du hast wohl auch noch nie eine Digitalschaltung gesehen, die über ein 
Zwei-Gatter-Flipflop hinausgeht. Das Latch synchronisiert die 
Eingangsdaten mit dem Abtastsignal. Es efüllt damit die gleiche Funktion 
wie die S&H-Stufe eines ADC.

Als nützlichen Nebeneffekt trennt es die Eingangspins des LA vom 
internen Datenbus, denn schließlich will man das RAM ja auch irgendwann 
mal auslesen und die Signale darstellen.


XL

von Sven (Gast)


Lesenswert?

Also ich wollt die schaltung nicht 100% genau so nachbauen. Aber einen 
zähler zur Adressierung werd ich wohl verwenden. Während der 
Aufzeichnung würde ich den Takt von einem Extra Taktgeber Eventuel 
Quarzoscilator oder Pll erzeugen lassen. Schon aleine weil ich die 
Adressierung mit einem Avr nicht sauber bis 18mhz Hinbekommen würde.

Bislang aber alles erst so Ideen in der Realität hab ich nur einen 
grossen haufen Speicher und eine Idee.

Ich werd erstmal gucken ob ich nicht durch abwechselndes Takten der Rams 
die Geschwindigkeit verdoppeln kann
Bzw Was ich so an Zählern & co mit ausreichender Geschwindigkeit finde

von Michael (Gast)


Lesenswert?

amateur schrieb:
> Wahrscheinlich fällt die Funktion deines Latches in die Rubrik:
> Tricksen.

Als "Tricksen" würde ich das nicht bezeichnen. Ohne eine Möglichkeit zur 
Trennung der Eingänge vom Datenport des Speichers hätte man keine 
Möglichkeit, die Daten auszulesen, ohne jedesmal alle Eingänge vorher 
abzuklemmen. Das würde die Benutzung eher unhandlich machen.

von amateur (Gast)


Lesenswert?

@Axel

Ich habe sogar schon Schaltungen mit drei Gattern gesehen und Gerüchte 
darüber aufgeschnappt, dass es welche mit noch mehr geben soll.

Wie ist eigentlich der Wettlauf zwischen:
Ansteigende Flanke latched Daten
und
Ansteigende Flanke übernimmt Daten ins RAM
ausgegangen?

Beim Start lagen beide noch Gleichauf.



@Michael

Dass mir die Idee mit dem OE bereits gekommen ist, sollte wohl mein 
Vorschlag bezüglich der Adressgenerierung deutlich gemacht haben.

Vorher wörtlich:
>Wichtig ist hierbei der OE

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.