Microchip UG0881 PolarFire SoC FPGA Booting U Konfigurazzjoni
Garanzija
Microsemi ma tagħmel l-ebda garanzija, rappreżentazzjoni, jew garanzija dwar l-informazzjoni li tinsab hawnhekk jew l-adegwatezza tal-prodotti u s-servizzi tagħha għal xi skop partikolari, u lanqas Microsemi ma tassumi l-ebda responsabbiltà tkun xi tkun li tirriżulta mill-applikazzjoni jew l-użu ta 'kwalunkwe prodott jew ċirkwit. Il-prodotti mibjugħa hawn taħt u kwalunkwe prodott ieħor mibjugħ minn Microsemi kienu soġġetti għal ttestjar limitat u m'għandhomx jintużaw flimkien ma 'tagħmir jew applikazzjonijiet kritiċi għall-missjoni. Kwalunkwe speċifikazzjonijiet tal-prestazzjoni huma maħsuba li huma affidabbli iżda mhumiex verifikati, u x-Xerrej għandu jwettaq u jlesti l-prestazzjoni kollha u l-ittestjar ieħor tal-prodotti, waħdu u flimkien ma ', jew installati fi kwalunkwe prodott finali. Ix-xerrej m'għandux joqgħod fuq xi speċifikazzjonijiet jew parametri ta' dejta u prestazzjoni pprovduti minn Microsemi. Hija r-responsabbiltà tax-Xerrej li jiddetermina b'mod indipendenti l-adegwatezza ta' kwalunkwe prodott u li jittestja u jivverifika l-istess. L-informazzjoni pprovduta minn Microsemi hawn taħt hija pprovduta "kif inhi, fejn hija" u bid-difetti kollha, u r-riskju kollu assoċjat ma 'din l-informazzjoni huwa kompletament max-Xerrej. Microsemi ma tagħti, b'mod espliċitu jew impliċitu, lil xi parti xi drittijiet ta' privattiva, liċenzji, jew kwalunkwe dritt ieħor ta' PI, kemm jekk fir-rigward ta' tali informazzjoni nnifisha jew xi ħaġa deskritta minn tali informazzjoni. L-informazzjoni pprovduta f'dan id-dokument hija proprjetarja ta' Microsemi, u Microsemi tirriżerva d-dritt li tagħmel kwalunkwe tibdil fl-informazzjoni f'dan id-dokument jew fi kwalunkwe prodott u servizz fi kwalunkwe ħin mingħajr avviż.
Dwar Microsemi
Microsemi, sussidjarja għal kollox ta' Microchip Technology Inc. (Nasdaq: MCHP), toffri portafoll komprensiv ta' soluzzjonijiet ta' semikondutturi u sistemi għall-ajruspazju u d-difiża, komunikazzjonijiet, ċentru tad-dejta u swieq industrijali. Il-prodotti jinkludu ċirkwiti integrati ta' sinjal imħallat Analog ta' prestazzjoni għolja u mwebbsa bir-radjazzjoni, FPGAs, SoCs u ASICs; prodotti għall-ġestjoni tal-enerġija; apparati ta 'ħin u sinkronizzazzjoni u soluzzjonijiet ta' ħin preċiżi, li jistabbilixxu l-istandard tad-dinja għall-ħin; Tagħmir għall-ipproċessar tal-vuċi; Soluzzjonijiet RF; komponenti diskreti; ħażna ta 'intrapriżi u soluzzjonijiet ta' komunikazzjoni, teknoloġiji ta 'sigurtà u anti-t skalabbliamper prodotti; Soluzzjonijiet Ethernet; Power-over-Ethernet ICs u midspans; kif ukoll kapaċitajiet u servizzi tad-disinn apposta. Tgħallem aktar fuq www.microsemi.com.
Ibbutjar U Konfigurazzjoni
L-FPGAs PolarFire SoC jużaw ċirkwiti avvanzati ta 'power-up biex jiżguraw enerġija affidabbli fuq meta tixgħel u reset. Fil-power-up u r-reset, is-sekwenza tal-boot-up PolarFire SoC FPGA ssegwi Power-on reset (POR), il-boot tal-Apparat, l-inizjalizzazzjoni tad-Disinn, il-pre-boot tas-Subsistema tal-Mikrokontrollur (MSS), u l-istartjar tal-utent MSS. Dan id-dokument jiddeskrivi l-MSS pre-boot u l-MSS User Boot. Għal informazzjoni dwar l-inizjalizzazzjoni tal-PORT, l-Ibbutjar tal-Apparat u d-Disinn, ara UG0890: Gwida tal-Utent għall-Power-Up u r-Resets tal-PolarFire SoC FPGA.
Għal aktar informazzjoni dwar il-karatteristiċi tal-MSS, ara UG0880: PolarFire SoC MSS User Guide.
Sekwenza tal-Ibbutjar
Is-sekwenza tal-boot-up tibda meta l-PolarFire SoC FPGA jitħaddem jew jiġi reset. Tispiċċa meta l-proċessur ikun lest biex jesegwixxi programm ta 'applikazzjoni. Din is-sekwenza tal-ibbutjar tgħaddi minn diversi stages qabel ma tibda l-eżekuzzjoni tal-programmi.
Sett ta 'operazzjonijiet huma mwettqa matul il-proċess Boot-up li jinkludi power-on reset tal-ħardwer, inizjalizzazzjoni periferali, inizjalizzazzjoni tal-memorja, u t-tagħbija tal-applikazzjoni definita mill-utent minn memorja mhux volatili għall-memorja volatili għall-eżekuzzjoni.
Il-figura li ġejja turi fażijiet differenti tas-sekwenza tal-Ibbutjar.
Figura 1 Sekwenza tal-Ibbutjar
MSS Pre-Boot
Mat-tlestija b'suċċess tal-Inizjalizzazzjoni tad-Disinn, MSS Pre-boot jibda l-eżekuzzjoni tiegħu. L-MSS jiġi rilaxxat minn reset wara t-tlestija tal-proċeduri tal-istartjar normali kollha. Il-kontrollur tas-sistema jamministra l-ipprogrammar, l-inizjalizzazzjoni u l-konfigurazzjoni tal-apparati. MSS Pre-boot ma jseħħx jekk l-apparat ipprogrammat ikun ikkonfigurat għall-modalità ta' sospensjoni tal-kontrollur tas-sistema.
Il-fażi ta 'inizjalizzazzjoni ta' qabel il-boot tal-MSS hija kkoordinata mill-firmware tal-kontrollur tas-sistema, għalkemm tista 'tagħmel użu mill-E51 fil-Kumpless Core tal-MSS biex twettaq ċerti partijiet tas-sekwenza ta' qabel il-boot.
L-avvenimenti li ġejjin iseħħu matul l-MSS pre-boot stage:
- Tixgħel tal-Memorja Mhux Volatili inkorporata tal-MSS (eNVM)
- Inizjalizzazzjoni tat-tiswija ta' redundancy assoċjata mal-cache MSS Core Complex L2
- Awtentikazzjoni tal-Kodiċi tal-Ibbutjar tal-Utent (jekk l-għażla tal-Ibbutjar Sikura tal-Utent hija attivata)
- Trasferiment operazzjonali MSS lill-Utent Boot kodiċi
L-MSS Core Complex jista 'jiġi booted f'wieħed minn erba' modi. It-tabella li ġejja telenka l-għażliet ta’ qabel il-boot tal-MSS, li jistgħu jiġu kkonfigurati u pprogrammati fl-sNVM. Il-modalità tal-ibbutjar hija definita mill-parametru tal-utent U_MSS_BOOTMODE[1:0]. Dejta addizzjonali tal-konfigurazzjoni tal-boot hija dipendenti mill-mod u hija definita mill-parametru tal-utent U_MSS_BOOTCFG (ara Tabella 3, paġna 4 u Tabella 5, paġna 6).
Tabella 1 • MSS Core Complex Boot Modes
U_MSS_BOOTMODE[1:0] | Modalità | Deskrizzjoni |
0 | Boot idle | MSS Core Complex tibda mill-boot ROM jekk MSS ma jkunx ikkonfigurat |
1 | Boot mhux sikur | MSS Core Complex jibda direttament mill-indirizz definit mill-U_MSS_BOOTADDR |
2 | Utent sikur boot | Boots MSS Core Complex minn sNVM |
3 | Boot sigura tal-fabbrika | Boots MSS Core Complex li jużaw il-protokoll tal-boot sikur tal-fabbrika |
L-għażla tal-but tintgħażel bħala parti mill-fluss tad-disinn Libero. It-tibdil tal-mod jista 'jinkiseb biss permezz tal-ġenerazzjoni ta' programmar FPGA ġdid file.
Figura 2 • MSS Pre-boot Flow
Idle Boot
Jekk l-MSS ma jkunx ikkonfigurat (eżample, apparat vojt), allura l-MSS Core Complex jesegwixxi programm ta 'boot ROM li jżomm il-proċessuri kollha f'linja infinita sakemm debugger jgħaqqad mal-mira. Ir-reġistri tal-vector tal-boot iżommu l-valur tagħhom sakemm l-apparat jiġi reset jew tiġi pprogrammata konfigurazzjoni ġdida tal-modalità tal-ibbutjar. Għal apparati kkonfigurati, din il-modalità tista' tiġi implimentata bl-użu tal-
U_MSS_BOOTMODE=0 għażla boot fil-konfiguratur Libero.
Nota: F'din il-modalità, U_MSS_BOOTCFG ma jintużax.
Il-figura li ġejja turi l-fluss tal-boot Idle.
Figura 3 • Idle Boot Flow
Boot mhux sikur
F'dan il-mod, l-MSS Core Complex jesegwixxi minn indirizz speċifikat eNVM mingħajr awtentikazzjoni. Tipprovdi l-aktar għażla ta 'boot, iżda m'hemm l-ebda awtentikazzjoni tal-immaġni tal-kodiċi. L-indirizz jista' jiġi speċifikat billi tissettja U_MSS_BOOTADDR fil-Libero Configurator. Dan il-mod jista 'jintuża wkoll biex boot minn kwalunkwe riżorsa tal-memorja FPGA Fabric permezz ta' FIC. Din il-modalità hija implimentata bl-użu tal-
U_MSS_BOOTMODE=1 għażla ta' boot.
L-MSS Core Complex huwa rilaxxat minn reset b'vettori tal-boot definiti minn U_MSS_BOOTCFG (kif elenkat fit-tabella li ġejja).
Tabella 2 • U_MSS_BOOTCFG Użu f'Modalità Boot Mhux Sikura 1
Offset (bytes) |
Daqs (bytes) |
Isem |
Deskrizzjoni |
0 | 4 | BOOTVEC0 | Vettur tal-ibbutjar għal E51 |
4 | 4 | BOOTVEC1 | Vettur tal-ibbutjar għal U540 |
8 | 4 | BOOTVEC2 | Vettur tal-ibbutjar għal U541 |
16 | 4 | BOOTVEC3 | Vettur tal-ibbutjar għal U542 |
20 | 4 | BOOTVEC4 | Vettur tal-ibbutjar għal U543 |
Il-figura li ġejja turi l-fluss tal-boot Mhux sikur.
Figura 4 • Fluss tal-Ibbutjar mhux sikur
Utent Secure Boot
Din il-modalità tippermetti lill-utent jimplimenta l-boot sikur tad-dwana tiegħu stess u l-kodiċi tal-boot sikur tal-utent jitqiegħed fl-sNVM. L-sNVM hija memorja mhux volatili ta' 56 KB li tista' tiġi protetta mill-Funzjoni Physically Unclonable (PUF) inkorporata. Dan il-metodu tal-ibbutjar huwa meqjus bħala sigur minħabba li l-paġni sNVM immarkati bħala ROM huma immutabbli. Meta jinxtegħel, il-kontrollur tas-sistema tikkopja l-kodiċi tal-boot sikur tal-utent minn sNVM għal Memorja Integrata strettament tad-Data (DTIM) tal-qalba tal-Monitor E51. E51 jibda jesegwixxi l-kodiċi tal-boot sikur tal-utent.
Jekk id-daqs tal-kodiċi tal-ibbutjar sikur tal-utent huwa aktar mid-daqs tad-DTIM allura l-utent jeħtieġ li jaqsam il-kodiċi tal-ibbutjar f'żewġ stages. L-sNVM jista' jkun fih is-s li jmisstage tas-sekwenza boot tal-utent, li tista 'twettaq awtentikazzjoni tal-boot s li jmisstage billi tuża l-algoritmu ta' awtentikazzjoni/deċifrar tal-utent.
Jekk jintużaw paġni awtentikati jew kriptati allura l-istess ċavetta USK (jiġifieri,
U_MSS_BOOT_SNVM_USK) għandha tintuża għall-paġni kollha awtentikati/kodifikati.
Jekk l-awtentikazzjoni tfalli, l-MSS Core Complex jista’ jitqiegħed f’reset u l-BOOT_FAIL tamper bandiera tista tittella. Din il-modalità hija implimentata bl-użu tal-għażla tal-boot U_MSS_BOOTMODE=2.
Tabella 3 • U_MSS_BOOTCFG Użu fl-Utent Secure Boot
Offset (bytes) | Daqs (bytes) | Isem | Deskrizzjoni |
0 | 1 | U_MSS_BOOT_SNVM_PAGE | Paġna tal-bidu fl-SNVM |
1 | 3 | RISERVATA | Għall-allinjament |
4 | 12 | U_MSS_BOOT_SNVM_USK | Għal paġni awtentikati/kodifikati |
Il-figura li ġejja turi l-fluss tal-boot sikur tal-utent.
Figura 5 • Utent Secure Boot Flow
Fabbrika Sikura Boot
F'dan il-mod, il-kontrollur tas-sistema jaqra ċ-Ċertifikat tal-Immaġni tal-Ibbutjar Sikur (SBIC) minn eNVM u jivvalida l-SBIC. Mal-validazzjoni b'suċċess, il-Kontrollur tas-Sistema jikkopja l-kodiċi tal-boot sikur tal-fabbrika miż-żona tal-memorja privata u sigura tiegħu u jgħabbih fid-DTIM tal-qalba tal-Monitor E51. Il-boot sigur default iwettaq kontroll tal-firma fuq l-immaġni tal-eNVM billi juża SBIC li huwa maħżun fl-eNVM. Jekk ma jiġu rrappurtati l-ebda żbalji, ir-reset jiġi rilaxxat lill-MSS Core Complex. Jekk jiġu rrappurtati żbalji, l-MSS Core Complex jitqiegħed f'reset u l-BOOT_FAIL tamper bandiera tittella. Imbagħad, il-kontrollur tas-sistema jattiva fiamper bandiera li tafferma sinjal lid-drapp FPGA għall-azzjoni tal-utent. Din il-modalità hija implimentata bl-użu tal-għażla tal-boot U_MSS_BOOTMODE=3.
L-SBIC fih l-indirizz, id-daqs, il-hash, u l-firma Elliptic Curve Digital Signature Algorithm (ECDSA) tal-blob binarju protett. L-ECDSA joffri varjant tal-Algoritmu tal-Firma Diġitali li juża l-kriptografija tal-kurva ellittika. Fih ukoll il-vettur reset għal kull Hardware
ħajta/qalba/qalba tal-proċessur (Hart) fis-sistema.
Tabella 4 • Ċertifikat tal-Immaġni tal-Ibbutjar Sikur (SBIC)
Offset | Daqs (bytes) | Valur | Deskrizzjoni |
0 | 4 | IMAGEADDR | Indirizz tal-UBL fil-mappa tal-memorja MSS |
4 | 4 | IMAGELEN | Daqs ta' UBL f'bytes |
8 | 4 | BOOTVEC0 | Vettur tal-ibbutjar f'UBL għal E51 |
12 | 4 | BOOTVEC1 | Vettur tal-ibbutjar f'UBL għal U540 |
16 | 4 | BOOTVEC2 | Vettur tal-ibbutjar f'UBL għal U541 |
20 | 4 | BOOTVEC3 | Vettur tal-ibbutjar f'UBL għal U542 |
24 | 4 | BOOTVEC4 | Vettur tal-ibbutjar f'UBL għal U543 |
28 | 1 | GĦAŻLIET[7:0] | Għażliet SBIC |
28 | 3 | RISERVATA | |
32 | 8 | VERŻJONI | Verżjoni SBIC/Immaġini |
40 | 16 | DSN | DSN obbligatorju vinkolanti |
56 | 48 | H | Immaġini UBL SHA-384 hash |
104 | 104 | CODESIG | Firma ECDSA kodifikata DER |
Total | 208 | Bytes |
DSN
Jekk il-qasam DSN huwa mhux żero, huwa mqabbel man-numru tas-serje tal-apparat stess. Jekk il-paragun ifalli, allura l-boot_fail tamper bandiera hija ssettjata u l-awtentikazzjoni hija abortita.
VERŻJONI
Jekk ir-revoka SBIC hija attivata minn U_MSS_REVOCATION_ENABLE, l-SBIC jiġi rrifjutat sakemm il-valur tal-VERŻJONI ma jkunx akbar minn jew ugwali għal-limitu tar-revoka.
GĦAŻLA TA' REVOKAZZJONI SBIC
Jekk ir-revoka SBIC hija attivata minn U_MSS_REVOCATION_ENABLE u OPTIONS[0] hija '1', il-verżjonijiet kollha SBIC inqas minn VERŻJONI huma revokati mal-awtentikazzjoni kompleta tal-SBIC. Il-limitu tar-revoka jibqa' fil-valur il-ġdid sakemm jerġa' jiżdied b'SBIC futur b'OPTIONS[0] = '1' u qasam VERŻJONI ogħla. Il-limitu ta' revoka jista' jiġi inkrementat biss bl-użu ta' dan il-mekkaniżmu u jista' jiġi reset biss permezz ta' bit-stream.
Meta l-limitu tar-revoka jiġi aġġornat b'mod dinamiku, il-limitu jiġi maħżun bl-użu tal-iskema ta' ħażna żejda użata għall-passcodes b'tali mod li nuqqas ta' enerġija waqt il-boot tal-apparat ma jikkawżax il-falliment ta' boot tal-apparat sussegwenti. Jekk l-aġġornament tal-limitu tar-revoka jfalli, huwa garantit li l-valur tal-limitu huwa jew il-valur il-ġdid jew dak preċedenti.
Tabella 5 • U_MSS_BOOTCFG Użu fil-Modalità Factory Boot Loader
Offset (bytes) |
Daqs (bytes) |
Isem |
Deskrizzjoni |
0 | 4 | U_MSS_SBIC_ADDR | Indirizz ta' SBIC fl-ispazju ta' indirizz MSS |
4 | 4 | U_MSS_REVOCATION_ENABLE | Ippermetti r-revoka SBIC jekk mhux żero |
Il-figura li ġejja turi l-fluss tal-boot sikur tal-fabbrika.
Figura 6 • Fabbrika Sikura Boot Flow
MSS Utent Boot
Il-boot tal-utent tal-MSS iseħħ meta l-kontroll jingħata mill-Kontrollur tas-Sistema għal MSS Core Complex. Meta l-MSS pre-boot b'suċċess, il-kontrollur tas-sistema jirrilaxxa r-reset għall-MSS Core Complex. L-MSS jista' jinbeda b'wieħed mill-modi li ġejjin:
- Applikazzjoni Bare Metal
- Applikazzjoni Linux
- AMP Applikazzjoni
Applikazzjoni Bare Metal
L-applikazzjonijiet tal-metall vojt għas-SoC PolarFire jistgħu jiġu żviluppati bl-użu tal-għodda SoftConsole. Din l-għodda tipprovdi l-output files fil-forma ta '.hex li jistgħu jintużaw fil-fluss Libero biex jinkludu fil-bitstream ta' programmazzjoni file. L-istess għodda tista 'tintuża biex tiddibaggja l-applikazzjonijiet Bare Metal billi tuża JTAG
interface.
Il-figura li ġejja turi l-applikazzjoni SoftConsole Bare Metal li għandha ħames harts (Cores) inkluż E51 Monitor core.
Figura 7 • Proġett SoftConsole
Applikazzjoni Linux
Din it-taqsima tiddeskrivi s-sekwenza tal-boot għal Linux taħdem fuq il-qlub U54 kollha.
Proċess ta' boot tipiku jikkonsisti fi tliet stages. L-ewwel stage boot loader (FSBL) jiġi esegwit mill-on-chip Boot flash (eNVM). L-FSBL jgħabbi t-tieni stage boot loader (SSBL) minn apparat tal-boot għal RAM jew Cache esterni. L-apparat tal-but jista 'jkun eNVM jew mikrokontrollur tal-memorja inkorporata (eMMC) jew SPI Flash estern. L-SSBL jgħabbi s-sistema operattiva Linux minn apparat tal-boot għal RAM esterna. Fit-tielet stage, Linux huwa esegwit mir-RAM esterna.
Il-figura li ġejja turi l-fluss tal-Linux Boot Process.
Figura 8 • Fluss tipiku tal-Proċess tal-Ibbutjar tal-Linux
Dettalji tal-FSBL, Device tree, Linux, u YOCTO build, kif tibni u tikkonfigura Linux se jiġu pprovduti fir-rilaxx futur ta 'dan id-dokument.
AMP Applikazzjoni
Deskrizzjoni dettaljata ta' Libero MSS Configurator u kif tiddibaggja applikazzjonijiet b'ħafna proċessuri bl-użu ta' SoftConsole se jiġu pprovduti fir-rilaxx futur ta' dan id-dokument.
Sorsi differenti ta' Booting
Għandu jiġi aġġornat f'verżjonijiet futuri ta' dan id-dokument.
Konfigurazzjoni tal-Ibbutjar
Għandu jiġi aġġornat f'verżjonijiet futuri ta' dan id-dokument.
Akronimi
L-akronimi li ġejjin huma użati f'dan id-dokument.
Tabella 1 • Lista ta' Akronimi
Akronimu Estiża
- AMP Multi-ipproċessar asimmetriku
- DTIM Memorja Integrata sewwa tad-Data (imsejħa wkoll bħala SRAM)
- ECDSA Algoritmu ta' Firma Diġitali tal-Kurva Ellittika
- eNVM Memorja Mhux Volatili inkorporata
- FSBL L-ewwel Stage Boot Loader
- Hart Ħajt tal-ħardwer/qalba/qalba tal-proċessur
- MSS Sottosistema Mikroproċessur
- POR Ixgħel Irrisettja
- PUF Funzjoni Fiżikament Mhux Klonabbli
- ROM Memorja li tinqara biss
- SCB Pont tal-Kontrollur tas-Sistema
- sNVM Memorja Sikura mhux volatili
Storja tar-Reviżjoni
L-istorja tar-reviżjoni tiddeskrivi l-bidliet li ġew implimentati fid-dokument. Il-bidliet huma elenkati b'reviżjoni, li tibda bil-pubblikazzjoni attwali.
Reviżjoni 2.0
Dan li ġej huwa sommarju tal-bidliet li saru f'din ir-reviżjoni.
- Informazzjoni dwar Factory Secure Boot ġiet aġġornata.
- Informazzjoni dwar Bare Metal Applikazzjoni ġiet aġġornata.
Reviżjoni 1.0
L-ewwel pubblikazzjoni ta' dan id-dokument.
Microsemi Kwartieri Ġenerali
One Enterprise, Aliso Viejo,
CA 92656 USA
Fl-Istati Uniti: +1 800-713-4113
Barra l-Istati Uniti: +1 949-380-6100
Bejgħ: +1 949-380-6136
Fax: +1 949-215-4996
Email: sales.support@microsemi.com
www.microsemi.com
©2020 Microsemi, sussidjarja għal kollox ta' Microchip Technology Inc. Id-drittijiet kollha riżervati. Microsemi u l-logo Microsemi huma trademarks reġistrati ta’ Microsemi Corporation. It-trademarks u l-marki tas-servizz l-oħra kollha huma l-proprjetà tas-sidien rispettivi tagħhom.
Dokumenti / Riżorsi
![]() |
Microchip UG0881 PolarFire SoC FPGA Booting U Konfigurazzjoni [pdfGwida għall-Utent UG0881 PolarFire SoC FPGA Booting U Konfigurazzjoni, UG0881, PolarFire SoC FPGA Booting U Konfigurazzjoni, Booting U Konfigurazzjoni |