VS1001 DREQ / SPI

OP #501594
Lesenswert?

Hi Leute,

ich hab ne Frage zum VS1001...

Ich hab gelesen, das wenn der DREQ auf low ist, will der Decoder Daten 
zum decodieren und zwar solange bis DREQ wieder auf high ist.

So hier die Fragen:

1. Geht der DREQ "rechtzeitig" auf LOW, das man noch gut reagieren kann?
2. Zwischen DREQ geht auf HIGH und DREQ geht wieder auf LOW, liegt da 
genug Zeit dazwischen um noch andere SPI Devices zu versorgen?
3. Von der Geschwindigkeit sollte es hingkommen, das ich direkt von SD 
Karte les, und dann auf den MP3 Decoder schieb, oder?
4. Sollte ich die SD Karte per Software SPI lesen, damit ich direkt von 
einen "SPI-Port" lesen und direkt zum anderen schreiben kann?
5. Wiegroße Datenpakete will der Decoder bis DREQ wieder HIGH is?

Wäre nett wenn ihr mir eure Erfahrungen mitteilen könntet....

Vielen Dank schonmal im Vorraus für die Zeit die Ihr euch genommen habt 
:)


MFG
Christopher Schirner
Gast #501654
Lesenswert?

Hallo,

ich habe zwar mit dem VS1001 noch nichts gemacht, aber mal so als 
Rechenexample:
Laut Datenblatt hat er 2kByte FiFo für den Eingangsbitsream.
Rechne Dir aus, wie schnell Du den theoretitisch bei maximal möglichem 
SPI-Speed gefüllt bekommst. SPI ist wohl max. fclock/4.

Der Rest ist dann auch Rechenaufgabe... ;)

Mein damaliges Experiment war ein 8515 mit 7,xx MHz Takt, ext. Ram als 
Buffer und einer 2,5"HD im Amiga-FastFileSystem.
Da hatte ich keine Zeitprobleme, ich hatte 512Byte Datenbuffer, die ich 
als Ringbuffer immer bei 256Byte nachgefüllt habe. Das lief in der 
Mainloop zusammen mit Display (einschließlich Scrolling MP3-Tag), 
I2C-Kommandos zum MAS3507 für Klangreglung usw. mit Balken im Display 
malen zumindest bis 192kBit ohne jeden Hacker.

Sollte also auch heute noch machbar sein. ;)

Gruß aus Berlin
Michael
Gast #501664
Lesenswert?

Hallo,

naja, ist letztlich auch Rechenaufgabe...
Du mußt ja die Daten auf die Karte raufbekommen und auch wiederfinden.
Raufbekommen heißt normalerweise ein gängiges Filesystem, damit Du sie 
im Card-Reader bespielen kannst. Dann müßt Du sie auch wiederfinden, 
also wenigstens eine minimale FAT16 read-only. Da ist es der Kompromiss 
zwischen Geschwindigkeit und Rambuffer. Das Übertragen ist das kleinste 
Problem, den benötigten Sektor zu finden, macht mehr Probleme mit wenig 
Ram.

Gruß aus Berlin
Michael
Gast #501671
Lesenswert?

Wenn ich mich recht entsinne, dann war es so, dass wenn DREQ low geht, 
du dem Decoder 32 Byte schicken kannst, ohne auf das DREQ weiter zu 
achten. Also sprich, wenn DREQ low geht, ist auf jeden Fall Platz für 
weitere 32 Byte im Buffer. Und im Datenblatt steht, wie groß der im 
VS1001 enthaltene Buffer insgesamt ist, daraus müsste sich die Zeit 
ausrechnen lassen, die zur Verfügung steht.

Ist schon etwas länger her, aber ich hatte von CF gelesen so mit FAT32 
und so. Jeweil 512 Byte von CF gelesen, und dann immer 32 Byte in den 
Deocder geschoben, bis die 512 Byte verbraucht waren. Dann habe ich 
wieder neue 512 Byte von CF gelesen, und selbst bei der schnellsten 
Bitrate gab es keine Aussetzer. Hatte irgendeinen ATmega benutzt, bei 16 
MHz. SPI-Clock war glaube 2 MHz.

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