MICROCHIP Otkrivanje i ispravljanje pogrešaka na RTG4 LSRAM memoriji
Povijest revizija
Povijest revizija opisuje promjene koje su implementirane u dokumentu. Promjene su navedene po reviziji, počevši od najnovije objave.
Revizija 4.0
Slijedi sažetak promjena napravljenih u ovoj reviziji.
- Ažuriran dokument za Libero SoC v2021.2.
- Dodan Dodatak 1: Programiranje uređaja pomoću FlashPro Expressa, stranica 14.
- Dodan Dodatak 2: Pokretanje TCL skripte, stranica 16.
- Uklonjene su reference na brojeve verzija Libera.
Revizija 3.0
Ažuriran dokument za izdanje softvera Libero v11.9 SP1.
Revizija 2.0
Ažuriran dokument za izdanje softvera Libero v11.8 SP2.
Revizija 1.0
Prva objava ovog dokumenta.
Otkrivanje i ispravljanje pogrešaka na RTG4 LSRAM memoriji
Ovaj referentni dizajn opisuje mogućnosti otkrivanja i ispravljanja pogrešaka (EDAC) RTG4™ FPGA LSRAM-ova. U okruženju osjetljivom na poremećaj od jednog događaja (SEU), RAM je sklon prolaznim pogreškama uzrokovanim teškim ionima. Te se pogreške mogu otkriti i ispraviti korištenjem kodova za ispravljanje pogrešaka (ECC). RTG4 FPGA RAM blokovi imaju ugrađene EDAC kontrolere za generiranje kodova za ispravljanje pogrešaka za ispravljanje 1-bitne pogreške ili otkrivanje 2-bitne pogreške.
Ako se detektira 1-bitna pogreška, EDAC kontroler ispravlja bit pogreške i postavlja oznaku ispravljanja pogreške (SB_CORRECT) na aktivno visoko. Ako se otkrije 2-bitna pogreška, EDAC kontroler postavlja oznaku za otkrivanje pogreške (DB_DETECT) na aktivnu visoku vrijednost.
Za više informacija o RTG4 LSRAM EDAC funkcionalnosti, pogledajte UG0574: RTG4 FPGA Fabric
Upute za korištenje.
U ovom referentnom dizajnu, 1-bitna pogreška ili 2-bitna pogreška uvedena je kroz SmartDebug GUI. EDAC se promatra korištenjem grafičkog korisničkog sučelja (GUI), korištenjem UART sučelja za pristup LSRAM-u za čitanje/pisanje podataka, Libero® System-on-Chip (SoC) SmartDebug (JTAG) koristi se za ubacivanje pogrešaka u LSRAM memoriju.
Zahtjevi za dizajn
Tablica 1 navodi zahtjeve referentnog dizajna za pokretanje RTG4 LSRAM EDAC demonstracije.
Tablica 1 • Zahtjevi za dizajn
Softver
- Libero SoC
- FlashPro Express
- SmartDebug
- Upravljački programi za glavno računalo USB na UART upravljački programi
Bilješka: Libero SmartDesign i snimke zaslona konfiguracije prikazane u ovom vodiču služe samo za ilustraciju.
Otvorite Libero dizajn da vidite najnovija ažuriranja.
Preduvjeti
Prije nego počnete:
Preuzmite i instalirajte Libero SoC (kako je navedeno u webmjesto za ovaj dizajn) na glavnom računalu sa sljedeće lokacije: https://www.microsemi.com/product-directory/design-resources/1750-libero-soc
Demo dizajn
Preuzmite demo dizajn files iz Microsemija webstranica na: http://soc.microsemi.com/download/rsc/?f=rtg4_dg0703_df
Demo dizajn files uključuju:
- Projekt Libero SoC
- GUI instalacijski program
- Programiranje files
- Readme.txt file
- TCL_Skripte
GUI aplikacija na glavnom računalu izdaje naredbe RTG4 uređaju putem USB-UART sučelja. Ovo UART sučelje dizajnirano je s CoreUART-om, koji je logički IP iz Libero SoC IP kataloga. CoreUART IP u RTG4 fabrici prima naredbe i prenosi ih logici dekodera naredbi. Logika dekodera naredbi dekodira naredbu čitanja ili pisanja, koja se izvršava pomoću logike memorijskog sučelja.
Blok memorijskog sučelja koristi se za čitanje/pisanje i praćenje LSRAM oznaka pogreške. Ugrađeni EDAC ispravlja 1-bitnu pogrešku tijekom čitanja iz LSRAM-a i pruža ispravljene podatke korisničkom sučelju, ali ne zapisuje ispravljene podatke natrag u LSRAM. Ugrađeni LSRAM EDAC ne implementira značajku čišćenja. Demo dizajn implementira scrub logiku, koja nadzire 1-bitnu oznaku korekcije i ažurira LSRAM s ispravljenim podacima ako se pojavi greška jednog bita.
SmartDebug GUI koristi se za umetanje 1-bitne ili 2-bitne pogreške u LSRAM podatke.
Slika 1 prikazuje blok dijagram najviše razine RTG4 LSRAM EDAC demo dizajna.
Slika 1 • Blok dijagram najviše razine
Sljedeće su konfiguracije demo dizajna:
- LSRAM je konfiguriran za ×18 način rada i EDAC je omogućen povezivanjem LSRAM-ova ECC_EN signala na visoki.
Bilješka: LSRAM EDAC je podržan samo za ×18 i ×36 modove. - CoreUART IP konfiguriran je za komunikaciju s aplikacijom glavnog računala brzinom od 115200 bauda.
- RTG4FCCCECALIB_C0 je konfiguriran za takt CoreUART-a i druge logike tkanine na 80 MHz.
Značajke
Sljedeće su značajke demo dizajna:
- Čitajte i pišite u LSRAM
- Ubaci 1-bitnu i 2-bitnu pogrešku pomoću SmartDebuga
- Prikažite 1-bitne i 2-bitne vrijednosti broja pogrešaka
- Odredba za brisanje vrijednosti brojanja pogrešaka
- Omogućite ili onemogućite logiku čišćenja memorije
Opis
Ovaj demo dizajn uključuje implementaciju sljedećih zadataka:
- Inicijalizacija i pristup LSRAM-u
Logika memorijskog sučelja implementirana u logiku tkanine prima naredbu za inicijalizaciju iz GUI-ja i inicijalizira prvih 256 memorijskih lokacija LSRAM-a s inkrementalnim podacima. Također obavlja operacije čitanja i pisanja na 256 memorijskih lokacija LSRAM-a primanjem adrese i podataka iz GUI-ja. Za operaciju čitanja, dizajn dohvaća podatke iz LSRAM-a i daje ih GUI-ju za prikaz. Očekuje se da dizajn neće uzrokovati pogreške prije korištenja SmartDebuga.
Bilješka: Neinicijalizirane memorijske lokacije mogu imati nasumične vrijednosti, a SmartDebug može pokazati jednobitne ili dvobitne pogreške na tim lokacijama.
- Ubacivanje 1-bitnih ili 2-bitnih pogrešaka
SmartDebug GUI koristi se za ubacivanje 1-bitnih ili 2-bitnih pogrešaka u navedenu memorijsku lokaciju LSRAM-a. Sljedeće se operacije izvode pomoću SmartDebuga za umetanje 1-bitnih i 2-bitnih pogrešaka u LSRAM:- Otvorite SmartDebug GUI, kliknite Debug FPGA Array.
- Idite na karticu Memorijski blokovi, odaberite memorijsku instancu i desnom tipkom miša kliknite Dodaj.
- Za čitanje memorijskog bloka kliknite Read Block.
- Umetnite jednobitnu ili dvobitnu pogrešku u bilo koje mjesto LSRAM-a određene dubine.
- Za pisanje na izmijenjenu lokaciju kliknite Write Block.
Tijekom operacije čitanja i pisanja LSRAM-a kroz SmartDebug (JTAG) sučelje, EDAC kontroler je zaobiđen i ne izračunava ECC bitove za operaciju pisanja u koraku e.
- Brojanje pogrešaka
8-bitni brojači koriste se za pružanje brojanja pogrešaka i dizajnirani su u logici tkanine za brojanje 1-bitnih ili 2-bitnih pogrešaka. Logika dekodera naredbi daje vrijednosti brojanja GUI-ju kada prima naredbe iz GUI-a.
Struktura takta
U ovom demo dizajnu postoji jedna domena takta. Interni oscilator od 50 MHz pokreće RTG4FCCC, koji dalje pokreće RTG4FCCCECALIB_C0. RTG4FCCCECALIB_C0 generira takt od 80 MHz koji daje izvor takta modulima COREUART, cmd_decoder, TPSRAM_ECC i RAM_RW.
Sljedeća slika prikazuje taktnu strukturu demo dizajna.
Slika 2 • Struktura takta
Poništi strukturu
U ovom demo dizajnu, signal resetiranja za COREUART, cmd_decoder i RAM_RW module pruža se preko LOCK porta RTG4FCCCECALIB_C0. Sljedeća slika prikazuje reset strukturu demo dizajna.
Slika 3 • Ponovno postavljanje strukture
Postavljanje demo dizajna
Sljedeći odjeljci opisuju kako postaviti RTG4 Development Kit i GUI za pokretanje demo dizajna.
Postavke kratkospojnika
- Spojite kratkospojnike na RTG4 razvojnom kompletu, kao što je prikazano u tablici 2.
Tablica 2 • Postavke kratkospojnikaDžemper Prikvači (od) Prikvači (na) Komentari J11, J17, J19, J21, J23, J26, J27, J28 1 2 Zadano J16 2 3 Zadano J32 1 2 Zadano J33 1 3 Zadano 2 4 Bilješka: Isključite prekidač napajanja, SW6, dok spajate kratkospojnike.
- Spojite USB kabel (mini USB na Type-A USB kabel) na J47 razvojnog kompleta RTG4, a drugi kraj kabela na USB priključak glavnog računala.
- Provjerite jesu li upravljački programi mosta USB na UART automatski otkriveni. To se može provjeriti u upravitelju uređaja glavnog računala.
Slika 4 prikazuje svojstva USB 2.0 serijskog priključka i povezani COM31 i USB serijski pretvarač C.
Slika 4 • Upravljački programi mosta USB na UART
Bilješka: Ako upravljački programi za USB na UART most nisu instalirani, preuzmite i instalirajte upravljačke programe s www.microsemi.com//documents/CDM_2.08.24_WHQL_Certified.zip
Slika 5 prikazuje postavku ploče za pokretanje EDAC demonstracije na RTG4 razvojnom kompletu.
Programiranje demo dizajna
- Pokrenite softver Libero SOC.
- Za programiranje RTG4 razvojnog kompleta s poslom file predviđeno kao dio dizajna files korištenjem softvera FlashPro Express, pogledajte Dodatak 1: Programiranje uređaja pomoću FlashPro Expressa, stranica 14.
Bilješka: Nakon što je programiranje završeno s poslom file putem softvera FlashPro Express, prijeđite na EDAC Demo GUI, stranica 9. U suprotnom prijeđite na sljedeći korak. - U tijeku dizajna Libero kliknite radnju Pokreni program.
- Nakon dovršetka programiranja pojavljuje se zelena kvačica ispred 'Akcije pokretanja programa' što označava uspješno programiranje demo dizajna.
EDAC Demo GUI
EDAC demo opremljen je GUI-jem prilagođenim korisniku, kao što je prikazano na slici 7, koji radi na glavnom računalu, koje komunicira s RTG4 razvojnim kompletom. UART se koristi kao temeljni komunikacijski protokol između glavnog računala i RTG4 razvojnog kompleta.
GUI sadrži sljedeće odjeljke:
- Odabir COM priključka za uspostavljanje UART veze na RTG4 FPGA s brzinom prijenosa od 115200 bauda.
- Zapisivanje LSRAM memorije: Za pisanje 8-bitnih podataka na navedenu adresu LSRAM memorije.
- Memory Scrubbing: Za omogućavanje ili onemogućavanje logike čišćenja.
- Čitanje LSRAM memorije: Za čitanje 8-bitnih podataka s navedene adrese LSRAM memorije.
- Broj pogrešaka: Prikazuje broj pogrešaka i nudi opciju brisanja vrijednosti brojača na nulu.
- 1-bit Error Count: Prikazuje 1-bitni broj pogrešaka i nudi mogućnost brisanja vrijednosti brojača na nulu.
- 2-bit Error Count: Prikazuje 2-bitni broj pogrešaka i nudi opciju brisanja vrijednosti brojača na nulu.
- Podaci dnevnika: Pruža informacije o statusu za svaku operaciju koja se izvodi pomoću GUI-ja.
Pokretanje demo verzije
Sljedeći koraci opisuju kako pokrenuti demo:
- Ići \v1.2.2\v1.2.2\Exe i dvaput kliknite EDAC_GUI.exe kao što je prikazano na slici 8.
- Odaberite COM31 priključak s popisa i kliknite Poveži se.
Ubacivanje i ispravljanje pogreške jednog bita
- U ponuđenom Libero dizajnu dvaput kliknite na SmartDebug dizajn u tijeku dizajna.
- U SmartDebug GUI kliknite Debug FPGA Array.
- U prozoru Debug FPGA Array idite na karticu Memorijski blokovi. Prikazat će LSRAM blok u dizajnu s logičkim i fizičkim view. Logički blokovi prikazani su ikonom L, a fizički blokovi prikazani su ikonom P.
- Odaberite instancu fizičkog bloka i desnom tipkom miša kliknite Dodaj.
- Za čitanje memorijskog bloka kliknite Read Block.
- Ubacite 1 bitnu pogrešku u 8 bitne podatke na bilo kojoj lokaciji LSRAM-a do dubine 256, kao što je prikazano na sljedećoj slici gdje je 1 bitna pogreška umetnuta na 0. lokaciju LSRAM-a.
- Pritisnite Write Block kako biste zapisali izmijenjene podatke na željeno mjesto.
- Idite na EDAC GUI i unesite polje Address u odjeljku LSRAM Memory Read i pritisnite Read, kao što je prikazano na sljedećoj slici.
- Promatrajte polja 1 Bit Error Count i Read Data u GUI. Vrijednost broja grešaka povećava se za 1.
Polje Read Data prikazuje točne podatke dok EDAC ispravlja bit pogreške.
Bilješka: Ako brisanje memorije nije omogućeno, tada se broj pogrešaka povećava za svako čitanje s iste LSRAM adrese jer uzrokuje 1-bitnu pogrešku.
Dvostruko ubacivanje i detekcija pogreške bita
- Izvršite korake od 1 do koraka 5 kao što je navedeno u umetanju i ispravljanju pogreške jednog bita, stranica 10.
- Umetnite 2-bitnu pogrešku u 8-bitne podatke na bilo kojoj lokaciji LSRAM-a do dubine 256, kao što je prikazano na sljedećoj slici gdje se 2-bitna pogreška ubacuje na lokaciju 'A' LSRAM-a.
- Pritisnite Write Block za pisanje izmijenjenih podataka na željeno mjesto.
- Idite na EDAC GUI i unesite polje Address u odjeljku LSRAM Memory Read i pritisnite Read, kao što je prikazano na sljedećoj slici.
- Promatrajte polja 2-bit Error Count i Read Data u GUI. Vrijednost broja grešaka povećava se za 1.
Polje Read Data prikazuje oštećene podatke.
Sve radnje izvedene u RTG4 bilježe se u odjeljku serijske konzole GUI-ja.
Zaključak
Ovaj demo ističe EDAC mogućnosti RTG4 LSRAM memorija. 1-bitna pogreška ili 2-bitna pogreška uvode se kroz SmartDebug GUI. 1-bitno ispravljanje pogrešaka i 2-bitno otkrivanje pogrešaka promatra se pomoću EDAC GUI.
Programiranje uređaja koristeći FlashPro Express
Ovaj odjeljak opisuje kako programirati RTG4 uređaj s poslom programiranja file koristeći FlashPro Express.
Za programiranje uređaja učinite sljedeće:
- Provjerite jesu li postavke kratkospojnika na ploči iste kao one navedene u tablici 3 od UG0617:
RTG4 Development Kit korisnički priručnik. - Po izboru, kratkospojnik J32 može se postaviti za spajanje pinova 2-3 kada se koristi vanjski FlashPro4, FlashPro5 ili FlashPro6 programator umjesto zadane postavke kratkospojnika za korištenje ugrađenog FlashPro5.
Bilješka: Prekidač za napajanje, SW6 mora biti isključen dok spajate kratkospojnike. - Spojite kabel napajanja na J9 konektor na ploči.
- Uključite prekidač napajanja SW6.
- Ako koristite ugrađeni FlashPro5, spojite USB kabel na konektor J47 i glavno računalo.
Alternativno, ako koristite vanjski programator, spojite trakasti kabel na JTAG zaglavlje J22 i spojite programator na glavno računalo. - Na glavnom računalu pokrenite softver FlashPro Express.
- Pritisnite New ili odaberite New Job Project iz FlashPro Express Job iz izbornika Project za stvaranje novog projekta posla, kao što je prikazano na sljedećoj slici.
- Unesite sljedeće u dijaloški okvir New Job Project iz FlashPro Express Job:
- Posao programiranja file: Kliknite Pregledaj i idite do mjesta na kojem se nalazi .posao file se nalazi i odaberite file. Zadana lokacija je: \rtg4_dg0703_df\Programerski_posao
- FlashPro Express lokacija projekta posla: Kliknite Browse i idite do željene FlashPro Express lokacije projekta.
- Pritisnite OK. Potrebno programiranje file je odabran i spreman za programiranje u uređaju.
- Pojavit će se prozor FlashPro Express, potvrdite da se broj programatora pojavljuje u polju Programmer. Ako se ne dogodi, potvrdite veze ploče i kliknite Osvježi/ponovno skeniraj programere.
- Pritisnite RUN. Kada je uređaj uspješno programiran, prikazuje se status RUN PASSED kao što je prikazano na sljedećoj slici.
- Zatvorite FlashPro Express ili kliknite Izlaz na kartici Projekt.
Pokretanje TCL skripte
TCL skripte su uključene u dizajn files mapu u direktoriju TCL_Scripts. Ako je potrebno, dizajn
tok se može reproducirati od implementacije dizajna do generiranja posla file.
Da biste pokrenuli TCL, slijedite korake u nastavku:
- Pokrenite softver Libero
- Odaberite Projekt > Izvrši skriptu….
- Kliknite Pregledaj i odaberite script.tcl iz preuzetog direktorija TCL_Scripts.
- Pritisnite Pokreni.
Nakon uspješnog izvođenja TCL skripte, Libero projekt se kreira unutar direktorija TCL_Scripts.
Za više informacija o TCL skriptama pogledajte rtg4_dg0703_df/TCL_Scripts/readme.txt.
Više pojedinosti o TCL naredbama potražite u Referentnom vodiču za Libero® SoC TCL naredbe. Kontaktirajte tehničku podršku za sve upite na koje naiđete prilikom pokretanja TCL skripte.
Microsemi ne daje nikakva jamstva, zastupanja ili jamstva u vezi s ovdje sadržanim informacijama ili prikladnošću svojih proizvoda i usluga za bilo koju određenu svrhu, niti Microsemi preuzima bilo kakvu odgovornost koja proizlazi iz primjene ili upotrebe bilo kojeg proizvoda ili sklopa. Proizvodi koji se ovdje prodaju i svi drugi proizvodi koje prodaje Microsemi podvrgnuti su ograničenom testiranju i ne bi se trebali koristiti zajedno s opremom ili aplikacijama kritičnim za misiju. Vjeruje se da su sve izvedbene specifikacije pouzdane, ali nisu provjerene, a Kupac mora provesti i dovršiti sva ispitivanja performansi i druga testiranja proizvoda, samih i zajedno sa, ili ugrađenih u bilo koji krajnji proizvod. Kupac se neće oslanjati ni na kakve podatke i specifikacije izvedbe ili parametre koje pruža Microsemi. Odgovornost Kupca je da samostalno utvrdi prikladnost bilo kojeg proizvoda te istu testira i provjeri. Informacije koje Microsemi daje u nastavku dane su “kao što jesu, gdje je” i sa svim greškama, a cijeli rizik povezan s takvim informacijama u potpunosti je na Kupcu. Microsemi ne daje, eksplicitno ili implicitno, nijednoj strani nikakva patentna prava, licence ili bilo koja druga prava intelektualne svojine, bilo u pogledu samih takvih informacija ili bilo čega što je opisano takvim informacijama. Informacije navedene u ovom dokumentu vlasništvo su tvrtke Microsemi, a Microsemi zadržava pravo izmjene podataka u ovom dokumentu ili bilo kojeg proizvoda i usluga u bilo koje vrijeme bez prethodne obavijesti.
O Microsemiju Microsemi, podružnica u stopostotnom vlasništvu Microchip Technology Inc. (Nasdaq: MCHP), nudi sveobuhvatan portfelj poluvodičkih i sistemskih rješenja za zrakoplovstvo i obranu, komunikacije, podatkovne centre i industrijska tržišta. Proizvodi uključuju visokoučinkovite analogne integrirane sklopove s mješovitim signalom otporne na zračenje, FPGA, SoC i ASIC; proizvodi za upravljanje napajanjem; uređaji za mjerenje vremena i sinkronizaciju i rješenja za precizno vrijeme, postavljanje svjetskih standarda za vrijeme; uređaji za obradu glasa; RF rješenja; diskretne komponente; poduzeća za pohranu i komunikacijska rješenja, sigurnosne tehnologije i skalabilni anti-tamper proizvodi; Ethernet rješenja; Power-over-Ethernet IC-ovi i srednji rasponi; kao i mogućnosti i usluge prilagođenog dizajna. Saznajte više na www.microsemi.com.
Sjedište Microsemi
One Enterprise, Aliso Viejo,
CA 92656 SAD
Unutar SAD-a: +1 800-713-4113
Izvan SAD-a: +1 949-380-6100
Prodaja: +1 949-380-6136
Faks: +1 949-215-4996
Email: prodaja.support@microsemi.com
www.microsemi.com
©2021 Microsemi, podružnica tvrtke Microchip Technology Inc. u potpunom vlasništvu. Sva prava pridržana. Microsemi i logotip Microsemi registrirani su zaštitni znakovi tvrtke Microsemi Corporation. Svi ostali zaštitni znakovi i oznake usluga vlasništvo su njihovih vlasnika.
Microsemi vlasništvo DG0703 Revizija 4.0
Dokumenti / Resursi
![]() |
MICROCHIP Otkrivanje i ispravljanje pogrešaka na RTG4 LSRAM memoriji [pdf] Korisnički priručnik DG0703 Demo, otkrivanje i ispravljanje pogrešaka na RTG4 LSRAM memoriji, otkrivanje i ispravljanje na RTG4 LSRAM memoriji, RTG4 LSRAM memoriji, LSRAM memoriji |