Saya belum menggunakan chip DSP. Yang saya tahu adalah bahwa arsitektur mereka sedemikian rupa sehingga mereka dapat melakukan perhitungan dengan cukup cepat, biasanya dalam satu siklus jam, mereka memiliki instruksi yang bertambah banyak dalam set instruksi mereka dan mereka memiliki DMA sehingga CPU tidak perlu membuang waktu yang berharga untuk memindahkan data. sekitar. Saya pikir ada lebih dari itu, tetapi ini adalah beberapa poin dasar.
Saya dapat melihat bahwa Microchip memiliki dsPIC yang merupakan lini chip DSP mereka. Tidak bisakah kita menggunakan PIC18 atau PIC32 yang juga memiliki pengganda untuk melakukan DSP juga? Bagaimana dsPIC berbeda dari PIC normal?
Pertanyaan utama saya adalah ini, Mengapa kita perlu memiliki sesuatu yang terpisah dan berbeda yang disebut chip DSP dan tidak mengintegrasikan kemampuan perhitungan unit floating point presisi tinggi pada semua mikrokontroler? Tentunya dengan teknologi proses yang kita miliki sekarang, ini seharusnya tidak memakan banyak ruang.
Juga, bagaimana saya tahu bahwa saya perlu menggunakan chip DSP dalam proyek saya daripada mikrokontroler normal>
Jawaban:
Secara umum "DSP ..." berarti 'tenaga kuda yang lebih relevan dan / atau perangkat keras yang lebih relevan pada saat produk diperkenalkan .'
Prosesor umum cenderung untuk mengejar ketinggalan dengan perangkat spesialis lama.
DSPIC sudah berusia [lebih dari 10 tahun - Olin akan tahu.
[Item dalam kurung berhubungan dengan beberapa contoh DSPIC - tidak lengkap].
Dalam produk DSP mengharapkan beberapa campuran dari:
Mengharapkan hal-hal seperti barel shifter,
jalur pipa cepat lebar dan waktu eksekusi
satu siklus cepat, instruksi siklus tunggal lebar,
DMA [6 atau 8 saluran, buffer port RAM ganda] rentang pengalamatan memori linier besar [4 program Mword , Data 64 kB] fitur berorientasi aritmatika spesialis
Mungkin:
periferal khusus seperti kontrol motor,
perangkat keras untuk beberapa standar com yang berbeda [CAN, IIC, UART, IIS, AC97, ...] lebih dalam daripada buffer com biasa [4 byte] lebih cepat dan / atau lebih luas dari biasanya ADC [2 Msps, 10 atau 12 bit]
Anda akan menemukan sebagian besar ini dalam keluarga DSPIC - dan semakin meningkat dalam keluarga prosesor gp.
Dalam kasus ekstrem Anda mendapatkan mikrokode pengguna dan banyak lagi.
sumber
Beberapa keuntungan dari dsPIC dibandingkan PIC arsitektur sebelumnya, seperti PIC 16 dan 18 keluarga:
Ini juga memungkinkan untuk arsitektur perangkat lunak yang lebih baik. Rutin interupsi untuk periferal tertentu dapat berada dalam modul yang sama dengan kode lain yang menangani periferal itu, alih-alih harus memiliki satu rutin interupsi global.
sumber
Biasanya, fitur pembeda utama DSP bila dibandingkan dengan CPU serba guna adalah bahwa DSP dapat menjalankan operasi pemrosesan sinyal tertentu dengan sedikit, jika ada, siklus CPU yang terbuang pada instruksi yang tidak menghitung hasil.
Salah satu operasi paling mendasar dalam banyak algoritma kunci DSP adalah operasi MAC (multiply-akumulasi), yang merupakan langkah mendasar yang digunakan dalam produk matrix dot and cross, FIR dan IIR filter serta FFT. DSP biasanya memiliki register dan / atau organisasi memori dan jalur data yang memungkinkannya melakukan setidaknya 64 operasi MAC pada pasangan data unik secara berturut-turut tanpa ada jam yang terbuang pada loop overhead atau pergerakan data. CPU tujuan umum umumnya tidak memiliki cukup register untuk menyelesaikan ini tanpa menggunakan instruksi tambahan untuk memindahkan data antara register dan memori.
sumber