Вынашиваю тайный план о разработке самопального процессора на FPGA. Пока более в целях самообразования.
И очень хочется чтобы была поддержка С\С++ в конечном итоге, и для этого рассматриваю основу на GCC (понятное дело что писать свой компилятор - дело совсем не тривиальное).
GCC поддерживает множество архитектур, с большим количеством различных функций и библиотек, значит он для этого дела вполне должен подходить.
Собственно вопрос в том, как к имеющемся архитектурам добавить свою, со своим набором инструкций, некоторых функций и расширений?
Приветствуются ссылки и, особенно, собственные мысли по этому поводу. Может быть кто то уже делал подобное или знает тех кто делал, интересует отечественный опыт по этой теме.
neiver
Jan 15 2012, 08:50
Я бы рекомендовал посмотреть в сторону
LLVM и компилятора CLANG.
Документация у него очень хорошая, в том числе касательно написания своего бекэнда:
http://llvm.org/docs/WritingAnLLVMBackend.htmlВ LLVM ИМХО много проще добавить свою архитектуру чем в GCC.
Самообразование - это замечательно
1. Посмотрите
http://www.fpgacpu.org Там человек разрабатывал 16-бит процессор на верилоге и с-компилятор к нему.
2. Я выкладывал на ftp coware processor designer 2010.1 - это профессиональный пакет для разработки процессора. Ищите в директориях синопсиса. Для оценки возможностей прикрепляю 2 quickstarta и 3 guide (по дизайну процессора, компилятора и генерации hdl-кода).
3. Вот еще книгу у себя нашел "C Compilers for ASIPs. Automatic Compiler Generation with LISA". Выкладываю.
Цитата(neiver @ Jan 15 2012, 12:50)

В LLVM ИМХО много проще добавить свою архитектуру чем в GCC.
Спасибо, погляжу!
Цитата(Gate @ Jan 15 2012, 17:39)

Самообразование - это замечательно

По остальным пунктам : Спасибо, буду смотреть!