Microsemi SmartFusion2 SoC FPGA Code Shadowing von SPI Flash zu DDR-Speicher
Vorwort
Zweck
Diese Demo ist für SmartFusion®2 System-on-Chip (SoC) Field Programmable Gate Array (FPGA)-Geräte. Sie enthält Anweisungen zur Verwendung des entsprechenden Referenzdesigns.
Zielgruppe
Diese Demo-Anleitung ist gedacht für:
- FPGA-Designer
- Eingebettete Designer
- Designer auf Systemebene
Verweise
Siehe folgende web Seite für eine vollständige und aktuelle Liste der SmartFusion2-Gerätedokumentation:
http://www.microsemi.com/products/fpga-soc/soc-fpga/smartfusion2#documentation
Auf die folgenden Dokumente wird in diesem Demo-Leitfaden verwiesen.
- UG0331: SmartFusion2 Mikrocontroller-Subsystem – Benutzerhandbuch
- SmartFusion2 System Builder-Benutzerhandbuch
SmartFusion2 SoC FPGA – Code Shadowing von SPI-Flash zum DDR-Speicher
Einführung
Dieses Demodesign zeigt die Funktionen des SmartFusion2 SoC FPGA-Geräts zum Code-Shadowing vom Flash-Speichergerät mit serieller Peripherieschnittstelle (SPI) zum synchronen dynamischen Direktzugriffsspeicher (SDRAM) mit doppelter Datenrate (DDR) und zum Ausführen des Codes vom DDR SDRAM.
Abbildung 1 zeigt das Blockdiagramm der obersten Ebene für das Code-Shadowing vom SPI-Flash-Gerät zum DDR-Speicher.
Abbildung 1 • Blockdiagramm der obersten Ebene
Code Shadowing ist eine Bootmethode, die zum Ausführen eines Images aus externen, schnelleren und flüchtigen Speichern (DRAM) verwendet wird. Dabei wird der Code zur Ausführung vom nichtflüchtigen Speicher in den flüchtigen Speicher kopiert.
Code-Shadowing ist erforderlich, wenn der nichtflüchtige Speicher eines Prozessors keinen Direktzugriff auf den Code für die Ausführung vor Ort unterstützt oder nicht genügend nichtflüchtiger Direktzugriffsspeicher vorhanden ist. Bei leistungskritischen Anwendungen kann die Ausführungsgeschwindigkeit durch Code-Shadowing verbessert werden, wobei der Code zur schnelleren Ausführung in RAM mit höherem Durchsatz kopiert wird.
Single Data Rate (SDR)/DDR SDRAM-Speicher werden in Anwendungen verwendet, die ein großes ausführbares Anwendungsimage haben und eine höhere Leistung erfordern. Normalerweise werden die großen ausführbaren Images in nichtflüchtigem Speicher wie NAND-Flash oder SPI-Flash gespeichert und beim Einschalten zur Ausführung in flüchtigen Speicher wie SDR/DDR SDRAM-Speicher kopiert.
SmartFusion2 SoC FPGA-Geräte integrieren Flash-basiertes FPGA-Fabric der vierten Generation, einen ARM® Cortex®-M3-Prozessor und leistungsstarke Kommunikationsschnittstellen auf einem einzigen Chip. Die Hochgeschwindigkeits-Speichercontroller in den SmartFusion2 SoC FPGA-Geräten werden zur Verbindung mit den externen DDR2/DDR3/LPDDR-Speichern verwendet. Die DDR2/DDR3-Speicher können mit einer maximalen Geschwindigkeit von 333 MHz betrieben werden. Der Cortex-M3-Prozessor kann die Anweisungen vom externen DDR-Speicher direkt über das Mikrocontroller-Subsystem (MSS) DDR (MDDR) ausführen. Der FPGA-Cache-Controller und die MSS DDR-Brücke handhaben den Datenfluss für eine bessere Leistung.
Design Anforderungen
Tabelle 1 zeigt die Designanforderungen für diese Demo.
Tabelle 1 • Designanforderungen
Designanforderungen | Beschreibung |
Hardwareanforderungen | |
SmartFusion2 Erweitertes Entwicklungskit: • 12 V Adapter • FlashPro5 • USB A auf Mini – B USB-Kabel |
Rev. A oder höher |
Desktop oder Laptop | Betriebssystem Windows XP SP2 – 32 Bit/64 Bit Betriebssystem Windows 7 – 32 Bit/64 Bit |
Softwareanforderungen | |
Libero® System-on-Chip (SoC) | Version 11.7 |
FlashPro-Programmiersoftware | Version 11.7 |
SoftConsole | Version 3.4 SP1* |
PC-Treiber | USB-zu-UART-Treiber |
Microsoft .NET Framework 4-Client zum Starten der Demo-GUI | _ |
Notiz: *Für dieses Tutorial wird SoftConsole v3.4 SP1 verwendet. Informationen zur Verwendung von SoftConsole v4.0 finden Sie im TU0546: SoftConsole v4.0 und Libero SoC v11.7 Tutorial. |
Demo-Design
Einführung
Das Demo-Design files stehen zum Download unter folgendem Pfad im Micro semi webWebsite:
http://soc.microsemi.com/download/rsc/?f=m2s_dg0386_liberov11p7_df
Das Demo-Design fileDazu gehören:
- Libero SoC-Projekt
- STAPL-Programmierung files
- GUI ausführbar
- Sample application Bilder
- Linker-Skripte
- DDR-Konfiguration files
- Liesmich.txt file
Siehe die readme.txt file im Design vorgesehen files für die komplette Verzeichnisstruktur.
Beschreibung
Dieses Demodesign implementiert eine Code-Shadowing-Technik, um das Anwendungsimage aus dem DDR-Speicher zu booten. Dieses Design bietet außerdem eine Host-Schnittstelle über den SmartFusion2 SoC FPGA Multi-Mode Universal Asynchronous/Synchronous Receiver/Transmitter (MMUART), um das ausführbare Image der Zielanwendung in SPI-Flash zu laden, der mit der MSS SPI0-Schnittstelle verbunden ist.
Das Code-Shadowing wird mit den folgenden zwei Methoden implementiert:
- Multi-stage Bootvorgangsmethode mit dem Cortex-M3-Prozessor
- Hardware-Boot-Engine-Methode unter Verwendung der FPGA-Struktur
Multi-Stage Bootvorgangsmethode
Das Anwendungsimage wird in den folgenden zwei Boot-Sessions aus externen DDR-Speichern ausgeführt.tages:
- Der Cortex-M3-Prozessor bootet den Soft-Bootloader vom eingebetteten nichtflüchtigen Speicher (eNVM), der die Code-Image-Übertragung vom SPI-Flash-Gerät zum DDR-Speicher durchführt.
- Der Cortex-M3-Prozessor bootet das Anwendungsimage aus dem DDR-Speicher.
Dieses Design implementiert ein Bootloader-Programm, um das ausführbare Image der Zielanwendung vom SPI-Flash-Gerät in den DDR-Speicher zur Ausführung zu laden. Das von eNVM ausgeführte Bootloader-Programm springt zur im DDR-Speicher gespeicherten Zielanwendung, nachdem das Image der Zielanwendung in den DDR-Speicher kopiert wurde.
Abbildung 2 zeigt das detaillierte Blockdiagramm des Demo-Designs.
Abbildung 2 • Code Shadowing – Multi Stage Boot-Prozess-Demo-Blockdiagramm
Der MDDR ist für den Betrieb von DDR3 mit 320 MHz konfiguriert. „Anhang: DDR3-Konfigurationen“ auf Seite 22 zeigt die DDR3-Konfigurationseinstellungen. DDR wird vor der Ausführung des Hauptanwendungscodes konfiguriert.
Bootloader
Der Bootloader führt die folgenden Vorgänge aus:
- Kopieren des Zielanwendungsimages vom SPI-Flash-Speicher in den DDR-Speicher.
- Neuzuordnung der Startadresse des DDR-Speichers von 0xA0000000 auf 0x00000000 durch Konfigurieren des Systemregisters DDR_CR.
- Initialisierung des Cortex-M3-Prozessor-Stackpointers gemäß der Zielanwendung. Der erste Speicherort der Vektortabelle der Zielanwendung enthält den Stackpointer-Wert. Die Vektortabelle der Zielanwendung ist ab der Adresse 0x00000000 verfügbar.
- Laden des Programmzählers (PC) zum Zurücksetzen des Handlers der Zielanwendung zum Ausführen des Zielanwendungsabbilds aus dem DDR-Speicher. Der Reset-Handler der Zielanwendung ist in der Vektortabelle unter der Adresse 0x00000004 verfügbar.
Abbildung 3 zeigt das Demo-Design.
Abbildung 3 • Design Flow für Multi-Stage Bootvorgangsmethode
Hardware-Boot-Engine-Methode
Bei dieser Methode bootet der Cortex-M3 das Zielanwendungsimage direkt aus externen DDR-Speichern. Die Hardware-Boot-Engine kopiert das Anwendungsimage vom SPI-Flash-Gerät in den DDR-Speicher, bevor der Cortex-M3-Prozessor zurückgesetzt wird. Nach dem Zurücksetzen bootet der Cortex-M3-Prozessor direkt aus dem DDR-Speicher. Diese Methode erfordert weniger Bootzeit als Multi-Stage Boot-Prozess, da es mehrere Boot-s vermeidettages und kopiert Anwendungsbilder in kürzerer Zeit in den DDR-Speicher.
Dieses Demodesign implementiert eine Boot-Engine-Logik in der FPGA-Struktur, um das ausführbare Image der Zielanwendung vom SPI-Flash in den DDR-Speicher zur Ausführung zu kopieren. Dieses Design implementiert außerdem einen SPI-Flash-Loader, der vom Cortex-M3-Prozessor ausgeführt werden kann, um das ausführbare Image der Zielanwendung mithilfe der bereitgestellten Hostschnittstelle über SmartFusion2 SoC FPGA MMUART_0 in das SPI-Flash-Gerät zu laden. Mit dem DIP-Schalter1 am SmartFusion2 Advanced Development Kit können Sie auswählen, ob das SPI-Flash-Gerät programmiert oder der Code vom DDR-Speicher ausgeführt werden soll.
Wenn die ausführbare Zielanwendung im SPI-Flash-Gerät verfügbar ist, wird beim Einschalten des Geräts mit dem Code-Shadowing vom SPI-Flash-Gerät in den DDR-Speicher begonnen. Die Boot-Engine initialisiert den MDDR, kopiert das Image vom SPI-Flash-Gerät in den DDR-Speicher und ordnet den DDR-Speicherplatz auf 0x00000000 neu zu, indem der Cortex-M3-Prozessor im Reset gehalten wird. Nachdem die Boot-Engine den Cortex-M3-Reset freigegeben hat, führt der Cortex-M3 die Zielanwendung aus dem DDR-Speicher aus.
Der FIC_0 ist im Slave-Modus konfiguriert, um vom FPGA-Fabric-AHB-Master auf den MSS SPI_0 zuzugreifen. Die MDDR-AXI-Schnittstelle (DDR_FIC) ist aktiviert, um vom FPGA-Fabric-AXI-Master auf den DDR-Speicher zuzugreifen.
Abbildung 4 zeigt das detaillierte Blockdiagramm des Demo-Designs.
Abbildung 4 • Code Shadowing – Blockdiagramm der Hardware-Boot-Engine-Demo
Boot-Engine
Dies ist der Hauptteil der Code-Shadowing-Demo, der das Anwendungsimage vom SPI-Flash-Gerät in den DDR-Speicher kopiert. Die Boot-Engine führt die folgenden Vorgänge aus:
- Initialisieren von MDDR für den Zugriff auf DDR3 bei 320 MHz, indem der Cortex-M3-Prozessor im Reset-Zustand gehalten wird.
- Kopieren des Zielanwendungsabbilds vom SPI-Flash-Speichergerät in den DDR-Speicher mithilfe des AXI-Masters im FPGA-Fabric über die MDDR-AXI-Schnittstelle.
- Neuzuordnung der Startadresse des DDR-Speichers von 0xA0000000 auf 0x00000000 durch Schreiben in das Systemregister DDR_CR.
- Freigabe des Resets für den Cortex-M3-Prozessor, um vom DDR-Speicher zu booten.
Abbildung 5 zeigt den Demo-Designablauf.
Abbildung 5 • Blockdiagramm der obersten Ebene
Abbildung 6 • Entwurfsablauf für die Hardware-Boot-Engine-Methode
Erstellen eines Zielanwendungsimages für den DDR-Speicher
Zum Ausführen der Demo ist ein Image erforderlich, das aus dem DDR-Speicher ausgeführt werden kann. Verwenden Sie die Linkerbeschreibung „production-execute-in-place-externalDDR.ld“. file das ist im Design enthalten files zum Erstellen des Anwendungsimages. Die Linker-Beschreibung file definiert die Startadresse des DDR-Speichers als 0x00000000, da der Bootloader/die Boot-Engine die Neuzuordnung des DDR-Speichers von 0xA0000000 auf 0x00000000 durchführt. Das Linker-Skript erstellt ein Anwendungsimage mit Anweisungen, Daten und BSS-Abschnitten im Speicher, dessen Startadresse 0x00000000 ist. Ein einfaches Anwendungsimage mit blinkender Leuchtdiode (LED), Timer- und Schalter-basierter Interrupt-Generierung file wird für diese Demo bereitgestellt.
SPI-Flash-Loader
Der SPI-Flash-Loader wird implementiert, um den integrierten SPI-Flash-Speicher mit dem ausführbaren Zielanwendungsabbild vom Host-PC über die MMUART_0-Schnittstelle zu laden. Der Cortex-M3-Prozessor erstellt einen Puffer für die über die MMUART_0-Schnittstelle eingehenden Daten und initiiert den peripheren DMA (PDMA), um die gepufferten Daten über MSS_SPI0 in den SPI-Flash zu schreiben.
Ausführen der Demo
Die Demo zeigt, wie das Anwendungsbild in den SPI-Flash geladen und dieses Anwendungsbild aus externen DDR-Speichern ausgeführt wird. Es bietet eine Example Anwendungsbild „sample_image_DDR3.bin“. Dieses Bild zeigt die Willkommensnachrichten und die Timer-Interrupt-Nachricht auf der seriellen Konsole und blinkt LED1 bis LED8 auf dem SmartFusion2 Advanced Development Kit. Um die GPIO-Interrupt-Nachrichten auf der seriellen Konsole anzuzeigen, drücken Sie den Schalter SW2 oder SW3.
Einrichten des Demo-Designs
Die folgenden Schritte beschreiben, wie Sie die Demo für die SmartFusion2 Advanced Development Kit-Platine einrichten:
- Verbinden Sie den Host-PC mit dem USB-A-zu-Mini-B-Kabel mit dem J33-Anschluss. Die USB-zu-UART-Brückentreiber werden automatisch erkannt. Überprüfen Sie, ob die Erkennung im Gerätemanager erfolgt, wie in Abbildung 7 dargestellt.
- Wenn USB-Treiber nicht automatisch erkannt werden, installieren Sie den USB-Treiber.
- Installieren Sie für die serielle Terminalkommunikation über das FTDI-Mini-USB-Kabel den FTDI D2XX-Treiber. Laden Sie die Treiber und die Installationsanleitung herunter von:
http://www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip.
Abbildung 7 • USB-zu-UART-Brückentreiber
- Verbinden Sie die Jumper auf der SmartFusion2 Advanced Development Kit-Platine, wie in Tabelle 2 gezeigt.
Vorsicht: Schalten Sie den Netzschalter SW7 aus, während Sie die Brücken anschließen.
Tabelle 2 • Jumper-Einstellungen für das SmartFusion2 Advanced Development KitJumper Pin (von) Pin (an) Kommentare J116, J353, J354, J54 1 2 Dies sind die Standard-Jumpereinstellungen des Advanced Development Kit Boards. Stellen Sie sicher, dass diese Jumper entsprechend eingestellt sind. J123 2 3 J124, J121, J32 1 2 JTAG Programmierung über FTDI J118, J119 1 2 SPI-Flash programmieren - Schließen Sie im SmartFusion2 Advanced Development Kit die Stromversorgung an den Anschluss J42 an.
Abbildung 8 zeigt den Platinenaufbau zum Ausführen der Code-Shadowing-Demo von SPI-Flash zur DDR3-Demo auf dem SmartFusion2 Advanced Development Kit.
Abbildung 8 • Einrichtung des SmartFusion2 Advanced Development Kit
SPI Flash Loader und Code Shadowing Demo-GUI
Die GUI ist erforderlich, um die Code-Shadowing-Demo auszuführen. SPI Flash Loader und Code-Shadowing-Demo-GUI ist eine einfache grafische Benutzeroberfläche, die auf dem Host-PC ausgeführt wird, um den SPI-Flash zu programmieren und die Code-Shadowing-Demo auf dem SmartFusion2 Advanced Development Kit auszuführen. UART ist ein Kommunikationsprotokoll zwischen dem Host-PC und dem SmartFusion2 Advanced Development Kit. Es bietet auch den Abschnitt „Serielle Konsole“, um die von der Anwendung über die UART-Schnittstelle empfangenen Debug-Meldungen auszudrucken.
Abbildung 9 zeigt den SPI Flash Loader und das Code Shadowing-Demofenster.
Abbildung 9 • SPI Flash Loader und Code Shadowing Demofenster
Die GUI unterstützt die folgenden Funktionen:
- Program SPI Flash: Programmiert das Image file in den SPI-Flash.
- Programm- und Code-Shadowing von SPI Flash zu DDR: Programmiert das Image file in SPI-Flash, kopiert es in den DDR-Speicher und bootet das Image vom DDR-Speicher.
- Programm- und Code-Shadowing von SPI Flash zu SDR: Programmiert das Image file in SPI-Flash, kopiert es in den SDR-Speicher und bootet das Image vom SDR-Speicher.
- Code Shadowing nach DDR: Kopiert das vorhandene Image file vom SPI-Flash zum DDR-Speicher und bootet das Image vom DDR-Speicher.
- Code Shadowing nach SDR: Kopiert das vorhandene Image file vom SPI-Flash zum SDR-Speicher und bootet das Image vom SDR-Speicher. Klicken Sie auf „Hilfe“, um weitere Informationen zur GUI zu erhalten.
Ausführen des Demo-Designs für Multi-Stage Bootvorgangsmethode
Die folgenden Schritte beschreiben, wie Sie das Demo-Design für Multi-S ausführentage Bootvorgangsmethode:
- Schalten Sie den Stromversorgungsschalter SW7 ein.
- Programmieren Sie das SmarFusion2 SoC FPGA-Gerät mit dem Programmier file im Design vorgesehen files (SF2_CodeShadowing_DDR3_DF\Programmierung Files\MultiStageBoot_meothod\CodeShadowing_top.stp mithilfe der FlashPro-Designsoftware).
- Starten Sie die ausführbare GUI-Datei des SPI Flash Loader und der Code Shadowing Demo file im Design erhältlich files (SF2_CodeShadowing_DDR3_DF\GUI Executable\SF2_FlashLoader.exe).
- Wählen Sie aus der Dropdown-Liste „COM-Port“ den entsprechenden COM-Port (auf den die USB-Seriell-Treiber verweisen).
- Klicken Sie auf Verbinden. Nach dem Herstellen der Verbindung ändert sich Verbinden in Trennen.
- Klicken Sie auf „Durchsuchen“, um das Beispiel auszuwählen.ample Ziel ausführbares Image file mit dem Design versehen files
(SF2_CodeShadowing_DDR3_DF/Sample Anwendungsbilderample_image_DDR3.bin).
Notiz: So generieren Sie den Anwendungsimagebehälter file, siehe „Anhang: Generieren von ausführbaren Bin File“ auf Seite 25. - Behalten Sie die Startadresse des SPI-Flash-Speichers als Standard bei 0x00000000.
- Wählen Sie die Option „Programm- und Code-Shadowing von SPI-Flash zu DDR“.
- Klicken Sie wie in Abbildung 10 gezeigt auf „Start“, um das ausführbare Image in den SPI-Flash zu laden und den Code aus dem DDR-Speicher zu spiegeln.
Abbildung 10 • Starten der Demo
- Wenn das SmartFusion2 SoC FPGA-Gerät mit einem STAPL programmiert wird file in dem MDDR nicht für DDR-Speicher konfiguriert ist, wird eine Fehlermeldung angezeigt, wie in Abbildung 11 dargestellt.
Abbildung 11 • Meldung „Falsches Gerät oder falsche Option“
- Der Abschnitt „Serielle Konsole“ auf der GUI zeigt die Debug-Meldungen an und startet die Programmierung des SPI-Flashs, sobald der SPI-Flash erfolgreich gelöscht wurde. Abbildung 12 zeigt den Status des SPI-Flash-Schreibens
Abbildung 12 • Flash-Laden
- Nach erfolgreicher Programmierung des SPI-Flash kopiert der auf dem SmartFusion2 SoC FPGA ausgeführte Bootloader das Anwendungsimage vom SPI-Flash in den DDR-Speicher und bootet das Anwendungsimage. Wenn das bereitgestellte Image sample_image_DDR3.bin ausgewählt ist, zeigt die serielle Konsole die Willkommensnachrichten sowie die Switch-Interrupt- und Timer-Interrupt-Nachrichten an, wie in Abbildung 13 auf Seite 18 und Abbildung 14 auf Seite 18 dargestellt. Auf dem SmartFusion1 Advanced Development Kit wird auf LED8 bis LED2 ein laufendes LED-Muster angezeigt.
- Drücken Sie die Schalter SW2 und SW3, um Interrupt-Meldungen auf der seriellen Konsole anzuzeigen.
Abbildung 13 • Ausführen des Zielanwendungsabbilds aus dem DDR3-Speicher
Abbildung 14 • Timer- und Interrupt-Meldungen in der seriellen Konsole
Ausführen des Hardware-Boot-Engine-Methodenentwurfs
Die folgenden Schritte beschreiben, wie die Methode zum Ausführen der Hardware-Boot-Engine entworfen wird:
- Schalten Sie den Stromversorgungsschalter SW7 ein.
- Programmieren Sie das SmarFusion2 SoC FPGA-Gerät mit dem Programmier file im Design vorgesehen files (SF2_CodeShadowing_DDR3_DF\Programmierung
Files\HWBootEngine_method\CodeShadowing_Fabric.stp mithilfe der FlashPro-Designsoftware). - Um den SPI-Flash zu programmieren, stellen Sie den DIP-Schalter SW5-1 auf die Position ON. Diese Auswahl ermöglicht das Booten von Cortex-M3 von eNVM. Drücken Sie SW6, um das SmartFusion2-Gerät zurückzusetzen.
- Starten Sie die ausführbare GUI-Datei des SPI Flash Loader und der Code Shadowing Demo file im Design erhältlich files (SF2_CodeShadowing_DDR3_DF\GUI Executable\SF2_FlashLoader.exe).
- Wählen Sie aus der Dropdown-Liste „COM-Port“ den entsprechenden COM-Port (auf den die USB-Seriell-Treiber verweisen).
- Klicken Sie auf Verbinden. Nach dem Herstellen der Verbindung ändert sich Verbinden in Trennen.
- Klicken Sie auf „Durchsuchen“, um das Beispiel auszuwählen.ample Ziel ausführbares Image file mit dem Design versehen files
(SF2_CodeShadowing_DDR3_DF/Sample Anwendungsbilderample_image_DDR3.bin).
Notiz: So generieren Sie den Anwendungsimagebehälter file, siehe „Anhang: Generieren von ausführbaren Bin File“ auf Seite 25. - Wählen Sie in der Code-Shadowing-Methode die Option „Hardware-Boot-Engine“.
- Wählen Sie die Option „SPI-Flash programmieren“ aus dem Optionsmenü.
- Klicken Sie auf „Start“, wie in Abbildung 15 gezeigt, um das ausführbare Image in den SPI-Flash zu laden.
Abbildung 15 • Starten der Demo
- Der Abschnitt „Serielle Konsole“ auf der GUI zeigt die Debug-Meldungen und den Status des SPI-Flash-Schreibens an, wie in Abbildung 16 dargestellt.
Abbildung 16 • Flash-Laden
- Nachdem der SPI-Flash erfolgreich programmiert wurde, stellen Sie den DIP-Schalter SW5-1 auf OFF. Mit dieser Auswahl wird der Cortex-M3-Prozessor aus dem DDR-Speicher gebootet.
- Drücken Sie SW6, um das SmartFusion2-Gerät zurückzusetzen. Die Boot-Engine kopiert das Anwendungsimage vom SPI-Flash in den DDR-Speicher und gibt den Reset an Cortex-M3 frei, der das Anwendungsimage aus dem DDR-Speicher bootet. Wenn das bereitgestellte Image „samp„le_image_DDR3.bin“ wird in den SPI-Flash geladen, die serielle Konsole zeigt die Willkommensnachrichten, den Schalter-Interrupt (drücken Sie SW2 oder SW3) und die Timer-Interrupt-Nachrichten wie in Abbildung 17 dargestellt an und auf LED1 bis LED8 auf dem SmartFusion2 Advanced Development Kit wird ein laufendes LED-Muster angezeigt.
Abbildung 17 • Ausführen des Zielanwendungsabbilds aus dem DDR3-Speicher
Abschluss
Diese Demo zeigt die Fähigkeit des SmartFusion2 SoC FPGA-Geräts, mit DDR-Speicher zu kommunizieren und das ausführbare Image aus dem DDR-Speicher auszuführen, indem Code vom SPI-Flash-Speichergerät gespiegelt wird. Außerdem werden zwei Methoden zur Code-Shadowing-Implementierung auf dem SmartFusion2-Gerät gezeigt.
Anhang: DDR3-Konfigurationen
Die folgenden Abbildungen zeigen die DDR3-Konfigurationseinstellungen.
Abbildung 18 • Allgemeine DDR-Konfigurationseinstellungen
Abbildung 19 • DDR-Speicherinitialisierungseinstellungen
Abbildung 20 • DDR-Speicher-Timing-Einstellungen
Anhang: Generieren eines ausführbaren Bins File
Der ausführbare Bin file wird benötigt, um den SPI-Flash für die Ausführung der Code-Shadowing-Demo zu programmieren. Um die ausführbare Bin-Datei zu generieren file von „sample_image_DDR3“ Soft Console führen Sie die folgenden Schritte aus:
- Erstellen Sie das Soft Console-Projekt mit dem Linker-Skript „production-execute-in-place-external DDR“.
- Fügen Sie den Installationspfad der Soft Console hinzu, zum Beispielample, C:\Microsemi\Libero_v11.7\SoftConsole\Sourcery-G++\bin, zu den „Umgebungsvariablen“, wie in Abbildung 21 gezeigt.
Abbildung 21 • Soft Console-Installationspfad hinzufügen
- Doppelklicken Sie auf den Stapel file Behälter-File-Generator.bat befindet sich unter:
SoftConsole/CodeShadowing_MSS_CM3/Sample_image_DDR3-Ordner, wie in Abbildung 22 gezeigt.
Abbildung 22 • Behälter File Generator
- Der Mülleimer-File-Generator erzeugt sample_image_DDR3.bin file.
Änderungsverlauf
In der folgenden Tabelle sind die wichtigen Änderungen aufgeführt, die bei jeder Revision an diesem Dokument vorgenommen wurden.
Revision | Änderungen |
Revision 7 (März 2016) |
Das Dokument für die Softwareversion Libero SoC v11.7 (SAR 77816) wurde aktualisiert. |
Revision 6 (Oktober 2015) |
Das Dokument für die Softwareversion Libero SoC v11.6 (SAR 72424) wurde aktualisiert. |
Revision 5 (September 2014) |
Das Dokument für die Softwareversion Libero SoC v11.4 (SAR 60592) wurde aktualisiert. |
Revision 4 (Mai 2014) |
Das Dokument für die Softwareversion Libero SoC 11.3 (SAR 56851) wurde aktualisiert. |
Revision 3 (Dezember 2013) |
Das Dokument für die Softwareversion Libero SoC v11.2 (SAR 53019) wurde aktualisiert. |
Revision 2 (Mai 2013) |
Das Dokument für die Softwareversion Libero SoC v11.0 (SAR 47552) wurde aktualisiert. |
Revision 1 (März 2013) |
Das Dokument für die Softwareversion Libero SoC v11.0 Beta SP1 (SAR 45068) wurde aktualisiert. |
Produkt-Support
Die Microsemi SoC Products Group unterstützt ihre Produkte mit verschiedenen Support-Services, darunter Kundendienst, technisches Kunden-Support-Center, a webWebsite, E-Mail und weltweite Vertriebsniederlassungen. Dieser Anhang enthält Informationen zur Kontaktaufnahme mit der Microsemi SoC Products Group und zur Nutzung dieser Supportdienste.
Kundendienst
Wenden Sie sich für nicht technischen Produktsupport an den Kundendienst, z. B. Produktpreise, Produkt-Upgrades, Aktualisierungsinformationen, Bestellstatus und Autorisierung.
- Rufen Sie aus Nordamerika die Nummer 800.262.1060 an.
- Aus dem Rest der Welt rufen Sie 650.318.4460 an
- Fax, von überall auf der Welt, 408.643.6913
Technisches Kundendienstzentrum für Kunden
Die Microsemi SoC Products Group besetzt ihr technisches Kundendienstzentrum mit hochqualifizierten Ingenieuren, die Ihnen bei der Beantwortung Ihrer Hardware-, Software- und Designfragen zu Microsemi SoC-Produkten behilflich sein können. Das Customer Technical Support Center verbringt viel Zeit mit der Erstellung von Anwendungshinweisen, Antworten auf häufig gestellte Fragen zum Designzyklus, der Dokumentation bekannter Probleme und verschiedener FAQs. Bevor Sie uns kontaktieren, besuchen Sie bitte unsere Online-Ressourcen. Sehr wahrscheinlich haben wir Ihre Fragen bereits beantwortet.
Technische Unterstützung
Für Support für Microsemi SoC-Produkte besuchen Sie bitte
http://www.microsemi.com/products/fpga-soc/design-support/fpga-soc-support.
WebWebsite
Auf der Homepage der Microsemi SoC Products Group finden Sie unter eine Vielzahl von technischen und nicht-technischen Informationen http://www.microsemi.com/products/fpga-soc/fpga-and-soc.
Kontaktaufnahme mit dem technischen Kundendienstzentrum des Kunden
Hochqualifizierte Ingenieure besetzen das Technical Support Center. Das Technical Support Center kann per E-Mail oder über die Microsemi SoC Products Group kontaktiert werden webWebsite.
E-Mail
Sie können Ihre technischen Fragen an unsere E-Mail-Adresse senden und Antworten per E-Mail, Fax oder Telefon erhalten. Wenn Sie Designprobleme haben, können Sie Ihr Design auch per E-Mail senden files um Hilfe zu erhalten. Wir überwachen das E-Mail-Konto den ganzen Tag über. Wenn Sie Ihre Anfrage an uns senden, geben Sie bitte unbedingt Ihren vollständigen Namen, Firmennamen und Ihre Kontaktinformationen für eine effiziente Bearbeitung Ihrer Anfrage an.
Die E-Mail-Adresse des technischen Supports lautet soc_tech@microsemi.com.
Meine Fälle
Kunden der Microsemi SoC Products Group können technische Fälle online einreichen und verfolgen, indem sie zu „Meine Fälle“ gehen.
Außerhalb der USA
Kunden, die außerhalb der US-Zeitzonen Hilfe benötigen, können sich entweder per E-Mail an den technischen Support wenden (soc_tech@microsemi.com) oder wenden Sie sich an ein lokales Verkaufsbüro. Unter „Über uns“ finden Sie eine Liste der Verkaufsbüros und Unternehmenskontakte.
ITAR Technischer Support
Wenden Sie sich für technischen Support zu RH- und RT-FPGAs, die den International Traffic in Arms Regulations (ITAR) unterliegen, an uns unter soc_tech@microsemi.com. Alternativ können Sie in Meine Fälle Ja in der ITAR-Dropdown-Liste auswählen. Eine vollständige Liste der ITAR-regulierten Microsemi-FPGAs finden Sie auf der ITAR web Seite.
Hauptsitz von Microsemi
Ein Unternehmen, Aliso Viejo,
CA 92656 USA
Innerhalb der USA: +1 (800)
713-4113 Außerhalb der
USA: +1 949-380-6100
Umsatz: +1 949-380-6136
Fax: +1 949-215-4996
E-Mail: sales.support@microsemi.com
© 2016 Microsemi Corporation.
Alle Rechte vorbehalten. Microsemi und das Microsemi-Logo sind Marken der Microsemi Corporation.
Alle anderen Warenzeichen und Dienstleistungsmarken sind Eigentum ihrer jeweiligen Inhaber.
Microsemi Corporation (Nasdaq: MSCC) bietet ein umfassendes Portfolio an Halbleiter- und Systemlösungen für die Kommunikations-, Verteidigungs- und Sicherheits-, Luft- und Raumfahrt- und Industriemärkte. Zu den Produkten gehören leistungsstarke und strahlungsfeste analoge Mixed-Signal-integrierte Schaltkreise, FPGAs, SoCs und ASICs; Energiemanagementprodukte; Zeit- und Synchronisierungsgeräte und präzise Zeitlösungen, die den weltweiten Standard für die Zeit setzen; Sprachverarbeitungsgeräte; HF-Lösungen; diskrete Komponenten; Speicher- und Kommunikationslösungen für Unternehmen, Sicherheitstechnologien und skalierbare Anti-Tamper-Produkte; Ethernet-Lösungen; Power-over-Ethernet-ICs und Midspans; sowie kundenspezifische Designfunktionen und -dienste. Microsemi hat seinen Hauptsitz in Aliso Viejo, Kalifornien, und beschäftigt weltweit rund 4,800 Mitarbeiter. Weitere Informationen finden Sie unter www.microsemi.com.
Microsemi gibt keine Gewährleistung, Zusicherung oder Garantie in Bezug auf die hierin enthaltenen Informationen oder die Eignung seiner Produkte und Dienstleistungen für einen bestimmten Zweck, noch übernimmt Microsemi irgendeine Haftung, die sich aus der Anwendung oder Verwendung eines Produkts oder einer Schaltung ergibt. Die hierunter verkauften Produkte und alle anderen von Microsemi verkauften Produkte wurden begrenzten Tests unterzogen und sollten nicht in Verbindung mit unternehmenskritischen Geräten oder Anwendungen verwendet werden. Alle Leistungsspezifikationen gelten als zuverlässig, werden jedoch nicht verifiziert, und der Käufer muss alle Leistungs- und sonstigen Tests der Produkte allein und zusammen mit oder installiert in Endprodukten durchführen und abschließen. Der Käufer darf sich nicht auf von Microsemi bereitgestellte Daten und Leistungsspezifikationen oder Parameter verlassen. Es liegt in der Verantwortung des Käufers, die Eignung aller Produkte unabhängig zu bestimmen und diese zu testen und zu verifizieren. Die hierunter von Microsemi bereitgestellten Informationen werden „wie besehen, wo sie sind“ und mit allen Fehlern bereitgestellt, und das gesamte mit diesen Informationen verbundene Risiko liegt vollständig beim Käufer. Microsemi gewährt keiner Partei ausdrücklich oder stillschweigend Patentrechte, Lizenzen oder andere IP-Rechte, weder in Bezug auf diese Informationen selbst noch auf alles, was in diesen Informationen beschrieben wird. Die in diesem Dokument bereitgestellten Informationen sind Eigentum von Microsemi, und Microsemi behält sich das Recht vor, jederzeit ohne Vorankündigung Änderungen an den Informationen in diesem Dokument oder an Produkten und Dienstleistungen vorzunehmen.
Dokumente / Ressourcen
![]() |
Microsemi SmartFusion2 SoC FPGA Code Shadowing von SPI Flash zu DDR-Speicher [pdf] Bedienungsanleitung SmartFusion2 SoC FPGA Code Shadowing von SPI Flash zu DDR-Speicher, SmartFusion2 SoC, FPGA Code Shadowing von SPI Flash zu DDR-Speicher, Flash zu DDR-Speicher |