Microsemi-LOGO

Microsemi DG0669 SmartFusion2 Code Shadowing van SPI Flash naar LPDDR-geheugen

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-PRODUCT

Productinformatie

De SmartFusion2 SoC FPGA is een krachtige, energiezuinige FPGA-oplossing die een ARM Cortex-M3-processor, programmeerbare analoge en digitale bronnen en snelle communicatie-interfaces op één chip integreert. De Libero SoC v11.7-software is een compleet ontwerppakket voor ontwerpen met Microsemi FPGA's.

Productgebruik

Om de SmartFusion2 SoC FPGA te gebruiken met code-shadowing van SPI Flash naar LPDDR-geheugen, volgt u de onderstaande stappen:

Voorwoord

Doel
Deze demo is voor SmartFusion®2 system-on-chip (SoC) field programmable gate array (FPGA)-apparaten. Het bevat instructies voor het gebruik van het overeenkomstige referentieontwerp.

Beoogd publiek

Deze demogids is bedoeld voor:

  • FPGA-ontwerpers
  • Ingebouwde ontwerpers
  • Ontwerpers op systeemniveau

Referenties
Zie het volgende web pagina voor een volledige en actuele lijst met SmartFusion2-apparaatdocumentatie: http://www.microsemi.com/products/fpga-soc/soc-fpga/sf2docs
In deze demogids wordt verwezen naar de volgende documenten.

  • UG0331: Gebruikershandleiding SmartFusion2-microcontrollersubsysteem
  • Gebruikershandleiding voor SmartFusion2 System Builder

SmartFusion2 SoC FPGA – Code-schaduwing van SPI Flash naar LPDDR-geheugen

Invoering
Dit demo-ontwerp toont de mogelijkheden van het SmartFusion2 SoC FPGA-apparaat voor code-shadowing van het seriële perifere interface (SPI) flashgeheugenapparaat naar low power double data rate (LPDDR) synchroon dynamisch willekeurig toegankelijk geheugen (SDRAM) en het uitvoeren van de code vanaf LPDDR SDRAM. Figuur 1 toont het blokdiagram op het hoogste niveau voor codeschaduw van het SPI-flashapparaat naar het LPDDR-geheugen.

Figuur 1 Blokdiagram op het hoogste niveau van de demo

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-1

Code-shadowing is een opstartmethode die wordt gebruikt om een ​​afbeelding uit externe, snellere en vluchtige geheugens (DRAM) uit te voeren. Het is het proces waarbij de code van het niet-vluchtige geheugen naar het vluchtige geheugen wordt gekopieerd voor uitvoering. Code-shadowing is vereist wanneer het niet-vluchtige geheugen dat bij een processor hoort geen willekeurige toegang tot de code ondersteunt voor uitvoering ter plaatse, of als er onvoldoende niet-vluchtig willekeurig toegankelijk geheugen is. In prestatiekritieke toepassingen kan de uitvoeringssnelheid worden verbeterd door code-shadowing, waarbij code wordt gekopieerd naar RAM met een hogere doorvoer voor snellere uitvoering. Single Data Rate (SDR)/DDR SDRAM-geheugens worden gebruikt in toepassingen met een grote uitvoerbare afbeelding van de toepassing en die hogere prestaties vereisen. Normaal gesproken worden de grote uitvoerbare afbeeldingen opgeslagen in niet-vluchtig geheugen, zoals NAND-flash of SPI-flash, en gekopieerd naar vluchtig geheugen, zoals SDR/DDR SDRAM-geheugen, bij het opstarten voor uitvoering. SmartFusion2-apparaten integreren op flash gebaseerde FPGA-stof van de vierde generatie, een ARM® Cortex®-M3-processor en hoogwaardige communicatie-interfaces op één enkele chip. De snelle geheugencontrollers in de SmartFusion2-apparaten worden gebruikt om te communiceren met de externe DDR2/DDR3/LPDDR-geheugens. Het LPDDR-geheugen kan worden gebruikt met een maximale snelheid van 166 MHz. De Cortex-M3-processor kan de instructies rechtstreeks uitvoeren vanuit extern DDR-geheugen via het microcontroller-subsysteem (MSS) DDR (MDDR). De FPGA Cache Controller en MSS DDR-bridge verzorgen de gegevensstroom voor betere prestaties.

Ontwerpvereisten
Zorg ervoor dat u aan de volgende hardware- en softwarevereisten voldoet:

Hardware- en softwarevereisten

Tabel 1 Ontwerpvereisten

Ontwerpvereisten Beschrijving
Hardwarevereisten
SmartFusion2 beveiligingsevaluatiekit:

• 12 V-adapter

• FlashPro4

• USB A naar Mini – B USB-kabel

Rev D of later
Host-pc of laptop Windows XP SP2-besturingssysteem – 32-/64-bit Windows 7-besturingssysteem – 32-/64-bit
Softwarevereisten
Libero® systeem-op-chip (SoC) v11.7
FlashPro-programmeersoftware v11.7
SoftConsole v3.4 SP1*
Host pc-stuurprogramma's USB naar UART-stuurprogramma ' s
Kader voor het starten van een demo-GUI Microsoft .NET Framework 4 Client voor het starten van de demo-GUI
Opmerking: *Voor deze demohandleiding wordt SoftConsole v3.4 SP1 gebruikt. Voor het gebruik van SoftConsole v4.0, zie de TU0546: SoftConsole v4.0 en Libero SoC v11.7 zelfstudie.
  • SmartFusion2-ontwikkelingskit
  • Libero SoC v11.7-software
  • USB Blaster- of USB Blaster II-kabel

Demo-ontwerp
Het demo-ontwerp maakt gebruik van een multi-stagDe opstartprocesmethode of een hardware-opstartmotormethode om de applicatie-image van SPI-flash naar LPDDR-geheugen te laden. Volg de onderstaande stappen: Het ontwerp files kunnen worden gedownload via het volgende pad in de Microsemi webwebsite: http://soc.microsemi.com/download/rsc/?f=m2s_dg0669_liberov11p7_df

Ontwerp files omvatten:
Het demo-ontwerp files omvatten:

  • Sampafbeeldingen van applicaties
  • Programmeren files
  • Vrij
  • GUI uitvoerbaar
  • Linker-scripts
  • DDR-configuratie files
  • Leesmij.txt file

SmartFusion2 SoC FPGA – Code Shadowing van SPI Flash naar LPDDR-geheugen Figuur 2 toont de structuur op het hoogste niveau van het ontwerp fileS. Voor meer details, zie Readme.txt file.

Figuur 2 Ontwerp Files Structuur op het hoogste niveau

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-2

Demoontwerpbeschrijving

Dit demo-ontwerp implementeert code-shadowing-techniek om de applicatie-image op te starten vanuit DDR-geheugen. Dit ontwerp biedt ook een hostinterface via SmartFusion2 SoC FPGA multi-mode universele asynchrone/synchrone ontvanger/zender (MMUART) om de uitvoerbare afbeelding van de doeltoepassing te laden in SPI-flash aangesloten op de MSS SPI0-interface.
De codeschaduw wordt op de volgende twee manieren geïmplementeerd:

  • Multi-stage opstartprocesmethode met behulp van de Cortex-M3-processor
  • Hardware-opstartengine-methode met behulp van de FPGA-fabric.

Multi-Stage Opstartprocesmethode

  1. Maak een applicatie-image voor DDR-geheugen met behulp van de Libero SoC-software.
  2. Laad de SPI Flash-lader in SPI Flash met behulp van de Libero SoC-software.
  3. Voer de Code Shadowing Demo GUI uit om de FPGA te programmeren en de applicatie-image van SPI-flash naar LPDDR-geheugen te laden.

De applicatie-image wordt uitgevoerd vanuit externe DDR-geheugens in de volgende twee opstartprocedurestagzijn:

  • De Cortex-M3-processor start de softbootloader op vanuit ingebed niet-vluchtig geheugen (eNVM), dat de codebeeldoverdracht uitvoert van een SPI-flashapparaat naar DDR-geheugen.
  • De Cortex-M3-processor start het applicatie-image op vanuit DDR-geheugen.

Dit ontwerp implementeert een bootloader-programma om de uitvoerbare afbeelding van de doeltoepassing van een SPI-flashapparaat naar DDR-geheugen te laden voor uitvoering. Het bootloaderprogramma dat vanuit eNVM wordt uitgevoerd, springt naar de doeltoepassing die is opgeslagen in het DDR-geheugen nadat de afbeelding van de doeltoepassing naar het DDR-geheugen is gekopieerd.

Figuur 3 Codeschaduwing Multi-Stage Opstartprocesdemoblokdiagram

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-3

De MDDR is zo geconfigureerd dat LPDDR werkt op 166 MHz. “Bijlage: LPDDR-configuraties” op pagina 22 toont de LPDDR-configuratie-instellingen. De DDR wordt geconfigureerd voordat de hoofdtoepassingscode wordt uitgevoerd.

Bootloader

De bootloader voert de volgende bewerkingen uit:

  1. Het doeltoepassingsimage kopiëren van SPI-flashgeheugen naar DDR-geheugen.
  2. Het DDR-geheugenstartadres opnieuw toewijzen van 0xA0000000 naar 0x00000000 door het DDR_CR-systeemregister te configureren.
  3. Initialiseren van de Cortex-M3-processorstackaanwijzer volgens de doeltoepassing. De eerste locatie van de vectortabel van de doeltoepassing bevat de stapelaanwijzerwaarde. De vectortabel van de doeltoepassing is beschikbaar vanaf het adres 0x00000000.
  4. Het laden van de programmateller (PC) om de handler van de doeltoepassing te resetten voor het uitvoeren van de afbeelding van de doeltoepassing vanuit het DDR-geheugen. De reset-handler van de doeltoepassing is beschikbaar in de vectortabel op het adres 0x00000004.

Figuur 4 Ontwerpstroom voor Multi-Stage Opstartprocesmethode

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-4

Hardware Boot Engine-methode

  1. Genereer een uitvoerbaar binair bestand file met behulp van de Libero SoC-software.
  2. Laad het binaire bestand file in SPI-flash met behulp van de Libero SoC-software.
  3. Voer het Hardware Boot Engine Design uit om de FPGA te programmeren en laad de applicatie-image van SPI-flash naar LPDDR-geheugen.

Bij deze methode start de Cortex-M3 rechtstreeks het doeltoepassingsimage op vanuit externe DDR-geheugens. De hardware-opstartengine kopieert de applicatie-image van het SPI-flashapparaat naar het DDR-geheugen, voordat de Cortex-M3-processorreset wordt vrijgegeven. Na het loslaten van de reset start de Cortex-M3-processor rechtstreeks op vanuit DDR-geheugen. Deze methode vereist minder opstarttijd dan multi-stage-opstartproces omdat het meerdere opstartprocedures vermijdttages en kopieert de applicatie-image in minder tijd naar DDR-geheugen. Dit demo-ontwerp implementeert opstartmotorlogica in FPGA-fabric om de uitvoerbare afbeelding van de doeltoepassing van SPI-flash naar het DDR-geheugen te kopiëren voor uitvoering. Dit ontwerp implementeert ook een SPI-flashloader, die kan worden uitgevoerd door de Cortex-M3-processor om de uitvoerbare afbeelding van de doeltoepassing in een SPI-flashapparaat te laden met behulp van de meegeleverde hostinterface via SmartFusion2 SoC FPGA MMUART_1. De DIP-schakelaar1 op de SmartFusion2 Security Evaluation Kit kan worden gebruikt om te selecteren of het SPI-flashapparaat moet worden geprogrammeerd of dat de code uit het DDR-geheugen moet worden uitgevoerd. Als de uitvoerbare doeltoepassing beschikbaar is op het SPI-flashapparaat, wordt de codeschaduw van het SPI-flashapparaat naar het DDR-geheugen gestart bij het opstarten van het apparaat. De opstartengine initialiseert de MDDR, kopieert de afbeelding van het SPI-flashapparaat naar DDR-geheugen en wijst de DDR-geheugenruimte opnieuw toe aan 0x00000000 door de Cortex-M3-processor op reset te houden. Nadat de opstartmotor de Cortex-M3-reset heeft vrijgegeven, voert de Cortex-M3 de doeltoepassing uit vanuit DDR-geheugen. Figuur 5 toont het gedetailleerde blokdiagram van het demo-ontwerp. De FIC_0 is geconfigureerd in de Slave-modus om toegang te krijgen tot de MSS SPI_0 vanaf de FPGA fabric AHB-master. De MDDR AXI-interface (DDR_FIC) is ingeschakeld voor toegang tot het DDR-geheugen van de FPGA fabric AXI-master.

Figuur 5 Code Shadowing Hardware Boot Engine Demoblokdiagram

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-5

Boot-engine
Dit is het grootste deel van de code-shadowing-demo die de applicatie-image van het SPI-flashapparaat naar het DDR-geheugen kopieert. De opstartengine voert de volgende bewerkingen uit:

  1. Initialiseren van MDDR voor toegang tot LPDDR op 166 MHz door de Cortex-M3-processor op reset te houden.
  2. Het kopiëren van de doeltoepassingsimage van een SPI-flashgeheugenapparaat naar DDR-geheugen met behulp van de AXI-master in de FPGA-fabric via de MDDR AXI-interface.
  3. Het DDR-geheugenstartadres opnieuw toewijzen van 0xA0000000 naar 0x00000000 door naar het DDR_CR-systeemregister te schrijven.
  4. Reset naar Cortex-M3-processor vrijgeven om op te starten vanuit DDR-geheugen.

Figuur 6 Ontwerpstroom voor hardware-opstartengine-methode

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-6

Doeltoepassingsimage maken voor DDR-geheugen

Om de demo uit te voeren is een image nodig die vanuit het DDR-geheugen kan worden uitgevoerd. Gebruik de productie-execute-in-place-externalDDR.ld linkerbeschrijving file dat is meegenomen in het ontwerp files om de applicatie-image te bouwen. Deze linkerbeschrijving file definieert het startadres van het DDR-geheugen als 0x00000000, aangezien de bootloader of opstartengine het DDR-geheugen opnieuw toewijst van 0xA0000000 naar 0x00000000. Dit linkerscript maakt een applicatie-image met instructies, gegevens en BSS-secties in het geheugen waarvan het startadres 0x00000000 is. Een eenvoudige knipperende lichtgevende diode (LED), op timer en schakelaar gebaseerde applicatie-afbeelding voor het genereren van interrupts file is beschikbaar voor deze demo.

SPI Flash-lader

De SPI-flashloader is geïmplementeerd om het ingebouwde SPI-flashgeheugen te laden met de uitvoerbare doeltoepassingsafbeelding vanaf de host-pc via de MMUART_1-interface. De Cortex-M3-processor maakt een buffer voor de gegevens die via de MMUART_1-interface binnenkomen en initieert de perifere DMA (PDMA) om de gebufferde gegevens naar SPI-flash te schrijven via de MSS_SPI0.

De demo uitvoeren
Om het demo-ontwerp uit te voeren, volgt u de onderstaande stappen: De demo laat zien hoe u de applicatie-image in de SPI-flash laadt en die applicatie-image uitvoert vanuit externe DDR-geheugens. Deze demo biedt een exampbestand applicatie-afbeelding sample_image_LPDDR.bin. Deze afbeelding toont de welkomstberichten en het timeronderbrekingsbericht op de seriële console en knippert LED1 tot LED8 op de SmartFusion2 Security Evaluation Kit. Om de GPIO-onderbrekingsberichten op de seriële console te zien, drukt u op de SW2- of SW3-schakelaar.

Het demo-ontwerp instellen

De volgende stappen beschrijven hoe u de demo voor het SmartFusion2 Security Evaluation Kit-bord instelt: Sluit de host-pc aan op de J18-connector met behulp van de USB A naar mini-B-kabel. De stuurprogramma's voor de USB naar UART-bridge worden automatisch gedetecteerd. Controleer of de detectie wordt uitgevoerd in Apparaatbeheer, zoals weergegeven in Afbeelding 7.

  1. Als USB-stuurprogramma's niet automatisch worden gedetecteerd, installeert u het USB-stuurprogramma.
  2. Voor seriële terminalcommunicatie via de FTDI mini-USB-kabel installeert u het FTDI D2XX-stuurprogramma. Download de stuurprogramma's en installatiehandleiding van:
    http://www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip.

Figuur 7 Ontwerpstroom voor hardware-opstartengine-methode

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-7

Sluit de jumpers op de SmartFusion2 Security Evaluation Kit-kaart aan, zoals weergegeven in Tabel 2.

Voorzichtigheid: Voordat u de jumperverbindingen maakt, schakelt u de voedingsschakelaar, SW7, UIT.

Tabel 2 Jumperinstellingen SmartFusion2-beveiligingsevaluatiekit

Trui Vastzetten (van) Vastzetten (aan) Reacties
J22 1 2 Standaard
J23 1 2 Standaard
J24 1 2 Standaard
J8 1 2 Standaard
J3 1 2 Standaard

Sluit in de SmartFusion2 Security Evaluation Kit de voeding aan op de J6-connector. Figuur 8 toont de kaartopstelling voor het uitvoeren van de code-shadowing van SPI-flash naar LPDDR-demo op de SmartFusion2 Security Evaluation Kit.

Afbeelding 8 Installatie van de SmartFusion2-beveiligingsevaluatiekit

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-8

SPI Flash Loader en Code Shadowing-demo GUI
Dit is vereist om de code-shadowing-demo uit te voeren. SPI Flash Loader en Code Shadowing Demo GUI is een eenvoudige grafische gebruikersinterface die op de host-pc draait om de SPI Flash te programmeren en de code shadowing-demo uit te voeren op de SmartFusion2 Security Evaluation Kit. UART wordt gebruikt als het ondersteunende communicatieprotocol tussen de host-pc en de SmartFusion2 Security Evaluation Kit. Het biedt ook een seriële consolesectie om de foutopsporingsberichten af ​​te drukken die zijn ontvangen van de applicatie via de UART-interface.

Figuur 9 SPI Flash Loader en Code Shadowing Demo GUI

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-9

De GUI ondersteunt de volgende functies:

  • Programma SPI Flash: Programmeert het beeld file in de SPI-flitser.
  • Programma- en codeschaduwing van SPI Flash tot DDR: programmeert de afbeelding file in SPI-flash, kopieert het naar het DDR-geheugen en start de afbeelding op vanuit het DDR-geheugen.
  • Programma- en codeschaduwing van SPI Flash tot SDR: programmeert de afbeelding file in SPI-flash, kopieert het naar het SDR-geheugen en start de afbeelding op vanuit het SDR-geheugen.
  • Code Shadowing to DDR: Kopieert de bestaande afbeelding file van SPI-flash naar het DDR-geheugen en start de afbeelding op vanuit het DDR-geheugen.
  • Code Shadowing naar SDR: Kopieert de bestaande afbeelding file van SPI-flash naar het SDR-geheugen en start de afbeelding op vanuit het SDR-geheugen.

Klik op Help voor meer informatie over GUI.

Sluit de SmartFusion2 Development Kit aan op uw computer met behulp van de USB Blaster- of USB Blaster II-kabel. Volg dan de onderstaande stappen:

  1. Schakel de SmartFusion2-ontwikkelkit in.
  2. Open de Code Shadowing Demo GUI in de Libero SoC-software.
  3. Selecteer de juiste instellingen voor uw ontwerp en klik op “Genereren” om de programmering te genereren file.
  4. Maak verbinding met de SmartFusion2 Development Kit met behulp van de USB Blaster- of USB Blaster II-kabel.
  5. Programmeer de FPGA en laad de applicatie-image van SPI-flash naar LPDDR-geheugen door op "Programma" te klikken in de Code Shadowing Demo GUI.

Het demoontwerp voor Multi-S uitvoerentage Opstartprocesmethode
Om het demo-ontwerp voor de multi-s uit te voerentage opstartprocesmethode volgt u de onderstaande stappen:

  1. Schakel de SmartFusion2-ontwikkelkit in.
  2. Maak verbinding met de SmartFusion2 Development Kit met behulp van de USB Blaster- of USB Blaster II-kabel.
  3. Reset het bord en wacht tot het opstartproces is voltooid.
  4. De applicatie wordt automatisch uitgevoerd vanuit het LPDDR-geheugen.

In de volgende stappen wordt beschreven hoe u het demoontwerp voor multi-s uitvoerttage opstartprocesmethode:

  1. Zet de voedingsschakelaar SW7 op ON.
  2. Programmeer het SmartFusion2 SoC FPGA-apparaat met de programmering file voorzien in het ontwerp files (SF2_CodeShadowing_LPDDR_DF\Programming
    Files\MultiStageBoot_method\CodeShadowing_LPDDR_top.stp met behulp van de FlashPro-ontwerpsoftware.
  3. Start het uitvoerbare bestand SPI Flash Loader en Code Shadowing Demo GUI file beschikbaar in het ontwerp files (SF2_CodeShadowing_LPDDR_DF\GUI Executable\SF2_FlashLoader.exe).
  4. Selecteer de juiste COM-poort (waarnaar de USB-seriële stuurprogramma's verwijzen) in de vervolgkeuzelijst COM-poort.
  5. Klik op Verbinden. Nadat de verbinding tot stand is gebracht, verandert Connect in Disconnect.
  6. Klik op Bladeren om het example doel uitvoerbare afbeelding file voorzien van het ontwerp files (SF2_CodeShadowing_LPDDR_DF/Sample Applicatie Afbeeldingen/MultiStageBoot_methode/sample_image_LPDDR.bin).
    Opmerking: Om de applicatie-imagebak te genereren file, zie “Bijlage: Uitvoerbare map genereren File” op pagina 24.
  7. Houd het startadres van het SPI-flashgeheugen standaard op 0x00000000.
  8. Selecteer de optie Programma- en codeschaduwing van SPI Flash naar DDR.
  9. Klik op Start zoals weergegeven in Figuur 10 om de uitvoerbare afbeelding in SPI-flash en code-shadowing vanuit DDR-geheugen te laden.

Figuur 10 De demo starten 

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-10

Als het SmartFusion2-apparaat is geprogrammeerd met een STAPL file waarin MDDR niet is geconfigureerd voor DDR-geheugen, wordt er een foutmelding weergegeven, zoals weergegeven in Afbeelding 11.

Afbeelding 11 Bericht over verkeerd apparaat of optie

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-11

Het seriële consolegedeelte op de GUI toont de foutopsporingsberichten en begint met het programmeren van SPI-flash nadat de SPI-flash met succes is gewist. Figuur 12 toont de status van SPI-flashschrijven.

Figuur 12 Flash laden

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-12

  1. Als de SPI-flash succesvol is geprogrammeerd, kopieert de bootloader die op SmartFusion2 SoC FPGA draait het applicatie-image van SPI-flash naar het DDR-geheugen en start het applicatie-image op. Als de geleverde afbeelding sample_image_LPDDR.bin is geselecteerd, toont de seriële console de welkomstberichten, switch interrupt en timer interrupt berichten zoals getoond in Figuur 13 en Figuur
  2. Er wordt een doorlopend LED-patroon weergegeven op LED1 tot LED8 op de SmartFusion2 Security Evaluation Kit.
  3. Druk op SW2- en SW3-schakelaars om interruptberichten op de seriële console te zien.

Figuur 13 Het doeltoepassingsimage uitvoeren vanuit DDR3-geheugen

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-13

Figuur 14 Timer- en interruptberichten in seriële console

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-14

Het hardware-boot-engine-methodeontwerp uitvoeren
Volg de onderstaande stappen om het demo-ontwerp voor de hardware-opstartengine-methode uit te voeren:

  1. Schakel de SmartFusion2-ontwikkelkit in.
  2. Maak verbinding met de SmartFusion2 Development Kit met behulp van de USB Blaster- of USB Blaster II-kabel.
  3. Reset het bord en wacht tot het opstartproces is voltooid.
  4. De applicatie wordt automatisch uitgevoerd vanuit het LPDDR-geheugen.

De volgende stappen beschrijven hoe u het ontwerp van de hardware-opstartengine-methode uitvoert:

  1. Zet de voedingsschakelaar SW7 op ON.
  2. Programmeer het SmarFusion2 SoC FPGA-apparaat met de programmering file voorzien in het ontwerp files (SF2_CodeShadowing_LPDDR_DF\Programming Files\HWBootEngine_method\CodeShadowing_Fabric.stp met behulp van de FlashPro-ontwerpsoftware.
  3. Om de SPI-flitser te programmeren, zet u DIP-schakelaar SW5-1 in de AAN-positie. Deze selectie maakt het opstarten van Cortex-M3 vanuit eNVM mogelijk. Druk op SW6 om het SmartFusion2-apparaat te resetten.
  4. Start het uitvoerbare bestand SPI Flash Loader en Code Shadowing Demo GUI file beschikbaar in het ontwerp files (SF2_CodeShadowing_LPDDR_DF\GUI Executable\SF2_FlashLoader.exe).
  5. Selecteer de juiste COM-poort (waarnaar de USB-seriële stuurprogramma's verwijzen) in de vervolgkeuzelijst COM-poort.
  6. Klik op Verbinden. Nadat de verbinding tot stand is gebracht, verandert Connect in Disconnect.
  7. Klik op Bladeren om het example doel uitvoerbare afbeelding file voorzien van het ontwerp files (SF2_CodeShadowing_LPDDR_DF/Sample Application Images/HWBootEngine_method/sample_image_LPDDR.bin).
    Opmerking: Om de applicatie-imagebak te genereren file, zie “Bijlage: Uitvoerbare map genereren File” op pagina 24.
  8. Selecteer de Hardware Boot Engine-optie in Code Shadowing-methode.
  9. Selecteer de optie Programma SPI Flash in het menu Opties.
  10. Klik op Start, zoals weergegeven in Figuur 15, om de uitvoerbare afbeelding in SPI Flash te laden.

Figuur 15 De demo starten

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-15

Het seriële consolegedeelte op de GUI toont de foutopsporingsberichten en de status van SPI-flash-schrijven, zoals weergegeven in Afbeelding 16.
Figuur 16 Flash laden

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-16

  1. Nadat u de SPI-flitser succesvol heeft geprogrammeerd, zet u DIP-schakelaar SW5-1 in de UIT-positie. Deze selectie zorgt ervoor dat de Cortex-M3-processor vanuit DDR-geheugen kan worden opgestart.
  2. Druk op SW6 om het SmartFusion2-apparaat te resetten. De opstartengine kopieert de applicatie-image van SPI-flash naar het DDR-geheugen en geeft een reset vrij naar Cortex-M3, die de applicatie-image opstart vanuit het DDR-geheugen. Als de geleverde afbeelding “sample_image_LPDDR.bin” wordt geladen naar SPI-flash, de seriële console toont de welkomstberichten, switch interrupt (druk op SW2 of SW3) en timer interrupt-berichten, zoals weergegeven in afbeelding 17 en een doorlopend LED-patroon wordt weergegeven op LED1 tot LED8 op de SmartFusion2 Beveiligingsevaluatiekit.

Figuur 17 Het uitvoeren van de doeltoepassingsimage vanuit DDR3-geheugen

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-17

Conclusie
U hebt met succes de SmartFusion2 SoC FPGA gebruikt met codeschaduwing van SPI Flash naar LPDDR-geheugen. Deze demo toont de mogelijkheid van het SmartFusion2-apparaat om te communiceren met DDR-geheugen en om de uitvoerbare afbeelding uit het DDR-geheugen uit te voeren door code van een SPI-flashgeheugenapparaat te schaduwen . Het toont ook twee methoden voor code-shadowing-implementatie op het SmartFusion2-apparaat.

Bijlage: LPDDR-configuraties

Figuur 18 Algemene DDR-configuratie-instellingen

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-18

Figuur 19 DDR-geheugeninitialisatie-instellingen

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-19

Afbeelding 20 Instellingen voor DDR-geheugentiming

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-20

Bijlage: Uitvoerbare map genereren File

De uitvoerbare bak file is vereist om de SPI-flash te programmeren voor het uitvoeren van de code shadowing-demo. Om de uitvoerbare bin te genereren file van “sample_image_LPDDR” SoftConsole, voert u de volgende stappen uit:

  1. Bouw het SoftConsole-project met het linkerscript production-execute-in-place-externalDDR.
  2. Voeg bijvoorbeeld het SoftConsole-installatiepad toeampde,
    C:\Microsemi\Libero_v11.7\SoftConsole\Sourcery-G++\bin, naar de 'Omgevingsvariabelen', zoals weergegeven in Figuur 21.

Figuur 21 SoftConsole-installatiepad toevoegen

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-21

  1. Dubbelklik op de batch file Bak-File-Generator.bat op: SoftConsole/CodeShadowing_LPDDR_MSS_CM3/Sampmap le_image_LPDDR, zoals weergegeven in Figuur 22.

Figuur 22 SoftConsole-installatiepad toevoegen

Microsemi-DG0669-SmartFusion2-code-shadowing-van-SPI-Flash-naar-LPDDR-geheugen-FIG-22

  • De prullenbak-File-Generator creëert sample_image_LPDDR.bin file

Revisiegeschiedenis

De volgende tabel toont voor elke revisie de belangrijke wijzigingen die in dit document zijn aangebracht.

Herziening Wijzigingen
Revisie 2

(april 2016)

Het document bijgewerkt voor de softwareversie van Libero SoC v11.7 (SAR 78258).
Revisie 1

(december 2015)

Eerste release.

Productondersteuning

Microsemi SoC Products Group ondersteunt haar producten met verschillende ondersteunende diensten, waaronder Customer Service, Customer Technical Support Center, een website, e-mail en wereldwijde verkoopkantoren. Deze bijlage bevat informatie over contact opnemen met Microsemi SoC Products Group en het gebruik van deze ondersteuningsdiensten.

Klantenservice
Neem contact op met de klantenservice voor niet-technische productondersteuning, zoals productprijzen, productupgrades, update-informatie, bestelstatus en autorisatie. Vanuit Noord-Amerika, bel 800.262.1060 Vanuit de rest van de wereld, bel 650.318.4460 Fax, waar ook ter wereld, 408.643.6913

Klantencentrum voor technische ondersteuning
Microsemi SoC Products Group beschikt over hoogopgeleide technici in het Customer Technical Support Center die u kunnen helpen bij het beantwoorden van uw hardware-, software- en ontwerpvragen over Microsemi SoC-producten. Het Customer Technical Support Center besteedt veel tijd aan het maken van toepassingsnotities, antwoorden op veelgestelde vragen over de ontwerpcyclus, documentatie van bekende problemen en diverse veelgestelde vragen. Bezoek daarom eerst onze online bronnen voordat u contact met ons opneemt. Het is zeer waarschijnlijk dat wij uw vragen al hebben beantwoord.

Technische ondersteuning
Ga voor ondersteuning voor Microsemi SoC-producten naar
http://www.microsemi.com/products/fpga-soc/design-support/fpga-soc-support.

Webplaats
U kunt door een verscheidenheid aan technische en niet-technische informatie bladeren op de startpagina van de Microsemi SoC Products Group, op http://www.microsemi.com/products/fpga-soc/fpga-and-soc.

Contact opnemen met de technische ondersteuning van de klant Centrum
Hoogopgeleide ingenieurs bemannen het Technical Support Center. U kunt contact opnemen met het Technical Support Center via e-mail of via de Microsemi SoC Products Group webplaats.

E-mail
U kunt uw technische vragen naar ons e-mailadres sturen en antwoorden per e-mail, fax of telefoon ontvangen. Ook als u ontwerpproblemen heeft, kunt u uw ontwerp e-mailen files om hulp te krijgen. We houden het e-mailaccount de hele dag voortdurend in de gaten. Wanneer u uw verzoek naar ons verzendt, zorg er dan voor dat u uw volledige naam, bedrijfsnaam en uw contactgegevens vermeldt voor een efficiënte verwerking van uw verzoek. Het e-mailadres voor technische ondersteuning is soc_tech@microsemi.com.

Mijn zaken
Klanten van Microsemi SoC Products Group kunnen technische cases online indienen en volgen door naar My Cases te gaan.

Buiten de VS
Klanten die hulp nodig hebben buiten de Amerikaanse tijdzones kunnen contact opnemen met de technische ondersteuning via e-mail (soc_tech@microsemi.com) of neem contact op met een plaatselijk verkoopkantoor. Ga naar Over ons voor aanbiedingen van verkoopkantoren en zakelijke contacten.

ITAR technische ondersteuning
Neem voor technische ondersteuning voor RH- en RT-FPGA's die worden gereguleerd door International Traffic in Arms Regulations (ITAR) contact met ons op via soc_tech@microsemi.com. U kunt ook binnen Mijn cases Ja selecteren in de vervolgkeuzelijst ITAR. Bezoek de ITAR voor een volledige lijst van door ITAR gereguleerde Microsemi FPGA's web page.Microsemi Corporation (Nasdaq: MSCC) biedt een uitgebreid portfolio van halfgeleider- en systeemoplossingen voor communicatie, defensie en veiligheid, ruimtevaart en industriële markten. Producten omvatten hoogwaardige en stralingsbestendige analoge geïntegreerde schakelingen met gemengd signaal, FPGA's, SoC's en ASIC's; energiebeheerproducten; timing- en synchronisatieapparatuur en nauwkeurige tijdoplossingen, die de wereldstandaard voor tijd bepalen; spraakverwerkingsapparaten; RF-oplossingen; discrete componenten; zakelijke opslag- en communicatieoplossingen, beveiligingstechnologieën en schaalbare anti-tamper producten; Ethernet-oplossingen; Powerover-Ethernet IC's en midspans; evenals aangepaste ontwerpmogelijkheden en diensten. Microsemi heeft zijn hoofdkantoor in Aliso Viejo, Californië, en heeft wereldwijd ongeveer 4,800 medewerkers. Meer informatie op www.microsemi.com.

Microsemi geeft geen garantie, verklaring of garantie met betrekking tot de informatie die hierin is opgenomen of de geschiktheid van haar producten en diensten voor een bepaald doel, noch aanvaardt Microsemi enige aansprakelijkheid die voortvloeit uit de toepassing of het gebruik van een product of circuit. De producten die hieronder worden verkocht en alle andere producten die door Microsemi worden verkocht, zijn onderworpen aan beperkte tests en mogen niet worden gebruikt in combinatie met bedrijfskritische apparatuur of toepassingen. Er wordt aangenomen dat alle prestatiespecificaties betrouwbaar zijn, maar deze worden niet geverifieerd, en de Koper moet alle prestatie- en andere tests van de producten uitvoeren en voltooien, alleen en samen met, of geïnstalleerd in, eventuele eindproducten. Koper mag niet vertrouwen op gegevens en prestatiespecificaties of parameters verstrekt door Microsemi. Het is de verantwoordelijkheid van de Koper om de geschiktheid van producten onafhankelijk te bepalen en deze te testen en te verifiëren. De hieronder door Microsemi verstrekte informatie wordt verstrekt “as is, waar is” en met alle gebreken, en het volledige risico dat aan dergelijke informatie is verbonden, ligt volledig bij de Koper. Microsemi verleent aan geen enkele partij expliciet of impliciet enige octrooirechten, licenties of andere IE-rechten, ongeacht of dit betrekking heeft op dergelijke informatie zelf of op iets dat door dergelijke informatie wordt beschreven. De informatie in dit document is eigendom van Microsemi en Microsemi behoudt zich het recht voor om op elk moment en zonder voorafgaande kennisgeving wijzigingen aan te brengen in de informatie in dit document of in producten en diensten.

Microsemi-hoofdkantoor
One Enterprise, Aliso Viejo, CA 92656 VS

2016 Microsemi-bedrijf. Alle rechten voorbehouden. Microsemi en het Microsemi-logo zijn handelsmerken van Microsemi Corporation. Alle andere handelsmerken en dienstmerken zijn eigendom van hun respectievelijke eigenaren.

Documenten / Bronnen

Microsemi DG0669 SmartFusion2 Code Shadowing van SPI Flash naar LPDDR-geheugen [pdf] Gebruikershandleiding
DG0669 SmartFusion2 Code Shadowing van SPI Flash naar LPDDR-geheugen, DG0669, SmartFusion2 Code Shadowing van SPI Flash naar LPDDR-geheugen, SPI Flash naar LPDDR-geheugen

Referenties

Laat een reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd *