„Microsemi DG0618“ klaidų aptikimas ir taisymas „SmartFusion2“ įrenginiuose naudojant DDR atmintį
„Microsemi“ įmonės būstinė
„One Enterprise“, Aliso Viejo,
CA 92656 JAV
JAV: +1 800-713-4113
Už JAV ribų: +1 949-380-6100
Faksas: +1 XNUMX XNUMX XNUMX 949-215-4996
El. paštas: sales.support@microsemi.com
www.microsemi.com
© „Microsemi Corporation“, 2017 m. Visos teisės saugomos. Microsemi ir Microsemi logotipas yra Microsemi Corporation prekių ženklai. Visi kiti prekių ir paslaugų ženklai yra atitinkamų jų savininkų nuosavybė
„Microsemi“ nesuteikia jokių garantijų, pareiškimų ar garantijų dėl čia pateiktos informacijos arba savo produktų ir paslaugų tinkamumo jokiam konkrečiam tikslui, taip pat „Microsemi“ neprisiima jokios atsakomybės, kylančios dėl bet kokio gaminio ar grandinės taikymo ar naudojimo. Pagal šią nuostatą parduodami produktai ir visi kiti „Microsemi“ parduodami produktai buvo išbandyti ribotai ir neturėtų būti naudojami kartu su įranga ar programomis, kurios yra labai svarbios. Manoma, kad bet kokios veikimo specifikacijos yra patikimos, tačiau nėra patikrintos, todėl Pirkėjas turi atlikti ir užbaigti visus gaminių veikimo ir kitus bandymus atskirai ir kartu su bet kokiais galutiniais produktais arba juose sumontuotais. Pirkėjas negali pasikliauti jokiais Microsemi pateiktais duomenimis ir veikimo specifikacijomis ar parametrais. Pirkėjas privalo savarankiškai nustatyti bet kokių gaminių tinkamumą ir juos išbandyti bei patikrinti. „Microsemi“ toliau pateikta informacija pateikiama „tokia, kokia yra, kur yra“ ir su visais trūkumais, o visa su tokia informacija susijusi rizika tenka Pirkėjui. „Microsemi“ nei tiesiogiai, nei netiesiogiai nesuteikia jokiai šaliai jokių patentinių teisių, licencijų ar bet kokių kitų intelektinės nuosavybės teisių, nesvarbu, ar tai susiję su tokia informacija, ar bet kuo, kas aprašyta toje informacijoje. Šiame dokumente pateikta informacija priklauso „Microsemi“, todėl „Microsemi“ pasilieka teisę bet kuriuo metu be įspėjimo keisti šiame dokumente pateiktą informaciją arba bet kokius produktus ir paslaugas.
Apie Microsemi
„Microsemi Corporation“ (Nasdaq: MSCC) siūlo platų puslaidininkių ir sistemų sprendimų portfelį aviacijos ir gynybos, ryšių, duomenų centrų ir pramonės rinkoms. Produktai apima didelio našumo ir spinduliuotei atsparius analoginius mišraus signalo integrinius grandynus, FPGA, SoC ir ASIC; galios valdymo produktai; laiko matavimo ir sinchronizavimo įrenginiai bei tikslūs laiko sprendimai, nustatantys pasaulio laiko standartą; balso apdorojimo įrenginiai; RF sprendimai; atskiri komponentai; įmonės saugojimo ir ryšių sprendimai, saugos technologijos ir keičiamo dydžio anti-tamper produktai; Ethernet sprendimai; Power-over-Ethernet IC ir midspans; taip pat pritaikytos dizaino galimybės ir paslaugos. „Microsemi“ būstinė yra Aliso Viejo mieste, Kalifornijoje, joje visame pasaulyje dirba apie 4,800 darbuotojų. Sužinokite daugiau adresu www.microsemi.com.
Revizijos istorija
Taisymų istorija aprašo pakeitimus, kurie buvo įgyvendinti dokumente. Pakeitimai pateikiami pagal peržiūrą, pradedant naujausiu leidiniu.
- 4.0 peržiūra
Atnaujintas Libero v11.8 programinės įrangos leidimo dokumentas. - 3.0 peržiūra
Atnaujintas Libero v11.7 programinės įrangos leidimo dokumentas. - 2.0 peržiūra
Atnaujintas Libero v11.6 programinės įrangos leidimo dokumentas. - 1.0 peržiūra
Pradinis Libero SoC v11.5 programinės įrangos leidimas.
Klaidų aptikimas ir taisymas SmartFusion2 įrenginiuose naudojant DDR atmintį
Įvadas
Vieno įvykio sutrikimams (SEU) jautrioje aplinkoje laisvosios prieigos atmintis (RAM) yra linkusi į trumpalaikes klaidas, kurias sukelia sunkieji jonai.
Šiame dokumente aprašomos SoC FPGA EDAC galimybės, kurios naudojamos programose su atmintimis, prijungtomis per mikrovaldiklio posistemį (MSS) DDR (MDDR).
SmartFusion2 įrenginiuose įdiegti EDAC valdikliai palaiko vienos klaidos taisymą ir dvigubą klaidų aptikimą (SECDED). Visos atmintinės – patobulinta statinė laisvosios kreipties atmintis (eSRAM), DDR, mažos galios DDR (LPDDR) – SmartFusion2 MSS įrenginiuose yra apsaugoti SECDED. DDR sinchroninė dinaminė laisvosios kreipties atmintis (SDRAM) gali būti DDR2, DDR3 arba LPDDR1, priklausomai nuo MDDR konfigūracijos ir aparatinės įrangos ECC galimybių.
SmartFusion2 MDDR posistemis palaiko iki 4 GB atminties tankį. Šioje demonstracijoje galite pasirinkti bet kurią 1 GB atminties vietą DDR adresų erdvėje (nuo 0xA0000000 iki 0xDFFFFFFF).
Kai įjungtas SECDED:
- Rašymo operacija apskaičiuoja ir prideda 8 bitus SECDED kodo (prie kiekvienų 64 duomenų bitų)
- Skaitymo operacija nuskaito ir tikrina duomenis pagal saugomą SECDED kodą, kad palaikytų 1 bitų klaidų taisymą ir 2 bitų klaidų aptikimą
Toliau pateiktoje iliustracijoje aprašoma „SmartFusion2 EDAC“ DDR SDRAM blokinė schema.
1 pav. • Aukščiausio lygio blokinė diagrama
DDR EDAC funkcija palaiko:
- SECDED mechanizmas
- Suteikia ARM Cortex-M3 procesoriaus ir FPGA audinio pertraukimus, kai aptinkama 1 bito klaida arba 2 bitų klaida
- Išsaugo 1 ir 2 bitų klaidų skaičių klaidų skaitiklių registruose
- Išsaugo paskutinės 1 bito arba 2 bitų klaidos paveiktos atminties vietos adresą
- Saugo 1 bitų arba 2 bitų klaidų duomenis SECDED registruose
- teikia klaidų magistralės signalus į FPGA audinį
Daugiau informacijos apie EDAC rasite UG0443: SmartFusion2 ir IGLOO2 FPGA saugos ir patikimumo vartotojo vadovas ir UG0446: SmartFusion2 ir IGLOO2 FPGA didelės spartos DDR sąsajų vartotojo vadovas.
Dizaino reikalavimai
Toliau pateiktoje lentelėje pateikiami projektavimo reikalavimai.
1 lentelė • Projektavimo reikalavimai
- Projektavimo reikalavimų aprašymas
- Techninės įrangos reikalavimai
- SmartFusion2 Advanced Development Kit plokštė Rev B arba naujesnė
- „FlashPro5“ arba naujesnis programuotojas
- USB A į mini-B USB laidas
- Maitinimo adapteris 12 V
- DDR3 dukterinė plokštė
- Operacinė sistema Bet kuri 64 bitų arba 32 bitų Windows XP SP2
- Bet kuri 64 arba 32 bitų Windows 7
- Programinės įrangos reikalavimai
- „Libero® System-on-Chip“ (SoC) v11.8
- SoftConsole v4.0
- FlashPro programavimo programinė įranga v11.8
- Pagrindinio kompiuterio tvarkyklės USB į UART tvarkyklės
- Framework demonstraciniam Microsoft .NET Framework 4 klientui paleisti
Demo dizainas
Demo dizainas files galima atsisiųsti iš toliau nurodyto kelio Microsemi websvetainė: http://soc.microsemi.com/download/rsc/?f=m2s_dg0618_liberov11p8_df
Demo dizainas files apima:
- DDR konfigūracija File
- DDR_EDAC
- Programavimas files
- GUI vykdomasis failas
- Skaityk mane file
Toliau pateiktoje iliustracijoje aprašoma aukščiausio lygio dizaino struktūra files. Daugiau informacijos rasite faile readme.txt file.
2 pav. • Demonstracinė aukščiausio lygio struktūra
Demo dizaino įgyvendinimas
MDDR posistemis turi specialų EDAC valdiklį. EDAC aptinka 1 bito arba 2 bitų klaidą, kai duomenys nuskaitomi iš atminties. Jei EDAC aptinka 1 bito klaidą, EDAC valdiklis ištaiso klaidos bitą. Jei EDAC įjungtas visoms 1 ir 2 bitų klaidoms, atitinkami klaidų skaitikliai sistemos registruose padidinami ir generuojami atitinkami pertraukimai bei klaidų magistralės signalai į FPGA audinį.
Tai vyksta realiu laiku. Norint parodyti šią SECDED funkciją, rankiniu būdu įvedama klaida ir stebimas aptikimas bei taisymas.
Šis demonstracinis dizainas apima šių veiksmų įgyvendinimą:
- Įgalinti EDAC
- Įrašykite duomenis į DDR
- Skaityti duomenis iš DDR
- Išjungti EDAC
- Sugadintas 1 arba 2 bitai
- Įrašykite duomenis į DDR
- Įgalinti EDAC
- Skaityti duomenis
- Įvykus 1 bito klaidai, EDAC valdiklis ištaiso klaidą, atnaujina atitinkamus būsenos registrus ir pateikia duomenis, įrašytus 2 veiksme, nuskaitant 8 veiksmą.
- 2 bitų klaidos atveju sukuriamas atitinkamas pertraukimas ir programa turi ištaisyti duomenis arba imtis atitinkamų veiksmų pertraukų tvarkyklėje. Šie du metodai parodyti šioje demonstracijoje.
Šioje demonstracijoje įdiegti du testai: kilpos testas ir rankinis testas. Jie taikomi tiek 1, tiek 2 bitų klaidoms.
Kilpos testas
Ciklo testas vykdomas, kai SmartFusion2 įrenginiai gauna kilpos testo komandą iš GUI. Iš pradžių visi klaidų skaitikliai ir su EDAC susiję registrai perkeliami į RESET būseną.
Kiekvienai iteracijai atliekami šie veiksmai.
- Įjunkite EDAC valdiklį
- Įrašykite duomenis į konkrečią DDR atminties vietą
- Išjunkite EDAC valdiklį
- Įrašykite 1 bito arba 2 bitų klaidos sukeltus duomenis į tą pačią DDR atminties vietą
- Įjunkite EDAC valdiklį
- Skaitykite duomenis iš tos pačios DDR atminties vietos
- Siųsti 1 bito arba 2 bitų klaidų aptikimo ir 1 bito klaidų taisymo duomenis, jei yra 1 bito klaida, į GUI
Rankinis testas
Šis metodas leidžia rankiniu būdu išbandyti 1 bito klaidų aptikimą ir taisymą bei 2 bitų klaidų aptikimą DDR atminties adresui (0xA0000000–0xDFFFFFFF) inicijuojant. Į pasirinktą DDR atminties adresą rankiniu būdu įvedama 1 bitų / 2 bitų klaida. Pateikti duomenys įrašomi į pasirinktą DDR atminties vietą su įjungtu EDAC. Sugadinti 1 arba 2 bitų klaidų duomenys įrašomi į tą pačią atminties vietą, kai EDAC išjungtas. Informacija apie aptiktą 1 arba 2 bitų klaidą registruojama, kai duomenys nuskaitomi iš tos pačios atminties vietos, kai įjungtas EDAC. Didelio našumo DMA valdiklis
(HPDMA) naudojamas duomenims iš DDR atminties nuskaityti. Dviejų bitų klaidų aptikimo pertraukimo tvarkyklė įdiegta, kad būtų imtasi atitinkamų veiksmų, kai aptinkama 2 bitų klaida.
Toliau pateiktoje iliustracijoje aprašomos EDAC demonstracinės operacijos.
3 pav. • Projektinis srautas
Pastaba: 2 bitų klaidos atveju, kai „Cortex-M3“ procesorius nuskaito duomenis, kodo vykdymas perduodamas sunkiųjų klaidų tvarkytojui, nes gautas pertraukimas vėluoja, kad procesorius reaguotų. Kol jis reaguoja į pertraukimą, jis jau gali būti perdavęs duomenis ir netyčia paleido komandą. Dėl to HRESP nustoja apdoroti neteisingus duomenis. 2 bitų klaidų aptikimas naudoja HPDMA, kad nuskaitytų duomenis iš DDR adreso vietos, o tai nurodo procesoriui, kad nuskaityti duomenys turi 2 bitų klaidą ir sistema turėtų imtis atitinkamų veiksmų, kad atkurtų (ECC pertraukimo tvarkytuvas).
Demonstracinio dizaino nustatymas
Šiame skyriuje aprašoma SmartFusion2 Advanced Development Kit plokštės sąranka, GUI parinktys ir kaip vykdyti demonstracinį dizainą.
Šie veiksmai aprašo, kaip nustatyti demonstracinę versiją:
- Prijunkite vieną USB mini-B laido galą prie J33 jungties, esančios SmartFusion2 Advanced Development Kit plokštėje. Kitą USB kabelio galą prijunkite prie pagrindinio kompiuterio. Šviesos diodas (LED) DS27 turi užsidegti, nurodant, kad UART ryšys buvo užmegztas. Užtikrinkite, kad USB į UART tilto tvarkyklės būtų aptiktos automatiškai (galima patikrinti įrenginių tvarkytuvėje), kaip parodyta toliau pateiktame paveikslėlyje.
4 pav. • USB į UART tilto tvarkyklės
Jei USB į UART tilto tvarkyklės neįdiegtos, atsisiųskite ir įdiekite tvarkykles iš: www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip. - Prijunkite trumpiklius prie SmartFusion2 Advanced Development Kit plokštės, kaip parodyta 4 lentelėje, 11 psl. Maitinimo jungiklis SW7 turi būti išjungtas, kol sujungiate trumpiklius.
5 pav. • SmartFusion2 Advanced Development Kit plokštės sąranka
Grafinė vartotojo sąsaja
Šiame skyriuje aprašoma DDR – EDAC demonstracinė GUI.
6 pav. • DDR – EDAC demonstracinė GUI
GUI palaiko šias funkcijas:
- COM prievado ir perdavimo spartos pasirinkimas
- 1 bitų klaidų taisymo skirtuko pasirinkimas arba 2 bitų klaidų aptikimas
- Adreso laukas, skirtas įrašyti arba skaityti duomenis į nurodytą DDR adresą arba iš jo
- Duomenų laukas, skirtas įrašyti arba nuskaityti duomenis į nurodytą DDR adresą arba iš jo
- Serial Console skyrių, kad išspausdintumėte iš programos gautą būsenos informaciją
- Įjungti EDAC / Išjungti EDAC: įjungia arba išjungia EDAC
- Rašyti: leidžia įrašyti duomenis nurodytu adresu
- Skaityti: leidžia nuskaityti duomenis iš nurodyto adreso
- Kilpos testas ON/OFF: leidžia išbandyti EDAC mechanizmą kilpos metodu
- Inicijuoti: leidžia inicijuoti iš anksto nustatytą atminties vietą (šioje demonstracijoje A0000000-A000CFFF)
Demonstracinio dizaino vykdymas
Šiuose žingsniuose aprašoma, kaip paleisti dizainą: Šie veiksmai aprašo, kaip paleisti dizainą:
- ĮJUNKITE maitinimo jungiklį SW7.
- Užprogramuokite SmarFusion2 įrenginį naudodami programavimą file numatyta projekte files.(\ProgramavimasFile\EDAC_DDR3.stp) naudojant FlashPro projektavimo programinę įrangą, kaip parodyta toliau pateiktame paveikslėlyje.
7 pav. • FlashPro programavimo langas
- Paspauskite SW6 jungiklį, kad iš naujo nustatytumėte plokštę po sėkmingo programavimo.
- Paleiskite EDAC_DDR demonstracinę GUI vykdomąją programą file prieinamas dizaine files (\GUI vykdomasis\ EDAC_DDR.exe). Rodomas GUI langas, kaip parodyta 8 paveiksle, 9 puslapyje.
- Spustelėkite Connect, jis pasirenka COM prievadą ir užmezga ryšį. Prisijungimo parinktis pakeičiama į Atsijungti.
- Pasirinkite skirtuką 1 bitų klaidų taisymas arba 2 bitų klaidų aptikimas.
- Galima atlikti rankinius ir kilpinius testus.
- Spustelėkite Initializuoti, kad inicijuotų DDR atmintį ir atliktumėte rankinio ir ciklo testus. Serial Console rodomas inicijavimo užbaigimo pranešimas, kaip parodyta 8 paveiksle, 9 puslapyje.
8 pav. • Langas inicijavimas baigtas
Atliekamas kilpos testas
Spustelėkite Loop Test ON. Jis veikia kilpos režimu, kur atliekamas nuolatinis klaidų taisymas ir aptikimas. Visi veiksmai, atlikti SmartFusion2 įrenginyje, registruojami GUI skiltyje Serial Console.
2 lentelė • DDR3 atminties adresai, naudojami kilpos teste
- DDR3 atmintis
- 1 bito klaidų taisymas 0xA0008000
- 2 bitų klaidų aptikimas 0xA000C000
Rankinio testo atlikimas
Taikant šį metodą, klaidos įvedamos rankiniu būdu naudojant GUI. Norėdami atlikti 1 bitų klaidų taisymą arba 2 bitų klaidų aptikimą, atlikite šiuos veiksmus.
3 lentelė • DDR3 atminties adresai, naudojami atliekant rankinį testą
Įvesties adreso ir duomenų laukai (naudokite 32 bitų šešioliktaines reikšmes).
- DDR3 atmintis
- 1 bito klaidų taisymas 0xA0000000-0xA0004000
- 2 bitų klaidų aptikimas 0xA0004000-0xA0008000
- Spustelėkite Įgalinti EDAC.
- Spustelėkite Rašyti.
- Spustelėkite Išjungti EDAC.
- Pakeiskite vieną bitą (jeigu taisoma 1 bito klaida) arba du bitus (jei aptinkama 2 bitų klaida) duomenų laukelyje (įveskite klaidą).
- Spustelėkite Rašyti.
- Spustelėkite Įgalinti EDAC.
- Spustelėkite Skaityti.
- Stebėkite klaidų skaičiaus rodymo ir duomenų lauką GUI. Klaidų skaičiaus reikšmė padidėja 1.
1 bito klaidos kilpos taisymo langas parodytas kitame paveikslėlyje.
9 pav. • 1 bito klaidų ciklo aptikimo langas
2 bitų klaidų aptikimo rankinis langas parodytas kitame paveikslėlyje.
10 pav. • 2 bitų klaidų aptikimo vadovo langas
Išvada
Šioje demonstracijoje parodytos „SmartFusion2 SECDED“ galimybės, skirtos MDDR posistemiui.
Priedas: džemperio nustatymai
Šioje lentelėje pateikti visi reikalingi trumpikliai, kuriuos reikia nustatyti SmartFusion2 Advanced Development Kit.
4 lentelė • SmartFusion2 Advanced Development Kit trumpiklio nustatymai
Džemperis : Smeigtukas (Nuo) : Smeigtukas (Iki): Komentarai
- J116, J353, J354, J54 1 2 Tai yra numatytieji Advanced trumpiklio nustatymai
- J123 2 3 plėtros komplekto plokštė. Įsitikinkite, kad šie džemperiai yra atitinkamai nustatyti.
- J124, J121, J32 1 2 JTAG programavimas per FTDI
DG0618 Demonstracinio vadovo 4.0 versija
Dokumentai / Ištekliai
![]() |
„Microsemi DG0618“ klaidų aptikimas ir taisymas „SmartFusion2“ įrenginiuose naudojant DDR atmintį [pdfVartotojo vadovas DG0618 klaidų aptikimas ir taisymas „SmartFusion2“ įrenginiuose naudojant DDR atmintį, DG0618, klaidų aptikimas ir taisymas „SmartFusion2“ įrenginiuose naudojant DDR atmintį, „SmartFusion2“ įrenginiuose naudojant DDR atmintį, DDR atmintį |