Forum: FPGA, VHDL & Co. FPGA evalboard mit 200 GPIOs


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Detlef _. (detlef_a)


Bewertung
0 lesenswert
nicht lesenswert
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

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Bewertung
-2 lesenswert
nicht lesenswert
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

von Christoph Z. (christophz)


Bewertung
0 lesenswert
nicht lesenswert
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.

von Gustl B. (-gb-)


Bewertung
-2 lesenswert
nicht lesenswert
Was bedeutet synchron als maximal erlaubte Zeitdifferenz? Und was ist 
der minimale Abstand zwischen zwei Flanken?

von Detlef _. (detlef_a)


Bewertung
0 lesenswert
nicht lesenswert
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

von Gustl B. (gustl_b)


Bewertung
-1 lesenswert
nicht lesenswert
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.

von Detlef _. (detlef_a)


Bewertung
0 lesenswert
nicht lesenswert
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

von Gustl B. (gustl_b)


Bewertung
-2 lesenswert
nicht lesenswert
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.

von Detlef _. (detlef_a)


Bewertung
0 lesenswert
nicht lesenswert
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

von Gustl B. (-gb-)


Bewertung
-2 lesenswert
nicht lesenswert
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.

von Detlef _. (detlef_a)


Bewertung
0 lesenswert
nicht lesenswert
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

von PalimPalim (Gast)


Bewertung
1 lesenswert
nicht lesenswert
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ß

von Detlef _. (detlef_a)


Bewertung
0 lesenswert
nicht lesenswert
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

von PalimPalim (Gast)


Bewertung
1 lesenswert
nicht lesenswert
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ß

von Neugieriger Esel (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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.

von Jürgen S. (engineer) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
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?

von HEMT (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Wäre es bei schnellen Schaltvorgängen nicht besser, anstelle von MOSFETs 
HEMTs zu nehmen, auch wenn sie teilweise komplizierter in der 
Beschaltung sind?

von Esel (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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"?

von Christian R. (supachris)


Bewertung
-3 lesenswert
nicht lesenswert
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.

von Detlef _. (detlef_a)


Bewertung
0 lesenswert
nicht lesenswert
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

von Mein Beitrag (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.