Mikrosemi-LOGO

Microsemi DG0669 SmartFusion2 Code Shadowing från SPI Flash till LPDDR-minne

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-PRODUCT

Produktinformation

SmartFusion2 SoC FPGA är en högpresterande FPGA-lösning med låg effekt som integrerar en ARM Cortex-M3-processor, programmerbara analoga och digitala resurser och höghastighetskommunikationsgränssnitt på ett enda chip. Libero SoC v11.7-mjukvaran är en komplett designsvit för design med Microsemi FPGA.

Produktanvändning

För att använda SmartFusion2 SoC FPGA med kodskuggning från SPI Flash till LPDDR-minne, följ stegen nedan:

Förord

Ändamål
Den här demon är för SmartFusion®2 system-on-chip (SoC) Field Programmable gate array (FPGA)-enheter. Den ger instruktioner om hur man använder motsvarande referensdesign.

Avsedd publik

Denna demoguide är avsedd för:

  • FPGA-designers
  • Inbäddade designers
  • Konstruktörer på systemnivå

Referenser
Se följande web sida för en fullständig och uppdaterad lista över SmartFusion2 enhetsdokumentation: http://www.microsemi.com/products/fpga-soc/soc-fpga/sf2docs
Följande dokument hänvisas till i denna demoguide.

  • UG0331: Användarhandbok för SmartFusion2 Microcontroller Subsystem
  • Användarhandbok för SmartFusion2 System Builder

SmartFusion2 SoC FPGA – Code Shadowing från SPI Flash till LPDDR-minne

Introduktion
Den här demodesignen visar SmartFusion2 SoC FPGA-enhetsfunktioner för kodskuggning från den seriella perifera gränssnittet (SPI) flashminne till lågeffekt dubbel datahastighet (LPDDR) synkront dynamiskt direktminne (SDRAM) och exekvering av koden från LPDDR SDRAM. Figur 1 visar blockschemat på översta nivån för kodskuggning från SPI-flashenhet till LPDDR-minne.

Figur 1 Blockdiagram på toppnivå av demon

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-1

Code shadowing är en uppstartsmetod som används för att köra en bild från externa, snabbare och flyktiga minnen (DRAM). Det är processen att kopiera koden från det icke-flyktiga minnet till det flyktiga minnet för exekvering. Kodskuggning krävs när det icke-flyktiga minnet som är associerat med en processor inte stöder slumpmässig åtkomst till koden för exekvering på plats, eller det inte finns tillräckligt med icke-flyktigt direktminne. I prestandakritiska applikationer kan exekveringshastigheten förbättras genom kodskuggning, där kod kopieras till RAM med högre genomströmning för snabbare exekvering. Single data rate (SDR)/DDR SDRAM-minnen används i applikationer som har en stor applikationskörbar bild och kräver högre prestanda. Vanligtvis lagras de stora körbara bilderna i icke-flyktigt minne, såsom NAND-flash eller SPI-flash, och kopieras till flyktigt minne, såsom SDR/DDR SDRAM-minne, vid uppstart för exekvering. SmartFusion2-enheter integrerar fjärde generationens flashbaserade FPGA-tyg, en ARM® Cortex®-M3-processor och högpresterande kommunikationsgränssnitt på ett enda chip. Höghastighetsminneskontrollerna i SmartFusion2-enheterna används för gränssnitt med externa DDR2/DDR3/LPDDR-minnen. LPDDR-minnet kan köras med en maximal hastighet på 166 MHz. Cortex-M3-processorn kan köra instruktionerna direkt från externt DDR-minne genom mikrokontrollersubsystemet (MSS) DDR (MDDR). FPGA Cache Controller och MSS DDR-bryggan hanterar dataflödet för bättre prestanda.

Designkrav
Se till att du har följande hård- och mjukvarukrav:

Krav på hårdvara och mjukvara

Tabell 1 Designkrav

Designkrav Beskrivning
Hårdvarukrav
SmartFusion2 Security Evaluation Kit:

• 12 V adapter

• FlashPro4

• USB A till Mini – B USB-kabel

Rev D eller senare
Värd PC eller bärbar dator Operativsystem Windows XP SP2 – 32-/64-bitars Windows 7-operativsystem – 32-/64-bitars
Programvarukrav
Libero® System-on-Chip (SoC) v11.7
FlashPro programmeringsprogram v11.7
SoftConsole v3.4 SP1*
Värd PC-drivrutiner Drivrutiner för USB till UART
Ram för att lansera demo GUI Microsoft .NET Framework 4-klient för lansering av demo-GUI
Notera: *För denna demoguide används SoftConsole v3.4 SP1. För att använda SoftConsole v4.0, se TU0546: Handledning för SoftConsole v4.0 och Libero SoC v11.7.
  • SmartFusion2 Development Kit
  • Libero SoC v11.7 programvara
  • USB Blaster eller USB Blaster II-kabel

Demodesign
Demodesignen använder en multi-stagen startprocessmetod eller en hårdvarustartmotormetod för att ladda applikationsbilden från SPI-flash till LPDDR-minne. Följ stegen nedan: Designen files är tillgängliga för nedladdning från följande sökväg i Microsemi webplats: http://soc.microsemi.com/download/rsc/?f=m2s_dg0669_liberov11p7_df

Design files inkluderar:
Demodesignen files inkluderar:

  • Sampapplikationsbilder
  • Programmering files
  • Libero
  • GUI körbar
  • Länkskript
  • DDR-konfiguration files
  • Readme.txt file

SmartFusion2 SoC FPGA – Code Shadowing från SPI Flash till LPDDR-minne Figur 2 visar strukturen på toppnivån i designen files. För ytterligare information, se Readme.txt file.

Figur 2 Design Files Struktur på högsta nivå

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-2

Demo Design Beskrivning

Denna demodesign implementerar kodskuggningsteknik för att starta applikationsbilden från DDR-minnet. Denna design ger också värdgränssnitt över SmartFusion2 SoC FPGA multi-mode universell asynkron/synkron mottagare/sändare (MMUART) för att ladda målapplikationens körbara bild till SPI-blixt ansluten till MSS SPI0-gränssnittet.
Kodskuggningen implementeras i följande två metoder:

  • Multi-stage startprocessmetoden med Cortex-M3-processorn
  • Maskinvarustartmotormetod som använder FPGA-tyget.

Multi-Stage Boot Process Method

  1. Skapa en applikationsbild för DDR-minne med hjälp av Libero SoC-programvaran.
  2. Ladda SPI Flash loader i SPI flash med hjälp av Libero SoC programvara.
  3. Kör Code Shadowing Demo GUI för att programmera FPGA och ladda applikationsbilden från SPI-flash till LPDDR-minnet.

Programbilden körs från externa DDR-minnen i följande två startartages:

  • Cortex-M3-processorn startar den mjuka starthanteraren från inbäddat icke-flyktigt minne (eNVM), som utför kodbildsöverföringen från SPI-flashenhet till DDR-minne.
  • Cortex-M3-processorn startar applikationsbilden från DDR-minnet.

Denna design implementerar ett bootloader-program för att ladda målapplikationens körbara bild från SPI-flashenheten till DDR-minnet för exekvering. Bootloader-programmet som körs från eNVM hoppar till målapplikationen som är lagrad i DDR-minnet efter att målapplikationsbilden har kopierats till DDR-minnet.

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

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-3

MDDR är konfigurerad för LPDDR att arbeta vid 166 MHz. "Bilaga: LPDDR-konfigurationer" på sidan 22 visar LPDDR-konfigurationsinställningarna. DDR konfigureras innan huvudapplikationskoden körs.

Bootloader

Bootloadern utför följande operationer:

  1. Kopiera målapplikationsbilden från SPI-flashminne till DDR-minne.
  2. Ommappning av DDR-minnets startadress från 0xA0000000 till 0x00000000 genom att konfigurera DDR_CR-systemregistret.
  3. Initiering av Cortex-M3-processorstackpekaren enligt målapplikationen. Den första platsen för målapplikationsvektortabellen innehåller stackpekarens värde. Vektortabellen för målapplikationen är tillgänglig från adressen 0x00000000.
  4. Laddar programräknaren (PC) för att återställa hanteraren för målapplikationen för att köra målapplikationsbilden från DDR-minnet. Återställningshanteraren för målapplikationen är tillgänglig i vektortabellen på adressen 0x00000004.

Figur 4 Design Flow för Multi-Stage Boot Process Method

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-4

Hardware Boot Engine-metod

  1. Generera en körbar binär file med hjälp av Libero SoC-programvaran.
  2. Ladda binären file till SPI-flash med hjälp av Libero SoC-mjukvaran.
  3. Kör Hardware Boot Engine Design för att programmera FPGA och ladda applikationsbilden från SPI-flash till LPDDR-minne.

I den här metoden startar Cortex-M3 målapplikationsbilden direkt från externa DDR-minnen. Maskinvarustartmotorn kopierar applikationsbilden från SPI-flashenheten till DDR-minnet innan återställningen av Cortex-M3-processorn släpps. Efter att ha släppt återställningen startar Cortex-M3-processorn direkt från DDR-minnet. Denna metod kräver mindre uppstartstid än multi-stage startprocess eftersom den undviker flera uppstartertages och kopierar applikationsbild till DDR-minne på kortare tid. Denna demodesign implementerar startmotorlogik i FPGA-tyget för att kopiera målapplikationens körbara bild från SPI-flash till DDR-minnet för exekvering. Den här designen implementerar också SPI-flash loader, som kan köras av Cortex-M3-processorn för att ladda målapplikationens körbara bild till SPI-flashenheten med hjälp av det medföljande värdgränssnittet över SmartFusion2 SoC FPGA MMUART_1. DIP-omkopplaren1 på SmartFusion2 Security Evaluation Kit kan användas för att välja om SPI-flashenheten ska programmeras eller exekvera koden från DDR-minnet. Om den körbara målapplikationen är tillgänglig i SPI-flashenheten, startas kodskuggningen från SPI-flashenheten till DDR-minnet när enheten slås på. Startmotorn initierar MDDR, kopierar bilden från SPI-flashenheten till DDR-minnet och mappar om DDR-minnesutrymmet till 0x00000000 genom att hålla Cortex-M3-processorn i återställning. Efter att startmotorn släppt Cortex-M3-återställningen, kör Cortex-M3 målapplikationen från DDR-minnet. Figur 5 visar det detaljerade blockschemat för demodesignen. FIC_0 är konfigurerad i slavläge för att komma åt MSS SPI_0 från FPGA-tygets AHB-master. MDDR AXI-gränssnittet (DDR_FIC) är aktiverat för att komma åt DDR-minnet från FPGA-tygets AXI-master.

Figur 5 Code Shadowing Hardware Boot Engine Demo Blockdiagram

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-5

Boot Engine
Detta är huvuddelen av kodskuggningsdemon som kopierar applikationsbilden från SPI-flashenheten till DDR-minnet. Startmotorn utför följande operationer:

  1. Initiering av MDDR för åtkomst till LPDDR vid 166 MHz genom att hålla Cortex-M3-processorn i återställning.
  2. Kopiera målapplikationsbilden från SPI-flashminne till DDR-minne med hjälp av AXI-mastern i FPGA-strukturen via MDDR AXI-gränssnittet.
  3. Ommappning av DDR-minnets startadress från 0xA0000000 till 0x00000000 genom att skriva till DDR_CR-systemregistret.
  4. Släpp återställning till Cortex-M3-processor för att starta från DDR-minne.

Figur 6 Designflöde för maskinvarustartmotormetod

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-6

Skapa målapplikationsbild för DDR-minne

En bild som kan köras från DDR-minnet krävs för att köra demon. Använd länkbeskrivningen för produktion-kör-på-plats-externalDDR.ld file som ingår i designen files för att bygga applikationsbilden. Denna länkbeskrivning file definierar DDR-minnets startadress som 0x00000000 eftersom starthanteraren eller startmotorn utför DDR-minnesmappning från 0xA0000000 till 0x00000000. Detta länkskript skapar en applikationsbild med instruktioner, data och BSS-sektioner i minnet vars startadress är 0x00000000. En enkel lysdiod (LED) som blinkar, timer och switchbaserad avbrottsgenerering file tillhandahålls för denna demo.

SPI Flash Loader

SPI-flash-laddaren är implementerad för att ladda det inbyggda SPI-flashminnet med den körbara målapplikationsbilden från värddatorn via MMUART_1-gränssnittet. Cortex-M3-processorn skapar en buffert för data som kommer över MMUART_1-gränssnittet och initierar den perifera DMA (PDMA) för att skriva buffrad data till SPI-flash genom MSS_SPI0.

Kör demonstrationen
Följ stegen nedan för att köra demodesignen: Demon visar hur man laddar applikationsbilden i SPI-flashen och kör den applikationsbilden från externa DDR-minnen. Denna demo ger ett exampapplikationsbild sample_image_LPDDR.bin. Den här bilden visar välkomstmeddelanden och timeravbrottsmeddelandet på den seriella konsolen och blinkar LED1 till LED8 på SmartFusion2 Security Evaluation Kit. För att se GPIO-avbrottsmeddelandena på den seriella konsolen, tryck på SW2 eller SW3 switch.

Konfigurera demodesignen

Följande steg beskriver hur du ställer in demon för SmartFusion2 Security Evaluation Kit-kortet: Anslut värddatorn till J18-kontakten med USB A till mini-B-kabeln. Drivrutinerna för USB till UART-bryggan upptäcks automatiskt. Verifiera om upptäckten görs i enhetshanteraren som visas i figur 7.

  1. Om USB-drivrutiner inte upptäcks automatiskt, installera USB-drivrutinen.
  2. För seriell terminalkommunikation via FTDI mini USB-kabeln, installera FTDI D2XX-drivrutinen. Ladda ner drivrutiner och installationsguide från:
    http://www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip.

Figur 7 Designflöde för maskinvarustartmotormetod

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-7

Anslut byglarna på SmartFusion2 Security Evaluation Kit-kortet, som visas i Tabell 2.

Försiktighet: Innan bygelanslutningarna görs, stäng AV strömbrytaren, SW7.

Tabell 2 SmartFusion2 Security Evaluation Kit Jumper-inställningar

Jumper Pin (från) Fäst (till) Kommentarer
J22 1 2 Standard
J23 1 2 Standard
J24 1 2 Standard
J8 1 2 Standard
J3 1 2 Standard

Anslut strömförsörjningen till J2-kontakten i SmartFusion6 Security Evaluation Kit. Figur 8 visar kortets inställningar för att köra kodskuggningen från SPI-flash till LPDDR-demo på SmartFusion2 Security Evaluation Kit.

Figur 8 Installation av SmartFusion2 Security Evaluation Kit

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-8

SPI Flash Loader och Code Shadowing Demo GUI
Detta krävs för att köra kodskuggdemon. SPI Flash Loader och Code Shadowing Demo GUI är ett enkelt grafiskt användargränssnitt som körs på värddatorn för att programmera SPI flash och kör kod shadowing demo på SmartFusion2 Security Evaluation Kit. UART används som det understrykande kommunikationsprotokollet mellan värddatorn och SmartFusion2 Security Evaluation Kit. Den tillhandahåller också den seriella konsolsektionen för att skriva ut felsökningsmeddelanden som tas emot från applikationen över UART-gränssnittet.

Figur 9 SPI Flash Loader och Code Shadowing Demo GUI

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-9

GUI stöder följande funktioner:

  • Program SPI Flash: Programmerar bilden file in i SPI-blixten.
  • Program- och kodskuggning från SPI Flash till DDR: Programmerar bilden file till SPI-flash, kopierar den till DDR-minnet och startar upp bilden från DDR-minnet.
  • Program- och kodskuggning från SPI Flash till SDR: Programmerar bilden file till SPI flash, kopierar den till SDR-minnet och startar upp bilden från SDR-minnet.
  • Kodskuggning till DDR: Kopierar den befintliga bilden file från SPI-flash till DDR-minnet och startar upp bilden från DDR-minnet.
  • Kodskuggning till SDR: Kopierar den befintliga bilden file från SPI-flash till SDR-minnet och startar upp bilden från SDR-minnet.

Klicka på Hjälp för mer information om GUI.

Anslut SmartFusion2 Development Kit till din dator med USB Blaster- eller USB Blaster II-kabeln. Följ sedan stegen nedan:

  1. Slå på SmartFusion2 Development Kit.
  2. Öppna Code Shadowing Demo GUI i Libero SoC-programvaran.
  3. Välj lämpliga inställningar för din design och klicka på "Generera" för att generera programmeringen file.
  4. Anslut till SmartFusion2 Development Kit med USB Blaster- eller USB Blaster II-kabeln.
  5. Programmera FPGA och ladda applikationsbilden från SPI-flash till LPDDR-minne genom att klicka på "Program" i Code Shadowing Demo GUI.

Kör demodesignen för Multi-Stage Boot Process Method
För att köra demodesignen för multi-stage startprocessmetoden, följ stegen nedan:

  1. Slå på SmartFusion2 Development Kit.
  2. Anslut till SmartFusion2 Development Kit med USB Blaster- eller USB Blaster II-kabeln.
  3. Återställ kortet och vänta tills det slutför uppstartsprocessen.
  4. Applikationen kommer att köras automatiskt från LPDDR-minnet.

Följande steg beskriver hur man kör demodesignen för multi-stage boot process metod:

  1. Ändra strömbrytaren SW7 till ON.
  2. Programmera SmartFusion2 SoC FPGA-enheten med programmeringen file tillhandahålls i designen files (SF2_CodeShadowing_LPDDR_DF\Programmering
    Files\MultiStageBoot_method\CodeShadowing_LPDDR_top.stp med hjälp av designprogramvaran FlashPro.
  3. Starta SPI Flash Loader och Code Shadowing Demo GUI körbar file finns i designen files (SF2_CodeShadowing_LPDDR_DF\GUI Executable\SF2_FlashLoader.exe).
  4. Välj lämplig COM-port (som USB-seriella drivrutiner pekar mot) från rullgardinsmenyn COM-port.
  5. Klicka på Anslut. När anslutningen har upprättats ändras Connect till Koppla från.
  6. Klicka på Bläddra för att välja exampden körbara målbilden file försedd med designen files (SF2_CodeShadowing_LPDDR_DF/Sample Application Images/MultiStageBoot_method/sample_image_LPDDR.bin).
    Notera: För att generera applikationens bildlåda file, se "Bilaga: Generera körbart fack File" på sidan 24.
  7. Behåll startadressen för SPI-flashminnet som standard på 0x00000000.
  8. Välj alternativet Program och kodskuggning från SPI Flash till DDR.
  9. Klicka på Start som visas i figur 10 för att ladda den körbara bilden till SPI-flash och kodskuggning från DDR-minnet.

Figur 10 Starta demon 

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-10

Om SmartFusion2-enheten är programmerad med en STAPL file där MDDR inte är konfigurerat för DDR-minne visar det ett felmeddelande, som visas i figur 11.

Figur 11 Fel enhet eller alternativmeddelande

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-11

Seriekonsolsektionen på det grafiska gränssnittet visar felsökningsmeddelandena och börjar programmera SPI-flash när SPI-flashen raderas framgångsrikt. Figur 12 visar status för SPI-blixtskrivning.

Figur 12 Blixtladdning

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-12

  1. När SPI-flashen har programmerats framgångsrikt, kopierar starthanteraren som körs på SmartFusion2 SoC FPGA applikationsbilden från SPI-flash till DDR-minnet och startar applikationsavbildningen. Om den medföljande bilden sample_image_LPDDR.bin är vald, visar seriekonsolen välkomstmeddelanden, växlingsavbrott och timeravbrottsmeddelanden som visas i figur 13 och figur
  2. Ett löpande LED-mönster visas på LED1 till LED8 på SmartFusion2 Security Evaluation Kit.
  3. Tryck på SW2- och SW3-knapparna för att se avbrottsmeddelanden på den seriella konsolen.

Figur 13 Köra målapplikationsbilden från DDR3-minnet

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-13

Figur 14 Timer- och avbrottsmeddelanden i seriell konsol

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-14

Köra Hardware Boot Engine Method Design
Följ stegen nedan för att köra demodesignen för hårdvarustartmotormetoden:

  1. Slå på SmartFusion2 Development Kit.
  2. Anslut till SmartFusion2 Development Kit med USB Blaster- eller USB Blaster II-kabeln.
  3. Återställ kortet och vänta tills det slutför uppstartsprocessen.
  4. Applikationen kommer att köras automatiskt från LPDDR-minnet.

Följande steg beskriver hur man kör designen av maskinvarustartmotorns metod:

  1. Ändra strömbrytaren SW7 till ON.
  2. Programmera SmarFusion2 SoC FPGA-enheten med programmeringen file tillhandahålls i designen files (SF2_CodeShadowing_LPDDR_DF\Programmering Files\HWBootEngine_method\CodeShadowing_Fabric.stp med FlashPro designprogramvara.
  3. För att programmera SPI-blixten gör DIP-omkopplaren SW5-1 till ON-läge. Detta val gör att Cortex-M3 kan startas från eNVM. Tryck på SW6 för att återställa SmartFusion2-enheten.
  4. Starta SPI Flash Loader och Code Shadowing Demo GUI körbar file finns i designen files (SF2_CodeShadowing_LPDDR_DF\GUI Executable\SF2_FlashLoader.exe).
  5. Välj lämplig COM-port (som USB-seriella drivrutiner pekar mot) från rullgardinsmenyn COM-port.
  6. Klicka på Anslut. När anslutningen har upprättats ändras Connect till Koppla från.
  7. Klicka på Bläddra för att välja exampden körbara målbilden file försedd med designen files (SF2_CodeShadowing_LPDDR_DF/Sample Application Images/HWBootEngine_method/sample_image_LPDDR.bin).
    Notera: För att generera applikationens bildlåda file, se "Bilaga: Generera körbart fack File" på sidan 24.
  8. Välj alternativet Hardware Boot Engine i Code Shadowing Method.
  9. Välj alternativet Program SPI Flash från alternativmenyn.
  10. Klicka på Start, som visas i figur 15 för att ladda den körbara bilden till SPI flash.

Figur 15 Starta demon

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-15

Seriekonsolsektionen på GUI visar felsökningsmeddelanden och status för SPI-flashskrivning, som visas i figur 16.
Figur 16 Blixtladdning

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-16

  1. Efter framgångsrik programmering av SPI-blixten, ändra DIP-omkopplaren SW5-1 till OFF-läget. Detta val gör att Cortex-M3-processorn kan startas från DDR-minne.
  2. Tryck på SW6 för att återställa SmartFusion2-enheten. Startmotorn kopierar applikationsbilden från SPI-flash till DDR-minnet och släpper återställning till Cortex-M3, som startar applikationsbilden från DDR-minnet. Om den medföljande bilden "sample_image_LPDDR.bin” laddas till SPI-blixt, den seriella konsolen visar välkomstmeddelanden, växlingsavbrott (tryck på SW2 eller SW3) och timeravbrottsmeddelanden, som visas i figur 17 och ett löpande LED-mönster visas på LED1 till LED8 på SmartFusion2 Säkerhetsutvärderingskit.

Figur 17 Köra målapplikationsbilden från DDR3-minnet

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-17

Slutsats
Du har framgångsrikt använt SmartFusion2 SoC FPGA med kodskuggning från SPI Flash till LPDDR-minne. Den här demonstrationen visar förmågan hos SmartFusion2-enheten att samverka med DDR-minne och köra den körbara bilden från DDR-minnet genom att skugga kod från SPI-flashminnet . Den visar också två metoder för implementering av kodskuggning på SmartFusion2-enheten.

Bilaga: LPDDR-konfigurationer

Figur 18 Allmänna DDR-konfigurationsinställningar

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-18

Figur 19 Inställningar för initialisering av DDR-minne

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-19

Figur 20 Inställningar för DDR-minnestid

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-20

Bilaga: Generera körbart lager File

Den körbara papperskorgen file krävs för att programmera SPI-blixten för att köra kodskuggningsdemon. För att generera den körbara bin file från "sample_image_LPDDR” SoftConsole, utför följande steg:

  1. Bygg SoftConsole-projektet med länkskriptet production-execute-in-place-externalDDR.
  2. Lägg till SoftConsoles installationssökväg, till exempelample,
    C:\Microsemi\Libero_v11.7\SoftConsole\Sourcery-G++\bin, till 'Environment Variables', som visas i figur 21.

Figur 21 Lägga till SoftConsole-installationsväg

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-21

  1. Dubbelklicka på batchen file bin-File-Generator.bat finns på: SoftConsole/CodeShadowing_LPDDR_MSS_CM3/Sample_image_LPDDR-mappen, som visas i figur 22.

Figur 22 Lägga till SoftConsole installationsväg

Microsemi-DG0669-SmartFusion2-Code-Shadowing-from-SPI-Flash-to-LPDDR-Memory-FIG-22

  • Soptunnan-File-Generator skapar sample_image_LPDDR.bin file

Revisionshistorik

Följande tabell visar viktiga ändringar som gjorts i detta dokument för varje revision.

Revision Ändringar
Revision 2

(april 2016)

Uppdaterade dokumentet för Libero SoC v11.7 mjukvaruversionen (SAR 78258).
Revision 1

(december 2015)

Initial release.

Produktsupport

Microsemi SoC Products Group stödjer sina produkter med olika supporttjänster, inklusive kundtjänst, tekniskt kundsupportcenter, ett webwebbplats, e-post och försäljningskontor över hela världen. Den här bilagan innehåller information om hur du kontaktar Microsemi SoC Products Group och använder dessa supporttjänster.

Kundservice
Kontakta kundtjänst för icke-teknisk produktsupport, såsom produktpriser, produktuppgraderingar, uppdateringsinformation, orderstatus och auktorisering. Från Nordamerika, ring 800.262.1060 Från resten av världen, ring 650.318.4460 Fax, var som helst i världen, 408.643.6913

Kundsupportcenter
Microsemi SoC Products Group bemannar sitt tekniska kundsupportcenter med mycket skickliga ingenjörer som kan hjälpa dig att svara på dina frågor om hårdvara, mjukvara och design om Microsemi SoC-produkter. Customer Technical Support Center lägger ner mycket tid på att skapa applikationsanteckningar, svar på vanliga designcykelfrågor, dokumentation av kända problem och olika vanliga frågor. Så, innan du kontaktar oss, vänligen besök våra onlineresurser. Det är mycket troligt att vi redan har svarat på dina frågor.

Teknisk support
För Microsemi SoC Products Support, besök
http://www.microsemi.com/products/fpga-soc/design-support/fpga-soc-support.

Webplats
Du kan bläddra bland en mängd teknisk och icke-teknisk information på Microsemi SoC Products Groups hemsida, på http://www.microsemi.com/products/fpga-soc/fpga-and-soc.

Kontakta den tekniska kundsupporten Centrum
Högutbildade ingenjörer bemannar tekniskt supportcenter. Det tekniska supportcentret kan kontaktas via e-post eller via Microsemi SoC Products Group webplats.

E-post
Du kan kommunicera dina tekniska frågor till vår e-postadress och få svar via e-post, fax eller telefon. Om du har designproblem kan du också maila din design files att få hjälp. Vi övervakar ständigt e-postkontot under hela dagen. När du skickar din förfrågan till oss, var noga med att inkludera ditt fullständiga namn, företagsnamn och din kontaktinformation för en effektiv behandling av din förfrågan. Den tekniska supportens e-postadress är soc_tech@microsemi.com.

Mina fall
Microsemi SoC Products Group-kunder kan skicka in och spåra tekniska fall online genom att gå till Mina ärenden.

Utanför USA
Kunder som behöver hjälp utanför USA:s tidszoner kan antingen kontakta teknisk support via e-post (soc_tech@microsemi.com) eller kontakta ett lokalt försäljningskontor. Besök Om oss för försäljningskontorsuppgifter och företagskontakter.

ITAR teknisk support
För teknisk support på RH och RT FPGA som regleras av International Traffic in Arms Regulations (ITAR), kontakta oss via soc_tech@microsemi.com. Alternativt, i Mina ärenden, välj Ja i rullgardinsmenyn ITAR. För en komplett lista över ITAR-reglerade Microsemi FPGA:er, besök ITAR web page.Microsemi Corporation (Nasdaq: MSCC) erbjuder en omfattande portfölj av halvledar- och systemlösningar för kommunikation, försvar och säkerhet, flyg- och industrimarknader. Produkterna inkluderar högpresterande och strålningshärdade analoga integrerade kretsar med blandade signaler, FPGA, SoC och ASIC; Power Management produkter; timing- och synkroniseringsenheter och exakta tidslösningar, sätter världens standard för tid; röstbehandlingsanordningar; RF-lösningar; diskreta komponenter; företagslagrings- och kommunikationslösningar, säkerhetsteknologier och skalbar anti-tamper produkter; Ethernet-lösningar; Powerover- Ethernet ICs och midspans; samt anpassade designmöjligheter och tjänster. Microsemi har sitt huvudkontor i Aliso Viejo, Kalifornien, och har cirka 4,800 XNUMX anställda globalt. Läs mer på www.microsemi.com.

Microsemi lämnar inga garantier, representationer eller garantier avseende informationen som finns häri eller lämpligheten av dess produkter och tjänster för något speciellt ändamål, och Microsemi tar inte heller något som helst ansvar som uppstår till följd av tillämpningen eller användningen av någon produkt eller krets. Produkterna som säljs nedan och alla andra produkter som säljs av Microsemi har varit föremål för begränsade tester och bör inte användas tillsammans med verksamhetskritisk utrustning eller applikationer. Eventuella prestandaspecifikationer tros vara tillförlitliga men är inte verifierade, och köparen måste utföra och slutföra alla prestanda- och andra tester av produkterna, ensam och tillsammans med, eller installerade i, eventuella slutprodukter. Köparen ska inte lita på några data och prestandaspecifikationer eller parametrar som tillhandahålls av Microsemi. Det är köparens ansvar att självständigt avgöra lämpligheten för alla produkter och att testa och verifiera densamma. Informationen som tillhandahålls av Microsemi nedan tillhandahålls "i befintligt skick, var är" och med alla fel, och hela risken förknippad med sådan information ligger helt och hållet hos köparen. Microsemi ger inte, uttryckligen eller underförstått, till någon part några patenträttigheter, licenser eller andra IP-rättigheter, vare sig det gäller sådan information i sig eller något som beskrivs i sådan information. Informationen som tillhandahålls i detta dokument ägs av Microsemi, och Microsemi förbehåller sig rätten att göra ändringar av informationen i detta dokument eller till produkter och tjänster när som helst utan föregående meddelande.

Microsemis huvudkontor
One Enterprise, Aliso Viejo, CA 92656, USA

2016 Microsemi Corporation. Alla rättigheter förbehållna. Microsemi och Microsemi-logotypen är varumärken som tillhör Microsemi Corporation. Alla andra varumärken och servicemärken tillhör sina respektive ägare.

Dokument/resurser

Microsemi DG0669 SmartFusion2 Code Shadowing från SPI Flash till LPDDR-minne [pdf] Användarhandbok
DG0669 SmartFusion2 Code Shadowing från SPI Flash till LPDDR-minne, DG0669, SmartFusion2 Code Shadowing från SPI Flash till LPDDR-minne, SPI Flash till LPDDR-minne

Referenser

Lämna en kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade *