Kann Tiva C Code von SRAM ausführen?

Ich weiß nur, dass Cortex-M3/4-Mikros zwar eine Harvard-Architektur sind, aber Code aus dem RAM ausführen können, zumindest einige Implementierungen (wie STM32F4). Können Mikrocontroller der Tiva C-Serie vom RAM aus ausgeführt werden?

Datenblatt gelesen?

Antworten (2)

Tiva™ TM4C123BE6PZ Mikrocontroller-Datenblatt

Es ist aus dem Datenblatt nicht sofort ersichtlich, aber schauen Sie auf Seite 87-88:Geben Sie hier die Bildbeschreibung ein

Es hat zwei Busse , aber nur einen Adressraum ; Sie können also Programme aus mehreren Regionen ausführen, aber Sie werden darauf hingewiesen, dass Sie nur dann den Vorteil haben, einen Befehlsabruf und einen Datenabruf gleichzeitig durchführen zu können, wenn sie aus verschiedenen Regionen stammen.

Das bedeutet natürlich, dass die Ausführung von Code aus dem SRAM langsamer ist? Soweit ich weiß, hat Flash beim Betrieb über 40 MHz Wartezustände, die durch die Verwendung des Prefetch-Puffers gemildert werden.
Ich würde davon ausgehen, dass der interne SRAM ein Einzelzyklus war, sofern nicht anders angegeben.

On-Chip-Speicher

32 KB Single-Cycle-SRAM bei 0x2000.0000 (für Codespeicherung)

■ 256 KB Single-Cycle-On-Chip-Flash-Speicher (Seite 528)

■ 2KB EEPROM (für nichtflüchtige Datenspeicherung)

Das Programm wird im Flash und die Variablen im SRAM gespeichert

@ pjc50 ist genau richtig mit dem Bild und der Beschreibung.

Der Cortex-M4F ruft Anweisungen vor der Ausführung vor und holt spekulativ vorab von Verzweigungszieladressen

[1] Seite 96 des TIVA C-Datenblatts