Pull to refresh

Comments 7

Из двух статей не очень понятно, какой именно risc поддерживает этот эмулятор, причем тут xtensa арм и fpga и зачем это вообще нужно. Кроме того в младших адресах обычно кладут вектор прерываний, а не IO. Так что ничего не понял.

По-порядку:

  • Simics это платформа симуляции.

  • Поддерживает любой процессор для которого создана соответствующая модель.

  • Xtensa имеет свой набор симулируемых процессоров - их можно подключить к Simics.

  • FPGA - Simics может использоваться в смешанных аппаратно-программных симуляциях. В частности совместно с FPGA

  • Куда и что ложить, дело хозяйское. Собственно статьи как раз о том, что смоделировать систему достаточно просто и без паяльника ;-)

Тема simics( а также risc, xtensa, fpga ) не раскрыта...

Что за risc ? Risc -v или другой? Xtensa - tensilica ? Или другая? Как склеить с fpga? Зачем это все? Отсутствует понятная цель у статьи. Почему именно simics? Если модель процессора внешняя, то все можно и на С написать.

Зачем писать стандартные вещи с нуля, проще взять готовую модель процессора и часть платформы, а кастомные части дописать самому или подцепить например через транзактор. Симикс хорош при проектировании и отладки софта когда железо ещё не готово или для обучающих целей, есть возможность детально посмотреть как железо исполняет код.

Спасибо за туториал!
Есть вопрос по последнему листингу

simics> controller.cpu_core->r0
0x2
simics> run 700
simics> controller.cpu_core->r0
0x4

Что за команда run 700

В гайде к симексу нет таковой. Остальные из скрипта (run-command-file к примеру имеется). Еще очень неочевидный аругмент у этой команды (700)

А с защитой памяти получается, что защищенные участки они просто перенаправляется в unmapped_ff регион и пишется лог? Никакого исключения/сигнала здесь не создается?

Sign up to leave a comment.