Jump to content

    
Sign in to follow this  

Recommended Posts

Всем привет, пытаюсь выбрать софт процессор, для знакомства и дальнейшей работы. После некоторого отбора остались, некоторые претенденты:

  • OpenRISC
  • LEON 2/3
  • LatticeMico32
  • Amber ARM
Вроде все являются "Open sourse". Вроде про OpenRISC популярен, и в железе делают. Однако компилятор обеспечивается патчем к GCC 4.5.1. В итоге cобрать для него toolchain мне так и не удалось (тот который gnu-stable, собирал под Windows 7, msys2). То есть, наверно, требуется процессор для которого либо есть собранный toolchain, либо собирается легко.

Заглянул в GCC->3.17 Hardware Models and Configurations, из поддерживаемых платформ официальным GCC:

  • OpenRISC------- ???? нету
  • LEON 2/3 ------- ? - SPARC Options
  • LatticeMico32 --- LM32 Options
  • Amber ARM ----- ARM Options
Надеюсь насчет LEON я не ошибаюсь? Также присутствуют, из коммерческих:
  • Nios II Options
  • MicroBlaze Options
Вроде все.

Очень хочется иметь "Custom Instruction", а этим обладают только Nios II и OpenRISC, вроде. Может я ошибаюсь? Видимо ключевыми моментами для выбора становятся средства отладки, компиляции. Судя вот по этому "Compile and install SPARC/LEON3 toolchain" для сборки минимального набора для LEON не понадобятся патчи. Это так ? У Gaisler я не нашёл такой инструкции.

То есть для каждого процессора, упомянутого в официальной документации, можно скомпилировать GCC без каких-либо патчей? Только указать --target=???? при компиляции?

Я так понял, нужно иметь:

  1. GCC
  2. binutils
  3. GDB
  4. newlib
  5. simulator
  6. Custom Instruction - Желательно
Может кот знает? Какой из софт процессоров имеет эти пункты, в легкой доступности под Windows?
Edited by GentleFly

Share this post


Link to post
Share on other sites
Может кот знает? Какой из софт процессоров имеет эти пункты, в легкой доступности под Windows?

NIOS точно имеет, есть и бесплатная версия. а легкая доступность по виндой гнутых тулз это оксюморон, имхо.

и вопрос вы как-то странно сформулировали: я так понимаю, что тулчейн есть под любой из перечисленных вами, выбирать надо между вариантами потратить денег на IP-ядро либо потрахаться со сборкой проца и тулчейна к нему

Share this post


Link to post
Share on other sites

и добыванием инфы где взять бубен для решения проблем. А у ниоса и микроблайза какое-никакое, а сообщество и поддержка.... Да и веб едишен бесплатный некоторый сред разработки...

Share this post


Link to post
Share on other sites

Да и с быстрым стартом на ниосе проблем не будет, дольше софт качаться будет. Ставится Quartus II Web Edition и Nios II EDS, а для начала можно заглянуть на naliwator.narod.ru - там все описано по шагам.

Share this post


Link to post
Share on other sites

для leon-а скачайте тулчейн у гейслера - есть скомпиленные и для винды и для линуха. впринципе, можно наверно и собрать, но не самый новый, когда-то я вобщем собирал.

там же есть и поддержка RTOS-ов/SMP-линухов

 

если sparc и не очень эффективная но "LUT-ам" архитектура не пугает, то хороший выбор. для меня было так же плюсом, что есть DP FPU (не open, но для ксайлинса/альтеры нетлисты)

 

ну и для изучения - все потроха открыты - хочешь - исправляй, ну и sparc это все-таки стандарт, а не хомебрю

за деньги Гейслер разродился и LEON4-ым со 128/256 разрядными шинами, пайплайном посложнее - то есть на уровне ARM9

 

у openrisc, с которым я не работал, только посмотрел, имхо, хуже с документацией и "целостностью"

 

--------------

 

все эти квартусы, блейзы - привязка к вендору, то есть АЗИК уже не сделаешь :). у LatticeMico32 доступны исходники и можно собрать под что-либо другое, но слабовато с архитектурой

 

Share this post


Link to post
Share on other sites

NIOS у меня наверн отпадает, так как большинство проектов на Xilinx. Хочется "кроссплатформенное" решение, да и гибкость "Open Source" выше. Хотя, может это и лишнее.

... а легкая доступность по виндой гнутых тулз это оксюморон, имхо.

и вопрос вы как-то странно сформулировали: я так понимаю, что тулчейн есть под любой из перечисленных вами, выбирать надо между вариантами потратить денег на IP-ядро либо потрахаться со сборкой проца и тулчейна к нему

Здесь с вами сложно не согласится. Видимо придется колдовать над тулчейнами.

 

А коммерческое использование LEON3 предполагает покупку лицензии ? Всё-таки хочется познакомиться с процессором не только для собственного развития, но и для дельнейшего применении в работе.

за деньги Гейслер разродился и LEON4-ым с
А если не секрет, во сколько вам обошёлся ? Лицензия в месте с исходниками ?

 

у openrisc, с которым я не работал, только посмотрел, имхо, хуже с документацией и "целостностью"
Да и то, что его нет в официальной GCC, мне показалось странно. Хотя, как утверждает "вики", ядром Linux он поддерживается с версии 3.1, делается в азиках, в железе. Для OpenRISC вроде вчера собрал тулчейн бпод Ubuntu, на работоспособность не проверял :) (может и не получится в ближайшее время). С этой стороны наверн будет более доступный - Amber ARM. Однако, как я понял, он жирнее, медленнее и по поводу отладки или симуляции я ничего не нашёл.

 

Интересно как по поводу отладки(?debug модуль?) у LEON3, я так понял он есть, но не понял - он платный ?

 

В общем в вики нашёл табличку сравнения корок процессоров, чуть дополнил ее и прикрепляю к сообщению. Может кому пригодится, или будут какие либо комментарии или дополнения.

Core_comparison.zip

Share this post


Link to post
Share on other sites

LEON3 можно попробовать бесплатно в grlib - он GPL, то есть если нечего скрывать, то можно и в коммерческом продукте

для ПЛИС лицензия порядка 20К, но зачем?

платно дают версию на пол-года новее, в бесплатной нет FPU и TMR(радстойкость), в платной это за отдельные деньги

 

LEON4 мы брали еще сырым, тогда стоило столько же сколько и 3 (у нас FPU, ASIC и т.п., то есть цена чуть другая), но всеравно больше чем на порядок дешевле АРМа

 

у Гейслера есть группа в yahoo, где он очень энергично отвечает (по крайней мере, отвечал, я давно там не был)

 

-----------------------------------------

 

для gcc это sparc v8, но не проверял (по-моему там сильный гейслеровский след)

предполагаю, что окучивает всю "инициативу" Гейслер, но так как коммерчески, то может его за это в GNU не любят - вобщем это мои предположения, точно не знаю

 

----------------------------------------

 

в дебаге у него железный модуль DSU, вообще советую почитать как оно у него сделано, чтобы понимать "настоящие процессоры", обычно внутренности дебага секретят

поддерживается программой grmon (имхо, очень качественно), ну и соответственно эклипс/gdb

тоже есть eval версия, а лицензия что-то порядка 5К, но дополнительные фичи вряд ли когда-то понадобятся. просто с eval не будет поддержки, если вопросы

 

для симуляции есть несколько симуляторов (тоже есть eval), так как мы с реалтаймом работаем, то не нужно, ну так попробовал - на core i7 где-то 20-30 МГц симулируется

 

мне хватало VHDL симулятора, исходники для синтеза и симуляции одни и те же - зависит от разного но несколько сотен инструкций в сек. такой симулятор давал

 

=============

 

вобщем Гейслер голова :)

советую скачать grip.pdf с его сайта и ознакомится, ну и sparcv8.pdf у него же

 

 

 

 

Share this post


Link to post
Share on other sites

Для LM32 есть собранные toolchain -ы - для linux, например, http://www.rtems.org/ftp/pub/rtems/linux/4.11/ - там вроде есть и для Win но не пробовал, как-то заморочено устанавливать.

 

LM32 поддерживает "Custom Instruction" .

 

Проект с использованием LM32 на Spartan 6 https://github.com/m-labs/milkymist

 

используют, правда, свою правленую версию https://github.com/m-labs/lm32

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this