Опубликована ранняя версия неофициального эмулятора архитектуры Эльбрус 2000

Open source Системное программирование Разработка под Linux Компьютерное железо Процессоры
Так и не дождавшись публикации и обсуждения на Хабре очень важной новости из мира OpenSource, решил опубликовать её самостоятельно.

Спустя нескольких месяцев разработки стала доступна первая версия набора патчей к QEMU, добавляющих поддержку отечественной архитектуры процессоров Эльбрус 2000.

На данный момент эмулятор поддерживает только 64-битные программы, скомпилированные под Linux. Реализованы почти 80% набора инструкций Эльбрус-8С.


Полный текст новости с LOR: www.linux.org.ru/news/opensource/16158350
Спустя нескольких месяцев разработки стала доступна первая версия набора патчей к QEMU, добавляющих поддержку отечественной архитектуры процессоров Эльбрус 2000.

На данный момент эмулятор поддерживает только 64-битные программы, скомпилированные под Linux. Реализованы почти 80% набора инструкций Эльбрус-8С.

Эмулятор был разработан используя:


официальное учебное пособие «Микропроцессоры и вычислительные комплексы семейства «Эльбрус»» и руководство по программированию
опубликованные GPL компоненты: binutils ( зеркало ) и ядро Linux (только зеркало)

Среди известных проблем:


эмулятор не является абсолютно точным. Полная документация на набор инструкций отсутствует, он был подвергнут методу обратной разработки, анализируя ассемблерный код, генерируемый компилятором, и его работу на реальном процессоре.
скорость работы эмулятора на Ryzen 2600X ниже Эльбрус-8С практически в 20 раз.
недостаток тестирования на реальных программах. На данный момент подтверждена работа busybox, coreutils, bash, некоторых бенчмарков и компилятора lcc.

Что примечательно, эмулятор разработан двумя участниками нашего форума ( форума LOR ): @numas13 и @a1batross .

Исходный код)
Теги:
Хабы: