Forum: FPGA, VHDL & Co. Auswahl von FPGA


von Basil A. (basil)


Lesenswert?

Hallo zusammen,

für ein aktuelles Projekt soll ich ein passendes FPGA heraussuchen.
Das FPGA bekommt Zeitsignale von 12 Kleine Sensorplatinen, auf jede 
Sensorplatine ist ein µC, der die Daten bzw. das Zeitsignal parallel ( 8 
bit = 8 Pinne ) an das FPGA übermittelt. Das heisst erstmal 96 
Eingangspinne. Die Daten sollen danach im RAM gespeichert werden. und ab 
und zu mal zu einem andren µC übermittelt, damit er die in einem 
Speicher schreibt.
Es gibt auch natürlich Steuerleitungen für die Sensorenplatinen, eine 
SPI Schnittstelle und noch ungefähr 30 andere Leitungen als 
ausgangsleitungen am FPGA.
Die Abtastrate ist bei jede Sensorpatine 100 KHz (mit einem 16 bit ADC 
digitalisiert).
Das FPGA sollte kein BGA-Housing haben, damit man es selber löten kann.

Danke im Voraus!









Kann mir einer von Euch nen passendes FPGA empfehlen?

von Manuel (Gast)


Lesenswert?

Spartan 3.

von Basil A. (basil)


Lesenswert?

Danke erstmal.
Aber welche davon (50k,200k..........,5000k)

von Bernd G. (Gast)


Lesenswert?

Spartan 3: XC 3 S 200 PQG208-4C
Hat genug Beine und hat innen genug Platz bei vertretbarem Preis.
Beine im 0,5-mm-Raster.
Wenn du mehr Beine brauchst, wird es dann doch ein BGA.

von Bärbel (Gast)


Lesenswert?

@ Basil
ich glaube Spartan 3 im TQFP144 mit max. 108 user pins gibt es bis 
XC3S250E (E-Serie) oder XC3S50A (A-Serie). Mit mehr pins nur als BGA.

von Bärbel (Gast)


Lesenswert?

Entschuldigung, den XC3S500E gibt es im PQ208 mit 158 user pins.

von Basil A. (basil)


Lesenswert?

Danke Bernd,

ich kann das sehr schlecht abschätzen wie viele System Gates ich brauche 
200k oder 400k. Meinst du, dass 200k für die Funktionen, die ich vor 
habe reichen werden.

von Basil A. (basil)


Lesenswert?

@ Bärbel

ich glaube dass die (E-Serie) Logic optimiert bei 3. sind die I\O auch 
optimiert oder?

von Bernd G. (Gast)


Lesenswert?

200 k Gatter sollten für deine Anwendung locker reichen. Wenn es mehr 
werden sollte, nimmst du eben den nächstgrößeren mit 400 k Gattern.
Das Pinout ist dasselbe.

Also in der ISE den Schaltkreis eben mal entwerfen und sehen, ob es 
passt.
Wenn nicht, nimmst du den XC 3 S 400...

von Matthias G. (mgottke)


Lesenswert?

Nach der Kürze der Beschreibung scheint mir die Größe der Logikresourcen 
egal zu sein. "Das bißchen" können alle. Die Frage stellt sich eher nach 
der Größe des internen Speichers. Der ist nämlich ziemlich eng bemessen 
bei den ganzen FPGAs.

von Basil A. (basil)


Lesenswert?

gibt es einen Unterschied im Stromverbrauch bei 200k und 400k?
Ausserdem suche ich mir einen ADC der die Daten Parallel und mit einer 
16 bit Auflösung zur µC im Sensorplatinen übermittelt.
Danke noch mal.

von Arndt B. (Firma: Helion GmbH) (bussmann)


Lesenswert?

Als Alternative kämen auch die XP2 von Lattice in Betracht, diese haben 
dann auch das Config-Flash integriert (ansonsten sehr ähnlich zum 
Spartan3) im PQ208 hätte man dann 146 User I/O zur Verfügung.

Viel Erfolg
Arndt

von Bernd G. (Gast)


Lesenswert?

> gibt es einen Unterschied im Stromverbrauch bei 200k und 400k?

Wenn die gleiche Anzahl von Gattern bei gleicher Innenschaltung benutzt 
wird - nein.

Wenn du das gesamte Innenleben benutzt, dann ja.

von volltroll.de (Gast)


Lesenswert?

Einfach im ISE Simulieren erstellen und den passenden auswählen.

von Arndt B. (Firma: Helion GmbH) (bussmann)


Lesenswert?

Basil A. wrote:
> gibt es einen Unterschied im Stromverbrauch bei 200k und 400k?

Der statische Stromverbrauch ist bei den größeren FPGA Bausteinen (die 
SRAM basiert sind, also alle Hersteller außer Actel) immer größer, da 
die Konfigurationszellen (SRAM) einen kleinen Leckstrom haben.

Während der Konfiguration (kurz nach dem Einschalten) ist der 
Spitzenstrom merklich höher. Faktor 2 ist bei doppelter Bausteingröße 
oft üblich. Die richtige Powersequenz und eine stabile 
Versorgungsspannung muss im Einschaltfall beachtet werden. Im Betrieb 
bestimmt sich die Stromaufnahme maßgeblich durch die Beschaltung der 
I/Os und deren dynamische Nutzung.

Viele Grüße
Arndt

von Basil A. (basil)


Lesenswert?

ich werde gerne ein Xilinx FPGA nehmen, weil ich eine 
Entwicklungsumgebung davon habe. ich versuch gerade im ISE zu 
Simulieren. Ich habe davon keine Ahnung, aber ich versuche es, und sag 
Bescheid. ;-)
Vielen Dank erst mal an euch alle.

von Morin (Gast)


Lesenswert?

> Die Abtastrate ist bei jede Sensorpatine 100 KHz (mit einem 16 bit ADC
> digitalisiert).

Bei der Frequenz kannst du die Daten der verschiedenen Sensoren 
nacheinander auf den selben Leitungen übertragen, dann sinds nur 8 statt 
96 Datenleitungen.

von Falk B. (falk)


Lesenswert?

@  Arndt Bußmann (Firma Helion GmbH) (bussmann)

>Während der Konfiguration (kurz nach dem Einschalten) ist der
>Spitzenstrom merklich höher. Faktor 2 ist bei doppelter Bausteingröße
>oft üblich.

Die Zeiten sind lange vorbei. Das Problem wurd bei Spartan 3 schon im 
Vorfeld gelöst, dito alle neueren FPGAs vom grossen X.

>bestimmt sich die Stromaufnahme maßgeblich durch die Beschaltung der
>I/Os und deren dynamische Nutzung.

Die IOs machen in vielen Designs nur einen Bruchteil der Leistung aus. 
Den meist Strom ziehen schnell schaltende Logikzellen.

MFG
Falk

von Arndt B. (Firma: Helion GmbH) (bussmann)


Lesenswert?

@Falk

Falk Brunner wrote:

> Die Zeiten sind lange vorbei. Das Problem wurd bei Spartan 3 schon im
> Vorfeld gelöst, dito alle neueren FPGAs vom grossen X.

Du meinst vielleicht ein anderes Thema (als ich im Sinn hatte) die 
Faktor 2 Regel gilt vor allem für ICCINTQ und ICCAUXQ im Ruhestromfall. 
Aber es stimmt schon, die ersten Spartan3 Revisionen waren noch 
schlimmer...

Die Spitzenstromgeschichte hatten wir bei einem XC3S400 Design 
beobachten können. Und ich kenne auch Designer die damit große 
Schwierigkeiten hatten, da die Spannung im Bootfall nicht stabil genug 
war und somit der Bootprozess immer wieder eingeleitet wurde.

>>bestimmt sich die Stromaufnahme maßgeblich durch die Beschaltung der
>>I/Os und deren dynamische Nutzung.
>
> Die IOs machen in vielen Designs nur einen Bruchteil der Leistung aus.
> Den meist Strom ziehen schnell schaltende Logikzellen.

Das ist sehr stark abhängig vom Design. Bei Anwendungen, die mit 
schnellen Videobussen und SRAM-Anbindung arbeiten ist es auf jeden Fall 
anders. Schnell schaltende IO-Zellen müssen die Leitungs- und die 
Eingangskapazität umladen, da kommen schnell einige mA zusammen. Das 
gilt übrigens für alle FPGA Hersteller, kann man auch sehr schön mit den 
Powertools nachrechnen.

Übrigens hier ein Ausschnitt aus dem "Spartan3 Generation FPGA 
userguide":
...A softstart feature that controls output ramp time is useful.
With care, use of overcurrent protection is possible, such as foldback 
or fuses. In this case, apply VCCAUX no later than VCCINT to avoid the 
surplus ICCINT current (see “Surplus ICCINT if VCCINT is Applied before 
VCCAUX,” page 479). Also be aware that capacitors will be charging at 
power-on and might draw a significant amount of current for a short
time. If necessary, slow the supply voltage ramp to control the charge 
current. If foldback is not a design requirement, it is best to avoid 
it, keeping the power supply design simple...
...
To ensure successful power-on, VCCINT, VCCO Bank 2, and VCCAUX supplies 
must rise through their respective threshold-voltage ranges with no 
dips. The FPGA data sheets specify any ramp rate requirements. The 
Spartan-3 family has no ramp rate requirements for the current revision; 
refer to the Spartan-3 FPGA Family Data Sheet (DS099) for specifications 
for earlier versions. The Spartan-3E family has ramp rate requirements 
from
0.2 to 50 ms. The Spartan-3A/3AN/3A DSP device ramp rate requirements 
are from 0.2 to 100 ms...

Ähnliche Dinge findet man bei allen FPGA Herstellern, das ist halt 
bedingt durch die verwendete Technologie.

Viele Grüße
Arndt

von Arndt B. (Firma: Helion GmbH) (bussmann)


Lesenswert?

@Basil

Wenn Du kannst, dann versuche den ModelSim zu benutzen, ich finde diesen 
Simulator deutlich besser als den in ISE integrierten Simulator.
Auch sehr gut und frei erhältich ist icarus.

Viele Grüße
Arndt

von Basil A. (basil)


Lesenswert?

@ Arndt Bußmann

ich darf kein neue Software instalieren ;-)

@ Alle

ich bin immer noch auf der suche nach einem passenden FPGA, mir geht es 
darum, dass es über 220 verfügt und von Xilinx sein soll (kann man 
selber löten). Ich möchte für die Adressierung von RAM auch direkt 24 
Leitung (bit) nehmen ohne Latch, geht das überhaupt. es gibt manche 
FPGAs aber als BGA, und ich muss das dann auf der Platine 
demensionieren. Das habe ich noch nie gemacht! gibt es auf der Xilinx 
Seite auch wie man das verbinden kann (in der Platine).

Danke für die Antworte.

von Basil A. (basil)


Lesenswert?

@ Morin
>Bei der Frequenz kannst du die Daten der verschiedenen Sensoren
>nacheinander auf den selben Leitungen übertragen, dann sinds nur 8 statt
>96 Datenleitungen.

ich kann nicht, das ist sehr wichtig das ich die Sensoren gleichzeitig 
abfrage.

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


Lesenswert?

> das ich die Sensoren gleichzeitig abfrage.
Was ist für dich gleichzeitig?
In der gleichen ns? Die selbe us?
So richtig gleichzeitig gibt es nicht.

> Die Abtastrate ist bei jede Sensorpatine 100 KHz
Muss evtl. nur gleichzeitig abgetastet werden? Der Abtastzeitpunkt hat 
nicht unbedingt was mit dem Übertragungszeitpunkt zu tun.

von Basil A. (basil)


Lesenswert?

@  Lothar Miller

>Muss evtl. nur gleichzeitig abgetastet werden? Der Abtastzeitpunkt hat
>nicht unbedingt was mit dem Übertragungszeitpunkt zu tun.

kannst du mir dasd einbißchen erklären.

ich habe wie gesagt acht Sensorplatinen  mit jeweils 80kHz Abtastrate 
pro Kanal.
die sollen danach genau über einander in einem Diagramm dargestellt 
werden.

Danke

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


Lesenswert?

> acht Sensorplatinen  mit jeweils 80kHz Abtastrate pro Kanal.
>> mit einem 16 bit ADC digitalisiert...
Du brauchst also "nur" eine S&H Schaltung vor dem AD-Wandler, die bei 
allen 8 Platinen mit einem Signal gleichzeitig getriggert wird. 
Anschliessend kannst du diesen gespeicherten Wert nacheinander auf 
jeder der Platinen wandeln und abholen.
Also:
- gleichzeitig Einlesen
- nacheinander Wandeln und Übertragen

von Basil A. (basil)


Lesenswert?

ich Habe 12 verschiedene Platinen (12 ADC) und die Übertragund zur 
Zentralplatine soll schon digital erfolgen.

von Christian R. (supachris)


Lesenswert?

Welcher ADC genau ist denn auf der Sensorplatine? Und was ist da noch 
drauf?

von Basil A. (basil)


Lesenswert?

ich habe denn ADC nochnicht ausgesucht der soll die Daten parallel 
rausschicken und die 100 kh schafen. kennst du einen. (16 bit)

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


Lesenswert?

> der soll die Daten parallel rausschicken und die 100 kh schafen.
Warum soll der die Daten parallel rausschicken?

Nimm doch sowas Kleines wie den LTC1864 hier:
http://www.linear.com/pc/productDetail.jsp?navId=H0,C1,C1155,C1001,C1158,P2143
mit extra Start-Eingang (CONV). Was willst du mehr?

12 ADC, alle gleichzeitig angesteuert, brauchen nur 24+1 = 25 Leitungen 
zum FPGA.

von Basil A. (basil)


Lesenswert?

ich weiss nicht ob ein Kabel das schafen kann. (100 kHz X 16 bit) es 
geht um die geschwindigkeit der Daten.

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


Lesenswert?

> ... ob ein Kabel das schafen kann.
Schon mal was von Gigabit-Ethernet gehört?
Das ist auch nur ein Kupferkabel ...

> (100 kHz X 16 bit)
Das ist langsam, da langweilt sich das FPGA zu Tode.

Ich bin dann weg.... :-/

von Basil A. (basil)


Lesenswert?

ich nehm mir doch ein BGA gehause, weil die Pinne, die ich brauche mehr 
als 200 sind.

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


Lesenswert?

> die Pinne ...
Einzahl:  Pin
Mehrzahl: Pins

von Basil A. (basil)


Lesenswert?

Danke

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.