Saya baru saja menyelesaikan proyek menggunakan chip LPC2132, tetapi mengalami masalah dengan menggunakan seluruh 64kb RAM.
Untuk proyek saya berikutnya, saya ingin menggunakan sesuatu yang dapat merujuk pada chip memori eksternal yang jauh lebih besar. ARM macam apa yang bisa melakukan ini dan apa yang harus saya lakukan untuk membuat kedua perangkat berbicara?
Jawaban:
Anda tidak memerlukan MMU untuk memori RAM eksternal, faktor penentu jika Anda memerlukannya adalah masalah yang sama sekali terpisah dari hanya membutuhkan lebih banyak ruang. Jika Anda telah mengkodekan langsung ke logam itu sebenarnya bisa membuat hidup Anda lebih mudah tanpa memiliki MMU. Saya juga ingin mencatat bahwa MMU sebenarnya tidak pernah merupakan komponen eksternal tetapi lebih pada mati SoC.
Anda dapat menemukan ARM SoC di banyak keluarga yang memungkinkan memori eksternal dari ARM7 menyala misalnya NXP LPC2212 Series tidak mengatakan yang terbaik, hanya ARM7 SoC pertama yang muncul di google dengan antarmuka memori eksternal, ada banyak opsi .
Saya akan lebih memperhatikan fitur dari berbagai core dalam keluarga ARM karena Anda dapat menemukan hampir semuanya di SoC dengan pengontrol memori eksternal.
Sekarang untuk jenis memori apa yang Anda butuhkan dan cara membuatnya bekerja, itu tergantung pada SoC yang Anda pilih dan apa memori yang didukung oleh pengontrol memori eksternal. Misalnya ARM7 SoC i linked mendukung SRAM eksternal dan juga flash dan ROM dan mendukung hingga 4 bank 16MB, sehingga Anda dapat mengaitkan flash eksternal dan SRAM pada saat yang sama.
Anda dapat menggunakan RAM dan flash IC yang terpisah, ada juga paket yang disebut MCP (Paket Multi Chip) yang dapat menyertakan flash dan ram dalam 1 paket. Cara Anda memilih perangkat ini tergantung pada banyak faktor, Anda harus lebih spesifik tentang aplikasi Anda.
Seberapa mudah menghubungkan ini tergantung pada kecepatan yang Anda butuhkan. Sebagian besar pengontrol memori eksternal memiliki laju jam yang dapat diprogram. Kecepatan clock antarmuka memori bisa sangat tinggi setidaknya 10MHz dan kemungkinan jauh lebih tinggi. Singkatnya kemungkinan besar Anda tidak melakukan sesuatu seperti ini, Anda perlu merancang PCB dan memberikan perhatian khusus pada masalah integritas sinyal untuk saluran ini.
Taruhan terbaik Anda adalah memilih inti yang ingin Anda mainkan dan temukan salah satu dari banyak papan pengembangan di luar sana dengan memori eksternal di atasnya.
sumber
Seri prosesor STM32 yang lebih besar (inti Cortex-M3 32-bit) memiliki FSMC, yang merupakan Pengontrol Memori Statis Fleksibel. Dengan ini, Anda dapat menghubungkan Flash, RAM, dan periferal memori lainnya seperti LCD dan semacamnya.
Saya dapat merekomendasikan STM32F103ZET6 sebagai tcrosley juga mengatakan, dan Anda bisa mendapatkan papan pengembangan termasuk flash dan SRAM di ebay untuk $ 68 - http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=220619908411
sumber
Saya baru-baru ini memiliki persyaratan yang sama untuk proyek baru, dan memilih STMicro STM32F103ZET6 (ARM 32-bit Cortex-M3), dengan 512K Flash internal dan 64K RAM internal untuk sekitar $ 10 secara kuantitas. Ini memiliki pengontrol memori yang dapat mengatasi hingga 64MB memori eksternal (26 bit alamat). Tersedia dalam paket LQFP 144-pin. (Saya tidak suka menggunakan BGA untuk prototipe.) Saya akan menghubungkannya dengan 2MB Cypress SRAM, tanpa lem lain yang diperlukan (tidak ada multiplexing).
sumber
Mungkin Atmel AT91SAM9G20 ?
Ini sedikit binatang (paket BGA 217-pin), tapi ini harga yang bagus. Jika Anda mencari sesuatu yang sedikit lebih ramah manusia, mungkin coba Atmel AT91M42800A . Saya pikir itu MCU terkecil yang memiliki perangkat keras memori eksternal, setidaknya dari Atmel. Ini adalah paket LQFP 144-pin.
Atmel memiliki pemilih parametrik: http://www.atmel.com/dyn/products/param_table_v2.asp?family_id=605&OrderBy=part_no&Direction=ASC
(Kurasa aku harus menambahkan bahwa aku tidak bekerja untuk Atmel; Aku hanya terbiasa dengan barang-barang mereka.)
sumber