Electronic – dsPIC30F – How to configure max performance crystal

fftpic

I was looking at Table 20-1, Oscillator Operating Modes, in the Microchip dsPIC30F datasheet, but I'm not sure which configuration will give me the best performance. I want to do an FFT and I need the best performance. I use PIC CSS C Compiler.

Which configuration do I need, and what crystal and capacitors should I use?

Best Answer

Typically for programming the more advanced Microchip processors (PIC18/24/32, dsPIC30/33), you need more than the device datasheet to understand the details of operation (for example, how to get the most MIPS).

This information is found in the dsPIC 30F Family Reference Manual in Chapter 7. Specifically, a summary of the modes are found in Section 7.5, and a detailed document regarding choosing the values of the capacitors is found in Section 7.7. Notice that Fcy = Fosc/4, therefore to achieve the maximum device performance of 30 MIPS, you need to have Fosc = 30 * 4 = 120 MHz. One way to do this is to have a crystal in 'XT + 16XPLL' mode at 7.5 MHz, which should give you exactly 30 MIPS (7.5 * 16 / 4). You will quickly find that 7.5 MHz is not a common frequency, since it is not a multiple of the common serial port baud-rates. The closest is usually 7.3728 MHz, which will give you a slight reduction in performance, but let you use the standard baud rates (e.g. it is 115200 * 64).