Microsemi-LOGO

Microsemi DG0669 SmartFusion2 Code Shadowing da SPI Flash a memoria LPDDR

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-LPDDR-Memory-PRODOTTO

Informazioni sul prodotto

SmartFusion2 SoC FPGA è una soluzione FPGA ad alte prestazioni e basso consumo che integra un processore ARM Cortex-M3, risorse analogiche e digitali programmabili e interfacce di comunicazione ad alta velocità su un singolo chip. Il software Libero SoC v11.7 è una suite di progettazione completa per la progettazione con Microsemi FPGA.

Utilizzo del prodotto

Per utilizzare l'FPGA SoC SmartFusion2 con code shadowing da SPI Flash a memoria LPDDR, attenersi alla seguente procedura:

Prefazione

Scopo
Questa demo è per i dispositivi FPGA (Field Programmable Gate Array) System-on-Chip (SoC) SmartFusion®2. Fornisce istruzioni su come utilizzare il progetto di riferimento corrispondente.

Pubblico di destinazione

Questa guida demo è destinata a:

  • progettisti di FPGA
  • Designer incorporati
  • Progettisti a livello di sistema

Riferimenti
Vedere quanto segue web pagina per un elenco completo e aggiornato della documentazione del dispositivo SmartFusion2: http://www.microsemi.com/products/fpga-soc/soc-fpga/sf2docs
In questa guida demo si fa riferimento ai seguenti documenti.

  • UG0331: Guida per l'utente del sottosistema del microcontrollore SmartFusion2
  • Guida dell'utente di SmartFusion2 System Builder

SmartFusion2 SoC FPGA – Code Shadowing da SPI Flash a memoria LPDDR

Introduzione
Questo progetto dimostrativo mostra le funzionalità del dispositivo FPGA SoC SmartFusion2 per il code shadowing dal dispositivo di memoria flash SPI (Serial Periferic Interface) alla SDRAM (Synchronous Dynamic Random Access Memory) LPDDR (Low Power Double Data Rate) e l'esecuzione del codice dalla SDRAM LPDDR. La Figura 1 mostra il diagramma a blocchi di primo livello per il code shadowing dal dispositivo flash SPI alla memoria LPDDR.

Figura 1 Diagramma a blocchi di primo livello della demo

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-1

Il code shadowing è un metodo di avvio utilizzato per eseguire un'immagine da memorie esterne, più veloci e volatili (DRAM). È il processo di copia del codice dalla memoria non volatile alla memoria volatile per l'esecuzione. Il code shadowing è necessario quando la memoria non volatile associata a un processore non supporta l'accesso casuale al codice per l'esecuzione sul posto o la memoria non volatile ad accesso casuale è insufficiente. Nelle applicazioni critiche per le prestazioni, la velocità di esecuzione può essere migliorata mediante il code shadowing, in cui il codice viene copiato in una RAM a velocità effettiva più elevata per un'esecuzione più rapida. Le memorie Single Data Rate (SDR)/DDR SDRAM vengono utilizzate in applicazioni che hanno un'immagine eseguibile di applicazioni di grandi dimensioni e richiedono prestazioni più elevate. In genere, le immagini eseguibili di grandi dimensioni vengono memorizzate in una memoria non volatile, come flash NAND o flash SPI, e copiate in memoria volatile, come memoria SDRAM SDR/DDR, all'accensione per l'esecuzione. I dispositivi SmartFusion2 integrano un fabric FPGA basato su flash di quarta generazione, un processore ARM® Cortex®-M3 e interfacce di comunicazione ad alte prestazioni su un singolo chip. I controller di memoria ad alta velocità nei dispositivi SmartFusion2 vengono utilizzati per interfacciarsi con le memorie DDR2/DDR3/LPDDR esterne. La memoria LPDDR può funzionare a una velocità massima di 166 MHz. Il processore Cortex-M3 può eseguire direttamente le istruzioni dalla memoria DDR esterna attraverso il sottosistema microcontrollore (MSS) DDR (MDDR). Il controller di cache FPGA e il bridge MSS DDR gestiscono il flusso di dati per prestazioni migliori.

Requisiti di progettazione
Assicurati di avere i seguenti requisiti hardware e software:

Requisiti hardware e software

Tabella 1 Requisiti di progettazione

Requisiti di progettazioneDescrizione
Requisiti hardware
Kit di valutazione della sicurezza SmartFusion2:

• Adattatore 12 V

• FlashPro4

• Cavo USB da USB A a Mini – B

Rev D o successivo
PC host o laptopSistema operativo Windows XP SP2 – 32/64 bit Sistema operativo Windows 7 – 32/64 bit
Requisiti software
Libero® System-on-Chip (SoC)versione 11.7
Software di programmazione FlashProversione 11.7
Soft Consolev3.4 SP1*
Driver del PC hostDriver da USB a UART
Framework per l'avvio della GUI demoClient Microsoft .NET Framework 4 per l'avvio della GUI demo
Nota: *Per questa guida demo, viene utilizzata SoftConsole v3.4 SP1. Per l'utilizzo di SoftConsole v4.0, vedere il TU0546: Tutorial SoftConsole v4.0 e Libero SoC v11.7.
  • Kit di sviluppo SmartFusion2
  • Software Libero SoC v11.7
  • Cavo USB Blaster o USB Blaster II

Progettazione dimostrativa
Il design demo utilizza un multi-stagIl metodo del processo di avvio o un metodo del motore di avvio hardware per caricare l'immagine dell'applicazione dalla flash SPI alla memoria LPDDR. Segui i passaggi seguenti: Il design files sono disponibili per il download dal seguente percorso in Microsemi websito: http://soc.microsemi.com/download/rsc/?f=m2s_dg0669_liberov11p7_df

Progetto fileincludono:
Il progetto dimostrativo fileincludono:

  • Sample immagini dell'applicazione
  • Programmazione files
  • Libero
  • Eseguibile della GUI
  • Script di collegamento
  • Configurazione DDR files
  • Leggimi.txt file

SmartFusion2 SoC FPGA – Code Shadowing da SPI Flash a memoria LPDDR La Figura 2 mostra la struttura di primo livello del progetto fileS. Per ulteriori dettagli, fare riferimento al Readme.txt file.

Figura 2 Progettazione Files Struttura di primo livello

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-2

Descrizione del progetto dimostrativo

Questo progetto demo implementa la tecnica del code shadowing per avviare l'immagine dell'applicazione dalla memoria DDR. Questo design fornisce anche un'interfaccia host su SmartFusion2 SoC FPGA ricevitore/trasmettitore universale asincrono/sincrono multimodale (MMUART) per caricare l'immagine eseguibile dell'applicazione di destinazione nel flash SPI collegato all'interfaccia MSS SPI0.
Il code shadowing è implementato nei seguenti due metodi:

  • Multi-stage metodo di processo di avvio utilizzando il processore Cortex-M3
  • Metodo del motore di avvio dell'hardware che utilizza il fabric FPGA.

Multi-Stage Metodo di processo di avvio

  1. Crea un'immagine dell'applicazione per la memoria DDR utilizzando il software Libero SoC.
  2. Carica il caricatore SPI Flash in SPI flash utilizzando il software Libero SoC.
  3. Eseguire la GUI dimostrativa di code shadowing per programmare l'FPGA e caricare l'immagine dell'applicazione dalla memoria flash SPI alla memoria LPDDR.

L'immagine dell'applicazione viene eseguita da memorie DDR esterne nei seguenti due s di avviotages:

  • Il processore Cortex-M3 avvia il soft boot loader dalla memoria non volatile incorporata (eNVM), che esegue il trasferimento dell'immagine del codice dal dispositivo flash SPI alla memoria DDR.
  • Il processore Cortex-M3 avvia l'immagine dell'applicazione dalla memoria DDR.

Questo progetto implementa un programma bootloader per caricare l'immagine eseguibile dell'applicazione di destinazione dal dispositivo flash SPI alla memoria DDR per l'esecuzione. Il programma bootloader in esecuzione da eNVM passa all'applicazione di destinazione archiviata nella memoria DDR dopo che l'immagine dell'applicazione di destinazione è stata copiata nella memoria DDR.

Figura 3 Code Shadowing Multi-Stage Diagramma a blocchi della demo del processo di avvio

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-3

L'MDDR è configurato per LPDDR per funzionare a 166 MHz. “Appendice: Configurazioni LPDDR” a pagina 22 mostra le impostazioni di configurazione LPDDR. Il DDR viene configurato prima di eseguire il codice dell'applicazione principale.

Caricatore di avvio

Il bootloader esegue le seguenti operazioni:

  1. Copia dell'immagine dell'applicazione di destinazione dalla memoria flash SPI alla memoria DDR.
  2. Rimappare l'indirizzo iniziale della memoria DDR da 0xA0000000 a 0x00000000 configurando il registro di sistema DDR_CR.
  3. Inizializzazione del puntatore dello stack del processore Cortex-M3 in base all'applicazione di destinazione. La prima posizione della tabella del vettore dell'applicazione di destinazione contiene il valore del puntatore dello stack. La tabella vettoriale dell'applicazione target è disponibile a partire dall'indirizzo 0x00000000.
  4. Caricamento del contatore del programma (PC) per reimpostare il gestore dell'applicazione di destinazione per l'esecuzione dell'immagine dell'applicazione di destinazione dalla memoria DDR. Il gestore di ripristino dell'applicazione di destinazione è disponibile nella tabella dei vettori all'indirizzo 0x00000004.

Figura 4 Flusso di progettazione per Multi-Stage Metodo di processo di avvio

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-4

Metodo del motore di avvio hardware

  1. Genera un binario eseguibile file utilizzando il software SoC Libero.
  2. Carica il binario file in SPI flash utilizzando il software Libero SoC.
  3. Eseguire Hardware Boot Engine Design per programmare l'FPGA e caricare l'immagine dell'applicazione dalla flash SPI alla memoria LPDDR.

In questo metodo, il Cortex-M3 avvia direttamente l'immagine dell'applicazione di destinazione dalle memorie DDR esterne. Il motore di avvio hardware copia l'immagine dell'applicazione dal dispositivo flash SPI alla memoria DDR, prima di rilasciare il ripristino del processore Cortex-M3. Dopo aver rilasciato il ripristino, il processore Cortex-M3 si avvia direttamente dalla memoria DDR. Questo metodo richiede meno tempo di avvio rispetto a multi-stage processo di avvio in quanto evita più boot stages e copia l'immagine dell'applicazione nella memoria DDR in minor tempo. Questo progetto demo implementa la logica del motore di avvio nella struttura FPGA per copiare l'immagine eseguibile dell'applicazione di destinazione dalla flash SPI alla memoria DDR per l'esecuzione. Questo design implementa anche il caricatore flash SPI, che può essere eseguito dal processore Cortex-M3 per caricare l'immagine eseguibile dell'applicazione di destinazione nel dispositivo flash SPI utilizzando l'interfaccia host fornita su SmartFusion2 SoC FPGA MMUART_1. Il DIP switch1 sul kit di valutazione della sicurezza SmartFusion2 può essere utilizzato per selezionare se programmare il dispositivo flash SPI o eseguire il codice dalla memoria DDR. Se l'applicazione di destinazione eseguibile è disponibile nel dispositivo flash SPI, il code shadowing dal dispositivo flash SPI alla memoria DDR viene avviato all'accensione del dispositivo. Il motore di avvio inizializza l'MDDR, copia l'immagine dal dispositivo flash SPI alla memoria DDR e rimappa lo spazio di memoria DDR a 0x00000000 mantenendo il processore Cortex-M3 in reset. Dopo che il motore di avvio ha rilasciato il ripristino Cortex-M3, Cortex-M3 esegue l'applicazione di destinazione dalla memoria DDR. La Figura 5 mostra il diagramma a blocchi dettagliato del progetto dimostrativo. FIC_0 è configurato in modalità Slave per accedere a MSS SPI_0 dal master AHB fabric FPGA. L'interfaccia MDDR AXI (DDR_FIC) è abilitata per accedere alla memoria DDR dal master AXI fabric FPGA.

Figura 5 Schema a blocchi della demo del motore di avvio hardware con ombreggiatura del codice

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-5

Motore di avvio
Questa è la parte principale della demo di code shadowing che copia l'immagine dell'applicazione dal dispositivo flash SPI alla memoria DDR. Il motore di avvio esegue le seguenti operazioni:

  1. Inizializzazione di MDDR per l'accesso a LPDDR a 166 MHz mantenendo il processore Cortex-M3 in reset.
  2. Copia dell'immagine dell'applicazione di destinazione dal dispositivo di memoria flash SPI alla memoria DDR utilizzando il master AXI nella struttura FPGA tramite l'interfaccia MDDR AXI.
  3. Rimappare l'indirizzo iniziale della memoria DDR da 0xA0000000 a 0x00000000 scrivendo nel registro di sistema DDR_CR.
  4. Rilascio del ripristino del processore Cortex-M3 per l'avvio dalla memoria DDR.

Figura 6 Flusso di progettazione per il metodo del motore di avvio hardware

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-6

Creazione dell'immagine dell'applicazione di destinazione per la memoria DDR

Per eseguire la demo è necessaria un'immagine che può essere eseguita dalla memoria DDR. Utilizzare la descrizione del linker production-execute-in-place-externalDDR.ld file che è incluso nel disegno files per creare l'immagine dell'applicazione. Questa descrizione del linker file definisce l'indirizzo iniziale della memoria DDR come 0x00000000 poiché il bootloader o il motore di avvio esegue la rimappatura della memoria DDR da 0xA0000000 a 0x00000000. Questo script linker crea un'immagine dell'applicazione con istruzioni, dati e sezioni BSS in memoria il cui indirizzo iniziale è 0x00000000. Un semplice diodo a emissione di luce (LED) lampeggiante, un timer e un'immagine dell'applicazione di generazione di interruzioni basata su interruttori file è previsto per questa demo.

Caricatore flash SPI

Il caricatore flash SPI è implementato per caricare la memoria flash SPI integrata con l'immagine eseguibile dell'applicazione di destinazione dal PC host tramite l'interfaccia MMUART_1. Il processore Cortex-M3 crea un buffer per i dati provenienti dall'interfaccia MMUART_1 e avvia il DMA periferico (PDMA) per scrivere i dati bufferizzati nella flash SPI tramite MSS_SPI0.

Esecuzione della demo
Per eseguire il progetto demo, attenersi alla seguente procedura: La demo mostra come caricare l'immagine dell'applicazione nella flash SPI ed eseguire l'immagine dell'applicazione dalle memorie DDR esterne. Questa demo fornisce un example immagine dell'applicazione sample_image_LPDDR.bin. Questa immagine mostra i messaggi di benvenuto e il messaggio di interruzione del timer sulla console seriale e fa lampeggiare i LED1 e LED8 sul kit di valutazione della sicurezza SmartFusion2. Per visualizzare i messaggi di interruzione GPIO sulla console seriale, premere l'interruttore SW2 o SW3.

Impostazione del progetto demo

I passaggi seguenti descrivono come configurare la demo per la scheda del kit di valutazione della sicurezza SmartFusion2: Collegare il PC host al connettore J18 utilizzando il cavo da USB A a mini-B. I driver del bridge da USB a UART vengono rilevati automaticamente. Verificare se il rilevamento viene effettuato in Gestione dispositivi come mostrato nella Figura 7.

  1. Se i driver USB non vengono rilevati automaticamente, installare il driver USB.
  2. Per la comunicazione terminale seriale tramite il cavo mini USB FTDI, installare il driver FTDI D2XX. Scarica i driver e la guida all'installazione da:
    http://www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip.

Figura 7 Flusso di progettazione per il metodo del motore di avvio hardware

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-7

Collegare i ponticelli sulla scheda del kit di valutazione della sicurezza SmartFusion2, come mostrato nella Tabella 2.

Attenzione: Prima di effettuare i collegamenti dei ponticelli, spegnere l'interruttore di alimentazione, SW7.

Tabella 2 Impostazioni dei ponticelli del kit di valutazione della sicurezza SmartFusion2

MaglionePerno (da)Perno (A)Commenti
J2212Predefinito
J2312Predefinito
J2412Predefinito
J812Predefinito
J312Predefinito

In SmartFusion2 Security Evaluation Kit, collegare l'alimentatore al connettore J6. La Figura 8 mostra la configurazione della scheda per l'esecuzione del code shadowing dalla flash SPI alla demo LPDDR sul kit di valutazione della sicurezza SmartFusion2.

Figura 8 Installazione del kit di valutazione della sicurezza SmartFusion2

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-8

SPI Flash Loader e GUI dimostrativa di code shadowing
Questo è necessario per eseguire la demo del code shadowing. SPI Flash Loader e Code Shadowing Demo GUI è una semplice interfaccia utente grafica che viene eseguita sul PC host per programmare il flash SPI ed esegue la demo di code shadowing sul kit di valutazione della sicurezza SmartFusion2. UART viene utilizzato come protocollo di comunicazione di sottolineatura tra il PC host e il kit di valutazione della sicurezza SmartFusion2. Fornisce inoltre la sezione della console seriale per stampare i messaggi di debug ricevuti dall'applicazione tramite l'interfaccia UART.

Figura 9 SPI Flash Loader e GUI dimostrativa di code shadowing

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-9

La GUI supporta le seguenti funzionalità:

  • Programma SPI Flash: programma l'immagine file nel flash SPI.
  • Program e Code Shadowing da SPI Flash a DDR: programma l'immagine file in SPI flash, lo copia nella memoria DDR e avvia l'immagine dalla memoria DDR.
  • Program e Code Shadowing da SPI Flash a SDR: programma l'immagine file in SPI flash, lo copia nella memoria SDR e avvia l'immagine dalla memoria SDR.
  • Code Shadowing su DDR: copia l'immagine esistente file dal flash SPI alla memoria DDR e avvia l'immagine dalla memoria DDR.
  • Code Shadowing su SDR: copia l'immagine esistente file dal flash SPI alla memoria SDR e avvia l'immagine dalla memoria SDR.

Fare clic su Guida per ulteriori informazioni sulla GUI.

Collegare il kit di sviluppo SmartFusion2 al computer utilizzando il cavo USB Blaster o USB Blaster II. Quindi seguire i passaggi seguenti:

  1. Accendi il kit di sviluppo SmartFusion2.
  2. Apri la GUI Demo Code Shadowing nel software Libero SoC.
  3. Seleziona le impostazioni appropriate per il tuo progetto e fai clic su "Genera" per generare la programmazione file.
  4. Connettersi al kit di sviluppo SmartFusion2 utilizzando il cavo USB Blaster o USB Blaster II.
  5. Programmare l'FPGA e caricare l'immagine dell'applicazione dal flash SPI alla memoria LPDDR facendo clic su "Programma" nella GUI demo di code shadowing.

Esecuzione del progetto demo per Multi-Stage Metodo di processo di avvio
Per eseguire il progetto demo per il multi-stage metodo di processo di avvio, attenersi alla seguente procedura:

  1. Accendi il kit di sviluppo SmartFusion2.
  2. Connettersi al kit di sviluppo SmartFusion2 utilizzando il cavo USB Blaster o USB Blaster II.
  3. Ripristina la scheda e attendi che completi il ​​processo di avvio.
  4. L'applicazione verrà eseguita automaticamente dalla memoria LPDDR.

I passaggi seguenti descrivono come eseguire la progettazione demo per multi-stage metodo di processo di avvio:

  1. Spostare l'interruttore di alimentazione SW7 su ON.
  2. Programmare il dispositivo FPGA SoC SmartFusion2 con la programmazione file previsto nel disegno files (SF2_CodeShadowing_LPDDR_DF\Programmazione
    Files\MultiStageBoot_method\CodeShadowing_LPDDR_top.stp utilizzando il software di progettazione FlashPro.
  3. Avvia l'eseguibile GUI Flash Loader e Code Shadowing Demo file disponibile nel disegno files (SF2_CodeShadowing_LPDDR_DF\GUI eseguibile\SF2_FlashLoader.exe).
  4. Selezionare la porta COM appropriata (a cui puntano i driver seriali USB) dall'elenco a discesa Porta COM.
  5. Fare clic su Connetti. Dopo aver stabilito la connessione, Connetti cambia in Disconnetti.
  6. Fare clic su Sfoglia per selezionare l'example immagine eseguibile di destinazione file fornito con il disegno files (SF2_CodeShadowing_LPDDR_DF/Sample Immagini dell'applicazione/MultiStageBoot_metodo/iample_immagine_LPDDR.bin).
    Nota: Per generare l'immagine dell'applicazione bin file, fare riferimento a “Appendice: Generazione di file eseguibili File" a pagina 24.
  7. Mantieni l'indirizzo iniziale della memoria flash SPI come predefinito a 0x00000000.
  8. Selezionare l'opzione Program and Code Shadowing da SPI Flash a DDR.
  9. Fare clic su Avvia come mostrato nella Figura 10 per caricare l'immagine eseguibile in SPI flash e code shadowing dalla memoria DDR.

Figura 10 Avvio della demo 

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-10

Se il dispositivo SmartFusion2 è programmato con un STAPL file in cui MDDR non è configurato per la memoria DDR, mostra un messaggio di errore, come mostrato nella Figura 11.

Figura 11 Dispositivo errato o messaggio di opzione

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-11

La sezione della console seriale sulla GUI mostra i messaggi di debug e inizia a programmare il flash SPI dopo aver cancellato correttamente il flash SPI. La Figura 12 mostra lo stato della scrittura flash SPI.

Figura 12 Caricamento flash

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-12

  1. Dopo aver programmato correttamente il flash SPI, il bootloader in esecuzione su SmartFusion2 SoC FPGA copia l'immagine dell'applicazione dal flash SPI alla memoria DDR e avvia l'immagine dell'applicazione. Se l'immagine fornita sample_image_LPDDR.bin è selezionato, la console seriale mostra i messaggi di benvenuto, i messaggi di interruzione dello switch e di interruzione del timer come mostrato in Figura 13 e Figura
  2. Una sequenza di LED in esecuzione viene visualizzata da LED1 a LED8 sul kit di valutazione della sicurezza SmartFusion2.
  3. Premere gli interruttori SW2 e SW3 per visualizzare i messaggi di interruzione sulla console seriale.

Figura 13 Esecuzione dell'immagine dell'applicazione di destinazione dalla memoria DDR3

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-13

Figura 14 Timer e messaggi di interruzione nella console seriale

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-14

Esecuzione della progettazione del metodo del motore di avvio dell'hardware
Per eseguire la progettazione demo per il metodo del motore di avvio hardware, attenersi alla seguente procedura:

  1. Accendi il kit di sviluppo SmartFusion2.
  2. Connettersi al kit di sviluppo SmartFusion2 utilizzando il cavo USB Blaster o USB Blaster II.
  3. Ripristina la scheda e attendi che completi il ​​processo di avvio.
  4. L'applicazione verrà eseguita automaticamente dalla memoria LPDDR.

I passaggi seguenti descrivono come eseguire la progettazione del metodo del motore di avvio hardware:

  1. Spostare l'interruttore di alimentazione SW7 su ON.
  2. Programmare il dispositivo SmarFusion2 SoC FPGA con la programmazione file previsto nel disegno files (SF2_CodeShadowing_LPDDR_DF\Programmazione Files\HWBootEngine_method\CodeShadowing_Fabric.stp utilizzando il software di progettazione FlashPro.
  3. Per programmare la SPI Flash portare il DIP switch SW5-1 in posizione ON. Questa selezione consente di avviare Cortex-M3 da eNVM. Premere SW6 per ripristinare il dispositivo SmartFusion2.
  4. Avvia l'eseguibile GUI Flash Loader e Code Shadowing Demo file disponibile nel disegno files (SF2_CodeShadowing_LPDDR_DF\GUI eseguibile\SF2_FlashLoader.exe).
  5. Selezionare la porta COM appropriata (a cui puntano i driver seriali USB) dall'elenco a discesa Porta COM.
  6. Fare clic su Connetti. Dopo aver stabilito la connessione, Connetti cambia in Disconnetti.
  7. Fare clic su Sfoglia per selezionare l'example immagine eseguibile di destinazione file fornito con il disegno files (SF2_CodeShadowing_LPDDR_DF/Sample Immagini applicazione/HWBootEngine_method/sample_immagine_LPDDR.bin).
    Nota: Per generare l'immagine dell'applicazione bin file, fare riferimento a “Appendice: Generazione di file eseguibili File" a pagina 24.
  8. Seleziona l'opzione Hardware Boot Engine in Code Shadowing Method.
  9. Selezionare l'opzione Programma SPI Flash dal menu Opzioni.
  10. Fare clic su Start, come mostrato nella Figura 15 per caricare l'immagine eseguibile nella flash SPI.

Figura 15 Avvio della demo

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-15

La sezione della console seriale sulla GUI mostra i messaggi di debug e lo stato della scrittura flash SPI, come mostrato nella Figura 16.
Figura 16 Caricamento flash

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-16

  1. Dopo aver programmato correttamente il flash SPI, spostare l'interruttore DIP SW5-1 in posizione OFF. Questa selezione consente di avviare il processore Cortex-M3 dalla memoria DDR.
  2. Premere SW6 per ripristinare il dispositivo SmartFusion2. Il motore di avvio copia l'immagine dell'applicazione dalla memoria flash SPI alla memoria DDR e rilascia reset su Cortex-M3, che avvia l'immagine dell'applicazione dalla memoria DDR. Se l'immagine fornita “sample_image_LPDDR.bin” viene caricato nella memoria flash SPI, la console seriale mostra i messaggi di benvenuto, i messaggi di interruzione interruttore (premere SW2 o SW3) e di interruzione timer, come mostrato nella Figura 17 e viene visualizzato un modello di LED in esecuzione da LED1 a LED8 su SmartFusion2 Kit di valutazione della sicurezza.

Figura 17 Esecuzione dell'immagine dell'applicazione di destinazione dalla memoria DDR3

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-17

Conclusione
Hai utilizzato con successo l'FPGA SoC SmartFusion2 con il code shadowing dalla memoria SPI Flash alla memoria LPDDR. Questa demo mostra la capacità del dispositivo SmartFusion2 di interfacciarsi con la memoria DDR e di eseguire l'immagine eseguibile dalla memoria DDR mediante lo shadowing del codice dal dispositivo di memoria flash SPI . Mostra inoltre due metodi di implementazione del code shadowing sul dispositivo SmartFusion2.

Appendice: configurazioni LPDDR

Figura 18 Impostazioni generali di configurazione DDR

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-18

Figura 19 Impostazioni di inizializzazione della memoria DDR

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-19

Figura 20 Impostazioni temporizzazione memoria DDR

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-20

Appendice: Generazione di file eseguibili File

Il cestino eseguibile file è necessario per programmare il flash SPI per l'esecuzione della demo di code shadowing. Per generare l'eseguibile bin file da “sample_image_LPDDR” SoftConsole, eseguire i seguenti passaggi:

  1. Crea il progetto SoftConsole con lo script del linker production-execute-in-place-externalDDR.
  2. Aggiungere il percorso di installazione di SoftConsole, ad esampLui,
    C:\Microsemi\Libero_v11.7\SoftConsole\Sourcery-G++\bin, nelle "Variabili d'ambiente", come mostrato nella Figura 21.

Figura 21 Aggiunta del percorso di installazione di SoftConsole

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-21

  1. Fare doppio clic sul batch file Bidone-File-Generator.bat situato in: SoftConsole/CodeShadowing_LPDDR_MSS_CM3/Sampcartella le_image_LPDDR, come mostrato nella Figura 22.

Figura 22 Aggiunta del percorso di installazione di SoftConsole

Microsemi-DG0669-SmartFusion2-Code-Shadowing-da-SPI-Flash-a-memoria-LPDDR-FIG-22

  • Il cestino-File-Generatore crea sample_immagine_LPDDR.bin file

Cronologia delle revisioni

La tabella seguente mostra le modifiche importanti apportate a questo documento per ciascuna revisione.

RevisioneCambiamenti
Revisione 2

(Aprile 2016)

Aggiornato il documento relativo alla release del software Libero SoC v11.7 (SAR 78258).
Revisione 1

(Dicembre 2015)

Versione iniziale.

Supporto prodotto

Microsemi SoC Products Group supporta i suoi prodotti con vari servizi di supporto, tra cui il servizio clienti, il centro di assistenza tecnica clienti, a websito, posta elettronica e uffici vendite in tutto il mondo. Questa appendice contiene informazioni su come contattare Microsemi SoC Products Group e utilizzare questi servizi di supporto.

Assistenza clienti
Contattare il servizio clienti per il supporto non tecnico del prodotto, come prezzi del prodotto, aggiornamenti del prodotto, informazioni sull'aggiornamento, stato dell'ordine e autorizzazione. Dal Nord America, chiama 800.262.1060 Dal resto del mondo, chiama 650.318.4460 Fax, da qualsiasi parte del mondo, 408.643.6913

Centro assistenza tecnica clienti
Microsemi SoC Products Group dispone del suo Centro di assistenza tecnica clienti con ingegneri altamente qualificati che possono aiutarti a rispondere alle tue domande su hardware, software e progettazione relative ai prodotti Microsemi SoC. Il Customer Technical Support Center dedica molto tempo alla creazione di note applicative, risposte a domande comuni sul ciclo di progettazione, documentazione di problemi noti e varie domande frequenti. Quindi, prima di contattarci, visita le nostre risorse online. È molto probabile che abbiamo già risposto alle tue domande.

Supporto tecnico
Per il supporto dei prodotti Microsemi SoC, visita
http://www.microsemi.com/products/fpga-soc/design-support/fpga-soc-support.

Websito
È possibile sfogliare una varietà di informazioni tecniche e non tecniche sulla home page di Microsemi SoC Products Group, all'indirizzo http://www.microsemi.com/products/fpga-soc/fpga-and-soc.

Contattare il supporto tecnico clienti Centro
Ingegneri altamente qualificati gestiscono il Centro di assistenza tecnica. Il centro di assistenza tecnica può essere contattato tramite e-mail o tramite il gruppo di prodotti Microsemi SoC websito.

E-mail
Puoi comunicare le tue domande tecniche al nostro indirizzo e-mail e ricevere risposte via e-mail, fax o telefono. Inoltre, se hai problemi di progettazione, puoi inviare il tuo progetto tramite e-mail files per ricevere assistenza. Monitoriamo costantemente l'account e-mail per tutto il giorno. Quando ci invii la tua richiesta, assicurati di includere il tuo nome completo, il nome dell'azienda e le tue informazioni di contatto per un'elaborazione efficiente della tua richiesta. L'indirizzo e-mail del supporto tecnico è soc_tech@microsemi.com.

I miei casi
I clienti di Microsemi SoC Products Group possono inviare e tenere traccia dei casi tecnici online accedendo a My Cases.

Fuori dagli Stati Uniti
I clienti che necessitano di assistenza al di fuori dei fusi orari degli Stati Uniti possono contattare il supporto tecnico via e-mail (soc_tech@microsemi.com) o contattare un ufficio vendite locale. Visita Chi siamo per elenchi di uffici vendite e contatti aziendali.

Supporto tecnico ITAR
Per il supporto tecnico sugli FPGA RH e RT regolati dalle normative sul traffico internazionale di armi (ITAR), contattaci tramite soc_tech@microsemi.com. In alternativa, in I miei casi, seleziona Sì nell'elenco a discesa ITAR. Per un elenco completo degli FPGA Microsemi regolamentati da ITAR, visitare l'ITAR web page.Microsemi Corporation (Nasdaq: MSCC) offre un portafoglio completo di semiconduttori e soluzioni di sistema per i mercati delle comunicazioni, della difesa e della sicurezza, aerospaziale e industriale. I prodotti includono circuiti integrati analogici a segnale misto ad alte prestazioni e resistenti alle radiazioni, FPGA, SoC e ASIC; prodotti per la gestione dell'alimentazione; dispositivi di cronometraggio e sincronizzazione e soluzioni temporali precise, che stabiliscono lo standard mondiale per il tempo; dispositivi di elaborazione vocale; soluzioni RF; componenti discreti; soluzioni di archiviazione e comunicazione aziendali, tecnologie di sicurezza e anti-tamper prodotti; Soluzioni Ethernet; CI e midspan Powerover-Ethernet; nonché capacità e servizi di progettazione personalizzati. Microsemi ha sede ad Aliso Viejo, in California, e conta circa 4,800 dipendenti in tutto il mondo. Scopri di più su www.microsemi.com.

Microsemi non fornisce alcuna garanzia, dichiarazione o garanzia in merito alle informazioni qui contenute o all'idoneità dei suoi prodotti e servizi per uno scopo particolare, né Microsemi si assume alcuna responsabilità derivante dall'applicazione o dall'uso di qualsiasi prodotto o circuito. I prodotti venduti di seguito e qualsiasi altro prodotto venduto da Microsemi sono stati soggetti a test limitati e non devono essere utilizzati insieme ad apparecchiature o applicazioni mission-critical. Tutte le specifiche di prestazione sono ritenute affidabili ma non sono verificate e l'Acquirente deve condurre e completare tutte le prestazioni e altri test dei prodotti, da soli e insieme a, o installati in, qualsiasi prodotto finale. L'Acquirente non farà affidamento su dati e specifiche di prestazione o parametri forniti da Microsemi. È responsabilità dell'Acquirente determinare autonomamente l'idoneità di qualsiasi prodotto e testarlo e verificarlo. Le informazioni fornite da Microsemi qui di seguito sono fornite "così come sono, dov'è" e con tutti i difetti, e l'intero rischio associato a tali informazioni è interamente a carico dell'Acquirente. Microsemi non concede, in modo esplicito o implicito, a nessuna parte alcun diritto di brevetto, licenza o qualsiasi altro diritto di proprietà intellettuale, sia in relazione a tali informazioni stesse che a qualsiasi cosa descritta da tali informazioni. Le informazioni fornite in questo documento sono di proprietà di Microsemi e Microsemi si riserva il diritto di apportare modifiche alle informazioni contenute in questo documento oa qualsiasi prodotto e servizio in qualsiasi momento senza preavviso.

Sede aziendale Microsemi
One Enterprise, Aliso Viejo, CA 92656 USA

2016 Microsemi Corporation. Tutti i diritti riservati. Microsemi e il logo Microsemi sono marchi di Microsemi Corporation. Tutti gli altri marchi e marchi di servizio sono di proprietà dei rispettivi proprietari.

Documenti / Risorse

Microsemi DG0669 SmartFusion2 Code Shadowing da SPI Flash a memoria LPDDR [pdf] Guida utente
DG0669 SmartFusion2 Code Shadowing da SPI Flash a memoria LPDDR, DG0669, SmartFusion2 Code Shadowing da SPI Flash a memoria LPDDR, SPI Flash a memoria LPDDR

Riferimenti

Lascia un commento

Il tuo indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *