MICROCHIP-Erara Detekto kaj Korekto sur RTG4 LSRAM-Memoro
Historio de Revizio
La reviziohistorio priskribas la ŝanĝojn kiuj estis efektivigitaj en la dokumento. La ŝanĝoj estas listigitaj laŭ revizio, komencante de la plej aktuala publikigo.
Revizio 4.0
La sekvanta estas resumo de la ŝanĝoj faritaj en ĉi tiu revizio.
- Ĝisdatigis la dokumenton por Libero SoC v2021.2.
- Aldonita Apendico 1: Programado de la Aparato Uzante FlashPro Express, paĝo 14.
- Aldonita Apendico 2: Rulado de la TCL-Skripto, paĝo 16.
- Forigis la referencojn al Libero-versionumeroj.
Revizio 3.0
Ĝisdatigis la dokumenton por Libero v11.9 SP1 softvareldono.
Revizio 2.0
Ĝisdatigis la dokumenton por Libero v11.8 SP2 softvareldono.
Revizio 1.0
La unua publikigo de ĉi tiu dokumento.
Eraro-Detekto kaj Korekto sur RTG4 LSRAM-Memoro
Ĉi tiu referenca dezajno priskribas la kapablojn pri eraro-detekto kaj korekto (EDAC) de la RTG4™ FPGA LSRAM-oj. En ununura evento ĉagrenita (SEU) sentema medio, RAM estas ema al pasemaj eraroj kaŭzitaj de pezaj jonoj. Tiuj eraroj povas esti detektitaj kaj korektitaj uzante erarĝustigkodojn (ECCoj). La RTG4 FPGA RAM-blokoj havas enkonstruitajn EDAC-regilojn por generi la erarajn korektajn kodojn por korekti 1-bitan eraron aŭ detekti 2-bitan eraron.
Se 1-bita eraro estas detektita, la EDAC-regilo korektas la erarbiton kaj metas la erarkorektan flagon (SB_CORRECT) al aktiva alta. Se 2-bita eraro estas detektita, la EDAC-regilo metas la erardetektan flagon (DB_DETECT) al aktiva alta.
Por pliaj informoj pri RTG4 LSRAM EDAC-funkcio, raportu al UG0574: RTG4 FPGA Fabric
Uzantgvidilo.
En ĉi tiu referenca dezajno, la 1-bita eraro aŭ 2-bita eraro estas lanĉitaj per SmartDebug GUI. EDAC estas observita uzante grafikan uzantinterfacon (GUI), utiligante la UART-interfacon por aliri la LSRAM por datenoj legas/skribas, Libero® System-on-Chip (SoC) SmartDebug (J).TAG) kutimas injekti la erarojn en LSRAM-memoron.
Dezajnaj Postuloj
Tablo 1 listigas la referencajn dezajnpostulojn por funkcii la RTG4 LSRAM EDAC-demo.
Tabelo 1 • Dezajnaj Postuloj
Programaro
- Libero SoC
- FlashPro Express
- SmartDebug
- Gastigi PC-ŝoforoj USB al UART-ŝoforoj
Notu: Libero SmartDesign kaj agordaj ekrankontoj montritaj en ĉi tiu gvidilo estas nur por ilustra celo.
Malfermu la Libero-dezajnon por vidi la plej novajn ĝisdatigojn.
Antaŭkondiĉoj
Antaŭ ol vi komenci:
Elŝutu kaj instalu Libero SoC (kiel indikite en la webretejo por ĉi tiu dezajno) sur la gastiga komputilo de la sekva loko: https://www.microsemi.com/product-directory/design-resources/1750-libero-soc
Demo Dezajno
Elŝutu la demonstran dezajnon files de la Microsemi webretejo ĉe: http://soc.microsemi.com/download/rsc/?f=rtg4_dg0703_df
La demo-dezajno filei inkluzivas:
- Projekto Libero SoC
- GUI-instalilo
- Programado files
- Legumin.txt file
- TCL_Skriptoj
La GUI-apliko sur la gastiga komputilo eldonas komandojn al la RTG4-aparato per la USB-UART-interfaco. Ĉi tiu UART-interfaco estas desegnita kun CoreUART, kiu estas logika IP de la Libero SoC IP-katalogo. La CoreUART IP en la RTG4-ŝtofo ricevas komandojn kaj transdonas ilin al la komanda malĉifrila logiko. La komandmalĉifrila logiko deĉifras la legadon aŭ skriban komandon, kiu estas efektivigita uzante la memorinterfaclogikon.
La memorinterfacbloko estas uzata por legi/skribi kaj monitori la LSRAM-erarflagojn. La enkonstruita EDAC korektas la 1-bitan eraron dum legado de LSRAM kaj disponigas korektitajn datumojn al la uzantinterfaco sed ne skribas korektitajn datumojn reen al LSRAM. La enkonstruita LSRAM EDAC ne efektivigas frotigan funkcion. La demo-dezajno efektivigas frotlogikon, kiu monitoras la 1-bitan korektan flagon kaj ĝisdatigas la LSRAM kun la korektitaj datumoj se unu bita eraro okazas.
SmartDebug GUI estas uzata por injekti 1-bitan aŭ 2-bitan eraron en la LSRAM-datumojn.
Figuro 1 montras la plej altan blokdiagramon de RTG4 LSRAM EDAC-demo-dezajno.
Figuro 1 • Supra Nivela Blokdiagramo
La jenaj estas la demo-dezajnaj agordoj:
- La LSRAM estas agordita por ×18-reĝimo kaj EDAC estas ebligita kunligante LSRAMs ECC_EN-signalon al alta.
Notu: La LSRAM EDAC estas subtenata por nur ×18 kaj ×36 reĝimoj. - La CoreUART IP estas agordita por komuniki kun la gastiganta komputila aplikaĵo kun 115200 baŭda rapido.
- La RTG4FCCCECALIB_C0 estas agordita por horloĝi la CoreUART kaj alian ŝtoflogikon ĉe 80 MHz.
Karakterizaĵoj
La jenaj estas la pruvaj dezajnaj funkcioj:
- Legu kaj skribu al LSRAM
- Injektu 1-bitan kaj 2-bitan eraron uzante SmartDebug
- Montru 1-bitajn kaj 2-bitajn erarkalkulajn valorojn
- Provizo por forigi la erarkalkulvalorojn
- Ebligu aŭ malŝalti la memoran frotlogikon
Priskribo
Ĉi tiu demo-dezajno implikas la efektivigon de la sekvaj taskoj:
- Iniciatigo kaj aliro al LSRAM
La memorinterfaclogiko efektivigita en la ŝtoflogiko ricevas la inicialigkomandon de GUI kaj inicialigas la unuajn 256 memorlokojn de LSRAM kun la pliigaj datenoj. Ĝi ankaŭ faras la legadon kaj skribajn operaciojn al la 256 memorlokoj de LSRAM ricevante la adreson kaj datumojn de la GUI. Por legado, la dezajno prenas la datumojn de LSRAM kaj disponigas ĝin al GUI por ekrano. La atendo estas, ke la dezajno ne provos erarojn antaŭ ol uzi SmartDebug.
Notu: Neinicialigitaj memorlokoj povas havi hazardajn valorojn, kaj SmartDebug povas montri unu-bitajn aŭ dubitajn erarojn en tiuj lokoj.
- Injektante 1-bitajn aŭ 2-bitajn erarojn
SmartDebug GUI estas uzata por injekti la 1-bitajn aŭ 2-bitajn erarojn en la specifitan memorlokon de LSRAM. La sekvaj operacioj estas faritaj uzante SmartDebug por injekti 1-bitajn kaj 2-bitajn erarojn al LSRAM:- Malfermu SmartDebug GUI, alklaku Sencimigi FPGA Array.
- Iru al la langeto Memorblokoj, elektu la memorokazaĵon, kaj dekstre alklaku Aldoni.
- Por legi la memorblokon, alklaku Legi blokon.
- Injektu unubitan aŭ dubitan eraron en ajnan lokon de la LSRAM de certa profundo.
- Por skribi al la modifita loko, alklaku Skribu blokon.
Dum la LSRAM legu kaj skribu operacion tra la SmartDebug (JTAG) interfaco, la EDAC-regilo estas preteririta kaj ne komputas la ECC-bitojn por la skriboperacio en paŝo e.
- Eraro Kalkulado
8-bitaj nombriloj kutimas disponigi erarkalkulon kaj estas dezajno en la ŝtoflogikon por nombri 1-bitajn aŭ 2-bitajn erarojn. La komandmalĉifrila logiko disponigas la kalkulvalorojn al la GUI dum ricevado de komandoj de la GUI.
Horloĝa Strukturo
En ĉi tiu demo-dezajno, ekzistas unu horloĝa domajno. La interna 50 MHz-oscilatoro movas la RTG4FCCC, kiu plue movas RTG4FCCCECALIB_C0. La RTG4FCCCECALIB_C0 generas 80 MHz-horloĝon kiu disponigas horloĝfonton al la COREUART, cmd_decoder, TPSRAM_ECC, kaj RAM_RW-moduloj.
La sekva figuro montras la horloĝan strukturon de la demo-dezajno.
Figuro 2 • Horloĝa Strukturo
Restarigi Strukturo
En ĉi tiu demo-dezajno, la rekomencigita signalo al la moduloj COREUART, cmd_decoder kaj RAM_RW estas provizita per la LOCK-haveno de RTG4FCCCECALIB_C0. La sekva figuro montras la rekomencigitan strukturon de la demo-dezajno.
Figuro 3 • Restarigi Strukturo
Agordi la Demo-Dezajnon
La sekvaj sekcioj priskribas kiel agordi la Disvolvan Ilaron RTG4 kaj GUI por ruli la demo-dezajnon.
Jumper Agordoj
- Konektu la jumpers sur la Disvolva Ilaro RTG4, kiel montrite en Tabelo 2.
Tabelo 2 • Jumper AgordojSaltanto Pinglo (De) Alpinglo (Al) Komentoj J11, J17, J19, J21, J23, J26, J27, J28 1 2 Defaŭlte J16 2 3 Defaŭlte J32 1 2 Defaŭlte J33 1 3 Defaŭlte 2 4 Notu: Malŝaltu la nutradŝaltilon, SW6, dum konekto de la jumpers.
- Konektu la USB-kablon (mini USB al Type-A USB-kablo) al J47 de la Disvolva Ilaro RTG4 kaj alia fino de la kablo al la USB-haveno de la gastiga komputilo.
- Certigu, ke la USB al UART-pontaj ŝoforoj estas aŭtomate detektitaj. Ĉi tio povas esti kontrolita en la aparata administranto de la gastiga komputilo.
Figuro 4 montras la USB 2.0 seriajn havenpropraĵojn kaj la ligitajn COM31 kaj USB-seriakonvertilon C.
Figuro 4 • USB al UART Bridge Drivers
Notu: Se la USB al UART-pontaj ŝoforoj ne estas instalitaj, elŝutu kaj instalu la ŝoforojn de www.microsemi.com//documents/CDM_2.08.24_WHQL_Certified.zip
Figuro 5 montras la estraran agordon por ruli la EDAC-demonstraĵon sur la Disvolva Ilaro RTG4.
Programado de la Demo-Dezajno
- Lanĉu la programon Libero SOC.
- Programi la Disvolvan Ilaron RTG4 kun la laboro file provizita kiel parto de la dezajno files uzante FlashPro Express-programaron, konsultu Apendicon 1: Programado de la Aparato Uzante FlashPro Express,paĝo 14.
Notu: Post kiam la programado estas farita kun la laboro file per la programaro FlashPro Express, iru al EDAC Demo GUI, paĝo 9. Alie, iru al la sekva paŝo. - En la desegna fluo de Libero, alklaku Run Program-ago.
- Post kiam Programado estas kompleta, verda marko aperas antaŭ 'Run Program-ago' indikante sukcesan programadon de la demo-dezajno.
EDAC Demo GUI
La EDAC-demo estas provizita per uzant-amika GUI, kiel montrite en Figuro 7, kiu funkcias per la gastiga komputilo, kiu komunikas kun la Disvolva Ilaro RTG4. La UART estas utiligita kiel la subesta komunika protokolo inter la gastiga komputilo kaj RTG4 Development Kit.
La GUI enhavas la sekvajn sekciojn:
- Selektado de COM-haveno por establi la UART-konekton al RTG4 FPGA kun la 115200 baŭda rapido.
- LSRAM Memory Write: Por skribi la 8-bitajn datumojn al la specifita LSRAM-memoradreso.
- Memorpurigado: Por ebligi aŭ malŝalti la frotigan logikon.
- LSRAM Memory Read: Por legi la 8-bitajn datumojn de la specifita LSRAM-memoradreso.
- Erarkalkulo: Montras la erarkalkulon kaj provizas opcion por forigi la nombrilon al nulo.
- 1-bita Erarkalkulo: Montras 1-bitan erarkalkulon kaj disponigas eblon forigi la nombrilon al nulo.
- 2-bita Erarkalkulo: Montras 2-bitan erarkalkulon kaj disponigas eblon forigi la nombrilon al nulo.
- Registro-Datumoj: Provizas la statusajn informojn por ĉiu operacio farita per la GUI.
Prizorgante la Demonstracion
La sekvaj paŝoj priskribas kiel ruli la demo:
- Iru al \v1.2.2\v1.2.2\Exe kaj duoble alklaku EDAC_GUI.exe kiel montrite en Figuro 8.
- Elektu la COM31-havenon el la listo kaj alklaku Konekti.
Unubita eraro injekto kaj korekto
- En la provizita Libero-dezajno, duoble alklaku la SmartDebug-Dezajnon en la dezajna fluo.
- En la SmartDebug GUI, alklaku Sencimigi FPGA Array.
- En la fenestro Debug FPGA Array, iru al la langeto Memorblokoj. Ĝi montros la LSRAM-blokon en la dezajno kun logika kaj fizika view. Logikaj blokoj estas montritaj per L-ikono, kaj fizikaj blokoj estas montritaj per P-ikono.
- Elektu la fizikan blokokazaĵon kaj dekstre alklaku Aldoni.
- Por legi la memorblokon, alklaku Legi blokon.
- Injektu 1-bitan eraron en la 8-bitajn datumojn ĉe iu ajn loko de LSRAM ĝis profundo 256, kiel montrite en la sekva figuro kie 1-bita eraro estas injektita ĉe 0-a loko de la LSRAM.
- Alklaku Skribu Blokon por skribi la modifitajn datumojn al la celita loko.
- Iru al la EDAC GUI kaj enigu la Adreskampon en la sekcio de LSRAM Memory Read kaj alklaku Legi, kiel montrite en la sekva figuro.
- Observu 1-Bitan Erarkalkulon kaj Legu Datumajn kampojn en la GUI. La erarkalkula valoro pliiĝas je 1.
La kampo Read Data montras la ĝustajn datumojn dum la EDAC korektas la erarbiton.
Notu: Se memorpurigado ne estas ebligita, tiam la erarkalkulo estas pliigita por ĉiu legado de la sama LSRAM-adreso ĉar ĝi kaŭzas la 1-bitan eraron.
Duobla bita eraro injekto kaj Detekto
- Faru paŝon 1 al paŝo 5 kiel donita en Unubita erara injekto kaj korekto, paĝo 10.
- Injektu 2-bitan eraron en la 8-bitajn datenojn ĉe iu loko de LSRAM ĝis profundo 256, kiel montrite en la sekva figuro kie la 2-bita eraro estas injektita ĉe loko "A" de la LSRAM.
- Klaku Skribu Blokon por skribi la modifitajn datumojn al la celita loko.
- Iru al la EDAC GUI kaj enigu la Adreskampon en la sekcio de LSRAM Memory Read kaj alklaku Legi, kiel montrite en la sekva figuro.
- Observu 2-bitajn Erarkalkulon kaj Legu Datumajn kampojn en la GUI. La erarkalkula valoro pliiĝas je 1.
La kampo Legi Datumojn montras la koruptitajn datumojn.
Ĉiuj agoj faritaj en RTG4 estas registritaj en la Seria Konzolo sekcio de GUI.
Konkludo
Ĉi tiu demonstraĵo elstarigas la EDAC-kapablojn de la RTG4 LSRAM-memoroj. La 1-bita eraro aŭ 2-bita eraro estas enkondukitaj per SmartDebug GUI. 1-bita erarĝustigo kaj 2-bita erardetekto estas observitaj uzante EDAC-GUI.
Programado de la Aparato Uzante FlashPro Express
Ĉi tiu sekcio priskribas kiel programi la RTG4-aparaton kun la programa laboro file uzante FlashPro Express.
Por programi la aparaton, faru la sekvajn paŝojn:
- Certigu, ke la jumper-agordoj sur la tabulo estas la samaj kiel tiuj listigitaj en Tabelo 3 de UG0617:
RTG4 Development Kit Uzantgvidilo. - Laŭvole, jumper J32 povas esti agordita por konekti pinglojn 2-3 kiam vi uzas eksteran FlashPro4, FlashPro5, aŭ FlashPro6 programisto anstataŭ la defaŭlta jumper agordo por uzi la enigitan FlashPro5.
Notu: La nutradŝaltilo, SW6 devas esti malŝaltita dum farado de la jumper-konektoj. - Konektu la elektran kablon al la J9-konektilo sur la tabulo.
- Ŝaltu la nutran ŝaltilon SW6.
- Se vi uzas la enigitan FlashPro5, konektu la USB-kablon al konektilo J47 kaj la gastiga komputilo.
Alternative, se vi uzas eksteran programilon, konektu la rubandkablon al la JTAG kaplinio J22 kaj konektu la programilon al la gastiga komputilo. - Sur la gastiganta komputilo, lanĉu la programon FlashPro Express.
- Alklaku Nova aŭ elektu Novan Laborprojekton el FlashPro Express Job el Projekt-menuo por krei novan laborprojekton, kiel montrite en la sekva figuro.
- Enigu la jenon en la dialogujo Nova Laborprojekto de FlashPro Express Job:
- Programado laboro file: Klaku Foliumi, kaj navigu al la loko kie la .job file troviĝas kaj elektu la file. La defaŭlta loko estas: \rtg4_dg0703_df\Programming_Job
- Loko de la laborprojekto de FlashPro Express: Klaku Foliumi kaj navigu al la dezirata loko de la projekto de FlashPro Express.
- Klaku OK. La bezonata programado file estas elektita kaj preta por esti programita en la aparato.
- La fenestro de FlashPro Express aperos, konfirmu, ke programo-numero aperas en la kampo Programisto. Se ĝi ne faras, konfirmu la tabulkonektojn kaj alklaku Refreŝigi/Rescani Programistojn.
- Alklaku RUN. Kiam la aparato estas programita sukcese, statuso RUN PASSED montriĝas kiel montrite en la sekva figuro.
- Fermu FlashPro Express aŭ alklaku Eliri en la langeto Projekto.
Rulante la TCL-Skripton
TCL-skriptoj estas disponigitaj en la dezajno files dosierujo sub dosierujo TCL_Scripts. Se necese, la dezajno
fluo povas esti reproduktita de Dezajna Efektivigo ĝis generacio de laboro file.
Por ruli la TCL, sekvu la paŝojn sube:
- Lanĉu la programon Libero
- Elektu Projekton > Efektivigu Skripton...
- Klaku Foliumi kaj elektu script.tcl el la elŝutita dosierujo TCL_Scripts.
- Alklaku Kuri.
Post sukcesa ekzekuto de TCL-skripto, Libero-projekto estas kreita ene de TCL_Scripts-dosierujo.
Por pliaj informoj pri TCL-skriptoj, raportu al rtg4_dg0703_df/TCL_Scripts/readme.txt.
Vidu al Libero® SoC TCL Command Reference Guide por pliaj detaloj pri TCL-komandoj. Kontaktu Teknikan Subtenon por ajnaj demandoj renkontitaj dum rulado de la TCL-skripto.
Microsemi faras neniun garantion, reprezentadon aŭ garantion koncerne la informojn enhavitajn ĉi tie aŭ la taŭgecon de ĝiaj produktoj kaj servoj por iu ajn aparta celo, nek Microsemi supozas ajnan respondecon de la apliko aŭ uzo de ajna produkto aŭ cirkvito. La produktoj venditaj ĉi-suba kaj ĉiuj aliaj produktoj venditaj de Microsemi estis submetitaj al limigitaj provoj kaj ne devus esti uzataj kune kun misi-kritika ekipaĵo aŭ aplikoj. Oni kredas, ke ajnaj agadospecifoj estas fidindaj sed ne estas kontrolitaj, kaj Aĉetanto devas fari kaj plenumi ĉiujn agadojn kaj aliajn provojn de la produktoj, sole kaj kune kun aŭ instalitaj en iuj finaj produktoj. Aĉetanto ne dependas de iuj datumoj kaj agado-specifoj aŭ parametroj provizitaj de Microsemi. Estas la respondeco de la Aĉetanto sendepende determini taŭgecon de iuj produktoj kaj testi kaj kontroli la samon. La informoj provizitaj de Microsemi ĉi-sube estas provizitaj "kiel estas, kie estas" kaj kun ĉiuj misfunkciadoj, kaj la tuta risko asociita kun tiaj informoj estas tute kun la Aĉetanto. Microsemi ne donas, eksplicite aŭ implicite, al iu ajn partio ajnajn patentajn rajtojn, licencojn, aŭ ajnajn aliajn IP-rajtojn, ĉu koncerne tiajn informojn mem aŭ io ajn priskribitan per tiaj informoj. Informoj provizitaj en ĉi tiu dokumento estas proprieta de Microsemi, kaj Microsemi rezervas la rajton fari ajnajn ŝanĝojn al la informoj en ĉi tiu dokumento aŭ al ajnaj produktoj kaj servoj iam ajn sen avizo.
Pri Microsemi Microsemi, tute posedata filio de Microchip Technology Inc. (Nasdaq: MCHP), ofertas ampleksan biletujon de duonkonduktaĵoj kaj sistemaj solvoj por aerospaco kaj defendo, komunikado, datumcentro kaj industriaj merkatoj. Produktoj inkluzivas alt-efikecajn kaj radiad-harditajn analogajn mikssignalajn integrajn cirkvitojn, FPGAojn, SoCojn kaj ASICojn; produktoj pri administrado de potenco; tempaj kaj sinkronigaj aparatoj kaj precizaj tempsolvoj, fiksante la mondan normon por tempo; aparatoj pri voĉa prilaborado; RF-solvoj; diskretaj komponantoj; entreprenaj stokado kaj komunikado solvoj, sekureco teknologioj kaj skalebla kontraŭ-tamper produktoj; Eterretaj solvoj; Power-over-Ethernet ICs kaj midspans; same kiel laŭmendajn dezajnokapablojn kaj servojn. Lernu pli ĉe www.microsemi.com.
Microsemi Ĉefsidejo
One Enterprise, Aliso Viejo,
CA 92656 Usono
Ene de Usono: +1 800-713-4113
Ekster Usono: +1 949-380-6100
Vendo: +1 949-380-6136
Fakso: +1 949-215-4996
Retpoŝto: vendoj.support@microsemi.com
www.microsemi.com
©2021 Microsemi, tute posedata filio de Microchip Technology Inc. Ĉiuj rajtoj rezervitaj. Microsemi kaj la Microsemi-emblemo estas registritaj varmarkoj de Microsemi Corporation. Ĉiuj aliaj varmarkoj kaj servomarkoj estas la posedaĵo de siaj respektivaj posedantoj.
Microsemi Proprietary DG0703 Revizio 4.0
Dokumentoj/Rimedoj
![]() |
MICROCHIP-Erara Detekto kaj Korekto sur RTG4 LSRAM-Memoro [pdf] Uzantogvidilo DG0703 Demo, Eraro-Detekto kaj Korekto sur RTG4 LSRAM Memoro, Detekto kaj Korekto sur RTG4 LSRAM Memoro, RTG4 LSRAM Memoro, LSRAM Memoro |