|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
самодельный многозадачный процессор
Author |
Message |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22601 Location: Silicon Valley
|
| | | | MM wrote: Насчет "расписывать процессор по конвееру" - это гораздо более сложный процесс я упомянул, следует понимать как "при максимальной тактовой частоте логики" - т.е. фазное управление в принципе не рассматривается. Реально это фантастически сложный процесс - Интел его делала усилием десятка яйцеголовых ручками за 2-3 года на камешек. Однако, результат - на максимальной ( тактовой ) частоте конвееризованный процессор показывает не менее, чем 2-х кратный прирост на классических смесях команд ( при линейной подаче команд - соответственно степени конвееризации ). Первым конвеерным был 486 - но я могу ошибаться. Не конвеерным был 386DX - 7 тактов на рег-рег. Апофеоз одноядерности в Интел - 8-параллельный Т(итаниум) - до 3-х подряд идущих ветвлений без потери крейсерской скорости - думается, со временем и господа из Израиля сцапают этот рецепт ( разработчики Коре-дуля ). * Насчет хитрости с экономией ПЗУ - не я разработчик, я просто привел пример - не стоит упускать из внимания, что готово было в 1988 г. - т.е. начали свистать с оригинала году так в 1983. К тому же я привел законченный вариант - 200 нс РФка - её не обойти ( напрямую ). Были, конечно, и масочные ТТЛШ ПЗУ - с временами менее 60 нс, но мне такие конструктивы не извесны ( т.е. готовые умножители 12 бит ). * Вот клянчил у Ю.Л. Отрохова ТО на его камень 1013ВМ1 - хрен дал ( официально ). И даже не счел нужным ( он ) упомянуть, что полно камушков без "К" - по этому и не дает ТО ( официально ) : http://forum.ixbt.com/topic.cgi?id=64:3394-153 ( Иванов И.И. = MM ) | | | | |
Говорят, что 6502 уже имел в себе примитивный конвеер - иначе бы он не смог на частоте 1 МГц уделывать по математике Z80 работающий на 3.5 МГц...
|
25 Mar 2014 16:54 |
|
|
Stan
Banned
Joined: 04 Jan 2013 10:09 Posts: 397 Location: 95.24.178.158
|
А что мы в данном случае подразумеваем под словом "конвеер"?
А то:
Что тогда значит эта фраза?
В старших процессорах Intell к конвейеру добавили еще и кеши.
|
26 Mar 2014 15:53 |
|
|
petrenko
Doomed
Joined: 10 Mar 2012 16:21 Posts: 598 Location: РФ
|
Коллега очевидно в своём понимании изволил употребить термин "конвеер". Ничего страшного, раз всё разъяснилось, не будем цепляться к терминологическому разночтению, надеюсь.. А если не ограничиваться процессорами на одном кристалле, то надо отметить, что конвеер был и в некоторых "больших"( размером с зал которые ) машинах Ну вот, получается Вы косвенно обозвали того разработчика ваятелем НЕрационального решения. ( шучу ) Как я уже говорил : *_А я как раз в том году и узнал формулу.
Могу сообщить, ежели, так сказать, "по просьбам трудящихся"..
И даже блок-схему такого быстрого "математического сопроцессора", пожалуй, ... если все дружно спросят .... пока я добрый ...
|
26 Mar 2014 16:26 |
|
|
Stan
Banned
Joined: 04 Jan 2013 10:09 Posts: 397 Location: 95.24.178.158
|
Ну объясните мне тогда, раз у Вас всё разъяснилось, что имел в виду этот коллега, и что потом вот этот:
Я не цепляюсь к "терминологическому разночтению" но хотелось бы понять о чем речь, чтобы общаться на едином техническом языке.
|
26 Mar 2014 16:41 |
|
|
petrenko
Doomed
Joined: 10 Mar 2012 16:21 Posts: 598 Location: РФ
|
Да тоже всё просто. ( Надеюсь коллега "MM" не будет в обиде и ругать меня за разглашение. ) Он из экситона. А ещё я случайно с ним не так давно встретился и немножко разговаривал.
Так вот я обратил внимание, что ( видимо от среды общения по работе и не только ) у коллеги по многим вопросам своеобразный - как бы так поточнее сказать ... - контекст восприятия, что ли. В том числе и трактовка некоторых терминов. Ничего особо плохого в этом нет, но вот иногда, увы, приводит к недопониманию. В данном случае коллега для присвоения частичке схемы звания "конвеер" выдвинул весьма завышенные требования по сравнению с, например, пониманием "конвеера" той же фирмой "Intel".
В конце концов - действительно - кто то скажет - "ну всего то шесть регистров", кто то обзовёт буфером, а вот в оригинале - как Вы изволили совершенно верно заметить - фирма назвала сие конвеером.
Или вот недавно я пытался разобраться в работе процессора из мелкой логики одной древней машинки. Там КОП после прочтения из ОЗУ сначала защёлкивается в регистре команд, а через t задерж. сие, преобразованное в микрокод защёлкивается в регистре микрокоманды.
Вопрос - можно ли сие обозвать, ну например "примитивным конвеером" ? ( Честно говоря я не знаю, у меня нет однозначного ответа... )
И что обзывать конвеером, а что - нет ?
Два регистра - это конвеер ?
А три ?
( Ну четыре уж точно можно - ведь в 8088 их четыре )
В общем затруднения небольшие выходят с единым техническим..
Надеюсь это сильно не помешает нашей развлекухе.
Ой, чуть не забыл - ведь T.S. просил подробнее за многофазную синхронизацию сказать..
Это просто : допустим у нас есть лог.элементы с задержками по 25нс
И нам приходится для обработки данных выстраивать лог.элементы в 4 "слоя". Соответственно общая задержка составит 100нс и обработанные данные будут выдаваться в темпе 10`000`000 "кусочков данных"/сек.
Но мы можем сделать каждый "слой" тактируемым отдельной фазой синхро ( со скважностью 4) и тогда несмотря на то, что общая задержка осталась 100нс (- но это только для самого первго "кусочка данных"-) темп выдачи составит уже 40`000`000 "кусочков данных"/сек.
Вот в чём преимущество многофазной синхронизации.
Выглядят синхросигналы при этом примерно так :
_П___П___П_
__П___П___П
___П___П___
П___П___П__
|
26 Mar 2014 18:23 |
|
|
Mogrif
Writer
Joined: 27 Feb 2014 05:15 Posts: 23 Location: 93.123.183.154
|
похоже меня подталкивают к добавлению конвейера, я об этом думал, но точно не для версии 1.0, скорее для дальнейших доработок, если они будут
понятно, спасибо
пока не ясно нужна ли будет такая технология
оно, конечно, хорошо, но это уже получится схема намного сложнее, хоть и более производительная, вот если бы мне надо было в 60-х годах разрабатывать процессор для реальных нужд народного хозяйства....
а так я пока стремлюсь сделать правильный (с моей точки зрения) самопальный процессор, на минимуме правильных (опять же с моей точки зрения) микросхем
правильными чипами для фан проектов считаю честную логику, а не ПЛМ-ы и зашитые в ПЗУ таблицы умножения
|
26 Mar 2014 21:43 |
|
|
petrenko
Doomed
Joined: 10 Mar 2012 16:21 Posts: 598 Location: РФ
|
Увы, не во всех случаях одну~две 556рт1 можно заменить на множество 531ла19 и/или 531ле7
Но во многих случаях в принципе можно..
( А ещё можно делать самому ПЗУ из одного или нескольких дешифраторов типа ид3 ( смотря сколько адресов ) и огромного количества диодов.. А что - видел ПЗУ в одной "малой" ЭВМ именно так выполненное.. Веселуха .... ещё та. )
|
27 Mar 2014 13:08 |
|
|
MM
Banned
Joined: 02 Feb 2014 08:29 Posts: 102 Location: Павловский Посад
|
Уважаемый господин petrenko, я не состою в штате Экситона уже более 20 лет, и я с Вами вообще никогда не встречался лично - только по переписке.
Далее замечу, что Иванов И.И. - это псевдоним.
Лично я не разрабатывал ни БК10, ни БК11 - т.к. тогда был студентом и присуствовал в качестве практиканта на Э.
|
28 Mar 2014 10:12 |
|
|
petrenko
Doomed
Joined: 10 Mar 2012 16:21 Posts: 598 Location: РФ
|
Вы меня забыли...
Мы всё таки виделись.
И не так давно.
Я вместе с товарищем приезжал к Вам.
Впрочем неважно. Среди творческих работников как и среди .. ( .. впрочем тоже неважно, не будем о не касающихся наших тем людях ) "бывших" не бывает !
Так или иначе, но формула вообще из школьного курса математики !
ВСЕ инженеры обязаны знать ! ( или их надо увольнять ни секунды не раздумывая )
Ну так что - где "просьбы трудящихся" ? Формулу написать ?
|
28 Mar 2014 13:03 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Я что-то не пойму, о чем Вы так экспрессивно митингуете...
Ни здесь, ни постами выше. Какая формула *, о которой Вы в какой-то год узнали?
_________________ iLavr
|
28 Mar 2014 15:38 |
|
|
jdigreze
God
Joined: 02 Jan 2006 02:28 Posts: 1390 Location: Abakan
|
Lavr, разные формулы есть, в том числе на умножение. С другой стороны категорически не соглашусь насчёт "каждый инженер должен знать". Слишком околоспецифическая область.
Навскидку предположу, что в современных процессорах дофига математики делается табличками. Хотя бы ради регулярности структур на кристалле.
|
28 Mar 2014 20:24 |
|
|
MM
Banned
Joined: 02 Feb 2014 08:29 Posts: 102 Location: Павловский Посад
|
Насчет конвеера - видимо, я не упомянул, что именно "конвеера АЛУ" - а так всякие забеги вперед и у 1801ВМ2 есть. В маленьких процессорах используются 2 тактовые линейки - прямой импульс и инверсный ( в упомянутом ВМ2 - вообще сдвинутый на 1/4 от главного такта ).
*
Вообще, конечно, командированных призжает к нам много - всё возможно.
*
По теме - а если взять боольшое многоразрядное СОЗУ, да подсоединить некотрые входы адресов к некотрым добавочным выходам данных - не получится ли нечто, похожее на примитивный 8-разрядный процессор ( пусть с 8-битным адресом ) ?
( О контенте микропрограммы этого монстрика скромно промолчу ).
( Первоначальную запись данных в СОЗУ вынесем за скобки ).
*
Многозадачность процессора обычно обеспечивается программно -
это всего лишь работа со стеком ( ядра ОС ).
Если аппаратно - можно просто предусмотреть группы РОН и призраков - и регистрик - переключатель этого дела. Отмечу так же, что 16 бит адреса - маловато будет ...
|
29 Mar 2014 02:43 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Так, может быть, мы их и знаем, а г-н petrenko разводит словесного туману,
что " за ним и леса не видать..."
_________________ iLavr
|
29 Mar 2014 05:03 |
|
|
petrenko
Doomed
Joined: 10 Mar 2012 16:21 Posts: 598 Location: РФ
|
"По просьбам трудящихся" пишу формулу :
(А-Б)*(А+Б)==А^2-Б^2
Настолько просто, что никто не вспомнил...
А теперь как это поможет аппаратно.
Возьмём к примеру 16-битные беззнаковые два числа X и Y
{ ( А==X+Y ) & ( Б==Y-X ) }=>{ (X+Y)-(Y-X)==2*X ; (X+Y)+(Y-X)==2*Y }=>{4*X*Y==А^2-Б^2}
Не запутались ещё ?
Так в чём же выигрыш ( спросят возможно некоторые ) ?
Сколько входов ПЗУ треба для двух перемножаемых 16-битных беззнаковых чисел ?
Правильно, 32 входа. Очень доступная в 80-ые годы ПЗУ-шка, не так ли ?
А сколько входов треба для одного возводимого в квадрат 16-битного беззнакового числа ?
Вдвое меньше - 16
Тоже многовато, но уже полегче.
А теперь обратим внимание, что функция ^2 регулярная и возможно поддаётся декомпозиции.
Дальше объяснять ?
Или уже и так всё ясно ?
( И напомню, что доступность ИМС MPY16 в СССР в 80-ые была просто замечательной ... )
|
29 Mar 2014 22:23 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Конечно, продолжайте, с этого места. А то Вы вечно норовите сказать "А" и не договорить "Б".
" Зогатки во тьме..."? (с)
_________________ iLavr
|
30 Mar 2014 00:01 |
|
|
Who is online |
Users browsing this forum: No registered users and 55 guests |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|