Краткое изучение темы показало следующее. Надо все таки четко разделять микроконтроллеры с гарвардской архитектурой и микропроцессоры. Гарвард состоит не в невозможности перезаписать память программ, а в принципиальном отличии архитетуры части команд и части данных.
Вожены материалы по PicoBlaze - один их самых минималистичных софткоров. 8 бит, но чуть больше 100 LE в Spartan-6. Вполне качественное 8 битное ядро.
Если работать из внутренней памяти, то идеология шины или шин, которой пропитаны все "обычные" 32 битники, совершенно лишняя.
Вместо этого LE лучше потратить на несколько банков регистров, например, и на подключение аппаратных блоков прямо в виде регистров процессорного ядра.
Я бы сказал так, что PicoBlaze в виде чисто 16 битного ядра, которое ничего не знает про байты, с соответствующими изменениями в архитектуре, был бы очень хорошим ядром.
И ничего страшного в написании кода управлямющего микропроцессорного ядра на asm нет.