Forum: FPGA, VHDL & Co. PIO Direction


von Mana (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe eine Frage zu den Funktionen: IOWR_ALTERA_AVALON_PIO_DIRECTION 
und IOWR_ALTERA_AVALON_PIO_DATA

Ich habe eine eigene Komponente in Qsys erzeugt. Die Komponente hat 3 
Conduits (im Anhang):
1. sd_clk: 1 Leitung, output
2. sd_cmd: 1 Leitung, bidirectional
3. sd_dat: 4 Leitungen (vektor), bidirectional

Ich möchte die Funktion IOWR_ALTERA_AVALON_PIO_DIRECTION benutzen. Diese 
Funktion hat eine Base als erster Parameter, das ist dann 
Komponente_Base und der andere Parameter ist input oder output.
Ich weiß aber nicht, wie ich die input und output setze, da ich 3 
verschiedene Signale habe und nicht nur eins, das ein Vektor ist.
Nur die Signale sd_cmd und sd_dat sind bidirectional, das heißt, nur für 
die beide muss ich die Richtung ändern.

Aber für das Signal sd_clk kann man noch die Funktion 
IOWR_ALTERA_AVALON_PIO_DATA benutzen um die Daten zu schicken.
Wie würde die beiden Funktionen aussehen?

Ich muss für die beide Funktionen irgendetwas immer für alle Signale 
schicken, da alle Signale zur gleichen Komponente_Base gehören. Ich weiß 
aber nicht wie das aussehen muss...

Hat jemand eine Idee?

: Verschoben durch User
von Ordner (Gast)


Lesenswert?

>Ich möchte die Funktion IOWR_ALTERA_AVALON_PIO_DIRECTION benutzen
Hangt davon ab, wofür?

von Markus F. (mfro)


Lesenswert?

... offensichtlich soll daß ja wohl ein SD Card interface werden?

Da sind die genannten Funktionen m.E. denkbar ungeeignet. Die sind (wie 
der Name schon sagt) für parallele _PIO_-Interfaces gedacht.

Ein SD-Card Interface ist allerdings (zumindest im abstrakten Sinn) ein 
(bzw. mehrere) SPI-Bus(se). Nix parallel.

Also nimmst Du am besten die dafür gedachten Funktionen (die 
sinnigerweise "SPI" im Namen haben) oder suchst dir gleich einen 
geeigneten SD-Card Core (der dann sektorweise lesen und schreiben kann).

: Bearbeitet durch User
von Mana (Gast)


Lesenswert?

Ordner schrieb:
>>Ich möchte die Funktion IOWR_ALTERA_AVALON_PIO_DIRECTION benutzen
> Hangt davon ab, wofür?

Um die Bits jeder Leitung (sd_clk, sd_cmd, sd_dat(3-0)) zu der SD-Karte 
zu schicken bzw. von der SD-Karte zu empfangen.

von Mana (Gast)


Angehängte Dateien:

Lesenswert?

Markus F. schrieb:
> ... offensichtlich soll daß ja wohl ein SD Card interface werden?

Ja, genau :-)
>
> Da sind die genannten Funktionen m.E. denkbar ungeeignet. Die sind (wie
> der Name schon sagt) für parallele _PIO_-Interfaces gedacht.

>
> Ein SD-Card Interface ist allerdings (zumindest im abstrakten Sinn) ein
> (bzw. mehrere) SPI-Bus(se). Nix parallel.

Warum nicht parallel, wenn ich DAT3-0 habe? Ich schreibe eine SD-Card 
Interface mit 4-Bit Modus

>
> Also nimmst Du am besten die dafür gedachten Funktionen (die
> sinnigerweise "SPI" im Namen haben) oder suchst dir gleich einen
> geeigneten SD-Card Core (der dann sektorweise lesen und schreiben kann).

Für das FPGA-Board, mit dem ich arbeite, gibt es gar keinen 
SD-Karte-Kontroller. Deswegen schreibe ich einen.
Ich wollte aber zuerst meine eigene SD-Karte-Interface in Qsys 
entwerfen, damit ich in NIOS-Eclipse die Software dafür schreiben kann. 
Ich wollte nicht eine fertige Komponente von Qsys, wie z.B. PIO 
(Parallel I/O), eine für jedes Signal (sd_clk, sd_cmd, sd_dat(3-0)) 
verwenden...

Vielleicht versteht man, was ich meine, wenn man das Bild vom ersten 
Post mit dem Bild von diesem vergleicht.

Ich möchte die Interface von dem ersten Post. Aber ich schaffe nicht, 
die Signale mit den Funktionen OWR_ALTERA_AVALON_PIO_DIRECTION
und IOWR_ALTERA_AVALON_PIO_DATA zu setzen, was für Reihenfolge es hat in 
dem Parameter der Funktionen...

Beitrag #5070385 wurde von einem Moderator gelöscht.
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.