Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Первый проект доклада о EDVAC (обычно сокращается до первого проекта ) является неполным 101-страничный документ , написанный Джоном фон Нейманом и распределены по 30 июня 1945 года Герман Голдстайн , сотрудник службы безопасности на секретной ENIAC проекта. Он содержит первое опубликованное описание логической конструкции компьютера с использованием концепции хранимых программ, которая получила название архитектуры фон Неймана .

История [ править ]

Титульный лист Первого проекта , копия принадлежит Сэмюэлю Н. Александру , который разработал компьютер SEAC на основе отчета.

Фон Нейман написал отчет от руки, когда ехал поездом в Лос-Аламос, штат Нью-Мексико, и отправил рукописные заметки обратно в Филадельфию . Голдстайн напечатал и продублировал отчет. Хотя дата напечатанного отчета - 30 июня, 24 экземпляра Первого проекта были розданы лицам, тесно связанным с проектом EDVAC, пятью днями ранее, 25 июня. Интерес к отчету заставил его разослать по всему миру; Морис Уилкс из Кембриджского университета назвал свое волнение по поводу содержания доклада стимулом для его решения поехать в Соединенные Штаты на лекции школы Мура летом 1946 года.

Сводка [ править ]

Фон Нейман описывает детальный проект «высокоскоростной автоматической цифровой вычислительной системы». Он делит его на шесть основных подразделений: центральная арифметическая часть, CA, центральная часть управления, CC, память, M, ввод, I, вывод, O и (медленная) внешняя память, R, такая как перфокарты , телетайп. , или магнитной проволокой, или стальной лентой .

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

Числа должны быть представлены в двоичной системе счисления . По его оценкам, 27 двоичных цифр (он не использовал термин « бит », который был введен Клодом Шенноном в 1948 году) было бы достаточно (что дает точность 8 десятичных знаков), но округляет до 30-битных чисел знаковый бит и бит. чтобы отличить числа от заказов, в результате 32-битное слово он называет второстепенным циклом. Следует использовать арифметику с дополнением до двух , упрощающую вычитание. Для умножения и деления он предлагает ставить двоичную точку после знакового бита, что означает, что все числа рассматриваются как находящиеся в диапазоне от -1 до +1, и поэтому вычислительные задачи должны масштабироваться соответствующим образом.

Схемотехника [ править ]

Вместо реле следует использовать вакуумные лампы из-за способности ламп работать за одну микросекунду по сравнению с 10 миллисекундами для реле.

Фон Нейман предлагает (раздел 5.6) сохранять компьютер как можно более простым, избегая любых попыток повышения производительности за счет наложения операций. Арифметические операции должны выполняться по одной двоичной цифре за раз. По его оценке, сложение двух двоичных цифр занимает одну микросекунду, и, следовательно, 30-битное умножение должно занять около 30 2 микросекунд или около одной миллисекунды, что намного быстрее, чем любое вычислительное устройство, доступное в то время.

Дизайн фон Неймана построен с использованием того, что он называет «Е-элементами», которые основаны на биологическом нейроне в качестве модели [1] [2], но представляют собой цифровые устройства, которые, по его словам, могут быть построены с использованием одной или двух электронных ламп. Говоря современным языком, его самый простой элемент E - это вентиль И с двумя входами, с одним инвертированным входом (вход запрета). Элементы E с большим количеством входов имеют связанный порог и выдают выходной сигнал, когда количество положительных входных сигналов соответствует или превышает пороговое значение, пока (единственная) линия запрета не является импульсной. Он заявляет, что элементы E с большим количеством входов могут быть сконструированы из самой простой версии, но предлагает, чтобы они были построены непосредственно в виде электрических цепей, поскольку потребуется меньше ламп.

Из этих элементов E должны быть построены более сложные функциональные блоки. Он показывает, как использовать эти элементы E для построения схем сложения, вычитания, умножения, деления и извлечения квадратного корня, а также двух блоков памяти состояний и схем управления. Он не использует терминологию булевой логики .

Цепи должны быть синхронизированы с часами главной системы, полученными от генератора на электронных лампах , возможно, с кварцевым управлением . Его логические схемы включают в себя стрелку, обозначающую единичную временную задержку, поскольку временные задержки должны учитываться в синхронном проекте. Он указывает, что за одну микросекунду электрический импульс перемещается на 300 метров, так что до тех пор, пока тактовая частота не будет намного выше, например, 10 8 циклов в секунду (100 МГц), длина провода не будет проблемой.

Упоминается необходимость обнаружения и исправления ошибок, но не уточняется.

Дизайн памяти [ править ]

Заявленная ключевая концепция дизайна, позже названная архитектурой фон Неймана , представляет собой унифицированную память, содержащую как числа (данные), так и заказы (инструкции).

"Устройство требует значительного объема памяти. Хотя казалось, что различные части этой памяти должны выполнять функции, которые несколько различаются по своей природе и значительному назначению, тем не менее возникает соблазн рассматривать всю память как один орган и иметь ее части даже настолько взаимозаменяемы, насколько это возможно для различных функций, перечисленных выше ". (Раздел 2.5)

«Заказы, которые получает CC, поступают от M, то есть из того же места, где хранится числовой материал». (Раздел 14.0)

По оценкам Von Neumann объем требуемой памяти на основе нескольких классов математических задач, в том числе обыкновенных и дифференциальных уравнений в частных , сортировки и вероятностных экспериментов . Из них уравнения в частных производных в двух измерениях плюс время потребуют наибольшего объема памяти, а три измерения плюс время выходят за рамки того, что можно было бы сделать с использованием технологий, которые были тогда доступны. Он приходит к выводу, что память будет самым большим подразделением системы, и предлагает 8192 второстепенных 32-битных цикла (слова) в качестве цели проектирования, при этом 2048 второстепенных циклов все еще могут быть полезны. По его оценке, для сохранения программы будет достаточно нескольких сотен второстепенных циклов.

Он предлагает два типа быстрой памяти: линию задержки и трубку для иконоскопа . К каждому второстепенному циклу следует обращаться как к единице (адресация слов, раздел 12.8). Инструкции должны выполняться последовательно со специальной инструкцией для переключения в другую точку памяти (например, инструкцией перехода).

Двоичные цифры в памяти линии задержки проходят через линию и возвращаются в начало. Доступ к данным в линии задержки налагает штраф по времени на ожидание, пока желаемые данные не появятся снова. Проанализировав эти проблемы синхронизации, он предлагает организовать память линии задержки в 256 «органов» линии задержки (DLA), каждый из которых хранит 1024 бита или 32 второстепенных цикла, называемых основным циклом. При доступе к памяти сначала выбирается DLA (8 бит), а затем второстепенный цикл в DLA (5 бит), всего 13 бит адреса.

Что касается памяти Иконоскопа, он понимает, что каждая точка сканирования на лицевой стороне трубки является конденсатором и что конденсатор может хранить один бит. Потребуется сканирование с очень высокой точностью, а памяти хватит на короткое время, возможно, всего на секунду, и поэтому ее нужно будет периодически копировать ( обновлять ).

Заказы (инструкции) [ редактировать ]

В разделе 14.1 фон Нейман предлагает формат заказов, который он называет кодом. Типы заказов включают в себя основные арифметические операции, перемещение второстепенных циклов между CA и M (загрузка и сохранение слова в современных терминах), порядок ( ы ), который выбирает одно из двух чисел в зависимости от знака предыдущей операции, ввод и вывод и передача. CC в другое место в памяти (скачок). Он определяет количество битов, необходимых для разных типов заказов, предлагает немедленные заказы.где следующее слово является операндом и обсуждает желательность оставлять запасные биты в формате порядка, чтобы обеспечить больше адресуемой памяти в будущем, а также для других неуказанных целей. Обсуждается возможность хранения более одного заказа в малом цикле, но такой подход не вызывает особого энтузиазма. Приведена таблица заказов, но в первый черновик не включены инструкции по вводу и выводу.

Противоречие [ править ]

Отношение к предварительному отчету как к публикации (в юридическом смысле) было источником ожесточенной неприязни между фракциями команды разработчиков EDVAC по двум причинам. [3] Во-первых, публикация представляла собой публичное раскрытие информации, которое не позволило запатентовать EDVAC; вторых, некоторые на дизайн EDVAC команды утверждали , что концепция хранимой программы эволюционировали из встреч в Университете Пенсильвании «ы Мур школа электротехники , предшествующих деятельности фон Неймана в качестве консультанта там, и что большая часть работы представлена в Первый вариант был не более чем переводом обсуждаемых концепций на язык формальной логики.на котором фон Нейман свободно владел. Следовательно, неспособность фон Неймана и Голдстайна указать других авторов в Первом черновике привела к тому, что заслуги приписали только фон Нейману. (См. Эффект Мэтью и закон Стиглера .)

См. Также [ править ]

  • Электронный автоматический калькулятор хранения задержки (EDSAC), ранний британский компьютер, вдохновленный Первым проектом отчета о EDVAC
  • Harvard Mark I , ранний электромеханический компьютер с отдельными командами и числовыми данными ( архитектура Гарварда )

Ссылки [ править ]

  1. Фон Нейман приписывает эту модель Уоррену Маккалоку и Уолтеру Питтсу , «Логическое исчисление идей, имманентных нервной деятельности» , Bull. Математика. Биофизика, Vol. 5 (1943), стр. 115–133.
  2. Фон Нейман тесно сотрудничал с Маккалоком и Питтсом. См . Человека, который пытался искупить мир с помощью логики , Аманда Гефтер, Nautilus, выпуск 21, 4 февраля 2015 г.
  3. ^ Moye, Уильям Т. (январь 1996), ENIAC: Армия-Sponsored революции , научно - исследовательская лаборатория армии США , архивируются с оригинала на 2013-03-05 , извлекаться 2012-11-26 CS1 maint: обескураженный параметр ( ссылка )

Библиография [ править ]

  • фон Нейман, Джон (1945), Первый проект отчета по EDVAC (PDF) , получено 31 августа 2020 г. CS1 maint: обескураженный параметр ( ссылка )
  • Голдстайн, Герман Х. (1972). Компьютер: от Паскаля до фон Неймана . Принстон, Нью-Джерси: Издательство Принстонского университета. ISBN 0-691-02367-0. CS1 maint: обескураженный параметр ( ссылка )
  • Стерн, Нэнси (1981). От ENIAC до UNIVAC, оценка компьютеров Eckert-Mauchly . Бедфорд, Массачусетс: Digital Press. ISBN 0-932376-14-2.
  • Годфри, Майкл Д .; Хендри, Д. Ф. (январь 1993 г.). «Компьютер, как это планировал фон Нейман» (PDF) . IEEE Annals of the History of Computing . 15 (1): 11–21. CiteSeerX  10.1.1.705.7264 . DOI : 10.1109 / 85.194088 .

Внешние ссылки [ править ]

  • Устное историческое интервью с Дж. Преспером Эккертом , Институт Чарльза Бэббиджа , Университет Миннесоты. Экерт , соавтор ENIAC , обсуждает его разработку в Школе электротехники Мура при Пенсильванском университете; описывает трудности в обеспечении патентных прав на ENIAC и проблемы, связанные с распространением Первого проекта отчета Джона фон Неймана 1945 года об EDVAC , который поместил изобретения ENIAC в общественное достояние. Интервью Нэнси Стерн, 28 октября 1977 г.