Forum: FPGA, VHDL & Co. CPLD schneller als FGPA ?


von Studi (Gast)


Lesenswert?

In einer der Klausurfragen taucht folgende Frage auf. Ich bin mir bei 
der Frage unsicher. Kennt jemand die Antwort ?


CPLDs sind zwar kleiner, dafür aber generell schneller als FPGAs!

Richtig oder falsch ?

von vilex (Gast)


Lesenswert?

nein!
kommt auf soviele faktoren drauf an...
cplds und fpgas vergleichen ist so wie auto mit motorrad .. beide dienen 
zur fortbewegung und können schnell oder langsam sein aber sie sind doch 
unterschiedlich und für unterschiedliche anwendungen ...
genauso wie der vergleich fpga und dsp .. haben eigentlich auch nix 
gemeinsam ...

von TestX .. (xaos)


Lesenswert?

kommt auf den cpld drauf an... klassiche cpld's haben ja nur eine AND/OR 
matrix das wars... da hast du deterministische signallaufzeiten im 
einstelligen ns bereich...die sind quasi immer schneller als ein fpga, 
der intern eine wesentlich komplexere logik besitzt..
heutzutage werden aber oft kleine fpgas als "cpld-ersatz" beworben..da 
kann man so eine aussage dann nicht mehr treffen weil der übergang 
fließend ist..

von Zeit ist Geld (Gast)


Lesenswert?

Zumindest sind klassische CPLDs meist schneller einsatzbereit nach dem 
Einschalten.

von Grendel (Gast)


Lesenswert?

Richtig moderne CPLDs gibts ja eigentlich kaum noch.
Die modernen "CPLDs" sind meist kleine FPGAs, die nur so genannt werden.

Daher haben die noch existierenden CPLDs schon wegen der Strukturgrößen 
einen Nachteil...

von 123 (Gast)


Lesenswert?

Grendel schrieb:
> Daher haben die noch existierenden CPLDs schon wegen der Strukturgrößen
> einen Nachteil...

und der wäre ?

von Grendel (Gast)


Lesenswert?

Die kleineren Transistoren schalten schneller.

Moderne FPGAs liegen bei Verzögerungszeiten im 50 - 1000ps Bereich, je 
nachdem was man genau in einem Logikblock nutzt.
Auch die I/Os sind rattenschnell.

Ja ich weiss da kommen noch die Routingressourcen und alles mögliche 
dabei, aber wenn man nur ähnlich viel Logik wie in einem CPLD nutzt und 
alles so dicht wie möglich an einer I/O Bank festnagelt... naja müsste 
man mal ausprobieren wie schnell so ein Kintex-7 werden kann ;-)

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


Lesenswert?

Studi schrieb:
> Richtig oder falsch ?
Falsch.

123 schrieb:
> Grendel schrieb:
>> Daher haben die noch existierenden CPLDs schon wegen der Strukturgrößen
>> einen Nachteil...
> und der wäre ?
Je gröber die Struktur um so langsamer. Mit 100nm ist ein Baustein 
automatisch langsamer als mit 35nm. CPLDs sind alt und grob...


> wäre ?
> falsch ?
Bitte nicht Plenken
!
Das gibt immer wieder so unnötig hässliche Zeilenümbrüche
!

von Schnellste Maus von Mexiko (Gast)


Lesenswert?

ganz zu schweigen von den seriellen Links, die in FPGAs stecken mit 
denen man Taktraten weit über 10GHz fahren kann. Kann das ein CPLD auch?

von ,,, (Gast)


Lesenswert?

das zählt doch nicht. das ist dedizierte hardware dafür.

von Nase (Gast)


Lesenswert?

Ok, wenn das also nicht zählt.

Ich denke, wenn man einen Eingang statisch auf einen Ausgang routet, 
sind beide ähnlich schnell.

Das zählt doch, oder?

von 123abc (Gast)


Lesenswert?

Nase schrieb:
> Ich denke, wenn man einen Eingang statisch auf einen Ausgang routet,
> sind beide ähnlich schnell.
>
> Das zählt doch, oder?

Wenn ich zwei Pins nebeneinander wähle, dann würde ich sagen, dass der 
FPGA schneller ist.
Verwende ich aber ein Pin-Pärchen in OstWest Ausrichtung (also einer 
links am Gehäuse, den anderen rechts), dann würde ich sagen, dass der 
CPLD schneller ist, da er viel kleiner ist und dadurch kleinere 
Signalwege zurückführen muss.


vilex schrieb:
> cplds und fpgas vergleichen ist so wie auto mit motorrad
Meiner Meinung nach ist das nur wieder so eine "Professortheoretische" 
Frage mit zick richtigen antworten. Die Frage kann man nur beantworten, 
wenn die Rahmenbedingungen gesetzt sind.

Studi schrieb:
> In einer der Klausurfragen [...]
Hat der Professor diese Frage zwischen den Zeilen in seinem Skript 
beantwortet? Hat er dies in der Vorlesung mal erwähnt? Du hast du 
Klausur, gibt es da keine Lösung dazu? Was sagen Komilitonen dazu?

von Achim S. (Gast)


Lesenswert?

die Frage war:

Studi schrieb:
> CPLDs sind zwar kleiner, dafür aber generell schneller als FPGAs!
>
> Richtig oder falsch ?

Da nach einem generellen Geschwindigkeitsvorteil gefragt war, ist die 
Antwort darauf eindeutig "falsch".

von MCUA (Gast)


Lesenswert?

> CPLDs sind zwar kleiner, dafür aber generell schneller als FPGAs!
Ja, es kommt nat. immer auf die konkrete Anwend. an.
Bei manchen Anwend. (ua mit sehr breiter Eingängen könnte auch heute 
noch CPLD schneller sein (da man beim FPGA viele LUTs 
(hintereinander)verschalten muss). Die neusten MACH.. haben durchl-verz 
von ca 3,5ns.

von Christoph Z. (christophz)


Lesenswert?

MCUA schrieb:
> Die neusten MACH.. haben durchl-verz
> von ca 3,5ns.

So wie du das schreibst, nehme ich an, dass das ein Beispiel für die 
Geschwindigkeit eines CPLDs ist. Du musst bei Lattice aber aufpassen.

Die MachXO* sind FPGAs (bestehen aus LUTs), die ispMACH 4000 Familie 
sind richtige CPLDs (bis hinunter zu 2,5 ns Propagation delay)

von MCUA (Gast)


Lesenswert?

>Du musst bei Lattice aber aufpassen.
Wieso?
MACH4 (echte PLDs, 400MHz-Cnt, urspr. noch von AMD) sind keine MACHXO* 
(mit LUTs)

von marco (Gast)


Lesenswert?

Fiese Frage.. Also dass moderne CPLDs eig nur kleine FPGAs sind, meint 
der Prof sicher nicht erstmal würde die Frage denn tatsächlich lauten 
fpgas sind schneller als fpgas! Richtig?... Profs leben meistens im 
gestern. Ein Prof von mir stellte kürzlich den Spartan 3 als moderne 
technologie vor. ... trotzdem würde ich die frage mit nein 
beantworten... ein klassischer cpld hat eine vorhersagbare laufzeit ein 
fpga nicht kann also schneller oder langsamer sein.. so vermute ich ist 
die frage gemeint.

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


Lesenswert?

marco schrieb:
> ein klassischer cpld hat eine vorhersagbare laufzeit
Aber auch nur, wenn der Produktterm direkt am Pin hängt. Muss er aber 
nicht: CPLDs haben meist mehr Produktterme als Pins...

von MCUA (Gast)


Lesenswert?

> ein klassischer cpld hat eine vorhersagbare laufzeit
Jedes PLD/FPGA hat eine vorhersagbare Laufzeit, wenn man die genaue 
Beschaltung betrachtet. Bei PLDs ist halt der Punkt, die sehr breite 
Eingangsmatrix (wodurch bei mehr oder weniger Eingängen immer die 
gleiche Laufzeit resultiert) bzw die sehr leistungsfähige (aber teuere) 
MAC-zelle.
...aber (wie oben schon erwähnt) eigentl kalter Kaffe (Sil.Fläche steigt 
quadratisch mit Anzahl der MACs, deswegen sehr teuer).

von marco (Gast)


Lesenswert?

Ja ihr habt recht... aber wird die frage so kompliziert gestellt sein? 
Wenn ja, denn gäbe is sicher nicht nur richtig oder falsch sondern eine 
begründung wäre nötig. Es kommt auch auf die vorlesung an. 
Digitaltechnik, wo evtl. Mal 30 min über diese technologien gesprochen 
wird, oder ein masterkurs, wo ein ganzes semester bis ins kleinste 
detail darauf eingegangen wird....

von W.S. (Gast)


Lesenswert?

Na dann begründe ich mal was:

Bei CPLD's hat es vor jedem Flipflop ein AND/OR-Gate mit zumeist recht 
riesigen AND's. Wenn ich mich recht erinnere, dann z.B. bei den 
Coolrunnern so um die 30..40-fach AND's.

Bei FPGA's geht das alles ganz anders, da hat man LUT's, also kleinere 
Logikzellen mit jeweils nur 4..6 Eingängen. Das schafft Flexibilität, 
aber muß man eine größere Zahl von Eingängen miteinander kombinieren, 
dann muß man mehrere LUT's kaskadieren, wodurch die Durchlaufzeiten sich 
addieren.

Besonders einprägsam ist das bei großen synchronen Zählern, wo ja jede 
Stufe den Zustand ihrer Vorstufen beachten muß - nur wenn alle Vorgänger 
auf high stehen, darf sie beim Takt umschalten. Das ist bei einem CPLD 
in einem Rutsch und mit nur einer Gatterlaufzeit machbar, solange die 
AND's ausreichen. Beim FPGA ist das anders (s.o.), weswegen FPGA's 
öfters einige Spezial-Logiken eingebaut haben (PLL's, Akkus, 
Multiplizierer usw.), damit solche kritischen Stellen nicht in 
gewöhnlichen LUT's ausgeführt werden müssen.

Ganz grob formuliert heißt das: CPLD's sind kleiner und dafür schneller 
als FPGA's - sofern sie aus vergleichbaren Technologien stammen.

W.S.

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.