[image]

Спроектировать процессор «на коленке». Возможно ли?

Перенос из темы «Что первично, софт или хард? :)»
 
1 2 3 4 5 6 7 22
RU Серокой #08.06.2009 13:06  @Владимир Малюх#08.06.2009 12:58
+
-
edit
 

Серокой

координатор
★★★★
В.М.> Экс-участники кронос проекта не удержались и тоже слепили такое в свободное от работы время :)

О! Они даже плату свою не стали делать, взяли учебный набор Ксайлинкса. Кстати, да, так быстрее и лучше. )
   
MD Wyvern-2 #08.06.2009 13:17  @Серокой#08.06.2009 11:59
+
-
edit
 

Wyvern-2

координатор
★★★★★
Wyvern-2>> на эмуляторе все работало, как часы.
Серокой> Два вопроса, для интересу:
Серокой> 1. каким эмулятором пользовался.
Прилагавшимся к Ксилинксовскому VHDL

Серокой> 2. как вводил программу (бинарник) в модель процессора (модель ОЗУ-ПЗУ).

Не понял вопроса... Просто указываешь эмулятору файл - и все.
   3.0.103.0.10
RU Серокой #08.06.2009 13:21  @Wyvern-2#08.06.2009 13:17
+
-
edit
 

Серокой

координатор
★★★★
Wyvern-2> Не понял вопроса... Просто указываешь эмулятору файл - и все.

А, значит особенности эмулятора.
Просто у меня вот шина процессора, на неё надо подавать данные, а данные загрузить в модель внешнего ОЗУ, мне пришлось эту модель (реальной памяти, скачанной с сайта производителя) руками править, чтоб можно было содержимое памяти задать при загрузке.
   
MD Wyvern-2 #08.06.2009 13:30  @Серокой#08.06.2009 13:21
+
-
edit
 

Wyvern-2

координатор
★★★★★
Wyvern-2>> Не понял вопроса... Просто указываешь эмулятору файл - и все.
Серокой> А, значит особенности эмулятора.
Серокой> Просто у меня вот шина процессора, на неё надо подавать данные, а данные загрузить в модель внешнего ОЗУ, мне пришлось эту модель (реальной памяти, скачанной с сайта производителя) руками править, чтоб можно было содержимое памяти задать при загрузке.

У Ксилинка вааще "руками править" ничо нельзя :) Там есть специальная защита -ибо можно спалить микросхему на раз-два (что, кстати, умельцы используют например для борьбы с недобросовестными покупателями ;):fal:)
// Еще не забудь, что у меня ФОРТ процессор ;)
   3.0.103.0.10
RU Серокой #08.06.2009 13:53  @Wyvern-2#08.06.2009 13:30
+
-
edit
 

Серокой

координатор
★★★★
Wyvern-2> У Ксилинка вааще "руками править" ничо нельзя :)

А! Всё, я понял, у нас разночтение понятия "эмулятор". Ты имел в виду отладчик на железке, а я про программную эмуляцию полученного HDL'я! :-F
   
RU Владимир Малюх #08.06.2009 14:04  @Серокой#08.06.2009 13:06
+
-
edit
 
В.М.>> Экс-участники кронос проекта не удержались и тоже слепили такое в свободное от работы время :)
Серокой> О! Они даже плату свою не стали делать, взяли учебный набор Ксайлинкса. Кстати, да, так быстрее и лучше. )

Так ведь просто побаловаться парни решили :)
   7.07.0
RU hsm #08.06.2009 14:26  @Серокой#08.06.2009 12:48
+
-
edit
 

hsm

опытный

Серокой> А кто вам сказал, что микросхема одноуровневая? Давно в 5-6 металлах (слоях) изготавливается.
А это по разному. ;) От восьми "у них" до двух-одного "у нас".
   2.0.0.202.0.0.20
RU Серокой #08.06.2009 14:31  @hsm#08.06.2009 14:26
+
-
edit
 

Серокой

координатор
★★★★
hsm> А это по разному. ;)
И от фабрики зависит.

hsm> От восьми "у них" до двух-одного "у нас".
"У нас" - это у кого? :) 5 металлов есть и у нас, в смысле, на территории РФ. А наши 0,18-0,13мкм вещи всё равно за рубежом делаются.
   
RU hsm #08.06.2009 14:56  @Серокой#08.06.2009 14:31
+
-
edit
 

hsm

опытный

hsm>> От восьми "у них" до двух-одного "у нас".
Серокой> "У нас" - это у кого? :) 5 металлов есть и у нас, в смысле, на территории РФ.
Это в Зеленограде.
Серокой> наши 0,18-0,13мкм вещи всё равно за рубежом делаются.
Вроде уже и у себя толи уже, толи скоро, будут. И линию на 200 пусть и не в прошлом, но так в этом или следующем запустят. НО - это все чужое БУшное барахло, типа как подержанные иномарки. Своих технлогий не осталось.
   2.0.0.202.0.0.20
+
-
edit
 
hsm> А это по разному. ;) От восьми "у них" до двух-одного "у нас".
чего-чего? что значит одного-двух? Еще в лохматом 92 году "самые большие микросхемы в мире"(ТМ) были в районе 3 слоев, а сейчас вы рассказываете про 1-2 ???
Или про какие слои вы? Слои кремниевых пластин, а не слои дорожек и элементов на одной пластине?
   7.07.0
+
-
edit
 

hsm

опытный

Bredonosec> чего-чего? что значит одного-двух?
Это значит 1-2 слоя алюминиевых проводников. (Есть еще и поликремний, он в этот перечень не входит.)
Bredonosec> Еще в лохматом 92 году "самые большие микросхемы в мире"(ТМ) были в районе 3 слоев, а сейчас вы рассказываете про 1-2 ???
Я не говорю что 2 слоя - максимум, я гогворю "до". Наверное были и на 3 слоя, но я работал с двумя, а к середине-концу девяностых пришли к ОДНОМУ. (И на этом вот <censored> я успел сделать несколько... вещиц, от 4 до 100 КВентилей. :) )
   2.0.0.202.0.0.20
RU Серокой #08.06.2009 15:13  @hsm#08.06.2009 14:56
+
-
edit
 

Серокой

координатор
★★★★
hsm> Это в Зеленограде.
Там микрон закупил линейку 0,13. Вряд ли там два металла. А если вы про Анстрем, то они погрязли в калькуляторах, часах и прочих картриджах для принтеров... А что, деньги-то за это идут.

hsm> НО - это все чужое БУшное барахло, типа как подержанные иномарки. Своих технлогий не осталось.
Да их и не было чтоб уж так полностью. Часть оборудования всё равно была правдой или неправдой добытой импортной техникой.
   

Balancer

администратор
★★★★★
au> Рома, проектирование и реализация проца сегодня — это задача на уровне дипломной работы профильного студента.

А я имею что-нибудь против? Все вопросы - к Володе Малюху, который это считает чем-то настолько невероятным, что готов делать выводы о моей неспособности это сделать на основе реализации форумов Авиабазы :D
   
MD Wyvern-2 #08.06.2009 15:29  @Balancer#08.06.2009 15:16
+
-
edit
 

Wyvern-2

координатор
★★★★★
au>> Рома, проектирование и реализация проца сегодня — это задача на уровне дипломной работы профильного студента.
Причем очень ленивого стьюдента :F Вот какой нить быстродействующий фильтр для ЦОС смастырить на FPGA, да еще перезагружаемый ака самоконфигурирующийся адаптируемый... отто 5 баллов :)
   3.0.103.0.10
RU Серокой #08.06.2009 15:32  @Wyvern-2#08.06.2009 15:29
+
-
edit
 

Серокой

координатор
★★★★
au>>> проектирование и реализация проца сегодня — это задача на уровне дипломной работы профильного студента.
Wyvern-2> Причем очень ленивого стьюдента :F

Нэ, наши защищаются таки на отдельных блоках. Не целиком.
   
RU hsm #08.06.2009 15:32  @Серокой#08.06.2009 15:13
+
-
edit
 

hsm

опытный

hsm>> Это в Зеленограде.
Серокой> Там микрон закупил линейку 0,13. Вряд ли там два металла.
Но оно еще не работает, АФАЙК.
Серокой> А если вы про Анстрем, то они погрязли в калькуляторах, часах и прочих картриджах для принтеров... А что, деньги-то за это идут.
Дык. Живут, как могут, в условиях заданных государством.
   2.0.0.202.0.0.20
RU hsm #08.06.2009 15:33  @Серокой#08.06.2009 15:13
+
-
edit
 

hsm

опытный

Серокой> Да их и не было чтоб уж так полностью. Часть оборудования всё равно была правдой или неправдой добытой импортной техникой.
Да.. как-то не сложилась наша "Кремниевая Долина"...
   2.0.0.202.0.0.20

hsm

опытный

au>>> Рома, проектирование и реализация проца сегодня — это задача на уровне дипломной работы профильного студента.
Wyvern-2> Причем очень ленивого стьюдента :F
- это все "литературная гипербола"... ;)
   2.0.0.202.0.0.20
RU AidarM #08.06.2009 21:28  @Владимир Малюх#06.06.2009 08:17
+
-
edit
 

AidarM

аксакал
★★
В.М.> В сегодняшней практике инженеру уже для использования численных симуляторв такой багаж не требуется. Разработчикам - да, но и там очень узкому кругу.

Инженеру тоже может такая задача встать, под которую софт еще не сделали. И тогда вперед, жевать Березина-Жидкова и прочих Самарских с Бахваловыми, смотреть, как хотя бы типовые численные методы строго логически обосновываются и как границы применимости очерчиваются. Чтобы потом рожать свою схему. И учиться камлать.

В.М.> Это речь уже даже не про проект а так зарисовки. Проект, без упора в изготовление, все-стаки заканчиватеся выдачей нарисованной, пусть и на бумаге, топологии.
Топология тоже не является чем-то неподъемным. Просто та картинка от интеловцев могла быть нарисована с опорой на тогдашние возможности железа. Они всегда конкретные. Узнать, что сейчас можно реализовать, а что нельзя, и из чего - дело пары-тройки дней, ИМХО. Серокоя например поспрашивать. :D ИМХО, задачки из теории графов тут уровня опять же старшеклассника-первокурсника.

В.М.> Там ведь даже не точки - там квадратики-полоски. :)
Это не принципиально, т.к. можно взять некую минимальной толщины полоску за единичное ребро, а остальные эмулировать (если дорожим толщиной уже на этапе разработки схемы) парными, тройными и т.д. ребрами, инцидентными той же паре вершин - квадратиков.

>Но как посмотрел, что они там за этим наворачивают для валидации - быстро утерся.
А может, это было с непривычки? ;) Мы ж не говорим про предельно оптимальную по площади схему, т.к. тут главная скрипка - особенности "железа". А про составление логической схемы с некоторыми доп. условиями типа планарности её графа. Да и острота проблемы планарности отчасти снижается, если девайс не на одном кристалле полагаем.

В.М.> Алгоритм проектирования "цессн" вообще-то расписан детально в любом приличном учебнике. Но его не просто нужно глянуть а осознать.
Так вот, синтез цифровой схемы осознается ИМХО немеряно проще, чем проектирование самолетика. Формально на конечное число всех возможных комбинаций входов схема (любая её часть) должна давать такое же конечное наперед заданное множество выходов. Это делается с помощью давно известных блоков а-ля триггеры, сумматоры, регистры и т.п. Все они делаются из схемок "И-НЕ" давно известными несекретными способами. Т.е. настоящие ужимки и прыжки ведутся вокруг реальных аналоговых элементов типа транзисторы-диоды и т.п., чтобы они при заданных воздействиях (кварц. генератор) реагировали так, как надо: воспроизводили бы цифровые операции предсказуемым образом. Нужно найти рабочий диапазон входных параметров, и дальше по всей схеме его соблюдать.

>Формальное проектирование процессоров - то же смаое, это как в численный пакет нпихать каких попало данных, получить картинку с красивыми изолиниями - тоже ведь, "расчет сделан", формально :)
Нет, это другое. ;) Сначала делается и оптимизируется лог. схема. Потом уже рожается проект реального девайса и ловятся тараканы в предполагаемом физическом воплощении логич. схемы. Второе - это радиоэлектроника - тоже не неподъемная вещь, люди этим даже увлекаются. И второй этап никак не может отменить результаты первого этапа, только дополнить и уточнить.

В.М.> С процессорами, как-то тоже не у всех прокатывает :)
Дык. Но ИМХО главная сложность зарыта не в проектировании логики. ;) И ИМХО даже не в оптимизации физической топологии в условиях разброса параметров отдельных элементов. Понятно, что встает вопрос об устойчивости физ.девайса как предсказуемо работающей логической схемы. Но если однородную элементную базу как-то заиметь(ГДЕ?КАК?), то ИМХО задержки и рассинхронизации, вызываемые ёмкостями/индуктивностями взаимным конкретным расположением конкретных проводников и транзисторов, рассчитать можно. И ИМХО критерии оптимизации родить. И количественный предел сложности устойчиво работающей схемы прикинуть.

В.М.>Вот сделать - и париться не надо. Ума предложений изготовить чипы по вашему проекту. Пара моих знакомых фирм этим пользуются, выпускают всякие спецплаты для видеобработки на ТВ и АСУТП.
Праздное любопытство: им надо полностью топологию дать, или только чисто логическую схему? Если чисто логическую, а её реализацию фирма гарантирует, то выходит, что вопрос исчерпан. А если полностью топологию, то непонятно, как можно задать проект, если не знаешь конкретных возможностей элементов изделий данной фирмы. И даже знаешь, как доказательно разобраться в причине возможных глюков: то ли сам дурак, тупую схему сваял, а они лишь честно перенесли, то ли они приврали насчет гарантируемого качества элементной базы, и теперь в брак уходит 90%, а оставшийся процент кристаллов по цене получается на вес обогащенного урана.

В.М.> Хех, хреново - не то слово. Жестокий практический опыт работы с 32-х разрядным процессором, собранным на рассыпухе на двух платах еще не забыт.
Небось висел постоянно? :) Расскажите.

В.М.> Да нет, и инженерного тоже. Вышепомянутую машинку умудрились в количестве 200 штук за год собрать.
Собрать 200 в год ручками - это просто дофига, молодцы. Со стабильным качеством? А ля не более 3х зависаний в час при +20. :)

В.М.> Так они сделан на 10 лет позже - в это время уже совсем другие машинки появлялись.
Я не про то. PDP-11 был намного навороченнее i8080 внутри, пускай и шкафчик. Речь про сложность логической схемы, а не эффективность и качество исполнения элементной базы. Если даже его упрощенный вариант К1801вм1 имеет в 8 раз больше транзисторов, чем 8080. Это был ЗЫ, теперь он оффтоп, относился к другой теме.

В.М.> Это уже когда готовы цифровые элементы. А вот их смих - приходилось и приходится "париться":
Сейчас это не проблема. Поэтому
В.М.> ...На смену проектированию на уровне логических элементов, принципы которого мы осваивали в университетах, ...
об этом в первую очередь и шла речь. Такое первокуры ИМХО потянут на ура, не то что Роман.

>...пришло проектирование на уровне транзисторов, обеспечивающее максимальную эффективность их применения при минимальных размерах интегральных схем. Повторяющиеся функции присваивались отдельным ячейкам, но оптимизация ячеек все же проходила на уровне транзисторов.
Ну и зря, ИМХО. Если я верно понял, о чем они говорят, то оптимизацию можно было вернуть на уровень ячеек, просто пришлось бы рассматривать помимо каждой ячейки её ближайшее окружение (пусть даже и из таких же ячеек), и её конкретное расстояние (в количестве ячеек) от источников энергии. И даже какой-то формализм ИМХО натянуть можно с помощью матрицы смежности графа текущего процессорного блока.
Ну, для оптимизации по скорости - максимизации синхронности работы всех элементов этого блока.
Вряд ли целесообразно вылизывать весь процессор сразу целиком потранзисторно, в конце концов, он должен состоять из "приборов" - кусков, независимых друг от друга в питании. Я не сомневаюсь, что на самом деле они так и делают, и тогда делали. Не могли вылизывали они всю схему всего проца потранзисторно, это в дурку загреметь можно.

&nbsp[показать]


В.М.> ... Нас вводили в помещение под названием "зона общих терминалов", в котором стояло несколько простеньких терминалов ввода-вывода, подключенных к центральной ЭВМ типа PDP-10.
Вот гады. Убили DEC при помощи его же изделий. :( Низабудунипращу.

>Мы умели составлять описание интегральной схемы, количество транзисторов в которой колебалось от пяти до нескольких десятков, отдавать системе моделирование схем команды на обсчет тих или иных входных сигналов и на отслеживание сигналов выходных. Результаты моделирования выводились на принтер в виде "линейной графики" с определением временных характеристик и параметров напряжения по каждому знакоместу в целом.
Ну вот, о чем я и. Осциллограф конечно же нужен, да.

>Разрешение оси ординат ограничивалось 70-ю или 120-ю точками (знаками) в зависимости от ширины каретки принтера.
Какой еще принтер?! Миллиметровку на экран осциллографа, карандаш в зубы - и с песней вперед, ВАХ перерисовывать, чтобы конкретные числа получить! :D

>Система моделирования была необходима для обсчета таких интегральных схем, как усилители считывания данных ОЗУ, входные буферы, внутренние каналы предварительной зарядки и разгрузки.
И это понятно. Обвязка более ответственна - эталон типа. Значит, её цепочки минимальной длины и вообще наиболее продуманны, ибо состоят из таких же элементов, что и "целевые", а каждый элемент немного глюк еси. М.быть в обвязке применяется и мажорирование.

В.М.> Конечно же, у нас не было и никаких компьютерных средств для удаления паразитных емкостей из топологии кристалла,
Ничего, если размеры и погонные параметры известны, можно и ручками посчитать типовые схемки. Можно изготовить единичные образцы и померить, в особенности если с созданием упрощенной физической модели не выходит.

>...поэтому точность обсчета тактовых частот в огромной степени зависела от способности инженера-проектировщика интуитивно рассчитывать расстояния и маршрутизацию связей между элементами интегральной схемы.
Угу, интуитивно. Прорешал небось к тому времени туеву хучу задачек про длинные и полосовые линии, напаялся и наизмерялся, вот и ленился формализовать ту часть, что касается конкретных веществ и конкретных элементов с конкретными погонными параметрами.
Экое радиоэлектронное кунфу, уже наверное 3й дан курс, да.
Только сдается мне, нынешние дипломники соответствующих ВУЗов ниже 32разрядников не проектируют. :D

>Для микросхемы 8085 Питер Штолль разработал таблицу расчетных задержек при загрузке в обедненном режиме транзисторов всех использовавшихся нами размеров при различных нагрузках на схему.

Это все очевидно, и ИМХО с этим Роман справиться сможет. Т.е. нет ничего непостижимого и немерено сложного. Муторной рутинной работы - вагон. А вот Задач ИМХО оч.немного. Я вот только про расчет устойчивости при заданном разбросе параметров транзисторов, и ее зависимость с ростом сложности вкусную задачку и вижу.

>По этому "бумажному компьютеру" мы и обсчитывали подавляющее большинство тактовых маршрутов вместо того, чтобы пользоваться системой моделирования. Причем ошибки эти таблицы давали весьма и весьма незначительные при условии, что приблизительные расчеты паразитных емкостей в кристалле были сделаны более-менее верно.

Обратите внимание, интеловцы сами же и говорят про главную засаду - разброс параметров в серии формально однотипных элементов. То бишь, если реальные х-ки соответствуют номиналу с хорошей точностью - всё пучком. Если Роман купит на Митино ведро транзисторов (а скорее микросхем с уже готовой логикой) с разбросом параметров в 1% вокруг номинала, задача ИМХО будет решена в приемлемый срок. А если в 30%, то вряд ли. Интеловцы просто выкинут такой кристалл по результатам тестирования и повысят цену на оставшиеся. Ибо таблица Питера Шноля на таком "добре" начнет не просто врать, но еще и грубить и громко ругаться матом. :)
   3.0.103.0.10
RU AidarM #08.06.2009 21:30  @Серокой#08.06.2009 12:02
+
-
edit
 

AidarM

аксакал
★★
AidarM>> "Полный логический базис" - схемка "И-НЕ". :)
Серокой> Полный - это с "константа-ноль" и "константа-единица". :-P

Чего? А как считать?

>А кто вам сказал, что микросхема одноуровневая? Давно в 5-6 металлах (слоях) изготавливается.
Мы будем как суровые челябинские интеловские мужики, полагать все одноплоскостным, чтобы Владимир не ухмылялся снисходительно - мол, сосунки, вам бы пооптимизировать строго планарный девайс! :F
   3.0.103.0.10
+
-
edit
 

Balancer

администратор
★★★★★
AidarM> Если Роман купит на Митино ведро транзисторов (а скорее микросхем с уже готовой логикой) с разбросом параметров в 1% вокруг номинала, задача ИМХО будет решена в приемлемый срок. А если в 30%, то вряд ли.

Нет, от тразисторов я сразу отрёкся. Хотя бы 155ЛА3 нужно в базис :)

...

А так, если про дискретку, вспомнилось тут...

Big Mess o' Wires » BMOW Project Summary

112
BMOW Project Summary
May 28th, 2009 | Category: BMOW 1
Crazy day today! Maker Faire setup begins tomorrow, and BMOW is featured on wired.com, and is the #1 Top in All Topics story on Digg! Oh man, this poor server is getting hammered.
Many people have asked for high-res photos. See this entry from February, and click any of the thumbnails to get the high-res versions of wire-wrapping craziness.
For people interested in viewing or buying the “Making of BMOW” photo book, you can order it from Shutterfly here.

// Дальше —
www.stevechamberlin.com
 


Человек сделал 8-ми битный CPU на 155-й (в смысле - 7400) серии :)

Чуть больше года работы. Правда, тоже с компьютерным моделированием. Но у него и проц не самый простой. 24 бита шина адреса, четыре 8-битных и три 24-х битных регистра, WLIV (насколько я понял), 2МГц часоты + переферия - одно целое с процессором (USB, VGA и др.)
   3.0.103.0.10
RU Серокой #08.06.2009 23:58  @AidarM#08.06.2009 21:30
+
-
edit
 

Серокой

координатор
★★★★
AidarM>>> "Полный логический базис" - схемка "И-НЕ". :)
Серокой>> Полный - это с "константа-ноль" и "константа-единица". :-P
AidarM> Чего? А как считать?

Что именно считать? Я имел в виду, что полный - это "И-НЕ", "0" и "1". Без 0 и 1 ты не сможешь задавать константы, без которых цифровые схемы также не работают.

// А вообще я мелочно придрался к определению "полный базис". Думал, ты поймёшь и отшутишься, а тут вон оно как! %)
   
RU Серокой #09.06.2009 00:04  @Balancer#08.06.2009 21:46
+
-
edit
 

Серокой

координатор
★★★★
Balancer> переферия - одно целое с процессором (USB, VGA и др.)

USB, полагаю, не на 155 серии. Потому как контроллер USB сам по себе одного уровня сложности примерно с описанным тобой процессорным ядром.
   
RU Anika #09.06.2009 00:34  @Серокой#08.06.2009 23:58
+
-
edit
 

Anika

координатор
★★☆
Серокой> Что именно считать? Я имел в виду, что полный - это "И-НЕ", "0" и "1".
Многовато будет для базиса - сразу и "0" и "1".
Берёшь "2и-не", на входы подаёшь "0", и вуаля! :D
Или наоборот ;)
   
RU Владимир Малюх #09.06.2009 08:37  @Balancer#08.06.2009 15:16
+
-
edit
 
au>> Рома, проектирование и реализация проца сегодня — это задача на уровне дипломной работы профильного студента.
Balancer> А я имею что-нибудь против? Все вопросы - к Володе Малюху, который это считает чем-то настолько невероятным, что готов делать выводы о моей неспособности это сделать на основе реализации форумов Авиабазы :D

Рома, чтобы не было разночтений, я считаю это маловерятном именно в ТВОЕМ исполнении. Базируясь теперь уже и на твоей самооценке о малой мотивации доводить дело до конца.
   7.07.0
1 2 3 4 5 6 7 22

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru