Forum: FPGA, VHDL & Co. Starten mit FPGAs, aber wie/womit genau?


von ich (Gast)


Lesenswert?

Hallo erstmal.

Ich möchte mich gerne mit FPGAs beschäftigen. Erfahrung habe ich bisher 
nur in 8Bit und 16Bit PICs gesammelt.

Dazu stelle ich mir einige Fragen. Doch zuerst wollte ich erläutern, wie 
ich vorgehen wollte:
Zuerst will ich mich in die Arbeitsweise der FPGAs einlesen (bin ich 
auch schon bei). Danach wollte ich etwas mit dem Tool und einem Demo bzw 
Devboard rumspielen und ein gewisses Gefühl für bekommen. Mein 
Langzeitziel wäre es, einen Logicanalyser oder gar kleines, unretables, 
dafür selbst erstelltes Lowend-Oszi zu bauen. Aus Primär Kostengründen 
würde ich gerne bei Max. 4 Lagen bleiben, was also BGA ausschließen 
dürfte. Aber es soll ja auch kein 500MSPS Oszi werden.

Doch ich habe dazu noch ein paar Fragen.

1. Ich habe hier bereits 2 Boards. Eins ist mit einem Spartan3 
(XC3S100E), das andere hat einen Cyclone IV (EP4CE6E22C8N) drauf. Die 
Peripherie ist bei beiden ähnlich. SDRAM, Taster, 7Segmentanzeigen, ... 
Ich würde ungern mich in dem Cyclone4 und Alteras Software 
auseinandersetzen und dann aus irgendeinem (vorhersehbaren) Grund 
umentschieden und mich dann in die Xilinx's einarbeiten zu müssen. Ich 
tendiere eher zum Cyclone, aber das hat kaum spezielle Gründe.
Aus meiner Sicht sind die Pro und Cons:
Cyclone/Altera:
+ bei Mouser zu haben, wo ich eigentlich ausschließlich bestelle
+ das Board ist minimal besser ausgestattet
- Die neueren Cyclone5 gibt es nur in BGA
- Soweit ich das herausgelesen habe, sind sie langsamer als die 
Spartans, zumindest was DRAM Anbindung angeht.

Spartan/Xilinx:
+ Schneller
+ Spartan6 auch in TQFP
- Muss separat bei einem anderen Händler bestellt werden

Die Frage ist auch, ob ich denn die neuste Generation brauche, oder ob 
ein Spartan3 bzw Cyclone4 reicht. Und wie sieht es mit der Software aus? 
Unterstützt die Freie Version die Spartan3&6 bzw Cyclone4? Oder 
sonstiges, weswegen eine der beiden Programme vorzuziehen ist?

Sehr wahrscheinlich gibt es ähnlich wie bei ARM, AVR, PIC, MSP.... keine 
Richtige Antwort, aber mich würden Meinungen und Erfahrungen 
interessieren.

2. Was ist mit Lattice? Würde mir jemand dazu so sehr raten, dass ich 
mir davon noch ein Board holen sollte? Wenn ja, wieso? Ich will die 
jetzt nicht unter den Teppich kehren, aber bei den anderen beiden habe 
ich bereits ein Board. Lattice FPGAs habe ich schon öfter in 
(Teardownvideos von) Oszis gesehen, auch von Namenhaften Herstellern. Da 
denke ich mir wiederum, wieso sollten sie auf so einen kleinen (im 
Vergleich zu Altera und Xilinx) Hersteller setzen? Haben die vielleicht 
Features, die bei Oszis gut einsetzbar sind? Oder ist es nur der Preis?

3. Lohnt es sich, mit dem "zusammenklicken der Logikgatter" zu 
beschäftigen, oder doch gleich von Anfang an mit VHDL oder Verilog? Mir 
gefällt es grafisch ganz gut, nur irgendwann wird es sich 
unübersichtlich. Zudem wird bestimmt nicht ohne Grund fast 
ausschließlich eine der beiden Sprachen genutzt.

4. Haltet ihr den beschriebenen Weg für beschreitbar oder ratet ihr mir 
etwas anders bzw in einer anderen Reihenfolge zu machen?

5. Kann man diese überteuerten Konfigspeicher eigentlich durch normale 
Flash- oder EEPROM Bausteine ersetzen? Meine da mal was gelesen zu 
haben, das gewisse Speicher gehen.

Das war es erstmal. Es kommen aber wahrscheinlich noch ein paar mehr 
Fragen.

Vielen Dank schon mal an alle Schreiber

von M. (Gast)


Lesenswert?

- Cyclone 5 ist neu, Spartan 6 veraltet. Ich würde den S6 eher mit C4 
vergleichen. Spartan 6 ist ein aussergewöhnlich preiswerter Chip, nicht 
unbedingt repräsentativ,

- Altera bietet mehr in der freien Toolchain. Die ist einfacher und 
linearer zu bedienen. Besonders, seit ISE durch Vivado ersetzt wurde,

- Wenn Du Dich professionell entwickeln willst, sollte man aber wissen, 
wie was wo eingesetzt wird: Das Verhältnis in der Industrie, die FPGAs 
selber einsetzen, also dafür entwickeln, ist etwa:

Xilinx in rund 90% der Firmen verwendet - Tendenz sinkend
Altera in rund 60% der Firmen verwendet - Tendenz steigend
Lattice in rund 15% der Firmen verwendet - Tendenz unbekannt
Actel in weniger, als 10% der Firmen verwendet.

> Logigatter
Zum Verständnis ja,

> Kann man diese überteuerten Konfigspeicher eigentlich durch normale
Flash- oder EEPROM Bausteine ersetzen
Ja und es geht auch ohne, mit einem uC der das aktiv aus seinem Flash 
tut.

von ich (Gast)


Lesenswert?

M. schrieb:
> Cyclone 5 ist neu, Spartan 6 veraltet. Ich würde den S6 eher mit C4
> vergleichen. Spartan 6 ist ein aussergewöhnlich preiswerter Chip, nicht
> unbedingt repräsentativ,

Repräsentativ ist ja egal. Wenn die Super Preiswert sind, ist das ja 
eher ein Grund FÜR die Reihe.

Ich hab mir mal die Tabellen angeguckt:
https://www.altera.com/solutions/technology/external-memory/overview.html
Und
www.xilinx.com/products/silicon-devices/fpga.html

Da steht, der Spartan6 kann DDR3 Speicher mit 800MHz ansteuern, der 
Cyclone5 "nur" mit 400MHz und der Cyclone4 garnier DDR3. Auch wenn ich 
vielleicht kein DDR3 RAM nutze und auch nicht bis zu 800MHz nutze, 
scheint der Spartan6 mehr Power zu haben, und das bei geringerem 
Preis...

M. schrieb:
> Ja und es geht auch ohne, mit einem uC der das aktiv aus seinem Flash
> tut.

Gut. Ein uC wird eh drauf sein, dann bietet sich ja die Verwendung 
seines Flashes an..

Kannst du auch was zu 2. sagen?

von Lattice User (Gast)


Lesenswert?

ich schrieb:
>
> Ich hab mir mal die Tabellen angeguckt:
> https://www.altera.com/solutions/technology/external-memory/overview.html
> Und
> www.xilinx.com/products/silicon-devices/fpga.html
>
> Da steht, der Spartan6 kann DDR3 Speicher mit 800MHz ansteuern, der
> Cyclone5 "nur" mit 400MHz

Das steht da nicht. Xilinx gibt die Geschwindigkeit in den auch anderswo 
üblichen Werten ohne Einheit an, und das sind Mbps. Während Altera 
beides angibt, sowohl Mpbs als auch MHz. Cyclon V und Spartan 6 sind 
somot gleichauf, beide max 400 MHz.

ich schrieb:
> Kannst du auch was zu 2. sagen?

Lattice ist vor allem mit kleineren FPGAs erfolgreich, ein Marktsegment 
das von Xilinx vernachlässigt, und von Altera gerade erst wieder endeckt 
(Max10) wird.

von Helmut S. (helmuts)


Lesenswert?

> Ja und es geht auch ohne, mit einem uC der das aktiv aus seinem Flash
tut.

Leider brauchen die heutigen FPGAs so viel Konfigurations-Daten, dass 
dafür das Flash der embedded controller nicht reicht. Deshalb landet man 
meistens doch wieder bei zusätzlichen Flash-Speichern.

von ich (Gast)


Lesenswert?

Helmut S. schrieb:
> Leider brauchen die heutigen FPGAs so viel Konfigurations-Daten, dass
> dafür das Flash der embedded controller nicht reicht. Deshalb landet man
> meistens doch wieder bei zusätzlichen Flash-Speichern.

Das ist wahr. Jaja. Mir geht's darum, dass der Speicher auf meinem 
Altera-Board (EPCS4SI8), ein popeliges 4Mbit Speicher bei Digikey 
knapp15€ kostet, die 16Mbit Version sogar 17. Ein normaler, serieller 
Flash mit 4Mbit bekommt man dagegen ab 22cent, 16Mbit ab 46cent. Für die 
15€ bekomme ich ja schon den Cyclone4 und n dsPIC dazu...

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


Lesenswert?

ich schrieb:
> Da steht, der Spartan6 kann DDR3 Speicher mit 800MHz ansteuern, der
> Cyclone5 "nur" mit 400MHz und der Cyclone4 garnier DDR3. Auch wenn ich
> vielleicht kein DDR3 RAM nutze und auch nicht bis zu 800MHz nutze,
> scheint der Spartan6 mehr Power zu haben, und das bei geringerem
> Preis...
Du machst dir zu viel Sorgen um die Zukunft. Das sind alles Sachen, die 
dich erst in einem Jahr interessieren werden. Und mit der bis dahin 
gewonnenen Erfahrung kannst du die Fragen, die du jetzt hast, selber 
beantworten...

ich schrieb:
> Zuerst will ich mich in die Arbeitsweise der FPGAs einlesen (bin ich
> auch schon bei).
Die grundlegende Arbeitsweise ist simpel: es gibt Flipflops und LUTs. 
Das ist der Teil, in dem du dich mit "deiner" Logik und "deiner" 
Hardware austoben kannst.
Und dann haben die FPGAs "aussen rum" schon Hardware integriert, die man 
auch auf der Platine realisieren könnte, die man heute aber direkt auf 
dem Chip macht, weil man sie sowieso "immer" braucht: RAM, Taktmanager, 
Serializer und Deserializer...

Lattice User schrieb:
> Lattice ist vor allem mit kleineren FPGAs erfolgreich, ein Marktsegment
> das von Xilinx vernachlässigt, und von Altera gerade erst wieder endeckt
> (Max10) wird.
Wobei auch einer der "kleinen" Lattice FPGAs die Zielanforderungen 
(Logik-Analyzer und Oszilloskop) locker erfüllen kann...

ich schrieb:
> 3. Lohnt es sich, mit dem "zusammenklicken der Logikgatter" zu
> beschäftigen, oder doch gleich von Anfang an mit VHDL oder Verilog? Mir
> gefällt es grafisch ganz gut
Siehe den Beitrag "Re: kruder Fehler bei FPGA-Programmierung (ISE WEBpack-Schematic)"

ich schrieb:
> Würde mir jemand dazu so sehr raten, dass ich mir davon noch ein Board
> holen sollte?
Ich würde an deiner Stelle einfach mal mit irgendwas anfangen, statt zig 
Eval-Boards zu kaufen...

von Fitzebutze (Gast)


Lesenswert?

Tach,

das Thema mit den LA kommt immer wieder in den verschiedenen Threads 
auf, mein Fazit: Kaum eines dieser Projekte wird etwas, und wenn, dann 
ist es kaum brauchbar. Von einem echten Produkt als Tool für andere 
würde ich absehen. Zum Lernen aber: Einfach weitermachen! Was man dann 
schliesslich für HW einsetzt, ist fast schon egal.
Ansonsten etwas persönlicher Senf:

- Xilinx: Wenn man mit den Bugs (ISE, Spartan6 RAM-Probleme) und dem 
fehlenden Support für "kleine" Entwickler leben kann: Immer noch erste 
Wahl, schlicht wegen der Verfügbarkeit, und wenn man "high end" braucht.
- Lattice: Der Support ist vorhanden, wird allerdings offenbar über 
Indien abgewickelt. Für knifflige Fragen braucht man schon einen recht 
direkten Kanal. Relativ viel machen kann man mit den günstigen MACHXO2. 
Da hat Lattice eindeutig die Nase vorn. Auch die Toolchain ist ganz 
solide, abgesehen von den mico Build&Debug-Umgebungen.
- Altera: Das Quartus-Gezuppel ist mindestens so anstrengend zu bedienen 
wie ISE, ansonsten schenkt sich bei deren FPGAs nix. Spezielle 
Schmankerl wie bei Lattice fehlen, allerdings haben sie möglicherweise 
mit ihren MAX-Serien wieder einen Coup gelandet, man wird sehen...Noch 
sind die Dinger zu teuer.

Mehr Gedanken würde ich mir über die Simulator-Umgebung machen. Die ist 
schlussendlich entscheidend fürs Funktionieren des Designs. 
Timing-Analyse des synthetisierten Designs kann man auch gut noch ohne 
HW machen..

von M. (Gast)


Lesenswert?

ich schrieb:
> Repräsentativ ist ja egal.

Die Aussage bezog sich darauf, dass der Spartan 6 nicht repräsentativ 
ist für den Umstand, dass FPGAs von Xilinx bei gleichem Preis besser 
oder schneller sind.

Mit "repräsentativ" im Sinne von wertschätzungssteigernd hat das nichts 
zu tun.

von ich (Gast)


Lesenswert?

Lothar Miller schrieb:
> Du machst dir zu viel Sorgen um die Zukunft. Das sind alles Sachen, die
> dich erst in einem Jahr interessieren werden. Und mit der bis dahin
> gewonnenen Erfahrung kannst du die Fragen, die du jetzt hast, selber
> beantworten...

Richtig. Meine Sorge ist, dass ich in 1 oder 2 Jahren an dem Punkt bin, 
an dem ich etwas anspruchsvolleres machen will (z.B. eben ein Oszi) und 
mir denke "hätte ich mal mit Spartan dratt Cyclone angefangen", bzw. 
anders rum... Vermutlich ist es egal. Mir gefällt das Cycloneboard 
besser, bei Spartan habe ich aber die Möglichkeit DDR3 an einen FPGA in 
TQFP (Spartan6) dranzuhängen.. Naja, ich denke es wird das Cycloneboard.

Lothar Miller schrieb:
> Ich würde an deiner Stelle einfach mal mit irgendwas anfangen, statt zig
> Eval-Boards zu kaufen...

Zugegeben hab ich keins der beiden Boards hier gekauft sondern geschenkt 
bekommen. Ich würde mir auch nur ein Latticrbord holen, wenn hier jemand 
meint, dass es (mit Aussicht auf ein Oszi) VORREILE bringt. Und ich 
dachte eben, dass es die gibt, da ich die häufig mal gesehen habe.

Fitzebutze schrieb:
> Von einem echten Produkt als Tool für andere
> würde ich absehen. Zum Lernen aber: Einfach weitermachen!

Genau dazu ist es da. Ich habe hier einen LA (wenn auch nur in 
Verbindung mit PC) und ein (Analog)Speicheroszi. Ich find die Technik 
dahinter interessant und ich würde es gerne mal Probieren. Mit Display, 
Knöpfen, ... zuerst auch ggf mit nur 1MPSP, wofür ich nichtmal ein FPGA 
bräuchte. Einfach um zu lernen. Wenn das Gerüst steht, würde ich 
"einfach" nur die Samplegeschwindigkeit und den Speicher hochdrehen und 
dabei das dafür notwendige lernen, sprich hauptsächlich Designregeln 
etc.

Fitzebutze schrieb:
> Mehr Gedanken würde ich mir über die Simulator-Umgebung machen. Die ist
> schlussendlich entscheidend fürs Funktionieren des Designs.
> Timing-Analyse des synthetisierten Designs kann man auch gut noch ohne
> HW machen..

Ich dachte, das wäre bei der Umgebung (ISE bzw Quartus) dabei!? Wenn 
nicht, was ist denn zu empfehlen?

M. schrieb:
> Mit "repräsentativ" im Sinne von wertschätzungssteigernd hat das nichts
> zu tun.

Nene. Ich meine ja nur, das es, wenn ich nur Cyclone6 nutze, egal ist, 
ob die anderen Xilinx Familien überteuert sind oder nicht. Daher ist es 
egal, ob sie für Xilinx allgemein repräsentativ sind oder nicht.


Vielen Dank schonmal für die ganze Resonanz :)

Und Sorry für die Rechtschreibfehler. Die Autokorrektur ist zum k***en. 
Ist jetzt aber aus.

von Hans-Georg L. (h-g-l)


Lesenswert?

ich schrieb:
> Richtig. Meine Sorge ist, dass ich in 1 oder 2 Jahren an dem Punkt bin,
> an dem ich etwas anspruchsvolleres machen will (z.B. eben ein Oszi) und
> mir denke "hätte ich mal mit Spartan dratt Cyclone angefangen"

Mach dir erstmal lieber Gedanken in welcher "Sprache" du dein Design 
beschreiben willst. Mit den Schemaeditoren wird es schnell 
unübersichtlich und die Synthesewerkzeuge werfen dir viel mehr 
Fehlermeldungen um die Ohren. Du wirst dich wundern was die alles an 
einer einfachen Verbindung mäkeln können. Das wird schnell frustierend. 
Also nimm gleich eine Hardwabeschreibungssprache, die ist 
Herstellerunabhängig und du kannst das Wissen übertragen.

> Genau dazu ist es da. Ich habe hier einen LA (wenn auch nur in
> Verbindung mit PC) und ein (Analog)Speicheroszi. Ich find die Technik
> dahinter interessant und ich würde es gerne mal Probieren.

> Mit Display
Da musst du schauen welches Board dein Display unterstützt
> Knöpfen
Buttons haben fast alle Eval Boards, Drehencoder eher keines.
> 1MPSP
Da langweilt sich jedes FPGA zu Tode;)

> Wenn das Gerüst steht, würde ich:
> "einfach" nur die Samplegeschwindigkeit Hochdrehen

Das geht nur bis zu gewissen Geschwindigkeiten, irgendwann muss du auf 
LVDS umsteigen und dafür sind nicht alle Boards geeignet, auch wenn der 
FPGA darauf es kann.

> und den Speicher hochdrehen
Du hast FPGA internen Speicher, den kanst du "hochdrehen" bis zum 
stärksten FPGA das mit der kostenlosen Version noch funktioniert.

Du hast externes SRAM (langsamer, niedrige Speicherdichte)
Wenn du noch mehr willst dann: externes  DDRx Ram.

Bei DDR Ram sollte das FPGA Hardware dafür haben oder ein kostenloser 
IP-Core zu Ansteuerung dabei sein.

..

Wenn du das eine Jahr Vollzeit dafür Zeit hast könnte das schon was 
werden  un dein Board zu klein werden. No Risk no Fun.  Aber der Weg ist 
das Ziel und erworbenes Wissen kann dir keiner mehr nehmen.

von W.S. (Gast)


Lesenswert?

M. schrieb:
> - Cyclone 5 ist neu, Spartan 6 veraltet. Ich würde den S6 eher mit C4
> vergleichen. Spartan 6 ist ein aussergewöhnlich preiswerter Chip, nicht
> unbedingt repräsentativ,

Naja, die Preis-Gewohnheiten in diesen Gefilden sind schon einigermaßen 
anders, als man es als bastelnder Interessent gebrauchen kann:

Spartan 6: fängt bei 11€ an und landet dann ganz schnell jenseits von 
20€. Der größte Spartan 6, den man noch selber aufsetzen kann (xx9) 
liegt bei 16..17€

Artix: fängt bei 26€ an, Mittelfeld um 35..40€
Kintex: fängt bei 130€ an.
Cyclone 3: fängt bei 12€ an.
Cyclone 5: fängt bei 35€ an.

OK, wenn man Eval-Boards geschenkt bekommen hat, ist das alles was 
anderes. Aber wenn da nicht dedizierte Firmeninteressen dahinterstehen, 
dann sind solche Dinger 'mal eben so' für den durchschnittlichen Bastler 
einfach zu teuer. Abgesehen von der nicht mehr gegebenen Verarbeitung 
ohne Mehrlagenleiterplatte und kommerziellem Bestücker.

W.S.

von Fitzebutze (Gast)


Lesenswert?

>
> Fitzebutze schrieb:
>> Von einem echten Produkt als Tool für andere
>> würde ich absehen. Zum Lernen aber: Einfach weitermachen!
>
> Genau dazu ist es da. Ich habe hier einen LA (wenn auch nur in
> Verbindung mit PC) und ein (Analog)Speicheroszi. Ich find die Technik
> dahinter interessant und ich würde es gerne mal Probieren. Mit Display,
> Knöpfen, ... zuerst auch ggf mit nur 1MPSP, wofür ich nichtmal ein FPGA
> bräuchte. Einfach um zu lernen. Wenn das Gerüst steht, würde ich
> "einfach" nur die Samplegeschwindigkeit und den Speicher hochdrehen und
> dabei das dafür notwendige lernen, sprich hauptsächlich Designregeln
> etc.
>

Tip: Es gibt da die Rigol-Oszis, die von einigen Leuten auch gehackt 
werden. Ist ein Blackfin und ein FPGA drin, zumindest in den älteren 
Revisionen.

> Fitzebutze schrieb:
>> Mehr Gedanken würde ich mir über die Simulator-Umgebung machen. Die ist
>> schlussendlich entscheidend fürs Funktionieren des Designs.
>> Timing-Analyse des synthetisierten Designs kann man auch gut noch ohne
>> HW machen..
>
> Ich dachte, das wäre bei der Umgebung (ISE bzw Quartus) dabei!? Wenn
> nicht, was ist denn zu empfehlen?
>

Da ist schon immer was dabei, was sich über die Jahre immer mal geändert 
hat, Xilinx hat irgendwann Modelsim durch sein eher bedingt brauchbares 
Eigenfabrikat Isim ersetzt, was jetzt gerade bei Vivado wieder aktuell 
ist, habe ich mir gar nicht erst angesehen. Modelsim ist ansich nicht 
schlecht, aber in der freien Version ziemlich kastriert. Es gibt da auch 
andere, komplett freie Ansätze, die ich durchaus empfehlen könnte, aber 
es ist vielleicht zum Anfangen etwas knifflig. Guck hier sonst mal nach 
den Themen zu "myHDL" und "ghdl". Mit einer Erweiterung ghdlex geht auch 
Cosimulation mit Software, allerdings braucht man dafür Linux.
Würde aber zum Anfangen eher mal das nehmen, was mitgeliefert ist. Wenn 
die Designs komplexer werden, kannst du immer noch umsteigen.

von Duke Scarring (Gast)


Lesenswert?

M. schrieb:
> Xilinx in rund 90% der Firmen verwendet - Tendenz sinkend
> Altera in rund 60% der Firmen verwendet - Tendenz steigend
> Lattice in rund 15% der Firmen verwendet - Tendenz unbekannt
> Actel in weniger, als 10% der Firmen verwendet.

Sehr interessante Zahlen. Sind die irgendwie belegbar? Gelten die für D, 
Europa oder weltweit?

Duke

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


Lesenswert?

M. schrieb:
> Actel in weniger, als 10% der Firmen verwendet.
Kann es sein, dass du damit Microsemi meinst?

von Lattice User (Gast)


Lesenswert?

Lothar Miller schrieb:
> M. schrieb:
>> Actel in weniger, als 10% der Firmen verwendet.
> Kann es sein, dass du damit Microsemi meinst?

Er weiss nicht dass Actel nicht mehr existiert, d.h. man kann davon 
ausgehen dass seine Zahlen aus den Fingern gesaugt sind.
Ausserdem beziehen sich die Zahlen auf Stückzahlen oder Umsatz?

von Helmut S. (helmuts)


Lesenswert?

Duke Scarring schrieb:
> M. schrieb:
>> Xilinx in rund 90% der Firmen verwendet - Tendenz sinkend
>> Altera in rund 60% der Firmen verwendet - Tendenz steigend
>> Lattice in rund 15% der Firmen verwendet - Tendenz unbekannt
>> Actel in weniger, als 10% der Firmen verwendet.
>
> Sehr interessante Zahlen. Sind die irgendwie belegbar? Gelten die für D,
> Europa oder weltweit?
>
> Duke



Die Zahlen mögen zwar selbst geschätzt sein, aber so ähnlich schätze ich 
die Lage auch ein.

Hier mal ein Link.

http://sourcetech411.com/2013/04/top-fpga-companies-for-2013/

: Bearbeitet durch User
von P. K. (pek)


Lesenswert?

26.05.2015, finanztreff.de

                       2010     2011     2012     2013     2014
Altera Umsatz [M$] 1.954,40 2.064,50 1.783,00 1.732,60 1.932,10
Xilimx Umsatz [M$] 2.369,40 2.240,70 2.168,70 2.382,50 2.377,30


Die beiden sind nahe beisammen, Xilinx mit etwas mehr Umsatz, Altera mit 
einem positiven Momentum.

von M. (Gast)


Lesenswert?

Duke Scarring schrieb:
> Sehr interessante Zahlen. Sind die irgendwie belegbar? Gelten die für D,
> Europa oder weltweit?

Die derzeitige zahlenmässige Verteilung bei unseren Kunden, soweit mir 
bekannt. Die Kunden sind zu 80% in Deutschland, der Rest meistens A,CH.

Wohlgemerkt bezieht sich das darauf, dass überhaupt die Familie in der 
Firma eingesetzt wird, nicht, wieviel die Hersteller dadurch verkaufen. 
Man kann davon ausgehen, dass einer, der auch Lattice einsetzt, einen 
speziellen Grund hat und davon mehr einsetzt.

Die Verteilung der Umsätze zeigt, dass Altera obwohl sie in weniger 
Firmen vertreten sind, fast schon mehr verkaufen. Sie haben also noch 
Potenzial. Das grösste Potenzial haben die kleinen, aber nur wenige 
Firmen leisten sich den Luxus mit mehr, als 2 Herstellern zu arbeiten. 
Eher schon gehen die auf einen einzigen, was dann wieder andere Probleme 
macht.

Am Weitesten verbreitet sind die Familien bei den Zulieferen: Die bauen 
noch am ehesten mit allem, was der Martk hergibt. Der Aufträge wegen.

von Duke Scarring (Gast)


Lesenswert?

Vielen Dank!

von ich (Gast)


Lesenswert?

Alles klar. Ich werde dann mit dem Cycloneboard anfangen. Es kann mit 
USB programmiert werden (das Spartan3 Board nur mit Parallelport) und 
das Board hat mehr Peripherie. Bis ich die 400Mbps DDR2 ausgereizt habe, 
dauert es wohl noch etwas. Die BGA 80 oder 68 kann man doch mit 4 Lagen 
meistern oder?

Bleibt nur noch die Überlegung, ob Verilog oder VHDL ;) VHDL steht viel 
in Stellenbeschreibungen, was ggf. iwann interessant sein kann. Verilog 
hingegen sieht übersichtlicher aus und ähnelt eher C, was ich ganz gut 
beherrsche. Ist die Frage, ob das nützlich oder eher hinderlich ist....

Aber vielen Dank bisher für alle Antworten.

von ./. (Gast)


Lesenswert?

> ob das nützlich oder eher hinderlich ist...

2. [x]

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


Lesenswert?

ich schrieb:
> Verilog hingegen sieht übersichtlicher aus und ähnelt eher C, was ich
> ganz gut beherrsche.
Dann auf jeden Fall: VHDL.
Denn so sehr Verilog auch C "ähnelt", so unterschiedlich ist das 
Ergebnis. Ich sehe dich schon eine for-Schleife zum Auffüllen eines 
Vektors hinschreiben...

: Bearbeitet durch Moderator
von Fpgakuechle K. (Gast)


Lesenswert?

ich schrieb:

>Ist die Frage, ob das nützlich oder eher hinderlich ist....

So eine ODER Verknüpfung kann man als Fpga entwickler nur mit "Ja" 
beantworten (x | !x  -> true) ;-)

Im Ernst, die Frage ist falsch gestellt. Es ist wie beim normalen 
Schaltplanentwurf: wenn man sich im klaren ist, welche 
Widerstände/Transistoren/OPV/ etc man wie verbindet ist es egal ob man 
den schalplan per Hand mit DIN-schaltzeichen skiziiert oder einen 
schaltplaneditor mit japanischen symbolen benutzt.
Also man hat die digitalschaltung/funktion im Kopf oder als 
blockschaltbild/datapath/controlpath auf papier und schreibt sie dann so 
in VHDL oder Verilog das die synthese genau das macht was man auf dem 
Paier/im_Kopf hat.

Verilog ist f. FPGA-Einsteiger IMHO besser geeignet da es nicht die 
kruden Varianten der Verhaltensbeschreibungen wie VHDL zuläßt. Verilog 
ist da mehr eine "Verdrahtungssprache" während VHDL eine 
"Algorithmussprache" ist.

> Verilog
> hingegen sieht übersichtlicher aus und ähnelt eher C, was ich ganz gut
> beherrsche.

Wenn Du versuchst FPGA-Entwurf allein mit deinen Erfahrungen als 
C-PC-programmierer zu verstehen hast du eine Pistole an dein Knie 
gesetzt und drückst ununterbrochen ab ....

MfG,

von Fitzebutze (Gast)


Lesenswert?

Hi,

oben wurde ja schon MyHDL erwähnt, und es gab mal nen anderen Thread 
dazu, deswegen nur kurz: Wenn es keinen Zwang zur Quellsprache gibt und 
die Frage nach Verilog oder VHDL nur bedingt durch Tools oder Team ist, 
dürfte auch MyHDL was zum Anfangen sein. Aber: Auch ein C-Hacker sollte 
was von Assembler verstehen. Ich bin mit folgendem Ansatz sehr schnell 
zum Ziel gekommen: in MyHDL entwickeln/simulieren, nach VHDL ausgeben, 
nochmal verifizieren/synthetisieren.
Bisher sind auch bei komplexen Designs keine Unterschiede (d.h. Bugs in 
MyHDL) aufgetreten.
Aber man muss - wie in VHDL - genau wissen, was man da hinschreibt. Von 
den Datentypen ist MyHDL her relaxter und spart einem massiv Zeit beim 
Testbenching und komplexeren Simulationen. Code-Wiederverwertbarkeit ist 
auch optimal (da Python). Wo Dir schlussendlich MyHDL nicht unbedingt 
hilft, ist die architektonische Gestaltung, aber das muss man nicht am 
Anfang gleich richtig machen.

von Maathias (Gast)


Lesenswert?

Lothar Miller schrieb:
> Ich sehe dich schon eine for-Schleife zum Auffüllen eines
> Vektors hinschreiben...

Warum geht das nicht? Das kann man allgemein doch nicht sagen...

von Gerald G. (gerald_g)


Lesenswert?

Ich mag vom ansehen her VHDL lieber, das ist schon von der Sprache so 
dass man es versteht auch wenn man kein VHDL kann.
Ein pro für Verilog ist dass die meisten examples der eval-boards von 
altera und xilinx in Verilog geschrieben sind.

von ich (Gast)


Lesenswert?

Ich denke, ich werde bei den anfänglich eher kleinen Projekten beide 
Sprachen probieren. Eine LED blinken lassen, ...

Ich kann mir digitale Schaltungen aus Gattern eigentlich ganz gut 
vorstellen. Nur frag ich mich, wie ich damit einfach das hinbekomme, was 
ein 10Zeiler beim µC ist. Beispielsweise einen ADC-Wert via SPI oder 
Parallel empfangen, den Spannungswert berechnen und dann als Zahl über 
ein VGA-Signal ausgeben. Irgendwas, was eben wirklich sequenziell 
abgearbeitet wird. Aber das wird bestimmt noch kommen.

Eine Frage am Rande hätte ich da noch. Vorausgesetzt ich arbeite nur mit 
Cyclones, reicht da die kostenlose Quartus II Version aus? Ich weiß, 
dass man für Arria10 FPGAs die Vollversion braucht, doch ich werde mir 
bestimmt keinen FPGA holen, der ab 3-4k€ anfängt ;)

von David .. (volatile)


Lesenswert?

http://www.lothar-miller.de/s9y/ Da hast du viele praxixnahe Beispiele 
(zB die genannte SPI-Schnittstelle oder RS232 implementieren, Signale 
einlesen usw)

von uwe (Gast)


Lesenswert?

> Ich kann mir digitale Schaltungen aus Gattern eigentlich ganz gut
> vorstellen. Nur frag ich mich, wie ich damit einfach das hinbekomme, was
> ein 10Zeiler beim µC ist.
Hast du schon mal aus nem TTL Counter und ein paar Gattern einen State 
machine gebaut? Also eine Aufzugsteuerung oder so?
Sequenzielle Abläufe bekommt man hin indem man Flipflops benutzt bzw. 
counter und Schieberegister.

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


Lesenswert?

Maathias schrieb:
> Lothar Miller schrieb:
>> Ich sehe dich schon eine for-Schleife zum Auffüllen eines
>> Vektors hinschreiben...
> Warum geht das nicht?
Logisch geht das. Nur wird dieser Vektor eben nich nacheinander Bit 
für Bit aufgefüllt, sondern alle Bits gleichzeitig. Die for-Schleife 
macht in Verilog/VHDL also komplett was anderes als in C.

von berndl (Gast)


Lesenswert?

Lothar Miller schrieb:
> Logisch geht das. Nur wird dieser Vektor eben nich nacheinander Bit
> für Bit aufgefüllt, sondern alle Bits gleichzeitig. Die for-Schleife
> macht in Verilog/VHDL also komplett was anderes als in C.

und dann als besonderes Schmankerl noch Variablen anstatt Signale 
verwenden (weil man das vom programmieren mit den lokalen Variablen so 
gelernt hat) und das Chaos ist "vorprogrammiert"...

von FPGA-Pongo (Gast)


Lesenswert?

Du widersprichst Dir selbts.

ich schrieb:
> Ich kann mir digitale Schaltungen aus Gattern eigentlich ganz gut
> vorstellen.
1)

> Nur frag ich mich, wie ich damit einfach das hinbekomme,
2)

Offenbar kannst Du Dir das nicht vorstellen.


> Beispielsweise einen ADC-Wert via SPI oder
> Parallel empfangen, den Spannungswert berechnen und dann als Zahl über
> ein VGA-Signal ausgeben.

Du brauchst:

Eine Schaltung, die einen ADC ansteuert
Eine Schaltung, die berechnet
Eine Schaltung, die VGA erzeugen kann
Eine Schaltung, die den Wert in Pixel zerlegt und dem VGA übergibt

Eine Schaltung, die die drei steuert

Du musst also das was der uc kann, in Teilen nachbauen.

Ich komme in 3 Monaten wieder vorbei und lasse mir das Ergebnis zeigen.

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.