Hi, i want a better chip then my DSPIC to make a organ synthsizer,
i figured out that ARM Cortex are the best chips at the moment.
i was looking to this movie :
[..]
They say in the text :
powered by an ARM Cortex M3 and Sharc DSP processors
Those ARM Cortex are available from many brands,
i can not find any DIP packages for this Cortex M3.
Correct.
I think Microchip has the fastest chips with most memory in DIP, but they are not Cortex.
Unfortunately for newcomers, SMD is the future tech and likely almost all manufacturers will feature their newest chips in SMD.
They use Sharc DSP processors, is that good ?
Depends on the application
Sharc DSP are nice chips for signal processing. If you open up the Analog Devices datasheet, the first feature they mention about the processor architecture are the SIMD instructions. These are basically like vector instructions: 1 instruction executes on a fixed vector (array) of data. For example you can use 1 instruction to perform 4 times: Reg C = Reg A + Reg B. The registers may be 32-bit wide, but data is accessed in 8-bit mode such that it performs 4 separate adds.
When you're looping on a sample buffer of say 1024 samples, it could mean you have to loop only 256 times instead of 1024 times. However usually you have to
explicit about these instructions, i.e. the compiler will often not generate them for you.
ARM Cortex m4 (not m3) also has some vector instructions available. However these only work for signed or unsigned 8/16 bit integers. Rading the ADSP datasheet it's obvious that these parts can also work with floating point.
In addition it looks like it has some
acceleration for FFTs, FIR, IIR, matrix etc. But it looks like this is handled by a peripheral in hardware where the data needs to be pushed to.
I heard that these ARM Cortex are used in most digital synthesizers.
Could be. Depends how complex the audio effects are you need to do. However if you're pushing audio at high sample rates (96kHz, 192kHz), perhaps multiple channels on high-end gear, you'll quickly find yourself processing 0.5 - 1MSPS of data through a single processor. Then it makes sense that you want to perform vector operations on that kind of data, or perhaps go even more high-end.
Other solution is to stick to sample rates that apply to human ears
Or what can i buy instead that has many MIPS in DIP ?
Like I said, probably PIC32 has some offering in DIP that is reasonably high speed. But these are MIPS4k CPUs with
no DSP/vector instructions.
I dont know what DAC they use, i need that also.
Probably some I2S DAC?
All the info is a bit overwhelming, maybe you guys use these chips and can help me out a bit ?
Read read read, memorize, read more.. never stop learning
What is the difference between the brands ?, or why do they all make the same chips ?
What do you suggest ?
thanks in advance
You'll find many people having their own favorite brand, like people like PICs vs people liking Atmels.
But that shouldn't matter what you pick. Ultimately, ARM sells many vendors their Cortex CPU cores. Manufacturers take that core (because it's popular and basically the "industry standard") and add memory, peripherals and an "eco system" (software example, CMSIS drivers, abysmal frameworks, etc.) around it. In particular the peripherals are important to see if the chip can accomplish what you want to do.
If you're aiming to build some device with it, I suppose you need to answer these questions:
How many UART, SPI, I2C, I2S ports do I need? Can the chip actually support all these ports at once, i.e. they are not multiplexed on the same pins?
What memory size and CPU horsepower do I need?
Do I need external memory interfaces?
Do I need power saving features?
What package can I solder? What boards can I get made? Blueskull describes a nice project for sure, but if there is any way to avoid such complexity then that path is worth following.
etc.
I think the most prominent ARM vendors in the hobby field are Microchip/Atmel, STM32, NXP LPC/Freescale, Texas Instruments, Cypress PSoC and perhaps SiLabs EFM32.
If I were you and doing anything "media" related, I would look at a STM32F4 or STM32F7 chip. Especially if you're doing this for a hobby project, there is basically no use in dicking around with slow processors.
Then again, maybe the answer is that even those chips are too slow for your processing. Then you're faced with the decision of maybe stripping down on features, or upscaling to a DSP after all, or perhaps even a Linux SBC.