Forum: FPGA, VHDL & Co. ISE / EDK / VHD-File Kommunikation in / out?


von mboehm (Gast)


Lesenswert?

Hallo Leute.
Ich bin gerade dabei, einen Temperatursensor über das Spartan-3E-Board 
einzulesen und die Messdaten an der LCD anzuzeigen.

Dies ist ein großer Bestandteil unseres Projekts und von den Lehrern 
haben wir in dieser Tiefe keinen ansprechpartner mehr, der uns helfen 
könnte. Ich Persönlich kann mir noch nicht direkt vorstellen, was in 
meines Files Eingänge und was Ausgänge sind. vl. kann mir hier wer 
weiterhelfen.
 Genaueres hier:

vhd-File, welches die Daten einließt und auf dienen Datenbuss[32] 
schreibt:
   eingelesene daten: (gehe davon aus, dass es ein Eingang ist xD)
   Datenbuss[32]: ausgang?

in edk erzeuge ich ein eigenes Peripheral mit 32 bit.

mpd-File:
  hier definiere ich einen "eingelesen Daten"-Bus als "in"
  ist diese Datenleitung hier drin ein in oder out?

user_logic.vhd:
 hier?


Vl. zum verständnis:
Die Datenübertragungen von meinem selber-geschriebenen vhd-File
in EDK passen. Wenn ich in meinem eigenen vhd-File die Daten auf einen 
fixen Wert setze und die leitungen im edk als external ausgang direkt an 
die LEDS hänge, erkennt man, dass die Daten richtig übergeben werden.

jedoch möchte ich diese Daten in einem C-Code auslesen/auswerten und an 
der LCD ausgeben.
----------------------------
Auch wenn man vl. die Fragestellung nicht gaanz genau verstanden hat, 
kann er vl. erklären wie prinzipiell diese Kommunikation stattfindet.
(Was sendet was wohin und ist ein In oder Output)

lg Mario

von Christian R. (supachris)


Lesenswert?

Ist da ein MicroBlaze Prozessor im Spartan 3e implementiert? Oder wer 
soll dort die Kontrolle übernehmen? Da du EDK nutzt, gehe ich davon aus.
Dann brauchst du ein passendes Bus-Interface, was du auch an den 
Microblaze anschließen kannst (intern). PLB ist das Zauberwort. ist 
etwas aufwendiger als nur mal eben so einen 32 Bit Ausgang zu machen, 
aber irgendwie muss der Prozessor deiner Logik ja mitteilen, wann sie 
ihre Daten auf den Bus legen darf und wann nicht. Alternativ kannst du 
auch ein xps_gpio Modul einbinden, dessen GPIO Breite auf 32 Bit setzen 
und daran deine Logik klemmen. Dann kannst du die Daten einfach so 
einlesen. Das xps_gpio kümmert sich dann um den PLB.

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.