Спасибо всем за ответы. Некоторые поняли меня не до конца.
Значит задача следующая:
1) зашить в ОЗУ программу стартер, которая умеет общаться по протоколу по RS232(поверх него ещё свой протокол)
2) при старте программа ждёт команды по RS
3) приходит команда:"записать массив байт по адресу". записывает эти байты(пришедшие по RS) по нужному адресу.
4) перейти на ожидание следующей команды по RS
5) если команда это "прыжок на адрес", то выполнять то что написано в этом адресе(в "С" это ссылка на функцию).То есть выполнить функцию по пришедшему адресу в команде.
Задача была выполнена правда работает только на одной железке, на другой(такой же NIOS но другая обвеска процессора(память, периферия)) почему то глюк за глюком. Но так как я сразу по получении этих результатов заболел, то результаты пока что такие.
Мне необходимо было полученную программу которую я загружаю через RS перевести в двоичный код, а я её в hex формате загружал(придурок). Как с помощью утилиты nios2-elf-objcopy -O binary source.elf output.bin(пишу по памяти) перевёл её и загрузил и перешёл по адресу по которому загрузил + адресс смещения, то сразу заработало на одной железке, на другой там половина не работает и при этом всегда по разному не работает и часто разные функции работают или не работают(фарш в общем).
Так что задачку я решил. Ну как выйду с больничного то буду разбираться почему так странно работает.

Надеюсь я внятней написал задачу и решение.