Liebe Experten,
ich bekomme von einem externen Gerät einen DC-Sinus mit im Vorfeld
unbekannter Amplitude (0V-0.2V low und 1V-3V high) und Frequenz
(50-120MHz). Zur Laufzeit ist die Frequenz allerdings bekannt und
konstant, ebenso ist die Amplitude zur Laufzeit konstant (eventuell bis
auf einen langsamen Drift mit +- 50mV). Ich möchte aus dieses Signal auf
3.3V CMOS wandeln, um einen FPGA damit zu synchronisieren bzw. eine der
Clocks damit zu treiben. Dafür benötige ich also ein Verhältnis von high
zu low von etwa 50%. Da ich von analoger Elektronik bisher nicht viel
Ahnung habe, würde mich über ein paar Lese-Tips und Anregungen freuen,
wie sowas prinzipiell gemacht werden könnte.
Also mit einem kleinen Kondensator trennst Du schonmal den DC-Anteil ab.
Dann evtl. noch verstärken, dann an einen Komparator.
Bei 50-120MHz müssen das aber dann schon ziemlich schnelle
Verstärker/Komparatoren sein.
Rübezahl (Gast) schrieb:
>Jens G. schrieb:>> dann an einen Komparator.>Für den MHz-Bereich genügt eine einfache niederohmige Emitterschaltung.
Ja, klar - eine einfache - die gut durchdacht sein will. Mit irgendeinem
BCxxx in Standardschaltung wirste nicht weit kommen.
Jens G. schrieb:> Mit irgendeinem BCxxx in Standardschaltung wirste nicht weit kommen.
Es genügen zwei Widerstände (Basis- und Arbeitswiderstand) und ein
2N2222 Transistor. Trennkondensatoren werden nicht benötigt.
Klaus schrieb:> 0V-0.2V low und 1V-3V high
Aha. Und mit dem kannste also ohne weiteres eine Amplitude von 0...0,2V
detektieren? Und auch gleich noch 1...3V? Ist ja echt simpel ...
Und mit seinen fast 100ns Rise+Fall deckt der bestimmt auch den
UKW-Bereich mit ab.
Jens G. schrieb:> Und mit dem kannste also ohne weiteres eine Amplitude von 0...0,2V> detektieren? Und auch gleich noch 1...3V? Ist ja echt simpel ...
Genau.
Rübezahl schrieb:> Es genügen zwei Widerstände (Basis- und Arbeitswiderstand) und ein> 2N2222 Transistor. Trennkondensatoren werden nicht benötigt.
Es geht um 120 MHz, nicht um 120 kHz!
Für eine ähnliche Anwendung habe ich erst kürzlich einen SY89876L von
Microchip (ehemals Micrel) eingesetzt. Die Bausteine dieser Familie
haben einen Eingangsspannungsbereich, der auch zu Deinen Anforderungen
passen sollte.
Micrel gibt leider nicht an, inwiefern auch ein "asymmetrisches"
Eingangssignal verwendet werden kann. Daher habe ich noch einen Balun
vorgeschaltet (Johanson 1720BL15A), der allerdings für Deinen
Frequenzbereich nicht passt. Aber es gibt natürlich auch entsprechende
Produkte für 50-120 MHz, z.B. von Mini-Circuits.
Es ist in Hinblick auf Jitter und Signalintegrität grundsätzlich einen
gute Idee, externe Takte differentiell auszulegen. Je nach I/O-Bank des
FPGA bieten sich dafür Standards wie z.B. LVDS an. Allerdings muss man
ganz genau hinschauen, ob bei der jeweiligen Bank-Versorgung ein
FPGA-interner Leitungsabschluss aktiviert werden kann oder ob man einen
externen Widerstand (natürlich möglichst dicht an den Pins) verwenden
muss.
Ich empfehle sehr dringend, bei solchen Dingen zuerst ein entsprechendes
Top-Level-Design des FPGAs mit Pin-Constraints und Verdrahtung der Takte
anzulegen und zu synthetisieren, um zu sehen, ob die konkreten Pins
wirklich die gewünschten I/O-Standards unterstützen. Ansonsten hockt man
(wie ich in einem früheren Projekt...) pro Musterleiterplatte vier
Stunden mit Skalpell und Fädeldraht am Mikroskop, um ca. dreißig Signale
umzuverdrahten. :-/
Hier die Übersichten bei Microchip über möglicherweise geeignete
Takttreiber oder Taktteiler:
https://www.microchip.com/ParamChartSearch/chart.aspx?branchID=9988716https://www.microchip.com/ParamChartSearch/Chart.aspx?branchID=9988719
Noch ein wichtiger Hinweis:
Solche Bausteine sind genau das Gegenteil von steckbretttauglich,
sondern setzen natürlich ein sehr sauberes Layout voraus.
Hallo Klaus.
Ich denke du brauchst keinen Pegelwandler, das kann der FPGA von sich
aus. Er ist ein CMOS Baustein und hat damit die Schaltschwelle zwischen
HIGH und LOW auf halber Betriebsspannung (Bei 3,3V Versorgung / 2 =
1,65V). Die angegebenen Pegel für CMOS sind reine Definitionssache um
einen Störspannungsabstand zu erhalten. Wie die tatsächlichen
Verhältnisse an deinem FPGA sind findest du in dessen Datenblatt.
Falls du trotzdem mit den Pegeln nicht hinkommst, kannst du den Eingang
über Spannungsteiler auf eine geeignete Vorspannung bringen und das
Sinussignal über einen Entkoppelkondensator (hält Gleichspannung zurück)
zuführen.
Falls dir das nicht gefällt, kannst du immer noch einen Single-Gate CMOS
Baustein Typ 74xx1Gyy oder ähnlich, mit geeigneter Spannung und
Geschwindigkeit, vorschalten.
Auf keinen Fall solltest du den Eingang ohne Schutzschaltung auslegen,
da du die Potenzialdifferenzen zwischen der Sinusquelle und deiner FPGA
nicht kennst.
Gruss. Tom
TomA schrieb:> Ich denke du brauchst keinen Pegelwandler, das kann der FPGA von sich> aus. Er ist ein CMOS Baustein und hat damit die Schaltschwelle zwischen> HIGH und LOW auf halber Betriebsspannung (Bei 3,3V Versorgung / 2 => 1,65V).
Ähh, kann es sein, dass Du so gar keine Ahnung von aktuellen FPGAs hast?
Leider hat der TE keine Informationen über sein FPGA verraten, aber die
Annahme, dass jede I/O-Bank fest auf die o.a. Schwelle eingestellt ist,
ist eine sehr gewagte Hypothese.
Hast Du Dir z.B. für die halbwegs aktuellen FPGA von Xilinx (7 Series)
mal die Beschreibung der unterstützten Pegel angeschaut? Außerdem muss
auch noch deutlich zwischen den entsprechenden Banktypen unterschieden
werden, z.B. HR, HP oder MGT.
Hier das relevante Dokument:
https://www.xilinx.com/support/documentation/user_guides/ug471_7Series_SelectIO.pdf
Bei Intel/Altera wird es sicherlich ähnlich aussehen.
Und wie schon geschrieben, ist die saubere Taktzuführung sehr wichtig.
Aus Gründen der Signalintegrität empfehle ich auf jeden Fall ein
differentielles Signal. Oder eben ein Singled-Ended-Signal, aber mit
großer Amplitude, kleinem Serienwiderstand und kurzer Leiterbahn.
Und für die Wandlung von Sinussignalen variabler Amplitude zu sauberen
digitalen Taktsignalen verwendet man heutzutage auch nicht irgendwelche
CMOS-Gatter, sondern eben Takttreiber. Deren Eingangsstufen sind
keineswegs immer in CMOS realisiert, sondern großenteils als bipolare
Differenzverstärker, so wie z.B. auch in den obigen Datenblättern von
Microchip/Micrel dargestellt.
Auch Texas Instruments hat etliche sehr interessante
Applikationsschriften zur Pegelkonvertierung schneller Signale verfasst.
Bevor Du hier also irgendwelche halbgaren Basteltipps gibst, solltest Du
auch diese gelesen und verstanden haben. Denn dann wäre Dir klar, dass
die Welt nicht nur aus einfachen CMOS-Pegeln/Gattern besteht, sondern
dass hinter jedem Signalstandard umfangreiche Überlegungen stecken.
Jens G. schrieb:> Aha. Und mit dem kannste also ohne weiteres eine Amplitude von 0...0,2V> detektieren? Und auch gleich noch 1...3V? Ist ja echt simpel ...> Und mit seinen fast 100ns Rise+Fall deckt der bestimmt auch den> UKW-Bereich mit ab.
Ich glaube ich habe mich nicht klar genug ausgedrückt, entschuldige. Das
Signal oszilliert zwischen einem Minumum von 0...0,2V und einem Maximum
von 1...3V, also eine Amplitude von etwa 0,5...1.5V.
Andreas S. schrieb:> Für eine ähnliche Anwendung habe ich erst kürzlich einen SY89876L von> Microchip (ehemals Micrel) eingesetzt. Die Bausteine dieser Familie> haben einen Eingangsspannungsbereich, der auch zu Deinen Anforderungen> passen sollte.>> Micrel gibt leider nicht an, inwiefern auch ein "asymmetrisches"> Eingangssignal verwendet werden kann. Daher habe ich noch einen Balun> vorgeschaltet (Johanson 1720BL15A), der allerdings für Deinen> Frequenzbereich nicht passt. Aber es gibt natürlich auch entsprechende> Produkte für 50-120 MHz, z.B. von Mini-Circuits.
Vielen Dank für die ausführliche Antwort(en) =)
Ich verstehe leider noch nicht ganz. Der SY89876L wandelt ja ein
differenzielles Eingangssignal in ein differenzielles Ausgangssignal. Da
das externe Signal nicht differenziell ist (was natürlich so viel besser
wäre), weiß ich nicht wie das zusammenpasst.
Dafür ist der
Klaus schrieb:>> Micrel gibt leider nicht an, inwiefern auch ein "asymmetrisches">> Eingangssignal verwendet werden kann. Daher habe ich noch einen Balun>> vorgeschaltet (Johanson 1720BL15A), der allerdings für Deinen>> Frequenzbereich nicht passt. Aber es gibt natürlich auch entsprechende>> Produkte für 50-120 MHz, z.B. von Mini-Circuits.
gedacht.
Ist ein Trafo asym. rein. Ausgang mit Mittelanzapfung sym. raus.
Klaus schrieb:>> Ist ein Trafo asym. rein. Ausgang mit Mittelanzapfung sym. raus.>> Ahh, verstehe! Danke!
Unter solch einem Trafo sollte man sich aber nicht einen fetten
Eisenblock mit Befestigungswinkel und Schraubklemmen vorstellen, sondern
diese kleinen Baluns sind auch recht winzige SMD-Bauelemente.
Möglicherweise(!) geeignet wäre z.B. ein:
https://www.minicircuits.com/WebStore/dashboard.html?model=ADT2-1T%2B
Für Deine Anwendung ist es sinnvoll, einen Balun mit galvanisch
getrennter Primär- und Sekundärseite zu verwenden, um eine automatische
Anpassung an die jeweiligen Gleichspannungsverhältnisse zu erreichen. Es
gibt nämlich auch sog. Strom-Baluns, die auf den ersten Blick aussehen
wie Netzfilter und in der Tat auch ähnlich funktionieren.
Das ganze hängt natürlich auch von der Impedanz der Signalquelle und
Leitungsführung ab. Hier die Übersicht:
https://www.minicircuits.com/WebStore/Transformers.html
Angesichts der abenteuerlichen Antworten, die hier zu lesen sind, frage
ich mich, ob ich den TO richtig verstanden habe.
Mein Vorschlag wäre entweder ein hinreichend schneller Komparator oder
einfach 1 x 74AUP1G(U)04. Der Inverter arbeitet als AC-Verstärker mit 1
nF am Eingang und 1 MOhm als Gegenkopplung. Ein 2. Inverter ...04 kann
bei Bedarf die Verstärkung erhöhen bzw. die Flanken verbessern.