Microsemi DG0618 Detekcia a oprava chýb na zariadeniach SmartFusion2 využívajúcich pamäť DDR
Sídlo spoločnosti Microsemi
Jeden podnik, Aliso Viejo,
CA 92656 USA
V rámci USA: +1 800-713-4113
Mimo USA: +1 949-380-6100
Fax: +1 949-215-4996
Email: sales.support@microsemi.com
www.microsemi.com
© 2017 Microsemi Corporation. Všetky práva vyhradené. Microsemi a logo Microsemi sú ochranné známky spoločnosti Microsemi Corporation. Všetky ostatné ochranné známky a servisné známky sú majetkom ich príslušných vlastníkov
Microsemi neposkytuje žiadnu záruku, zastúpenie ani záruku týkajúcu sa informácií uvedených v tomto dokumente alebo vhodnosti svojich produktov a služieb na akýkoľvek konkrétny účel, ani nepreberá žiadnu zodpovednosť vyplývajúcu z aplikácie alebo používania akéhokoľvek produktu alebo okruhu. Produkty predávané nižšie a akékoľvek iné produkty predávané spoločnosťou Microsemi boli predmetom obmedzeného testovania a nemali by sa používať v spojení s kritickými zariadeniami alebo aplikáciami. Akékoľvek výkonnostné špecifikácie sa považujú za spoľahlivé, ale nie sú overené a Kupujúci musí vykonať a dokončiť všetky výkonnostné a iné testovanie produktov, a to samostatne a spolu s akýmikoľvek koncovými produktmi alebo v nich nainštalovaných. Kupujúci sa nebude spoliehať na žiadne údaje a výkonové špecifikácie alebo parametre poskytnuté Microsemi. Je zodpovednosťou kupujúceho, aby nezávisle určil vhodnosť akýchkoľvek produktov a otestoval ich a overil. Informácie poskytované spoločnosťou Microsemi nižšie sú poskytované „tak ako sú, kde sú“ a so všetkými chybami a celé riziko spojené s týmito informáciami znáša výlučne Kupujúci. Microsemi neudeľuje, explicitne ani implicitne, žiadnej strane žiadne patentové práva, licencie ani iné práva duševného vlastníctva, či už ide o takéto informácie samotné alebo čokoľvek opísané v takýchto informáciách. Informácie uvedené v tomto dokumente sú majetkom spoločnosti Microsemi a spoločnosť Microsemi si vyhradzuje právo kedykoľvek bez upozornenia vykonať akékoľvek zmeny informácií v tomto dokumente alebo akýchkoľvek produktov a služieb.
O Microsemi
Microsemi Corporation (Nasdaq: MSCC) ponúka komplexné portfólio polovodičových a systémových riešení pre letectvo a obranu, komunikáciu, dátové centrá a priemyselné trhy. Produkty zahŕňajú vysokovýkonné a radiačne tvrdené analógové integrované obvody so zmiešaným signálom, FPGA, SoC a ASIC; produkty na správu napájania; časovacie a synchronizačné zariadenia a presné časové riešenia, ktoré stanovujú svetový štandard pre čas; Zariadenia na spracovanie hlasu; RF riešenia; diskrétne komponenty; podnikové úložné a komunikačné riešenia, bezpečnostné technológie a škálovateľný anti-tamper produkty; Ethernetové riešenia; Integrované obvody Power-over-Ethernet a stredné rozpätia; ako aj možnosti a služby vlastného dizajnu. Microsemi má sídlo v Aliso Viejo v Kalifornii a celosvetovo má približne 4,800 XNUMX zamestnancov. Viac sa dozviete na www.microsemi.com.
História revízií
História revízií popisuje zmeny, ktoré boli implementované v dokumente. Zmeny sú uvedené podľa revízií, počnúc najaktuálnejšou publikáciou.
- Revízia 4.0
Aktualizovaný dokument pre vydanie softvéru Libero v11.8. - Revízia 3.0
Aktualizovaný dokument pre vydanie softvéru Libero v11.7. - Revízia 2.0
Aktualizovaný dokument pre vydanie softvéru Libero v11.6. - Revízia 1.0
Prvé vydanie pre vydanie softvéru Libero SoC v11.5.
Detekcia a oprava chýb na zariadeniach SmartFusion2 pomocou pamäte DDR
Úvod
V prostredí citlivom na jednu udalosť (SEU) je pamäť s náhodným prístupom (RAM) náchylná na prechodné chyby spôsobené ťažkými iónmi.
Tento dokument popisuje EDAC schopnosti SoC FPGA, ktoré sa používajú v aplikáciách s pamäťami pripojenými cez mikrokontrolérový subsystém (MSS) DDR (MDDR).
Ovládače EDAC implementované v zariadeniach SmartFusion2 podporujú korekciu jednej chyby a detekciu dvojitej chyby (SECDED). Všetky pamäte – vylepšená statická pamäť s náhodným prístupom (eSRAM), DDR, nízkoenergetická DDR (LPDDR) – v zariadeniach SmartFusion2 MSS sú chránené systémom SECDED. Synchrónna dynamická pamäť s náhodným prístupom (SDRAM) DDR môže byť DDR2, DDR3 alebo LPDDR1 v závislosti od konfigurácie MDDR a možností hardvérového ECC.
Subsystém SmartFusion2 MDDR podporuje hustotu pamäte až 4 GB. V tejto ukážke si môžete vybrať ľubovoľné pamäťové miesto s veľkosťou 1 GB v adresnom priestore DDR (0xA0000000 až 0xDFFFFFFF).
Keď je zapnutá funkcia SECDED:
- Operácia zápisu vypočíta a pridá 8 bitov kódu SECDED (na každých 64 bitov údajov)
- Operácia čítania načítava a skontroluje údaje oproti uloženému kódu SECDED na podporu 1-bitovej korekcie chýb a 2-bitovej detekcie chýb
Nasledujúca ilustrácia popisuje blokovú schému SmartFusion2 EDAC na DDR SDRAM.
Obrázok 1 • Blokový diagram najvyššej úrovne
Funkcia EDAC DDR podporuje nasledovné:
- mechanizmus SECDED
- Poskytuje prerušenia procesoru ARM Cortex-M3 a FPGA pri detekcii 1-bitovej chyby alebo 2-bitovej chyby
- Ukladá počet 1-bitových a 2-bitových chýb v registroch počítadla chýb
- Ukladá adresu posledného 1-bitového alebo 2-bitového miesta v pamäti ovplyvneného chybou
- Ukladá 1-bitové alebo 2-bitové chybové dáta v registroch SECDED
- poskytuje signály chybovej zbernice do štruktúry FPGA
Ďalšie informácie o EDAC nájdete v UG0443: Používateľská príručka pre bezpečnosť a spoľahlivosť FPGA SmartFusion2 a IGLOO2 a UG0446: Používateľská príručka k vysokorýchlostným rozhraniam DDR SmartFusion2 a IGLOO2 FPGA.
Požiadavky na dizajn
V nasledujúcej tabuľke sú uvedené požiadavky na dizajn.
Tabuľka 1 • Požiadavky na dizajn
- Popis požiadaviek na dizajn
- Hardvérové požiadavky
- Doska SmartFusion2 Advanced Development Kit Rev B alebo novšia
- Programátor FlashPro5 alebo novší
- USB kábel USB A na mini-B
- Napájací adaptér 12 V
- Dcérska doska DDR3
- Operačný systém Akýkoľvek 64-bitový alebo 32-bitový Windows XP SP2
- Akýkoľvek 64-bitový alebo 32-bitový systém Windows 7
- Softvérové požiadavky
- Libero® System-on-Chip (SoC) v11.8
- SoftConsole v4.0
- Programovací softvér FlashPro v11.8
- Ovládače hostiteľského počítača Ovládače USB na UART
- Framework na spustenie demonštračného klienta Microsoft .NET Framework 4
Demo dizajn
Demo dizajn files sú k dispozícii na stiahnutie z nasledujúcej cesty v Microsemi webmiesto: http://soc.microsemi.com/download/rsc/?f=m2s_dg0618_liberov11p8_df
Demo dizajn files zahŕňajú:
- Konfigurácia DDR File
- DDR_EDAC
- Programovanie files
- Spustiteľný GUI
- Readme file
Nasledujúci obrázok popisuje štruktúru najvyššej úrovne návrhu files. Ďalšie podrobnosti nájdete v súbore readme.txt file.
Obrázok 2 • Štruktúra ukážkového dizajnu najvyššej úrovne
Implementácia demo dizajnu
Subsystém MDDR má vyhradený ovládač EDAC. EDAC detekuje 1-bitovú alebo 2-bitovú chybu pri čítaní údajov z pamäte. Ak EDAC zistí 1-bitovú chybu, ovládač EDAC opraví chybový bit. Ak je EDAC povolený pre všetky 1-bitové a 2-bitové chyby, zodpovedajúce počítadlá chýb v systémových registroch sa inkrementujú a generujú sa zodpovedajúce prerušenia a signály chybovej zbernice do štruktúry FPGA.
Toto sa deje v reálnom čase. Na demonštráciu tejto funkcie SECDED sa chyba zavedie manuálne a pozoruje sa detekcia a oprava.
Tento demo dizajn zahŕňa implementáciu nasledujúcich krokov:
- Povoliť EDAC
- Zápis údajov do DDR
- Čítanie údajov z DDR
- Zakázať EDAC
- Poškodený 1 alebo 2 bity
- Zápis údajov do DDR
- Povoliť EDAC
- Prečítajte si údaje
- V prípade 1-bitovej chyby ovládač EDAC chybu opraví, aktualizuje príslušné stavové registre a pri čítaní vykonanom v kroku 2 poskytne údaje zapísané v kroku 8.
- V prípade 2-bitovej chyby sa vygeneruje zodpovedajúce prerušenie a aplikácia musí opraviť dáta alebo vykonať príslušnú akciu v obsluhe prerušenia. Tieto dve metódy sú demonštrované v tejto ukážke.
V tejto ukážke sú implementované dva testy: test slučky a manuálny test a sú použiteľné pre 1-bitové aj 2-bitové chyby.
Slučkový test
Test slučky sa vykoná, keď zariadenia SmartFusion2 dostanú príkaz na test slučky z GUI. Na začiatku sú všetky počítadlá chýb a registre súvisiace s EDAC uvedené do stavu RESET.
Nasledujúce kroky sa vykonajú pre každú iteráciu.
- Zapnite ovládač EDAC
- Zapíšte údaje na konkrétne miesto v pamäti DDR
- Vypnite ovládač EDAC
- Zapíšte 1-bitové alebo 2-bitové údaje spôsobené chybou na rovnaké miesto v pamäti DDR
- Zapnite ovládač EDAC
- Čítajte údaje z rovnakého miesta v pamäti DDR
- Pošlite 1-bitovú alebo 2-bitovú detekciu chyby a 1-bitovú opravu chýb v prípade 1-bitovej chyby do GUI
Manuálny test
Táto metóda umožňuje manuálne testovanie 1-bitovej detekcie a opravy chýb a 2-bitovej detekcie chýb pre adresu pamäte DDR (0xA0000000 až 0xDFFFFFFF) s inicializáciou. 1-bitová/2-bitová chyba sa zavedie manuálne do vybranej adresy pamäte DDR. Dané dáta sa zapisujú do zvoleného pamäťového miesta DDR so zapnutým EDAC. Poškodené 1-bitové alebo 2-bitové chybové dáta sa potom zapíšu do rovnakého pamäťového miesta s vypnutým EDAC. Informácie o zistenej 1-bitovej alebo 2-bitovej chybe sa zaprotokolujú pri čítaní údajov z rovnakého pamäťového miesta so zapnutým EDAC. Vysoko výkonný ovládač DMA
(HPDMA) sa používa na čítanie údajov z pamäte DDR. Dvojbitová obsluha prerušenia na detekciu chýb je implementovaná na vykonanie príslušnej akcie, keď sa zistí 2-bitová chyba.
Nasledujúci obrázok popisuje demo operácie EDAC.
Obrázok 3 • Návrhový tok
Poznámka: V prípade 2-bitovej chyby, keď procesor Cortex-M3 načíta údaje, spustenie kódu prejde do obslužného programu tvrdej poruchy, pretože prijaté prerušenie je oneskorené a procesor reaguje. V čase, keď zareaguje na prerušenie, môže už prejsť dátami a omylom spustiť príkaz. V dôsledku toho HRESP prestane spracovávať nesprávne údaje. 2-bitová detekcia chýb využíva HPDMA na čítanie údajov z umiestnenia adresy DDR, čo dáva procesoru pokyn, že pri čítaní údajov došlo k 2-bitovej chybe a systém by mal podniknúť príslušné kroky na obnovenie (obslužný nástroj prerušenia ECC).
Nastavenie ukážkového dizajnu
Táto časť popisuje nastavenie dosky SmartFusion2 Advanced Development Kit, možnosti grafického rozhrania a spôsob vykonania návrhu ukážky.
Nasledujúce kroky popisujú, ako nastaviť demo:
- Pripojte jeden koniec USB mini-B kábla ku konektoru J33 na doske SmartFusion2 Advanced Development Kit. Pripojte druhý koniec kábla USB k hostiteľskému počítaču. Svetelná dióda (LED) DS27 sa musí rozsvietiť, čo znamená, že spojenie UART bolo vytvorené. Uistite sa, že ovládače mostíka USB na UART sú automaticky detekované (možno overiť v Správcovi zariadení), ako je znázornené na nasledujúcom obrázku.
Obrázok 4 • Ovládače USB to UART Bridge
Ak nie sú nainštalované ovládače USB to UART bridge, stiahnite a nainštalujte ovládače z: www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip. - Pripojte prepojky na doske súpravy SmartFusion2 Advanced Development Kit, ako je uvedené v Tabuľke 4, strana 11. Počas pripájania prepojok musí byť vypínač napájania SW7 vypnutý.
Obrázok 5 • Nastavenie dosky súpravy SmartFusion2 Advanced Development Kit
Grafické používateľské rozhranie
Táto časť popisuje DDR – EDAC Demo GUI.
Obrázok 6 • DDR – EDAC Demo GUI
GUI podporuje nasledujúce funkcie:
- Výber COM portu a prenosovej rýchlosti
- Výber karty 1-bitovej korekcie chýb alebo 2-bitovej detekcie chýb
- Pole adresy na zapisovanie alebo čítanie údajov na alebo z určenej adresy DDR
- Dátové pole na zapisovanie alebo čítanie údajov na alebo z určenej adresy DDR
- Sekcia Sériová konzola na vytlačenie informácií o stave prijatých z aplikácie
- Enable EDAC/Disable EDAC: Povolí alebo zakáže EDAC
- Zápis: Umožňuje zapisovanie údajov na zadanú adresu
- Čítať: Umožňuje čítanie údajov zo zadanej adresy
- Test slučky ON/OFF: Umožňuje testovanie mechanizmu EDAC metódou slučky
- Inicializovať: Umožňuje inicializovať preddefinované pamäťové miesto (v tejto ukážke A0000000-A000CFFF)
Spustenie ukážkového dizajnu
Nasledujúce kroky popisujú, ako spustiť návrh: Nasledujúce kroky popisujú, ako spustiť návrh:
- Zapnite vypínač napájania SW7.
- Naprogramujte zariadenie SmarFusion2 pomocou programovania file uvedené v dizajne files.(\ProgramovanieFile\EDAC_DDR3.stp) pomocou návrhového softvéru FlashPro, ako je znázornené na nasledujúcom obrázku.
Obrázok 7 • Okno programovania FlashPro
- Po úspešnom naprogramovaní stlačte spínač SW6, aby ste dosku resetovali.
- Spustite spustiteľný súbor EDAC_DDR Demo GUI file dostupné v dizajne files (\GUI Executable\ EDAC_DDR.exe). Zobrazí sa okno GUI, ako je znázornené na obrázku 8, strana 9.
- Kliknite na Pripojiť, vyberie sa COM port a vytvorí sa spojenie. Možnosť Pripojiť sa zmení na Odpojiť.
- Vyberte kartu 1-bit Error Correction alebo 2-bit Error Detection.
- Je možné vykonať manuálne a slučkové testy.
- Kliknite na Initialize (Inicializovať), aby ste inicializovali pamäť DDR, aby ste mohli vykonať testy Manual a Loop, na sériovej konzole sa zobrazí správa o dokončení inicializácie, ako je znázornené na obrázku 8, strana 9.
Obrázok 8 • Okno Inicializácia dokončená
Vykonávanie testu slučky
Kliknite na tlačidlo Test slučky ZAPNUTÉ. Beží v režime slučky, kde sa vykonáva nepretržitá oprava a detekcia chýb. Všetky akcie vykonané v zariadení SmartFusion2 sú zaznamenané v sekcii Sériová konzola v GUI.
Tabuľka 2 • Adresy pamäte DDR3 používané v teste slučky
- Pamäť DDR3
- 1-bitová oprava chýb 0xA0008000
- 2-bitová detekcia chýb 0xA000C000
Vykonávanie manuálneho testu
Pri tejto metóde sa chyby zavádzajú manuálne pomocou GUI. Na vykonanie 1-bitovej opravy chýb alebo 2-bitovej detekcie chýb použite nasledujúce kroky.
Tabuľka 3 • Adresy pamäte DDR3 použité v manuálnom teste
Zadajte polia Adresa a Údaje (použite 32-bitové hexadecimálne hodnoty).
- Pamäť DDR3
- 1-bitová oprava chýb 0xA0000000-0xA0004000
- 2-bitová detekcia chýb 0xA0004000-0xA0008000
- Kliknite na položku Povoliť EDAC.
- Kliknite na položku Napísať.
- Kliknite na položku Vypnúť EDAC.
- Zmeňte jeden bit (v prípade 1-bitovej korekcie chyby) alebo dva bity (v prípade 2-bitovej detekcie chyby) v dátovom poli (zavedenie chyby).
- Kliknite na položku Napísať.
- Kliknite na položku Povoliť EDAC.
- Kliknite na položku Čítať.
- Sledujte zobrazenie počtu chýb a údajové pole v GUI. Hodnota počtu chýb sa zvýši o 1.
Okno korekcie 1-bitovej slučky chýb je znázornené na nasledujúcom obrázku.
Obrázok 9 • Okno detekcie 1-bitovej slučky chýb
2-bitové okno manuálnej detekcie chýb je zobrazené na nasledujúcom obrázku.
Obrázok 10 • 2-bitové okno Manuálna detekcia chýb
Záver
Toto demo ukazuje schopnosti SmartFusion2 SECDED pre subsystém MDDR.
Príloha: Nastavenia prepojky
Nasledujúca tabuľka zobrazuje všetky potrebné prepojky, ktoré je potrebné nastaviť na súprave SmartFusion2 Advanced Development Kit.
Tabuľka 4 • Nastavenia prepojky SmartFusion2 Advanced Development Kit
Jumper : Pin (Od) : Pin (To) : Komentáre
- J116, J353, J354, J54 1 2 Toto sú predvolené nastavenia prepojok rozšírených
- J123 2 3 Doska vývojovej súpravy. Uistite sa, že tieto prepojky sú správne nastavené.
- J124, J121, J32 1 2 JTAG programovanie cez FTDI
DG0618 Demo Guide Revízia 4.0
Dokumenty / zdroje
![]() |
Microsemi DG0618 Detekcia a oprava chýb na zariadeniach SmartFusion2 využívajúcich pamäť DDR [pdf] Používateľská príručka DG0618 Detekcia a oprava chýb na zariadeniach SmartFusion2 využívajúcich pamäť DDR, DG0618, Detekcia a oprava chýb na zariadeniach SmartFusion2 využívajúcich pamäť DDR, zariadenia SmartFusion2 využívajúce pamäť DDR, pamäť DDR |