hallO! Ich möchte ein 6-Phasen PWM Modul bauen (ist zur Steurung einen Multiphasenresonanzwandlers Halbbrücke) Ich brauch also 12 Ausgänge. Jeweils zwei sollen gegenläufig zueinander sein (zum halbbrücke Steuern). Zwischen den Gegenläufigen Signalen soll die Deadtime (Zeit in der beide PWM Ausgänge Null sind) einstellbar sein. Das ganze 6 mal jedoch mit einer Phasenverschiebung von 60°. Und mit einstellbarer Frequenz (von 90kHz bis 300kHz). Mit einem 12-Bit Modul un minimal 90kHz hätte ich 1.32ns Auflösung was reicht. Hab dies bis jetzt immer mit einem dsPIC realisiert, doch hierfür ist er nicht flexibel genug, bzw fehlen PWM Channels. Auch wenn es mit tricks funktioniert ich möchts mit CPLD oder FPGA machen. Ich hab FPGAs schon programmiert, in VHDL, ein Waveplayer. Meine Grundfrage ist: Was eigent sich besser? Ein FPGA oder CPLD? Ein CPLD hat doch vorhersagbare Signallaufzeiten was beim FPGA nicht so ist. Oder ist das bei dieser Anwendung egal? Wäre es mit einem CPLD auch möglich einen digitalen Regelkreis mit zu implementieren, also ADC einlesen ein paar MACs und PWM-Modul setzten? MFG Sepp
Sepp schrieb: > Ein CPLD hat doch vorhersagbare Signallaufzeiten was beim FPGA nicht so > ist. Die Zeiten sind nicht vorhersagbar. Es wird dir nur eine "schlimmste" Zeit gesagt. Das kannst du bei einem FPGA auch haben. > Oder ist das bei dieser Anwendung egal? Eigentlich schon, denn du kannst einfach ein IO-Flipflop nehem, dann kommen die Pulse schön synchron zueinandern. > Meine Grundfrage ist: Was eigent sich besser? > Ein FPGA oder CPLD? Nimm ein kleines FPGA (MachXO, Spartan3AN). Denn du brauchst ja noch irgendeinen Bus, um da neue Werte reinzuschreiben... Der MachXO2 hat m.W. auch PWM-Kanäle on Chip. Evtl. reichen die ja schon aus... Sepp schrieb: > Mit einem 12-Bit Modul un minimal 90kHz hätte ich 1.32ns Auflösung was > reicht. Ähm, das wäre ein knappes dreiviertel Gigahertz... Hast du da irgendwo ein paar Zehnerpotenzen unterschlagen? So schnell brauchst du das Ding garantiert nicht!
Für ein CPLD spricht die "Einfachheit". Wenn du dein Design in CPLD bekommst (z. B. ATF1508) - nimm es!
>Ähm, das wäre ein knappes dreiviertel Gigahertz... >Hast du da irgendwo ein paar Zehnerpotenzen unterschlagen? >So schnell brauchst du das Ding garantiert nicht! Damit ist die minimale Zeit gemeint die mit dem PWM Modul "verstellt" werden kann. Die Frequenz des PWM Ausgangses ist wie gesagt max 300kHz. War ein Anlehnung an einen dsPIC33 gedacht welcher mit seinem 12-Bit Modul 1.04ns Auflösen kann. >Die Zeiten sind nicht vorhersagbar. Es wird dir nur eine "schlimmste" >Zeit gesagt. Das kannst du bei einem FPGA auch haben. >Nimm ein kleines FPGA (MachXO, Spartan3AN). Denn du brauchst ja noch >irgendeinen Bus, um da neue Werte reinzuschreiben... Dh mittels FPGA wirds da keine Probleme geben? Hatte nur Angst, das sich die Komplemetären Kanäle überschneiden (was die sofortige Zerstörung der leistungselektronik zufolge hätte) können. Es wird immer ein minimale Deadtime von 100ns zwischen den Transitionen herschen, eigentlich sollte das für FPGA ja Null Probelem sein oder? Denn ob 95ns oder 105ns ist egal. >Denn du brauchst ja noch irgendeinen Bus, um da neue Werte >reinzuschreiben... Richtig, da kommen wir zur nächsten Frage. Die Regelung erfolgt ursprünglich mittels DSP (dsPIC). Bei 2-Phasen benutzte ich dessen PWM-Modul. Nun könnte ich die PWM-Daten mit der Reglerupdaterate an den FPGA schicken. Doch so ein Spartan3AN wird mit der PWM generierung recht unterfordert sein. Meinst du es wäre möglich, die regelung in den FPGA zu inegrieren? Er müsste zusätzlich 3 ADC Werte einlesen. Einen schnellen PID Regler mit Feedforward rechnen und einen langsamen überlagerten I-Regler (Current Sharing). Also nicht allzu kompliziert, zumindest was der dsPIC nie überfordert. Danke für deine Hinweise, MFG Sepp
>War ein Anlehnung an einen dsPIC33 gedacht welcher mit seinem 12-Bit >Modul 1.04ns Auflösen kann. 12 Bit = 4096 Werte bei PWM wird normalerweise hoch und runter gezählt als 4096 x 2 = 8192 Jeder Zähltakt soll nun 1.04ns etsprechen, also 8192 x 1.04ns=8.519µs 1/8.519µs=117.3KHz OK dafür müßte nun der Takt des Zählers jedoch 1/1.04ns sein also 961.5MHz. Die Counter im dsPIC sollen 961MHz können ? Wirklich ? Also ich glaube da sind die meißten FPGAs und CPLDs überfordert.
Mit den SERDER Funktionalitaet, z.B. beim XC6S wirst Du auf 960 MHz kommen koennen.
Uwe schrieb: > Die Counter im dsPIC sollen 961MHz können ? > Wirklich ? Anscheinend ja... > Also ich glaube da sind die meißten FPGAs und CPLDs überfordert. Ja, das sind sie. Lustigerweise braucht das auch fast keiner... Sepp schrieb: > War ein Anlehnung an einen dsPIC33 gedacht welcher mit seinem 12-Bit > Modul 1.04ns Auflösen kann. Das schaft du mit einem "üblichen" CPLD nie und mit einem bezahlbaren FPGA auch nicht. Wenn du genau wißt, was du machst, dann schaffst du mit den billigen FPGA 200-300MHz. Und du mußt dir natürlich die Frage stellen lassen: warum reicht anderen das aus, dir aber nicht? > Doch so ein Spartan3AN wird mit der PWM generierung recht unterfordert > sein. Meinst du es wäre möglich, die regelung in den FPGA zu inegrieren? Es ist schon möglich, aber das wirst du dir nicht wirklich antun wollen. Denn das Debuggen macht da wesentlich weniger Spass... :-/ > Es wird immer ein minimale Deadtime von 100ns zwischen den Transitionen > herschen, eigentlich sollte das für FPGA ja Null Probelem sein oder? > Denn ob 95ns oder 105ns ist egal. 200MHz sind wie gesagt noch drin: da darf dann bei billigen FPGAs noch 1 Logikebene zwischen zwei FFs kommen... Uwe Bonnes schrieb: > Mit den SERDER Funktionalitaet, z.B. beim XC6S wirst Du auf 960 MHz > kommen koennen. Da kauft man dann aber einfacher einen 2. PIC...
Sepp schrieb: > Damit ist die minimale Zeit gemeint die mit dem PWM Modul "verstellt" > werden kann. Die Frequenz des PWM Ausgangses ist wie gesagt max 300kHz. > War ein Anlehnung an einen dsPIC33 gedacht welcher mit seinem 12-Bit > Modul 1.04ns Auflösen kann. der dsPIC33 schafft diese Auflösung mit Hilfe von dedizierten Hardwaredelays. Einem FPGA/CPLD fehlen diese Elemente. Mit anderen Worten: die Highspeed PWM Module des dsPIC33 lassen sich nicht einfach im FPGA nachbauen. (Ein Experte für eine FPGA Familie schafft es vielleicht mit phasenverschobenen Clocks). Mit herkömmlichen Counter basierende PWM Lösungen dürfte auf Virtex 7 eine Auflösung von 2 ns machbar sein. Mit preisgünstigen FPGAs sind 4 ns machbar aber auch das ist schon eine Herausforderung für einen Anfänger.(Clock = 250 MHz)
>Wenn du genau wißt, was du machst, dann schaffst du mit >den billigen FPGA 200-300MHz. Und du mußt dir natürlich die Frage >stellen lassen: warum reicht anderen das aus, dir aber nicht? Ich dachte wenn es ein einfacher dsPIC, also ein 16-Bit µC mit etwas DSP Befehlen schafft, kann es auch ein komplexerer und deutlich teurer FPGA. Ich muss mir noch im klaren werden wieviel Auflösung ich in dieser Anwendung wirklich brauche. Für einen Multiphasen Boost hab ich das PWM-Modula des dsPIC definitiv schon ausgereizt (waren 11Bit mit 468kHz). Jetzt ist es etwas anders (Resonanzwandler). >der dsPIC33 schafft diese Auflösung mit Hilfe von dedizierten >Hardwaredelays Wie macht er das? Konfigurieren kann man auch nur PLLs, die Prescaler, und PWM-Counter. Was meinst du? Habe den dsPIC schon oft verwedet aber wie er die PWM Hardwaremäsig erzeugt, darüber hab ich nie nachgedacht... >bei PWM wird normalerweise hoch und runter gezählt als 1.04ns wird im center-aliged Mode nicht erreicht, nur im normalen "Dreieck" Mode. >Wenn du genau wißt, was du machst, dann schaffst du mit >den billigen FPGA 200-300MHz Haben FPGAs keine PLL um einen hohen Synchronen Takt für nur einem bestimmten Bereich zu generieren? So wie es viele µC für die PWM-Unit tun? >Einem FPGA/CPLD fehlen diese Elemente. >Mit anderen Worten: die Highspeed PWM Module des dsPIC33 lassen sich >nicht einfach im FPGA nachbauen. Schade, dass heist ich muss die PWM-Anforderungen möglichst abspecken damit sie FPGA tauglich werden. Danke für die Inputs! MFG Sepp
Sepp schrieb: >>der dsPIC33 schafft diese Auflösung mit Hilfe von dedizierten >>Hardwaredelays > Wie macht er das? Konfigurieren kann man auch nur PLLs, die Prescaler, > und PWM-Counter. Was meinst du? > Habe den dsPIC schon oft verwedet aber wie er die PWM Hardwaremäsig > erzeugt, darüber hab ich nie nachgedacht... Dein Posting hat mich dazu veranlasst in das Datenblatt des dsPIC zu schauen da ich die 1 GHz wie anderere auch etwas viel fand. Genau erklärt ist das nicht. Aber was man entnemhen kann ist, dass die PWM mit 120 MHz getaktet wird, und es gibt eine Timingangabe Tap delay mit 1.04 nsec. Das hört sich für mich nach einem Delayelement mit Abgriffen alle 1.04 nsec zur Verlängerung des Ausgabepulses an. > >>bei PWM wird normalerweise hoch und runter gezählt als > 1.04ns wird im center-aliged Mode nicht erreicht, nur im normalen > "Dreieck" Mode. Im center-aligned Mode schafft der dsPIC auch nur 8 nsec Auflösung (wermutlich direkt bedingt durch die 120 MHz). Und das ist machbar im FPGA. > >>Wenn du genau wißt, was du machst, dann schaffst du mit >>den billigen FPGA 200-300MHz > Haben FPGAs keine PLL um einen hohen Synchronen Takt für nur einem > bestimmten Bereich zu generieren? So wie es viele µC für die PWM-Unit > tun? Doch schon, aber du musst ja auch die programierbare Logik damit takten können. Und genau da liegen die Grenzen. Dedizierte HW Blöcke im FGPGA (z.B. Serdes) können auch viel mehr.
>Aber was man entnemhen kann ist, dass die PWM mit >120 MHz getaktet wird, und es gibt eine Timingangabe Tap delay mit 1.04 >nsec. Das hört sich für mich nach einem Delayelement mit Abgriffen alle >1.04 nsec zur Verlängerung des Ausgabepulses an. Hab sie gut hinbekommen, wenn man bedenkt das dies ziemlich gut auch bei der extrem kritschen deadtime einstellung funktioniert. DOch wie das mit 120Mhz Takt abläuft versteh ich gar nicht, Tatsache ist es funktioniert sehr zuverlässig. >Im center-aligned Mode schafft der dsPIC auch nur 8 nsec Auflösung >(wermutlich direkt bedingt durch die 120 MHz). Ja. Hat noch nie gestört die hohe PWM-Frequenz wird meist bei Converter-Topologien (Multiphasen-Buck als Beispiel) benötig wo center-aligned nicht notwenig ist (im Gegensatz zu Invetern aller art) >Doch schon, aber du musst ja auch die programierbare Logik damit takten >können. Und genau da liegen die Grenzen. Das klingt verständlich >Dedizierte HW Blöcke im FGPGA (z.B. Serdes) können auch viel mehr. Ich nehme an das haben nur die "Großen" teuren? >auch nur 8 nsec Auflösung >(wermutlich direkt bedingt durch die 120 MHz). >Und das ist machbar im FPGA. Alles klar, allso 8ns sind definitiv zb in einem Spartan 3AN machbar? Oder anderer Vorschlag? MFG Sepp
>> Ein CPLD hat doch vorhersagbare Signallaufzeiten was beim FPGA nicht so >> ist. >Die Zeiten sind nicht vorhersagbar. Es wird dir nur eine "schlimmste" >Zeit gesagt. Das kannst du bei einem FPGA auch haben. Ein CPLD hat den Vorteil, dass rel complexe Funktionen, auch nat. Komparatoren, (weil sehr breite Eingänge der MAC-Zelle) mit nur einer Logic-Ebene erzeugt werden können. Da ist die Laufzeit natürlich errechenbar (bzw vorhersagbar). Und dann ist es evtl schneller möglich als mit FPGA. (bsp Lattice hat CPLDs mit max 400MHz!)
>Und dann ist es evtl schneller möglich >als mit FPGA. (bsp Lattice hat CPLDs mit max 400MHz!) Nehme an du meinst die ispmach4000 Serie? Interessant das es da keine Einigkeit gibt womit man ein PWM Modul baut. Mein Problem ist auch das ich nicht Abschätzen kann wieviele LUTs, Makrozellen oder was auch immer ds brauchen wird. Wenn 250MHz das maximum für FPGAs sind, wie macht man dan zb eine DDR2 oder 3 Interface? Kommen da SERDES ins Spiel? Manche werben ja damit achte PLLs für 1Ghz zu haben, was macht man damit? Oder sind höhere Frequenzen möglich, wären aber für mein PWM-Modul Maßloser Overkill? In hab schon digitale Converter gesehen da war ein MachXO2 dabei. Was ist das? wird auf der Lattice Website unter FPGA und CPLD geführt??? Nebenbei, kennt jemand empfehlenswerte Literatur zum Thema FPGA und CPLD? WIe schon erwähnt, ich arbeite mit DSPs und µCs, VHDL hatte ich auf der UNI mal gelernt, aber ich jetzt komm ich immer in Versuchung einen Process zu generieren und µC mässig weiterzumachen... Ich weis viele Fragen,,, MFG Sepp
> Interessant das es da keine Einigkeit gibt womit man ein PWM Modul baut. > Mein Problem ist auch das ich nicht Abschätzen kann wieviele LUTs, > Makrozellen oder was auch immer ds brauchen wird. Hier mal eine grobe Schätzung (für FPGA): - Register für PWM: 6 PWM x 12 LE = 72 LE - 1x Zähler mit 12 Bit: = 12 LE - Zählerstand mit Register vergleichen (für LUT mit 4 Eingängen): (6 LUT + 2 LUT)x6= 48 LE Zählerstand mit Register vergleichen braucht 3 Ebenen mit Kombinatorik. Das wird eventuell zu langsam. Ansonsten vielleicht für jede PWM ein Zähler der aus dem Register geladen wird? Dann musst du die Register noch irgendwie beschreiben. Am einfachsten dürfte das noch parallel funktionieren. Ansonsten müsstest du noch Schieberegister für SPI o.ä. hinzurechnen. > Wenn 250MHz das maximum für FPGAs sind, wie macht man dan zb eine DDR2 > oder 3 Interface? Kommen da SERDES ins Spiel? Es gibt seit einiger Zeit in FPGA extra I/O Blöcke für DDR. Du gibst 2 Bits und 2 Clocks hinein und das FPGA macht den Rest. > Nebenbei, kennt jemand empfehlenswerte Literatur zum Thema FPGA und > CPLD? WIe schon erwähnt, ich arbeite mit DSPs und µCs, VHDL hatte ich > auf der UNI mal gelernt, aber ich jetzt komm ich immer in Versuchung > einen Process zu generieren und µC mässig weiterzumachen... Bücher für FPGA: Reichard/Schwarz VHDL-Synthese Kessel/Bartholomä Entwurf von digitalen Schaltungen und Systemen mit HDLs und FPGAs
Sepp schrieb: > Interessant das es da keine Einigkeit gibt womit man ein PWM Modul baut. > Mein Problem ist auch das ich nicht Abschätzen kann wieviele LUTs, > Makrozellen oder was auch immer ds brauchen wird. > > Manche werben ja damit achte PLLs für 1Ghz zu haben, was macht man > damit? Runterteilen :-) Der Witz ist, dass ein onchip VCO mit 1 GHz leichter zu realisieren ist als einer mit 100 MHz. > In hab schon digitale Converter gesehen da war ein MachXO2 dabei. Was > ist das? wird auf der Lattice Website unter FPGA und CPLD geführt??? MachXO2 ist ein FPGA. Lattice peilt mit diesem Prdoukt aber den CPLD Markt an, also wird es auch unter CPLD aufgefuhrt. Es hat auch einige wichtige CPLD Features: Interner Config Speicher Schneller Startup Single Supply Versionen Niedriger Stromverbrauch Kleine Gehäuse ( das kleinste MachXO2 Gehäuse ist 2.5 x 2.5 mm ) Mehr als 250 Mhz geht schon z.B. mit Pipelining.
Nachtrag zum vorigen Posting. Lattice User schrieb: > Mehr als 250 Mhz geht schon z.B. mit Pipelining. Bezieht sich auf die Frage warum bei 250 MHz bei günstigen FPGs Schluss ist, und nicht auf den MachXO2. Der kann das nicht.
Ich frage mich immer noch, warum man eine derartig schnelle PWM
braucht um
> ein 6-Phasen PWM Modul zur Steurung eines Multiphasenresonanzwandlers
zu realisieren...
Und ich meine wirklich brauchen, nicht wollen.
>Ich frage mich immer noch, warum man eine derartig schnelle PWM >braucht um Ist doch nicht schnell. Gibt Resonanzwandler die bis in den Mhzbereich arbeiten. Die Wandler die angesteuerten werden sollen arbeiten Hauptsächlich in einem Frequenzbereich von 115kHz-160kHz, Im Leerlauf bis zu 300kHz im Burst Mode. Im Boost-Mode, da geht die Frequenz bis 80kHz runter. Die Frequenz muss in 150Hz Schritten einstellbar umd auf 50mV genau zu Regeln. Damit wäre ich bei 10ns PWM-Auflösung. Somit müsste ein FPGA/CPLD mit 100Mhz getaktet werden, was ja kein Problem sein sollt. Glück das es 10ns SInd und nicht weniger. (die 1.04ns habe ich nur genannt, weil ich urprünglich dachte, das PWM-Modul eines dsPIC33 nachbauen zu können, aber dies ist wohl unmöglich) Um die Anforderungen zusammenzufassen: Oben genannter Frequenzbereich mit 10ns Auflösung. 11-Bit PWM 6-Phase mit jeweils 2-Komplementären Ausgängen (also 12) EInstellbare Deadtime EInstellebare Phasenlage Freqenz muss mit dem Reglertakt aktualisiert werden, soll also parallel zu laden sein. Sind jetzt genauere Angaben, vl kann mir jetzt jemand einen Konkreten Tipp zu einem FPGA (oder nur CPLD) geben. >Der Witz ist, dass ein onchip VCO mit 1 GHz leichter zu realisieren ist >als einer mit 100 MHz. Weil die Kapazitäten dann kleiner sind?
Wenn 100 MHz reichen, würde ich einen MachXO2 ins Auge fassen. Die update Logik braucht u.U. mehr Platz als die ganze PWM, dabei kann es bei einem CPLD halt doch schnell eng werden. Ausserdem kann man bei einem FPGA auch mal eben einen kleinen 8bit Processor mit integrieren. Bei Lattice gibt es den Pico, kann man aber nur in Assembler zu programmieren. Lattice bietet momentan ein Devboard für ganze 29$ an: http://www.latticesemi.com/products/developmenthardware/developmentkits/machxo2picokit.cfm Da ist zwar eine ZE Version des MachXO2 bestückt, die eventuell zu langsam ist aber zum Kennenlernen reichts allemal. Ansonsten warum nicht einfach mal die freie Version der Entwicklungssoftware des bevorzugten Herstellers herunterladen und das ganze im Simulator durchspielen? Dann kannst du auch viel leichter abschätzen wie gross der FPGA sein muss und ob es überhaupt kostengünstig ist. Den dspPIC33 im Preis zu schlagen dürfte allerding ziemlich unmöglich sein.
Sepp schrieb: > Die Frequenz muss in 150Hz Schritten einstellbar umd auf > 50mV genau zu Regeln. Eine Frequenz in Volt? > Damit wäre ich bei 10ns PWM-Auflösung. Somit müsste ein FPGA/CPLD mit > 100Mhz getaktet werden, was ja kein Problem sein sollt. Kommt darauf an, was es dich kosten darf... ;-) Wenn du die Anzahl der Logikebenen im FPGA auf 2-3 beschränkst, sollte das aber problemlos gehen. > Ist doch nicht schnell. Gibt Resonanzwandler die bis in den Mhzbereich > arbeiten. Und die werden bisher eher analog angesteuert? Lattice User schrieb: > Wenn 100 MHz reichen, würde ich einen MachXO2 ins Auge fassen. Wenns schneller sein soll: der Vorgänger MachXO kann da deutlich mehr... :-/
>Eine Frequenz in Volt? Ist ja Resonanzwandler. Bei diesen wird üblicherweise mit der Frequenz die Spannung verstellt, im Gegensatz zu konventionellen PWM-Konvertern. In meinen Fall ist die Übertragungsfunktion des resonanten Netzwerks im Regelbereich recht steil, deshalb maximal 150Hz Schritte. >> Ist doch nicht schnell. Gibt Resonanzwandler die bis in den Mhzbereich >> arbeiten. >Und die werden bisher eher analog angesteuert? Ja der Großteil analog, aber digital ist auch im kommen. Unter anderem mit dsPIC33 und nur 8-9 Bit PWM. >Ansonsten warum nicht einfach mal die freie Version der >Entwicklungssoftware des bevorzugten Herstellers herunterladen und das >ganze im Simulator durchspielen? Dann kannst du auch viel leichter >abschätzen wie gross der FPGA sein muss und ob es überhaupt >kostengünstig ist. Gute Idee, werde ich demnächst machen. Allerdings habe ich noch keinen bevorzugten Hersteller im PLD Bereich. Auf der Uni war es Xilinx/Modelsim. Gibt es da Tipps für einen fast neueinsteiger? Also Ob Xilinx,Altera,Lattice? Oder nur Glaubensfrage... Braucht Lattice Diamond auch einen extra Simulator wie die Modelsim? >Den dspPIC33 im Preis zu schlagen dürfte allerding >ziemlich unmöglich sein. Damit rechne ich auch nicht. Die Regelung muss weiterhin ein DSP erledigen, also zwei Bausteine (DSP+FPGA). Altera bietet ja einigs in Bezug auf DSP. Mit dem DSP Builder kann man Regler welche man in Simulink (was ich in jedem Projekt verwende) Modeliert hat in einen HDL Code wandeln. Bedeuted dies, dass man dann keinen (kostenfplichtigen) Softcore, wie zb NIOB II, braucht? - Ich muss ADC Daten lesen - einen PID-Regler berechen (also eine paar MACs) - Das PWM-Register (Frequenz) Updaten Das wäre in einem Cyclone I,II unterzubringen? Also ohne das ein kompleter Soft-DSP laufen muss. MFG Sepp
Lothar Miller schrieb: > Lattice User schrieb: >> Wenn 100 MHz reichen, würde ich einen MachXO2 ins Auge fassen. > Wenns schneller sein soll: der Vorgänger MachXO kann da deutlich mehr... > :-/ Etwa 10%, ist aber aus dem Datenblatt schwer zu vergleichen. Beim MachXO2 muss man zwischen der ZE und den HC/HE Versionen unterscheiden. Die ZE eignen sich Batteriebetriebene Geräte. Ich muss aber zugeben, dass ich weder mit MachXO oder MachXO2 Erfahrungen habe, meine Spielwiese ist die ECP3 Familie.
Sepp schrieb: > Gibt es da Tipps für einen fast neueinsteiger? Also Ob > Xilinx,Altera,Lattice? Oder nur Glaubensfrage... Am ehesten findest du jemand, der mit Xilinx rummacht. Dafür gibt es dann auch eher Literatur. Dann kommt naturgemäß Altera, und danach Lattice... > Braucht Lattice Diamond auch einen extra Simulator wie die Modelsim? Da gibts den von Aldec dazu.
Sepp schrieb: > Braucht Lattice Diamond auch einen extra Simulator wie die Modelsim? Lattice Diamond kommt mit dem Aldec Simulator, auch in der kostenlosen Version. Aldec ist aber leider Windows only. Externe Modelsim wird auch unterstützt. Grössere FPGAs haben fast immer DSP Funktionen (Multiplier,MAC...), das ist keine Domäne von Altera.
: >Dedizierte HW Blöcke im FGPGA : (z.B. Serdes) können auch viel mehr. : Ich nehme an das haben nur die "Großen" teuren? Serdes gibt es auch bei den kleinsten XC6S, die es fuer unter 10 Euro z.B. bei Digikey gibt.
Ich habe gerade gesehen, dass Lattice Diamond auch in der kostenlosen Version mit Unterstützung für Matlab/Simulink kommt. Das wird aber mit einem MachXO bzw MachXO2 nicht mehr gehen.
>Grössere FPGAs haben fast immer DSP Funktionen (Multiplier,MAC...), das >ist keine Domäne von Altera. Naja ich brauch ja keinen großen. Auch wenn möglich keinen Softcore. >Serdes gibt es auch bei den kleinsten XC6S, die es fuer unter 10 Euro >z.B. bei Digikey gibt. Auch gut zu wissen. Aber Serdes sind wieder etwas spezielles und ich bin froh ich konventionell zurecht komme. Wie ist jetzt mit dem Altera DSP builder? Kennt das jemand? Baut dieses Tool dann einen kostenpflichtigen Softcore oder einfach nur Multiplizierer/Addierer usw. MFG
Sepp schrieb: > Auch gut zu wissen. Aber Serdes sind wieder etwas spezielles und ich bin > froh ich konventionell zurecht komme. Man sollte die Serdesfunktion der Xilinx normalen IOs nicht mit den GT Serdes für PCIex, SATA etc verwechseln. An den normalen Pins nennt man das auch Gearbox und ist heutzutage ein ziemlich normales Feature, das übrigens auch der MachXO2 an einigen Pins hat. Mit ein wenig Übung ist das IMO für eine PWM gar nicht allzuschwer auszunutzen.
>Ich habe gerade gesehen, dass Lattice Diamond auch in der kostenlosen >Version mit Unterstützung für Matlab/Simulink kommt. >Das wird aber mit einem MachXO bzw MachXO2 nicht mehr gehen. Womit wäre es möglich? LatticeXP2? hab hier: http://www.latticesemi.com/products/fpga/xp2/sysdspblock.cfm gerade gelesen, dass dieser Multiplizierer und ganze MAC-Blöcke hat, welche nicht erst synthetisiert werden, sondern als feste Hardware vorhanden sind (im sysDSP-Block)? >Mit ein wenig Übung ist das IMO für eine PWM gar nicht allzuschwer >auszunutzen. Was wäre der Vorteil einer PWM mit SERDES oder Gearbox? wären 1.04ns wie im dsPC33 zu erreichen? MFG Sepp
Sepp schrieb: > Womit wäre es möglich? LatticeXP2? Ja > hab hier: http://www.latticesemi.com/products/fpga/xp2/sysdspblock.cfm > gerade gelesen, dass dieser Multiplizierer und ganze MAC-Blöcke hat, > welche nicht erst synthetisiert werden, sondern als feste Hardware > vorhanden sind (im sysDSP-Block)? Ja > >>Mit ein wenig Übung ist das IMO für eine PWM gar nicht allzuschwer >>auszunutzen. > Was wäre der Vorteil einer PWM mit SERDES oder Gearbox? wären 1.04ns wie > im dsPC33 zu erreichen? Man könnte damit die Auflösung bei gegebenen Systemtakt nochmal runtersetzen, mit einer 2:1 Gearbox bei 100 MHz von 10 auf 5 nsec. Allerdings ist die Erzeugung etwas komplizierter. Übrigens macht der dsPIC etwas sehr ähnliches.
Können die Hardware MACs mit der frei verfügbaren Lattice Toolchain simuliert werden?
Sepp schrieb: > Können die Hardware MACs mit der frei verfügbaren Lattice Toolchain > simuliert werde Würde mich extrem wundern wenn das nicht ginge. Es gibt nur eine Diamondversion. Der Unterschied liegt im Lizenzkey, d.h. welche Devices freigeschaltet sind. Bei der kostenlosen Version fehlen die Devices mit Highspeed Serdes für PCIexpress und dergleichen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.