Deteksi dan Koreksi Error MICROCHIP pada Memori LSRAM RTG4
Riwayat Revisi
Riwayat revisi menjelaskan perubahan yang diterapkan dalam dokumen. Perubahan dicantumkan berdasarkan revisi, dimulai dari publikasi terkini.
Revisi 4.0
Berikut ringkasan perubahan yang dilakukan dalam revisi ini.
- Memperbarui dokumen untuk Libero SoC v2021.2.
- Ditambahkan Lampiran 1: Memprogram Perangkat Menggunakan FlashPro Express, halaman 14.
- Menambahkan Lampiran 2: Menjalankan Skrip TCL, halaman 16.
- Menghapus referensi ke nomor versi Libero.
Revisi 3.0
Memperbarui dokumen untuk rilis perangkat lunak Libero v11.9 SP1.
Revisi 2.0
Memperbarui dokumen untuk rilis perangkat lunak Libero v11.8 SP2.
Revisi 1.0
Publikasi pertama dari dokumen ini.
Deteksi dan Koreksi Kesalahan pada Memori RTG4 LSRAM
Desain referensi ini menjelaskan kemampuan deteksi dan koreksi kesalahan (EDAC) dari LSRAM FPGA RTG4™. Dalam lingkungan yang rentan terhadap gangguan tunggal (SEU), RAM rentan terhadap kesalahan sementara yang disebabkan oleh ion berat. Kesalahan ini dapat dideteksi dan diperbaiki dengan menggunakan kode koreksi kesalahan (ECC). Blok RAM RTG4 FPGA memiliki pengontrol EDAC bawaan untuk menghasilkan kode koreksi kesalahan untuk memperbaiki kesalahan 1-bit atau mendeteksi kesalahan 2-bit.
Jika kesalahan 1-bit terdeteksi, pengontrol EDAC mengoreksi bit kesalahan tersebut dan menyetel tanda koreksi kesalahan (SB_CORRECT) ke aktif tinggi. Jika kesalahan 2-bit terdeteksi, pengontrol EDAC menyetel tanda deteksi kesalahan (DB_DETECT) ke aktif tinggi.
Untuk informasi lebih lanjut tentang fungsionalitas RTG4 LSRAM EDAC, lihat UG0574: RTG4 FPGA Fabric
Panduan Pengguna.
Dalam desain referensi ini, kesalahan 1-bit atau kesalahan 2-bit diperkenalkan melalui SmartDebug GUI. EDAC diamati menggunakan antarmuka pengguna grafis (GUI), memanfaatkan antarmuka UART untuk mengakses LSRAM untuk membaca/menulis data, Libero® System-on-Chip (SoC) SmartDebug (JTAG) digunakan untuk memasukkan kesalahan ke dalam memori LSRAM.
Persyaratan Desain
Tabel 1 mencantumkan persyaratan desain referensi untuk menjalankan demo RTG4 LSRAM EDAC.
Tabel 1 • Persyaratan Desain
Perangkat lunak
- SoC Libero
- FlashPro Ekspres
- Debug Cerdas
- Tuan rumah driver PC Driver USB ke UART
Catatan: Libero SmartDesign dan cuplikan layar konfigurasi yang ditampilkan dalam panduan ini hanya untuk tujuan ilustrasi.
Buka desain Libero untuk melihat update terbaru.
Prasyarat
Sebelum Anda memulai:
Unduh dan instal Libero SoC (seperti yang ditunjukkan pada websitus untuk desain ini) pada PC host dari lokasi berikut: https://www.microsemi.com/product-directory/design-resources/1750-libero-soc
Desain Demo
Unduh desain demo files dari Mikrosemi websitus di: http://soc.microsemi.com/download/rsc/?f=rtg4_dg0703_df
Desain demo filetermasuk:
- Proyek Libero SoC
- Pemasang GUI
- Pemrograman files
- Readme.txt file
- TCL_Scripts
Aplikasi GUI pada PC host mengeluarkan perintah ke perangkat RTG4 melalui antarmuka USB-UART. Antarmuka UART ini dirancang dengan CoreUART, yang merupakan IP logika dari katalog IP Libero SoC. IP CoreUART di fabric RTG4 menerima perintah dan mengirimkannya ke logika dekoder perintah. Logika dekoder perintah menerjemahkan perintah baca atau tulis, yang dijalankan menggunakan logika antarmuka memori.
Blok antarmuka memori digunakan untuk membaca/menulis dan memantau tanda kesalahan LSRAM. EDAC internal mengoreksi kesalahan 1-bit saat membaca dari LSRAM dan menyediakan data yang dikoreksi ke antarmuka pengguna tetapi tidak menulis data yang dikoreksi kembali ke LSRAM. LSRAM EDAC bawaan tidak menerapkan fitur scrubbing. Desain demo mengimplementasikan logika scrub, yang memantau tanda koreksi 1-bit dan memperbarui LSRAM dengan data yang dikoreksi jika terjadi kesalahan bit tunggal.
SmartDebug GUI digunakan untuk memasukkan kesalahan 1-bit atau 2-bit ke dalam data LSRAM.
Gambar 1 menunjukkan diagram blok tingkat atas desain demo RTG4 LSRAM EDAC.
Gambar 1 • Diagram Blok Tingkat Atas
Berikut konfigurasi desain demonya:
- LSRAM dikonfigurasi untuk mode ×18 dan EDAC diaktifkan dengan menghubungkan sinyal ECC_EN LSRAM ke tinggi.
Catatan: LSRAM EDAC hanya didukung untuk mode ×18 dan ×36. - IP CoreUART dikonfigurasi untuk berkomunikasi dengan aplikasi PC host pada kecepatan baud 115200.
- RTG4FCCCECALIB_C0 dikonfigurasi untuk mengatur jam CoreUART dan logika fabric lainnya pada 80 MHz.
Fitur
Berikut ini adalah fitur desain demo:
- Membaca dan menulis ke LSRAM
- Suntikkan kesalahan 1-bit dan 2-bit menggunakan SmartDebug
- Menampilkan nilai hitungan kesalahan 1-bit dan 2-bit
- Ketentuan untuk menghapus nilai jumlah kesalahan
- Mengaktifkan atau menonaktifkan logika scrubbing memori
Keterangan
Desain demo ini melibatkan pelaksanaan tugas-tugas berikut:
- Menginisialisasi dan mengakses LSRAM
Logika antarmuka memori yang diimplementasikan dalam logika fabric menerima perintah inisialisasi dari GUI dan menginisialisasi 256 lokasi memori pertama LSRAM dengan data tambahan. Ia juga melakukan operasi baca dan tulis ke 256 lokasi memori LSRAM dengan menerima alamat dan data dari GUI. Untuk operasi baca, desain mengambil data dari LSRAM dan menyediakannya ke GUI untuk ditampilkan. Harapannya adalah desain tidak menimbulkan kesalahan sebelum menggunakan SmartDebug.
Catatan: Lokasi memori yang tidak diinisialisasi mungkin memiliki nilai acak, dan SmartDebug mungkin menampilkan kesalahan bit tunggal atau ganda di lokasi tersebut.
- Menyuntikkan kesalahan 1-bit atau 2-bit
SmartDebug GUI digunakan untuk memasukkan kesalahan 1 bit atau 2-bit ke lokasi memori yang ditentukan LSRAM. Operasi berikut dilakukan menggunakan SmartDebug untuk memasukkan kesalahan 1-bit dan 2-bit ke LSRAM:- Buka SmartDebug GUI, klik Debug FPGA Array.
- Buka tab Memory Blocks, pilih memory instance, dan klik kanan Add.
- Untuk membaca blok memori, klik Baca Blok.
- Menyuntikkan kesalahan bit tunggal atau bit ganda ke lokasi mana pun di LSRAM dengan kedalaman tertentu.
- Untuk menulis ke lokasi yang diubah, klik Tulis Blok.
Selama operasi baca dan tulis LSRAM melalui SmartDebug (JTAG), pengontrol EDAC dilewati dan tidak menghitung bit ECC untuk operasi penulisan pada langkah e.
- Penghitungan Kesalahan
Penghitung 8-bit digunakan untuk memberikan penghitungan kesalahan dan dirancang ke dalam logika fabric untuk menghitung kesalahan 1-bit atau 2-bit. Logika dekoder perintah memberikan nilai hitungan ke GUI saat menerima perintah dari GUI.
Struktur Pencatatan Jam Kerja
Dalam desain demo ini, terdapat satu domain jam. Osilator internal 50 MHz menggerakkan RTG4FCCC, yang selanjutnya menggerakkan RTG4FCCCECALIB_C0. RTG4FCCCECALIB_C0 menghasilkan jam 80 MHz yang menyediakan sumber jam ke modul COREUART, cmd_decoder, TPSRAM_ECC, dan RAM_RW.
Gambar berikut menunjukkan struktur pencatatan jam kerja dari desain demo.
Gambar 2 • Struktur Pencatatan Jam
Atur Ulang Struktur
Dalam desain demo ini, sinyal reset ke modul COREUART, cmd_decoder, dan RAM_RW disediakan melalui port LOCK RTG4FCCCECALIB_C0. Gambar berikut menunjukkan struktur reset desain demo.
Gambar 3 • Struktur Reset
Menyiapkan Desain Demo
Bagian berikut menjelaskan cara menyiapkan Kit Pengembangan RTG4 dan GUI untuk menjalankan desain demo.
Pengaturan Jumper
- Hubungkan jumper pada RTG4 Development Kit, seperti yang ditunjukkan pada Tabel 2.
Tabel 2 • Pengaturan JumperPeloncat Sematkan (Dari) Sematkan (Ke) Komentar J11, J17, J19, J21, J23, J26, J27, J28 1 2 Bawaan J16 2 3 Bawaan J32 1 2 Bawaan J33 1 3 Bawaan 2 4 Catatan: Matikan saklar catu daya, SW6, saat menyambungkan jumper.
- Hubungkan kabel USB (kabel mini USB ke USB Tipe-A) ke J47 dari Kit Pengembangan RTG4 dan ujung kabel lainnya ke port USB pada PC host.
- Pastikan driver jembatan USB ke UART terdeteksi secara otomatis. Hal ini dapat diverifikasi di pengelola perangkat PC host.
Gambar 4 menunjukkan properti port serial USB 2.0 dan konverter serial COM31 dan USB C yang terhubung.
Gambar 4 • Driver USB ke UART Bridge
Catatan: Jika driver jembatan USB ke UART tidak diinstal, unduh dan instal driver dari www.microsemi.com//documents/CDM_2.08.24_WHQL_Certified.zip
Gambar 5 menunjukkan pengaturan papan untuk menjalankan demo EDAC pada Kit Pengembangan RTG4.
Memprogram Desain Demo
- Luncurkan perangkat lunak Libero SOC.
- Untuk memprogram Kit Pengembangan RTG4 dengan pekerjaan file disediakan sebagai bagian dari desain filemenggunakan perangkat lunak FlashPro Express, lihat Lampiran 1: Memprogram Perangkat Menggunakan FlashPro Express, halaman 14.
Catatan: Setelah pemrograman selesai dengan pekerjaan file melalui perangkat lunak FlashPro Express, lanjutkan ke EDAC Demo GUI, halaman 9. Jika tidak, lanjutkan ke langkah berikutnya. - Dalam alur desain Libero, klik tindakan Jalankan Program.
- Setelah Pemrograman selesai, tanda centang hijau muncul di depan 'Tindakan Jalankan Program' yang menunjukkan keberhasilan pemrograman desain demo.
GUI Demo EDAC
Demo EDAC dilengkapi dengan GUI yang mudah digunakan, seperti yang ditunjukkan pada Gambar 7, yang berjalan pada PC host, yang berkomunikasi dengan Kit Pengembangan RTG4. UART digunakan sebagai protokol komunikasi yang mendasari antara PC host dan Kit Pengembangan RTG4.
GUI berisi bagian berikut:
- Pemilihan port COM untuk membuat koneksi UART ke RTG4 FPGA dengan baud rate 115200.
- LSRAM Memory Write: Untuk menulis data 8-bit ke alamat memori LSRAM yang ditentukan.
- Memory Scrubbing: Untuk mengaktifkan atau menonaktifkan logika scrubbing.
- LSRAM Memory Read: Untuk membaca data 8-bit dari alamat memori LSRAM yang ditentukan.
- Jumlah Kesalahan: Menampilkan jumlah kesalahan dan memberikan opsi untuk menghapus nilai penghitung ke nol.
- Jumlah Kesalahan 1-bit: Menampilkan jumlah kesalahan 1-bit dan memberikan opsi untuk menghapus nilai penghitung ke nol.
- Jumlah Kesalahan 2-bit: Menampilkan jumlah kesalahan 2-bit dan memberikan opsi untuk menghapus nilai penghitung ke nol.
- Data Log: Memberikan informasi status untuk setiap operasi yang dilakukan menggunakan GUI.
Menjalankan Demo
Langkah-langkah berikut menjelaskan cara menjalankan demo:
- Pergi ke \v1.2.2\v1.2.2\Exe dan klik dua kali EDAC_GUI.exe seperti yang ditunjukkan pada Gambar 8.
- Pilih port COM31 dari daftar dan klik Hubungkan.
Injeksi dan koreksi kesalahan bit tunggal
- Pada desain Libero yang disediakan, klik dua kali pada Desain SmartDebug di alur desain.
- Di GUI SmartDebug, klik Debug FPGA Array.
- Di jendela Debug FPGA Array, buka tab Memory Blocks. Ini akan menampilkan blok LSRAM dalam desain dengan logika dan fisik view. Blok logika ditunjukkan dengan ikon L, dan blok fisik ditunjukkan dengan ikon P.
- Pilih contoh blok fisik dan klik kanan Tambah.
- Untuk membaca blok memori, klik Baca Blok.
- Menyuntikkan kesalahan 1 bit ke dalam data 8 bit di setiap lokasi LSRAM hingga kedalaman 256, seperti yang ditunjukkan pada gambar berikut di mana kesalahan 1 bit disuntikkan di lokasi ke-0 LSRAM.
- Klik Write Block untuk menulis data yang dimodifikasi ke lokasi yang dituju.
- Buka GUI EDAC dan masukkan kolom Alamat di bagian Baca Memori LSRAM dan klik Baca, seperti yang ditunjukkan pada gambar berikut.
- Amati bidang Jumlah Kesalahan 1 Bit dan Baca Data di GUI. Nilai jumlah kesalahan bertambah 1.
Bidang Baca Data menampilkan data yang benar saat EDAC mengoreksi bit kesalahan.
Catatan: Jika scrubbing memori tidak diaktifkan, maka jumlah kesalahan bertambah untuk setiap pembacaan dari alamat LSRAM yang sama karena menyebabkan kesalahan 1-bit.
Injeksi dan Deteksi kesalahan bit ganda
- Lakukan langkah 1 hingga langkah 5 seperti yang diberikan dalam Injeksi dan koreksi kesalahan bit tunggal, halaman 10.
- Menyuntikkan kesalahan 2-bit ke dalam data 8-bit di lokasi mana pun LSRAM hingga kedalaman 256, seperti yang ditunjukkan pada gambar berikut di mana kesalahan 2-bit disuntikkan di lokasi 'A' LSRAM.
- Klik Write Block untuk menulis data yang dimodifikasi ke lokasi yang dituju.
- Buka GUI EDAC dan masukkan kolom Alamat di bagian Baca Memori LSRAM dan klik Baca, seperti yang ditunjukkan pada gambar berikut.
- Amati kolom Jumlah Kesalahan dan Baca Data 2-bit di GUI. Nilai jumlah kesalahan bertambah 1.
Bidang Baca Data menampilkan data yang rusak.
Semua tindakan yang dilakukan di RTG4 dicatat di bagian Konsol Serial GUI.
Kesimpulan
Demo ini menyoroti kemampuan EDAC dari memori RTG4 LSRAM. Kesalahan 1-bit atau kesalahan 2-bit terjadi melalui SmartDebug GUI. Koreksi kesalahan 1-bit dan deteksi kesalahan 2-bit diamati menggunakan GUI EDAC.
Memprogram Perangkat Menggunakan FlashPro Express
Bagian ini menjelaskan cara memprogram perangkat RTG4 dengan tugas pemrograman file menggunakan FlashPro Express.
Untuk memprogram perangkat, lakukan langkah-langkah berikut:
- Pastikan pengaturan jumper di papan sama dengan yang tercantum di Tabel 3 UG0617:
Panduan Pengguna Kit Pengembangan RTG4. - Secara opsional, jumper J32 dapat diatur untuk menghubungkan pin 2-3 saat menggunakan pemrogram FlashPro4, FlashPro5, atau FlashPro6 eksternal, bukan pengaturan jumper default untuk menggunakan FlashPro5 tertanam.
Catatan: Sakelar catu daya, SW6 harus dimatikan saat melakukan sambungan jumper. - Sambungkan kabel catu daya ke konektor J9 di papan.
- Nyalakan sakelar catu daya SW6.
- Jika menggunakan FlashPro5 tertanam, sambungkan kabel USB ke konektor J47 dan PC host.
Alternatifnya, jika menggunakan pemrogram eksternal, sambungkan kabel pita ke JTAG tajuk J22 dan sambungkan programmer ke PC host. - Di PC host, luncurkan perangkat lunak FlashPro Express.
- Klik Baru atau pilih Proyek Pekerjaan Baru dari Pekerjaan FlashPro Express dari menu Proyek untuk membuat proyek pekerjaan baru, seperti yang ditunjukkan pada gambar berikut.
- Masukkan yang berikut ini di kotak dialog Proyek Pekerjaan Baru dari FlashPro Express Job:
- Pekerjaan pemrograman file: Klik Browse, dan arahkan ke lokasi tempat .job file terletak dan pilih file. Lokasi defaultnya adalah: \rtg4_dg0703_df\Pemrograman_Pekerjaan
- Lokasi proyek pekerjaan FlashPro Express: Klik Telusuri dan navigasikan ke lokasi proyek FlashPro Express yang diinginkan.
- Klik Oke. Pemrograman yang dibutuhkan file dipilih dan siap untuk diprogram di perangkat.
- Akan muncul jendela FlashPro Express, konfirmasikan bahwa nomor pemrogram muncul di bidang Programmer. Jika tidak, konfirmasikan koneksi board dan klik Refresh/Rescan Programmers.
- Klik JALANKAN. Ketika perangkat berhasil diprogram, status RUN PASSED ditampilkan seperti yang ditunjukkan pada gambar berikut.
- Tutup FlashPro Express atau klik Keluar di tab Proyek.
Menjalankan Skrip TCL
Skrip TCL disediakan dalam desain files folder di bawah direktori TCL_Scripts. Jika diperlukan, desainnya
aliran dapat direproduksi dari Implementasi Desain hingga pembuatan pekerjaan file.
Untuk menjalankan TCL, ikuti langkah-langkah di bawah ini:
- Luncurkan perangkat lunak Libero
- Pilih Proyek > Jalankan Skrip….
- Klik Telusuri dan pilih script.tcl dari direktori TCL_Scripts yang diunduh.
- Klik Jalankan.
Setelah eksekusi skrip TCL berhasil, proyek Libero dibuat dalam direktori TCL_Scripts.
Untuk informasi selengkapnya tentang skrip TCL, lihat rtg4_dg0703_df/TCL_Scripts/readme.txt.
Lihat Panduan Referensi Perintah Libero® SoC TCL untuk detail lebih lanjut tentang perintah TCL. Hubungi Dukungan Teknis untuk pertanyaan apa pun yang ditemui saat menjalankan skrip TCL.
Microsemi tidak memberikan jaminan, representasi, atau jaminan mengenai informasi yang terkandung di sini atau kesesuaian produk dan layanannya untuk tujuan tertentu, Microsemi juga tidak bertanggung jawab apa pun yang timbul dari aplikasi atau penggunaan produk atau sirkuit apa pun. Produk yang dijual di bawah ini dan produk lain yang dijual oleh Microsemi telah menjalani pengujian terbatas dan tidak boleh digunakan bersama dengan peralatan atau aplikasi penting misi. Spesifikasi kinerja apa pun diyakini dapat diandalkan tetapi tidak diverifikasi, dan Pembeli harus melakukan dan menyelesaikan semua kinerja dan pengujian produk lainnya, sendiri dan bersama-sama dengan, atau dipasang di, setiap produk akhir. Pembeli tidak boleh mengandalkan data dan spesifikasi kinerja atau parameter apa pun yang disediakan oleh Microsemi. Pembeli bertanggung jawab untuk secara independen menentukan kesesuaian produk apa pun dan menguji serta memverifikasinya. Informasi yang diberikan oleh Microsemi di bawah ini disediakan “sebagaimana adanya, di mana adanya” dan dengan semua kesalahan, dan seluruh risiko yang terkait dengan informasi tersebut sepenuhnya ditanggung oleh Pembeli. Microsemi tidak memberikan, secara eksplisit atau implisit, kepada pihak mana pun hak paten, lisensi, atau hak IP lainnya, baik yang berkaitan dengan informasi itu sendiri atau apa pun yang dijelaskan oleh informasi tersebut. Informasi yang diberikan dalam dokumen ini adalah hak milik Microsemi, dan Microsemi berhak untuk membuat perubahan apa pun pada informasi dalam dokumen ini atau pada produk dan layanan apa pun kapan saja tanpa pemberitahuan.
Tentang Microsemi Microsemi, anak perusahaan yang sepenuhnya dimiliki oleh Microchip Technology Inc. (Nasdaq: MCHP), menawarkan portofolio komprehensif solusi semikonduktor dan sistem untuk ruang angkasa & pertahanan, komunikasi, pusat data, dan pasar industri. Produk-produknya mencakup sirkuit terpadu sinyal campuran analog berkinerja tinggi dan diperkeras radiasi, FPGA, SoC, dan ASIC; produk manajemen daya; perangkat pengaturan waktu dan sinkronisasi serta solusi waktu yang tepat, menetapkan standar waktu dunia; perangkat pengolah suara; solusi RF; komponen terpisah; solusi penyimpanan dan komunikasi perusahaan, teknologi keamanan dan anti-t yang dapat diskalakanampeh produk; solusi Ethernet; IC Power-over-Ethernet dan bentang tengah; serta kemampuan dan layanan desain khusus. Pelajari lebih lanjut di www.microsemi.com.
Markas Mikrosemi
Satu Perusahaan, Aliso Viejo,
CA 92656 AS
Di AS: +1 Telepon: 800-713-4113
Di luar AS: +1 Telepon: 949-380-6100
Penjualan: +1 Telepon: 949-380-6136
Telp: +1 Telepon: 949-215-4996
E-mail: penjualan.dukungan@microsemi.com
www.microsemi.com
© 2021 Microsemi, anak perusahaan yang sepenuhnya dimiliki oleh Microchip Technology Inc. Hak cipta dilindungi undang-undang. Microsemi dan logo Microsemi adalah merek dagang terdaftar dari Microsemi Corporation. Semua merek dagang dan merek layanan lainnya adalah milik dari pemiliknya masing-masing.
Microsemi Kepemilikan DG0703 Revisi 4.0
Dokumen / Sumber Daya
![]() |
Deteksi dan Koreksi Error MICROCHIP pada Memori LSRAM RTG4 [Bahasa Indonesia:] Panduan Pengguna Demo DG0703, Deteksi dan Koreksi Error pada Memori LSRAM RTG4, Deteksi dan Koreksi pada Memori LSRAM RTG4, Memori LSRAM RTG4, Memori LSRAM |