Servus,
die großen Chiphersteller wie Xilinx oder Altera haben ja alle ihre
eigenen Entwicklungsumgebungen nit ihren eigenen integrierten
Synthesetools. Diese werden teilweise auch kostenlos angeboten.
Nun gibt es aber auch andere Hersteller welche separate Synthesetools
anbieten wie Mentor oder Synopsys welche ordentlich Geld kosten.
Welche Motivation treibt einen dazu die Tools der Fremdanbieter zu
nutzen?
Grüße Oliver
Oliver schrieb:> Welche Motivation treibt einen dazu die Tools der Fremdanbieter zu> nutzen?
Es sind die nicht erfüllten Optimierungsversprechen der Dritthersteller
ihr Synthesetool könne den hingerotzten und von FPGA-Entwickler selbst
nicht völlig verstandenen Code zu einem besseren Ewrgebnis überstzen als
bspw XST.
Nach meinen Erfahrungen ist das nicht so, Ein bisserl nachdenken und
analyse und man findet selber den Knoten im design die man mit üblichen
Bordmittel löst.
MfG,
Fuer manche (alte) FPGAs gibt es kein Synthesetool vom Hersteller
selbst.
Prominentes Beispiel: Xilinx Spartan XL
Da braucht man dann Leonardo oder Synplify.
Nur das Place&Route laesst sich mit Xilinxtools ausfuehren (ISE 8.4).
Oliver schrieb:> die großen Chiphersteller wie Xilinx oder Altera
Manche kleinere, wie z.B. Actel/Microsemi haben keine eigenen
Synthesetools und liefern ihre Entwicklungsumgebung mit Synplify aus.
Bei Simulationstools ist es ja ähnlich, vor einigen Jahren gab es noch
kein Xilinx isim sondern Modelsim XE.
Oliver schrieb:> die großen Chiphersteller wie Xilinx oder Altera
Wenn du selbst der Chiphersteller bist, sprich ein ASIC designst, kommst
du um eine Synthese eines Fremdanbieters kaum herum.
Ist also nicht so, dass es da keinen Markt gibt.
Oliver schrieb:> Welche Motivation treibt einen dazu die Tools der Fremdanbieter zu> nutzen?
Ein Vergleich der Ergebnisse in Sachen Area und Speed dessen, was
Synopsis gegenüber Xilinx XST bringt, steigert die Motivation eines
käuflichen Erwerbs der Synopsis Lizenz meist schlagartig.
Man kann guten Gewissens behaupten, dass die Xilinx Synthese in etwa das
Niveau des Xilinx Schemati Entry besitzt und wahrscheinlich ist es
ähnlich "gut" gepflegt.
Es gibt dank Forschung heute eine Reihe intelligenter Algorithmen, die
Datenzustände prognositizieren und analysieren können, die über das
Können der Firma Xilinx weit hinaus gehen. Zudem gibt es strategisch
gute Optimierunsverfahren und nichtlineare optimierungsmethoden, die in
einer XST definitiv nicht implementiert sind. Da ist viel Raum für das
Beschreiten alternativer Wege und Beurteilen von Teilwegebnissen. Das
haben manche eben besser im Griff.
Xilinx kriegt ja nicht mal seine Kinderkrankheiten aus den Tools, z.B:
das irgendwelche Ausgaben vom Coregen nicht verstanden werden bzw was
der Constraintseditor einträgt von ihm selber nicht interpretiert wird.
>Man kann guten Gewissens behaupten, dass die Xilinx Synthese in etwa das>Niveau des Xilinx Schemati Entry besitzt und wahrscheinlich ist es>ähnlich "gut" gepflegt.>Es gibt dank Forschung heute eine Reihe intelligenter Algorithmen, die>Datenzustände prognositizieren und analysieren können, die über das>Können der Firma Xilinx weit hinaus gehen. Zudem gibt es strategisch>gute Optimierunsverfahren und nichtlineare optimierungsmethoden, die in>einer XST definitiv nicht implementiert sind. Da ist viel Raum für das>Beschreiten alternativer Wege und Beurteilen von Teilwegebnissen. Das>haben manche eben besser im Griff.
Benchmarks? Wie kommst du zu diesen Aussagen?
Willy2 schrieb:> Benchmarks? Wie kommst du zu diesen Aussagen?
Würde mich auch sehr interessieren...
Ich sehe es eher so, dass aus der Historie heraus die Toolchain auf eine
der Alternativanbietertools ausgerichtet ist. Oder dass man sich einen
besseren Durchgriff auf den Softwareentwickler der Synthesestrategie
verspricht. Oder dass man generell eine "zweite Meinung" zum
Syntheseergebnis sehen möchte. In so einem Fall sind dann auch die
10-50k€ für einen "kommerziellen" Synthesizer nicht viel.
Die Aussagen stimmen schon. Ich habe die Vorträge zu den Synthesetools
auf der FPL zwar nur zum Teil gehört, aber da gibt es wirklich starke
Algortihmen.
Das Problem ist nur: Für einen 'Normalsterbichen' sind diese Werkzeuge
entweder nicht nutzbar (da immer nur ein Teilaspekt gelöst wird) oder
gar nicht erst verfügbar.
Außerdem ist es ja von den Herstellern auch gar nicht gewollt, das
andere Einblick in die Interna bekommen. Die Datenformate sind - wenn
überhaupt - nur unzureichend dokumentiert (bit, ncd, ngc).
Synthese Manni schrieb:> Da ist viel Raum für das> Beschreiten alternativer Wege und Beurteilen von Teilwegebnissen.
Nur das sich eben noch niemand gefunden hat, diese Räume zu beschreiten
und die Ergebnisse anderen zur Verfügung zu stellen.
Klar ist die Xilinx-Software schrottig:
- Probleme mit Leerzeichen im Pfad
- Probleme mit anderen Regionaleinstellungen (außer englisch)
- sinnlose Warnungen
- halbherzige Unterstützung von VHDL-2008
- unsupported Appnotes
- gigabyteweise Designdaten für Chips, die man gar nicht verwenden will
etc.pp.
Aber mit genügend - ähm - Enthusiasmus, kommen Ergebnisse raus, die
verwendbar sind.
Möglicherweise ist das bei Altera alles viel besser. Ich beschäftige
mich seit ca. einem Jahr auch mit Lattice und sehe, das dort auch nicht
alles Gold ist, was glänzt.
Duke
Lothar Miller schrieb:> Willy2 schrieb:>> Benchmarks? Wie kommst du zu diesen Aussagen?> Würde mich auch sehr interessieren...>
Wir hatten vor zwei Jahren mal einen Diplomanden, der sich mit der
Leistungsfähigkeit der Synthesetools verschiedener Hersteller
auseinander gesetzt hat (Xilinx, Mentor und Synopsys).
War leider nicht mein Arbeitsbereich, deshalb war ich nur auf der
Abschlußpräsentation. Sein Ergebnis ist so grob zusammengefasst, dass
die Hersteller Tools und die 3rd Party Software bei seinen Benchmarks in
50% ein ähnliches Ergebnis liefern, in 20% die Xilinx Software vorne lag
und in den restlichen Fällen die 3rd Party. Besonders bei großen Designs
kann die Fremdsynthesetools wohl ihre Stärken ausspielen und erzeugt
wohl wesentlich bessere Ergebnisse.
Gruß
Das ist doch schon mal eine belastbarere Zahl. Allerdings ist es
eigentlich schlecht (wenn auch allgemein üblich), einen /unerfahrenen
Neuling/ solche Bewertungen und Evaluierungen machen zu lassen. Man darf
das bei der Betrachtung der Ergebnisse auf keinen Fall ausser Acht
lassen...
Dem wurde ja schon ein bissl auf die Finger geschaut, sonst hätten wir
mit den Ergebnissen ja auch nix anfangen können :)
Devices die getestet wurden sind der Spartan6 und der Virtex7US. Auf
anderen mag das vielleicht auch schon wieder anders aussehen (kann ich
mir aber nicht so ganz vorstellen).
Maik H. schrieb:> Besonders bei großen Designs> kann die Fremdsynthesetools wohl ihre Stärken ausspielen und erzeugt> wohl wesentlich bessere Ergebnisse.
Besonders belastbar ist das nicht, eher besonders fragwürdig.
Denn wo "wesentlich" optimiert werden soll muss erst mal entsprechend
"wesentliches" Einsparpotential vorhanden sein.
Aber selbst die besten Algorithmen brauchen für einen 32 bit Zähler
immer noch 32x 1bit Speicherelemente und nicht 24.
So ist es mit jedem Design - die Anzahl der 1 bit Speicherzellen ist
durch die synthese nicht veränderbar. Man kann unter glücklichen
Umständen statt slice-FF IO-FF oder SRL32/RAM32 nehmen das macht der XST
auch und die Platzersparniss liegt lediglich im einstelligen
Prozentbereich. Und das reicht selten für die nächst kleiner Größe (wenn
es denn für diesen footprint einen kompatiblenen kleineren gibt).
MfG,
PS: wir hatten mal vor Jahren ein Spartan3-400 design das mit Mentor
synthetisiert worde mal von synopsys mit synplify durchlaufen lassen.
Die
Anzahl der slices warnahezu gleich der wesentliche unterschied lag
einzig im Anteil unrelated logic. Was aber nix an der Designgröße
andert. Auch der vergegebene Mindesttakt wurde von beiden Herstellern
eingehalten. Was ja auch nicht besonders verwunderlich ist, da ja die
Anzahl der FF durch das Design fix vorgegeben ist. Die Möglichkeit der
"Einsparung" durch andere FSM-Codierung (binary statt One-hot)
beherrscht jedes tool, das ist kein Unterscheidungsmerkmal.
MfG,