MyBooks.club
Все категории

Павел Дмитриев - Зерна отольются в пули

На сайте mybooks.club вы можете бесплатно читать книги онлайн без регистрации, включая Павел Дмитриев - Зерна отольются в пули. Жанр: Альтернативная история издательство Альфа-книга,. Доступна полная версия книги с кратким содержанием для предварительного ознакомления, аннотацией (предисловием), рецензиями от других читателей и их экспертным мнением.
Кроме того, на сайте mybooks.club вы найдете множество новинок, которые стоит прочитать.

Название:
Зерна отольются в пули
Издательство:
Альфа-книга
ISBN:
978-5-9922-1527-4
Год:
2013
Дата добавления:
17 сентябрь 2018
Количество просмотров:
186
Читать онлайн
Павел Дмитриев - Зерна отольются в пули

Павел Дмитриев - Зерна отольются в пули краткое содержание

Павел Дмитриев - Зерна отольются в пули - описание и краткое содержание, автор Павел Дмитриев, читайте бесплатно онлайн на сайте электронной библиотеки mybooks.club
Конец 60-х годов в СССР, казалось бы, не слишком интересное время: ни войн, ни революций… Однако в данной книге события развиваются несколько иначе. Генеральный секретарь ЦК КПСС — Анастас Микоян, хотя реальную власть делят товарищи Брежнев и Шелепин. Культурная революция в Китае началась на год раньше, и Мао Цзедуну не удалось захватить всю полноту власти в Шанхае. Иными оказались итоги Семидневной войны. И самое главное, в Советском Союзе форсированными темпами создается микропроцессорная промышленность.

Именно в таком мире живет и работает пришелец из 2010-го нашей истории, руководитель небольшой «айтишной» фирмы Петр Воронов.

Зерна отольются в пули читать онлайн бесплатно

Зерна отольются в пули - читать книгу онлайн бесплатно, автор Павел Дмитриев

Так что еще год назад казалось: вот только правильно отрисовать «проводки» «на кремнии» и можно занимать очередь в кассу — получать премию. Однако скоро выяснилось, что перенести на кристалл все «один в один» невозможно. Тут задержка лишняя, там кусочек схемы получился в неудобном виде, транзисторов многовато выходит, да и вообще… Все самые лучшие идеи пришли в голову инженерам в аккурат на следующее утро после сдачи «в серию». Несмотря на мои слабые протесты, пошла раскрутка страшного маховика доработки и улучшения.[393]

Первая версия «Денди» была сделана впопыхах, без особых архитектурных затей, и по сути являлась безрегистровой двухадресной машиной[394] наподобие первых «Минсков».[395] То есть в роли регистров выступал весь объем ОЗУ, а любая машинная инструкция могла использовать не более двух ячеек памяти. Таким образом, результат операции сложения автоматически записывался на место одного из слагаемых. Это был шаг вперед по сравнению с трехадресными БЭСМ-4 или М-20, в которых нужно было явно указывать следующую, как бы третью ячейку, но за сокращение длины кода пришлось «платить» пересохранением данных для повторного использования.

Надо заметить, что в конце 60-х подобную схему можно было без всяких сомнений признать безнадежно устаревшей. Я был поражен, когда не в теории, а собственными глазами и руками попробовал, что значит указывать два адреса для памяти на 64 килобайта — это же два числа, каждое из которых по 16 бит! Если добавить минимальные 8 бит на саму инструкцию, получается цепочка в 40 бит. И всю эту груду ноликов и единичек надо как-то хранить в оперативной памяти и пересылать по жалкой 8-разрядной шине.

Выход нашли давно, лучшие «собаководы» из DEC для своей PDP-8 использовали «особую» ячейку-аккумулятор, в которой хранился один из аргументов, туда же, после выполнения инструкции, записывался результат. Специально адресовать аккумулятор не требовалось, и большая часть команд заметно укоротилась. Несмотря на возросшую сложность программирования, архитектура была очень популярна даже в СССР, по ней была сделана новая, прогрессивная серия «Уралов». Примени этот метод ребята Староса, на операцию сложения потребовалось бы не 40 бит, а всего 24. Но на первой «Денди» «схитрили» еще проще, пользуясь там, что код «Тетриса» занимал заведомо менее 8 килобайт, разработчики ограничились только 8 битами на адрес, и для сложения двух чисел вполне хватало 32 бит.[396]

Дальше — больше. Операции с относительно медленной памятью на ферритовых сердечниках успели изрядно надоесть конструкторам, и они пустились «во все тяжкие» в деле изобретения «быстрых» архитектур, из которых можно было выделить два основных направления — стековое[397] и регистровое.

Сторонники первого решили напрочь все упростить и выкинули адреса из команд вообще. Соответственно, арифметико-логическое устройство оперировало исключительно двумя «верхними» ячейками, а сам стек был устроен примерно как магазин АК-47, в котором числа «заряжены» вместо патронов. В теории, сторонникам такой архитектуры никто не мешал добавить операции прямого доступа в основное ОЗУ, но красота идеологии потребовала крови практиков, которым оставили всего две операции — «загрузить в стек» и «выгрузить из стека». Причем нельзя сказать, что это все было какой-то абстрактной идеей, — реализации «в натуре» не только существовали, но они еще и производили очень приличное впечатление. К примеру, стековые мейнфреймы Burroughs[398] В5500 и тем более В6500 вполне успешно конкурировали с IBM и вымирать как-то не собирались.

Регистровые варианты на этом фоне смотрелись откровенно консервативным развитием идеи аккумуляторов. Где была одна «особая» ячейка — стало две, три, восемь или шестнадцать, все с «особым» коротким адресом. Однако и тут назревали нешуточные «развилки истории». Кто-то ратовал за упрощение а-ля стек, при котором АЛУ будет иметь дело только с регистрами, другие отстаивали необходимость «длинных» команд для прямого обращения к памяти… На первый взгляд такая мелочь! Вот только для программиста, имеющего дело с кодами, получаются совершенно разные ЭВМ. Соответственно, и перспективы могли выйти очень… разными.

Тут-то бы и сказаться преимуществам послезнания во всей красе! Увы, ничего дельного я не мог подсказать даже по самым общим вопросам. Разве что споры о полных и ограниченных наборах команд навевали ассоциации[399] про будущие холивары между RISC и CISC, но полной уверенности все же не было. Да и чем это могло помочь? Разумеется, я прекрасно помнил, что Intel использовал CISC до процессора i486DX и только потом перешел на RISC-ядро. Вот только кто ответит, насколько оптимальным был их путь?!

В поисках знаний я проштудировал кучу книг из будущего. Увы, скоро в голове было «не протолкнуться» от шин, кэшей, акселераторов, обработчиков графики, северных и южных мостов, AGP и PCI и прочих хитрых аббревиатур… То, что было связано с программированием, вообще «вынесло мозг» разнообразием подходов и вариантов.

Когда-то в будущем я считал себя специалистом, весьма и весьма неплохо разбирающимся в особенностях компьютеров, да что там, я мог буквально часами рассуждать, к примеру, о преимуществах DDR3 SDRAM! Оказывается, это были пустые камлания вокруг маркетингового буллшита! Подражающий реальному диспетчеру дикарь в сплетенных из ротанга «наушниках» и с куском палки в качестве «микрофона» мог «призвать» самолет с новой порцией стеклянных бус на ближайшую к стойбищу поляну с большей вероятностью, чем я связать свои навыки с проектированием реального устройства.

Хорошо одно: пока я пытался явить окружающим откровение из будущего, специалисты сами определились с решением. Едва «попробовав» первые образцы SRAM и получив заверения в быстром росте количества бит на кристалле, сторонники «длинных» команд «с прямыми адресами» буквально «положили на лопатки» как своих «регистровых» оппонентов, так и желающих «попробовать стек». Причина была тривиальной — полупроводниковое ОЗУ работало фактически на скорости будущего процессора, и отказ поддерживать доступ к нему на уровне команд стал казаться бессмысленной глупостью.[400]

После решения архитектурных вопросов пошло моделирование. На этой стадии я даже не пытался вмешиваться, но все же примерно к пятой версии «Денди» не выдержал и как-то очень по-доброму настучал Шелепину. Сколько можно, есть прототип сложностью чуть менее пяти тысяч транзисторов, в нем 8-битное АЛУ с логикой, сдвигом, сложением-вычитанием, такая же шина данных, 16-битные адреса позволяют использовать 64 килобайта памяти, где-то сбоку функциональной схемы пристроены 16 регистров общего назначения… И прочие параметры, эдак на три машинописных листа, если использовать гостовский двойной интервал… В общем, мне казалось, что результат должен быть не сильно хуже «Ямахи»[401] из моего школьного детства.


Павел Дмитриев читать все книги автора по порядку

Павел Дмитриев - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки mybooks.club.


Зерна отольются в пули отзывы

Отзывы читателей о книге Зерна отольются в пули, автор: Павел Дмитриев. Читайте комментарии и мнения людей о произведении.

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.