Preface: the switch-mode power supply is a flyback power-factor corrected AC-DC converter. I'm currently using a combination of AVR microcontroller (ATmega64A) with some analog (such as DACs) and digital (logic) external components. So control system used to switch main transistor, to control inductor discharge time, failures and so on (no special purpose PWM-controller implemented).
This approach has some certain limitations and drawbacks:
I can not precisely control several high-frequency processes and I limited regarding switch frequency to about 30-50 kHz
If I need to make any changes to hard logic - I need to use solder and a knife
I don't really like AVR documentation and periferal structure: many of software changes require a lot of reading and debugging, as peripheral (for example timers) has complicated control and modes
There are several alternatives I already considered as a next step:
ARM Cortex-M0(3) controllers (looks much faster than AVR, more peripheral, huge community),
Altera FPGAs (even faster, flexible programmable logic on a single chip, however there are no or rare any periphery such as ADCs, DACs, require for several unusual power supplies, no small packages available, quite different development chain and finally much more expensive).
So for me ARM looks as an obvious step forward but FPGAs looks very promising in some aspects.
Maybe I'm missing some alternatives?
For example I know that TI, ST and Microchip has several special purpose microcontrollers dedicated to SMPSs.
Maybe there are any controllers between FPGAs and GPMCs which can be good for my purposes?
Conclusion: I realize that I did not describe my needs in a degree that would be enough for expert answer, but I hope to have some directions to look forward and decide myself where to go in my closest future.