Low Cost Controller für den Empfang eines Kamerabildes

OP #2525828
Lesenswert?

Hallo zusammen,

ich habe folgenden Aufbau:
Eine Kamera, die 44 Bilder a 250x250 Pixel und 10 Bit liefert.
Die Bilddaten müssen per LVDS abgeholt werden. Mit einem entsprechend 
geschätzten Overhead kommen die Daten mit ca. 45MHz.

Die Kamera soll zum Lesen eines einzigen Bildes eingesetzt werden.
Dieses Bild muss für weitere Berechnungen in einen Speicher (~128k) 
abgelegt werden.
Der Algorithmus stellt keine großen Anforderungen an die Hardware;
4 MIPS sind sicher ausreichend (es ist kein Problem, wenn die Berechnung 
1s dauert).

Das Ergebnis dieser Berechnung (<= 32 Bit) soll dann von dem 
Hauptprozessor (wird ein ARM Derivat sein) abgeholt.

Da ich keine Ahnung von µCs / DSPs habe (eventell kommt ja auch was ganz 
anderes in Frage) tue ich mir schwer, einen Chip zu finden, der
1. schnell genug ist, die Daten abzuholen,
2. mindestens 128k Speicher hat,
3. und sehr günstig ist.

Der letzte Punkt macht die Suche nicht einfach.
Da er aber wichtig ist (wir reden hier von Stückzahlen im Bereich
von 100 000 pro Jahr) stelle ich dieses Problem in diesem Forum zur 
Diskussion.

Vielen Dank
Jörg Zeiner
#2525902
Lesenswert?

Moin,

bei 100k im Jahr würde ich, wenn's ne simple Anwendung ist, ev. über 
einen ASIC nachdenken...
Das macht auch das Kopieren des Algorithmus schwieriger.

Zu was ich bei "intelligenter Kamera" als erstes greife: Blackfin mit 
PPI-Interface. Da kann dann auch der ARM im Prinzip wegfallen, wenn der 
Chip in diesen Stückzahlen 3-5 USD kosten darf.
Das Problem ist nur, dass man für das LVDS-Interface einen Wandler auf 
den parallelen Videoport (PPI) braucht (im Prototypen fällt mir da nur 
ein FPGA ein)
Wo sollen die Daten denn hin, bzw. über welches Interface?

Grüsse,
- Strubi
OP #2525918
Lesenswert?

Martin S. schrieb:
> Wo sollen die Daten denn hin, bzw. über welches Interface?

Hallo Strubi,

da habe ich etwas nicht ganz verständlich geschrieben.
Wenn die Daten im Speicher liegen, soll der µC oder DSP (oder sonst ein 
Chip) einen Algorithmus auf das Bild (bzw. die Daten) anwenden.

Am Ende kommt dann als Ergebnis ein paar Bits (<= 32) heraus. Diese 
werden dann von dem Hauptprozessor, welcher ein ARM Derivat sein wird, 
von dem µC oder DSP oder was auch immer abgeholt. Es bleiben also von 
den 128k nur maximal 4 Bytes übrig.

Grüße
Jörg
#2525950
Lesenswert?

Hi Jörg,

>
> Am Ende kommt dann als Ergebnis ein paar Bits (<= 32) heraus. Diese
> werden dann von dem Hauptprozessor, welcher ein ARM Derivat sein wird,
> von dem µC oder DSP oder was auch immer abgeholt. Es bleiben also von
> den 128k nur maximal 4 Bytes übrig.

Klingt erschreckend einfach - was den Versand angeht. Allerdings meinte 
ich, was der ARM damit macht. Den würde ich u.U. einsparen, und mir 
überlegen, ob der gesamte Algorithmus auf einem FPGA zu implementieren 
wäre. Dann ist der Schritt zum ASIC ev. nich mal so weit (finanziell 
immer noch weit genug, aber wenn die 100k ernst gemeint sind, werden 
sich die Profis um dich reissen). Leider haben die meisten Chips nicht 
genügend on-Chip-SRAM, fragt sich, ob dein Algo häppchenweise 
verarbeiten kann.

RS: Wie heisst 'dein' LVDS->parallel-Wandler? Im Wald der ganzen 
serdes-Chips den richtigen zu finden, der dann auch das passende Timing 
generiert, ist so ne Sache für sich..

- Strubi
(Firma: app22 UG (haftungsbeschränkt)) #2526057
Lesenswert?

Wie teuer darf die Lösung denn werden?
Welche Anforderungen gibt es an die Kamera?
Was soll mit den Daten passieren bzw. über welche Schnittstelle sollen 
diese ausgegeben werden?

Alles Fragen die sich stellen, besonders bei der Stückzahl.

Oben schreibst du:

"Eine Kamera, die 44 Bilder a 250x250 Pixel und 10 Bit liefert."

etwas später dann:

"(es ist kein Problem, wenn die Berechnung
1s dauert)".

Das passt für mich nicht ganz zusammen, möchtest du 44 Bilder 
aufzeichnen und diese dann auswerten, 44 Bilder aufzeichnen, auswerten 
usw. oder möchtest du ein Bild auswerten? Oder sogar im "Videostream" 
Auswertungen fahren?
Gast #2526366
Lesenswert?

Martin S. schrieb:
> RS: Wie heisst 'dein' LVDS->parallel-Wandler? Im Wald der ganzen
> serdes-Chips den richtigen zu finden, der dann auch das passende Timing
> generiert, ist so ne Sache für sich..

Hi,
dieser Chip ist direkt für die Wandlung der seriellen Daten moderner 
CMOS-Bildsensoren gemacht.

Ich würde das Ganze in einem FPGA implementieren. Ein (oder zwei, je 
nach Algorithmus) DDR2-Ram dranhängen und zur einfachen Steuerung einen 
Softcore Microcontroller im FPGA implementieren. Damit ist dann auch 
gleich der Anschluss des Sensors mit seinen LVDS-Signalen gelöst.
OP #2526747
Lesenswert?

Zuerst einmal vielen Dank für eure Antworten.

@Strubi: Die Bildverarbeitung, über die wir reden, ist nur ein Teil 
eines komplexeren Geräts. Der Hauptprozessor kann daher nicht ersetzt 
oder weggelassen werden.

@Christopher N.: Die Kamera (die hier auch gegeben ist) liefert die 
Bilder in 44 fps. Es wird aber nur ein einziges Bild benötigt, da ich 
ein statisches Objekt aufnehme. Das heißt, obwohl ich eigentlich genug 
Zeit hätte, so ein Bild mit einigen kHz abzuholen, kann ich das nicht, 
da das Bild nicht solange existiert.

Grüße
Jörg

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