DE102008009924B4 - Method for generating frequencies - Google Patents
Method for generating frequencies Download PDFInfo
- Publication number
- DE102008009924B4 DE102008009924B4 DE200810009924 DE102008009924A DE102008009924B4 DE 102008009924 B4 DE102008009924 B4 DE 102008009924B4 DE 200810009924 DE200810009924 DE 200810009924 DE 102008009924 A DE102008009924 A DE 102008009924A DE 102008009924 B4 DE102008009924 B4 DE 102008009924B4
- Authority
- DE
- Germany
- Prior art keywords
- counter
- clock
- frequency
- clocks
- frequencies
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/02—Digital function generators
- G06F1/03—Digital function generators working, at least partly, by table look-up
- G06F1/0321—Waveform generators, i.e. devices for generating periodical functions of time, e.g. direct digital synthesizers
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K23/00—Pulse counters comprising counting chains; Frequency dividers comprising counting chains
- H03K23/64—Pulse counters comprising counting chains; Frequency dividers comprising counting chains with a base or radix other than a power of two
- H03K23/72—Decade counters
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
- Manipulation Of Pulses (AREA)
Abstract
Der Patentanspruch erstreckt sich auf ein Verfahren zur Herstellung einstellbarer Frequenzen aus einem Ursprungstakt gekennzeichnet durch einen Zähler A der direkt am Ursprungstakt betrieben wird und eine Tabelle adressiert, die ein Takttor für einen Zähler B steuert, und einen Zähler B, der die durch das Takttor getorten Takte zählt, wobei die gewünschte Frequenz im Zähler B entsteht und abgegriffen werden kann.The claim extends to a method for producing adjustable frequencies from an original clock, characterized by a counter A which is operated directly at the original clock and addresses a table which controls a clock gate for a counter B, and a counter B which gates through the clock gate Clocks counts, whereby the desired frequency arises in counter B and can be tapped.
Description
1. Einleitung1 Introduction
Häufig steht man vor dem Problem, aus einer festen Bezugsfrequenz eine einstellbare Frequenz herstellen zu müssen. Often one faces the problem of having to establish an adjustable frequency from a fixed reference frequency.
Stand der Technik ist schon seit langer Zeit die Zusammenschaltung eines Zählers und eines Funktionsgenerators oder Speichers. Anordnungen dieser Art wurden unter anderem in den Patentschriften
Das Patent
Bekannte Lösungen dieses Problems sind PLL-Schleifen und auch die DDS. Die PLL hat den Nachteil, daß analoge Regelschleifen erforderlich sind, deren Einschwingen und Stabilität die Eigenschaften des Gesamtsystems PLL wesentlich beeinflussen. Dadurch sind Frequenzänderungen immer problematisch, wenn auch der Frequenzübergang fest vorgegeben ist. Diese Nachteile hat die DDS nicht. Die DDS ist allerdings recht aufwendig, es sind breite und schnelle Addierschaltungen notwendig, und die bekannten Schaltkreise, in denen eine DDS integriert ist, erzeugen maximal 12 Bit genaue Sinusschwingungen.Known solutions to this problem are PLL loops and also the DDS. The PLL has the disadvantage that analog control loops are required whose transient response and stability significantly affect the properties of the overall system PLL. As a result, frequency changes are always problematic, even if the frequency transition is fixed. These disadvantages do not have the DDS. However, the DDS is quite expensive, wide and fast adder circuits are necessary, and the known circuits in which a DDS is integrated produce a maximum of 12-bit sinusoidal oscillations.
Diese Nachteile hat die hier vorgestellte Lösung nicht. In einem Anwendungsfall wurde ein einstellbarer Sinusgenerator mit 16 Bit Genauigkeit für den Frequenzbereich von 0,1 Hz bis 10 kHz mit 2 ROM's, einem GAL, in dem weniger als 64 Makrozellen belegt wurden, einem 40 MHz-Quarzgenerator und einem Digital/Analog-Umsetzer realisiert. Das dazu notwendige Verfahren soll hier erläutert und geschützt werden.These disadvantages do not have the solution presented here. In one application, an adjustable sinusoidal generator with 16 bit accuracy for the frequency range of 0.1 Hz to 10 kHz with 2 ROMs, a GAL in which less than 64 macrocells were occupied, a 40 MHz quartz generator and a digital / analog converter realized. The necessary procedure should be explained and protected here.
2. Beschreibung – Erläuterung des Verfahrens2. Description - Explanation of the procedure
Dieses Verfahren zur Frequenzsynthese benötigt einen Urtaktgenerator, einen Zähler A, einen Zähler B, einen Tabellensatz und ein Takttor. Der Zähler A zählt Urtakte und erzeugt damit Adressen für den Tabellensatz. Jede Tabelle des Tabellensatzes hat so viel Werte, wie der Zähler A adressieren kann. Aus einer Tabelle des Tabellensatzes werden die adressierten Werte ausgelesen. Mit diesen Werten wird das Takttor geschaltet. Das bedeutet, in der Tabelle steht, ob der Urtakt vom Takttor an den Zähler B weitergegeben wird oder nicht. Mit dem Zähler B werden diese getorten Urtakte gezählt. Am Ausgang des Zählers B steht die gewünschte Frequenz zur Verfügung. An den Ausgang des Zählers B kann man auch eine Funktionstabelle anschließen und auf diese Weise beliebige Funktionen generieren. Auf Grund der Funktionsweise würde man dieses Verfahren tabellenorientierte Frequenzsynthese (TFS) taufen. Die zur Durchführung des Verfahrens notwendige Struktur ist in der
Für verschiedene Frequenzen sind im allgemeinen verschiedene Tabellen erforderlich. Um die Anzahl der erforderlichen Tabellen zu begrenzen, ist es sinnvoll, in den Tabellen nur eine Variation von 1:2 abzulegen, und alles andere über Veränderungen im Zähler B zu steuern. Diese Veränderungen im Zähler B kann beispielsweise das Hinzufügen von weiteren Zähleneilen oder die Veränderung des Zählumfangs zur weiteren Herabsetzung der Ausgabefrequenz sein. Es ist auch möglich, im Urtakt noch zuschaltbare Vorteiler zu realisieren, um die Variabilität der Ausgabefrequenz zu erhöhen. Durch relativ lange Tabellen und definierte (ungleichmäßige) Verteilung der Takte in der Tabelle, ist es auch möglich, bestimmte Modulationen der Ausgabefrequenz zu erreichen. Das Prinzip läßt sich auch kaskadieren.Different frequencies generally require different tables. In order to limit the number of required tables, it makes sense to place only a variation of 1: 2 in the tables, and to control everything else about changes in counter B. These changes in counter B may be, for example, the addition of further counts or the change of count to further reduce the output frequency. It is also possible to realize switchable preservers in the original clock in order to increase the variability of the output frequency. Due to relatively long tables and defined (uneven) distribution of the clocks in the table, it is also possible to achieve certain modulations of the output frequency. The principle can also be cascaded.
3. Beschreibung – mathematische Betrachtung des Verfahrens3. Description - mathematical consideration of the procedure
In diesem Verfahren erfolgt mit einer Tabelle eine Taktumsetzung. In einem Zeitintervall, vorgegeben durch den Zähler A werden nur die durch die Tabelle getorten Takte an den Zähler B weitergegeben. Dadurch erhält der Zähler B im gleichen Zeitintervall weniger (maximal genau so viel) Takte und es entsteht am Zähler B ein Takt, der in einem rationalen Verhältnis zum Urtakt steht. Die erzeugte Frequenz ergibt sich aus folgender Gleichung:
Es lassen sich alle Vielfachen der Frequenz Urtakt/(Zählumfang A·Zählumfang B) erzeugen. Durch geeignete Wahl des Urtaktes und der Zählerumfänge von Zähler A und Zähler B kann eine für die Anwendung geeignete Rasterung der einstellbaren Frequenzen erzeugt werdenAll multiples of the frequency Urtakt / (count A · count B) can be generated. By suitable choice of the Urtaktes and the counter scopes of counter A and counter B suitable for the application screening of the adjustable frequencies can be generated
Nachteil aller digitalen Verfahren zur Frequenzsynthese ist ein Phasenjittern. Dieses Phasenjittern tritt auch bei diesem Verfahren auf, läßt sich aber effektiv unterdrücken, wenn man bestimmte Entwurfsrichtlinien beachtet. Da der Zähler B wesentlich in die Unterdrückung des Phasenjittern eingeht, sollte der Zählumfang des Zählers B mindestens der maximalen Anzahl der Takte in der Takttabelle entsprechen. Es ist nicht sinnvoll den Zähler B zu klein zu gestalten, da sonst nicht nur die Phase sondern auch die Ausgangsfrequenz jittert und immer um den Sollwert herumpendelt. Wenn der Zählumfang des Zählers B der maximalen Taktzahl aus der Tabelle oder sogar Vielfachen davon entspricht, dann werden exakte stabile Frequenzen generiert, die nur ein Phasenjittern haben, welches im Rahmen der zeitlichen Auflösung des Urtaktes liegt. Daraus geht schon hervor, daß der Urtakt möglichst hoch und auch stabil sein sollte.Disadvantage of all digital methods for frequency synthesis is a phase jitter. This phase jitter also occurs in this method, but can be effectively suppressed if one observes certain design guidelines. Since the counter B substantially contributes to the suppression of the phase jitter, the count amount of the counter B should be at least equal to the maximum number of clocks in the clock table. It makes no sense to make the counter B too small, otherwise not only the phase but also the output frequency jitters and always umump around the setpoint. If the count of the counter B corresponds to the maximum number of cycles in the table or even multiples thereof, then exact stable frequencies are generated which have only one phase jitter, which is within the temporal resolution of the original clock. It is clear from this that the original beat should be as high as possible and stable.
Wichtig ist, daß nicht nur die Anzahl der getorten Takte in der Takttabelle korrekt ist, sondern die Takte auch gleichmäßig in der Takttabelle verteilt sind, damit das Phasenjittern möglichst gering ist. Deshalb ist es sinnvoll, diese Takttabellen mit einem geeigneten Programm zu erzeugen. Dadurch, daß die erzeugte Frequenz zumeist deutlich unter dem Urtakt liegt, läßt sich das Phasenjittern sehr einfach durch Filterung beseitigen. Bei korrekter Erzeugung der Takttabellen liegt das Phasenjittern unter einer halben Periodenlänge des Urtaktes.It is important that not only the number of clocked clocks in the clock table is correct, but the clocks are also evenly distributed in the clock table, so that the Phasenjittern is as low as possible. Therefore, it makes sense to create these clock tables with a suitable program. The fact that the frequency generated is usually well below the Urtakt, the phase jitter can be very easily eliminated by filtering. With correct generation of the clock tables, the phase jitter is less than half a period length of the original clock.
4. Beschreibung – Beispiel4. Description - Example
In diesem Beispiel soll ein einfacher einstellbarer Sinusgenerator für Frequenzen zwischen 0,1 Hz und 10 kHz vorgestellt werden. Die Amplitude soll 16 Bit genau, die Phase soll in jedem Fall besser als 0,1% genau sein, die Frequenz soll auf 0,1% genau einstellbar sein. Der Ausgangstakt dafür wird mit einem gewöhnlichen 40 MHz Quarzgenerator hergestellt. Der Zähler A hat einen Zählumfang von 4000, dementsprechend hat jede Takttabelle 4000 Werte (500 Byte). Es sollen aus der Takttabelle zwischen 1000 und 2000 Taktflanken (500 bis 1000 Takte) erzeugt werden. Dazu wurden 1000 Takttabellen je 4000 Werte (500 Byte) generiert und in einem ROM abgelegt. Damit lassen sich alle Frequenzen zwischen 5 kHz und 10 kHz auf 2,5 Hz genau einstellen, wobei Zähler B exakt jede durch 5 teilbare Frequenz liefert. Zähler B wird dabei meist (ohne Vorteiler) mit einer Frequenz zwischen 5 MHz und 10 MHz betrieben. Der Zähler B hat einen variablen Zählumfang zwischen 1000 und 100000, je nach Frequenz, die eingestellt werden soll. Bei einer Ausgabefrequenz von 10 kHz ist der Zählumfang des Zählers B 1000, bei Frequenzen unter 100 Hz ist der Zählumfang des Zählers B 100000, unter 50 Hz werden Vorteiler vor Teller B eingefügt.In this example, a simple adjustable sine wave generator for frequencies between 0.1 Hz and 10 kHz will be presented. The amplitude should be 16 bit accurate, the phase should in any case be better than 0.1% accurate, the frequency should be precisely adjustable to 0.1%. The output clock for this is made with a standard 40 MHz quartz generator. The counter A has a count of 4000, accordingly each clock table has 4000 values (500 bytes). It should be generated from the clock table between 1000 and 2000 clock edges (500 to 1000 clocks). For this purpose, 1000 clock tables per 4000 values (500 bytes) were generated and stored in a ROM. With this, all frequencies between 5 kHz and 10 kHz can be set exactly to 2.5 Hz, with counter B delivering exactly every frequency divisible by 5. Counter B is usually operated (without prescaler) with a frequency between 5 MHz and 10 MHz. The counter B has a variable count between 1000 and 100000, depending on the frequency to be set. At an output frequency of 10 kHz, the count of the counter B is 1000, at frequencies below 100 Hz, the count of the counter B is 100000, below 50 Hz prescaler are inserted in front of plate B.
Zur Erzeugung der Sinusform der Ausgabefrequenz sind Sinustabellen in einem ROM gespeichert. Dieses ROM wird durch Zähler B adressiert. An dem ROM mit der Funktionstabelle angeschlossen ist ein D/A-Umsetzer, dort wird die Sinus kurve generiert.To generate the sinusoidal shape of the output frequency, sine tables are stored in a ROM. This ROM is addressed by counter B. Connected to the ROM with the function table is a D / A converter, where the sinusoidal curve is generated.
Bei 10 kHz besteht eine Sinuskurve aus 1000 Werten, die Anzahl der Werte steigt an, bis ab 100 Hz der Sinus aus 100000 Werten besteht. Durch geschicktes Strukturieren des Zählers B war es nur notwendig 3 Funktionstabellen im ROM abzulegen, insgesamt deutlich weniger als 256 kWorte.At 10 kHz, a sine curve consists of 1000 values, the number of values increases until at 100 Hz the sine consists of 100000 values. By clever structuring of the counter B, it was only necessary to store 3 function tables in the ROM, a total of significantly less than 256 kWorte.
Die gesamte Logik des Generators (Zähler A, Takttor, Zähler B, Vorteiler, Hilfsfunktionen wie Register, Parallel/Seriell-Wandlung der Bytes des ROM's der Takttabelle) wurde in einem GAL programmiert, dabei wurden weniger als 64 Makrozellen benötigt. Das ROM der Takttabelle benötigt nur eine Zugriffszeit von 200 ns, das ROM der Sinustabelle benötigt eine Zugriffszeit von 100 ns. Moderne EPROM's, FLASHROM's oder auch RAM's erfüllen diese Forderung problemlos. Die Prinzipdarstellung ist in
Das Jittern der Ausgabefrequenz beträgt ±12,5 ns bei dem verwendeten 40 MHz Takt, das liegt so weit entfernt von der Nutzbandbreite entfernt, so daß sich dieses Jittern mit einfachen Mitteln sehr leicht wegfiltern läßt.The jitter of the output frequency is ± 12.5 ns at the used 40 MHz clock, which is so far away from the useful bandwidth, so that this jitter can be easily filtered away with simple means.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE200810009924 DE102008009924B4 (en) | 2008-02-15 | 2008-02-15 | Method for generating frequencies |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE200810009924 DE102008009924B4 (en) | 2008-02-15 | 2008-02-15 | Method for generating frequencies |
Publications (2)
Publication Number | Publication Date |
---|---|
DE102008009924A1 DE102008009924A1 (en) | 2009-08-27 |
DE102008009924B4 true DE102008009924B4 (en) | 2014-10-30 |
Family
ID=40896522
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE200810009924 Expired - Fee Related DE102008009924B4 (en) | 2008-02-15 | 2008-02-15 | Method for generating frequencies |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102008009924B4 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3105911A (en) * | 1959-12-02 | 1963-10-01 | Vector Mfg Company | Solid state electronic commutator |
US3110802A (en) * | 1957-08-03 | 1963-11-12 | Emi Ltd | Electrical function generators |
DE3841431A1 (en) * | 1988-12-06 | 1990-06-07 | Krone Ag | Circuit arrangement for a digitally adjustable frequency generation |
DE3888421T2 (en) * | 1987-07-31 | 1994-08-04 | Advantest Corp | Device for generating a pseudo-random pattern. |
DE69624952T2 (en) * | 1996-01-09 | 2003-08-28 | Sanyo Electric Co., Ltd. | Adjustable frequency divider |
US20040000939A1 (en) * | 2002-05-14 | 2004-01-01 | Tetsumasa Meguro | Clock generation circuit and clock conversion circuit |
DE60002426T2 (en) * | 1999-09-24 | 2004-03-18 | Mentor Graphics Corp., Wilsonville | CLOCK GENERATION AND DISTRIBUTION IN AN EMULATION SYSTEM |
-
2008
- 2008-02-15 DE DE200810009924 patent/DE102008009924B4/en not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3110802A (en) * | 1957-08-03 | 1963-11-12 | Emi Ltd | Electrical function generators |
US3105911A (en) * | 1959-12-02 | 1963-10-01 | Vector Mfg Company | Solid state electronic commutator |
DE3888421T2 (en) * | 1987-07-31 | 1994-08-04 | Advantest Corp | Device for generating a pseudo-random pattern. |
DE3841431A1 (en) * | 1988-12-06 | 1990-06-07 | Krone Ag | Circuit arrangement for a digitally adjustable frequency generation |
DE69624952T2 (en) * | 1996-01-09 | 2003-08-28 | Sanyo Electric Co., Ltd. | Adjustable frequency divider |
DE60002426T2 (en) * | 1999-09-24 | 2004-03-18 | Mentor Graphics Corp., Wilsonville | CLOCK GENERATION AND DISTRIBUTION IN AN EMULATION SYSTEM |
US20040000939A1 (en) * | 2002-05-14 | 2004-01-01 | Tetsumasa Meguro | Clock generation circuit and clock conversion circuit |
Also Published As
Publication number | Publication date |
---|---|
DE102008009924A1 (en) | 2009-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60002426T2 (en) | CLOCK GENERATION AND DISTRIBUTION IN AN EMULATION SYSTEM | |
DE2541163C2 (en) | Arrangement for determining the phase difference | |
DE10029335B4 (en) | Circuit and method for synchronous data sampling | |
EP2329356A1 (en) | Apparatus and method for generating a random bit sequence | |
DE10392225T5 (en) | Tester | |
DE10249886A1 (en) | Method and device for generating a clock signal with predetermined clock signal properties | |
DE102011007226A1 (en) | Suppression of low frequency noise from a phase detector in a phase control loop | |
DE10206249A1 (en) | Method for generating test signals for an integrated circuit and test logic | |
DE69803584T2 (en) | SEEDS | |
DE102008009924B4 (en) | Method for generating frequencies | |
DE60314301T2 (en) | frequency | |
DE69611324T2 (en) | Direct digital synthesizer | |
DE102013100690A1 (en) | Systems and methods for improving the timing of a local oscillator of a 25% duty cycle switching mixer | |
DE711591C (en) | Circuit arrangement for frequency division with electron tubes that are connected as blocking oscillators or belong to multivibrators | |
DE102007043340B4 (en) | Increase the PWM resolution through modulation | |
EP0479265A2 (en) | Controllable frequency generator | |
DE102005053486B4 (en) | Circuit arrangement for generating an n-bit output pointer, semiconductor memory and method | |
DE2145085A1 (en) | Inverter | |
DE2529448C2 (en) | Circuit arrangement for converting NRZ signals into RZ signals, in particular for synchronous time division multiplexing | |
DE2800542B2 (en) | Electrical circuit arrangement for generating a noise effect | |
DE102012215995B3 (en) | Circuit for controllably delaying input signal with confocal microscope used for examining object, has converter which outputs the values to shift register corresponding to specific lines such that the output signal is outputted | |
DE10147643A1 (en) | Multiplexer cell and multiplexer circuit arrangement | |
DE2916765C2 (en) | ||
DE3436926C2 (en) | Frequency generator with digital frequency setting | |
DE930875C (en) | Frequency multiplier with two multivibrators |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
R016 | Response to examination communication | ||
R016 | Response to examination communication | ||
R016 | Response to examination communication | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division | ||
R020 | Patent grant now final | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |