Aus mehreren Prozessen in den Block RAM schreiben

Gast #388102
Lesenswert?
• ▲
▼
Hi @ all.

Ich digitalisiere Werte mit Hilfe eines AD-Wandlers. Die digitalen
Werte werden in den internen Block-RAM geschrieben. Während die Werte
in den RAM geschrieben werden, wird das Signal analysiert. Nachdem alle
Werte im RAM sind, sollen die Ergebnisse hinten rangehängt werden.
Demnach muss ein anderer Prozess auf den RAM zugreifen. Es greift immer
nur 1 Prozess gleichzeitig auf den RAM zu. Der RAM besitzt folgende
Leitungen:

ADDR[11..0] (in)
DIN[11..0]  (in)
DOUT[11..0] (out)
WE          (in)
EN          (in)


Ich habe mal gelesen das es mit Tristate gehen soll (Zustand 'Z').
Wie muss ich dazu meine Ports in den Prozessen schalten?

ADDR[11..0] (inout) ?
DIN[11..]   (inout) ?
DOUT[11..0] (inout) ?
WE          (inout) ?
EN          (inout) ?

Grüsse

Michael
Gast #388103
Lesenswert?
• ▲
▼
Hallo!

Ich weiß gerade nicht so ganz worauf du hinaus willst?
Wenn immer nur ein Prozess zugreift musst du eine Statemachine
davorsetzen die den Zugriff kontrolliert ...
das hat erstmal nichts mit dem Ram zu tun. Korrigiere mich wenn ich
falsch liege, denn ich bin definitiv nicht ganz nüchtern :-)

Cpt
Gast #388104
Lesenswert?
• ▲
▼
Hallo Michael,

wie Cpt. schon schrob, würde ich Deine obige (verallgemeinerte)
BEschreibung Deiner gewünschten Funktionaliotät auch mit 2
Statemachines  lösen....

...die erste FSM schreibt die DW des AD-Wandlers in ein Register, die
zweite FSM liest die DW aus dem Register inklusive verketteten Ergebnis
(mit '&'-Verknüpfung) heraus...

Gruß
Tom

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren