Forum: FPGA, VHDL & Co. kleiner FPGA gesucht


von suchender (Gast)


Lesenswert?

hallo,

ich bin auf der Suche nach einem kleinen FPGA.
Mit den Maßen von max. 10 mm x 10mm. Ich benötige auch nur etwa 25 bis 
30 GPIO´s
der code in vhdl ist schon vorhanden, allerdings kann ich nichts über 
seine Größe sagen.
Der FPGA hat später die Aufgabe an 2 inputs Daten von bis zu 1,5 MHz 
aufzunehen, sie zu verarbeiten und an 2 Outputs wieder auszugeben. kann 
man aus dieser Datenrate auf einen min. benötigten Takt schliessen ?

gruß an alle,

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

MachXO gibts mit eingebautem Config-Speicher in 8x8mm
http://www.latticesemi.com/products/cpld/machxo/index.cfm

MachXO2 gibts auch in 4x4mm (und noch kleiner)
http://www.latticesemi.com/products/cpld/machxo2/index.cfm?source=sidebar

> Der FPGA hat später die Aufgabe an 2 inputs Daten von bis zu 1,5 MHz
> aufzunehen, sie zu verarbeiten und an 2 Outputs wieder auszugeben. kann
> man aus dieser Datenrate auf einen min. benötigten Takt schliessen ?
Wenn nichts weiter gegeben ist (Jitter, Ausgabefrequenz,...) dann gilt 
das Abtasttheorem und damit mindestens 3 MHz. Ich halte hier 10MHz für 
angemessen...

von suchender (Gast)


Lesenswert?

vielen dank für die Hilfe,

bei latticesemi hab ich noch nicht geschaut.

aber von der größe her schonmal optimal.
nein jitter ist vernachlässigbar.
was meinst du mit Ausgabefrequenz? mit welcher Frequenz die Signale 
wider ausgeben werden müssen ? Immer mit der Eingangsfrequenz

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

suchender schrieb:
> nein jitter ist vernachlässigbar.
Sicher?
Wenn du 3MHz FPGA-Takt hast, dann kannst du 1 MHz (500ns high/ 500ns 
low) zwar schön einlesen, aber nicht so schön symmetrisch wieder 
ausgeben, weil dein FPGA ja nur 333ns Schritte machen kann. Dann wird 
also aus einem symmetrischen 500ns+500ns Signal eines mit 333ns+666ns 
oder 666ns+333ns. Du hast dann zwar den gleichen Takt, aber eine 
Verschiebung des Tastverhältnisses oder sogar einen Jitter von 333ns.

von Martin G. (Firma: Leckermittag.de) (morin)


Lesenswert?

Welche Verarbeitung muss mit den Signalen durchgeführt werden?

Mit welcher Verzögerung kannst du leben?

von suchender (Gast)


Lesenswert?

im jetzigen System arbeitet ein µC der mit eine interne dco läuft,
Dieser produziert einen unwahscheinlich starken jitter. Die 
nachfolgenden Systeme sind so passiv das die das "nicht interessiert" 
(entschuldigt diesen Ausdruck)
Der µC soll gegen einen FPGA ausgetauscht werden , weil die Frequenz der 
Eingangssignale ein wenig angehoben wurde und der µc schon an seinen 
maximum läuft.

Ich schaue mir gerade die Vorschläge von Lothar Miller an.
Auf den ersten blick erfüllt dieser FPGA die Erfordernisse in Punkto 
Fmax bei weiten.
wenn ich den Systemtakt und somit auch die Abtastfrequenz erhöhe , 
verringere ich damit nicht den jitter ?

<Welche Verarbeitung muss mit den Signalen durchgeführt werden?>

eine einfache Logik, UNDs /ODERs , ein bischen negieren und ab damit auf 
den Ausgang.

kleine zwischenfrage:
Wie ich oben schon geschrieben habe ist der code in VHDL schon 
vorhanden, wie kann ich abschätzen wie stark er speicher / zellen im 
FPGA braucht.
Nicht das der Code (theoretisch) zu groß für den FPGA ist und er so wie 
ich ihn brauche nicht drauf passt?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

suchender schrieb:
> eine einfache Logik, UNDs /ODERs , ein bischen negieren und ab damit auf
> den Ausgang.
Wofür brauchst du dann einen Takt?

suchender schrieb:
> Wie ich oben schon geschrieben habe ist der code in VHDL schon
> vorhanden, wie kann ich abschätzen wie stark er speicher / zellen im
> FPGA braucht.
Variante 1:
Einfach mal mit irgendeiner Toolchain synthetisieren. Die Anzahl der 
Flipflops wird gleich beliben, und für die Logik gibt es Daumenformeln, 
um zwischen verschiedenen Herstellern zu vergleichen.

Variante 2:
Erfahrung.

von suchender (Gast)


Lesenswert?

nach dem power on des FPGAs muss er eine Konfiguration seiner 
"Außenwelt" durchführen.
Dazu gehört dass bedienen von 2 SPI Schnittstellen und das setzen von 
einigen Signalen. Das passiert einmalig. Wobei die Zeitdauer dafür 
nebensächlich ist. zur zeit (mit µC dauert die konfig etwa 20 ms) das 
ist völlig in Ordnung. wenn es schneller geht ist auch nicht schlimm.

Da aber wenig Platz auf der Leiterplatte ist, hab ich mich eben auf die 
Suche nach einen kleinen FPGA gemacht , sonnst hätte ich den µC gelassen 
und das bischen Logik diskret aufgebaut.


<mit irgendeiner Toolchain synthetisieren>

das ist eine gute idee, das werde ich tun


Variante 2:
Erfahrung.

Die bekommen ich wieder ein stück durch diese Aufgabe. So wie wir alle

von Lattice User (Gast)


Lesenswert?

Lothar Miller schrieb:
> MachXO gibts mit eingebautem Config-Speicher in 8x8mm
> http://www.latticesemi.com/products/cpld/machxo/index.cfm
>
> MachXO2 gibts auch in 4x4mm (und noch kleiner)
> http://www.latticesemi.com/products/cpld/machxo2/i...

Bei diesen kleinen Gehäusen muss man aufpassen ob der Bestücker das auch 
zuverlässig kann.

Das ist meist csBGA mit 0,5 mm oder 0,8 mm Ballabstand, oder bei den 
MachXO2
hat Lattice ein ucBGA mit 0,4 mm Ballabstand.

0,8 mm sollte für die meisten BGA fähigen Bestücker kein Problem sein, 
aber bei 0,5 mm wird es sehr eng. Die Anforderungen an die Leiterplatte 
werden dabai auch um einiges höher.

von suchender (Gast)


Lesenswert?

das ist kein Problem, das ist bisher nur ein Prototyp,
Ich wollte dann ein TQFP gehäuse nehmen, das kann ich auch selber löten. 
In der Größe ist das noch machbar

von Lattice User (Gast)


Lesenswert?

suchender schrieb:
> Ich wollte dann ein TQFP gehäuse nehmen, das kann ich auch selber löten.
> In der Größe ist das noch machbar

Dann wird es aber nichts mit 10x10 mm.
Ein 100pin TQFP hat 14x14 und zusammen mit den Pins 16x16 Platzbedarf.
Kleiner als 100pin TQFP habe ich für einen FPGA bisher nicht gesehen.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Lattice User schrieb:
> Dann wird es aber nichts mit 10x10 mm.
Das ist m.E. beim Prototypen noch nicht so schlimm... ;-)
Denn suchender schrieb:
> Prototyp ... ein TQFP gehäuse nehmen, das kann ich auch selber löten.

Lattice User schrieb:
> 0,8 mm sollte für die meisten BGA fähigen Bestücker kein Problem sein,
BGAs sind laut unserem Fertiger wesentlich einfacher zu verarbeiten als 
diverse Finepitch QFP-Gehäuse mit ähnlicher Pindichte...

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.