Hi,
für ein Projekt brauche ich eine Lösung, mit der ich insgesamt 256 Pins
mit 10 kHz einlese und über möglichst wenige serielle Ports rausschiebe.
D.h. ich bräuchte für die serielle Leitung mindestens 25,6 MHz wenn ich
nur eine nutze, 12,8 wenn ich zwei nutze usw.
Ich gehe mal davon aus, dass das mit einem IC nicht machbar ist. Aber
welche µCs haben denn die größte Anzahl an digitalen I/O? Gibt es
irgendwo Übersichten für sowas?
Bin für jeden Tip dankbar.
ndrs schrieb:> ... insgesamt 256 Pins mit 10 kHz einlese ...
256 serielle Signale oder 32 8Bit Ports ? Oder ...
> ... und über möglichst wenige serielle Ports rausschiebe.
I2C, SPI, LVDS, SERDES, ...
Was soll es sein ? Vermutlich liegt die benötigte Bandbreite jenseits
von I2C, UART, SPI. Vielleicht LVDS.
Aus dem Bauch heraus sage ich mal: mit einem µC wird das nicht
funktionieren, zumindest nicht, wenn alle Ports parallel abgefragt
werden sollen. Dann bleibt nur noch ein CPLD oder FPGA übrig.
>... mit der ich insgesamt 256 Pins mit 10 kHz einlese und über möglichst> wenige serielle Ports rausschiebe.> D.h. ich bräuchte für die serielle Leitung mindestens 25,6 MHz wenn ich> nur eine nutze..
256 * 10 kHz = (nur) 2,560 MHz
> Aus dem Bauch heraus sage ich mal: mit einem µC wird das nicht> funktionieren, zumindest nicht, wenn alle Ports parallel abgefragt> werden sollen. Dann bleibt nur noch ein CPLD oder FPGA übrig.
Oder TTL.
(µC wirds auch noch geben, aber viel zu teuer dafür)
Danke schonmal für die Antworten.
Ich fang mal der Reihe nach an.
@peda
> 8 Stück 74AC165 kaskadieren.
Danke, das schau ich mir mal näher an.
@ex-aetzer
> 256 serielle Signale oder 32 8Bit Ports ? Oder ...
ähm, ja, es sind 8 32Bit-Werte.
> I2C, SPI, LVDS, SERDES, ...
Für die anderen Schnittstellen zum Master werde ich vermutlich SPI
verwenden. Mein Master schafft hier 50MHz. Die Frage ist nun, welche ICs
es gibt, die einerseits genügend IO haben, andererseits die
Geschwindigkeit gehen können.
@rackandboneman
> Digikey.
Danke, schau ich mir auch an.
@falk
> Wie immer sollte man mal über Netiquette nachdenken.
Keine Ahnung wo das Problem liegt. Bei allem was ich nicht angegeben
hab, bin ich ziemlich offen.
@MCUA
> 256 * 10 kHz = (nur) 2,560 MHz
Danke, du hast natürlich recht. Also reichen doch <5MHz.
Vielleicht noch zur Info: Kostenmäßig ist alles unter 50€ akzeptabel.
Das ganze kommt an einen Blackfin_BF518F von Analog Devices.
Datenblatt:
http://www.analog.com/static/imported-files/data_sheets/ADSP-BF512_BF512F_BF514_BF514F_BF516_BF516F_BF518_BF518F.pdf
Falk Brunner schrieb:> @ ndrs (Gast)>>>> Wie immer sollte man mal über Netiquette nachdenken.>>Keine Ahnung wo das Problem liegt.>> tja, dann lies den Artikel noch einmal.
Das hab ich. Zweimal.
Aber egal, von anderen kommen hilfreiche Beiträge. Die reichen mir.
Die Sache mit den Load Shift Registern schau ich mir gerade an, aber so
ganz versteh ich noch nicht, wie die kaskadierung funktionniert, bzw.
wie die mit seriellen UND parallelen Inputs dann umgehen.
@rackandboneman
Die Seite ist zwar toll, aber nach welchen Kriterien sucht man da am
besten um am schnellsten ans Ziel zu kommen? Ich seh wohl den Wald vor
lauter Bäumen nicht :)
Sorry, bin was Bauteil-Recherche angeht noch ziemlich ungeübt.
@ ndrs (Gast)
>> tja, dann lies den Artikel noch einmal.>Das hab ich. Zweimal.
Aber egal, von anderen kommen hilfreiche Beiträge. Die reichen mir.
"Besonders für Anfänger gilt: Gerade am Anfang ist es immer gut zu
sagen, was man erreichen will und nicht so sehr Annahmen darüber zu
treffen, wie man es erreichen könnte und dann das Wie zu hinterfragen.
Oft ist der Denkfehler nämlich schon im Ansatz und man kann besser
helfen, wenn man das Ziel des Fragenden kennt."
>Die Sache mit den Load Shift Registern schau ich mir gerade an, aber so>ganz versteh ich noch nicht, wie die kaskadierung funktionniert, bzw.>wie die mit seriellen UND parallelen Inputs dann umgehen.AVR-Tutorial: Schieberegister
MFG
Falk
> "Besonders für Anfänger gilt: Gerade am Anfang ist es immer gut zu> sagen, was man erreichen will und nicht so sehr Annahmen darüber zu> treffen, wie man es erreichen könnte und dann das Wie zu hinterfragen.> Oft ist der Denkfehler nämlich schon im Ansatz und man kann besser> helfen, wenn man das Ziel des Fragenden kennt."
Ach das meinst du. Nun, die Kurzfassung wäre, dass mehrere
Interferometerwerte, die parallel zur Verfügung stehen über diesen
gesuchten Baustein an den erwähnten µC geleitet werden und dort die
Aktorregelung erfolgt.
> AVR-Tutorial: Schieberegister
Vielen dank, jetzt hab sogar ich das verstanden :) Die Lösung sollte
machbar sein, auch wenn's da einige Schiebe-ICs braucht.
Für so was reicht ein einfaches CPLD in entsprechendem Package. Über die
benötigte Frequenz lacht so ein Keks ;-)
z.B. Altera Max II EPM2210F324 bei Digikey ab 28 Euro
:-)
@ Franjo (Gast)
>Mit mehreren Parallax Propeller-Chips in Assembler programiert müßte es>auch gehen . Pro Propeller -Chip fallen ca 10 Euro an
No brain, no pain.
Wie bereits mehrere Leute vorgerechnet haben, braucht man läppische
2,56MHz. Das macht sogar ein AVR im Schlaf. Erst recht ein DSP. Ein
74HC165 kostet um die 20 Cent. Für 256 Eingänge braucht es 32 Stück,
Kostenpunkt 6,40 Eur. An das SPI anklemmen und fertig. Ist das
langweilig . . . .
MfG
Falk
Für was einen µC? Kaskadierte 165er sind doch schon seriell. Kleine TTL
Logik mit Taktquelle dran und die Daten werden seriell ausgegeben.
Dürfte sogar günstiger als mit µC sein.
So, abschließend nochmal ein Dank an die zahlreichen Unterstützer.
Es wird eine Lösung mit Schieberegistern werden. Entweder der
vorgeschlagene 74HC165 oder ein Derivat mit 16Bit (zB 74F676).
ndrs schrieb:> Das ganze kommt an einen Blackfin_BF518F von Analog Devices.
Ich kenne zwar den Blackfin nicht, aber viele DSPs haben ein serielles
TDM Interface, das passt mit typisch 32 Bytes pro Frame ganz gut zu
deinen Anforderungen.
MfG Klaus
Da das Thema somit erledigt ist, möchte ich doch noch eine Frage an Falk
richten:
Warum verweist Du bei einer (wie aus der Diskussion ersichtlich) absolut
korrekt und auch genügen detailliert formulierten Frage dermassen
abweisend auf die Netiquette und ziehst diese völlig absurde
Nebendiskussion mit unnötigen "dann lies noch mal"-Kommentaren in die
Länge?
Solche Antworten kommen einfach dermassen arrogant und - gerade für
Neulinge - unsympathisch rüber! Bei Fragen wie:
"Hilfe, ich will einen Mikrocontroller bauen, der Daten verschicken
kann! Was soll ich nehmen?"
Sind solche "Anregungen" angebracht.
Aber hier echt nicht. Hier warst DU der, der die Diskussion unnötig
durch Zurückhalten von Information (WAS meinst Du, hat der Fragesteller
falsch gemacht?) in die Länge gezogen hat.
Meine Meinung.
Gruäss
Simon
Simon Huwyler schrieb:> Warum verweist Du bei einer (wie aus der Diskussion ersichtlich) absolut> korrekt und auch genügen detailliert formulierten Frage dermassen> abweisend auf die Netiquette und ziehst diese völlig absurde> Nebendiskussion mit unnötigen "dann lies noch mal"-Kommentaren in die> Länge?
So war er schon immer, so ist er immernoch und wird es auch immer
bleiben.
Simon Huwyler schrieb:> Warum verweist Du bei einer (wie aus der Diskussion ersichtlich) absolut> korrekt und auch genügen detailliert formulierten Frage ...
???
Woher sollte man gerochen haben können welche Randbedingungen er hat?
Welchen Eingangsspannungsbereich? Welche Schnittstelle (seriell reicht
nicht)? Welchen Prozessor? Vorkentnisser/bestehender Code?
Interessanterweise wussten aber doch schon ganz viele Leute, was man als
Idee so in Betracht ziehen könnte.
Obwohl er NICHT geschrieben hat:
- ob das Ding auch weltraumtauglich sein soll
- Vibrationsfestigkeit
- Wasserdichtheit
- ....
Man kann auch ZUVIEL angeben, so dass man ob der vielen Randbedingungen
die eigentliche Frage nicht mehr erkennt.
... Und dann würde bestimmt jemand sagen: Hey, mann, quassel uns nicht
voll, komm auf den Punkt!
Und abgesehen davon: C'est le ton qui fait la musique. Und DAS war mein
Haupanliegen mit dieser Frage. Wenn man schon meint, er habe etwas
vergessen zu erwähnen - warum nicht einfach nochmals nachfragen???
So funktionieren nämlich Diskussionen! Nachhaken, präzisieren, Ideen
bringen, verwerfen...
@ Simon Huwyler (simi)
>Warum verweist Du bei einer (wie aus der Diskussion ersichtlich) absolut>korrekt und auch genügen detailliert formulierten Frage
Nichts ist absolut. Und schon gar nicht korrekt.
Wenn gleich die Frage sicherlich eine der besseren ind diesem Forum war,
so fehlten dennoch ein paar wichtige Informationen. U.a. dass es einen
DSP mit 50MHz SPI gibt.
>abweisend auf die Netiquette und ziehst diese völlig absurde>Nebendiskussion mit unnötigen "dann lies noch mal"-Kommentaren in die>Länge?
Was bitte schön soll ich denn noch schreiben als das, was in dem
DIREKTEN LINK steht?
http://www.mikrocontroller.net/articles/Netiquette#Klare_Beschreibung_des_Problems>Solche Antworten kommen einfach dermassen arrogant und - gerade für>Neulinge - unsympathisch rüber!
Deine Meinung.
>Aber hier echt nicht. Hier warst DU der, der die Diskussion unnötig>durch Zurückhalten von Information (WAS meinst Du, hat der Fragesteller>falsch gemacht?) in die Länge gezogen hat.
Nö. Siehe oben.
MFG
Falk