Sejujurnya, garis antara keduanya hampir hilang saat ini dan ada prosesor yang dapat diklasifikasikan sebagai keduanya (AD Blackfin misalnya).
Secara umum:
Mikrokontroler adalah prosesor matematika integer dengan sub sistem interupsi. Beberapa mungkin memiliki unit perkalian perangkat keras, beberapa tidak, dll. Intinya adalah mereka dirancang untuk matematika sederhana, dan sebagian besar untuk mengontrol perangkat lain.
DSP adalah prosesor yang dioptimalkan untuk pemrosesan sinyal streaming. Mereka sering memiliki instruksi khusus yang mempercepat tugas-tugas umum seperti bertambah banyak dalam satu instruksi. Mereka juga sering memiliki instruksi vektor atau SIMD lainnya. Secara historis mereka tidak mengganggu sistem berbasis dan dioperasikan dengan sistem memori non-standar dioptimalkan untuk tujuan mereka membuat mereka lebih sulit untuk diprogram. Mereka biasanya dirancang untuk beroperasi dalam satu lingkaran besar yang memproses aliran data. DSP dapat dirancang sebagai integer, titik tetap atau prosesor titik mengambang.
Secara historis jika Anda ingin memproses stream audio, stream video, melakukan kontrol motorik cepat, apa pun yang diperlukan memproses aliran data dengan kecepatan tinggi Anda akan melihat ke DSP.
Jika Anda ingin mengontrol beberapa tombol, mengukur suhu, menjalankan LCD karakter, mengontrol IC lain yang memproses sesuatu, Anda akan menggunakan mikrokontroler.
Hari ini, Anda sebagian besar menemukan prosesor tipe mikrokontroler tujuan umum dengan instruksi yang dibangun seperti DSP atau dengan co-prosesor chip untuk menangani data streaming atau operasi DSP lainnya. Anda tidak melihat DSP murni banyak digunakan kecuali di industri tertentu.
Pasar prosesor jauh lebih luas dan lebih buram daripada biasanya. Sebagai contoh saya hampir tidak mempertimbangkan ARM cortex-A8 SoC mikro-controller tetapi mungkin cocok dengan definisi standar, terutama dalam paket PoP.
EDIT: Figured saya akan menambahkan sedikit untuk menjelaskan kapan / di mana saya telah menggunakan DSP bahkan pada hari-hari prosesor aplikasi.
Produk terbaru yang saya rancang sedang melakukan pemrosesan audio dengan saluran input X dan saluran output X per 'zona'. Penggunaan yang dimaksudkan untuk produk berarti bahwa sering kali duduk di sana melakukan hal tersebut, memproses saluran audio selama bertahun-tahun tanpa ada yang menyentuhnya. Pemrosesan audio terdiri dari berbagai filter dan fungsi akustik. Sistem ini juga "hot plugable" dengan kemampuan untuk menambahkan beberapa 'zona' independen semua dalam satu kotak. Itu total 3 desain PCB (mainboard, backplane dan plug in module) dan backplane didukung 4 plug in modules. Proyek yang cukup menyenangkan seperti yang saya lakukan solo, saya harus melakukan desain sistem, skema, tata letak PCB dan firmware.
Sekarang saya bisa melakukan semuanya dengan satu inti ARM besar, saya hanya membutuhkan sekitar 50MIPS kerja DSP pada 24bit angka titik tetap per zona. Tetapi karena saya tahu sistem ini akan beroperasi untuk waktu yang sangat lama dan tahu sangat penting bahwa itu tidak pernah klik atau pop atau semacamnya. Saya memilih untuk mengimplementasikannya dengan DSP daya rendah per zona dan mikrokontroler PIC tunggal yang memainkan peran manajemen sistem. Dengan cara ini bahkan jika salah satu fungsi UC jatuh, mungkin serangan DDOS pada port Ethernet-nya, DSP akan dengan senang hati terus menjauh dan kemungkinan tidak ada yang akan tahu.
Jadi mikrokontroler berperan menjalankan 2 karakter garis LCD, beberapa tombol, pemantauan suhu dan kontrol kipas (ada juga beberapa amplifier audio daya yang cukup tinggi di setiap papan) dan bahkan melayani halaman web gaya AJAX melalui ethernet. Itu juga mengelola DSP melalui koneksi serial.
Jadi itulah situasi di mana bahkan pada hari-hari di mana saya bisa menggunakan inti ARM tunggal untuk melakukan segalanya, desainnya menentukan IC pemrosesan sinyal khusus.
Area lain tempat saya mengalami DSP:
* Audio Kelas Atas - Receiver yang sangat kelas atas dan perlengkapan mixing dan pemrosesan kualitas konser
* Pemrosesan Radar - Saya juga menggunakan core ARM untuk ini di aplikasi low-end.
* Pemrosesan Sonar
* Visi komputer waktu nyata
Untuk sebagian besar, ujung rendah dan menengah dari ruang audio / video / serupa telah diambil alih oleh prosesor aplikasi yang menggabungkan CPU tujuan umum dengan mesin co-proc offload untuk berbagai aplikasi.