Forum: Compiler & IDEs MAC Opperation ARM7TDMI Core


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Tilo L. (katagia)


Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich programmiere gerade einen ADUC7020 mit ARM7TDMI Core.
Ich will nächstes Jahr kleine Digitalfilter implementieren.

Im Handbuch habe ich folgendes gefunden:

LONG MULTIPLY (M)
The ARM7TDMI instruduction set includes four extra instruductions
that perform 23-bit by 32-bit multiplications with 64-bit result,
and 32-bit by 32-bit multiplication-accumulation (MAC) with 64-bit
result. These results are archived in fewer cycles than required on
a standard core.

Ich bin vor allem an der MAC-Operation interessiert, da dadurch die
Filter wesentlich schneller sein sollten.

Mein Problem ist nun: Wie nutze ich diese Funktionen?

Geht das einfach in C?

Vielen Dank,

Tilo

von Stefan B. (stefan) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Wenn deine Compiler-Toolchain diese Funktionen nicht schon in der Libary 
drin haben (Manual prüfen und anschliessend vielleicht Developerforum 
befragen) kannst du mit Inline-Assembler was an^H^Hausrichten.

von Andreas S. (andreas) (Admin) Benutzerseite Flattr this


Bewertung
0 lesenswert
nicht lesenswert
GCC verwendet MLA wo sinnvoll. Ggf. musst du den Code etwas umstellen.

von Tilo L. (katagia)


Bewertung
0 lesenswert
nicht lesenswert
Woher weiß der gcc denn, dass mein MCU diese Befehle kennt?
Die scheinen ja nicht zum Standardbefehlssatz zu gehören.

Bis dann,

von Mark .. (mork)


Bewertung
0 lesenswert
nicht lesenswert
Doch. Das 'M' ist ja ein Teil von TDMI, also gehört es auch zum 
Standardbefehlssatz. Du brauchst beim Kompilieren nur arm7tdmi als MCU 
anzugeben.

MfG Mark

von Tilo L. (katagia)


Bewertung
0 lesenswert
nicht lesenswert
Super, danke für die Info!

Ich dachte ich müsste das alles von Hand implementieren.

Bis dann, Tilo

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.