Pemrograman Ulang LPC3154 di LPCxpresso


8

Saya bertanya-tanya, apakah itu mungkin memuat lpc3154 di papan LPCExpresso dengan firmware khusus?

Saya melihat chip mendukung boot aman, jadi jika kunci AES diprogram, tidak mungkin tanpa mengetahui kuncinya? Atau ada opsi untuk boot lpc3154 tanpa mengetahui kuncinya? (SD, flash, USB, JTAG ... Apa pun?)

Adakah yang tahu jika kunci memang dimuat?

Hanya membeli lpc3154 baru bukanlah suatu opsi - mereka tidak tersedia di sini, dan waktu menunggu adalah 4 minggu + (dan label harga> dari harga board ini) ...


Tidak ada papan LPCXpresso seperti itu! Satu-satunya prosesor adalah LPC1114, LPC1343 dan LPC1769.
Leon Heller

Nah, LPC3154 ada di masing-masing, di bagian host. :-) Itulah yang ingin saya program ulang. Saya memiliki 2 papan LPCxpresso, dan akan sangat menyenangkan untuk menggunakan kembali chip SRAM 192kb yang berair ...
BarsMonster

1
Belum, satu-satunya jawaban yang saya dapat di forum resmi adalah 'Itu akan keren' :-)
BarsMonster

1
Apakah akan menambah hadiah kecil karena saya pikir ini adalah pertanyaan yang bagus, tetapi Anda sendiri tidak kekurangan rep;) ... mungkin menawarkan sedikit jawaban?
tyblu

1
@tyblu: selesai, harus mengakhiri hadiah lain sebelumnya ;-)
BarsMonster

Jawaban:


4

Dari apa yang saya kumpulkan, kunci AES dimuat ke dalam chip. Dan juga mungkin ada pemeriksaan CR232 pada firmware juga atau sekering OTP ditetapkan

sumber

Mendukung boot yang tidak aman dari antarmuka UART dan USB (kelas DFU) selama pengembangan. Setelah kunci AES diprogram dalam OTP, hanya boot aman yang diizinkan melalui UART dan USB.

Ini tidak berarti itu tidak bisa diretas, jika Anda memasukkan waktu ke dalamnya. Saya akan memeriksa untuk melihat apakah pin JTAG telah dinonaktifkan dan mulai dari sana.

beberapa pernyataan menarik dari buku petunjuk

7.1 Kasing penggunaan jalur produksi Pada jalur produksi NXP OTP akan diuji dan diprogram menggunakan JTAG. Dalam mode uji, blok sekering itu sendiri akan diakses secara langsung. Selama pemrograman VPP akan membutuhkan tegangan yang lebih tinggi daripada dalam kasus penggunaan aplikasi. Data tertulis diperiksa kemudian dengan membaca sekering (menggunakan tegangan rendah pada VPP) Pelanggan juga akan memprogram OTP hanya di jalur produksi, di sini pemrograman DFU akan digunakan. Gambar untuk memprogram bit yang dipilih pelanggan dapat dimuat ke perangkat melalui USB.

7.2 Kasus penggunaan aplikasi secara nasional, penting untuk memastikan bahwa register data_15 diperbarui lebih awal selama inisialisasi (dengan kode boot) ini akan mengatur tingkat keamanan. Empat tingkat keamanan diimplementasikan dalam desain:

• Level 0: tidak ada yang dilindungi.

• Level 1: dilindungi kata sandi. Pada level ini, JTAG dapat diaktifkan oleh perangkat lunak setelah urutan kata sandi (tergantung pada aplikasi pelanggan) dengan mengatur bit sticky 'JTAG_EN' di register OTP_con.

• Level 2: Di level ini, akses JTAG dapat diaktifkan menggunakan peralatan uji khusus. Digunakan oleh NXP hanya untuk Analisis Material yang Dikembalikan.

• Level 3: JTAG benar-benar dinonaktifkan dan karenanya chip tersebut benar-benar terkunci.

Pelanggan dapat memprogram tingkat keamanan chip. Untuk level 1, sekering-bit 509 harus diatur. Untuk level 2, sekering-bit 509 dan 510 diatur. Untuk level 3, sekering-bit 509, 510 dan 511 diprogram. Kasus khusus akan bagi pelanggan untuk menonaktifkan penulisan ke sekering, tetapi karena dalam aplikasi tegangan rendah (untuk membaca) akan terhubung ke VPP, menulis tidak akan mungkin pula. Selama aplikasi normal, sekering sudah diprogram pada jalur produksi. Jadi tiga pilihan tetap: menyalin data sekering ke dalam register data, membaca data ini, dan mengatur perlindungan baca. Kode boot akan menyalin data sekering ke dalam register data karena ini diperlukan untuk keamanan dan DRM. Setelah ini, data dapat dibaca dari register data melalui bus APB0 (sesuai dengan pengaturan perlindungan baca).

Sunting: Jika kunci benar-benar dimuat, Anda hanya akan dapat memuat firmware khusus jika Anda memiliki kunci.


1
Keberadaan Level 2 menakutkan. Saya ingin tahu apakah 'alat uji khusus' mengesampingkan persyaratan kata sandi untuk level 1?
Kevin Vermeer

@reemrevnivek, karena banyak orang yang takut dengan kemungkinan ada sejumlah besar chip yang gagal mereka tidak bisa men-debug tanpa itu. Jika Anda menetapkan level 2 Anda tahu apa yang Anda lakukan, sungguh, dalam produk akhir Anda mungkin akan menetapkan level 3. Namun, penelitian yang bagus!
Kortuk

Masih bertanya-tanya apakah kuncinya dimuat ...
BarsMonster

Saya tidak dapat menemukan referensi langsung, menyatakan bahwa kunci telah dimuat tetapi dugaan saya masih ya, hanya karena sifat papan tertutup.
jsolarski

2

Pertanyaan itu dijawab di sini di forum LPCXpresso. Perangkat hanya dapat memuat perangkat lunak DFU dari Code Red.

Dari NXP_USA :

Papan LPC-LINK yang didistribusikan tertanam di LPCXpresso, hanya dapat memuat firmware DFU dari mitra LPCXpresso IDE Code Red kami. Namun, skema LPCXpresso diposting di sini: http://www.embeddedartists.com/products/lpcxpresso/lpc1343_xpr.php?tab=res . Mereka adalah referensi yang berguna untuk desain LPC3154 yang lebih fleksibel yang dapat menerima firmware acak melalui DFU.

LPC3154 tersedia dari Digi-Key dan Mouser .


Ini tidak menjelaskan yang kami tidak dapat memuat firmware pihak ke-3.
BarsMonster

Posting itu terhubung ke utas lain, yang memiliki, di bagian bawah, posting otoritatif dari NXP. Saya akan membantu Anda, dan
Kevin Vermeer

1

Saya telah bereksperimen dengan papan LPCXpresso LPC1114. Tampaknya antarmuka pemrograman (LPC3154) adalah USB Kecepatan Tinggi (480 MHz) dan tampaknya sangat khusus tentang kabel USB yang Anda gunakan. Jika kabel (atau port host) tidak kedudukan tertinggi, itu mungkin sangat tidak stabil, sering crash, dan bahkan mengunci perangkat USB lain pada port root yang sama. Dari telah menulis sejumlah tumpukan USB, tebakan saya adalah tumpukan USB khusus ini tidak terlalu kuat dalam hal penanganan kesalahan dan pengecualian.

Fakta bahwa mereka menggunakan ARM high-end untuk antarmuka JTAG / SWD sederhana menggelikan, bahwa MCU adalah lebih dari $ 13 (di Digikey) terakhir kali saya melihat.

Saya akan merekomendasikan menggunakan antarmuka SWD yang berbeda dan memutuskan yang ada di papan jika Anda mengalami kesulitan. Ini juga harus mengizinkan penggunaan IDE lain (non Code Red) dengan board ini.

(Jika Anda mengalami masalah USB dengan perangkat apa pun (bahkan Kecepatan Penuh 12 MHz) dan Anda menggunakan konektor host USB di depan unit sistem PC, coba gunakan konektor belakang pada MB itu sendiri. Saya telah melihat yang terkenal merek PC dengan kabel yang tidak patuh (dan sangat rapuh) ke bagian depan unit sistem.)

Izzy Aneh

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.