Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.97.14.86] |
|
Сообщ.
#1
,
|
|
|
Привет всем! В 2017-ом году я прослушал на Coursera несколько курсов по дизайну микропроцессоров, мне очень понравилась тема цифровой схемотехники, и я загорелся идеей разработать свой собственный логический дизайн микропроцессора, разумеется, хотелось бы иметь возможность запускать и отлаживать программы. Каких-то наполеоновских планов по коммерческому стартапу в этой нише нет, это был бы просто личный проект для хорошего времяпрепровождения. В том же году я начал писать на Java некоторый фреймворк, читающий определения элементов схемы на самописном HDL из файлов ресурсов и производящий их валидацию, в том числе против тестовых выражений. Сначала всё получалось отлично, но сильно затормозился на многобитных шинах, а еще и DFF надо вводить. В какой-то момент данный программный проект стал казаться очень сложным, при том условии, что свободного времени было не так много, в итоге отложил.
Сейчас очень хотелось бы к этому проекту вернуться, но таки возникли мысли найти какой-то уже готовый фреймворк. Искал специализированные - не нашел того, чтобы подошло. Пробовал на LabVIEW, но уперся в тот же DFF, а потом, представлять свой проект широкой публике в нелицензированном ПО - плохая, на мой взгляд идея. В итоге, просто не знаю, как быть дальше. Знакомых схемотехников (чтобы подсказали) нет. Может, кто-нибудь что-нибудь посоветует? |
Сообщ.
#2
,
|
|
|
Железо надо проектировать, как можно проще. А потом упростить проще простого.
Надо проектировать снизу-вверх. Цитата Homez @ сильно затормозился на многобитных шинах, Объектную модель заменяете на битовую, а битовую на синтезированные команды. Библиотеки и встроенные функции можно заменить заранее заготовленными функциями. На самом деле я не видел законченных процессоров от энтузиастов. Те что есть либо сырые либо с ошибками. Либо повторяют чужие наработки. Прошли времена одиночек. Все схемотехники тусуются на electronix.ru и то половина там теоретики. |
Сообщ.
#3
,
|
|
|
Цитата Pavia @ Железо надо проектировать, как можно проще. А потом упростить проще простого. Надо проектировать снизу-вверх. Это понятно, я и начал с NAND. Цитата Pavia @ Объектную модель заменяете на битовую, а битовую на синтезированные команды. Библиотеки и встроенные функции можно заменить заранее заготовленными функциями. Вот этого, извините, я не понял. Цитата Pavia @ На самом деле я не видел законченных процессоров от энтузиастов. Те что есть либо сырые либо с ошибками. Либо повторяют чужие наработки. Прошли времена одиночек. Я видел работающий компьютер в MineCraft, на ютюбе есть видео. Там простой терминал, позволяющий складывать числа и делать еще что-то такое. Наверное, не обошлось без модов, точно не знаю. Но схемотехника при создании этого творения точно участвовала. Также видел на том же ютюбе реальный компьютер, созданный чуть ли не из радиолюбительских деталей. Понятно, что это творение уровня начала 70ых годов. Я думаю, что проектов, сделанных в каких-то специализированных КАДов, но не дошедших до реального воплощения, еще больше, но мне до этих КАДов очень далеко - просто не знаю, что выбрать и где искать, к тому же, большинство платного ПО просто не могу себе позволить. На курсе, которому посвящен ресурс https://www.nand2tetris.org/, следуя ему, я собрал дизайн простенького микропроцессора, это вселило уверенность, что я мог бы как минимум такой повторить, будь мне дан какой-то более общий инструментарий для разработки и тестирования. К сожалению, представляемые авторами инструменты заточены именно под этот дизайн, поэтому ввести какие-то свои модификации там затруднительно. Как раз наибольшую проблему для меня и составляет нахождения инструментария (либо много времени тратить на самописный). Цитата Pavia @ Все схемотехники тусуются на electronix.ru и то половина там теоретики. Спасибо, гляну на досуге. |
Сообщ.
#4
,
|
|
|
Homez
Intel даёт бесплатную среду Qartus Lite http://fpgasoftware.intel.com/?edition=lite А для моделирование используется ModelSim входит в комплект. А верхний уровень сами моделируете. А если заимствуете чужой ISA, то ищем любой симулятор к примеру qemu |
Сообщ.
#5
,
|
|
|
PaviaПонятно, спасибо, буду иметь в виду.
|