20.02.2012, 12:39 PM
Bitknipserei entsteht wesentlich durch die vielfältigen Hardware-Features dieser Controllerchen.
Früher hätte man keine Watchdog gehabt und sich stattdessen mit irgendeiner Rödelloop rund um CPU-Takt-basierte Verzögerungen geholfen. Das hätte dann schon mehr nach "Programm" ausgesehen.
Heutzutage hat die Controller-CPU eigentlich nur noch Verwaltungsfunktionen. Hier mal nen AD-Wandler anschubsen, dort mal ein paar Bits umknipsen, da ein Byte in den UART-Fifo reinpatchen.
Schöne neue Welt....
------
Idee:
Alle Konfigurationsbits liegen ja eh schon ziemlich gebündelt im Adressraum, also praktisch so eine Art "Profil".
Ich könnte mir vorstellen, dass bei zukünftigen Controllern die gesamte interne Hardware mit einem Pointer auf dieses Profil zugreift.
Wenn ich diesen Pointer verbiegen könnte, so könnte ich mit einem Schlag die ganze Hardware umkonfigurieren.
Vorab würde ich dann nen Sack unterschiedlicher Profile im Speicher bevorraten und dann einfach nur hin- und herschalten, wenn ich zum Beispiel gerade in eine ISR eintrete.
Dann wären wir keine simplen Bitknipser mehr sondern "kontextsensitive Profil-Switcher"
Hört sich zumindest besser an.
Früher hätte man keine Watchdog gehabt und sich stattdessen mit irgendeiner Rödelloop rund um CPU-Takt-basierte Verzögerungen geholfen. Das hätte dann schon mehr nach "Programm" ausgesehen.
Heutzutage hat die Controller-CPU eigentlich nur noch Verwaltungsfunktionen. Hier mal nen AD-Wandler anschubsen, dort mal ein paar Bits umknipsen, da ein Byte in den UART-Fifo reinpatchen.
Schöne neue Welt....
------
Idee:
Alle Konfigurationsbits liegen ja eh schon ziemlich gebündelt im Adressraum, also praktisch so eine Art "Profil".
Ich könnte mir vorstellen, dass bei zukünftigen Controllern die gesamte interne Hardware mit einem Pointer auf dieses Profil zugreift.
Wenn ich diesen Pointer verbiegen könnte, so könnte ich mit einem Schlag die ganze Hardware umkonfigurieren.
Vorab würde ich dann nen Sack unterschiedlicher Profile im Speicher bevorraten und dann einfach nur hin- und herschalten, wenn ich zum Beispiel gerade in eine ISR eintrete.
Dann wären wir keine simplen Bitknipser mehr sondern "kontextsensitive Profil-Switcher"
Hört sich zumindest besser an.