TU BS


Kartei Details

Karten 44
Sprache Deutsch
Kategorie Elektrotechnik
Stufe Universität
Erstellt / Aktualisiert 01.08.2015 / 04.08.2019
Weblink
https://card2brain.ch/box/digitale_messdatenverarbeitung_mit_mikrorechnern
Einbinden
<iframe src="https://card2brain.ch/box/digitale_messdatenverarbeitung_mit_mikrorechnern/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Welche Eigenschaften unterscheiden Mikrocontroller?

Nennen Sie mindestens 8 und beschreiben Sie sie.

  • Datenbusbreite: (8,16,32,64 Bit)
    • Gibt an, wieviel Bits in einem Zyklus über den Datenbus geschickt werden können
  • Taktfrequenzen (8-40MHz, aber auch GHz möglich)
    • Je schneller der µC, desto mehr Rechenleistung hat er
    • Stromsparfunktionen
  • Rechenleistung (MIPS):
    • Million instructions per second (pro MHz Takt)
  • Menge integrierter Speicher:
    • RAM (wenige kB)
    • EE-Prom, Flash
  • Befehlssatz
    • RISC: (Reduced instruction set computing) Jeder Befehl braucht nur einen Takt. (Takt skaliert automatisch Programmgeschwindigkeit)
    • CISC (Complex instruction set computing) Beinhaltet komplexere Befehle, die mehrere Takte pro Befehl brauchen. Über Pipelining (parallele Verarbeitung) kann die Ausführung eines Befehls in einem Takt erreicht werden.
  • Prozessorarchitektur:
    • von Neumann: Programm und Daten werden über denselben Bus übertragen
    • Harvard: Programm und Daten haben getrennte Busse
  • Anzahl I/O´s (Integrationsdichte):
    • Menge interner I/O´s
    • Anzahl A/D-Wandler (Auflösung)
    • Anzahl D/A-Wandler / PWM
    • externe Erweiterungsschnittstellen: SPI, TWI, CAN, USART
  • Versorgungsspannung 
  • Bauform: (SMD, DIP)

Welche Prozessorarchitekturen gibt es und wie unterscheiden sie sich?

  • RISC (Reduced instruction set computing)
    • Weniger Befehle, aber jeder Befehl kann in einem Takt bearbeitet werden 
  • CISC (Complex instruction set computing)
    • Größerer Befehlssatz mit komplexeren Befehlen, die nicht in einem Takt abgearbeitet werden können.
    • Durch Pipelining (parallelverarbeitung) kann die Ausführung eines komplexen Befehls in einem Takt erreicht werden

Zeichnen Sie das Blockschaltbild eines Mikrocontrollers mit allen wesentlichen integrierten Komponenten

  • µP:
    • Operationswerk
    • Steuerwerk
    • Registerwerk
  • I/O-Interface mit A/D, D/A
  • Timer/Zähler
  • Speicher

 

  • externe I/O
  • Display
  • ext. Speicher

Welche Schnittstellen zu externen Komponenten gibt es?

  • USART (Universal Synchronous Asynchronous Receiver Transmitter)
  • TWI (I^2C)
  • SPI
  • JTAG

weitere Busse je nach µC:

  • CAN
  • LIN
  • USB
  • ...

Was sind die char. Merkmale von USART (Universal Synchronous Asynchronous Receiver Transmitter)?

  • Programmierbare Baudrate
  • versch. Datenformate möglich
  • voll Duplexfähig (gleichzeitiges Senden und Empfangen)
  • Übertragung synchron oder asynchron
  • digitale Filter zur Signalaufbereitung
  • Multiprozessorkommunikation (Komm. zweier ATmegas untereinander, ATmega<->PC)
  • Anschluss an den Datenbus des µC

Was sind die char. Merkmale des TWI-Busses (Two-Wire-Interface) bzw. I^2C (Inter-IC-Bus)?

  • bidirektional, seriell
  • nur 2 Leitungen + Massse (PIN0 = Takt, PIN1 = Datenein- und ausgang)
  • max. 400kBaud
  • Für Steuer- und Statussignale (Joysticks, Tastaturen etc.)
  • Zur Kommunikation zwischen Mikrocontroller-Bausteinen

Was sind die char. Merkmale von SPI (serial peripheral interface bus)

  • Master/Slave-Organisation
  • 3 Anschlüsse:
    • SDO (Serial Data Out)
    • SDI (Serial Data In)
    • Serial Clock (sclk)
  • Auswahl des Slaves über SS-Leitung (Slave-Select)
  • Protokoll nicht definiert
  • sehr schnell, bis mehrere MHz
  • große Auswahl an Erweiterungs-Chips (Infrarot-Umsetzer, LCD-Controller, Ein-Ausgabe (Schiftregister, A/D-Wandler)

Wofür steht JTAG und wozu dient er?

JTAG =  Joint Test Action Group

  • Dient dem Debugging von Mikrocontrollern
  • genormt durch BSDL (Boundary Scan Description Language)
  • serielle Schnittstelle:
    • TDI (Test Data In)
    • TDO (Test Data Out) 

Wie sieht das Blockschaltbild des ATMega 32 aus?

wesentlich:

  • CPU
  • Clock/Watchdog + Interrupt + Quarz
  • Timer/Counter
  • A/D
  • SPI
  • Komparator
  • USART
  • PORTS

Wie sieht die SRAM-Organisation im ATmega 32 aus?

Wie lang ist ein Register, wieviele gibt es und wozu dienen sie?

  • 32 Byte General Purpose Register (R0-R31)
    • je 1 Byte
    • R0-R15 zur freien Verfügung
    • R16-R23 zur freien Verfügung, aber für bestimmte Befehle wichtig
    • R24, R25 freies 16-Bit Register, z.B. für 16-Bit Counter
    • letzten 6 Register werden als x,y,z-Register bezeichnet (kombinierte 16-Bit Register) und dienen der indirekten Adressierung des SRAM
  • I/O-Register (64 Byte)
    • Status-Register der ALU
    • Register zum Konfigurieren der I/O´s (Data Direction etc)
    • Register zum Konfigurieren von Interrupts
    • Stack-Pointer
  • frei verfügbarer SRAM (Datenspeicher)
    • muss über x,y,z-Register adressiert werden, da 16-Bit-Adressen

Welche Busse verbinden die einzelnen Komponenten des Mikrocontrollers?

  • einzelne Komponenten sind über den Datenbus angebunden
    • von Neumann: (Daten aus RAM und Programm aus EE-PROM über denselben Bus)
    • Harvard: (getrennte Busse für Daten und Programm)
  • Steuer-Bus ist für die Buszuteilung verantwortlich
  • Adressierung von Speicherplätzen geschieht über Adressbus

Was sind die Standard-Erweiterungsschnittstellen des ATmega 32?

  • USART (für die Kommunikation µC/PC oder ähnlichem)
  • SPI (schneller Bus zur Anbindung von Erweiterungschips, kein genormtes Protokoll)
  • TWI (wie SPI jedoch langsamer)

Zeichnen und beschreiben Sie die Organisation des FLASH im ATmega 32.

Wie lang ist ein Befehl in Maschinensprache?

Aus wievielen Befehlszeilen kann ein Programm im ATmega 32 max. bestehen?

  • Eine Befehlszeile ist 16-Bit breit.
    • Op-Code umfasst 11-Bit
    • Restlichen 5 Bit adressieren Register mit dem gearbeitet werden soll
  • Die Speicheradresse des Flash muss vorher ins Z-Register (R30,31)->16-Bit geschrieben werden und wird dann mit "lpm" geladen.

Welche Vorteile hat die Programmierung mit Assembler?

+ minimale Programmlänge kann erreicht werden?

+ max. Geschwindigkeit wird erreicht

- es gibt keine Datentypüberprüfung

- Programm wird schnell übersichtlich, es existieren nur essentielle Befehle

Welche Programmelemente gibt es bei Assembler?

  • Befehle: Mnenomische Kürzel für Operationen
  • Operanden: Registernamen, Variablen, Konstanten
  • Label: Symbolische Adressmarken, z.B. main:
  • Deklarationen: Variablen, Konstanten
  • Operatoren: ADD, SUB, AND, NOT, OFFSET
  • Direktiven: Kommandos, die der Programmierer dem Assembler zur Speicherorganisation gibt. Sie werden nicht zu Programmcode sondern sind Anweisungen zum Assemblieren. Bsp: .INCLUDE "m32def.inc"

Wie ist ein Befehl in Assembler aufgebaut?

(Reihenfolge von Assembler-Elementen)

Schreibweise:

Label: OPcode, ZielOP, QuellOP ; Kommentar

Bsp:

.INCLUDE "m32def,inc" ; Assembler-Direktive lädt Konstanten

.DEF mp=R16 ; Assembler-Direktive: mp ist R16

RJMP main

main:   LDI mp, 0b11111111 ; Load immediate 255->mp

OUT DDRB, mp ; PORTB ist Ausgang

loop:    LDI mp, 0x00

OUT PORTB, mp

LDI mp, 0xFF

OUT PORTB, mp

RJMP loop

Mit welcher Direktive kann man Namen für Speicherplätze vergeben?

.DEF ; Beispiel: .DEF mp = R16 (Variable mp wird R16 zugewiesen)

Wozu lassen sich Interrupts verwenden?

Dank Interrupts kann

  • auf wichtige Ereignisse unmittelbar reagiert werden (zeitkritisch oder Benutzereingaben)
  • Äquidistante Aufrufe können realisiert werden (für Regelungen)
  • Die Ausgabe von PWM und analogen Signalen kann so realisiert werden
  • Timer und Counter können benutzt werden

Wie ist eine Interrupt-Routine aufgebaut?

  • Reaktion auf wichtiges Ereignis
  • Programmablauf wird unterbrochen und zu dem entsprechenden Interrupt-Vektor gesprungen
  1. Interrupt muss konfiguriert sein (Teiler-Verhältnis etc.)
  2. Interrupts müssen zugelassen werden
  3. Vor Interrupt muss der Status gerettet werden -> Stack einrichten
    1. .DEF Pointer = R16

      LDI Pointer, HIGH(RAMEND)

      OUT SPH, Pointer

      LDI Pointer, LOW(RAMEND)

      OUT SPL, Pointer

  4. Interrupt ausführen
  5. sich verändernde Register mit PUSH auf den Stack retten
  6. Stack wieder auflösen mit POP
  7. Interrupt mit RETI beenden, damit Interrupt-Enable wieder gesetzt wird

Wie kann Inline-Assembler in einem C-Programm verwendet werden?

  • Assembler kann im C-Code über den Befehl asm volatile() eingebunden werden
  • Assembler-Anweisungen werden als Strings in " " übergeben
  • Ein- und Ausgabeparameter werden als Textersetzungen übergeben
  • Zum Schluss erfolgen über Doppelpunkt Operandenlisten (1. Output, 2. Input) und dann noch sich ändernde Register (constraints)
  • Stack muss eingerichtet werden!

 

Was sind Macros und wie können sie definiert werden?

  • Macros sind reine Textersetzungen, sparen also keinen Speicher
  • Sie machen das Programm jedoch übersichtlicher
  • Es sind bis zu 10 Parameter übergebbar (als Kommaliste nach dem Makronamen)

Bsp: Verzögerung um 4 Takte:

.MACRO Delay1

NOP

NOP

NOP

NOP

.ENDMACRO

Aufruf:

Delay1

Welche Möglichkeiten der strukturierten Programmierung gibt es in der Assembler-Programmierung?

Wie kann die Parameterübergabe realisiert werden?

  • Macros (reine Textersetzungen)
  • Unterprogramme (Funktionen, die mit RCALL aufgerufen werden)

Die Parameter-Übergabe erfolgt als Kommaliste nach dem Aufruf.

Parameter-Übergaben können als

  • call by value (Es wird nur der Wert übergeben, der Speicher muss im Unterprogramm reserviert werden)
  • call by reference (Das Unterprogramm arbeitet mit dem Pointer)

Welche prinzipiell verschiedenen Fehler müssen bei der Messung von zeitunabhängigen Signalen unterschieden werden?

Welche Maßnahmen ergreifen Sie zur Behandlung dieser Fehler?

Einteilung von Messfehlern:

  • grobe Fehler: grundsätzlich zu vermeiden ->Im Messergebnis nicht enthalten 
  • Systematische Fehler
    • bestimmbar: durch Korrektion eliminieren -> Im Messergebnis nicht enthalten
    • nicht bestimmbar oder nicht bestimmt ->abschätzen (als Messunsicherheit angeben)
  • Zufällige Fehler: Messgröße mehrfach messen ->als Messunsicherheit angeben

 

Quantisierungsfehler: 0,5 LSB

Fehler in der abs. Genauigkeit: ideal 0,5 LSB

externe Störungen: Noise canceling mode benutzen!

Beschreiben Sie die Abfolge der Befehle, die zur Messung einer Spannung in einem Assembler-Programm verwendet werden müssen.

  1. Stackpointer einrichten
  2. ADC initialisieren
  3. Interrupts zulassen
  4. ADC Wert einlesen
  5. Abwarten bis Interrupt ADC-Einlesung fertig meldet und den Wert dann verarbeiten

Wie oft müssen Sie eine Gleichspannung mit dem Microkontroller messen? Bitte begründen Sie Ihre Angabe in ganzen Sätzen.

Je nachdem mit welcher Messunsicherheit ein Messergebnis angegeben werden soll muss das Eingangssignal gemessen werden.

Je geringer die Messsicherheit ausfallen soll, desto mehr Messvorgänge müssen absolviert werden.

Die Anzahl der Messungen wirkt sich dabei sowohl auf die Standardabweichung als auch auf den Studentfaktor aus, sodass eine geringe Messunsicherheit nur mit einer hohen Anzahl an Messungen erreicht werden kann.

Wie erhalten sie den ADC-Wert nach Abschluss der Messung?

Das Ergebnis der ADC-Wandlung befindet sich in den Registern 

ADCL (R61)

ADCH (R62)

Beim Einlesen immer zuerst das Low-Byte einlesen!

\(ADC = {U_{in} \cdot 1024 \over U_{ref}}\)

wenn die differentielle Messmethode gegen den 8. Eingang verwendet wird ist die Gleichung

 \(ADC = {(U_{pos}-U_{neg}) \cdot Verstärkungsf \cdot 512 \over U_{ref}}\)

Bei der differentiellen Messmethode kann das Ergebnis sowohl positiv als auch negativ werden!

Wie wird die Messunsicherheit und das Vertrauensintervall bei einer Spannungsmessung mit dem Mikrocontroller ermittelt?

der absolute Fehler bestimmt sich aus:

\(F_{abs} = A_{ngezeigt}-W_{ahr}\)

der relative Fehler:

\(F_{rel} = (A_{ngezeigt}-W_{ahr})/W_{ahr}\)

Der Korrekturwert ist der Fehlerwert mit negativem Vorzeichen, sodass sich der wahre Wert ergibt aus:

\(W_{ahr} = A_{ngezeigt}-K_{orrektur}\)

bei n-facher Messung werden der Mittelwert und die Standardabweichung bestimmt:

Mittelwert: \(\overline{Y_i} = \frac{1}{n} \sum\limits_{k=0}^{n} Y_k\) 

Standardabweichung: \(S_i = \sqrt{\frac{1}{n-1} \sum\limits_{k=1}^{n} (y_i-\overline{Y_i})^2}\) 

Das Vertrauensinterval: \(Y_i-u\) bis \(Y_i+u\), in der die Messgröße mit der Wahrscheinlichlichkeit \(p = 1-\alpha\) zu erwarten ist.

Die Messunsicherheit: \(u = t *S_{yi}\) (t ist der "Studentfaktor", welcher aus einer Normtabelle anhand der Anzahl der Messungen und der gewünschten Wahrscheinlichkeit ermittelt wird)

Welche Methode zur Analog-Digital-Umsetzung verwendet der Atmel-Mikrocontroller ATMega 324? Bitte skizzieren und beschreiben Sie die Funktion in ganzen Sätzen

Der ATMega324 verwendet als Verfahren die Sukzessive Approximation.

Dabei wird der der analoge Eingangswert in einer Sample&Hold-Stufe gespeichert. Über eine Referenzspannung wird nun der Eingang mit dem Referenzwert verglichen.

Dabei ist im ersten Schritt die Referenzspannung maximal. Ist die Referenzspannung größer als der Eingangswert, so wird das MSB zu null, andernfalls zu eins. Im nächsten Taktzyklus wird die Referenzspannung halbiert und wieder mit dem Eingangswert verglichen. Je nachdem ob der Eingangswert größer oder kleiner war als der Referenzwert wird das nächst höherwertige Bit zu eins oder null gesetzt und das Referenzsignal um die halbe letzte Schrittweite nach oben oder unten geändert. Für n-Bit Auflösung sind n Taktschritte erforderlich.

Welche Möglichkeiten der Ausgleichsrechnung gibt es?

  • Lineare Regression
    • nach Gauß Berechnung von \(f(x) = a_0+a_1x\) durch Minimum der Fehlerquadrate \(F = \sum\limits_{i=1}^{n}[y_i-(a_0+a_1x)]^2 = min\).Partielle Ableitungen \({\partial F \over \partial a_0 },{\partial F \over \partial a_1 } = 0\)
  • Polynom-Interpolation
    • Bei n+1 Messpunkten x0...xn existiert ein Polynom p höchstens nten Grades, welches an den Punkten xj die Werte yj annimmt.
  • Spline-Interpolation
    • Splines sind die abschnittweise Bildung von kubischen Polynomen, welches an 2 Stützstellen in der ersten und zweiten Ableitung mit dem anschließenden Polynom übereinstimmt. Bei n Stützstellen werden n-1 Polynome berechnet

Beschreiben Sie die Aussage des Abtasttheorems nach Nyquist/Shannon in ganzen Sätzen

Das Nyquist-Shannonsche Abtasttheorem besagt dass ein kontinuierliches Signal mit einer Maximalfrequenz f max mit einer Frequenz größer als 2 · f max abgetastet werden muss damit man aus dem so erhaltenen zeitdiskreten Signal das Ursprungssignal ohne Informationsverlust (eindeutige Bestimmung des Ursprungssignals) wieder rekonstruieren kann:

\(f_{abtast} > 2 \cdot f_{max}\)

Was bedeutet Aliasing und wie können Sie sicherstellen, dass nur geeignete Signale an den Eingang des Analog-Digital-Umsetzers gelangen, die die Anforderungen des Abtasttheorems erfüllen?

Aliasing beschreibt den Vorgang der Abtastung, bei dem durch Informationsverlust das Ausgangssignal nicht mehr eindeutig bestimmbar ist.

Da viele wichtige Signale (z.B. Rechteck) nicht bandbegrenzt sind tritt automatisch Aliasing auf, da die Abtastung endlich ist. Abhilfe schafft ein Anti-Aliasing-Filter, welcher Frequenzen oberhalb der halben Abtastfrequenz herausfiltert (Tiefpass)

Was ist Upsampling und wozu verwendet man es?

Um für die digitale Signalverarbeitung die Verhältnisse zu vereinfachen, ist es möglich, zusätzliche Datenpunkte zu interpolieren. Dieser Prozess wird als Upsampling bezeichnet. Zwischen den aufgenommen digitalen Werten, werden zusätzliche Datenpunkte eingefügt, im Beispiel jeweils drei Werte. Durch einen interpolierenden FIR-Filter werden Zwischenwerte erzeugt, wie das digitale Signal so erscheinen lassen, als sei es mit der vierfachen Samplingfrequenz aufgenommen worden. Dadurch werden die Frequenzbänder sehr viel weiter auseinander geschoben und der Störabstand wird erhöht. Zur weiteren Bearbeitung können nun digitale Filter niedrigerer Ordnung eingesetzt werden.

Was ist Downsampling und wozu verwendet man es?

Durch das Entfernen von Punkten beim sog. Downsampling kann nach dem Oversampling die Datenmenge auf den Bedarf reduziert werden, der bei einfacher Einhaltung des Nyquist-Theorems notwendig gewesen wäre. Beim Downsampling rückten die Frequenzbänder wieder zusammen. Dies ist problemlos möglich, da im nun digital gefilterten Bereich die höheren Frequenzen nicht mehr enthalten sind. Dadurch wird die Abtastfrequenz wieder erniedrigt und der Speicherbedarf gesenkt. Vor dem Downsampling muss ein digitaler Tiefpassfilter (Decimation- Filter) hoher Ordnung eingesetzt werden, um ein Aliasing beim Downsampling zu vermeiden.

Das Bild zeigt ein oversampeltes Signal welches nach Bearbeitung downgesampelt wird.

Was bedeutet Oversampling und wozu wird es verwendet?

Das Problem der hohen Filterordnung der analogen Anti-Aliasing-Filter vor der Digitalisierung kann durch das so genannte Oversampling vereinfacht werden. Beim Oversampling werden wesentlich mehr Datenpunkte aufgenommen, als zur Einhaltung des Nyquistkriteriums (Shannon-Kriterium) erforderlich sind. Dadurch rücken im Frequenzbereich die Spektren weiter auseinander. Nun können Filter niedriger Ordnung als analoge Anti-Aliasing-Filter eingesetzt werden. Die Filter hoher Ordnung zur steilen Bandbegrenzung können nun digital ausgeführt werden.

Das im Bild ebenfalls gezeigt Downsampling verringert nach der digitalen Filterung den Speicherbedarf.

Welche Fehler weist ein Analog-Digital-Umsetzer auf?

  • Quantisierungsfehler: immer 0,5 LSB
  • Fehler abs. Genauigkeit: ideal 0,5 LSB

Welche Arten digitaler Filter kennen Sie? Wie sind diese Filter aufgebaut und welche Vorteile und Nachteile haben diese Filter?

FIR (Finite Impulse Response)

  • sind immer stabil, da sie nicht rekursiv sind
  • automatischer Entwurf möglich
  • begrenzte Impulsantwort

IIR (Infinite Impulse Response)

  • nicht unbedingt stabil, da Ausgangssignal rekursiv zurückgeführt wird
  • unbegrenzte Impulsantwort
  • Rechenaufwand geringer
  • durch bilineare Transformation aus analogem Filter berechenbar

Bitte beschreiben Sie das Fourier-Integral für die Fourier-Transformation zeitkontinuierlicher Funktionen.

Warum kann man diese Formel nicht direkt für die Fourier-Transformation im Mikrocontroller nutzen?

Fourier-Integral: \(F = \int\limits_{-\infty}^{\infty} e^{-j\omega t} f(t)dt\)

Dieses Integral lässt sich im Mikrocontroller nicht nutzen, da

  • Technische Signale zu bestimmten Zeitpunkt beginnen
  • für viele Signale kein Integral existiert, daher nicht transformierbar sind

->: Laplace-Transformation (\(e^{-j\omega t} \rightarrow e^{-st}\)). Durch Dämpfung in s konvergieren alle Funktionen

Erklären Sie die Formel für die diskrete Fourier-Transformation für zeitdiskrete Signale.

Wie ist die diskretisierte Kreisfrequenz definiert?

Fourier-Integral für zeitkont. Funktionen: \(F = \int\limits_{-\infty}^{\infty} e^{-j\omega t} f(t)dt\)

Durch Ersetzen von \(t=nT_a\) und \(e^{-j\omega t} = e^{-j\omega nT_a}\) folgt:

\(F_d(j\omega k) = F_d(j \frac{2\pi}{NT_a} k) = \sum\limits_{n=0}^{N-1} f(nT_a) e^{-j\omega_k nT_a} = \sum\limits_{n=0}^{N-1} f(nT_a) e^{-j2\pi k \frac{n}{N}}\)mit \(\omega = \frac{2\pi}{NT_a}k\)und \(k = 0...N-1\)

Dadurch, dass zwischen zwei Abtastungen die Funktion konstant ist wird aus dem Integral eine Summe von Funktionen mit der Breite der Abtastzeit \(T_a\). Es sind dadurch jedoch nur endlich viele Frequenzen berechenbar.

\(\Delta\omega = \frac{2\pi}{NT_a} \rightarrow \Delta f= \frac{1}{N T_a}\)

Die Trennschärfe, also die spektrale Auflösung der Messung ist umgekehrt proportional zur Abtastzeit.

Was kann man machen, um die zeitdiskrete Fourier-Transformation zu beschleunigen zur schnellen Fourier-Transformation (FFT)?

Für die direkte Berechnung der FT sind \(N^2\) komplexe Multiplikationen und \(N(N-1)\) komplexe Additionen notwendig. Dies ist ein erheblicher Rechenaufwand!

Die Struktur der Fourier-Transformation und die Periodizität von \(e^{-j2\pi k \frac{n}{N}}\)erlaubt es redundante Berechnungen zu sparen.

Besonders effektiv ist dabei der Algorithmus von Cooley und Tukey. Dafür muss die Anzahl der Messpunkte eine Potenz von 2 sein.

Beschreiben Sie in ganzen Sätzen den Algorithmus der FFT von Cooley und Tukey. Welche Voraussetzung muss die Zeitreihe der digitalisierten Messwerte aufweisen, damit der Algorithmus angewendet werden kann?

Der Grundgedanken von Cooley und Tukey ist die FT in Teilfolgen zu zerlegen, welche dann getrennt transformiert und überlagert werden. Dabei wird die FT in Teilfolgen mit dem Abstand von 2T zerlegt, welche wiederrum in Teilfolgen mit 4T usw. zerlegt werden, bis jede Teilfolge nur noch zwei Elemente enthält. Daher muss die Messreihe auch eine Anzahl von Messpunkten enthalten die der Potenz von 2 entspricht.

Bsp:

N=8: f(0)...f(7)

1.Zerlegung: f(0),f(2),f(4),f(6) ; f(1),f(3),f(5),f(7)

2.Zerlegung: f(0),f(4) ; f(2),f(6) ; f(1),f(5) ; f(3),f(7)