I would try to remove the choice of CPU at this point and focus on how to impliment the system. The traditional way of dealling with putting an operating system or platform independent application onto a piece of hardware is to use a hardware abstration layer (HAL) the focus then is more on the functional elements rather than the implimentation.
Eg. define a control structure for sample and hold circuits. No mater what CPU you select and the hardware used this is a very finite funtion. You must select the s&h circuit you must apply the input voltage, open the gate for a defined time and close the gate. The input voltage will have a finite range and the output may constrain the input voltage. The s&h circuits will have timing implications. Every time you control the circuit the exact same timing requirements must be used.
Once you have identified these hardware touch points then reference circuits may be defined to guide others. Software for these references may then be written for a variety of CPU's.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Concepts within the software should mimic the hardware equivalent. By this i mean, if you have a old synth as your platform the knobs may be placed on a panel and their position determines their function and this is fixed, eg. Resonance control on a filter. This concept should be "hardwired". On a modern poly synth multi-purpose controllers may be routed to control one or many parameters eg. modulation depth, then the concept should be "patchwired". These concepts can then be used to associate the setting of a control with the correct analogue (sample and hold circuit) channel.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
What CPU platform do we want to target? A cheap Atmel microcontroller would be a good start.
I would try to remove the choice of CPU at this point and focus on how to impliment the system. The traditional way of dealling with putting an operating system or platform independent application onto a piece of hardware is to use a hardware abstration layer (HAL) the focus then is more on the functional elements rather than the implimentation.
Eg. define a control structure for sample and hold circuits. No mater what CPU you select and the hardware used this is a very finite funtion. You must select the s&h circuit you must apply the input voltage, open the gate for a defined time and close the gate. The input voltage will have a finite range and the output may constrain the input voltage. The s&h circuits will have timing implications. Every time you control the circuit the exact same timing requirements must be used.
Once you have identified these hardware touch points then reference circuits may be defined to guide others. Software for these references may then be written for a variety of CPU's.
Concepts within the software should mimic the hardware equivalent. By this i mean, if you have a old synth as your platform the knobs may be placed on a panel and their position determines their function and this is fixed, eg. Resonance control on a filter. This concept should be "hardwired". On a modern poly synth multi-purpose controllers may be routed to control one or many parameters eg. modulation depth, then the concept should be "patchwired". These concepts can then be used to associate the setting of a control with the correct analogue (sample and hold circuit) channel.