Microsemi DG0618 hibaészlelés és -javítás SmartFusion2 eszközökön DDR memória használatával
Microsemi vállalati központ
One Enterprise, Aliso Viejo,
CA 92656 USA
Az USA-n belül: +1 800-713-4113
Az USA-n kívül: +1 949-380-6100
Fax: +1 949-215-4996
Email: sales.support@microsemi.com
www.microsemi.com
© 2017 Microsemi Corporation. Minden jog fenntartva. A Microsemi és a Microsemi logó a Microsemi Corporation védjegyei. Minden egyéb védjegy és szolgáltatási védjegy a megfelelő tulajdonosok tulajdona
A Microsemi nem vállal garanciát, képviseletet vagy garanciát az itt található információkra, illetve termékeinek és szolgáltatásainak bármilyen meghatározott célra való alkalmasságára vonatkozóan, és a Microsemi nem vállal semmilyen felelősséget a termék vagy áramkör alkalmazásából vagy használatából eredően. Az itt értékesített termékek és a Microsemi által értékesített bármely más termék korlátozott tesztelésen esett át, és nem használhatók kritikus fontosságú berendezésekkel vagy alkalmazásokkal együtt. Bármely teljesítményspecifikáció megbízhatónak tekinthető, de nem ellenőrzött, és a Vevőnek el kell végeznie a termékek minden teljesítmény- és egyéb vizsgálatát, egyedül és a végtermékekkel együtt, vagy beleszerelve. A Vevő nem hagyatkozhat a Microsemi által biztosított adatokra és teljesítményspecifikációkra vagy paraméterekre. A Vevő felelőssége bármely termék alkalmasságának független megállapítása, valamint annak tesztelése és ellenőrzése. A Microsemi által az alábbiakban közölt információk „ahogy vannak, hol vannak” és minden hibával együtt, és az ilyen információkkal kapcsolatos teljes kockázat teljes mértékben a Vevőt terheli. A Microsemi sem kifejezetten, sem hallgatólagosan nem biztosít szabadalmi jogokat, licenceket vagy egyéb szellemi tulajdonjogokat sem magára az információra, sem az információ által leírtakra vonatkozóan. Az ebben a dokumentumban közölt információk a Microsemi tulajdonát képezik, és a Microsemi fenntartja a jogot, hogy bármikor, előzetes értesítés nélkül módosítsa a jelen dokumentumban található információkat, vagy bármely terméket és szolgáltatást.
A Microsemiről
A Microsemi Corporation (Nasdaq: MSCC) félvezető- és rendszermegoldások átfogó portfólióját kínálja repülési és védelmi, kommunikációs, adatközponti és ipari piacok számára. A termékek közé tartoznak a nagy teljesítményű és sugárzásálló analóg vegyes jelű integrált áramkörök, FPGA-k, SoC-k és ASIC-k; energiagazdálkodási termékek; időzítő és szinkronizáló eszközök és precíz időmegoldások, amelyek a világ időmércéjét állítják fel; Hangfeldolgozó eszközök; RF megoldások; diszkrét alkatrészek; vállalati tárolási és kommunikációs megoldások, biztonsági technológiák és méretezhető anti-tamper termékek; Ethernet megoldások; Power-over-Ethernet IC-k és midspans; valamint egyedi tervezési képességek és szolgáltatások. A Microsemi központja a kaliforniai Aliso Viejoban található, és világszerte körülbelül 4,800 alkalmazottat foglalkoztat. További információ: www.microsemi.com.
Revíziótörténet
A felülvizsgálati előzmények leírják a dokumentumban végrehajtott változtatásokat. A változtatások átdolgozásonként vannak felsorolva, a legfrissebb kiadványtól kezdve.
- Felülvizsgálat 4.0
Frissítettük a Libero v11.8 szoftverkiadás dokumentumát. - Felülvizsgálat 3.0
Frissítettük a Libero v11.7 szoftverkiadás dokumentumát. - Felülvizsgálat 2.0
Frissítettük a Libero v11.6 szoftverkiadás dokumentumát. - Felülvizsgálat 1.0
A Libero SoC v11.5 szoftverkiadás kezdeti kiadása.
Hibaészlelés és -javítás a DDR memóriát használó SmartFusion2 eszközökön
Bevezetés
Egy esemény felborulásra (SEU) érzékeny környezetben a véletlen elérésű memória (RAM) hajlamos a nehéz ionok okozta átmeneti hibákra.
Ez a dokumentum az SoC FPGA EDAC képességeit írja le, amelyeket a mikrovezérlő alrendszeren (MSS) DDR-en (MDDR) keresztül csatlakoztatott memóriákkal rendelkező alkalmazásokban használnak.
A SmartFusion2 eszközökben megvalósított EDAC vezérlők támogatják az egyszeri hibajavítást és a kettős hibaérzékelést (SECDED). A SmartFusion2 MSS-eszközökön belüli összes memória – továbbfejlesztett statikus véletlen elérésű memória (eSRAM), DDR, alacsony fogyasztású DDR (LPDDR) – SECDED védelem alatt áll. A DDR szinkron dinamikus véletlen hozzáférésű memória (SDRAM) lehet DDR2, DDR3 vagy LPDDR1, az MDDR konfigurációtól és a hardver ECC képességeitől függően.
A SmartFusion2 MDDR alrendszer 4 GB-ig támogatja a memóriasűrűséget. Ebben a bemutatóban bármilyen 1 GB-os memóriahelyet kiválaszthat a DDR-címtartományban (0xA0000000 - 0xDFFFFFFF).
Ha a SECDED engedélyezve van:
- Egy írási művelet kiszámítja és hozzáad 8 bit SECDED kódot (minden 64 bites adathoz)
- Az olvasási művelet beolvassa és ellenőrzi az adatokat a tárolt SECDED kóddal, hogy támogassa az 1 bites hibajavítást és a 2 bites hibaészlelést
Az alábbi ábra a SmartFusion2 EDAC blokkvázlatát mutatja be DDR SDRAM-on.
1. ábra • Legfelső szintű blokkdiagram
A DDR EDAC funkciója a következőket támogatja:
- SECDED mechanizmus
- Megszakításokat biztosít az ARM Cortex-M3 processzor és az FPGA szövet számára 1 bites vagy 2 bites hiba észlelésekor
- A hibaszámláló regiszterekben tárolja az 1 bites és 2 bites hibák számát
- Tárolja az utolsó 1 bites vagy 2 bites hiba által érintett memóriahely címét
- Az 1 bites vagy 2 bites hibaadatokat SECDED regiszterekben tárolja
- hibabusz jeleket biztosít az FPGA szövetnek
Az EDAC-ról további információkat az UG0443: SmartFusion2 és IGLOO2 FPGA biztonsági és megbízhatósági felhasználói útmutató és az UG0446: SmartFusion2 és IGLOO2 FPGA nagysebességű DDR-interfészek felhasználói útmutatójában talál.
Tervezési követelmények
Az alábbi táblázat felsorolja a tervezési követelményeket.
1. táblázat • Tervezési követelmények
- Tervezési követelmények leírása
- Hardverkövetelmények
- SmartFusion2 Advanced Development Kit kártya Rev B vagy újabb
- FlashPro5 programozó vagy újabb
- USB A-mini-B USB-kábel
- Hálózati adapter 12 V
- DDR3 alaplap
- Operációs rendszer Bármely 64 bites vagy 32 bites Windows XP SP2
- Bármilyen 64 bites vagy 32 bites Windows 7
- Szoftverkövetelmények
- Libero® System-on-Chip (SoC) v11.8
- SoftConsole v4.0
- FlashPro programozó szoftver v11.8
- Gazdaszámítógép-illesztőprogramok USB-UART illesztőprogramok
- Framework bemutató Microsoft .NET Framework 4 ügyfél futtatásához
Demo Design
A demo design files letölthetőek a Microsemi következő elérési útjáról webtelek: http://soc.microsemi.com/download/rsc/?f=m2s_dg0618_liberov11p8_df
A demo design filea következőket tartalmazza:
- DDR konfiguráció File
- DDR_EDAC
- Programozás files
- GUI végrehajtható
- Olvass engem file
Az alábbi ábra a terv legfelső szintű felépítését írja le files. További részletekért lásd a readme.txt fájlt file.
2. ábra • Demo Design felső szintű szerkezet
Demo tervezési megvalósítás
Az MDDR alrendszer dedikált EDAC vezérlővel rendelkezik. Az EDAC 1 bites vagy 2 bites hibát észlel, amikor adatokat olvas ki a memóriából. Ha az EDAC 1 bites hibát észlel, az EDAC vezérlő kijavítja a hibabitet. Ha az EDAC az összes 1-bites és 2-bites hibára engedélyezve van, a rendszerregiszterekben lévő megfelelő hibaszámlálók megnövekednek, és a megfelelő megszakítások és hibabusz jelek generálódnak az FPGA-szövet számára.
Ez valós időben történik. Ennek a SECDED funkciónak a bemutatására manuálisan bevezetik a hibát, és megfigyelik az észlelést és a javítást.
Ez a bemutató terv a következő lépések végrehajtását foglalja magában:
- Engedélyezze az EDAC-t
- Adatok írása DDR-be
- Adatok olvasása a DDR-ből
- Az EDAC letiltása
- Sérült 1 vagy 2 bit
- Adatok írása DDR-be
- Engedélyezze az EDAC-t
- Olvassa el az adatokat
- 1 bites hiba esetén az EDAC vezérlő kijavítja a hibát, frissíti a megfelelő állapotregisztereket, és a 2. lépésben végrehajtott olvasási műveletnél megadja a 8. lépésben írt adatokat.
- 2 bites hiba esetén egy megfelelő megszakítás jön létre, és az alkalmazásnak ki kell javítania az adatokat, vagy meg kell tennie a megfelelő műveletet a megszakításkezelőben. Ezt a két módszert mutatja be ez a bemutató.
Ebben a demóban két teszt van megvalósítva: hurokteszt és kézi teszt, és mind az 1-bites, mind a 2 bites hibákra alkalmazhatók.
Hurok teszt
A hurokteszt akkor kerül végrehajtásra, amikor a SmartFusion2 eszközök hurkoteszt parancsot kapnak a grafikus felhasználói felülettől. Kezdetben az összes hibaszámláló és az EDAC-hoz kapcsolódó regiszter RESET állapotba kerül.
A következő lépések végrehajtásra kerülnek minden iterációhoz.
- Engedélyezze az EDAC vezérlőt
- Írja az adatokat az adott DDR memóriahelyre
- Kapcsolja ki az EDAC vezérlőt
- Írja be az 1 bites vagy 2 bites hiba által kiváltott adatokat ugyanarra a DDR memóriahelyre
- Engedélyezze az EDAC vezérlőt
- Olvassa be az adatokat ugyanarról a DDR memóriahelyről
- 1 bites hiba esetén 2 bites vagy 1 bites hibaészlelési és 1 bites hibajavító adatok küldése a grafikus felhasználói felületre
Kézi teszt
Ez a módszer lehetővé teszi az 1 bites hibaészlelés és -javítás, valamint a 2 bites hibaérzékelés kézi tesztelését a DDR memóriacímek (0xA0000000 - 0xDFFFFFFF) inicializálással együtt. Egy 1 bites/2 bites hiba manuálisan jelenik meg a kiválasztott DDR memóriacímen. A megadott adatok a kiválasztott DDR memóriahelyre íródnak, EDAC engedélyezve. A sérült 1 bites vagy 2 bites hibaadatok ezután ugyanarra a memóriahelyre íródnak ki, az EDAC letiltásával. Az észlelt 1 bites vagy 2 bites hibára vonatkozó információ naplózásra kerül, amikor az adatokat ugyanarról a memóriahelyről olvassa be, és az EDAC engedélyezve van. A nagy teljesítményű DMA vezérlő
(HPDMA) az adatok DDR-memóriából való kiolvasására szolgál. A kétbites hibaészlelés megszakításkezelője 2 bites hiba észlelésekor megteszi a megfelelő műveletet.
A következő ábra az EDAC demóműveleteit írja le.
3. ábra • Tervezési folyamat
Jegyzet: 2 bites hiba esetén, amikor a Cortex-M3 processzor beolvassa az adatokat, a kód végrehajtása bemegy a kemény hibakezelőbe, mivel a fogadott megszakítás késik a processzor válaszadása előtt. Mire válaszol a megszakításra, lehet, hogy már átadta az adatokat, és véletlenül parancsot adott ki. Ennek eredményeként a HRESP leállítja a hibás adatok feldolgozását. A 2 bites hibaészlelés a HPDMA segítségével olvassa be az adatokat a DDR-cím helyéről, amely arra utasítja a processzort, hogy az olvasási adatok 2 bites hibája van, és a rendszernek meg kell tennie a megfelelő lépéseket a helyreállítás érdekében (ECC megszakításkezelő).
A bemutatótervezés beállítása
Ez a rész leírja a SmartFusion2 Advanced Development Kit alaplap beállítását, a grafikus felhasználói felület beállításait és a demóterv végrehajtásának módját.
A következő lépések a demó beállítását írják le:
- Csatlakoztassa az USB mini-B kábel egyik végét a SmartFusion33 Advanced Development Kit kártyán található J2 csatlakozóhoz. Csatlakoztassa az USB-kábel másik végét a gazdaszámítógéphez. A DS27 fénykibocsátó diódának (LED) világítania kell, jelezve, hogy az UART kapcsolat létrejött. Győződjön meg arról, hogy az USB-UART híd illesztőprogramjait a rendszer automatikusan észleli (ellenőrizheti az Eszközkezelőben), ahogy az a következő ábrán látható.
4. ábra • USB-UART Bridge illesztőprogramok
Ha az USB-UART híd illesztőprogramok nincsenek telepítve, töltse le és telepítse az illesztőprogramokat a következő helyről: www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip. - Csatlakoztassa a SmartFusion2 Advanced Development Kit kártyán lévő jumpereket a 4. oldal 11. táblázata szerint. Az SW7 tápkapcsolót KI kell kapcsolni, miközben a jumpereket csatlakoztatja.
5. ábra • SmartFusion2 Advanced Development Kit alaplap beállítása
Grafikus felhasználói felület
Ez a rész a DDR – EDAC Demo GUI-t írja le.
6. ábra • DDR – EDAC Demo GUI
A GUI a következő szolgáltatásokat támogatja:
- A COM port és az adatátviteli sebesség kiválasztása
- Az 1 bites hibajavító fül vagy a 2 bites hibaészlelés kiválasztása
- Cím mező adatok írásához vagy olvasásához a megadott DDR-címre vagy onnan
- Adatmező adatok írásához vagy olvasásához a megadott DDR-címre vagy onnan
- Soros konzol szakaszt az alkalmazástól kapott állapotinformációk kinyomtatásához
- EDAC engedélyezése/EDAC letiltása: Engedélyezi vagy letiltja az EDAC-t
- Írás: Lehetővé teszi az adatok írását a megadott címre
- Olvasás: Lehetővé teszi az adatok beolvasását a megadott címről
- Hurokteszt BE/KI: Lehetővé teszi az EDAC mechanizmus tesztelését hurokmódszerben
- Inicializálás: Lehetővé teszi az előre meghatározott memóriahely inicializálását (ebben a demóban A0000000-A000CFFF)
A Demo Design futtatása
A következő lépések a terv futtatását írják le: A következő lépések a terv futtatását írják le:
- Kapcsolja BE a tápkapcsolót, SW7.
- Programozza be a SmarFusion2 eszközt a programozással file a tervezésben biztosított files.(\ProgramozásFile\EDAC_DDR3.stp) a FlashPro tervezőszoftver használatával, ahogy az a következő ábrán látható.
7. ábra • FlashPro programozási ablak
- Nyomja meg az SW6 kapcsolót a kártya alaphelyzetbe állításához a sikeres programozás után.
- Indítsa el az EDAC_DDR Demo GUI végrehajtható fájlját file kivitelben elérhető files (\GUI végrehajtható\ EDAC_DDR.exe). Megjelenik a GUI ablak, ahogy az a 8. ábrán látható, 9. oldal.
- Kattintson a Csatlakozás gombra, kiválasztja a COM portot, és létrehozza a kapcsolatot. A csatlakozási lehetőség a Leválasztás lehetőségre változik.
- Válassza az 1 bites hibajavítás vagy a 2 bites hibaészlelés lapot.
- Kézi és huroktesztek végezhetők.
- Kattintson az Inicializálás gombra a DDR-memória inicializálásához a kézi és huroktesztek végrehajtásához. Az inicializálás befejezéséről szóló üzenet jelenik meg a soros konzolon, amint azt a 8. ábra, 9. oldal mutatja.
8. ábra • Inicializálás befejeződött ablak
Hurokteszt végrehajtása
Kattintson a Loop Test ON elemre. Loop üzemmódban fut, ahol folyamatos hibajavítás és hibafelismerés történik. A SmartFusion2 eszközön végrehajtott összes művelet naplózásra kerül a grafikus felhasználói felület Soros konzol szakaszában.
2. táblázat • A huroktesztben használt DDR3 memóriacímek
- Memória DDR3
- 1 bites hibajavítás 0xA0008000
- 2 bites hibaészlelés 0xA000C000
Kézi teszt végrehajtása
Ebben a módszerben a hibákat manuálisan vezetik be a grafikus felhasználói felület segítségével. Az 1 bites hibajavítás vagy a 2 bites hibaészlelés végrehajtásához kövesse az alábbi lépéseket.
3. táblázat • A kézi tesztben használt DDR3 memóriacímek
Beviteli cím és adatmezők (használjon 32 bites hexadecimális értékeket).
- Memória DDR3
- 1 bites hibajavítás 0xA0000000-0xA0004000
- 2 bites hibaészlelés 0xA0004000-0xA0008000
- Kattintson az EDAC engedélyezése lehetőségre.
- Kattintson az Írás gombra.
- Kattintson az EDAC letiltása elemre.
- Váltson egy bitet (1 bites hibajavítás esetén) vagy két bitet (2 bites hiba észlelése esetén) az Adat mezőben (hiba bevezetése).
- Kattintson az Írás gombra.
- Kattintson az EDAC engedélyezése lehetőségre.
- Kattintson az Olvasás gombra.
- Figyelje meg az Error Count Display és Data mezőt a grafikus felhasználói felületen. A hibaszám értéke 1-gyel nő.
Az 1 bites hibahurok-javító ablak a következő ábrán látható.
9. ábra • 1 bites hibahurok észlelési ablak
A 2 bites hibaészlelési kézi ablak a következő ábrán látható.
10. ábra • 2 bites hibaészlelési kézi ablak
Következtetés
Ez a bemutató bemutatja a SmartFusion2 SECDED képességeit az MDDR alrendszerhez.
Függelék: Jumper beállítások
A következő táblázat a SmartFusion2 Advanced Development Kit összes szükséges jumpert mutatja be.
4. táblázat • SmartFusion2 Advanced Development Kit Jumper beállítások
Jumper : Pin (From) : Pin (Cím) : Megjegyzések
- J116, J353, J354, J54 1 2 Ezek az Advanced alapértelmezett jumper beállításai
- J123 2 3 Fejlesztőkészlet kártya. Győződjön meg arról, hogy ezek a jumperek megfelelően vannak beállítva.
- J124, J121, J32 1 2 JTAG programozás FTDI-n keresztül
DG0618 Demo Guide Revision 4.0
Dokumentumok / Források
![]() |
Microsemi DG0618 hibaészlelés és -javítás SmartFusion2 eszközökön DDR memória használatával [pdf] Felhasználói útmutató DG0618 Hibaészlelés és -javítás SmartFusion2 eszközökön DDR memóriát használó, DG0618, Hibaészlelés és hibajavítás SmartFusion2 eszközökön DDR memóriát használó SmartFusion2 eszközökön DDR memóriát használó SmartFusionXNUMX eszközökön, DDR memória |