[sdiy] PICs vs dsPICs vs AVRs [was: Top Octave Synthesizer]
Seb Francis
seb at burnit.co.uk
Tue Jul 11 21:50:27 CEST 2006
René Schmitz wrote:
> Seb Francis wrote:
>> The PIC16C54 used in this design would also work with a 32MHz crystal
>> instead of 16MHz which would bump it up an octave.
>
> I'd port/rewrite it for the AVR. These PICs do use (mostly) 4 clock
> cycles per instruction (they misleadingly claim "single cycle",
> talking about machine-cycles, not clock-cycles, hello marketing...).
> While the AVR truely uses (mostly) 1 cycle per instruction So an AVR
> @ 10Mhz would have the instruction rate of a PIC16XXX @ 40Mhz....
> (Don't get me started about the PICs instruction set...) And there are
> AVRs that can be clocked with up to 20MHz, and maybe some more with
> overclocking.
>
I would agree with you about 16XXX PICs, but it's not true for their
more modern processors. For example dsPICs can run usually up to 30MIPS
(not MHz) and while they still use the 4 internal clock cycles per
instruction architecture, they have a built in PLL that can 4x, 8x or
16x the actual external clock frequency - so you can run the internal
clock at 120MHz without a high frequency external crystal (actually with
many of them you can run at this frequency without an external crystal
at all).
And as for the instruction set: it's *much* different to the older
PICs. Single instruction 16bit multiplies & divides, DSP type
instructions with 40bit accumulators, etc...
Having no experience with AVRs, I can't really speak for them, but I can
say that dsPICs are really quite a joy to program and very powerful
(okay, they're not up there with true DSP processors like SHARCs, etc.
but they are in quite a different price bracket. And plus, in keeping
with other PIC, they have a wealth of useful built in peripherals).
Seb
More information about the Synth-diy
mailing list