Selasa, 24 Juli 2018

bootlodere

Boot Loader Dukungan - ReadWhile-Write

SelfProgramming
Dukungan Boot Loader menyediakan mekanisme Read-While-Write Self-Programming yang nyata untuk mengunduh dan mengunggah kode program oleh MCU itu sendiri. Fitur ini memungkinkan aplikasi yang fleksibel,pembaruan perangkat lunak yang dikontrol oleh MCU menggunakan program Boot Loader Flash,Program Boot Loader dapat menggunakan antarmuka data yang tersedia dan protokol yang terkait untuk membaca kode dan tulis (program) kode itu ke dalam memori Flash, atau baca kode dari memori Program.
Kode program dalam bagian Boot Loader memiliki kemampuan untuk menulis ke keseluruhan Flash, termasuk Memori Boot Loader. Maka, Boot Loader dapat memodifikasi dirinya sendiri, dan itu juga dapat menghapus dirinya sendiri dari kode jika fitur tersebut tidak diperlukan lagi. Ukuran Boot Loader Memory dapat dikonfigurasi dengan sekering dan Boot Loader memiliki dua set Boot terpisah
Kunci Bits yang dapat diatur secara mandiri. Ini memberi pengguna fleksibilitas yang unik untuk memilih yang berbeda tingkat perlindungan.

Fitur Boot Loader

• Read-While-Write Self-Programming
• Ukuran Memori Boot Fleksibel
• Keamanan Tinggi (Booting Lock Bits Terpisah untuk Perlindungan Fleksibel)
• Fuse Terpisah untuk Memilih Atur Ulang Vektor
• Halaman Dioptimalkan (1) Ukuran
• Kode Algoritma Efisien
• Dukungan Baca-Ubah-Tulis yang Efisien

Catatan: 1. Halaman adalah bagian dalam Flash yang terdiri dari beberapa byte (lihat Tabel 89 di halaman 218) yang digunakan selama pemrograman. Organisasi halaman tidak mempengaruhi operasi normal.

Bagian Aplikasi dan Boot Loader Flash:
Memori Flash diatur dalam dua bagian utama, bagian Aplikasi dan Boot
bagian loader (lihat Gambar 102 di halaman 204). Ukuran bagian yang berbeda dikonfigurasikan oleh fuse BOOTSZ seperti yang ditunjukkan pada Tabel 82 di halaman 213 dan Gambar 102 di halaman 204. Keduanya bagian dapat memiliki tingkat perlindungan yang berbeda karena memiliki beberapa Kunci Bits yang berbeda.Bagian aplikasi adalah bagian dari Flash yang digunakan untuk menyimpan kode aplikasi.Tingkat perlindungan untuk bagian aplikasi dapat dipilih oleh aplikasi Boot Lock Bits(Boot Lock Bits 0), lihat Tabel 78 di halaman 205. Bagian aplikasi tidak dapat menyimpan Boot apa pun Kode pemuat karena instruksi SPM dinonaktifkan ketika dijalankan dari bagian aplikasi.
Bagian BLS - Boot Loader
Sementara bagian aplikasi digunakan untuk menyimpan kode aplikasi, perangkat lunak Boot Loader harus ditempatkan di BLS karena instruksi SPM dapat memulai pemrograman kapan mengeksekusi dari BLS saja. Instruksi SPM dapat mengakses seluruh Flash, termasuk BLS sendiri. Tingkat perlindungan untuk bagian Boot Loader dapat dipilih oleh Boot Loader Kunci Bits (Boot Lock Bits 1), lihat Tabel 79 di halaman 205.

Bagian Baca-Sementara-Tulis dan Tidak Ada ReadWhile-Write Flash
Apakah CPU mendukung Read-While-Write atau jika CPU dihentikan selama perangkat lunak Boot Loader pembaruan tergantung pada alamat mana yang sedang diprogram. Selain keduanya bagian yang dapat dikonfigurasi oleh BOOTSZ Fuses seperti yang dijelaskan di atas, Flash juga dibagi menjadi dua bagian tetap, bagian Read-While-Write (RWW) dan No Read-WhileWrite (NRWW). Batas antara bagian RWW dan NRWW diberikan pada Tabel 83 di halaman 214 dan Gambar 102 di halaman 204. Perbedaan utama antara dua bagian adalah:
• Saat menghapus atau menulis halaman yang terletak di dalam bagian RWW, bagian NRWW dapat
baca selama operasi
• Saat menghapus atau menulis halaman yang terletak di dalam bagian NRWW, CPU dihentikan selama seluruh operasi
Perhatikan bahwa perangkat lunak pengguna tidak dapat membaca kode apa pun yang terletak di dalam bagian RWW selama operasi perangkat lunak Boot Loader. Bagian "Baca-Sementara-Menulis" sintaks merujuk ke mana bagian yang sedang diprogram (dihapus atau ditulis), bukan bagian mana yang sebenarnya baca selama pembaruan perangkat lunak Boot Loader.

Bagian RWW - Baca-Sementara Tulis
Jika pembaruan perangkat lunak Boot Loader memprogram halaman di dalam bagian RWW, itu mungkin untuk membaca kode dari Flash, tetapi hanya kode yang terletak di bagian NRWW. Selama sedang berlangsung pemrograman, perangkat lunak harus memastikan bahwa bagian RWW tidak pernah dibaca. Jika itu perangkat lunak pengguna mencoba membaca kode yang terletak di dalam bagian RWW (yaitu, oleh panggilan / rjmp / lpm atau interupsi) selama pemrograman, perangkat lunak mungkin berakhir di tempat yang tidak dikenal negara. Untuk menghindari hal ini, interupsi harus dinonaktifkan atau dipindahkan ke Bagian Boot Loader. Bagian Boot Loader selalu berada di bagian NRWW. Bagian RWW Sibuk bit (RWWSB) dalam Register Kontrol memori Program Penyimpanan (SPMCR) akan dibaca sebagai logis satu selama bagian RWW diblokir untuk membaca. Setelah pemrograman selesai, RWWSB harus dibersihkan oleh perangkat lunak sebelum membaca kode yang terletak di bagian RWW. Lihat “Simpan Program Daftar Kontrol Memori SPMCR” di halaman 206. untuk detail tentang cara membersihkan RWWSB.

Bagian NRWW - Tidak Ada ReadWhile-Write
Kode yang terletak di bagian NRWW dapat dibaca saat perangkat lunak Boot Loader diperbarui halaman di bagian RWW. Ketika kode Boot Loader memperbarui bagian NRWW, CPU dihentikan selama seluruh halaman dihapus atau operasi penulisan halaman. Kunci Boot Loader Bits Jika tidak diperlukan kemampuan Boot Loader, seluruh Flash tersedia untuk kode aplikasi. Itu Boot Loader memiliki dua set terpisah Boot Bit Kunci yang dapat diatur secara mandiri. Ini memberi pengguna memiliki fleksibilitas yang unik untuk memilih tingkat perlindungan yang berbeda. Pengguna dapat memilih:
• Untuk melindungi seluruh Flash dari pembaruan perangkat lunak oleh MCU
• Untuk melindungi hanya bagian Boot Loader Flash dari pembaruan perangkat lunak oleh MCU
• Untuk melindungi hanya bagian Aplikasi Flash dari pembaruan perangkat lunak oleh MCU
• Perbolehkan pembaruan perangkat lunak di seluruh Flash
Lihat Tabel 78 di halaman 205 dan Tabel 79 di halaman 205 untuk rincian lebih lanjut. Booting Kunci Bits bisa diatur dalam perangkat lunak dan dalam mode Pemrograman Serial atau Paralel, tetapi mereka dapat dihapus oleh chip hapus hanya perintah. Kunci Tulis umum (Lock bit mode 2) tidak mengontrol pemrograman memori Flash dengan instruksi SPM. Demikian pula, Kunci Baca / Tulis umum (Kunci bit mode 3) tidak mengontrol pembacaan atau penulisan oleh LPM / SPM.

Kunci Boot Loader Bits
Jika tidak diperlukan kemampuan Boot Loader, seluruh Flash tersedia untuk kode aplikasi. Itu Boot Loader memiliki dua set terpisah Boot Bit Kunci yang dapat diatur secara mandiri. Ini memberi pengguna memiliki fleksibilitas yang unik untuk memilih tingkat perlindungan yang berbeda. Pengguna dapat memilih:
• Untuk melindungi seluruh Flash dari pembaruan perangkat lunak oleh MCU
• Untuk melindungi hanya bagian Boot Loader Flash dari pembaruan perangkat lunak oleh MCU
• Untuk melindungi hanya bagian Aplikasi Flash dari pembaruan perangkat lunak oleh MCU
• Perbolehkan pembaruan perangkat lunak di seluruh Flash
Lihat Tabel 78 di halaman 205 dan Tabel 79 di halaman 205 untuk rincian lebih lanjut. 

Table 78. Boot Lock Bit0 Protection Modes (Application Section)(1)
________________________________________________________________________________
  BLB0 Mode   BLB02 Mode   BLB01 Mode     Protection
------------------------------------------------------------------------------------------------------------------------
     1                         1                        1                  Tidak ada batasan untuk SPM atau LPM yang                                                                                          mengakses bagian Aplikasi 
     2                         1                        0                  SPM tidak diizinkan untuk menulis ke bagian                                                                                          Aplikasi 
     3                         0                        0                  SPM tidak diizinkan untuk menulis ke bagian                                                                                          Aplikasi, dan LPM yang mengeksekusi dari bagian                                                                                  Boot Loader tidak diperbolehkan untuk membaca                                                                                    dari bagian Aplikasi. Jika Interrupt Vectors                                                                                              ditempatkan di bagian Boot Loader, interupsi akan                                                                                  dinonaktifkan saat mengeksekusi dari bagian                                                                                            Aplikasi 
   4                          0                        1                   LPM yang dieksekusi dari bagian Boot Loader tidak                                                                                diperbolehkan untuk membaca dari bagian Aplikasi.                                                                                Jika Interrupt Vectors ditempatkan di bagian Boot                                                                                    Loader, interupsi akan dinonaktifkan saat                                                                                                  mengeksekusi dari bagian 
_________________________________________________________________________________
Booting Kunci Bits bisa diatur dalam perangkat lunak dan dalam mode Pemrograman Serial atau Paralel, tetapi mereka dapat dihapus oleh chip hapus hanya perintah. Kunci Tulis umum (Lock bit mode 2) tidak mengontrol pemrograman memori Flash dengan instruksi SPM. Demikian pula, Kunci Baca / Tulis umum (Kunci bit mode 3) tidak mengontrol pembacaan atau penulisan oleh LPM / SPM.


Tidak ada komentar:

Posting Komentar