Судя по тому, что спужались конкуренции с VAX - похоже, что сделали CIS на J-11 и испугались шустрости.. :)
Но что мешало им эту шустрость малость притормозить ;)
Вид для печати
Судя по тому, что спужались конкуренции с VAX - похоже, что сделали CIS на J-11 и испугались шустрости.. :)
Но что мешало им эту шустрость малость притормозить ;)
По крайне мере - сей факт упоминается часто :) В том числе встречал и в preliminary и company confedetial доках. Жалко только, что раньше не сильно CIS интересовался, ибо не было в пределах досягаемости соответствующих процов - так что глаз на упоминание в доках CIS не останавливался...
Проблему решили кардинальней...
Речь не только про DEC. Подобные истории происходили и с другими компаниями-лузерами, например, Коммодор свернул много перспективных проектов...
Готов подписаться в подписке на построение вам памятника как заслуженному цифровому археологу. Такого CIS-динозовра раскопали! Кстати, знающие люди говорят, что лучше всего эмулятор CIS писать под RSTS/E.
Какие проблемы? Это элементарно, но в дремучие 60-е, когда ещё и концепции флага переноса толком не было, с этим могли быть проблемы. Например, на очень недешевых ИБМ-мейнфреймах реализовывать 64-битную арифметику было тормознуто из-за отсутствия в архитектуре работы с флагом переноса. На PDP-11 с этим флагом работа сделана неуклюже, но сделана. А умножения и деления - это сдвиги и сложения/вычитания с переносом. Сделать на PDP-11, например, 256-разрядную арифметику - это запросто.
А идея 16-х чисел для вас неизвестна? И причем тут CIS - это нормально для любой целочисленной арифметики.
Очень вас благодарю за информацию. Есть оказывается наследники у кобола и древних бейсиков. С этой си-музыкой никогда не работал и не желал даже, есть же нормальные языки вроде плюсов с явой, питона, рубина, js, хаскеля, ... - пхп и то лучше.
Благодарю вас за ссылку. Но вроде давно известно, что DEC и Motorola перемудрили с системой команд и имели проблемы с маркетингом. Билл Джой хорошо сказал "Стало ясно, что Motorola развивает свои процессоры примерно также ошибочно как и DEC. Другими словами, 68010 68020 68040, становились более и более сложными. И они буксовали, не становясь быстрее такими же темпами как транзисторы, из которых они были сделаны."
Ваш покорный слуга недавно на IBM 4361 прогонял бенчмарки для десятичной арифметики. Они там почти такие же как и CIS - неслучайно наверное? ;)
Назвать кого-то, через сорок лет, компанией-лузером - много ума не надо. Попробуйте создать свою компанию, которая реализует много перспективных проектов. А мы посмотрим.
Нахера он мне?
Вот пусть знающие люди и пишут эмулятор. Мне это не сдалось от слова совсем.
Лузеры это проектировали - правда?
Это сейчас с возможностями современной электроника и овердохрена ресурсов на компе. Но как показывает практика, как только современный "программист" суётся в область с крайне ограниченными ресурсами - нихера у него не получается.
Вот только компы (большинство современных) работают с двоичной арифметикой и им насрать, как двуногие расписывают для себя двоичное представление чисел. Хотя, о каких числах вообще стоит говорить?? Сигналы НетНапряжения - ЕстьНапряжение. CIS - это как раз пример, когда арифметика десятичная, хотя бы снаружи проца. Но даже тут мы не знаем - как оно внутри реализовано.
Аха, большинство приведённых языков - наследники Си и тоже полная хрень
Главное в процессоре - вовсе не быстрота. Вот только те же самые маркетолухи успешно засрали людям голову, преподнося это как единственный критерий хорошего проца - БЫСТРЕЕ
про "дремучие 60е" я бы был по-осторожнее.
Вот статья про ускоренный расчет бита переноса при сложении:
https://en.wikipedia.org/wiki/Carry-lookahead_adder
Патент выдан в 1960 году.
Почему при "одинаково быстрых транзисторах" (одинаковом технологическом процессе) в одних процессорах можно было распаралелить исполняющие блоки CPU и/или поднять частоту, а в других - нет -- там же в статье про VAX.
Вообще-то, 31 десятичная цифра - это ближе к 100 двоичным разрядам...
И, кстати, коллеги, вы не сравнивали скорость байтовой пересылки с программной при разной четности адресов? Типа, переслать строку, начинающуюся с четного адреса по нечетному? Пересылать такое программно - только по байту, что более, чем вдвое тормознее пословной пересылки, А если это сделано на уровне CIS-овского микрокода,то, теоретически, есть возможность сделать эту пересылку по словам, используя пару каких-то внутренних регистров, как промежуточных, перекомпоновывая в них байты в слова с правильным положением байтов. А байтовой пересылкой останется только пересылка самого первого и самого последнего байта.
А как оно там сделано на самом деле?
Странно, что люди сравнивают десятичную и вещественную арифметику - это очень разные типы данных. Очевидная альтернатива 31-разрядным десятичным данным - 128-битные целые бинарные. Их GCC уже довольно давно поддерживает "из коробки".
3а заслуги.
Интересная тема. Действительно почему-то некоторые очевидные и несложные алгоритмы в прежние времена в упор не видели. Например, не мог найти для 6502 быстрой сортировки, для z80 нормального деления, ... Очень странно, что поддержки бинарных больших чисел в ЯВУ не было вплоть до 2000-х. У меня студенты длинную арифметику делали - какие проблемы?
А чем плох си? Минималистичность и мощь, а также продуманность в мелочах, которой не хватала паскалю и прочим адам.
Это что-то новенькое. Более быстрый процессор автоматически киллит более медленный. Хотя сейчас Интел всё держит под контролем и может, как это любят маркетологи, тормозить инновации.
Это про поразрядный перенос - с ним все было в порядке, мы же про пословный, внешний. Его, повторю, даже на IBM/390 по-нормальному не было.
Об этом Джой и говорил - намудрили с инструкциями. Кстати, когда в Интел узнали, что 68020 делается со сверхтяжелыми командами, которые никогда не разогнать - там сразу начали хвалить конкурента. :)
Когда - в 60-ые и 70-ые? Ещё раз - не надо смотреть на компы 60-ые и 70-ых годов с текущих позиций.
Не интересно
Что может быть проще колеса - но вот не видели его в прежние времена майи в упор
фигня
Аха, конечно
И сверхлегкие (RISC) и сверхтяжёлые (CISC) команды - одинаковая хрень. Но RISC даже больше
Захотелось мне странного... Один из результатов этого :)
Код:KDF11B-BH ROM V1.0
4088KB MEMORY
9 STEP MEMORY TEST
STEP 1 2 3 4 5 6 7 8 9
TOTAL MEMORY ERRORS = 0
CLOCK ENABLED
Boot Switch (S1) Invalid
Type ? for HELP
Enter one of [Boot, Diagnose, Help, List, Map]:BOO DU0
TRYING UNIT DU0
BOOTING FROM DU0
BOOTING UP XXDP-XM EXTENDED MONITOR
XXDP-XM EXTENDED MONITOR - XXDP V2.5
REVISION: F0
BOOTED FROM DU0
124KW OF MEMORY
NON-UNIBUS SYSTEM
RESTART ADDRESS: 152000
TYPE "H" FOR HELP !
.R JKDH??
JKDHB0.BIC
CJKDHB KEF11-B CIS DIAGNOSTIC
SWR = 000000 NEW =
END PASS # 1
Сегодня обнаружил удивительный факт. Оказывается бейсики атари, msx и tandy trs-80 model 100 используют BCD для представления мантиссы.
@Hunta, можешь измерить размеры для посадочного места блока с CIS MicROM?
Я вижу 40 ножек, по длине понятно, что там по ширине?
Я сейчас делаю плату читалки, можно будет или запаять микросхемы напрямую,
или вставлять MK1 в панельку (но там 46 ног), ну и хорошо бы твой CIS тоже заходил бы.
Я маршрут считывания откатаю (там stm32 будет) и могу тебе пустую плату читалки прислать,
если будет настроение - прочтешь свой CIS.
Да. Чтобы ты мог запаять в плату читалки панельку и потом вставить в нее cis для чтения.
Размеры посадочного места (замеры линейкой)
- 48.3 мм (между крайними ножками по длинному ряду, оценка на глаз) на 35.5 мм (поперёк микросборки, оценка на глаз)
Размеры по измерениям между ножками микросхем (замеры штангенциркулем)
- 48.25 мм (между крайними ножками по длинному ряду) на 35.4 мм
- - - Добавлено - - -
Получается, по идее, что между ножками 0,1 дюйма, а поперёк микросборки между ножками 1.4 дюйма
Да, по ширине выходит 0.6" + 0.2" + 0.6".
Еще схему бы широкого носителя, но у меня есть узкие (0.6") носители DEC c двумя микросхемами, по ним срисую, они там все параллельны должны быть.
Блин, МК1 сделали 46 ножек, отличается от DEC-овских 40, надо тоже схему перепроверять.
Из занимательного. Похоже, микросборка CIS всплывает на eBay чаще, чем я думал :) С моей любовью иметь всё в двух экземплярах - я не мог пройти мимо :) И скоро ещё одна должна начать движение ко мне. С ней едет приятный аддон - KDF11-B :)
У меня, кстати, импортный модуль с FIS на читалке не прочелся, то ли неисправен, то ли цоколевка отличается, то ли контактные явления какие. Попробую чипы выпаять, на переходник посадить, потом одну читалку вам с anasana отправлю, можете поковыряться.
Можно.
google.com -> DEC303E -> Картинки
Одна из: http://www.cpucollection.se/details.php?image_id=1311
Тесты CIS (для PDP-11/23-24 с CIS и для PDP-11/44) - JKDHA0.BIC и JKDHB0.BIC (более старый и более новый вариант)
Листинги - http://www.bitsavers.org/pdf/dec/pdp...ings/Listings/
CJKDHA0__11-23,11-24-__KEF11-B_CIS_DIAG__AH-S433A-MC__OCT_1981_gray.pdf
и
CJKDHB0__11-23-24-73,MICRO_11__KEF11-B_CIS_DIAG__AH-S433B-MC__JUL_1985_gray.pdf
- - - Добавлено - - -
Завтра постараюсь погонять тесты на своей платы и выложу результаты. Сегодня уже поздновато стенд собирать :)
Время первого прохода - (очень) примерно 30 секунд, второго и последующих - примерно минута 25 секунд.
- - - Добавлено - - -Код:
BOOTING UP XXDP-XM EXTENDED MONITOR
XXDP-XM EXTENDED MONITOR - XXDP V2.5
REVISION: F0
BOOTED FROM HX0
124KW OF MEMORY
NON-UNIBUS SYSTEM
RESTART ADDRESS: 152000
TYPE "H" FOR HELP !
.R JKDHA0
JKDHA0.BIC
CJKDHA KEF11-B CIS DIAGNOSTIC
SWR = 000000 NEW =
END PASS # 1
END PASS # 2
END PASS # 3
Код:
BOOTING UP XXDP-XM EXTENDED MONITOR
XXDP-XM EXTENDED MONITOR - XXDP V2.5
REVISION: F0
BOOTED FROM HX0
124KW OF MEMORY
NON-UNIBUS SYSTEM
RESTART ADDRESS: 152000
TYPE "H" FOR HELP !
.R JKDHB0
JKDHB0.BIC
CJKDHB KEF11-B CIS DIAGNOSTIC
SWR = 000000 NEW =
END PASS # 1
END PASS # 2
Посылка с KDF11-B (с микросборкой CIS) и ещё одна, из Штатов, застрявшая на две недели с копейками на отметке - прибыло в Германию, вчера и сегодня таки прибыли в Россию, уже прошли таможню и переданы в доставку по России... Я уже было начал печалится что таки всё, прощаться с ними надо, но нет, эти всё таки получу. А вот новых покупок на eBay, скорее всего, придётся ждать очень долго...
Одну посылку получил (там J11), а вторая, которая с KDF11-B - на подходе - практически наверняка в понедельник смогу получить.
Последняя посылка с eBay получена.
Из хорошего - микросборка CIS вроде рабочая (надо ещё тесты погонять)
Из плохого - плата в серийник ничего не шлёт (возможно, какие-то перемычки не так поставил)
Из хорошего - судя по морганию светодиодов - тест при включении проходит норм.
Так что с плохим буду разбираться.
Запретил набортные SLU, воткнул плату со SLU - работает. То есть проблема наблюдается только с набортными SLU
Занимательно..
"The Commercial Instruction Set (CIS) was a late addition to the PDP-11 architecture. Modeled after the commercial instructions in the VAX, CIS was intended to boost the PDP-11’s COBOL performance. It provided an extensive set of string and decimal instructions; indeed, its capabilities were more complete than its VAX counterparts."
"Коммерческий набор инструкций (CIS) был поздним дополнением к архитектуре PDP-11. Созданный по образцу коммерческих инструкций VAX, CIS был предназначен для повышения производительности COBOL-а на PDP-11. Он предлагал обширный набор строковых и десятичных инструкций и действительно - его возможности были более полными, чем у его аналогов VAX."
Мало того, что CIS пришёл, оказывается из VAX в PDP-11, так имел ещё и бОльший набор инструкций (надо будет, кстати, посмотреть - а что есть на VAX-ах). Тогда "легенда" о том, что PDP-11/74 и CIS на J-11 прикрыли, что бы первые VAX-ы не выглядили бледно на фоне новых PDP-11 и лучше продавыались - может оказаться не такой уж и легендой.. :)
Но вот полностью доверится высказыванию Боба Супника мне пока мешает ещё один факт. Был урезанный вариант CIS (DIS) для LSI-11. К сожалению, по нему маловато информации и непонятно, когда он вышел. Да и в коллекции у меня этих микрух нет :) И в ближайшее время врят ли будет, даже если они и всплывут на eBay...