Quellcode für Kreuzkorrelation in VisualDSP++ ADSP-21262

OP #570770
hallo forum,

brauche dringend Hilfe für unser Projekt.
Wir arbeiten zur Zeit am sharc ADSP-21262.

Die eigentliche Aufgabe lautet:

Zwei Mikrofone anschließen und anhand der Kreuzkorrelation beide signale 
bewerten, d.h. die Laufzeitunterschiede beider Signale messen.

Leider haben wir keine Ahnung wie wir das in Visual DSP++ implementieren 
sollen (als Assembler-code). Daher brauchen wir dringend eure Hilfe.
Ich bedanke mich schon mal im Voraus!


Gast
hallo nochmals,

ich hab mich etwas schlauer gemacht. Undzwar nutze ich für die 
Kreuzkorrelation die vorlage des FIR-Filters aus der Analog.com seite 
für den ADSP-21262-Sharc Prozessor.

Der folgende Code könnte doch für die Kreuzkorrelation verwendet werden?

Corr.algorithmus:

    f0=dm(i0,m0), f4=pm(i8,m8);    // Zwei Signale in Register f0 und f4
                                   // laden
    f8 =f0*f4, f0=dm(i0,m0), f4=pm(i8,m8); //werte miteinander
                                           //multiplizieren; 
gleichzeitig
                                           // 2 neue Signale laden
                                           // usw
    f12=f0*f4, f0=dm(i0,m0), f4=pm(i8,m8);
    lcntr=r6, do schleife until lce;

schleife:
    f12=f0*f4, f8=f8+f12, f0=dm(i0,m0), f4= pm(i8,m8);
    f12=f0*f4, f8=f8+f12;
    f13=f8+f12;
    dm(i1,m1)=f13;   //Endwert abspeichern


Meine weiter Frage lautet:
Ich möchte zwei Mikrofone anschließen, die Eingangssignale sollen ja 
dann in den Ringpuffer abgelegt werden.
Wie weiß mein Prozessor das die beiden Signale getrennt von einander 
gespeichert(gepuffert) werden sollen.
Gast
>Wie weiß mein Prozessor das die beiden Signale getrennt von einander
>gespeichert(gepuffert) werden sollen.

Indem du das so programmierst?!

Möchtest du nicht vielleicht bei deinem Wissensstand lieber die in 
VDSP++ eingebaute C-Funktion für die Kreuzkorrelation nutzen?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 19 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.