Forum: Mikrocontroller und Digitale Elektronik Analog Werte Erfassen 1MSPS


von Shaft (Gast)


Lesenswert?

Hi Leute,
super Forum hier ...

ich hab folgende Frage:

Ich muss Analog Werte Erfassen und das 1 Millionen mal / Sekunde. Die 
Daten müssen min. 12Bit, besser mit 16Bit erfasst werden.

Ich hätte 16 Kanäle zu erfassen und dies nur über einen kurzen Zeitraum 
(max. 10 Sekunden).

Ich dachte derzeit an einen Atmel ARM9 (SAM926x) und externem SDRAM. Pro 
Kanal sind es bei 16Bit ja 2MB/Sek. bei 64MB SDRAM (größere Bausteine 
finde ich derzeit bei den Distris nicht) würde das ca. 10 Sekunden (3 
Kanäle) reichen (bisschen Speicher braucht das Programm ja auch etc.). 
In das SD-RAM sollte man ja wohl locker 6MB/Sek. schaufeln können ..

Jetzt habe ich im Netz gelesen (auf AT91.com) das man über den externen 
Bus eine CompactFlash mit rund 7MB/sek. beschreiben kann. Das würde ja 
für 3 Kanäle reichen. Vorteil ist, das CF viel Speicher (>2GB) für wenig 
Geld bieten. Außerdem hat der SAM9 ja auch ein MCI Interface für 
SD-Karten im 4Bit Modus.. was bekommt man da für Datenraten hin? Habt 
ihr da Erfahrungen?

Da ich (so glaube ich zumindest) keine 16 Kanäle mit 16Bit an einem 
einzelnen Microcontroller verwalten kann (zumal max. 256MB SD-RAM 
verwaltet werden können) wollte ich pro 3 oder 4 Kanäle ein Modul machen 
und die einzelnen Module dann über CAN oder so vernetzten. Auslesen kann 
man dann nach den 10 Sekunden und das darf ruhig was dauern. Aber darum 
mache ich mir keine Kopfschmerzen.

Was würdet ihr machen? Was haltet ihr von der Lösung 3 oder 4 Kanäle an 
einen SAM9 und speichern auf eine CompactFlash Karte (Favorisiere ich 
derzeit). Dann könnte man auch länger als 10 Sekunden messen (auch wenn 
derzeit nicht gewünscht).

Einen ADC habe ich mir noch nicht ausgesucht, aber wollte da einen holen 
mit 16Bit Interface.

Denke ich zu "groß" ? Ich weis das hier nicht viel Performance nötig 
ist, eher müssen viele Daten geschaufelt werden. Eigentlich doch ideal 
für einen FPGA, nur habe ich da keine Erfahrungen. Würde das schon gerne 
mit einem µC machen, zumal ich in dem Gebiet Erfahrung habe (ARM7, 
ARM9). Habt ihr andere Ideen?

THX + TSCHÖ

von rene (Gast)


Lesenswert?

Ich wuerd ein CPLD/FPGA zum Schaufeln nehmen. Das koennt auch das Timing 
machen. ZB ein Max3064 pro Kanal. Und einen gemeinsamen Prozessor.

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.