1 история развития средств вычислительной техники. Учебник: Информатика: Базовый курс. История развития средств вычислительной техники

01.02.2019

2.1. история развития средств вычислительной техники

Вычислительная система, компьютер

Изыскание средств и методов механизации и автоматизации работ - одна из основных задач технических дисциплин. Автоматизация работ с данными имеет свои особенности и отличия от автоматизации других типов работ. Для этого класса задач используют особые виды устройств, большинство из которых являются электронными приборами. Совокупность устройств, предназначенных для автоматической или автоматизированной обработки данных, называют вычислительной техникой. Конкретный набор взаимодействующих между собой устройств и программ, предназначенный для обслуживания одного рабочего участка, называют вычислительной системой. Центральным устройством большинства вычислительных систем является компьютер.

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

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

Компьютер - это электронной прибор, предназначенный для автоматизации создания, хранения, обработки и транспортировки данных.

Принцип действия компьютера

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

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

Анализируя раннюю историю вычислительной техники, некоторые зарубежные исследователи нередко в качестве древнего предшественника компьютера называют механическое счетное устройство абак. Подход «от абака» свидетельствует о глубоком методическом заблуждении, поскольку абак не обладает свойством автоматического выполнения вычислений, а для компьютера оно определяющее.

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

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

Абак - наиболее раннее счетное механическое устройство, первоначально представлявшее собой глиняную пластину с желобами, в которых раскладывались камни, представляющие числа. Появление абака относят к четвертому тысячелетию до н. э. Местом появления считается Азия. В средние века в Европе абак сменился разграфлеными таблицами. Вычисления с их помощью называли счетом на линиях, а в России в XVI-XVII веках, появилось намного более передовое изобретение, применяющееся и поныне - русские счеты.

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

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

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

Более неоднородность будет возникать в результате расширенного использования ускорителей и реконфигурируемой логики, описанных ранее, что необходимо для повышения производительности при ограничении мощности. Ускорители названы так, потому что они могут ускорить работу. Хотя это верно, недавняя работа показывает, что большая выгода от ускорителей может заключаться в уменьшении мощности. Тем не менее, эффективность ускорителя может быть затушевана накладными расходами на передачу управления и данных на ускорители и обратно, особенно если кто-то пытается разгрузить даже меньшие объемы работы, чтобы расширить доступность работы, которая не может быть загружена.

Механические часы - прибор, состоящий из устройства, автоматически выполняющего перемещения через равные заданные интервалы времени и устройства регистрации этих перемещений. Место появления первых механических часов неизвестно. Наиболее ранние образцы относятся к XIV веку и принадлежат монастырям (башенные часы).

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

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

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

Механические первоисточники

Первое в мире автоматическое устройство для выполнения операции сложения было создано на базе механических часов. В 1623 году его разработал Вильгельм Шикард, профессор кафедры восточных языков в университете Тьюбингена (Германия). В наши дни рабочая модель устройства была воспроизведена по чертежам и подтвердила свою работоспособность. Сам изобретатель в письмах называл машину «суммирующими часами».

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

Создание программных систем и приложений для параллельных вычислительных систем с ограничением мощности на одном чипе требует инноваций на всех уровнях программно-аппаратного проектирования и проектирования: алгоритмы, модели программирования, компиляторы, среда выполнения.

В1642 году французский механик БлезПаскаль(1623-1662) разработал более компактное суммирующее устройство (рис. 2.1), которое стало первым в мире механическим калькулятором, выпускавшимся серийно (главным образом для нужд парижских ростовщиков и менял). В 1673 году немецкий математик и философ Г. В. Лейбниц (1646-1717) создал механический калькулятор, который мог выполнять операции умножения и деления путем многократного повторения операций сложения и вычитания.

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

Рис. 2.1. Суммирующая машина

На протяжении XVIII века, известного как эпоха Просвещения, появились новые, более совершенные модели, но принцип механического управления вычислительными операциями оставался тем же. Идея программирования вычислительных операций пришла из той же часовой промышленности. Старинные монастырские башенные часы были настроены так, чтобы в заданное время включать механизм, связанный с системой колоколов. Такое программирование было жестким - одна и та же операция выполнялась в одно и то же время. Идея гибкого программирования механических устройств с помощью перфорированной бумажной ленты впервые была реализована в 1804 году в ткацком станке Жаккарда, после чего оставался только один шаг до программного управления вычислительными операциями.

Многоядерные чипы теперь повсеместно распространены во всем диапазоне вычислительных устройств. Полупроводниковое масштабирование сталкивается с фундаментальными физическими ограничениями, а улучшения в производительности и мощности замедляются. Это замедление, помимо прочего, привело к переходу от одиночных микропроцессорных компьютерных архитектур к однородным и теперь разнородным многоядерным процессорам, которые нарушают добродетельный цикл, на который рассчитывали и полагались большинство инноваций программного обеспечения.

Рис. 2.2. Чарльз Бэббидж

Этот шаг был сделан выдающимся английским математиком и изобретателем Чарльзом Бэббиджем (1792-1871) в его Аналитической машине, которая, к сожалению, так и не была до конца построена изобретателем при жизни, но была воспроизведена в наши дни по его чертежам, так что сегодня мы вправе говорить об Аналитической машине, как о реально существующем устройстве. Особенностью Аналитической машины стало то, что здесь впервые был реализован принцип разделения информации на команды и данные. Аналитическая машина содержала два крупных узла - «склад» и «мельницу». Данные вводились в механическую память «склада» путем установки блоков шестерен, а потом обрабатывались в «мельнице» с использованием команд, которые водились с перфорированных карт (как в ткацком станке Жаккарда).

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

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

Исследователи творчества Чарльза Бэббиджа непременно отмечают особую роль в разработке проекта Аналитической машины графини Огасты Ады Лавлейс (1815-1852), дочери известного поэта лорда Байрона. Именно ей принадлежала идея использования перфорированных карт для программирования вычислительных операций (1843). В частности, в одном из писем она писала: «Аналитическая машина точно так же плетет алгебраические узоры, как ткацкий станок воспроизводит цветы и листья». Леди Аду можно с полным основанием назвать самым первым в мире программистом. Сегодня ее именем назван один из известных языков программирования.

Каковы же самые перспективные возможности для инновационных прорывов в области полупроводниковой и вычислительной промышленности? Продолжающаяся глобализация науки и техники и расширение и более дешевый доступ к новым материалам, технологиям, инфраструктуре и рынкам могут сместить конкурентное преимущество США в глобальной вычислительной экосистеме, а также переориентировать возможности инноваций в области вычислительной техники пространство. Кроме того, вычислительные и полупроводниковые.

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

Математические первоисточники

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

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

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

Двоичная система Лейбница. В механических устройствах зубчатые колеса могут иметь достаточно много фиксированных и, главное, различимых между собой положений. Количество таких положений, по крайней мере, равно числу зубьев шестерни. В электрических и электронных устройствах речь идет не о регистрации положений элементов конструкции, а о регистрации состояний элементов устройства. Таких устойчивых к различимых состояний всего два: включен - выключен; открыт - закрыт; заряжен - разряжен и т. п. Поэтому традиционная десятичная система, использованная в механических калькуляторах, неудобна для электронных вычислительных устройств.

Рис. 2.3. Готфрид Вильгельм Лейбниц

Возможность представления любых чисел (да и не только чисел) двоичными цифрами впервые была предложена Готфридом Вильгельмом Лейбницем в 1666 году Он пришел к двоичной системе счисления, занимаясь исследованиями философской концепции единства и борьбы противоположностей. Попытка представить мироздание в виде непрерывного взаимодействия двух начал («черного» и «белого», мужского и женского, добра и зла) и применить к его изучению методы «чистой» математики подтолкнули Лейбница к изучению свойств двоичного представления данных с помощью нулей и единиц. Надо сказать, что Лейбницу уже тогда приходила в голову мысль о возможности использования двоичной системы в вычислительном устройстве, но, поскольку для механических устройств в этом не было никакой необходимости, он не стал использовать в своем калькуляторе (1673 году) принципы двоичной системы.

Математическая логика Джорджа Буля. Говоря о творчестве Джорджа Буля, исследователи истории вычислительной техники непременно подчеркивают, что этот выдающийся английский ученый первой половины XIX века был самоучкой. Возможно, именно благодаря отсутствию «классического» (в понимании того времени) образования, Джордж Буль внес в логику, как в науку, революционные изменения.

Занимаясь исследованием законов мышления, он применил в логике систему формальных обозначений и правил, близкую к математической. Впоследствии эту систему назвали логической алгеброй или булевой алгеброй. Правила этой системы применимы к самым разнообразным объектам и их группам (множествам, по терминологии автора). Основное назначение системы, по замыслу Дж. Буля, состояло в том, чтобы кодировать логические высказывания и сводить структуры логических умозаключений к простым выражениям, близким по форме к математическим формулам. Результатом

Рис. 2.4. Джордж Буль

формального расчета логического выражения является одно из двух логических значений: истина или ложь.

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

Не вся система Джорджа Буля (как и не все предложенные им логические операции) были использованы при создании электронных вычислительных машин, но четыре основные операции: И (пересечение), ИЛИ (объединение"), НЕ (обращение) и ИСКЛЮЧАЮЩЕЕ ИЛИ - лежат в основе работы всех видов процессоров современных компьютеров.


Рис. 2.5. Основные операции логической алгебры