Microsemi-LOGO

Microsemi DG0669 SmartFusion2 Code Shadowing da SPI Flash à Memoria LPDDR

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-PRODUTTU-Memoria-LPDDR

Informazione di u produttu

U SmartFusion2 SoC FPGA hè una soluzione FPGA d'alta prestazione è bassa putenza chì integra un processore ARM Cortex-M3, risorse analogiche è digitali programabili, è interfacce di cumunicazione à alta velocità in un solu chip. U software Libero SoC v11.7 hè una suite di cuncepimentu cumpleta per cuncepimentu cù Microsemi FPGA.

Usu di u produttu

Per utilizà u SmartFusion2 SoC FPGA cù l'ombra di codice da SPI Flash à a memoria LPDDR, seguite i passi sottu:

Prefazione

Scopu
Questa demo hè per i dispositivi SmartFusion®2 system-on-chip (SoC) in campo programmable gate array (FPGA). Fornisce struzzioni nantu à cumu utilizà u disignu di riferimentu currispundente.

Audience destinata

Questa guida demo hè destinata à:

  • Designers FPGA
  • Diseatori integrati
  • Disegnatori à livellu di sistema

Referenze
Vede i seguenti web pagina per una lista cumpleta è aghjurnata di a documentazione di u dispositivu SmartFusion2: http://www.microsemi.com/products/fpga-soc/soc-fpga/sf2docs
I seguenti documenti sò riferiti in sta guida demo.

  • UG0331: SmartFusion2 Microcontroller Subsystem User Guide
  • SmartFusion2 System Builder Guida d'utilizatore

SmartFusion2 SoC FPGA - Code Shadowing da SPI Flash à Memoria LPDDR

Introduzione
Stu disignu demo mostra e capacità di u dispositivu SmartFusion2 SoC FPGA per l'ombra di codice da u dispositivu di memoria flash di l'interfaccia periferica seriale (SPI) à a memoria di dati LPDDR (LPDDR) sincrona dinamica d'accessu aleatoriu (SDRAM) è eseguisce u codice da LPDDR SDRAM. A Figura 1 mostra u schema di bloccu di livellu superiore per l'ombra di codice da u dispositivu flash SPI à a memoria LPDDR.

Figura 1 Top-Level Block Diagram di u Demo

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-1

Code shadowing hè un metudu di boot chì hè utilizatu per eseguisce una maghjina da memorie esterne, più veloci è volatili (DRAM). Hè u prucessu di cupià u codice da a memoria non volatile à a memoria volatile per l'esekzione. L'ombra di codice hè necessaria, quandu a memoria non volatile assuciata à un processatore ùn sustene micca l'accessu aleatoriu à u codice per l'execuzione in u locu, o ùn ci hè micca una memoria d'accessu aleatoriu non volatile insufficiente. In l'applicazioni critiche per u rendiment, a velocità di l'esekzione pò esse migliurata da l'ombra di codice, induve u codice hè copiatu in RAM di più altu rendimentu per una esecuzione più veloce. Una sola rata di dati (SDR) / memoria DDR SDRAM sò aduprate in l'applicazioni chì anu una grande immagine eseguibile di l'applicazione è necessitanu un rendimentu più altu. Di genere, l'imaghjini eseguibili grandi sò almacenati in memoria non volatile, cum'è flash NAND o flash SPI, è copiate in memoria volatile, cum'è memoria SDR / DDR SDRAM, à l'accensione per l'esekzione. I dispositi SmartFusion2 integranu un tessuto FPGA basatu in flash di quarta generazione, un processore ARM® Cortex®-M3, è interfacce di cumunicazione d'alta prestazione in un unicu chip. I cuntrolli di memoria d'alta velocità in i dispositi SmartFusion2 sò usati per interfaccia cù i ricordi esterni DDR2 / DDR3 / LPDDR. A memoria LPDDR pò esse operata à una velocità massima di 166 MHz. U processatore Cortex-M3 pò direttamente eseguisce l'istruzzioni da a memoria DDR esterna attraversu u subsistema di microcontroller (MSS) DDR (MDDR). U FPGA Cache Controller è u ponte MSS DDR gestisce u flussu di dati per un rendimentu megliu.

Requisiti di Design
Assicuratevi chì avete i seguenti requisiti hardware è software:

Requisiti di Hardware è Software

Table 1 Requisiti di Design

Requisiti di Design Descrizzione
Requisiti Hardware
Kit di valutazione di sicurezza SmartFusion2:

• Adapter 12 V

• FlashPro4

• USB A à Mini - B cavu USB

Rev D o dopu
Host PC o Laptop Sistema Operativu Windows XP SP2 - 32-/64-bit Sistema Operativu Windows 7 - 32-/64-bit
Requisiti di u Software
Libero® System-on-Chip (SoC) v11.7
Software di prugrammazione FlashPro v11.7
SoftConsole v3.4 SP1 *
Drivers di PC Host Drivers USB à UART
Framework per lancià a demo GUI Cliente Microsoft .NET Framework 4 per lancià a GUI demo
Nota: *Per questa guida demo, SoftConsole v3.4 SP1 hè utilizatu. Per utilizà SoftConsole v4.0, vede u TU0546: SoftConsole v4.0 è Libero SoC v11.7 Tutorial.
  • Kit di sviluppu SmartFusion2
  • Software Libero SoC v11.7
  • Cavo USB Blaster o USB Blaster II

Disegnu Demo
U disignu demo utilizza un multi-stagU metudu di prucessu di boot o un metudu di u mutore di boot hardware per carica l'imaghjini di l'applicazione da SPI flash à a memoria LPDDR. Segui i passi sottu: U disignu files sò dispunibuli per scaricà da u percorsu seguente in u Microsemi websitu: http://soc.microsemi.com/download/rsc/?f=m2s_dg0669_liberov11p7_df

Disegnu files include:
U disignu demo files include:

  • Sampl'imaghjini di l'applicazione
  • Prugrammazione files
  • Liberu
  • GUI eseguibile
  • Scripts Linker
  • Cunfigurazione DDR files
  • Leghjimi.txt file

SmartFusion2 SoC FPGA - Code Shadowing da SPI Flash à Memoria LPDDR A Figura 2 mostra a struttura di primu livellu di u disignu files. Per più infurmazioni, fate riferimentu à u Readme.txt file.

Figura 2 Design Files Struttura di primu livellu

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-2

Descrizzione di Disegnu Demo

Stu disignu demo implementa a tecnica di ombra di codice per boot l'imaghjini di l'applicazione da a memoria DDR. Stu disignu furnisce ancu una interfaccia d'ospite nantu à SmartFusion2 SoC FPGA multi-mode universale asincronu / ricevitore / trasmettitore sincronu (MMUART) per carica l'immagine eseguibile di l'applicazione di destinazione in SPI flash cunnessu à l'interfaccia MSS SPI0.
L'ombra di codice hè implementata in i dui metudi seguenti:

  • Multi-stagU metudu di prucessu di boot cù u processatore Cortex-M3
  • U metudu di u mutore di boot hardware utilizendu u tissu FPGA.

Multi-Stage Metodu di prucessu di boot

  1. Crea una maghjina di l'applicazione per a memoria DDR cù u software Libero SoC.
  2. Caricate u caricatore SPI Flash in SPI flash cù u software Libero SoC.
  3. Eseguite u Code Shadowing Demo GUI per programà l'FPGA è carica l'imaghjini di l'applicazione da SPI flash à a memoria LPDDR.

L'imaghjini di l'applicazione hè eseguita da memorie DDR esterne in i seguenti dui boot stages:

  • U processore Cortex-M3 avvia u soft boot loader da a memoria non volatile integrata (eNVM), chì esegue u trasferimentu di l'imaghjini di codice da u dispositivu flash SPI à a memoria DDR.
  • U processatore Cortex-M3 boots l'imaghjini di l'applicazione da a memoria DDR.

Stu disignu implementa un prugramma di bootloader per carricà l'imaghjini eseguibili di l'applicazione di destinazione da u dispositivu flash SPI à a memoria DDR per l'esecuzione. U prugramma di bootloader in esecuzione da eNVM salta à l'applicazione di destinazione guardata in memoria DDR dopu chì l'imaghjini di l'applicazione di destinazione hè copiata in memoria DDR.

Figura 3 Code Shadowing Multi-Stage Boot Process Demo Block Diagram

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-3

U MDDR hè cunfiguratu per LPDDR per operare à 166 MHz. “Appendice: Configurazioni LPDDR” a pagina 22 mostra le impostazioni di configurazione LPDDR. U DDR hè cunfiguratu prima di eseguisce u codice di l'applicazione principale.

Bootloader

U bootloader esegue e seguenti operazioni:

  1. Copia l'imaghjini di l'applicazione di destinazione da a memoria flash SPI à a memoria DDR.
  2. Remapping l'indirizzu iniziale di memoria DDR da 0xA0000000 à 0x00000000 cunfigurà u registru di u sistema DDR_CR.
  3. Initializing the Cortex-M3 processor stack pointer as per l'applicazione di destinazione. U primu locu di a tabella di vettori di l'applicazione di destinazione cuntene u valore di puntatore di stack. A tabella di vettori di l'applicazione di destinazione hè dispunibule à partesi da l'indirizzu 0x00000000.
  4. Caricà u contatore di u prugramma (PC) per resettà u gestore di l'applicazione di destinazione per eseguisce l'imaghjini di l'applicazione di destinazione da a memoria DDR. Reset handler di l'applicazione di destinazione hè dispunibule in a tavola di vettore à l'indirizzu 0x00000004.

Figura 4 Flussu di Design per Multi-Stage Metodu di prucessu di boot

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-4

Hardware Boot Engine Metudu

  1. Generate un binariu eseguibile file utilizendu u software Libero SoC.
  2. Caricà u binariu file in SPI flash cù u software Libero SoC.
  3. Eseguite u Hardware Boot Engine Design per programà l'FPGA è carica l'imaghjini di l'applicazione da SPI flash à a memoria LPDDR.

In questu metudu, u Cortex-M3 boots direttamente l'imaghjini di l'applicazione di destinazione da i ricordi DDR esterni. U mutore di boot hardware copia l'imaghjini di l'applicazione da u dispositivu flash SPI à a memoria DDR, prima di liberà u reset di u processatore Cortex-M3. Dopu a liberazione di u resettore, u processore Cortex-M3 boots direttamente da a memoria DDR. Stu metudu richiede menu tempu di boot-up chè multi-stagu prucessu di boot perchè evita parechje boot stages è copia l'imaghjini di l'applicazione à a memoria DDR in menu tempu. Stu disignu demo implementa a logica di u mutore di boot in u tessulu FPGA per copià l'imaghjini eseguibili di l'applicazione di destinazione da SPI flash à a memoria DDR per l'esecuzione. Stu disignu implementa ancu u caricatore flash SPI, chì pò esse eseguitu da u processore Cortex-M3 per carricà l'immagine eseguibile di l'applicazione di destinazione in u dispositivu flash SPI utilizendu l'interfaccia host furnita sopra SmartFusion2 SoC FPGA MMUART_1. L'interruttore DIP1 nantu à u Kit di Evaluazione di Sicurezza SmartFusion2 pò esse usatu per selezziunà s'ellu si prugrameghja u dispositivu flash SPI o per eseguisce u codice da a memoria DDR. Se l'applicazione di destinazione eseguibile hè dispunibule in u dispositivu flash SPI, l'ombra di codice da u dispositivu flash SPI à a memoria DDR hè iniziata à l'accensione di u dispusitivu. U mutore di boot inizializza u MDDR, copia l'Image da u dispositivu flash SPI à a memoria DDR, è rimpiazza u spaziu di memoria DDR à 0x00000000 mantenendu u processatore Cortex-M3 in reset. Dopu chì u mutore di boot libera u resettore Cortex-M3, u Cortex-M3 eseguisce l'applicazione di destinazione da a memoria DDR. A Figura 5 mostra u schema di bloccu detallatu di u disignu demo. U FIC_0 hè cunfiguratu in u modu Slave per accede à u MSS SPI_0 da u maestru FPGA fabric AHB. L'interfaccia MDDR AXI (DDR_FIC) hè attivata per accede à a memoria DDR da FPGA fabric AXI master.

Figura 5 Codice Shadowing Hardware Boot Engine Demo Block Diagram

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-5

Boot Engine
Questa hè a maiò parte di a demo d'ombra di codice chì copia l'imaghjini di l'applicazione da u dispositivu flash SPI à a memoria DDR. U mutore di boot esegue e seguenti operazioni:

  1. Initializing MDDR per accede à LPDDR à 166 MHz mantenendu u processore Cortex-M3 in reset.
  2. Copia l'imaghjini di l'applicazione di destinazione da u dispositivu di memoria flash SPI à a memoria DDR utilizendu u maestru AXI in u fabricu FPGA attraversu l'interfaccia MDDR AXI.
  3. Remapping l'indirizzu iniziale di memoria DDR da 0xA0000000 à 0x00000000 scrivendu à u registru di u sistema DDR_CR.
  4. Rilasciamentu di reset à u processore Cortex-M3 per boot da a memoria DDR.

Figura 6 Flussu di Design per u Metudu di Motore di Boot Hardware

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-6

Creazione di l'Image d'Applicazione Target per a Memoria DDR

Una maghjina chì pò esse eseguita da a memoria DDR hè necessaria per eseguisce a demo. Aduprate a descrizzione di u linker production-execute-in-place-externalDDR.ld file chì hè inclusu in u disignu files per custruisce l'imaghjini di l'applicazione. Questa descrizzione di ligame file definisce l'indirizzu di partenza di a memoria DDR cum'è 0x00000000 postu chì u bootloader o u mutore di boot esegue una rimappatura di memoria DDR da 0xA0000000 à 0x00000000. Stu script di linker crea una maghjina di l'applicazione cù struzzioni, dati è sezioni BSS in memoria chì l'indirizzu iniziale hè 0x00000000. Un simplice diodu emettitore di luce (LED) chì lampeggia, un timer è un interruttore basatu à l'imaghjini di l'applicazione di generazione di interruzzione file hè furnitu per questa demo.

SPI Flash Loader

U caricatore flash SPI hè implementatu per carricà a memoria flash SPI à bordu cù l'imaghjini di l'applicazione di destinazione eseguibile da u PC host attraversu l'interfaccia MMUART_1. U processatore Cortex-M3 fa un buffer per i dati chì venenu nantu à l'interfaccia MMUART_1 è inizia a DMA periferica (PDMA) per scrive i dati buffered in SPI flash attraversu MSS_SPI0.

Curriri a Demo
Per eseguisce u disignu demo, seguite i passi sottu: A demo mostra cumu carica l'imaghjini di l'applicazione in u flash SPI è eseguisce quella maghjina di l'applicazione da i ricordi DDR esterni. Questa demo furnisce un exampl'immagine di l'applicazione sample_image_LPDDR.bin. Questa maghjina mostra i missaghji di benvenuta è u missaghju di interruzzione di u timer nantu à a cunsola seriale è lampeggia LED1 à LED8 nantu à u Kit di Valutazione di Sicurezza SmartFusion2. Per vede i missaghji di interruzzione GPIO nantu à a cunsola seriale, appughjà u switch SW2 o SW3.

Configurazione di u Disegnu Demo

I seguenti passi descrizanu cumu cunfigurà a demo per a scheda SmartFusion2 Security Evaluation Kit: Connect the host PC to the J18 Connector using the USB A to mini-B cable. I cunduttori di u ponte USB à UART sò rilevati automaticamente. Verificate se a rilevazione hè fatta in u gestore di u dispositivu cum'è mostra in Figura 7.

  1. Se i driver USB ùn sò micca rilevati automaticamente, installate u driver USB.
  2. Per a cumunicazione di u terminal seriale attraversu u cable mini USB FTDI, installate u driver FTDI D2XX. Scaricate i driver è a guida d'installazione da:
    http://www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip.

Figura 7 Flussu di Design per u Metudu di Motore di Boot Hardware

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-7

Cunnette i jumpers nantu à a scheda SmartFusion2 Security Evaluation Kit, cum'è mostra in a Tabella 2.

Attenzione: Prima di fà e cunnessione di ponti, spegne l'interruttore di l'alimentazione, SW7.

Tabella 2 Impostazioni di Jumper di Kit di Valutazione di Sicurezza SmartFusion2

Jumper Pin (da) Pin (à) Cumenti
J22 1 2 Default
J23 1 2 Default
J24 1 2 Default
J8 1 2 Default
J3 1 2 Default

In u Kit di Valutazione di Sicurezza SmartFusion2, cunnette l'alimentazione à u cunnessu J6. A Figura 8 mostra a configurazione di a scheda per eseguisce l'ombra di codice da SPI flash à LPDDR demo in u Kit di Valutazione di Sicurezza SmartFusion2.

Figura 8 Setup di Kit di valutazione di sicurezza SmartFusion2

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-8

SPI Flash Loader è Code Shadowing Demo GUI
Questu hè necessariu per eseguisce a demo di ombra di codice. SPI Flash Loader è Code Shadowing Demo GUI hè una semplice interfaccia grafica d'utilizatore chì corre nantu à u PC host per programà u flash SPI è eseguisce a demo di codice shadowing in u Kit di Valutazione di Sicurezza SmartFusion2. UART hè utilizatu cum'è u protocolu di cumunicazione sottumessu trà u PC host è SmartFusion2 Security Evaluation Kit. Hè ancu furnisce a sezione di cunsola seriale per stampà i missaghji di debug ricevuti da l'applicazione nantu à l'interfaccia UART.

Figura 9 SPI Flash Loader è Code Shadowing Demo GUI

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-9

A GUI supporta e seguenti funzioni:

  • Program SPI Flash: Programma l'imaghjini file in u flash SPI.
  • Programma è Code Shadowing da SPI Flash à DDR: Programs the image file in SPI flash, copia à a memoria DDR, è boots l'imaghjini da a memoria DDR.
  • Programma è Code Shadowing da SPI Flash à SDR: Programs the image file in SPI flash, copia à a memoria SDR, è boots l'imaghjini da a memoria SDR.
  • Code Shadowing à DDR: Copia l'imaghjini esistenti file da SPI flash à a memoria DDR è stivali l'imaghjini da a memoria DDR.
  • Code Shadowing à SDR: Copia l'imaghjini esistenti file da SPI flash à a memoria SDR è boots l'imaghjini da a memoria SDR.

Cliccate Aiutu per più infurmazione nantu à GUI.

Cunnette u Kit di Sviluppu SmartFusion2 à u vostru urdinatore utilizendu u cable USB Blaster o USB Blaster II. Allora seguitate i passi sottu:

  1. Accende u Kit di Sviluppu SmartFusion2.
  2. Apertura u Code Shadowing Demo GUI in u software Libero SoC.
  3. Selezziunate i paràmetri appropritati per u vostru disignu è cliccate "Generate" per generà a prugrammazione file.
  4. Cunnettete à u Kit di Sviluppu SmartFusion2 cù u USB Blaster o USB Blaster II cable.
  5. Prugrammà l'FPGA è carica l'imaghjini di l'applicazione da SPI flash à a memoria LPDDR clicchendu "Programma" in u Code Shadowing Demo GUI.

Esecuzione di Demo Design per Multi-Stage Metodu di prucessu di boot
Per eseguisce u disignu demo per u multi-stagU metudu di prucessu di boot, seguitate i passi sottu:

  1. Accende u Kit di Sviluppu SmartFusion2.
  2. Cunnettete à u Kit di Sviluppu SmartFusion2 cù u USB Blaster o USB Blaster II cable.
  3. Resettate u bordu è aspittà per finisce u prucessu di boot.
  4. L'applicazione si eseguirà automaticamente da a memoria LPDDR.

I seguenti passi descrizanu cumu eseguisce u disignu demo per multi-stagu metudu di prucessu di boot:

  1. Cambia l'interruttore di l'alimentazione SW7 in ON.
  2. Prugrammà u dispositivu SmartFusion2 SoC FPGA cù a prugrammazione file furnitu in u disignu files (SF2_CodeShadowing_LPDDR_DF\Programmazione
    Files\MultiStageBoot_method\CodeShadowing_LPDDR_top.stp utilizendu u software di cuncepimentu FlashPro.
  3. Lanciate u SPI Flash Loader è Code Shadowing Demo GUI eseguibile file dispunibule in u disignu files (SF2_CodeShadowing_LPDDR_DF\GUI Executable\SF2_FlashLoader.exe).
  4. Selezziunate u portu COM appropritatu (à quale sò puntati i driver USB Serial) da a lista di u portu COM.
  5. Cliccate Cunnette. Dopu avè stabilitu a cunnessione, Connect cambia à Disconnect.
  6. Cliccate Sfoglia per selezziunà l'exampl'immagine eseguibile di destinazione file furnitu cù u disignu files (SF2_CodeShadowing_LPDDR_DF/Sample Application Images/MultiStageBoot_method/sample_image_LPDDR.bin).
    Nota: Per generà u binariu di l'imaghjini di l'applicazione file, riferite à "Appendice: Generazione di Bin Executable File» à a pagina 24.
  7. Mantene l'indirizzu iniziale di a memoria flash SPI cum'è predeterminatu à 0x00000000.
  8. Selezziunate l'opzione Programma è Code Shadowing da SPI Flash à DDR.
  9. Cliccate Start cum'è mostra in a Figura 10 per carricà l'imaghjini eseguibili in SPI flash è code shadowing da a memoria DDR.

Figura 10 Starting the Demo 

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-10

Se u dispositivu SmartFusion2 hè programatu cù un STAPL file in quale MDDR ùn hè micca cunfiguratu per a memoria DDR, allora mostra un missaghju d'errore, cum'è mostra in Figura 11.

Figura 11 Dispositivu sbagliatu o missaghju d'opzione

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-11

A sezione di a cunsola seriale nantu à a GUI mostra i missaghji di debug è principia a prugrammazione di u flash SPI per sguassà cù successu u flash SPI. A Figura 12 mostra u statu di scrittura flash SPI.

Figura 12 Carica Flash

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-12

  1. In a prugrammazione di u SPI flash cù successu, u bootloader in esecuzione in SmartFusion2 SoC FPGA copia l'imaghjini di l'applicazione da SPI flash à a memoria DDR è avvia l'imaghjini di l'applicazione. Se l'imagine furnita sample_image_LPDDR.bin hè sceltu, a cunsola seriale mostra i missaghji di accolta, cambia i missaghji di interruzzione è timer interrupt cum'è mostra in Figura 13 è Figura
  2. Un mudellu LED in esecuzione hè visualizatu nantu à LED1 à LED8 nantu à u Kit di Valutazione di Sicurezza SmartFusion2.
  3. Press SW2 è SW3 switches per vede i missaghji di interruzzione in a cunsola seriale.

Figura 13 Running the Target Application Image from DDR3 Memory

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-13

Figura 14 Timer è Interrupt Messages in Serial Console

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-14

Esecuzione di u Disegnu di u Metudu di Boot Engine di Hardware
Per eseguisce u disignu demo per u metudu di u mutore di boot hardware, seguitate i passi sottu:

  1. Accende u Kit di Sviluppu SmartFusion2.
  2. Cunnettete à u Kit di Sviluppu SmartFusion2 cù u USB Blaster o USB Blaster II cable.
  3. Resettate u bordu è aspittà per finisce u prucessu di boot.
  4. L'applicazione si eseguirà automaticamente da a memoria LPDDR.

I seguenti passi descrizanu cumu eseguisce u disignu di u metudu di u mutore di boot di hardware:

  1. Cambia l'interruttore di l'alimentazione SW7 in ON.
  2. Prugrammà u dispositivu SmarFusion2 SoC FPGA cù a prugrammazione file furnitu in u disignu files (SF2_CodeShadowing_LPDDR_DF\Programmazione Files\HWBootEngine_method\CodeShadowing_Fabric.stp utilizendu u software di cuncepimentu FlashPro.
  3. Per programà u SPI Flash mette l'interruttore DIP SW5-1 in a pusizione ON. Questa selezzione face per boot Cortex-M3 da eNVM. Press SW6 per resettà u dispusitivu SmartFusion2.
  4. Lanciate u SPI Flash Loader è Code Shadowing Demo GUI eseguibile file dispunibule in u disignu files (SF2_CodeShadowing_LPDDR_DF\GUI Executable\SF2_FlashLoader.exe).
  5. Selezziunate u portu COM appropritatu (à quale sò puntati i driver USB Serial) da a lista di u portu COM.
  6. Cliccate Cunnette. Dopu avè stabilitu a cunnessione, Connect cambia à Disconnect.
  7. Cliccate Sfoglia per selezziunà l'exampl'immagine eseguibile di destinazione file furnitu cù u disignu files (SF2_CodeShadowing_LPDDR_DF/Sample Images di l'applicazione/HWBootEngine_method/sample_image_LPDDR.bin).
    Nota: Per generà u binariu di l'imaghjini di l'applicazione file, riferite à "Appendice: Generazione di Bin Executable File» à a pagina 24.
  8. Selezziunate l'opzione Hardware Boot Engine in Code Shadowing Method.
  9. Sceglite l'opzione Program SPI Flash da u menu Opzioni.
  10. Cliccate Start, cum'è mostra in Figura 15 per carricà l'imagine eseguibile in SPI flash.

Figura 15 Starting the Demo

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-15

A sezione di a cunsola seriale nantu à a GUI mostra i missaghji di debug è u statutu di scrittura flash SPI, cum'è mostra in Figura 16.
Figura 16 Carica Flash

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-16

  1. Dopu avè programatu u flash SPI cù successu, cambia l'interruttore DIP SW5-1 in a pusizione OFF. Questa selezzione face per boot u processore Cortex-M3 da a memoria DDR.
  2. Press SW6 per resettà u dispusitivu SmartFusion2. U mutore di boot copia l'imaghjini di l'applicazione da SPI flash à a memoria DDR è libera reset à Cortex-M3, chì boots l'imaghjini di l'applicazione da a memoria DDR. Se l'imagine furnita "sample_image_LPDDR.bin" hè caricatu in SPI flash, a cunsola seriale mostra i missaghji di benvenuta, interruzzione di commutazione (presse SW2 o SW3) è messagi di interruzzione di timer, cum'è mostra in a Figura 17 è un mudellu LED in esecuzione hè visualizatu nantu à LED1 à LED8 nantu à SmartFusion2. Kit di valutazione di sicurezza.

Figura 17 Running the Target Application Image from DDR3 Memory

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-17

Cunclusioni
Avete utilizatu cù successu u SmartFusion2 SoC FPGA cù l'ombra di codice da SPI Flash à a memoria LPDDR. Questa demo mostra a capacità di u dispositivu SmartFusion2 per interfaccia cù a memoria DDR è per eseguisce l'imaghjini eseguibili da a memoria DDR ombrendu u codice da u dispositivu di memoria flash SPI. . Mostra ancu dui metudi di implementazione di l'ombra di codice in u dispusitivu SmartFusion2.

Appendice: Configurazioni LPDDR

Figura 18 Impostazioni di cunfigurazione generale DDR

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-18

Figura 19 Impostazioni di inizializazione di memoria DDR

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-19

Figura 20 Impostazioni di timing di memoria DDR

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-20

Appendice: Generazione di Bin Executable File

U bin eseguibile file hè necessariu di programà u flash SPI per eseguisce a demo di ombra di codice. Per generà u bin executable file da "sample_image_LPDDR" SoftConsole, eseguite i seguenti passi:

  1. Custruite u prughjettu SoftConsole cù u script di linker production-execute-in-place-externalDDR.
  2. Aghjunghjite a strada di stallazione di SoftConsole, per esempiuample,
    C:\Microsemi\Libero_v11.7\SoftConsole\Sourcery-G++\bin, à e "Variabili di l'ambiente", cum'è mostra in a Figura 21.

Figura 21 Adding Path Installazione di SoftConsole

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-21

  1. Doppiu cliccà nantu à u batch file bin-File-Generator.bat situatu à: SoftConsole/CodeShadowing_LPDDR_MSS_CM3/Sample_image_LPDDR, cum'è mostra in Figura 22.

Figura 22 Adding Path Installazione di SoftConsole

Microsemi-DG0669-SmartFusion2-Code-Ombratura-da-SPI-Flash-à-Memoria-LPDDR-FIG-22

  • U bin-File-Generatore crea sample_image_LPDDR.bin file

Storia di rivisione

A tabella seguente mostra cambiamenti impurtanti fatti in stu documentu per ogni rivisione.

Revisione Cambiamenti
Revisione 2

(aprile 2016)

Aghjurnatu u documentu per a liberazione di u software Libero SoC v11.7 (SAR 78258).
Revisione 1

(dicembre 2015)

Liberazione iniziale.

Supportu di u produttu

Microsemi SoC Products Group sustene i so prudutti cù diversi servizii di supportu, cumpresu u Serviziu Clienti, u Centru di Supportu Tecnicu di Clienti, un websitu, posta elettronica, è uffizii di vendita in u mondu. Questu appendice cuntene infurmazioni nantu à cuntattà u Gruppu di Prodotti Microsemi SoC è l'usu di sti servizii di supportu.

Serviziu à i clienti
Cuntattate u Serviziu Clienti per un supportu di produttu micca tecnicu, cum'è u prezzu di u produttu, l'aghjurnamenti di u produttu, l'infurmazioni di l'aghjurnamentu, u statu di l'ordine è l'autorizazione. Da l'America di u Nordu, chjamate 800.262.1060 Da u restu di u mondu, chjamate 650.318.4460 Fax, da ogni locu in u mondu, 408.643.6913

Centru di Assistenza Tecnica di Clienti
Microsemi SoC Products Group furnisce u so Centru di Supportu Tecnicu à i Clienti cù ingegneri altamente qualificati chì ponu aiutà à risponde à e vostre dumande di hardware, software è cuncepimentu nantu à i Prodotti Microsemi SoC. U Centru di Supportu Tecnicu di Clienti passa assai tempu per creà note d'applicazioni, risposte à e dumande cumuni di u ciclu di cuncepimentu, documentazione di prublemi cunnisciuti, è diverse FAQs.So, prima di cuntattateci, visitate e nostre risorse in linea. Hè assai prubabile chì avemu digià rispostu à e vostre dumande.

Assistenza tecnica
Per Microsemi SoC Products Support, visitate
http://www.microsemi.com/products/fpga-soc/design-support/fpga-soc-support.

Websitu
Pudete cercà una varietà di informazioni tecniche è micca tecniche nantu à a pagina iniziale di Microsemi SoC Products Group, à http://www.microsemi.com/products/fpga-soc/fpga-and-soc.

Cuntattate l'Assistenza Tecnica Clienti Centru
Ingegneri altamente qualificati stanu u Centru di Supportu Tecnicu. U Centru di Supportu Tecnicu pò esse cuntattatu per email o attraversu u Gruppu di Prodotti Microsemi SoC websitu.

E-mail
Pudete cumunicà e vostre dumande tecniche à u nostru indirizzu email è riceve risposte per email, fax, o telefunu. Inoltre, se avete prublemi di disignu, pudete email u vostru disignu files per riceve assistenza. Monitoremu constantemente u contu di email in tuttu u ghjornu. Quandu ci mandendu a vostra dumanda, assicuratevi di include u vostru nome cumpletu, u nome di a cumpagnia è a vostra infurmazione di cuntattu per u processu efficace di a vostra dumanda. L'indirizzu email di supportu tecnicu hè soc_tech@microsemi.com.

I mo casi
I clienti di Microsemi SoC Products Group ponu invià è seguità casi tecnichi in linea andendu à I mo casi.

Fora di i Stati Uniti
I clienti chì necessitanu assistenza fora di i fusi orari di i Stati Uniti ponu cuntattà l'assistenza tecnica per email (soc_tech@microsemi.com) o cuntattate un uffiziu di vendita lucale. Visita About Us per elenchi di l'uffizii di vendita è cuntatti corporativi.

Assistenza tecnica ITAR
Per supportu tecnicu nantu à i FPGA RH è RT chì sò regulati da u Regolamentu Internaziunale di Traffic in Arms (ITAR), cuntattateci via soc_tech@microsemi.com. In alternativa, in I miei casi, selezziunate Sì in a lista a tendina ITAR. Per una lista completa di Microsemi FPGA regulati da ITAR, visitate l'ITAR web pagina.Microsemi Corporation (Nasdaq: MSCC) offre una cartera cumpleta di soluzioni di semiconductor è sistemi per i mercati di cumunicazioni, difesa è sicurità, aerospaziale è industriale. I prudutti includenu circuiti integrati di signali misti analogici d'alta prestazione è radiazioni, FPGA, SoC è ASIC; prudutti di gestione di energia; i dispusitivi di timing è di sincronizazione è suluzione di u tempu precisu, chì stabiliscenu u standard mundiale per u tempu; dispusitivi di trasfurmazioni di voce; suluzione RF; cumpunenti discreti; suluzioni di almacenamiento è cumunicazione di l'impresa, tecnulugia di sicurità è anti-t scalabileampi prudutti; suluzioni Ethernet; Powerover- Ethernet IC è midspans; cume capacità è servizii di cuncepimentu persunalizati. Microsemi hà a sede in Aliso Viejo, California, è hà circa 4,800 impiegati in u mondu. Sapete più à www.microsemi.com.

Microsemi ùn dà alcuna garanzia, rapprisentazione, o guaranzia in quantu à l'infurmazioni cuntenute quì o l'adattabilità di i so prudutti è servizii per un scopu particulare, nè Microsemi assume alcuna responsabilità chì deriva da l'applicazione o l'usu di qualsiasi pruduttu o circuitu. I prudutti venduti quì sottu è qualsiasi altri prudutti venduti da Microsemi sò stati sottumessi à una prova limitata è ùn deve micca esse aduprati in cunjunzione cù l'equipaggiu o l'applicazioni critichi per a missione. Ogni specificazione di prestazione hè ritenuta affidabile ma ùn hè micca verificata, è u Cumpratore deve fà è compie tutte e prestazioni è altre teste di i prudutti, solu è inseme cù, o installati in qualsiasi prudutti finali. L'Acquirente ùn si basa micca in alcuna dati è specificazioni di prestazione o parametri furniti da Microsemi. Hè a rispunsabilità di u Cumparatore di determinà indipindentamente l'adattabilità di qualsiasi pruduttu è di pruvà è verificà u listessu. L'infurmazioni furnite da Microsemi quì sottu sò furnite "cum'è, induve hè" è cù tutti i difetti, è tuttu u risicu assuciatu cù tali informazioni hè interamente cù u Cumpratore. Microsemi ùn cuncede, esplicitamente o implicitamente, à alcuna parte alcunu diritti di patenti, licenze, o qualsiasi altri diritti IP, sia in quantu à tali infurmazione stessa o qualcosa descritta da tali informazioni. L'infurmazione furnita in stu documentu hè di proprietà di Microsemi, è Microsemi si riserva u dirittu di fà qualsiasi cambiamenti à l'infurmazioni in stu documentu o à qualsiasi prudutti è servizii in ogni mumentu senza avvisu.

Sede centrale di Microsemi
One Enterprise, Aliso Viejo, CA 92656 USA

2016 Microsemi Corporation. Tutti i diritti riservati. Microsemi è u logo Microsemi sò marchi di Microsemi Corporation. Tutti l'altri marchi è marchi di serviziu sò a pruprietà di i so rispettivi pruprietarii.

Documenti / Risorse

Microsemi DG0669 SmartFusion2 Code Shadowing da SPI Flash à Memoria LPDDR [pdfGuida di l'utente
DG0669 SmartFusion2 Code Shadowing da SPI Flash à Memoria LPDDR, DG0669, SmartFusion2 Code Shadowing da SPI Flash à Memoria LPDDR, SPI Flash à Memoria LPDDR

Referenze

Lascia un cumentu

U vostru indirizzu email ùn serà micca publicatu. I campi obbligatori sò marcati *