Zbulimi dhe korrigjimi i gabimit Microsemi DG0618 në pajisjet SmartFusion2 që përdorin memorien DDR
Selia e Korporatës Microsemi
One Enterprise, Aliso Viejo,
CA 92656 SHBA
Brenda SHBA: +1 800-713-4113
Jashtë SHBA: +1 949-380-6100
Faks: +1 949-215-4996
Email: sales.support@microsemi.com
www.microsemi.com
© 2017 Microsemi Corporation. Të gjitha të drejtat e rezervuara. Microsemi dhe logoja Microsemi janë marka tregtare të Microsemi Corporation. Të gjitha markat e tjera tregtare dhe markat e shërbimit janë pronë e pronarëve të tyre përkatës
Microsemi nuk jep asnjë garanci, përfaqësim ose garanci në lidhje me informacionin e përfshirë këtu ose përshtatshmërinë e produkteve dhe shërbimeve të saj për ndonjë qëllim të veçantë, dhe as Microsemi nuk merr përsipër ndonjë përgjegjësi që lind nga aplikimi ose përdorimi i ndonjë produkti ose qarku. Produktet e shitura më poshtë dhe çdo produkt tjetër i shitur nga Microsemi i janë nënshtruar testimit të kufizuar dhe nuk duhet të përdoren në lidhje me pajisjet ose aplikacionet kritike për misionin. Çdo specifikim i performancës besohet të jetë i besueshëm, por nuk verifikohet, dhe Blerësi duhet të kryejë dhe të kryejë të gjitha testimet e performancës dhe të tjera të produkteve, vetëm dhe së bashku me, ose të instaluar në, çdo produkt përfundimtar. Blerësi nuk do të mbështetet në asnjë të dhënë dhe specifikim të performancës ose parametër të ofruar nga Microsemi. Është përgjegjësi e blerësit të përcaktojë në mënyrë të pavarur përshtatshmërinë e çdo produkti dhe të testojë dhe verifikojë të njëjtën gjë. Informacioni i dhënë nga Microsemi më poshtë jepet "siç është, ku është" dhe me të gjitha gabimet, dhe i gjithë rreziku që lidhet me një informacion të tillë është tërësisht tek Blerësi. Microsemi nuk i jep, në mënyrë eksplicite ose të nënkuptuar, asnjë pale asnjë të drejtë patente, licencë ose ndonjë të drejtë tjetër të IP, qoftë në lidhje me vetë informacionin e tillë apo çdo gjë të përshkruar nga ky informacion. Informacioni i dhënë në këtë dokument është në pronësi të Microsemi dhe Microsemi rezervon të drejtën të bëjë çdo ndryshim në informacionin në këtë dokument ose në çdo produkt dhe shërbim në çdo kohë pa paralajmërim.
Rreth Microsemi
Microsemi Corporation (Nasdaq: MSCC) ofron një portofol gjithëpërfshirës të zgjidhjeve gjysmëpërçuese dhe sistemore për hapësirën ajrore dhe mbrojtjen, komunikimet, qendrat e të dhënave dhe tregjet industriale. Produktet përfshijnë qarqe të integruara analoge me sinjal të përzier me performancë të lartë dhe të ngurtësuar nga rrezatimi, FPGA, SoC dhe ASIC; produkte të menaxhimit të energjisë; pajisjet e kohës dhe sinkronizimit dhe zgjidhjet e sakta kohore, duke vendosur standardet botërore për kohën; pajisje për përpunimin e zërit; Zgjidhje RF; komponente diskrete; zgjidhje për ruajtjen dhe komunikimin e ndërmarrjeve, teknologjitë e sigurisë dhe anti-t të shkallëzuaramper produkte; zgjidhje Ethernet; IC-të dhe hapësirat e mesit me fuqi mbi Ethernet; si dhe aftësitë dhe shërbimet e dizajnit me porosi. Microsemi ka selinë në Aliso Viejo, Kaliforni dhe ka rreth 4,800 punonjës në mbarë botën. Mësoni më shumë në www.microsemi.com.
Historia e rishikimit
Historia e rishikimit përshkruan ndryshimet që janë zbatuar në dokument. Ndryshimet renditen me rishikim, duke filluar nga publikimi më aktual.
- Rishikimi 4.0
U përditësua dokumenti për lëshimin e softuerit Libero v11.8. - Rishikimi 3.0
U përditësua dokumenti për lëshimin e softuerit Libero v11.7. - Rishikimi 2.0
U përditësua dokumenti për lëshimin e softuerit Libero v11.6. - Rishikimi 1.0
Lëshimi fillestar për lëshimin e softuerit Libero SoC v11.5.
Zbulimi dhe korrigjimi i gabimeve në pajisjet SmartFusion2 që përdorin memorien DDR
Hyrje
Në një mjedis të ndjeshëm ndaj një ngjarjeje të vetme (SEU), memoria me akses të rastësishëm (RAM) është e prirur ndaj gabimeve kalimtare të shkaktuara nga jonet e rënda.
Ky dokument përshkruan aftësitë EDAC të SoC FPGA, të cilat përdoren në aplikacione me memorie të lidhura përmes nënsistemit të mikrokontrolluesit (MSS) DDR (MDDR).
Kontrollorët EDAC të implementuar në pajisjet SmartFusion2 mbështesin korrigjimin e një gabimi të vetëm dhe zbulimin e dyfishtë të gabimeve (SECDED). Të gjitha kujtimet—memoria e përmirësuar statike me akses të rastësishëm (eSRAM), DDR, DDR me fuqi të ulët (LPDDR)—brenda pajisjeve SmartFusion2 MSS mbrohen nga SECDED. Memoria sinkrone dinamike e aksesit të rastësishëm DDR (SDRAM) mund të jetë DDR2, DDR3 ose LPDDR1, në varësi të konfigurimit MDDR dhe aftësive ECC të harduerit.
Nënsistemi SmartFusion2 MDDR mbështet dendësinë e memories deri në 4 GB. Në këtë demonstrim, mund të zgjidhni çdo vendndodhje memorie prej 1 GB në hapësirën e adresave DDR (0xA0000000 deri në 0xDFFFFFFF).
Kur aktivizohet SECDED:
- Një operacion shkrimi llogarit dhe shton 8 bit kod SECDED (në çdo 64 bit të dhëna)
- Një operacion leximi lexon dhe kontrollon të dhënat kundrejt kodit të ruajtur SECDED për të mbështetur korrigjimin e gabimit 1-bit dhe zbulimin e gabimit 2-bit
Ilustrimi i mëposhtëm përshkruan bllok diagramin e SmartFusion2 EDAC në DDR SDRAM.
Figura 1 • Diagrami i bllokut të nivelit të lartë
Tipari EDAC i DDR mbështet sa vijon:
- Mekanizmi SECDED
- Ofron ndërprerje për procesorin ARM Cortex-M3 dhe strukturën FPGA me zbulimin e një gabimi 1-bit ose gabimit 2-bit
- Ruan numrin e gabimeve 1-bit dhe 2-bit në regjistrat e numëruesit të gabimeve
- Ruan adresën e vendndodhjes së kujtesës të prekur nga gabimi 1-bit ose 2-bit i fundit
- Ruan të dhënat e gabimit 1-bit ose 2-bit në regjistrat SECDED
- siguron sinjale të autobusit të gabimeve në strukturën FPGA
Për më shumë informacion rreth EDAC, shihni UG0443: UG2: SmartFusion2 dhe IGLOO0446 FPGA Udhëzuesi i përdorimit të sigurisë dhe besueshmërisë dhe UG2: SmartFusion2 dhe IGLOOXNUMX FPGA me shpejtësi të lartë të ndërfaqeve DDR.
Kërkesat e projektimit
Tabela e mëposhtme liston kërkesat e projektimit.
Tabela 1 • Kërkesat e projektimit
- Përshkrimi i Kërkesave të Dizajnit
- Kërkesat e harduerit
- Tabela SmartFusion2 Advanced Development Kit Rev B ose më vonë
- Programues FlashPro5 ose më vonë
- Kabllo USB A në mini-B USB
- Përshtatës i rrymës 12 V
- DDR3 Bordi i vajzës
- Sistemi operativ Çdo Windows XP SP64 32-bit ose 2-bit
- Çdo Windows 64 32-bit ose 7-bit
- Kërkesat e softuerit
- Libero® System-on-Chip (SoC) v11.8
- SoftConsole v4.0
- Softueri programues FlashPro v11.8
- Drejtuesit e kompjuterit pritës Drejtues USB në UART
- Framework për të ekzekutuar demonstrimin e klientit të Microsoft .NET Framework 4
Demo Design
Dizajni demo files janë në dispozicion për shkarkim nga shtegu i mëposhtëm në Microsemi webfaqe: http://soc.microsemi.com/download/rsc/?f=m2s_dg0618_liberov11p8_df
Dizajni demo files përfshijnë:
- Konfigurimi DDR File
- DDR_EDAC
- Programimi files
- GUI i ekzekutueshëm
- Më lexoni file
Ilustrimi i mëposhtëm përshkruan strukturën e nivelit të lartë të dizajnit files. Për detaje të mëtejshme, shihni readme.txt file.
Figura 2 • Struktura e Nivelit të Lartë të Projektimit Demo
Implementimi i Projektimit Demo
Nënsistemi MDDR ka një kontrollues të dedikuar EDAC. EDAC zbulon një gabim 1-bit ose gabim 2-bit kur të dhënat lexohen nga memoria. Nëse EDAC zbulon gabimin 1-bit, kontrolluesi EDAC korrigjon bitin e gabimit. Nëse EDAC është i aktivizuar për të gjitha gabimet 1-bit dhe 2-bit, numëruesit përkatës të gabimeve në regjistrat e sistemit rriten dhe gjenerohen ndërprerjet përkatëse dhe sinjalet e autobusit të gabimeve në strukturën FPGA.
Kjo ndodh në kohë reale. Për të demonstruar këtë veçori SECDED, paraqitet një gabim me dorë dhe vërehet zbulimi dhe korrigjimi.
Ky dizajn demo përfshin zbatimin e hapave të mëposhtëm:
- Aktivizo EDAC
- Shkruani të dhënat në DDR
- Lexoni të dhënat nga DDR
- Çaktivizo EDAC
- I korruptuar 1 ose 2 bit
- Shkruani të dhënat në DDR
- Aktivizo EDAC
- Lexoni të dhënat
- Në rastin e një gabimi 1-bit, kontrolluesi EDAC korrigjon gabimin, përditëson regjistrat përkatës të statusit dhe jep të dhënat e shkruara në hapin 2 në operacionin e leximit të bërë në hapin 8.
- Në rastin e një gabimi 2-bit, gjenerohet një ndërprerje përkatëse dhe aplikacioni duhet të korrigjojë të dhënat ose të ndërmarrë veprimet e duhura në mbajtësin e ndërprerjeve. Këto dy metoda janë demonstruar në këtë demonstrim.
Dy teste janë zbatuar në këtë demonstrim: testi i ciklit dhe testi manual dhe ato janë të zbatueshme për gabimet 1-bit dhe 2-bit.
Testi i ciklit
Testi i ciklit ekzekutohet kur pajisjet SmartFusion2 marrin një komandë testimi të ciklit nga GUI. Fillimisht, të gjithë numëruesit e gabimeve dhe regjistrat e lidhur me EDAC vendosen në gjendjen RESET.
Hapat e mëposhtëm janë ekzekutuar për çdo përsëritje.
- Aktivizo kontrolluesin EDAC
- Shkruani të dhënat në vendndodhjen specifike të memories DDR
- Çaktivizo kontrolluesin EDAC
- Shkruani të dhënat e shkaktuara nga gabimi 1-bit ose 2-bit në të njëjtin vend memorie DDR
- Aktivizo kontrolluesin EDAC
- Lexoni të dhënat nga i njëjti vend memorie DDR
- Dërgo zbulimin e gabimit 1-bit ose 2-bit dhe të dhënat e korrigjimit të gabimit 1-bit në rast të gabimit 1-bit në GUI
Test Manual
Kjo metodë lejon testimin manual të zbulimit dhe korrigjimit të gabimeve 1-bit dhe zbulimin e gabimeve 2-bit për adresën e memories DDR (0xA0000000 deri në 0xDFFFFFFF) me inicializimin. Një gabim 1-bit/2-bit futet manualisht në një adresë të zgjedhur të memories DDR. Të dhënat e dhëna shkruhen në vendndodhjen e zgjedhur të memories DDR me EDAC të aktivizuar. Të dhënat e dëmtuara të gabimit 1-bit ose 2-bit shkruhen më pas në të njëjtin vend memorie me EDAC të çaktivizuar. Informacioni mbi gabimin e zbuluar 1-bit ose 2-bit regjistrohet kur të dhënat lexohen nga i njëjti vend memorie me EDAC të aktivizuar. Kontrolluesi DMA me performancë të lartë
(HPDMA) përdoret për të lexuar të dhënat nga memoria DDR. Trajtuesi i ndërprerjes për zbulimin e gabimeve me dy bit zbatohet për të ndërmarrë veprimet e duhura kur zbulohet një gabim 2-bit.
Ilustrimi i mëposhtëm përshkruan operacionet demo të EDAC.
Figura 3 • Rrjedha e projektimit
Shënim: Për një gabim 2-bit, kur procesori Cortex-M3 lexon të dhënat, ekzekutimi i kodit shkon te mbajtësi i gabimeve të vështira, pasi ndërprerja e marrë vonon që procesori të përgjigjet. Në momentin që i përgjigjet ndërprerjes, mund të ketë kaluar tashmë të dhënat dhe të ketë nisur aksidentalisht një komandë. Si rezultat, HRESP ndalon përpunimin e të dhënave të pasakta. Zbulimi i gabimit 2-bit përdor HPDMA për të lexuar të dhënat nga vendndodhja e adresës DDR, e cila udhëzon procesorin që të dhënat e leximit të kenë një gabim 2-bit dhe sistemi duhet të ndërmarrë veprimet e duhura për të rikuperuar (Transuesi i ndërprerjes ECC).
Vendosja e dizajnit demonstrues
Ky seksion përshkruan konfigurimin e tabelës SmartFusion2 Advanced Development Kit, opsionet GUI dhe mënyrën e ekzekutimit të modelit demo.
Hapat e mëposhtëm përshkruajnë se si të konfiguroni demonstrimin:
- Lidhni njërën skaj të kabllit USB mini-B me lidhësin J33 të ofruar në tabelën SmartFusion2 Advanced Development Kit. Lidheni anën tjetër të kabllit USB me kompjuterin pritës. Dioda që lëshon dritë (LED) DS27 duhet të ndizet, duke treguar se lidhja UART është vendosur. Sigurohuni që drejtuesit e urës USB në UART të zbulohen automatikisht (mund të verifikohen në Device Manager), siç tregohet në figurën e mëposhtme.
Figura 4 • Drejtuesit e urës USB në UART
Nëse drejtuesit e urës USB në UART nuk janë të instaluar, shkarkoni dhe instaloni drejtuesit nga: www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip. - Lidhni kërcyesit në tabelën SmartFusion2 Advanced Development Kit, siç tregohet në Tabelën 4, faqe 11. Ndërprerësi i furnizimit me energji elektrike SW7 duhet të fiket gjatë kryerjes së lidhjeve të kërcyesit.
Figura 5 • Konfigurimi i tabelës së kompletit të avancuar të zhvillimit SmartFusion2
Ndërfaqja grafike e përdoruesit
Ky seksion përshkruan DDR – EDAC Demo GUI.
Figura 6 • DDR – EDAC Demo GUI
GUI mbështet karakteristikat e mëposhtme:
- Zgjedhja e portit COM dhe Baud Rate
- Zgjedhja e skedës së korrigjimit të gabimit 1-bit ose zbulimit të gabimit 2-bit
- Fusha e adresës për të shkruar ose lexuar të dhëna në ose nga adresa e specifikuar DDR
- Fusha e të dhënave për të shkruar ose lexuar të dhëna në ose nga adresa e specifikuar DDR
- Seksioni Serial Console për të printuar informacionin e statusit të marrë nga aplikacioni
- Aktivizo EDAC/Disable EDAC: Aktivizon ose çaktivizon EDAC
- Write: Lejon shkrimin e të dhënave në adresën e specifikuar
- Lexo: Lejon leximin e të dhënave nga adresa e specifikuar
- Testi i ciklit ON/OFF: Lejon testimin e mekanizmit EDAC në një metodë loop
- Initialize: Lejon të inicializojë vendndodhjen e paracaktuar të memories (në këtë demonstrim A0000000-A000CFFF)
Ekzekutimi i Dizajnit Demo
Hapat e mëposhtëm përshkruajnë se si të ekzekutohet dizajni: Hapat e mëposhtëm përshkruajnë se si të ekzekutohet dizajni:
- Ndizni çelësin e furnizimit, SW7.
- Programoni pajisjen SmarFusion2 me programimin file parashikuar në dizajn files.(\ProgramimiFile\EDAC_DDR3.stp) duke përdorur softuerin e projektimit FlashPro, siç tregohet në figurën e mëposhtme.
Figura 7 • Dritarja e Programimit FlashPro
- Shtypni çelësin SW6 për të rivendosur tabelën pas programimit të suksesshëm.
- Hapni ekzekutuesin EDAC_DDR Demo GUI file në dispozicion në dizajn files (\GUI Executable\ EDAC_DDR.exe). Shfaqet dritarja GUI, siç tregohet në Figurën 8, faqe 9.
- Klikoni Connect, ai zgjedh portën COM dhe vendos lidhjen. Ndryshimet e opsionit të lidhjes në Shkëputje.
- Zgjidhni skedën Korrigjimi i gabimit 1-bit ose Zbulimi i gabimeve 2-bit.
- Mund të kryhen teste manuale dhe Loop.
- Klikoni Initialize për të inicializuar memorien DDR për të kryer testet Manual dhe Loop, një mesazh i përfundimit të inicializimit shfaqet në Serial Console, siç tregohet në Figurën 8, faqe 9.
Figura 8 • Dritarja e përfunduar e inicializimit
Kryerja e testit të ciklit
Kliko Loop Test ON. Ai funksionon në modalitetin loop ku bëhet korrigjimi i vazhdueshëm dhe zbulimi i gabimeve. Të gjitha veprimet e kryera në pajisjen SmartFusion2 regjistrohen në seksionin Serial Console të GUI-së.
Tabela 2 • Adresat e memories DDR3 të përdorura në Testin e ciklit
- Memorie DDR3
- Korrigjimi i gabimit 1-bit 0xA0008000
- Zbulimi i gabimit 2-bit 0xA000C000
Kryerja e testit manual
Në këtë metodë, gabimet futen manualisht duke përdorur GUI. Përdorni hapat e mëposhtëm për të ekzekutuar korrigjimin e gabimit 1-bit ose zbulimin e gabimit 2-bit.
Tabela 3 • Adresat e memories DDR3 të përdorura në Testin Manual
Fushat e adresës së hyrjes dhe të të dhënave (përdorni vlera Hexadecimal 32-bit).
- Memorie DDR3
- Korrigjimi i gabimit 1-bit 0xA0000000-0xA0004000
- Zbulimi i gabimit 2-bit 0xA0004000-0xA0008000
- Klikoni Aktivizo EDAC.
- Klikoni Shkruaj.
- Klikoni Disable EDAC.
- Ndryshoni një bit (në rast të korrigjimit të gabimit 1-bit) ose dy bit (në rast të zbulimit të gabimit 2-bit) në fushën e të dhënave (duke futur gabimin).
- Klikoni Shkruaj.
- Klikoni Aktivizo EDAC.
- Klikoni Lexo.
- Vëzhgoni Error Count Display dhe fushën e të dhënave në GUI. Vlera e numërimit të gabimeve rritet me 1.
Dritarja e korrigjimit të lakut të gabimit 1-bit është paraqitur në figurën e mëposhtme.
Figura 9 • Dritarja e zbulimit të ciklit të gabimit 1-bit
Dritarja manuale e zbulimit të gabimit 2-bit është paraqitur në figurën e mëposhtme.
Figura 10 • Dritarja manuale e zbulimit të gabimeve 2-bitëshe
konkluzioni
Kjo demonstrim tregon aftësitë SmartFusion2 SECDED për nënsistemin MDDR.
Shtojca: Cilësimet e kërcyesit
Tabela e mëposhtme tregon të gjithë kërcyesit e kërkuar për t'u vendosur në Kompletin e Zhvillimit të Avancuar SmartFusion2.
Tabela 4 • Cilësimet e Kit të Avancuar të Zhvillimit SmartFusion2 për jumper
Kërcim : Pin (Nga) : Pin (Për) : Komente
- J116, J353, J354, J54 1 2 Këto janë cilësimet e parazgjedhura të kërcyesit të Advanced
- Pllakë J123 2 3 Development Kit. Sigurohuni që këta kërcyes të jenë vendosur në përputhje me rrethanat.
- J124, J121, J32 1 2 JTAG programimi nëpërmjet FTDI
DG0618 Demo Guide Rishikimi 4.0
Dokumentet / Burimet
![]() |
Zbulimi dhe korrigjimi i gabimit Microsemi DG0618 në pajisjet SmartFusion2 që përdorin memorien DDR [pdfUdhëzuesi i përdoruesit Zbulimi dhe korrigjimi i gabimeve DG0618 në pajisjet SmartFusion2 që përdorin memorien DDR, DG0618, Zbulimi dhe korrigjimi i gabimeve në pajisjet SmartFusion2 që përdorin memorien DDR, Pajisjet SmartFusion2 që përdorin memorien DDR, memorien DDR |