Detecció i correcció d'errors de MICROCHIP a la memòria RTG4 LSRAM
Historial de revisions
L'historial de revisions descriu els canvis que es van implementar al document. Els canvis s'enumeren per revisió, començant per la publicació més actual.
Revisió 4.0
A continuació es mostra un resum dels canvis fets en aquesta revisió.
- S'ha actualitzat el document per a Libero SoC v2021.2.
- Apèndix 1 afegit: Programació del dispositiu amb FlashPro Express, pàgina 14.
- Apèndix 2 afegit: Execució de l'script TCL, pàgina 16.
- S'han eliminat les referències als números de versió de Libero.
Revisió 3.0
S'ha actualitzat el document per a la versió del programari Libero v11.9 SP1.
Revisió 2.0
S'ha actualitzat el document per a la versió del programari Libero v11.8 SP2.
Revisió 1.0
La primera publicació d'aquest document.
Detecció i correcció d'errors a la memòria RTG4 LSRAM
Aquest disseny de referència descriu les capacitats de detecció i correcció d'errors (EDAC) de les RTG4™ FPGA LSRAM. En un entorn susceptible de alteració d'un sol esdeveniment (SEU), la memòria RAM és propensa a errors transitoris causats per ions pesats. Aquests errors es poden detectar i corregir mitjançant l'ús de codis de correcció d'errors (ECC). Els blocs de RAM RTG4 FPGA tenen controladors EDAC integrats per generar els codis de correcció d'errors per corregir un error d'1 bit o detectar un error de 2 bits.
Si es detecta un error d'1 bit, el controlador EDAC corregeix el bit d'error i estableix el senyalador de correcció d'errors (SB_CORRECT) a actiu alt. Si es detecta un error de 2 bits, el controlador EDAC estableix el senyalador de detecció d'errors (DB_DETECT) com a actiu alt.
Per obtenir més informació sobre la funcionalitat RTG4 LSRAM EDAC, consulteu UG0574: RTG4 FPGA Fabric
Guia d'usuari.
En aquest disseny de referència, l'error d'1 bit o l'error de 2 bits s'introdueix mitjançant la GUI de SmartDebug. L'EDAC s'observa mitjançant una interfície gràfica d'usuari (GUI), utilitzant la interfície UART per accedir a la LSRAM per a lectures/escriptures de dades, Libero® System-on-Chip (SoC) SmartDebug (JTAG) s'utilitza per injectar els errors a la memòria LSRAM.
Requisits de disseny
La taula 1 enumera els requisits de disseny de referència per executar la demostració RTG4 LSRAM EDAC.
Taula 1 • Requisits de disseny
Programari
- Libero SoC
- FlashPro Express
- SmartDebug
- Controladors de PC host Controladors USB a UART
Nota: Les captures de pantalla de configuració i disseny intel·ligent de Libero que es mostren en aquesta guia només tenen finalitat il·lustrativa.
Obriu el disseny de Libero per veure les últimes actualitzacions.
Requisits previs
Abans de començar:
Baixeu i instal·leu Libero SoC (tal com s'indica al document weblloc per a aquest disseny) a l'ordinador amfitrió des de la ubicació següent: https://www.microsemi.com/product-directory/design-resources/1750-libero-soc
Disseny de demostració
Descarrega el disseny de demostració files de la Microsemi weblloc a: http://soc.microsemi.com/download/rsc/?f=rtg4_dg0703_df
El disseny de demostració files inclouen:
- Projecte Libero SoC
- Instal·lador de GUI
- Programació files
- Llegiu-me.txt file
- TCL_Scripts
L'aplicació GUI de l'ordinador amfitrió emet ordres al dispositiu RTG4 mitjançant la interfície USB-UART. Aquesta interfície UART està dissenyada amb CoreUART, que és una IP lògica del catàleg IP de Libero SoC. La IP CoreUART del teixit RTG4 rep ordres i les transmet a la lògica del descodificador d'ordres. La lògica del descodificador d'ordres descodifica l'ordre de lectura o escriptura, que s'executa mitjançant la lògica de la interfície de memòria.
El bloc d'interfície de memòria s'utilitza per llegir/escriure i controlar els senyals d'error LSRAM. L'EDAC integrat corregeix l'error d'1 bit durant la lectura de LSRAM i proporciona dades corregides a la interfície d'usuari, però no escriu les dades corregides de nou a LSRAM. El LSRAM EDAC integrat no implementa una funció de neteja. El disseny de demostració implementa la lògica de fregament, que supervisa la bandera de correcció d'1 bit i actualitza la LSRAM amb les dades corregides si es produeix un error d'un bit.
SmartDebug GUI s'utilitza per injectar errors d'1 o 2 bits a les dades LSRAM.
La figura 1 mostra el diagrama de blocs de nivell superior del disseny de demostració RTG4 LSRAM EDAC.
Figura 1 • Diagrama de blocs de primer nivell
Les següents són les configuracions de disseny de demostració:
- La LSRAM està configurada per al mode ×18 i l'EDAC s'habilita connectant el senyal ECC_EN de LSRAM a alt.
Nota: El LSRAM EDAC només és compatible amb els modes ×18 i ×36. - La IP CoreUART està configurada per comunicar-se amb l'aplicació de l'ordinador amfitrió a una velocitat de 115200 baudios.
- El RTG4FCCCECALIB_C0 està configurat per fer un rellotge del CoreUART i d'altres lògiques de teixit a 80 MHz.
Característiques
Les següents són les característiques del disseny de demostració:
- Llegiu i escriviu a LSRAM
- Injecteu errors d'1 i 2 bits mitjançant SmartDebug
- Mostra els valors del recompte d'errors d'1 i 2 bits
- Provisió per esborrar els valors del recompte d'errors
- Activa o desactiva la lògica de neteja de memòria
Descripció
Aquest disseny de demostració implica la implementació de les tasques següents:
- Inicialització i accés a LSRAM
La lògica d'interfície de memòria implementada a la lògica de teixit rep l'ordre d'inicialització de la GUI i inicialitza les primeres 256 ubicacions de memòria de LSRAM amb les dades incrementals. També realitza les operacions de lectura i escriptura a les 256 ubicacions de memòria de LSRAM rebent l'adreça i les dades de la GUI. Per a una operació de lectura, el disseny obté les dades de LSRAM i les proporciona a la GUI per a la seva visualització. L'expectativa és que el disseny no indueixi errors abans d'utilitzar SmartDebug.
Nota: Les ubicacions de memòria no inicialitzades poden tenir valors aleatoris i SmartDebug pot mostrar errors d'un o dos bits en aquestes ubicacions.
- Injectant errors d'1 o 2 bits
La GUI SmartDebug s'utilitza per injectar els errors d'1 o 2 bits a la ubicació de memòria especificada de LSRAM. Les operacions següents es realitzen amb SmartDebug per injectar errors d'1 i 2 bits a LSRAM:- Obriu SmartDebug GUI, feu clic a Debug FPGA Array.
- Aneu a la pestanya Blocs de memòria, seleccioneu la instància de memòria i feu clic amb el botó dret a Afegeix.
- Per llegir el bloc de memòria, feu clic a Llegir bloc.
- Injecteu un error d'un bit o de doble bit a qualsevol ubicació de la LSRAM d'una certa profunditat.
- Per escriure a la ubicació modificada, feu clic a Escriure bloc.
Durant l'operació de lectura i escriptura de LSRAM mitjançant SmartDebug (JTAG), el controlador EDAC s'omet i no calcula els bits ECC per a l'operació d'escriptura del pas e.
- Recompte d'errors
Els comptadors de 8 bits s'utilitzen per proporcionar un recompte d'errors i es dissenyen a la lògica de la tela per comptar els errors d'1 o 2 bits. La lògica del descodificador d'ordres proporciona els valors de recompte a la GUI quan es reben ordres de la GUI.
Estructura de rellotge
En aquest disseny de demostració, hi ha un domini de rellotge. L'oscil·lador intern de 50 MHz impulsa el RTG4FCCC, que a més impulsa RTG4FCCCECALIB_C0. El RTG4FCCCECALIB_C0 genera un rellotge de 80 MHz que proporciona una font de rellotge als mòduls COREUART, cmd_decoder, TPSRAM_ECC i RAM_RW.
La figura següent mostra l'estructura de rellotge del disseny de demostració.
Figura 2 • Estructura de rellotge
Restableix l'estructura
En aquest disseny de demostració, el senyal de restabliment dels mòduls COREUART, cmd_decoder i RAM_RW es proporciona a través del port LOCK de RTG4FCCCECALIB_C0. La figura següent mostra l'estructura de restabliment del disseny de demostració.
Figura 3 • Restablir estructura
Configuració del disseny de demostració
Les seccions següents descriuen com configurar el kit de desenvolupament RTG4 i la GUI per executar el disseny de demostració.
Configuració del pont
- Connecteu els ponts del kit de desenvolupament RTG4, tal com es mostra a la taula 2.
Taula 2 • Configuració dels pontsJumper Pin (de) Fixa (a) Comentaris J11, J17, J19, J21, J23, J26, J27, J28 1 2 Per defecte J16 2 3 Per defecte J32 1 2 Per defecte J33 1 3 Per defecte 2 4 Nota: Apagueu l'interruptor d'alimentació, SW6, mentre connecteu els ponts.
- Connecteu el cable USB (mini USB a cable USB tipus A) a J47 del kit de desenvolupament RTG4 i l'altre extrem del cable al port USB de l'ordinador amfitrió.
- Assegureu-vos que els controladors del pont USB a UART es detectin automàticament. Això es pot verificar al gestor de dispositius de l'ordinador amfitrió.
La figura 4 mostra les propietats del port sèrie USB 2.0 i el COM31 i el convertidor sèrie USB C connectats.
Figura 4 • Controladors de pont USB a UART
Nota: Si els controladors del pont USB a UART no estan instal·lats, descarregueu i instal·leu els controladors des de www.microsemi.com//documents/CDM_2.08.24_WHQL_Certified.zip
La figura 5 mostra la configuració de la placa per executar la demostració EDAC al kit de desenvolupament RTG4.
Programació del disseny de demostració
- Inicieu el programari Libero SOC.
- Per programar el kit de desenvolupament RTG4 amb el treball file proporcionat com a part del disseny fileSi feu servir el programari FlashPro Express, consulteu l'Apèndix 1: Programació del dispositiu amb FlashPro Express, pàgina 14.
Nota: Un cop feta la programació amb la feina file mitjançant el programari FlashPro Express, aneu a EDAC Demo GUI, pàgina 9. En cas contrari, aneu al pas següent. - Al flux de disseny de Libero, feu clic a Executar l'acció del programa.
- Un cop finalitzada la programació, apareixerà una marca verda al davant de "Executar l'acció del programa" que indica la programació correcta del disseny de demostració.
GUI de demostració EDAC
La demostració de l'EDAC es proporciona amb una GUI fàcil d'utilitzar, tal com es mostra a la figura 7, que s'executa a l'ordinador amfitrió, que es comunica amb el kit de desenvolupament RTG4. L'UART s'utilitza com a protocol de comunicació subjacent entre l'ordinador amfitrió i el kit de desenvolupament RTG4.
La GUI conté les seccions següents:
- Selecció del port COM per establir la connexió UART a RTG4 FPGA amb la velocitat de 115200 baudios.
- Escriptura de memòria LSRAM: per escriure les dades de 8 bits a l'adreça de memòria LSRAM especificada.
- Neteja de memòria: per activar o desactivar la lògica de neteja.
- Lectura de memòria LSRAM: per llegir les dades de 8 bits de l'adreça de memòria LSRAM especificada.
- Recompte d'errors: mostra el recompte d'errors i ofereix una opció per esborrar el valor del comptador a zero.
- Recompte d'errors d'1 bit: mostra el recompte d'errors d'1 bit i ofereix una opció per esborrar el valor del comptador a zero.
- Recompte d'errors de 2 bits: mostra el recompte d'errors de 2 bits i ofereix una opció per esborrar el valor del comptador a zero.
- Dades de registre: proporciona la informació d'estat de cada operació realitzada mitjançant la GUI.
Execució de la demostració
Els passos següents descriuen com executar la demostració:
- Anar a \v1.2.2\v1.2.2\Exe i feu doble clic a EDAC_GUI.exe tal com es mostra a la figura 8.
- Seleccioneu el port COM31 de la llista i feu clic a Connecta.
Injecció i correcció d'errors d'un sol bit
- Al disseny de Libero proporcionat, feu doble clic al disseny SmartDebug al flux de disseny.
- A la GUI de SmartDebug, feu clic a Debug FPGA Array.
- A la finestra Debug FPGA Array, aneu a la pestanya Memory Blocks. Mostrarà el bloc LSRAM en el disseny amb un aspecte lògic i físic view. Els blocs lògics es mostren amb una icona L i els blocs físics amb una icona P.
- Seleccioneu la instància de bloc físic i feu clic amb el botó dret a Afegeix.
- Per llegir el bloc de memòria, feu clic a Llegir bloc.
- Injecteu un error d'1 bit a les dades de 8 bits a qualsevol ubicació de la LSRAM fins a la profunditat 256, tal com es mostra a la figura següent, on s'injecta un error d'1 bit a la 0a ubicació de la LSRAM.
- Feu clic a Escriure bloc per escriure les dades modificades a la ubicació desitjada.
- Aneu a la GUI de l'EDAC i introduïu el camp Adreça a la secció Llegir memòria LSRAM i feu clic a Llegir, tal com es mostra a la figura següent.
- Observeu els camps de recompte d'errors d'1 bit i de lectura de dades a la GUI. El valor del recompte d'errors augmenta en 1.
El camp de lectura de dades mostra les dades correctes a mesura que l'EDAC corregeix el bit d'error.
Nota: Si la neteja de memòria no està habilitada, el recompte d'errors s'incrementa per cada lectura des de la mateixa adreça LSRAM, ja que provoca l'error d'1 bit.
Injecció i detecció d'errors de doble bit
- Realitzeu el pas 1 al pas 5 tal com s'indica a Injecció i correcció d'errors d'un bit, pàgina 10.
- Injecteu un error de 2 bits a les dades de 8 bits a qualsevol ubicació de la LSRAM fins a la profunditat 256, tal com es mostra a la figura següent, on l'error de 2 bits s'injecta a la ubicació "A" de la LSRAM.
- Feu clic a Escriure bloc per escriure les dades modificades a la ubicació desitjada.
- Aneu a la GUI de l'EDAC i introduïu el camp Adreça a la secció Llegir memòria LSRAM i feu clic a Llegir, tal com es mostra a la figura següent.
- Observeu els camps de recompte d'errors de 2 bits i de lectura de dades a la GUI. El valor del recompte d'errors augmenta en 1.
El camp Llegir dades mostra les dades danyades.
Totes les accions realitzades a RTG4 es registren a la secció Consola sèrie de la GUI.
Conclusió
Aquesta demostració destaca les capacitats EDAC de les memòries LSRAM RTG4. L'error d'1 bit o l'error de 2 bits s'introdueixen mitjançant la GUI de SmartDebug. La correcció d'errors d'1 bit i la detecció d'errors de 2 bits s'observen mitjançant una GUI EDAC.
Programació del dispositiu amb FlashPro Express
Aquesta secció descriu com programar el dispositiu RTG4 amb la tasca de programació file utilitzant FlashPro Express.
Per programar el dispositiu, seguiu els passos següents:
- Assegureu-vos que la configuració del pont a la placa sigui la mateixa que la llista a la taula 3 de UG0617:
Guia d'usuari del kit de desenvolupament RTG4. - Opcionalment, el pont J32 es pot configurar per connectar els pins 2-3 quan s'utilitza un programador FlashPro4, FlashPro5 o FlashPro6 extern en lloc de la configuració predeterminada del pont per utilitzar el FlashPro5 incrustat.
Nota: L'interruptor d'alimentació, SW6, s'ha d'apagar mentre es fan les connexions de pont. - Connecteu el cable d'alimentació al connector J9 de la placa.
- Engegueu l'interruptor d'alimentació SW6.
- Si utilitzeu el FlashPro5 incrustat, connecteu el cable USB al connector J47 i al PC amfitrió.
Alternativament, si utilitzeu un programador extern, connecteu el cable de cinta al connector JTAG capçalera J22 i connecteu el programador a l'ordinador amfitrió. - A l'ordinador amfitrió, inicieu el programari FlashPro Express.
- Feu clic a Nou o seleccioneu Projecte de treball nou al treball FlashPro Express al menú Projecte per crear un projecte de feina nou, tal com es mostra a la figura següent.
- Introduïu el següent al quadre de diàleg Nou projecte de treball des de FlashPro Express:
- Treball de programació file: Feu clic a Examinar i navegueu fins a la ubicació on es troba el .job file es troba i seleccioneu file. La ubicació per defecte és: \rtg4_dg0703_df\Programming_Job
- Ubicació del projecte de treball FlashPro Express: feu clic a Navega i navegueu a la ubicació del projecte FlashPro Express desitjada.
- Feu clic a D'acord. La programació requerida file està seleccionat i llest per ser programat al dispositiu.
- Apareixerà la finestra de FlashPro Express, confirmeu que apareix un número de programador al camp Programador. Si no ho fa, confirmeu les connexions de la placa i feu clic a Actualitza/Reescaneja programadors.
- Feu clic a RUN. Quan el dispositiu es programa correctament, es mostra l'estat RUN PASSED, tal com es mostra a la figura següent.
- Tanqueu FlashPro Express o feu clic a Surt a la pestanya Projecte.
Execució de l'script TCL
Els scripts TCL es proporcionen al disseny files sota el directori TCL_Scripts. Si cal, el disseny
El flux es pot reproduir des de la implementació del disseny fins a la generació del treball file.
Per executar el TCL, seguiu els passos següents:
- Inicieu el programari Libero
- Seleccioneu Projecte > Execute Script....
- Feu clic a Navega i seleccioneu script.tcl al directori TCL_Scripts descarregat.
- Feu clic a Executar.
Després d'executar correctament l'script TCL, el projecte Libero es crea dins del directori TCL_Scripts.
Per obtenir més informació sobre els scripts TCL, consulteu rtg4_dg0703_df/TCL_Scripts/readme.txt.
Consulteu la Guia de referència d'ordres TCL del SoC de Libero® per obtenir més detalls sobre les ordres TCL. Poseu-vos en contacte amb l'assistència tècnica per a qualsevol consulta que trobeu en executar l'script TCL.
Microsemi no fa cap garantia, representació o garantia sobre la informació continguda aquí o la idoneïtat dels seus productes i serveis per a cap propòsit particular, ni tampoc assumeix cap responsabilitat derivada de l'aplicació o l'ús de cap producte o circuit. Els productes que es venen a continuació i qualsevol altre producte venut per Microsemi han estat subjectes a proves limitades i no s'han d'utilitzar juntament amb equips o aplicacions crítiques. Es creu que qualsevol especificació de rendiment és fiable, però no es verifica, i el comprador ha de dur a terme i completar totes les proves de rendiment i altres dels productes, sols i juntament amb, o instal·lats en qualsevol producte final. El comprador no es basarà en les dades i les especificacions de rendiment o els paràmetres proporcionats per Microsemi. És responsabilitat del comprador determinar de manera independent la idoneïtat de qualsevol producte i provar-lo i verificar-lo. La informació proporcionada per Microsemi a continuació es proporciona "tal com és, on és" i amb tots els errors, i tot el risc associat amb aquesta informació és totalment del comprador. Microsemi no atorga, de manera explícita o implícita, a cap part cap dret de patent, llicència o qualsevol altre dret de propietat intel·lectual, ja sigui pel que fa a aquesta informació en si o a qualsevol cosa descrita per aquesta informació. La informació proporcionada en aquest document és propietat de Microsemi, i Microsemi es reserva el dret de fer qualsevol canvi a la informació d'aquest document o a qualsevol producte i servei en qualsevol moment sense previ avís.
Sobre Microsemi Microsemi, una filial de propietat total de Microchip Technology Inc. (Nasdaq: MCHP), ofereix una cartera completa de solucions de sistemes i semiconductors per a l'aeronàutica i defensa, comunicacions, centres de dades i mercats industrials. Els productes inclouen circuits integrats de senyal mixt analògic d'alt rendiment i endurits per la radiació, FPGA, SoC i ASIC; productes de gestió d'energia; dispositius de cronometratge i sincronització i solucions de temps precises, establint l'estàndard mundial en temps; dispositius de processament de veu; solucions de RF; components discrets; solucions d'emmagatzematge i comunicació empresarial, tecnologies de seguretat i anti-t escalablesamper productes; solucions Ethernet; Circuits integrats i midspans d'alimentació a través d'Ethernet; així com capacitats i serveis de disseny personalitzat. Més informació a www.microsemi.com.
Seu Microsemi
One Enterprise, Aliso Viejo,
CA 92656 EUA
Dins dels EUA: +1 800-713-4113
Fora dels EUA: +1 949-380-6100
Vendes: +1 949-380-6136
Fax: +1 949-215-4996
Correu electrònic: vendes.support@microsemi.com
www.microsemi.com
©2021 Microsemi, una filial de propietat total de Microchip Technology Inc. Tots els drets reservats. Microsemi i el logotip de Microsemi són marques registrades de Microsemi Corporation. Totes les altres marques comercials i marques de servei són propietat dels seus respectius propietaris.
Propietat de Microsemi DG0703 Revisió 4.0
Documents/Recursos
![]() |
Detecció i correcció d'errors de MICROCHIP a la memòria RTG4 LSRAM [pdfGuia de l'usuari Demostració DG0703, detecció i correcció d'errors a la memòria LSRAM RTG4, detecció i correcció a la memòria LSRAM RTG4, memòria LSRAM RTG4, memòria LSRAM |