Microsemi-LGOO

Microchip UG0881 PolarFire SoC FPGA Booting and Configuration

Microchip-UG0881-PolarFire-SoC-FPGA-Booting na-Nhazi-ngwaahịa

Akwụkwọ ikike

Microsemi anaghị akwụ ụgwọ, nnọchite ma ọ bụ nkwa gbasara ozi dị n'ime ebe a ma ọ bụ adabara ngwaahịa na ọrụ ya maka ebumnuche ọ bụla, ma ọ bụ Microsemi anaghị ewere ụgwọ ọ bụla sitere na ngwa ma ọ bụ iji ngwaahịa ma ọ bụ sekit ọ bụla. Ngwaahịa ndị a na-ere n'okpuru ebe a na ngwaahịa ndị ọzọ Microsemi rere bụ ndị nwere obere ule na ekwesighi iji ya na ngwa ma ọ bụ ngwa dị mkpa. A kwenyere na nkọwapụta arụmọrụ ọ bụla bụ nke a pụrụ ịdabere na ya mana ekwenyeghị ya, na onye na-azụ ahịa ga-eduzi ma mejupụta arụmọrụ niile na nnwale ndị ọzọ nke ngwaahịa ahụ, naanị ya na yana, ma ọ bụ tinye ya na, ngwaahịa njedebe ọ bụla. Onye na-azụ ahịa agaghị adabere na data ọ bụla yana nkọwapụta arụmọrụ ma ọ bụ paramita nke Microsemi nyere. Ọ bụ ọrụ onye na-azụ ahịa ka ọ chọpụta na ọ dabara nke ọma ngwaahịa ọ bụla yana ịnwale ma nyochaa otu ihe ahụ. Ozi nke Microsemi nyere n'okpuru ebe a bụ "dị ka ọ dị, ebe ọ dị" yana mmejọ niile, na ihe egwu niile metụtara ozi dị otú ahụ bụ kpamkpam na onye na-azụ ahịa. Microsemi anaghị enye ndị otu ọ bụla ikike patent, ikike ma ọ bụ ikike IP ọ bụla, n'ụzọ doro anya ma ọ bụ n'ezoghị ọnụ, ma gbasara ozi dị otú ahụ n'onwe ya ma ọ bụ ihe ọ bụla nke ozi ahụ kọwara. Ozi enyere na akwụkwọ a bụ nke Microsemi, Microsemi nwere ikike ime mgbanwe ọ bụla na ozi dị na akwụkwọ a ma ọ bụ ngwaahịa na ọrụ ọ bụla n'oge ọ bụla na-enweghị ọkwa.

Banyere Microsemi

Microsemi, a kpamkpam ekesịp enyemaka nke Microchip Technology Inc. (Nasdaq: MCHP), awade a keukwu Pọtụfoliyo nke semiconductor na usoro ngwọta maka aerospace & agbachitere, nkwukọrịta, data center na ulo oru ahịa. Ngwaahịa gụnyere arụmarụ dị elu na radieshon siri ike analọgụ agwakọta mgbanaka agbakwunyere, FPGAs, SoCs na ASIC; ngwaahịa njikwa ike; ngwaọrụ oge na mmekọrịta yana ngwọta oge ziri ezi, na-esetịpụ ụkpụrụ ụwa maka oge; ngwaọrụ nhazi olu; Ihe ngwọta RF; ihe pụrụ iche; nchekwa ụlọ ọrụ na ngwọta nzikọrịta ozi, teknụzụ nchekwa na mgbochi tamper ngwaahịa; Ihe ngwọta Ethernet; Ike-over-Ethernet ICs na midspans; yana ikike imewe omenala na ọrụ. Mụtakwuo na www.microsemi.com.

Booting na nhazi

PolarFire SoC FPGA na-eji sekit gbalite ike dị elu iji hụ na a pụrụ ịdabere na ya na nrụnye na nrụpụta. Na nrụgharị na nrụpụta, PolarFire SoC FPGA usoro buut na-eso nrụpụta ike (POR), buut ngwaọrụ, mmalite imewe, Microcontroller Subsystem (MSS) pre-boot, na buut onye ọrụ MSS. Akwụkwọ a na-akọwa boot boot na MSS User Boot. Maka ozi gbasara POR, mmalite ngwaọrụ Boot na imewe, hụ UG0890: PolarFire SoC FPGA Power-Up and Resets Guide User.
Maka ozi ndị ọzọ gbasara njirimara MSS, hụ UG0880: PolarFire SoC MSS ntuziaka onye ọrụ.

Usoro mbido
Usoro nkwalite na-amalite mgbe PolarFire SoC FPGA kwadoro ma ọ bụ tọgharịa. Ọ na-agwụ mgbe onye nrụpụta dị njikere ime mmemme ngwa. Usoro booting a na-agafe ọtụtụ stages tupu ya amalite ogbugbu nke mmemme.
A na-arụ ọrụ nhazi n'oge usoro Boot-up nke na-agụnye nrụpụta ike nke ngwaike, mmalite mpaghara, mmalite ebe nchekwa, na itinye ngwa akọwapụtara nke onye ọrụ site na ebe nchekwa na-adịghị agbanwe agbanwe na ebe nchekwa na-agbanwe agbanwe maka igbu.

Ọnụ ọgụgụ na-esonụ na-egosi usoro dị iche iche nke usoro Boot-up.

Onyonyo 1  Usoro mbidoMicrochip-UG0881-PolarFire-SoC-FPGA-Booting na-Nhazi-fig 1

MSS Pre-boot

Mgbe emechara nke ọma nke mmalite imewe, MSS Pre-boot na-amalite igbu ya. A tọhapụrụ MSS na nrụpụta mgbe emechara usoro mmalite niile. Onye na-ahụ maka sistemụ na-ejikwa mmemme, mmalite, na nhazi nke ngwaọrụ. MSS Pre-boot anaghị eme ma ọ bụrụ na ahaziri ngwaọrụ akwadoro maka ọnọdụ nkwụsịtụ njikwa sistemụ.
A na-ahazi usoro mmalite boot boot nke MSS site na firmware njikwa sistemụ, n'agbanyeghị na ọ nwere ike iji E51 na MSS Core Complex rụọ akụkụ ụfọdụ nke usoro mmalite buut.
Ihe omume ndị a na-eme n'oge MSS pre-boot stage:

  • Ike nke MSS agbakwunyere ebe nchekwa na-adịghị agbanwe agbanwe (eNVM)
  • Mmalite nke nrụzi redundancy jikọtara na MSS Core Complex L2 cache
  • Nyochaa koodu buut onye ọrụ (ọ bụrụ na agbanyere nhọrọ buut onye ọrụ echekwara)
  • Nyefee MSS na-arụ ọrụ na koodu Boot onye ọrụ

Enwere ike ịgbanye MSS Core Complex n'otu n'ime ụdị anọ. Tebụlụ na-esonụ na-edepụta nhọrọ MSS tupu boot, nke enwere ike ịhazi na hazie ya na sNVM. Akọwapụtara ọnọdụ buut site na oke onye ọrụ U_MSS_BOOTMODE[1:0]. Data nhazi akpụkpọ ụkwụ agbakwunyere dabere na ọnọdụ ma kọwaa ya site na paramita onye ọrụ U_MSS_BOOTCFG (lee Tebụl 3, ibe 4 na Tebụl 5, ibe 6).

Tebụl 1 • Ụdị akpụkpọ ụkwụ MSS Core mgbagwoju anya

U_MSS_BOOTMODE[1:0] Ụdị Nkọwa
0 Akpụkpọ ụkwụ na-adịghị arụ ọrụ Akpụkpọ ụkwụ MSS Core Complex sitere na buut ROM ma ọ bụrụ na ahazighị MSS
1 Akpụkpọ ụkwụ na-enweghị nchebe Akpụkpọ ụkwụ MSS Core Complex ozugbo sitere na adreesị nke U_MSS_BOOTADDR kọwapụtara
2 Akpụkpọ ụkwụ echedoro onye ọrụ Akpụkpọ ụkwụ MSS Core Complex sitere na sNVM
3 Akpụkpọ ụkwụ echedoro ụlọ ọrụ Akpụkpọ ụkwụ MSS Core Complex na-eji usoro buut arụ ọrụ echedoro

A na-ahọrọ nhọrọ buut dị ka akụkụ nke usoro nhazi nke Libero. Ịgbanwe ụdịdị nwere ike nweta naanị site na ọgbọ nke mmemme FPGA ọhụrụ file.

Ọgụgụ 2 • MSS tupu buut Flow Microchip-UG0881-PolarFire-SoC-FPGA-Booting na-Nhazi-fig 2

Boot na-adịghị arụ ọrụ

Ọ bụrụ na ahazighị MSS (maka example, oghere ngwaọrụ), mgbe ahụ, MSS Core Complex na-eme mmemme ROM buut nke na-ejide ndị nrụpụta niile na akaghị ngwụcha ruo mgbe onye nbibi jikọọ na ebumnuche. The boot vector records na-ejigide uru ha ruo mgbe emegharịrị ngwaọrụ ahụ ma ọ bụ hazie nhazi ọnọdụ akpụkpọ ụkwụ ọhụrụ. Maka ngwaọrụ ahaziri, enwere ike itinye ọnọdụ a site na iji
U_MSS_BOOTMODE=0 nhọrọ buut na onye nhazi Libero.

Mara: N'ụdị a, anaghị eji U_MSS_BOOTCFG.

Ọgụgụ na-esonụ na-egosi mgbaba buut na-adịghị arụ ọrụ.
Onyonyo 3 • Mgbapụta buut na-adịghị arụ ọrụMicrochip-UG0881-PolarFire-SoC-FPGA-Booting na-Nhazi-fig 3

Boot enweghị nchekwa

Na ọnọdụ a, MSS Core Complex na-eme site na adreesị eNVM akọwapụtara na-enweghị nkwenye. Ọ na-enye nhọrọ buut kacha ngwa ngwa, mana enweghị nkwenye nke onyonyo koodu. Enwere ike ịkọwa adreesị ahụ site na ịtọ U_MSS_BOOTADDR na nhazi Libero. Enwere ike iji ọnọdụ a buo site na akụrụngwa ebe nchekwa FPGA ọ bụla site na FIC. A na-eme usoro a site na iji
U_MSS_BOOTMODE=1 nhọrọ buut.
A na-ewepụta MSS Core Complex site na ntọgharị ya na ụdị akpụkpọ ụkwụ U_MSS_BOOTCFG kọwara (dị ka edepụtara na tebụl na-esonụ).

Tebụl 2 • Ojiji U_MSS_BOOTCFG na ọnọdụ buut anaghị echekwabara 1

Akwụsịghị (bytes)  

Ogo (octets)

 

Aha

 

Nkọwa

0 4 BOOTVEC0 Boot vector maka E51
4 4 BOOTVEC1 Boot vector maka U540
8 4 BOOTVEC2 Boot vector maka U541
16 4 BOOTVEC3 Boot vector maka U542
20 4 BOOTVEC4 Boot vector maka U543

Ọnụọgụ na-esonụ na-egosi mgbaba buut na-enweghị nchebe.
Onyonyo 4 • Flow akpụkpọ ụkwụ na-enweghị nchebeMicrochip-UG0881-PolarFire-SoC-FPGA-Booting na-Nhazi-fig 4

Boot echedoro onye ọrụ
Ọnọdụ a na-enye onye ọrụ ohere imejuputa akpụkpọ ụkwụ echekwara nkeonwe yana koodu buut echekwara onye ọrụ na-etinye na sNVM. sNVM bụ ebe nchekwa 56 KB na-adịghị agbanwe agbanwe nke arụrụ arụrụ arụ arụrụ arụ (PUF) nwere ike ichekwa ya. A na-ewere usoro buut a ka echekwara n'ihi na ibe sNVM akara ka ROM enweghị mgbanwe. N'ịgbalite ike, onye na-ahụ maka sistemụ na-edepụta koodu buut echekwara onye ọrụ site na sNVM gaa na ebe nchekwa data Tightly Integrated (DTIM) nke isi E51 Monitor. E51 na-amalite imebe koodu buut echedoro onye ọrụ.
Ọ bụrụ na nha koodu buut echekwara nke onye ọrụ karịrị nha DTIM, onye ọrụ kwesịrị kewaa koodu buut n'ime s abụọ.tages. sNVM nwere ike ịnwe stage nke usoro buut onye ọrụ, nke nwere ike ịrụ nyocha nke akpụkpọ ụkwụ na-esote stage iji njirimara njirimara/decryption algọridim.
Ọ bụrụ na ejiri ibe akwụkwọ ezitere ma ọ bụ ezoro ezo wee otu igodo USK ahụ (ya bụ,
U_MSS_BOOT_SNVM_USK) ga-ejirịrị maka ibe niile enyochagoro/zoro ezo.
Ọ bụrụ na nyocha dara, enwere ike idowe MSS Core Complex na nrụpụta yana BOOT_FAIL tampE nwere ike ibuli ọkọlọtọ. A na-emejuputa ọnọdụ a site na iji U_MSS_BOOTMODE=2 nhọrọ buut.

Tebụl 3 •  Ojiji U_MSS_BOOTCFG na Boot echekwara nke onye ọrụ

Akwụsịghị (bytes) Ogo (octets) Aha Nkọwa
0 1 U_MSS_BOOT_SNVM_PAGE Malite ibe na SNVM
1 3 echekwabara Maka nhazi
4 12 U_MSS_BOOT_SNVM_USK Maka ibe ezitere/ ezoro ezo

Ọnụ ọgụgụ na-esonụ na-egosi onye ọrụ na-agba ọsọ buut echekwara.
Onyonyo 5 • Flow Boot echekwara nke onye ọrụMicrochip-UG0881-PolarFire-SoC-FPGA-Booting na-Nhazi-fig 5

Boot Secure Factory
N'ụdị a, onye na-ahụ maka sistemụ na-agụ Asambodo Foto Secure Boot (SBIC) site na eNVM wee kwado SBIC. Na nkwado na-aga nke ọma, onye na-ahụ maka sistemụ na-ebipụta koodu buut ụlọ ọrụ echedoro na nzuzo ya, ebe nchekwa echekwara ma tinye ya na DTIM nke E51 Monitor core. Akpụkpọ ụkwụ echekwara na-eme nlele mbinye aka na onyonyo eNVM site na iji SBIC nke echekwara na eNVM. Ọ bụrụ na enweghị mkpesa ọ bụla, a na-ewepụta nrụpụta ya na MSS Core Complex. Ọ bụrụ na akọpụta njehie, a na-etinye MSS Core Complex na nrụpụta yana BOOT_FAIL tampE buliri ọkọlọtọ. Mgbe ahụ, onye na-ahụ maka sistemụ na-arụ ọrụ naamper flag nke na-ekwupụta akara na akwa FPGA maka ihe onye ọrụ. A na-emejuputa ọnọdụ a site na iji U_MSS_BOOTMODE=3 nhọrọ buut.

SBIC nwere adreesị, nha, hash, na Elliptic Curve Digital Signature Algorithm (ECDSA) mbinye aka nke ọnụọgụ abụọ echekwara. ECDSA na-enye ihe dị iche iche nke Digital Signature Algorithm nke na-eji elliptical curve cryptography. O nwekwara vector nrụpụta maka ngwaike ọ bụla
eri / isi / isi ihe nhazi (Hart) na sistemu.

Tebụl 4 •  Asambodo foto buut echekwara (SBIC)

Akwụsịghị Ogo (octets) Uru Nkọwa
0 4 IMAGEADDR Adreesị UBL na map ebe nchekwa MSS
4 4 IMAGELEN Ogo UBL na bytes
8 4 BOOTVEC0 Boot vector na UBL maka E51
12 4 BOOTVEC1 Boot vector na UBL maka U540
16 4 BOOTVEC2 Boot vector na UBL maka U541
20 4 BOOTVEC3 Boot vector na UBL maka U542
24 4 BOOTVEC4 Boot vector na UBL maka U543
28 1 Nhọrọ[7:0] Nhọrọ SBIC
28 3 echekwabara  
32 8 Ụdị Ụdị SBIC/Image
40 16 DSN Njikọ DSN nhọrọ
56 48 H Foto UBL SHA-384 hash
104 104 CODESIG ECDSA mbinye aka DER
Mkpokọta 208 Bytes  

DSN
Ọ bụrụ na mpaghara DSN abụghị efu, a na-atụnyere ya megide nọmba serial nke ngwaọrụ ahụ. Ọ bụrụ na ntụnyere ada ada, mgbe ahụ boot_fail tampedobere ọkọlọtọ ma kagbuo nyocha.

Ụdị
Ọ bụrụ na U_MSS_REVOCATION_ENABLE kwadoro nbibi SBIC, a jụrụ SBIC ma ọ bụrụ na uru VERSION karịrị ma ọ bụ ha nhata na njedebe nbibi.

Nhọrọ iwepụ SBIC
Ọ bụrụ na U_MSS_REVOCATION_ENABLE kwadoro nbibi SBIC na OPTIONS[0] bụ '1', a ga-ewepụ ụdịdị SBIC niile na-erughị VERSION ma nweta nkwenye zuru oke nke SBIC. Ọnụ ụzọ mwepu ahụ na-anọgide na uru ọhụrụ ruo mgbe ọ ga-abawanye ọzọ site na SBIC n'ọdịnihu nwere Nhọrọ[0] = '1' yana mpaghara VERSION dị elu. Enwere ike ịbawanye ọnụ ụzọ mwepu naanị site na iji usoro a ma enwere ike ịtọgharịa ya site na ntakịrị iyi.
Mgbe a na-emelite ọnụ ụzọ mwepu n'ike, a na-echekwa ọnụ ụzọ site na iji atụmatụ nchekwa na-abaghị uru ejiri maka koodu passcode nke na ọdịda ike n'oge buut ngwaọrụ anaghị eme ka akpụkpọ ụkwụ ngwaọrụ na-esote daa. Ọ bụrụ na nwelite nke nbibi mbugharị ada ada, a na-ekwe nkwa na uru ọnụ ụzọ bụ uru ọhụrụ ma ọ bụ nke gara aga.

Tebụl 5 • U_MSS_BOOTCFG Ojiji n'ụdị ihe nbido buut ụlọ ọrụ

Akwụsịghị (bytes)  

Ogo (octets)

 

Aha

 

Nkọwa

0 4 U_MSS_SBIC_ADDR Adreesị nke SBIC na oghere adreesị MSS
4 4 U_MSS_REVOCATION_ENABLE Kwado mwepu SBIC ma ọ bụrụ na ọ bụghị efu

Ọnụ ọgụgụ na-esonụ na-egosi na ụlọ mmepụta ihe nwere nchebe buut eruba.
Onyonyo 6 • Factory Secure Boot FlowMicrochip-UG0881-PolarFire-SoC-FPGA-Booting na-Nhazi-fig 6 Microchip-UG0881-PolarFire-SoC-FPGA-Booting na-Nhazi-fig 7

Boot onye ọrụ MSS 

Akpụkpọ ụkwụ onye ọrụ MSS na-ewere ọnọdụ mgbe enyere njikwa si System Controller gaa na MSS Core Complex. Mgbe MSS ga-aga nke ọma, onye na-ahụ maka sistemụ na-ewepụta nrụpụta ahụ na MSS Core Complex. Enwere ike ịkwalite MSS n'otu ụzọ ndị a:

  • Ngwa igwe efu
  • Ngwa Linux
  • AMP Ngwa

Ngwa igwe efu

Enwere ike ịmepụta ngwa igwe efu maka PolarFire SoC site na iji ngwa SoftConsole. Ngwá ọrụ a na-enye mmepụta files n'ụdị .hex nke nwere ike iji na Libero eruba na-agụnye n'ime mmemme bitstream file. Enwere ike iji otu ngwa ahụ mebie ngwa Bare Metal site na iji JTAG
interface.
Ihe onyonyo a na-egosi ngwa SoftConsole Bare Metal nke nwere harts ise (Cores) gụnyere E51 Monitor core.

Onyonyo 7 • SoftConsole Project Microchip-UG0881-PolarFire-SoC-FPGA-Booting na-Nhazi-fig 8

Ngwa Linux

Akụkụ a na-akọwa usoro buut maka Linux na-agba ọsọ na cores U54 niile.
Usoro buut na-ahụkarị nwere s atọtages. Nke mbụ stagA na-egbu e bootloader (FSBL) site na on-chip Boot flash (eNVM). FSBL na-ebu s nke abụọtage bootloader (SSBL) site na ngwaọrụ buut gaa na RAM mpụga ma ọ bụ cache. Ngwaọrụ buut nwere ike ịbụ eNVM ma ọ bụ microcontroller ebe nchekwa agbakwunyere (eMMC) ma ọ bụ Flash SPI mpụga. SSBL na-ebu sistemụ arụmọrụ Linux site na ngwaọrụ buut gaa na RAM mpụga. Na nke atọ stage, Linux na-egbu site na RAM mpụga.

Ọnụ ọgụgụ na-esonụ na-egosi usoro Linux Boot Process.
Onyonyo 8 • Usoro usoro buut Linux a na-ahụkarịMicrochip-UG0881-PolarFire-SoC-FPGA-Booting na-Nhazi-fig 9

A ga-enye nkọwa gbasara FSBL, osisi ngwaọrụ, Linux, na ụlọ YOCTO, otu esi ewu ma hazie Linux na mwepụta akwụkwọ a n'ọdịnihu.

AMP Ngwa
A ga-enye nkọwa zuru ezu nke Libero MSS Configurator yana otu esi ewepụ ngwa ọtụtụ ihe nhazi site na iji SoftConsole na mwepụta akwụkwọ a n'ọdịnihu.

Isi mmalite dị iche iche nke booting
A ga-emelite ya na ụdị akwụkwọ a n'ọdịnihu.

Nhazi buut
A ga-emelite ya na ụdị akwụkwọ a n'ọdịnihu.

Mkpebiri

A na-eji mkpọkpọ okwu ndị a n'ime akwụkwọ a.

Tebụl 1 •  Ndepụta Acronyms

Acronym gbasaara

  • AMP Asymmetric Multi-nhazi
  • DTM Data Tightly Integrated Memory (a na-akpọkwa SRAM)
  • ECDSA Algọrithm mbinye aka dijitalụ Elliptic Curve
  • eNVM Ebe nchekwa na-adịghị agbanwe agbanwe
  • FSBL Mbụ Stage Boot Loader
  • Hart Akụrụngwa eri/core/processor isi
  • MSS Sistemụ nke microprocessor
  • POR Ike na Tọgharia
  • PUF Ọrụ enweghị ike ime
  • ROM Ebe nchekwa naanị ọgụgụ
  • SCB Akwa njikwa sistemu
  • sNVM Chekwaa ebe nchekwa na-adịghị agbanwe agbanwe

Akụkọ ngbanwe

Akụkọ ngbanwe ahụ na-akọwa mgbanwe ndị etinyere na akwụkwọ ahụ. Edepụtara mgbanwe ndị a site na ntughari, malite na mbipụta dị ugbu a.

Mgbanwe 2.0
Ihe na-esonụ bụ nchịkọta mgbanwe ndị emere na nlegharị anya a.

  • Emelitere ozi gbasara Boot Secure Factory.
  • Emelitere ozi gbasara ngwa Bare Metal.

Mgbanwe 1.0
Mbipụta mbụ nke akwụkwọ a.

Isi ụlọ ọrụ Microsemi
Otu ụlọ ọrụ, Aliso Viejo,
CA 92656 USA
N'ime USA: +1 800-713-4113
N'èzí USA: +1 949-380-6100
Ahịa: +1 949-380-6136
Fax: +1 949-215-4996
Email: sales.support@microsemi.com
www.microsemi.com

©2020 Microsemi, enyemaka zuru oke nke Microchip Technology Inc. Ikike niile echekwabara. Microsemi na akara Microsemi bụ ụghalaahịa edenyere n'akwụkwọ ikikere nke Ụlọọrụ Microsemi. Ighalaahia niile na akara ọrụ bụ ihe nke ndị nwe ha.

Akwụkwọ / akụrụngwa

Microchip UG0881 PolarFire SoC FPGA Booting and Configuration [pdf] Ntuziaka onye ọrụ
UG0881 PolarFire SoC FPGA Booting and Configuration, UG0881, PolarFire SoC FPGA Booting and Configuration, Booting and Configuration

Ntụaka

Hapụ ikwu

Agaghị ebipụta adreesị ozi-e gị. Akara mpaghara achọrọ akara *