10ns Rechteckimpuls erzeugen

Gast #3986663
Lesenswert?

Hallo,

für ein Treiber brauch ich ein Signal, das soll sowohl für Dauerbetrieb 
als auch für Impulsbetrieb geeignet sein.
Anfangs dachte ich an einem STM32, da kann ich über den Timer die 
Impulsbreite z.B. 1µs bei einer Periodendauer von 10µs einstellen, oder 
den Pin einfach auf high schalten.

Um alles aus der Schaltung raus zu holen, bräuchte ich allerdings einen 
ca. 10ns Impuls (tr,tf=1ns) bei 3,3V. Das dürfte der Timer nicht mehr 
schaffen.

Wenn ich da einen VCO nehme und den mit einem Schmidt Tricker auf 
Rechteck "umwandle" habe ich ja keinen Impuls. Das sollte die Schaltung 
auch noch können. Also z.B. Ton=50ns PW=100ns.

Meine Idee wäre jetzt, ich erzeuge einen 15ns Impuls und lass ein Stück 
weg filtern und ein Komperator etc. bereitet es wieder auf. Dieser 
Filter müsste dann per µC zuschaltbar sein.

Eine Lösung für FPGA oder MCU wäre super. Kennt jmd eine MCU von STM mit 
einem IO-Takt von >100MHz bzw, dass ein Timer >100MHz auf den Pin legen 
kann.

Ich bedanke mich schon mal
Gast #3986675
Lesenswert?

Sprungfunktion schrieb:
> Kennt jmd eine MCU von STM mit
> einem IO-Takt von >100MHz bzw, dass ein Timer >100MHz auf den Pin legen
> kann.

Abhängig vom Anwendungsfall könnte man einen STM32F4xxx nehmen. Die 
..407 laufen typisch mit 168 MHz und die ..427 mit 180 MHz.
An anderer Stelle gab es Berichte, daß es möglich sei, die µCs ein wenig 
zu übertakten, wenn man die wait-states fürs Flash höher einstellt.

Mit ein wenig Mut könntest Du einen dieser Kandidaten mit 200 MHz laufen 
lassen und hättest 5 ns Auflösung für die Timer.
Wie gesagt, es hängt von Deiner Anwendung ab.
Gast #3986676
Lesenswert?

Muss es genau 10ns sein? Wenn nicht, kann man das mit TTL Gattern recht 
einfach realisieren, indem man deren Signal-Laufzeiten ausnutzt. Im 
Prinzip so:
1
                               _____
2
100kHz Takt o---+-------------|     |
3
                |   ___       | AND |----o Ausgang Nadelimpulse
4
                +--| 1 |o-----|_____|
5
                   |___|

Ich hatte diese Schaltung mal genutzt, um Reflexionen in defekten 
Koax-Kabeln auszumessen.
Moderator (Firma: Titel) Persönliche Seite #3986694
Lesenswert?

Sprungfunktion schrieb:
> Um alles aus der Schaltung raus zu holen, bräuchte ich allerdings einen
> ca. 10ns Impuls (tr,tf=1ns) bei 3,3V. Das dürfte der Timer nicht mehr
> schaffen.
Ob du so ein Flanke hinbekommst, hängt zuallererst vom Layout ab. Denn 
für eine "halbwegs saubere" 1ns-Flanke brauchst du Oberwellen bis 
5GHz...

> mit einem Schmidt Tricker
Mit was?

> Um alles aus der Schaltung raus zu holen, bräuchte ich allerdings einen
> ca. 10ns Impuls (tr,tf=1ns) bei 3,3V. Das dürfte der Timer nicht mehr
> schaffen.
Wie oft brauchst du diesen Impuls?
Gast #3986714
Lesenswert?

@m.n. Mit dem 407 hab ich schon einiges gemacht, aber ist da nur der 
Core Takt so hoch und der IO-Takt liegt deutlich drunter? Wobei im Clock 
Tree würde der APBx timer clocks mit SYSCLK laufen können.

@stefan us die Idee ist super, so etwas könnte funktionieren.


@Lothar Miller habe ich vergessen sry. Die nachfolgende Schaltung kann 
momentan nur ca. Ton=10ns PW=30ns. Die Impulse sollen dann periodisch 
kommen. Also der 10ns Impuls z.B. alle 30ns.
#3986715
Lesenswert?

Sprungfunktion schrieb:
> Um alles aus der Schaltung raus zu holen, bräuchte ich allerdings einen
> ca. 10ns Impuls (tr,tf=1ns) bei 3,3V. Das dürfte der Timer nicht mehr
> schaffen.

Solche Pulse macht nicht mal der Pin selber mit. Bei einem normalen µC 
Pin hast Du schon eher 10ns tr und tf wegen RdsOn der Ausgangs-FETs und 
des parasitären C.
Moderator (Firma: Titel) Persönliche Seite #3986759
Lesenswert?

Sprungfunktion schrieb:
> Also sowohl Impulsbreite als auch der Tastgrad sollte eigentlich frei
> einstellbar sein. Wobei die 10/30ns das Minimum wären und Dauerbetrieb
> das Maximum.
Nimm ein FPGA oder eher noch ein CPLD. Aber 1ns ist da immer noch zu 
eng.
Du wirst eher noch einen speziellen Clock-Buffer dafür einsetzen 
müssen...
https://www.google.de/search?q=Clock-Buffer+tr+tf
Gast #3986761
Lesenswert?

Sprungfunktion schrieb:
> Meine Idee wäre jetzt, ich erzeuge einen 15ns Impuls und lass ein Stück
> weg filtern und ein Komperator etc. bereitet es wieder auf.

Och nö. Wenn der 10ns Impuls zu kurz ist, um per Ausgangspin erzeugt zu 
werden, dann erzeuge den Impuls durch ein Mono-Flop. Wenn die 10ns nicht 
so genau sein müssen, kann es die Durchlaufzeit eines Gatters sein, 
siehe Schaltung von Stefan us.
Genauere 10ns gibt es durch Delay-Schaltkreise wie CDKD5005 oder 
DS1100L-100 (3.3V)

Sprungfunktion schrieb:
> mit einem Schmidt Tricker

Och nöööööö.
#3986783
Lesenswert?

man kann doch die Gatterlaufzeit nutzen und eine Flanke auf einen Pin 
eines XOR mit 2 Eingängen geben und das verzögerte um die Gatterlaufzeit 
auf den anderen XOR Eingang geben, ergibt einen Peak mit der Breite der 
Gatterlaufzeit der Verzögerung. Habe ich früher zur Verdopplung vom 8 
MHz Systemtakt eines Floppy Controllers zum Betrieb für HD Disketten 
gemacht.

74/54er Gatter im ns Tempo gibts ja einige von AHC(T) bis F, ich denke 
da muss man noch nicht mal auf ECL ausweichen.
Gast #3986817
Lesenswert?

MaWin schrieb:
> Na klasse, und so was kommt als Salamischeibe nach dem 10. Beitrag.

Ging es Dir noch nie so, dass du gewisse Parameter für Dich selbst so 
klar sind, dass man sie nicht aufschreibt. Besonders, wenn man sich 
mehrere Monate mit einem Projekt beschäftigt? Ich habe mir den ersten 
Post durchgelesen und es stimmt, die Angabe fehlt, habe sie aber nach 30 
Min, als es zu Unklarheiten kam, sofort nachgereicht. Wenn ich so 
Perfekt wäre, bräuchte ich das MK.net-Board auch nicht.
Gast #3986825
Lesenswert?

@isidor Das Signal sieht gut aus. Danke!

Während der Flanke erzeugt die nachfolgende Schaltung Verlustleistung. 
Die 1ns sind nicht zu 100% Fix, damit hat es nur gut Funktioniert (mit 
einem Funktionsgenerator).

Am Ende muss es realistisch funktionieren, also dann mit weniger 
Leistung und schneller oder eben mehr Leistung und im 100ns Bereich. Ich 
will nur Ideen sammeln, mit welchen Methoden ich welche Ergebnisse 
bekomme, bzw. welcher Ansatz sich lohnt weiter zu verfolgen.
Gast #3986845
Lesenswert?

Sprungfunktion schrieb:
> Während der Flanke erzeugt die nachfolgende Schaltung Verlustleistung.

Da wage ich mal zu behaupten dass jede nachfolgende Schaltung die
du mit einen handelsüblichen schellen (LVC-) Gatter steuerst,
deutlich langsamer ist und schon deshalb in den Schaltflanken
Leistung verbraucht, aber nicht weil das ansteuernde Gatter zu
lange Anstiegs- oder Abfallzeiten hat.
Gast #3986847
Lesenswert?

http://s7.images.keysight.com/is/image/Keysight/COLL-1000000193.epsg.pgr-HI?wid=1410

Der ganz rechts. Die genaue Ausführung hab ich gerade nicht da, da ich 
nicht im Labor bin. Ein Kollege hat den BERT für nen 10GBit Test 
eingesetzt, das ist so die Grenze in der aktuellen Konfiguration. Nutzen 
den hauptsächlich für 1GBit Geschichten, da muss das Ding < 2 ns Impulse 
ausgeben. Die 1ns habe ich selbst nicht gemessen, aber lt. Kollegen 
packt er die. Und ich denke Conrad hat den nicht.
Gast #3986947
Lesenswert?

m.n. schrieb:
> Vermutlich meinst Du die APB2 Frequenz. Das ist aber nicht die
> Taktfrequenz für die Timer.

Hallo m.n.,
Was ich meine, ist, dass selbst wenn die Timer schneller laufen, Du die 
Pins zum erzeugen des Impulses trotzdem nur mit max. 84MHz toggeln 
kannst. Fuer die oben angefragten Pulse bedeutet das dann t_on = 1 / 
(84MHz / 2) ~ 24ns was schon etwas von den geforderten 10ns weg ist.
Gast #3987064
Lesenswert?

ul5255 schrieb:
> Hallo m.n.,
> Was ich meine, ist, dass selbst wenn die Timer schneller laufen, Du die
> Pins zum erzeugen des Impulses trotzdem nur mit max. 84MHz toggeln
> kannst.

Ich brauche etwas Nachhilfe: Wo steht das?
Wenn Du 84 MHz als max. Ausgabefrequenz meinst, dann sind es 5,95 ns für 
'1' und 5,95 ns für '0'.
Ich rede vom STM32F407 und seinen Timern 1, 8, 9, 10 und 11, die ohne 
Übertaktung mit 168 MHz laufen können.
Gast #3987430
Lesenswert?

Ich bedanke mich erst einmal für die neuen Antworten. Ich werde mir die 
Chips anschauen, wobei ich gerne bei ARM bleiben würde.

Bei einem alten Projekt habe ich den STM32F407IG verbaut und hab da mal 
PWM auf vollgas laufen lassen.
Das Oszi ist nur ein altes Tektronix 100MHz, was besseres habe ich hier 
nicht rumstehen. Tastkopf ist abgeglichen, aber das Signal geht über ne 
Pfostenleiste nach außen.

Ich werde wohl die nächsten Wochen ein paar Möglichkeiten durch 
probieren und vll. einen Wikiartikel über das gesamte Projekt schreiben. 
(sobald ich darf) Das dürfte einige interessieren.

Jedenfalls Danke an alle, die konstruktiv mit geholfen haben, wenn jmd 
noch eine Idee hat, bitte posten.
Angehängte Dateien:
Gast #3987607
Lesenswert?

m.n. schrieb:
> Sprungfunktion schrieb:
>> Bei einem alten Projekt habe ich den STM32F407IG verbaut und hab da mal
>> PWM auf vollgas laufen lassen.
>
> Der Impuls ist genau 5,95 ns lang.
> Das ist doch ganz deutlich zu sehen ;-)

Laut Cube MX/Datenblatt läuft auch der Timer mit 168MHz. Dann beziehen 
sich die ~80MHz nur auf GPIO. Rechteck sieht zwar anders aus, da muss 
ich die Verluste bzw. Tj mal genauer untersuchen.

Da bietet sich vll auch die Cortex-M7 an, da steht es sogar im 
Datenblatt, Max timer clock 200 MHz. Da könnte ich einiges an Layout und 
Code übernehmen.
Gast #3987757
Lesenswert?

Sprungfunktion schrieb:
> Da bietet sich vll auch die Cortex-M7 an, da steht es sogar im
> Datenblatt, Max timer clock 200 MHz. Da könnte ich einiges an Layout und
> Code übernehmen.

Geh das mal besser pragmatisch an und lass den 407 mit 100 MHz laufen. 
Damit bekommst Du genau Deine 10 ns Auflösung.

Den M7 würde ich nicht nehmen. Nächstes Jahr kommt der M8 mit 500 MHz 
und 2017 schon der M9 mit 1 GHz ... und viel billiger und in China und 
überhaupt.
Gast #3987788
Lesenswert?

uwe schrieb:
> DSPPics können:
> 1 nS duty cycle resolution PWM
> http://www.microchip.com/pagehandler/en-us/family/...

Obacht.... wir hatten einen Hardwarebug in der F-Serie gefunden und seit 
dem traue ich den Teilen nicht mehr sonderlich über den Weg.

Und 2 Chipfehler in einem Jahr bei dem selben Hersteller DSPIC und 
MCP1710) lassen uns nun einen weiten Bogen um den Laden machen wenn es 
um Neudesigns geht.

Grüße

MiWi
Gast #3987790
Lesenswert?

Naja die M7 ist kompatibel mit der M4. Beim vorherigen Projekt kam ich 
mit dem 407 an die Grenzen. StemWin ist zwar super (auch mit externen 
RAM) aber ohne 2D-DMA nur halb so schön. Der Speicherbus ist bei der 
vorgestellten M7 32Bit (bei der 427 auch). Bevor ich die 427 nehme, kann 
ich direkt die M7 nehmen. Wie die Anforderungen genau werden (10ns oder 
mehr oder weniger) stellt sich erst in den nächsten Monaten raus.

Aber was spricht gegen die M7? Klar für den Preis würde ich vermutlich 
auch die A20 bekommen. Mit Linux hätte ich Qt, Ethernet, Kernel, ...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren