back

Compileroptimierungen für Forth im Microcontroller

Mecrisp intern

If you suspend your transcription on amara.org, please add a timestamp below to indicate how far you progressed! This will help others to resume your work!

Please do not press “publish” on amara.org to save your progress, use “save draft” instead. Only press “publish” when you're done with quality control.

Video duration
00:26:56
Language
German
Abstract
Wie lassen sich Konstantenfaltung und ein Registerallokator für einen Forth-Compiler implementieren, der in einem Mikrocontroller läuft ?

Wer gern mit Elektronik und Mikrocontrollern bastelt, kennt sicherlich die aufwändige Fehlersuche mit vielen kleinen Testprogrammen. Doch es ist auch möglich, einen Forth-Compiler direkt im Microcontroller zu installieren, mit dem über ein Terminal kommuniziert werden kann und welcher es erlaubt, "von innen heraus" auf die Hardware zuzugreifen sowie jede neu geschriebene Routine sofort von Hand auszuprobieren. Forth ist ein alter Hut - wer jetzt jedoch an langsam denkt, mag überrascht sein: Ein optimierender Forth-Compiler mit Konstantenfaltung und Registerallokator passt mit 20 kb Größe sogar in den LPC1114FN28 ! Wie die Optimierungen "an Bord" funktionieren, soll in diesem Vortrag erläutert werden. Assemblerkenntnisse für MSP430 und ARM Cortex M sind von Vorteil. Wer Forth genauer kennenlernen möchte, kann gern auch zur Assembly der Forth-Gesellschaft kommen.

Talk ID
7520
Event:
32c3
Day
4
Room
Hall 6
Start
5:15 p.m.
Duration
00:30:00
Track
Hardware & Making
Type of
lecture
Speaker
Matthias Koch
Talk Slug & media link
32c3-7520-compileroptimierungen_fur_forth_im_microcontroller

Talk & Speaker speed statistics

Very rough underestimation:
151.8 wpm
974.1 spm
154.6 wpm
991.3 spm
100.0% Checking done100.0%
0.0% Syncing done0.0%
0.0% Transcribing done0.0%
0.0% Nothing done yet0.0%
  

Work on this video on Amara!

Talk & Speaker speed statistics with word clouds

Whole talk:
151.8 wpm
974.1 spm
stackforthganzdirektetwasregisterbisschenkonstantenmehrvielekonstantenfaltungcompilerarmcortexkonstantedringeradenatürlichinliningzwischenergebnissegeschriebenoptimierungensiehtmsp430definitionzahlbeispielkompiliertzurückwordencalleinfachprozessorausgeführtgutlegenklarsprachedafürschreibennochmalimplementierteingefügtopcodesdefinitionenreinobersteanfangbrauchtopcode
Matthias Koch:
154.6 wpm
991.3 spm
stackforthganzdirektetwasregisterbisschenvielemehrkonstantenfaltungkonstantencompilerarmcortexkonstantegeradedrinzahlkompiliertgeschriebennatürlichmsp430wordendefinitionzurückoptimierungeninliningcallsiehtbeispielzwischenergebnisselegenausgeführteinfachprozessorgutspracheerstgelegtschreibendefinitionengleichimplementiertdabeibrauchttail-callpaaranfangdafürnochmal