Deteksi lan koreksi kesalahan MICROCHIP ing Memori RTG4 LSRAM
Riwayat Revisi
Riwayat revisi nggambarake owah-owahan sing ditindakake ing dokumen kasebut. Owah-owahan kasebut didhaptar kanthi revisi, diwiwiti saka publikasi paling anyar.
Revisi 4.0
Ing ngisor iki ringkesan owah-owahan sing ditindakake ing revisi iki.
- Nganyari dokumen kanggo Libero SoC v2021.2.
- Ditambahake Lampiran 1: Pemrograman Piranti Nggunakake FlashPro Express, kaca 14.
- Ditambahake Lampiran 2: Nglakokake Skrip TCL, kaca 16.
- Dibusak referensi kanggo nomer versi Libero.
Revisi 3.0
Dianyari document kanggo release lunak Libero v11.9 SP1.
Revisi 2.0
Dianyari document kanggo release lunak Libero v11.8 SP2.
Revisi 1.0
Publikasi pisanan saka dokumen iki.
Deteksi kesalahan lan koreksi ing RTG4 LSRAM Memori
Desain referensi iki nggambarake kemampuan deteksi lan koreksi kesalahan (EDAC) saka LSRAM FPGA RTG4™. Ing siji acara upset (SEU) lingkungan rentan, RAM rawan kanggo kasalahan transien disebabake ion abot. Kesalahan kasebut bisa dideteksi lan didandani kanthi nggunakake kode koreksi kesalahan (ECC). Blok RAM RTG4 FPGA duwe pengontrol EDAC sing dibangun kanggo ngasilake kode koreksi kesalahan kanggo mbenerake kesalahan 1-bit utawa ndeteksi kesalahan 2-bit.
Yen kesalahan 1-dicokot dideteksi, controller EDAC mbenerake bit kesalahan lan nyetel flag koreksi kesalahan (SB_CORRECT) kanggo aktif dhuwur. Yen kesalahan 2-bit dideteksi, EDAC controller nyetel flag deteksi kesalahan (DB_DETECT) kanggo aktif dhuwur.
Kanggo informasi luwih lengkap babagan fungsi RTG4 LSRAM EDAC, waca UG0574: Kain FPGA RTG4
Pandhuan pangguna.
Ing desain referensi iki, kesalahan 1-dicokot utawa kesalahan 2-dicokot dikenalaké liwat SmartDebug GUI. EDAC diamati nggunakake antarmuka panganggo grafis (GUI), nggunakake antarmuka UART kanggo ngakses LSRAM kanggo data diwaca / nulis, Libero® System-on-Chip (SoC) SmartDebug (JTAG) digunakake kanggo nyuntikake kasalahan menyang memori LSRAM.
Requirements Desain
Tabel 1 dhaptar syarat desain referensi kanggo mbukak demo RTG4 LSRAM EDAC.
Tabel 1 • Requirements Design
Piranti lunak
- Libero SoC
- FlashPro Express
- SmartDebug
- Pembalap PC host USB kanggo driver UART
Cathetan: Libero SmartDesign lan gambar konfigurasi sing ditampilake ing pandhuan iki mung kanggo ilustrasi.
Bukak desain Libero kanggo ndeleng nganyari paling anyar.
Prasyarat
Sadurunge miwiti:
Ngundhuh lan nginstal Libero SoC (kaya sing dituduhake ing websitus kanggo desain iki) ing PC host saka lokasi ing ngisor iki: https://www.microsemi.com/product-directory/design-resources/1750-libero-soc
Desain Demo
Ngundhuh desain demo files saka Microsemi websitus ing: http://soc.microsemi.com/download/rsc/?f=rtg4_dg0703_df
Desain demo files kalebu:
- Proyek Libero SoC
- GUI Installer
- Pemrograman files
- Readme.txt file
- TCL_Scripts
Aplikasi GUI ing PC host ngetokake printah menyang piranti RTG4 liwat antarmuka USB-UART. Antarmuka UART iki dirancang karo CoreUART, yaiku IP logika saka katalog Libero SoC IP. IP CoreUART ing kain RTG4 nampa printah lan ngirim menyang logika decoder printah. Logika dekoder printah decode perintah maca utawa nulis, sing dieksekusi nggunakake logika antarmuka memori.
Blok antarmuka memori digunakake kanggo maca / nulis lan ngawasi panji kesalahan LSRAM. EDAC dibangun ing mbenerake kesalahan 1-dicokot nalika maca saka LSRAM lan menehi data didandani kanggo antarmuka panganggo nanging ora nulis data didandani bali menyang LSRAM. LSRAM EDAC sing dibangun ora ngetrapake fitur scrubbing. Desain demo ngetrapake logika scrub, sing ngawasi bendera koreksi 1-bit lan nganyari LSRAM kanthi data sing wis didandani yen ana kesalahan bit siji.
GUI SmartDebug digunakake kanggo nyuntikake kesalahan 1-bit utawa 2-bit menyang data LSRAM.
Figure 1 nuduhake diagram pemblokiran tingkat ndhuwur RTG4 LSRAM EDAC desain demo.
Gambar 1 • Diagram Blok Top-Level
Ing ngisor iki minangka konfigurasi desain demo:
- LSRAM wis diatur kanggo × 18 mode lan EDAC diaktifake kanthi nyambungake LSRAMs sinyal ECC_EN kanggo dhuwur.
Cathetan: LSRAM EDAC mung didhukung kanggo mode ×18 lan ×36. - IP CoreUART dikonfigurasi kanggo komunikasi karo aplikasi PC inang ing tingkat baud 115200.
- RTG4FCCCECALIB_C0 dikonfigurasi kanggo jam CoreUART lan logika kain liyane ing 80 MHz.
Fitur
Ing ngisor iki minangka fitur desain demo:
- Maca lan nulis menyang LSRAM
- Nyuntikake kesalahan 1-bit lan 2-bit nggunakake SmartDebug
- Tampilake nilai count kesalahan 1-bit lan 2-bit
- Pranata kanggo mbusak nilai count kesalahan
- Aktifake utawa mateni logika scrubbing memori
Katrangan
Desain demo iki kalebu implementasine tugas ing ngisor iki:
- Initializing lan ngakses LSRAM
Logika antarmuka memori dipun ginakaken ing logika kain nampa printah initialization saka GUI lan initializes pisanan 256 lokasi memori LSRAM karo data tambahan. Uga nindakake operasi maca lan nulis menyang 256 lokasi memori LSRAM kanthi nampa alamat lan data saka GUI. Kanggo operasi maca, desain njupuk data saka LSRAM lan menehi kanggo GUI kanggo tampilan. Pangarep-arep yaiku desain kasebut ora bakal nyebabake kasalahan sadurunge nggunakake SmartDebug.
Cathetan: Lokasi memori sing ora dikawruhi bisa uga duwe nilai acak, lan SmartDebug bisa nuduhake kesalahan siji-bit utawa kaping pindho ing lokasi kasebut.
- Nyuntikake kesalahan 1-bit utawa 2-bit
GUI SmartDebug digunakake kanggo nyuntikake kesalahan 1 bit utawa 2 bit menyang lokasi memori LSRAM sing ditemtokake. Operasi ing ngisor iki ditindakake nggunakake SmartDebug kanggo nyuntikake kesalahan 1-bit lan 2-bit menyang LSRAM:- Buka SmartDebug GUI, klik Debug FPGA Array.
- Pindhah menyang tab Blok Memori, pilih conto memori, banjur klik-tengen Tambah.
- Kanggo maca blok memori, klik Waca Blok.
- Inject single-bit utawa pindho-bit kesalahan menyang sembarang lokasi LSRAM ambane tartamtu.
- Kanggo nulis menyang lokasi sing diowahi, klik Tulis Blok.
Sajrone operasi maca lan nulis LSRAM liwat SmartDebug (JTAG) antarmuka, kontroler EDAC dilewati lan ora ngitung bit ECC kanggo operasi nulis ing langkah e.
- Kesalahan Ngitung
8-dicokot counters digunakake kanggo nyedhiyani count kesalahan lan desain menyang logika kain kanggo count 1-dicokot utawa 2-dicokot kasalahan. Logika decoder printah menehi nilai count menyang GUI nalika nampa printah saka GUI.
Struktur Jam
Ing desain demo iki, ana siji domain jam. Internal 50 MHz osilator drive RTG4FCCC, kang luwih drive RTG4FCCCECALIB_C0. RTG4FCCCECALIB_C0 ngasilake jam 80 MHz sing nyedhiyakake sumber jam menyang modul COREUART, cmd_decoder, TPSRAM_ECC, lan RAM_RW.
Gambar ing ngisor iki nuduhake struktur jam saka desain demo.
Gambar 2 • Struktur Clocking
Reset Struktur
Ing desain demo iki, sinyal reset menyang modul COREUART, cmd_decoder, lan RAM_RW diwenehake liwat port LOCK RTG4FCCCECALIB_C0. Tokoh ing ngisor iki nuduhake struktur reset saka desain demo.
Gambar 3 • Reset Struktur
Nyetel Desain Demo
Bagean ing ngisor iki njlèntrèhaké carane nyiyapake RTG4 Development Kit lan GUI kanggo mbukak desain demo.
Setelan Jumper
- Sambungake jumper ing Kit Pangembangan RTG4, kaya sing ditampilake ing Tabel 2.
Tabel 2 • Setelan JumperJumper Pin (Saka) Pin (Kanggo) Komentar J11, J17, J19, J21, J23, J26, J27, J28 1 2 Default J16 2 3 Default J32 1 2 Default J33 1 3 Default 2 4 Cathetan: Pateni ngalih sumber daya, SW6, nalika nyambungake jumpers.
- Sambungake kabel USB (mini USB kanggo Tipe-A kabel USB) kanggo J47 saka RTG4 Development Kit lan ujung kabel liyane menyang port USB saka PC inang.
- Priksa manawa driver jembatan USB menyang UART dideteksi kanthi otomatis. Iki bisa diverifikasi ing manajer piranti PC host.
Gambar 4 nuduhake properti port serial USB 2.0 lan COM31 sing disambungake lan konverter serial USB C.
Gambar 4 • USB kanggo Driver Bridge UART
Cathetan: Yen USB kanggo driver jembatan UART ora diinstal, download lan nginstal driver saka www.microsemi.com//documents/CDM_2.08.24_WHQL_Certified.zip
Figure 5 nuduhake persiyapan Papan kanggo mbukak demo EDAC ing RTG4 Development Kit.
Pemrograman Rancangan Demo
- Bukak piranti lunak Libero SOC.
- Kanggo program RTG4 Development Kit karo proyek file kasedhiya minangka bagéan saka desain files nggunakake piranti lunak FlashPro Express, deleng Lampiran 1: Pemrograman Piranti Nggunakake FlashPro Express, kaca 14.
Cathetan: Sawise pemrograman rampung karo proyek file liwat piranti lunak FlashPro Express, nerusake menyang EDAC Demo GUI, kaca 9. Yen ora, nerusake menyang langkah sabanjure. - Ing aliran desain Libero, klik tumindak Run Program.
- Sawise Pemrograman rampung, centhang ijo katon ing ngarep 'Run Program action' sing nuduhake program sukses desain demo.
GUI Demo EDAC
Tur EDAC diwenehake karo GUI sing ramah pangguna, kaya sing ditampilake ing Gambar 7, sing mlaku ing PC host, sing komunikasi karo Kit Pembangunan RTG4. UART digunakake minangka protokol komunikasi dhasar antarane PC inang lan RTG4 Development Kit.
GUI ngemot bagean ing ngisor iki:
- Pilihan port COM kanggo netepake sambungan UART kanggo RTG4 FPGA karo 115200 baud rate.
- Tulis Memori LSRAM: Kanggo nulis data 8-bit menyang alamat memori LSRAM sing ditemtokake.
- Scrubbing Memori: Kanggo ngaktifake utawa mateni logika scrubbing.
- LSRAM Memory Read: Kanggo maca data 8-bit saka alamat memori LSRAM kasebut.
- Error Count: Nampilake count kesalahan lan menehi pilihan kanggo mbusak nilai counter menyang nul.
- Count Error 1-bit: Nampilake count kesalahan 1-bit lan menehi pilihan kanggo mbusak nilai counter menyang nol.
- Count Error 2-bit: Nampilake count kesalahan 2-bit lan menehi pilihan kanggo mbusak nilai counter menyang nol.
- Data Log: Nyedhiyakake informasi status kanggo saben operasi sing ditindakake nggunakake GUI.
Mlaku Demo
Langkah-langkah ing ngisor iki nerangake carane mbukak demo:
- Menyang \v1.2.2\v1.2.2\Exe lan klik kaping pindho EDAC_GUI.exe kaya sing ditampilake ing Gambar 8.
- Pilih port COM31 saka dhaptar banjur klik Sambungake.
Injeksi lan koreksi kesalahan bit tunggal
- Ing desain Libero sing kasedhiya, klik kaping pindho ing Desain SmartDebug ing aliran desain.
- Ing SmartDebug GUI, klik Debug FPGA Array.
- Ing jendhela Debug FPGA Array, pindhah menyang tab Memory Blocks. Iku bakal nuduhake pemblokiran LSRAM ing desain karo logis lan fisik view. Blok logis ditampilake nganggo lambang L, lan blok fisik ditampilake nganggo lambang P.
- Pilih instance blok fisik lan klik-tengen Tambah.
- Kanggo maca blok memori, klik Waca Blok.
- Inject 1 kesalahan dicokot ing data 8 dicokot ing sembarang lokasi LSRAM nganti ambane 256, minangka ditampilake ing tokoh ing ngisor iki ngendi 1 kesalahan dicokot nyuntikaken ing 0. lokasi LSRAM.
- Klik Tulis Blok kanggo nulis data sing diowahi menyang lokasi sing dituju.
- Pindhah menyang GUI EDAC lan ketik kolom Alamat ing bagean LSRAM Memory Read lan klik Waca, kaya sing ditampilake ing gambar ing ngisor iki.
- Mirsani 1 Bit Error Count lan Waca Data kolom ing GUI. Nilai count kesalahan mundhak 1.
Kolom Data Waca nampilake data sing bener amarga EDAC mbenerake bit kesalahan.
Cathetan: Yen scrubbing memori ora diaktifake, banjur count kesalahan ditambahake kanggo saben diwaca saka alamat LSRAM padha amarga nyebabake kesalahan 1-dicokot.
Injeksi lan Deteksi kesalahan bit pindho
- Tindakake langkah 1 nganti langkah 5 kaya sing diwenehake ing injeksi lan koreksi kesalahan bit tunggal, kaca 10.
- Inject kesalahan 2-dicokot ing data 8-dicokot ing sembarang lokasi LSRAM nganti ambane 256, minangka ditampilake ing tokoh ngisor ngendi kesalahan 2-dicokot nyuntikaken ing lokasi 'A' LSRAM.
- Klik Tulis Blok kanggo nulis data sing diowahi menyang lokasi sing dituju.
- Pindhah menyang GUI EDAC lan ketik kolom Alamat ing bagean LSRAM Memory Read lan klik Waca, kaya sing ditampilake ing gambar ing ngisor iki.
- Mirsani kolom Error Count 2-bit lan Waca Data ing GUI. Nilai count kesalahan mundhak 1.
Kolom Data Waca nampilake data sing rusak.
Kabeh tumindak sing ditindakake ing RTG4 mlebu ing bagean Konsol Serial GUI.
Kesimpulan
Tur iki nyoroti kemampuan EDAC saka kenangan RTG4 LSRAM. Kesalahan 1-bit utawa kesalahan 2-bit dikenalaké liwat SmartDebug GUI. Koreksi kesalahan 1-bit lan deteksi kesalahan 2-bit diamati nggunakake GUI EDAC.
Programming Piranti Nggunakake FlashPro Express
Bagean iki nerangake carane program piranti RTG4 karo proyek program file nggunakake FlashPro Express.
Kanggo program piranti, tindakake langkah ing ngisor iki:
- Priksa manawa setelan jumper ing papan padha karo sing kadhaptar ing Tabel 3 saka UG0617:
Pandhuan Pangguna Kit Pangembangan RTG4. - Opsional, jumper J32 bisa disetel kanggo nyambungake pin 2-3 nalika nggunakake FlashPro4, FlashPro5, utawa FlashPro6 eksternal, tinimbang setelan jumper standar kanggo nggunakake FlashPro5 sing dipasang.
Cathetan: Ngalih sumber daya, SW6 kudu dipateni nalika nggawe sambungan jumper. - Sambungake kabel sumber daya menyang konektor J9 ing Papan.
- Power ON saklar sumber daya SW6.
- Yen nggunakake FlashPro5 ditempelake, sambungake kabel USB menyang konektor J47 lan PC inang.
Utawa, yen nggunakake programmer eksternal, sambungake kabel pita menyang JTAG header J22 lan nyambung programmer kanggo PC inang. - Ing PC host, bukak piranti lunak FlashPro Express.
- Klik New utawa pilih New Job Project saka FlashPro Express Job saka menu Project kanggo nggawe proyek proyek anyar, kaya sing ditampilake ing gambar ing ngisor iki.
- Ketik ing ngisor iki ing Proyek Proyek Anyar saka kothak dialog Proyek FlashPro Express:
- lowongan programming file: Klik Telusuri, banjur navigasi menyang lokasi .job file dumunung lan pilih ing file. Lokasi standar yaiku: \rtg4_dg0703_df\Programming_Job
- Lokasi proyek proyek FlashPro Express: Klik Telusur lan navigasi menyang lokasi proyek FlashPro Express sing dikarepake.
- Klik OK. Pemrograman sing dibutuhake file wis dipilih lan siap diprogram ing piranti.
- Jendhela FlashPro Express bakal katon, konfirmasi yen nomer programmer katon ing kolom Programmer. Yen ora, konfirmasi sambungan papan banjur klik Refresh/Rescan Programmer.
- Klik RUN. Nalika piranti wis diprogram kanthi sukses, status RUN PASSED ditampilake kaya ing gambar ing ngisor iki.
- Nutup FlashPro Express utawa klik Exit ing tab Project.
Mbukak Script TCL
Skrip TCL kasedhiya ing desain files folder ing direktori TCL_Scripts. Yen perlu, desain
aliran bisa direproduksi saka Implementasi Desain nganti generasi proyek file.
Kanggo mbukak TCL, tindakake langkah ing ngisor iki:
- Bukak piranti lunak Libero
- Pilih Project > Execute Script….
- Klik Telusuri banjur pilih script.tcl saka direktori TCL_Scripts sing diundhuh.
- Klik Run.
Sawise eksekusi skrip TCL sukses, proyek Libero digawe ing direktori TCL_Scripts.
Kanggo informasi luwih lengkap babagan skrip TCL, deleng rtg4_dg0703_df/TCL_Scripts/readme.txt.
Deleng Libero® SoC TCL Command Reference Guide kanggo rincian liyane babagan printah TCL. Hubungi Dhukungan Teknis kanggo pitakon apa wae nalika mbukak skrip TCL.
Microsemi ora menehi garansi, perwakilan, utawa jaminan babagan informasi sing ana ing kene utawa kesesuaian produk lan layanan kanggo tujuan tartamtu, uga Microsemi ora nanggung tanggung jawab apa wae sing muncul saka aplikasi utawa panggunaan produk utawa sirkuit apa wae. Produk sing didol ing ngisor iki lan produk liyane sing didol dening Microsemi wis diuji kanthi winates lan ora bisa digunakake bebarengan karo peralatan utawa aplikasi sing penting banget. Sembarang spesifikasi kinerja dipercaya bisa dipercaya nanging ora diverifikasi, lan Panuku kudu nindakake lan ngrampungake kabeh kinerja lan pangujian produk liyane, piyambak lan bebarengan karo, utawa dipasang ing, produk pungkasan. Panuku ora bakal ngandelake data lan spesifikasi kinerja utawa paramèter sing diwenehake dening Microsemi. Tanggung jawab Panuku kanggo nemtokake kesesuaian produk lan nyoba lan verifikasi sing padha. Informasi sing diwenehake dening Microsemi ing ngisor iki diwenehake "kaya, ing ngendi" lan kabeh kesalahane, lan kabeh risiko sing ana gandhengane karo informasi kasebut tanggung jawab kanggo Pembeli. Microsemi ora menehi, kanthi tegas utawa implisit, marang pihak apa wae hak paten, lisensi, utawa hak IP liyane, apa sing ana gandhengane karo informasi kasebut dhewe utawa apa wae sing diterangake dening informasi kasebut. Informasi sing disedhiyakake ing dokumen iki minangka kepemilikan Microsemi, lan Microsemi nduweni hak kanggo ngganti informasi ing dokumen iki utawa produk lan layanan apa wae tanpa kabar.
Babagan Microsemi Microsemi, anak perusahaan saka Microchip Technology Inc. (Nasdaq: MCHP), nawakake portofolio komprehensif semikonduktor lan solusi sistem kanggo aerospace & pertahanan, komunikasi, pusat data lan pasar industri. Produk kalebu sirkuit terpadu sinyal campuran analog kinerja dhuwur lan radiasi, FPGA, SoC lan ASIC; produk manajemen daya; piranti wektu lan sinkronisasi lan solusi wektu sing tepat, nyetel standar wektu ing donya; piranti pangolahan swara; solusi RF; komponen diskrèt; solusi panyimpenan lan komunikasi perusahaan, teknologi keamanan lan anti-t skalabelampproduk er; solusi Ethernet; Power-over-Ethernet ICs lan midspans; uga kemampuan lan layanan desain khusus. Sinau luwih lengkap ing www.microsemi.com.
Markas Microsemi
One Enterprise, Aliso Viejo,
CA 92656 AS
Ing AS: +1 800-713-4113
Ing njaba AS: +1 949-380-6100
Penjualan: +1 949-380-6136
Fax: +1 949-215-4996
Email: sales.support@microsemi.com
www.microsemi.com
©2021 Microsemi, anak perusahaan saka Microchip Technology Inc. Kabeh hak dilindhungi undhang-undhang. Microsemi lan logo Microsemi minangka merek dagang kadhaptar saka Microsemi Corporation. Kabeh merek dagang lan merek layanan liyane minangka properti saka sing nduweni.
Microsemi Proprietary DG0703 Revisi 4.0
Dokumen / Sumber Daya
![]() |
Deteksi lan koreksi kesalahan MICROCHIP ing Memori RTG4 LSRAM [pdf] Pandhuan pangguna Demo DG0703, Deteksi Kesalahan lan Koreksi ing Memori LSRAM RTG4, Deteksi lan Koreksi ing Memori LSRAM RTG4, Memori LSRAM RTG4, Memori LSRAM |