Hallo, wir möchten gerne 160 MOSFETs mittels FPGA und Lichtleitern synchron ansteuern. Kennt Ihr ein evalboard, das so 160-200 I/Os bereitstellt? THX Cheers Detlef
Passende FPGA-Module gibt es bei Trenz Electronic, z.B.: https://shop.trenz-electronic.de/de/Produkte/Trenz-Electronic/TE08XX-Zynq-UltraScale/ Beispiel TE0803: - 48 High-density (HD) I/O's (2 banks) - 65 x Mehrzweck-E/A (MIO) - 156 x Hochleistungs-E/A - Serielle Transceiver: PS-GTR 4 - Programmierbarer 4-Kanal-PLL-Taktgeber Oder TE0807: - 65 x PS MIOs, 48 x PL HD GPIOs, 156 x PL HP GIPIOs (3 banks) - Serielle Transceiver: 4 x GTR + 16 x GTH - Transceiver Clocks Eingänge und Ausgänge - PLL-Taktgenerator-Eingänge und -Ausgänge
Ein FPGA Board mit FMC HPC Stecker hat min. 160 I/Os: https://en.wikipedia.org/wiki/FPGA_Mezzanine_Card#LPC_vs._HPC Es gibt Boards mit mehr als einem FMC Anschluss. Manchmal ist einer HPC und der andere LPC aber das würde ja dann reichen für 200 I/Os.
Was bedeutet synchron als maximal erlaubte Zeitdifferenz? Und was ist der minimale Abstand zwischen zwei Flanken?
Ah, FMC ist das magic Word, THX. Jetzt finde ich was, bin newbie. Gustl B. schrieb: > Was bedeutet synchron als maximal erlaubte Zeitdifferenz? Und was ist > der minimale Abstand zwischen zwei Flanken? Syncron soll heißen ca. 1ns, die I/O sollen mit derselben Taktflanke toggeln. Zwischen zwei Flanken ist unkritisch, us Bereich. THX Cheers Detlef
Wenn du zwischen den Flanken Zeit hast, dann könntest du viele IOs sparen und Schieberegister verwenden. Solche wie das 595 haben ein zweites Register. Und die versorgst du dann alle mit dem gleichen Signal. Aber ob du da die eine Nanosekunde schaffst ist unklar. Ob du die mit den FPGA IOs schaffst ist aber ebenfalls unklar. Für eine so hohe Zeitauflösung brauchst du eigentlich schon SerDes am Ausgang. Das geht bei Xilinx an HR und HP Bänken, aber Achtung! die neuen Ultrascale(+) FPGAs haben auch HD Bänke und die haben keine SerDes sondern sind vergleichsweise langsam.
Gustl B. schrieb: > Aber ob du da die eine Nanosekunde schaffst ist unklar. Ob du die mit > den FPGA IOs schaffst ist aber ebenfalls unklar. Das Schieberegister HC595 ist in dem Parameter RCLK -> QA ( Outputclock zu Output ) bei 4.5V gespect mit 17-30ns. Also werden zwei Chips oder auch die 8 Ausgänge eines Chips sicher mehr als 1ns jittern. Namakuckn THX Cheers Detlef
Vermutlich, ja. Gibt noch mehr Schieberegister ICs. Du könntest auch Schieberegister nehmen ohne extra Register und das selber extern dazu bauen und da eines nehmen das deine recht hohen Anforderungen erfüllt. Auf die Schnelle habe ich CY74FCT16374T gefunden. Jedenfalls bevor du jetzt viel Geld für einen FPGA mit genug IOs ausgibst, gucke nach ob deine Anforderungen damit zu erfüllen sind.
Gustl B. schrieb: > Vermutlich, ja. Gibt noch mehr Schieberegister ICs. Du könntest auch > Schieberegister nehmen ohne extra Register und das selber extern dazu > bauen und da eines nehmen das deine recht hohen Anforderungen erfüllt. > Auf die Schnelle habe ich CY74FCT16374T gefunden. > > Jedenfalls bevor du jetzt viel Geld für einen FPGA mit genug IOs > ausgibst, gucke nach ob deine Anforderungen damit zu erfüllen sind. Uih, das Ding hat einen 'output skew' von besser 1/4 ns. Das würde es schon treffen, die D-FFs müßte man noch davorsetzen. Danke für den Tip, mental war ich bei 74xxx hängengeblieben. Cheers Detlef
16 Bit, <250 ps Skew: https://www.mouser.de/datasheet/2/698/IDT_74FCT16374T_DST_20190326-1996280.pdf Für mich sähe das so aus: FPGA/uC -> Schieberegister/IO-Expander (da gibt es sehr viele mit I2C, SPI, ...) -> Register -> Wichtig wäre dann, dass die Register den Takt/Flanke gleichzeitig bekommen und dann haben die Rgister ICs gegeneinander noch Skew. Der Skew im Datenblatt gilt ja nur für zwei IOs des selben Bausteins. Vielleicht ist aber auch ein FPGA die beste Lösung. Da wäre dann auch interessant welche Pegel du brauchst. Die IOs der HP Bänke gehen nur bis 1,8 V.
Gustl B. schrieb: > 16 Bit, <250 ps Skew: > https://www.mouser.de/datasheet/2/698/IDT_74FCT16374T_DST_20190326-1996280.pdf > > Für mich sähe das so aus: > > FPGA/uC -> Schieberegister/IO-Expander (da gibt es sehr viele mit I2C, > SPI, ...) -> Register -> > > Wichtig wäre dann, dass die Register den Takt/Flanke gleichzeitig > bekommen und dann haben die Rgister ICs gegeneinander noch Skew. Der > Skew im Datenblatt gilt ja nur für zwei IOs des selben Bausteins. > > Vielleicht ist aber auch ein FPGA die beste Lösung. Da wäre dann auch > interessant welche Pegel du brauchst. Die IOs der HP Bänke gehen nur bis > 1,8 V. Ja, da muss man dann sehen dass die Leitungslängen zu den Registern nicht unterschiedlich sind. Der Ausgang muss nen SFH757 treiben können, da sind 1,8V nicht genug, 3.3 schon. Cheers Detlef
Detlef _. schrieb: > wir möchten gerne 160 MOSFETs mittels FPGA und Lichtleitern synchron > ansteuern. Detlef _. schrieb: > Syncron soll heißen ca. 1ns, die I/O sollen mit derselben Taktflanke > toggeln. Zwischen zwei Flanken ist unkritisch, us Bereich. Sportlich! Detlef _. schrieb: > Ja, da muss man dann sehen dass die Leitungslängen zu den Registern > nicht unterschiedlich sind. Das dürfte mit Abstand das kleinste Problem werden. Detlef _. schrieb: > Der Ausgang muss nen SFH757 treiben können, da sind 1,8V nicht genug, > 3.3 schon. Schon mal ins Datenblatt geschaut? Capacitance 30pF Switching Times 15ns Wie kommt man dann auf die Anforderung von 1ns? Um in dem Bereich von Max. 1ns zu bleiben, müssten die Flanken irgendwo im kleinen 2 stelligen ps Bereich liegen und damit dann 30pF Laden/Entladen zu wollen... Ich sag ja, Sportlich. ;) Gruß
PalimPalim schrieb: > Schon mal ins Datenblatt geschaut? > > Capacitance 30pF > Switching Times 15ns > > Wie kommt man dann auf die Anforderung von 1ns? Um in dem Bereich von > Max. 1ns zu bleiben, müssten die Flanken irgendwo im kleinen 2 stelligen > ps Bereich liegen und damit dann 30pF Laden/Entladen zu wollen... Ich > sag ja, Die switching time ist mir herzlich egal, die darf zwischen den Bauteilen nur nicht mehr als 1ns streuen. PalimPalim schrieb: > Sportlich. ;) Hab beim ironman 1997 den Dritten gemacht. Cheers Detlef
Detlef _. schrieb: > Die switching time ist mir herzlich egal, die darf zwischen den > Bauteilen nur nicht mehr als 1ns streuen. Die 1ns wird aber bei den SFH757 nie und nimmer raus kommen, schon alleine die Streuung, Schwellwerte und Temperaturunterschiede der einzelnen Dioden untereinander. Müssen es den unbedingt die SFH757 sein? Am Rande noch erwähnt, pro Bank vom FPGA können (je nach FPGA) nicht alle IOs gleichzeitig mit vollem Strom schalten, da sollte man auch ein Auge drauf haben. > PalimPalim schrieb: >> Sportlich. ;) > > Hab beim ironman 1997 den Dritten gemacht. > > Cheers > Detlef Verdammich noch mal, da kann ich nicht mithalten, ich bin schon beim Trockenschwimmen unter gegangen! ;) Gruß
Hmm jetzt bin ich aber wirklich neugierig: in welcher Anwendung muss man 160 MOSFETs aus dem gleichen FPGA ansteuern? Klingt irgendwie nach kaskadiertem Multizellen Konverter/MMC Konverter oder etwas Ähnlichem? Aber selbst da bin ich mit weniger als 100 IOs meist durchgekommen.
Neugieriger Esel schrieb: > Hmm jetzt bin ich aber wirklich neugierig: in welcher Anwendung muss man > 160 MOSFETs aus dem gleichen FPGA ansteuern? Klingt irgendwie nach > kaskadiertem Multizellen Konverter/MMC Konverter oder etwas Ähnlichem? In Leistungs-Elektronik, bei denen hohe Schaltströme gefahren werden und die Transistoren folglich exakt synchron schalten müssen, um nicht infolge ungünstiger Überlappung Querströme zu produzieren. FPGAs sind da zunächst keine guten Kandidaten wegen Jitter und Exemplarstreuung, aber man kann mit einer "analog" aufgebauten Technologie durchaus auf unter 20ps kommen, wenn man es schlau anstellt. Dazu braucht es aber spezielles Takten und Taktführung und einiges mehr. Es fängt schon mit einem hochstabilen REF-Takt von Außen an. PalimPalim schrieb: > Am Rande noch erwähnt, pro Bank vom FPGA können (je nach FPGA) nicht > alle IOs gleichzeitig mit vollem Strom schalten, da sollte man auch ein > Auge drauf haben. Ja, daher braucht es nach dem Ausgang noch mindestens einen schnellen Schalter, der aber selber möglichst keine Lastkapazität aufweist. Da es das so nicht gibt, braucht man 2 und für das Takt-Gating einen weiteren. Die sind leider nicht billig, streuen recht stark und nicht zuletzt deshalb muss das Ganze kalibriert werden, was wiederum weitere Beschaltung benötigt. Eine solche Schaltung wurde von mir 2009 entwickelt und ihm Rahmen eines Projektes durch den Kunden teilweise patentiert - auch die FPGA-Innereien und die Methodologie sind geschützt. Der vornehmlich patentierte Teil kommt im Grunde von einem Bauvorschlag von Altera, die zuvor mit einem Kunden im Bereich TDC gearbeitet haben. Die Mess- und Kalibrierkette ist praktisch ausschließlich von mir, wäre auch noch open, da der Mutterkonzern des Kunden das Projekt nicht weiterverfolgt hat. Zu den FPGAs: Mit den Transceivern würde ich nicht arbeiten. Es reichen "normale" Ausgänge. Es kommt im Wesentlichen auf die analoge Umbeschaltung an. Die macht die "Musik". Einen FPGA braucht man eigentlich nur zu dem Zweck, den Takt entsprechend zu führen und je nach Bank, IO, Schaltstruktur dahinter und deren Verzögerungen, alles eintrainieren zu können, ohne es "umlöten" zu müssen. Und: es muss während der Anwendung nachkalibriert werden, weil sich allesmögliche verschiebt, wenn es warm wird. Leider reichen schon 1-2 Grad drift, um Schaltzeiten um 10ps und mehr zu verschieben. Das Grundproblem ist, dass die vielen Transistoren nicht alles in Gruppen beieinander sitzen, sondern weit verteilt angebracht werden, folglich mit unterschiedlich beschaffenen Verkabelungen angesteuert werden. Lichtleiter helfen da leider nicht weiter, weil die Transceiver so viel streuen, dass gematchte Kabel besser sind. Gfs braucht man eine SSO Kompensation, d.h. die Vorkompensation der Schaltzeiten, die sich infolge gleichzeitig schaltender Teilgruppen ergibt, wenn nicht immer alle oder keiner schaltet und es damit nur einen 2 Schaltfälle gibt. Das ist z.B. bei intelligenten 6-Phasen-Umrichtern der Fall, wo mehrere kaskadierte Transistoren unterschiedlich schalten, um z.B. einen Pseudosinus zu erzeugen. Die SSO-Kompensation habe ich für eine Audio-Anwendung (32 BIT DAC) realisiert und ist erhältlich. Sie ist auch in der Lage, Strom- und Spannungsrückwirkungen zu verarbeiten, wenn sie eintrainiert ist. Sie läuft in einfacher Form bei einem Kunden der Audiotechnik, ist nicht patentiert und wäre mit der Stromkompensation auf Leistungselektronik portierbar (wenn Leistungsteil und Steuerteil nicht räumlich gut genug getrennt sind). Von wievielen MWatt sprechen wir hier? Welche Feldstärken?
Wäre es bei schnellen Schaltvorgängen nicht besser, anstelle von MOSFETs HEMTs zu nehmen, auch wenn sie teilweise komplizierter in der Beschaltung sind?
Jürgen S. schrieb: > In Leistungs-Elektronik, bei denen hohe Schaltströme gefahren werden und > die Transistoren folglich exakt synchron schalten müssen, um nicht > infolge ungünstiger Überlappung Querströme zu produzieren. FPGAs sind da > zunächst keine guten Kandidaten wegen Jitter und Exemplarstreuung, aber > man kann mit einer "analog" aufgebauten Technologie durchaus auf unter > 20ps kommen, wenn man es schlau anstellt. > > Dazu braucht es aber spezielles Takten und Taktführung und einiges mehr. > Es fängt schon mit einem hochstabilen REF-Takt von Außen an. Jürgen S. schrieb: > Ja, daher braucht es nach dem Ausgang noch mindestens einen schnellen > Schalter, der aber selber möglichst keine Lastkapazität aufweist. Da es > das so nicht gibt, braucht man 2 und für das Takt-Gating einen weiteren. > Die sind leider nicht billig, streuen recht stark und nicht zuletzt > deshalb muss das Ganze kalibriert werden, was wiederum weitere > Beschaltung benötigt. > > Eine solche Schaltung wurde von mir 2009 entwickelt und ihm Rahmen eines > Projektes durch den Kunden teilweise patentiert - auch die > FPGA-Innereien und die Methodologie sind geschützt. Der vornehmlich > patentierte Teil kommt im Grunde von einem Bauvorschlag von Altera, die > zuvor mit einem Kunden im Bereich TDC gearbeitet haben. Die Mess- und > Kalibrierkette ist praktisch ausschließlich von mir, wäre auch noch > open, da der Mutterkonzern des Kunden das Projekt nicht weiterverfolgt > hat. Hm. Und dazu hast du Quellen? Ich arbeite seit 10 Jahren in der Leistungselektronik und habe gelinde gesagt erhebliche Zweifel an dem Geschriebenen. Vor allem gib es nicht sonderlich viele Topologien, bei denen man 150 verschiedene Schalter getrennt ansteuern muss. Ich würde mich durch entsprechende Quellen (Pulbikationen bzw. Patente) natürlich eines bessern belehren lassen. Jürgen S. schrieb: > Gfs braucht man eine SSO Kompensation, d.h. die Vorkompensation der > Schaltzeiten, die sich infolge gleichzeitig schaltender Teilgruppen > ergibt, wenn nicht immer alle oder keiner schaltet und es damit nur > einen 2 Schaltfälle gibt. Das ist z.B. bei intelligenten > 6-Phasen-Umrichtern der Fall, wo mehrere kaskadierte Transistoren > unterschiedlich schalten, um z.B. einen Pseudosinus zu erzeugen. Was verstehst du unter "SSO Kompensation"?
Neugieriger Esel schrieb: > Hmm jetzt bin ich aber wirklich neugierig: in welcher Anwendung muss man > 160 MOSFETs aus dem gleichen FPGA ansteuern? Klingt irgendwie nach > kaskadiertem Multizellen Konverter/MMC Konverter oder etwas Ähnlichem? > Aber selbst da bin ich mit weniger als 100 IOs meist durchgekommen. Die Kombination Anfänger, FPGA, Mega Timing Anforderungen und sehr spezielle Anwendungen hatten wir schon einige Male hier. In der Regel ist das ein Hilfswissenschaftler am CERN, da werden offenbar gern solche Dinge jemandem gegeben, der sowas noch nie gemacht hat.
Christian R. schrieb: > Neugieriger Esel schrieb: >> Hmm jetzt bin ich aber wirklich neugierig: in welcher Anwendung muss man >> 160 MOSFETs aus dem gleichen FPGA ansteuern? Klingt irgendwie nach >> kaskadiertem Multizellen Konverter/MMC Konverter oder etwas Ähnlichem? >> Aber selbst da bin ich mit weniger als 100 IOs meist durchgekommen. > > Die Kombination Anfänger, FPGA, Mega Timing Anforderungen und sehr > spezielle Anwendungen hatten wir schon einige Male hier. In der Regel > ist das ein Hilfswissenschaftler am CERN, da werden offenbar gern solche > Dinge jemandem gegeben, der sowas noch nie gemacht hat. Kein Anfänger Keine Mega Timing Anforderungen Kein Hilfswissenschafler Kein CERN Wir wollen MOSFETs auf Hochspannungspotential des 110kV Netzes synchron ansteuern. Aber die konkrete Anwendung kann ich nicht darlegen, weil das eine solche Superidee ist, daß die natürlich sofort vor der Patentierung geklaut würde und so diese Gründung des 'facebook' der Hochspannungstechnik verhindern würde. Sorry Cheers Detlef
Detlef _. schrieb: > Wir wollen MOSFETs auf Hochspannungspotential des 110kV Netzes synchron > ansteuern. Das bedeutet, jeder Transistor muss seinen Anteil der heruntergeteilten Spannung von einigen Hundert Volt Schalten und Halten. Genau das macht jeder zweite Synchron-Umrichter, bei dem die "Ventile", wie wir sie altdeutsch nennen, in Reihe geschaltet sind und (nach Maßgabe der Möglichkeiten) zeitversetzt gesteuert werden, um Stufen in die Spannungen zu bringen. Auch in der Auto-Elektronik wird das so gemacht, wenngleich nicht sofort mit 110kV. Ich sehe da noch nicht die geniale Idee. Das ist weder neu noch sonderlich schöpferisch. Im Gegenteil: Das ist eine reine Frage der Implementierung. Die Anteuerung mit FPGAs sollte dabei das kleinste Problem sein. Da drohen ganz andere Dinge aus der HV-Technik. Insbesondere wird es auf Layout- Verschaltung- Leiterbahnführung und Isolationstechnik ankommen. Es ist also ein Umsetzungsthema und das ist von Patenten bedroht oder betroffen. Wenn überhaupt kannst du dir am Ende das Layout patentieren lassen oder die Nutzung eines HV-Isolators, den du noch bauen musst. Die Handhabung von Kriechstrecken wird das Hauptproblem werden, denn sobald ein solcher Reihenstransistor / Thyristor Varactor Diac / Triac und was wir schon alles vebrutzelt haben, auch nur daran denkt, zu schließen, möchten die 500V Differenz liebend gern an ihm vorbei. Und sobald sie das geschafft haben, dann fließen die Amperes per Ladungsstoss und die Nachbarn sehen plötzlich nicht nur 110kV / ((n-1)*n) sondern auch noch den Impuls, der sich durch die Bahngebiete der HL frisst. Und die machen dann auch Pause. Ich habe schon solche Apparturen werkeln sehen und am Ende hatten die alles eines gemeinsam: Sie produzierten um die Senke herum eine ordentliche -> Corona. Bei der allerding wären 1,50 Abstand ein bissl wenig gewesen.
Esel schrieb: > Vor allem gib es nicht sonderlich viele Topologien, bei > denen man 150 verschiedene Schalter getrennt ansteuern muss. Es sind Hunderte Transistoren, wegen des Stromes und damit Leitungen. Die Schalter sind die Halbleiter. Es sind nicht notwendigerweise 100te Zuleitungen und damit auch nicht unbedingt ebensoviele FPGA-Ausgänge. Esel schrieb: > Was verstehst du unter "SSO Kompensation"? Simultan Schaltende Ausgänge, siehe die SPEC der FPGAs zu diesem Punkt. Jeder Ausgang zieht Strom und beeinflusst ein wenig seine Nachbarn. Mit einem Analog-Oszi kann man das Schalten eines Ausgangs auf der Nachbarleitung sehen, wenn die gerade nichts tut. Umgekehrt wird deren Schaltvorgang verzögert. Solches digitales Schalten ist dann besonders unangenehm, wenn man den Schaltvorgang direkt nutzen möchte, weil es nicht digital nach einer Weile genutzt wird (da Datenleitung) sondern Taktleitung (z.B. CLK, DQS öä.) oder wenn wie im Falle eines manuellen 32BIT DAC direkt geschaltet wird. Dann braucht es noch eine Folge-Gating der Leitungen. Zudem ist das in die Knie-Gehen berechenbar und kann als Überbleibsel vom Analogsignal abgezogen werden, wenn man den impact modellieren kann. Für Audio gibt es das und m.W war ich der erste, der das gemacht hat. Mein Beitrag schrieb: > Es ist also ein Umsetzungsthema und das ist > von Patenten bedroht oder betroffen. Das bereits ist problematisch genug und Umsetzungen in dem Sektor durchaus patentwürdig.
Jürgen S. schrieb: > Für Audio gibt es das und m.W war ich der erste, der > das gemacht hat. Gibt es dazu irgendwelche Papers (also zu dem Audio Thema)? Wuerde mich mal interessieren was da gemacht wird. :-)
Dieses Ding https://shop.trenz-electronic.de/de/TE0711-01-100-2I-High-IO-Industrial-grade-Xilinx-Artix-7-100T-Module-mit-Speedgrade-2I-und-USB?c=140 mit 178 IOs nehmen wir. >>>>> Das bedeutet, jeder Transistor muss seinen Anteil der heruntergeteilten Spannung von einigen Hundert Volt Schalten und Halten. Nein, das bedeutet es nicht. Die Transistoren sind auf 110kV Potential, soviel schalten können und müssen die nicht. >>>>>> Ich sehe da noch nicht die geniale Idee. Das ist weder neu noch sonderlich schöpferisch. Im Gegenteil: Das ist eine reine Frage der Implementierung. Achso. Stimmt. Ja, dann wird das alles nix. Schade. Danke für den Hinweis, wir hätten echt verkackt. Cheers Detlef
Detlef _. schrieb: > Achso. Stimmt. Ja, dann wird das alles nix. Schade. Danke für den > Hinweis, wir hätten echt verkackt. Schade, dass Diskussionen immer in diese Richtung münden. Ich arbeite ebenfalls oft mit Leistungselektronik und finde das Thema spannend. Eine 110kV-Anwendung kenne ich selber nicht, kann aber bestätigen, dass die Umrichter, die man für große Synchronanlagen und -motoren einsetzt mit in Reihe geschalteten Thyristoren / Triacs und IGBTs arbeiten, um auf die benötigte Spannung zu kommen. Ein zurückliegendes Beispiel bezieht sich auf eine HV-Steuerung eines Krans: Der Dort verbaute Motor hat Ströme in der Größenordnung von einigen Kilo-Ampere und die Spannung die es braucht, um die in die Wicklungen zu bekommen liegt bei etlichen Kilovolt. Da wurden ebenfalls mehrere Halbleiter zusammengeschaltet. Man unterstellt sogar den Defekt einzelner Bauteile und hat serielle / parallel Wege, um die aufzufangen. Auch die Inverter in der Hoch-Volt-Schweißindustrie benutzen das, um das hochschnelle Wechselfeld zu generieren, Stichwort WIG. Etwas kleiner geht es in der Autoindustrie zu: Elektroantriebe arbeiten meistens mit unter 1kV, aber auch die werden aus Gründen der Dosierbarkeit mit Stufen geschaltet. Eine von der Uni Karlsruhe vor Jahren vorgestellte Lösung schafft so an die 95% Wirkungsgrad und ist in der Lage, mit digital überlappend gesteuerten Transistoren (jeder einzelne macht nur ON/OFF) einen in sehr kleinen Schritten quantisierten Sinus hinzubekommen, den man für das Drehfeld benötigt. Diese Stufentechnik ermöglicht eine schnelle Anpassung der Kapazität und Ausbalancierung der kapazitiven Last/Speicherfunktion, die vor allem auch dem Rekuperationsbetrieb zu Gute kommt, weil die Spannungs- und Phasendifferenzen fein dosierbar werden. Die Formel-E fährt solche Systeme mit Spannungen hart an der 1500Vss-Marke und hat eine erstaunliche Effizienz bei der Wiedergewinnung der Energie. Was man aus der Batterie über den Umsetzer an kinetischer Energie ins Auto steckt, ist mit fast 60% wieder in die Batterie zurückzubekommen, inklusive aller mechanischer und elektrischer Verluste. Solche Schaltungen müssten sich eigentlich gut kaskadieren lassen. 110kV halte ich aber trotzdem für eine Herausforderung.
Gustl B. schrieb: > Vielleicht ist aber auch ein FPGA die beste Lösung. Da wäre dann auch > interessant welche Pegel du brauchst. Die IOs der HP Bänke gehen nur bis > 1,8 V. Um einen IGBT oder Power-MOSFET zu schalten, gibt es spezielle Treiber, welche die Lastkapazität managen können. Mit einem Schalten direkt aus einem FPGA heraus wird das nichts. Die Flanke wäre zu flach und der Schaltvorgang kann im schlechtesten Fall den Transistor sogar verstören. Dieses Schalt-Limit ist der Hauptgrund, warum man die Transistoren parallel und sequenziell schalten muss. Mehr Spannung würden die sogar oft noch abkönnen, aber im Regelbetrieb müssen sie sehr oft geschaltet werden, was die Leistung und die Temperatur hochtreibt.
Wir erzeugen 110kV und zwar mit 40 Stufen a 3kV. Die SiC Mosfets der H-Brücken werden über Lichtleiter angesteuert und haben natürlich Gatetreiber und die Anstiegszeit der Photodioden liegt bei 2ns. Die Lichtleiter werden unten mit dem FPGA angesteuert um die Flanken gegeneinander im sub-ns Bereich schieben zu können. >>>>>>>> Detlef _. schrieb: > Achso. Stimmt. Ja, dann wird das alles nix. Schade. Danke für den > Hinweis, wir hätten echt verkackt. Schade, dass Diskussionen immer in diese Richtung münden. <<<<<< Ja, hier sind diese Spezialisten unterwegs, die nicht die Frage verstehen und alle anderen für Anfänger und Vollidioten halten. Ironie verstehen die auch nicht. Aber ich. Cheers Detlef
Beitrag #6674279 wurde von einem Moderator gelöscht.
Detlef _. schrieb: > Wir erzeugen 110kV und zwar mit 40 Stufen a 3kV. Darf man darüber etwas mehr wissen? Gibt es bereits ein Produkt?
Ja, man darf wissen. Geht voran, anbei das aktuelle layout einer 3kV Stufe. Da gilt es Isolationsabstände einzuhalten, 7mm auf Aussenlayern, 4 auf Innenlayern in der horizontalen. In der Vertikalen hat man auf der 4 layerplatine 0.2mm vom Aussenlayer auf die Innenlayer und 1.2 zwischen den Innenlayern. Wir nehmen an, dass die 1.2mm die 3kV halten, die 0.2 nicht. Das macht layout Restriktionen. Dazu möchte man Gleitentladungsanordnungen ( GLEITentladung, nicht TEILentladung, immer EILT drin aber trotzdem was Verschiedenes) vermeiden https://de.wikipedia.org/wiki/Teilentladung. Nicht ganz ohne, die erste Serie wird sicher durchschlagen, aber demnächst werden wir RC1 bei JLBPCB platzieren können, inshallah :)) Wo die kundigen Interessierten gerade so schön zusammensitzen: Wir wollen das TRENZ Xilinx Spartan7 FPGA mit den 160 Ausgängen und 40 Eingängen vom uC aus über einen SPI steuern. Der Spartan7 ist noch nicht up-and-running, da möchte ich die SPI Schnittstelle erstmal auf einem CMOD S7 von Digilent in VHDL vorbereiten. Ich bin da nicht so fit, das muss ich üben. Habt Ihr - schon mal eine SPI Schnittstelle in VHDL implementiert ? - was mit dem CMOD S7 von Digilent gebastelt ? Zu Ersterem hab ich auf dem web noch nicht gesucht, Material zu Letzterem ist rar. Freue mich über Hinweise und Anregungen. THX Cheers Detlef
Detlef _. schrieb: > schon mal eine SPI Schnittstelle in VHDL implementiert ? Ja, https://www.google.com/search?q=SPI+Schnittstelle+VHDL
:
Bearbeitet durch Moderator
Detlef _. schrieb: > Ich bin da nicht so fit, das muss ich üben. > > Habt Ihr > - schon mal eine SPI Schnittstelle in VHDL implementiert ? Das ist die perfekte Aufgabe zum ueben! So ziemlich jeder der FPGAler hat schonmal eine SPI (und UART ;-)) Schnittstelle irgendwo geschrieben und implementiert. :-)
Detlef _. schrieb: > Habt Ihr > - schon mal eine SPI Schnittstelle in VHDL implementiert ? Ja, mehrfach. Schön simpel, als SPI-Slave braucht man nicht mal einen Zähler. > - was mit dem CMOD S7 von Digilent gebastelt ? Nein. Aber egal welches Board mit welchem FPGA man hat. Relevant ist der Schaltplan, damit man die Pinzuordnung hinbekommt. Außerdem möchte man wissen, was an Peripherie so verbaut ist. Dann besorgt man sich von sämtlicher Peripherie die Datenblätter und studiert diese. Duke
SPI Master/Slave implementieren kann man und habe ich selber schon oft genug gemacht. Mittlerweile nehme ich aber gerne den hier: https://opencores.org/projects/spi_master_slave Kann viel bei geringem Ressourcenverbrauch, ist einfach einzubinden und die Beschreibung im Header und auf der Seite ist meiner Meinung nach ausreichend. Hab den auch bei einem Artix 7 im Einsatz.
InvalidFact schrieb: > Mittlerweile nehme ich aber gerne den hier: > > https://opencores.org/projects/spi_master_slave Ich hab nur mal kurz reingeschaut: https://opencores.org/websvn/filedetails?repname=spi_master_slave&path=%2Fspi_master_slave%2Ftrunk%2Frtl%2Fspi_master_slave%2Fspi_slave.vhd > use ieee.numeric_std.all; > use ieee.std_logic_unsigned.all; Aua! > signal state_next : natural range N downto 0 := 0; -- state 0 is idle state > signal state_reg : natural range N downto 0 := 0; -- state 0 is idle state Da wird eine unübersichtliche FSM mit der zwei Prozess-Methode verwendet. > out_transfer_proc : process ( clk_i, do_transfer_reg, di_req_reg, > do_valid_A, do_valid_B, do_valid_D, > di_req_o_A, di_req_o_B, di_req_o_D) is Hier gibt es eine sehr fragwürdige Mischung aus kombinatorischem und getaktetem Prozess. > if clk_i'event and clk_i = '1' then Das ist nur altmodisch, aber schlecht lesbar. Besser ist risign_edge(). Positiv fallen mir die vielen Kommentare auf, aber mir wäre der Code viel zu umständlich. Außerdem ist SPI so klein, das hat m.E. keine eigene entity verdient. Bei mir sieht ein SPI-slave z.B. so aus:
1 | signal data_in : std_ulogic_vector( 31 downto 0); |
2 | signal data_out : std_ulogic_vector( 31 downto 0); |
3 | |
4 | signal receive_data : std_ulogic_vector( 31 downto 0); |
5 | signal send_data : std_ulogic_vector( 31 downto 0); |
6 | |
7 | ...
|
8 | |
9 | miso <= send_data( send_data'high) when cs_n = '0' else 'Z'; |
10 | |
11 | -- spi receive
|
12 | process
|
13 | begin
|
14 | wait until rising_edge( sclk); |
15 | if cs_n = '0' then |
16 | receive_data <= receive_data( receive_data'high - 1 downto 0) & mosi; |
17 | end if; |
18 | end process; |
19 | |
20 | -- spi send & spi data handling
|
21 | process( cs_n, receive_data, data_in, sclk) |
22 | begin
|
23 | if cs_n = '1' then |
24 | data_out <= receive_data; |
25 | send_data <= data_in; |
26 | elsif rising_edge( sclk) then |
27 | send_data <= send_data( send_data'high - 1 downto 0) & '0'; |
28 | end if; |
29 | end process; |
Wenn man noch ein data_valid braucht, generiert man sich das aus der steigenden Flanke vom chip select. Duke
Detlef _. schrieb: > Die > Lichtleiter werden unten mit dem FPGA angesteuert um die Flanken > gegeneinander im sub-ns Bereich schieben zu können. Habt ihr schon eine Idee wie ihr das realisiert? Die ODELAY Primitives vom Artix 7, welche das könnten, sind meines Wissens nach nicht auf den HR Bänken des Artix 7 verfügbar (sondern nur bei den sehr begrenzt verfügbaren SERDES). Von der Taktfrequenz her alleine bekommt ihr das nicht hin. Mehr als 500 - 600 Mhz schafft der A7 selbst bei einem sehr guten Design und Speedgrade 3 nicht. Damit seit ihr bei einer Taktdauer > 1.6ns. Ihr könntet mit mehreren internen Clocks arbeiten und die dann zueinander Phasenverschieben. Damit würde man glaube ich die geforderte Auflösung erreichen. Allerdings habt ihr nicht so viele Clocks wie IOs. Die einzige Möglichkeit die mir aktuell einfällt: Mehrere zueinander phasenverschobene Clockdomänen auf denen die IOs aufgeteilt werden. Nehmen wir mal 400 MHz und 5 Domänen an. Dann wäre jede Domäne zueinander um 0.5ns verschoben. Die I/Os müssten dann der jeweiligen Domäne zugeordnet werden. Was aber sicher extrem kritisch ist: Das interne Routen der Signale sowie die IOs haben auch einen variablen Delay. Dem kann man ein Stück weit mit Constraints entgegenwirken, aber das ganze müsste wohl kalibriert werden (soweit überhaupt möglich). Will euch das ganze nicht schlechtreden, aber mich würd wirklich interessieren wie man das mit einem Artix-7 lösen kann ;-). Grüße
InvalidFact schrieb: > Die ODELAY Primitives vom Artix 7, welche das könnten, sind meines > Wissens nach nicht auf den HR Bänken des Artix 7 verfügbar (sondern nur > bei den sehr begrenzt verfügbaren SERDES). Das verwechselst du wahrscheinlich mit den MGT. Die ISERDES/OSERDES gibts eigentlich überall, denn der Artix hat doch ausschließlich HR I/Os. Sportlich wird es trotzdem, aber machbar. Wir verwenden die OSERDES auch um mit 125MHz Takt einen externen Puls in 1ns Schritten Länge einzustellen. Geht ganz gut.
Detlef _. schrieb: > Wir wollen MOSFETs auf Hochspannungspotential des 110kV Netzes synchron > ansteuern. Und das muss natürlich auf 1ns genau sein. Jaja. Na dann mal viel Spaß dabei.
Detlef _. schrieb: > Wir erzeugen 110kV und zwar mit 40 Stufen a 3kV. Die SiC Mosfets der > H-Brücken werden über Lichtleiter angesteuert und haben natürlich > Gatetreiber und die Anstiegszeit der Photodioden liegt bei 2ns. Die > Lichtleiter werden unten mit dem FPGA angesteuert um die Flanken > gegeneinander im sub-ns Bereich schieben zu können. Und was soll da am Ende rauskommen? 110kV DC kann man heute mit einfachen HV-Kaskaden erzeugen? Was wollt ihr erzeugen? 110kV AC? Eine 110kV Einspeisung (Wechselrichter) von einem Solarpanel ohne Trafo?
Hallo, ja, danke für die Hinweise zu SPI und zu dem Flankenschieben. Wir sind da bißchen unterbelichtet, aber das ist nen fettes FPGA und wenn alle Stricke reissen zapfen wir ne Invertiererkette gesteuert an, wird schon irgendwie gehen. Wichtiger ist erstmal die Ansteuerung der Lichtleiter mit weniger präzisen Flankenzeiten. Falk B. schrieb: > Jaja Danke, selbiges. Falk B. schrieb: >>Und was soll da am Ende rauskommen? Nen Funktionsgenerator. Cheers Detlef
Detlef _. schrieb: > Falk B. schrieb: >>>Und was soll da am Ende rauskommen? > > Nen Funktionsgenerator. Im Ernst? Ihr wollt einen linearen Verstärker für 110kV bauen? Hmm, sowas kann man machen, machen wir hier auch, wenn gleich bisher nur bis 62kV. Allerdings ist der Kern der HV-Ausgangsstufen linear geregelt. Beitrag "Re: 1500V Linearverstärker"
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.