Архитектор компьютер: Архитектура компьютера. Принципы фон Неймана. Логические узлы компьютера. Выполнение программы

Лекция 1. Архитектура компьютера. Системы счисления. Биты и байты.

Изучение
любого языка высокого уровня обычно начинается с освоения основных команд и
написания первых простейших программ. Но с ассемблером так сразу не получится.
Это объясняется тем, что программы на ассемблере напрямую манипулируют
устройствами компьютера, в первую очередь процессором и памятью. Языки высокого
уровня скрывают от программиста все манипуляции с компьютерным «железом». Таким
образом, чтобы научиться программировать на ассемблере, необходимо знать
архитектуру компьютера.

1.1. Архитектура компьютера.

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

Архитектура компьютера – это логическая организация,
структура и ресурсы компьютера, которые может использовать программист.

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

Рис.
1. Архитектура ЭВМ.

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

Оперативная
память

предназначена для загрузки программ и для временного хранения различных данных,
необходимых для работы программ.

Порты
ввода-вывода

предназначены для взаимодействия с пользователем и другими устройствами.

Шина (bus) – это группа параллельных
проводников, с помощью которых данные передаются от одного устройства к другому:

  • Шина данных (data bus) используется для обмена
    команд и данных между процессором и оперативной памятью, а также между
    устройствами ввода-вывода и ОЗУ.
  • Шина управления (control bus) используется
    для передачи специальных сигналов, которые синхронизируют работу всех
    устройств, подключенных к системной шине. Например, процессор должен
    знать, когда можно читать информацию с шины данных. Для этого используется
    специальный сигнал готовности шины данных.
  • Шина адреса (address bus) используется для
    указания адреса ячейки памяти в ОЗУ, к которой в текущий момент происходит
    обращение со стороны процессора или устройства ввода-вывода (чтение или
    запись).

Все три шины вместе образуют системную
шину или ее еще называют магистраль.

1.2. Системы счисления.

Слово
«компьютер» (computer) с английского языка переводится как
«вычислитель», т. е. машина для проведения вычислений. И это
полностью соответствует действительности, т. к. на уровне «железа»
компьютер выполняет только простейшие арифметические операции с числами, такие
как сложение и умножение.

Сердцем
компьютера является процессор, называемый часто центральным процессором (ЦП)
или микропроцессором. Именно центральный процессор выполняет все вычисления.

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

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

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

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

Однако
записывать и запоминать огромные двоичные цепочки, первым программистам было
неудобно, поэтому они стали вместо двоичной системы использовать другие системы
счисления, например десятичную, восьмеричную или шестнадцатеричную. Для
сравнения: двоичное число 11001000 будет представлено в десятичном виде как
200, а в восьмеричной и шестнадцатеричной соответственно как 310 и С8.

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

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

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

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

Если
операторы первых ЭВМ переводили свои программы в машинный код вручную, то
сейчас эту работу выполняют специальные программы— трансляторы (англ,
translator — переводчик). Для языков высокого уровня транслятор принято
называть компилятором (англ, compiler — составитель, собиратель). Для языка
ассемблера обычно тоже не используется слово транслятор, а говорят просто:
«ассемблер». Таким образом, ассемблером называют, как язык
программирования, так и транслятор этого языка.

Соответственно
процесс работы ассемблера называют ассемблированием. Процесс работы компилятора
называют компилированием. Процесс обратный ассемблированию, т. е.
преобразование машинного кода в программу на языке ассемблера называют
дизассемблированием.

1.3. Биты и байты.

Цифра
в двоичной арифметике называется разрядом (или точнее «двоичным
разрядом») и может принимать значение ноль или единица. В компьютерном
мире вместо разряда часто употребляют название бит.

Таким
образом, минимальной единицей информации в компьютерной системе является бит,
который может принимать только значение 0 или 1. Однако минимальным объемом
данных, которым позволено оперировать любой компьютерной программе является не
бит, а байт. Байт состоит из восьми бит. Если программе нужно изменить значение
только одного бита, то она все равно должна считать целый байт, содержащий этот
бит. Биты в байте нумеруются справа налево от 0 до 7, при этом нулевой бит
принято называть младшим, а седьмой — старшим (рис. 2).

Рис.
2. Байт

Так как в байте
всего восемь бит, а бит может принимать только два значения, то простой
арифметический подсчет показывает, что байт может принимать до 28=256
различных значений. Поэтому в байте могут быть представлены целые числа в
диапазоне от 0 до 255, или числа со знаком от -128 до +127.

Однако не только
байтами может оперировать компьютерная программа, но и более крупными единицами
данных— словами, двойными словами и учетверенными словами. Слово состоит из
двух байт, при этом биты с 0 по 7 составляют младший байт в слове, а биты с 8
по 15— старший (рис. 3). Понятно, что слово может принимать до 216=65536
различных значений.

Рис.
3. Слово

Двойное слово, как
следует из самого названия, состоит из двух слов или четырех байт, а значит из
32-х бит, а два двойных слова составляют учетверенное слово (64 бита).

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

Компьютерная архитектура — Computer architecture

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

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

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

История

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

Термин «архитектура» в компьютерной литературе можно проследить до работы Лайла Р. Джонсона и Фредерика П. Брукса-младшего , членов отдела организации машин в главном исследовательском центре IBM в 1959 году. Джонсон имел возможность написать частный проект. исследовательское сообщение о Stretch , суперкомпьютере, разработанном IBM для Лос-Аламосской национальной лаборатории (в то время известной как Лос-Аламосская научная лаборатория). Чтобы описать уровень детализации для обсуждения роскошно украшенного компьютера, он отметил, что его описание форматов, типов инструкций, параметров оборудования и повышения скорости было на уровне «системной архитектуры», термин, который казался более полезным, чем «организация машины». ».

Впоследствии Брукс, дизайнер Stretch, открыл главу 2 книги под названием « Планирование компьютерной системы: Project Stretch », заявив: «Компьютерная архитектура, как и другая архитектура, — это искусство определения потребностей пользователя структуры и последующего ее проектирования. максимально эффективно удовлетворять эти потребности с учетом экономических и технологических ограничений ».

Брукс продолжал помогать в разработке линейки компьютеров IBM System / 360 (теперь называемых IBM zSeries ), в которых «архитектура» стала существительным, определяющим «что нужно знать пользователю». Позже пользователи компьютеров стали использовать этот термин гораздо менее явно.

Самые ранние компьютерные архитектуры были спроектированы на бумаге, а затем непосредственно встроены в окончательную форму оборудования. Позже прототипы компьютерной архитектуры были физически построены в виде компьютера с транзисторно-транзисторной логикой (TTL) — например, прототипы 6800 и PA-RISC — протестированы и настроены, прежде чем перейти к окончательной аппаратной форме. Начиная с 1990-х годов, новые компьютерные архитектуры обычно «строятся», тестируются и настраиваются внутри какой-либо другой компьютерной архитектуры в симуляторе компьютерной архитектуры ; или внутри ПЛИС в качестве программного микропроцессора ; или и то, и другое — до перехода к окончательной аппаратной форме.

Подкатегории

Дисциплина компьютерной архитектуры состоит из трех основных подкатегорий:

  • Архитектура набора команд (ISA): определяет машинный код, который процессор считывает и обрабатывает , а также размер слова , режимы адресации памяти , регистры процессора и тип данных .
  • Микроархитектура : также известная как «компьютерная организация», это описывает, как конкретный процессор будет реализовывать ISA. Например, размер кэша ЦП компьютера — это проблема, которая обычно не имеет ничего общего с ISA.
  • Дизайн системы : включает в себя все другие аппаратные компоненты в вычислительной системе, такие как обработка данных, отличная от ЦП (например, прямой доступ к памяти ), виртуализация и многопроцессорность.

В компьютерной архитектуре есть и другие технологии. Следующие технологии используются в более крупных компаниях, таких как Intel, и, по оценкам, в 2002 году составляли 1% всей компьютерной архитектуры:

  • Макроархитектура : архитектурные слои более абстрактны, чем микроархитектура
  • Архитектура набора команд сборки : умный ассемблер может преобразовать абстрактный язык ассемблера, общий для группы машин, в несколько иной машинный язык для разных реализаций .
  • Макроархитектура, видимая программисту : языковые инструменты более высокого уровня, такие как компиляторы, могут определять согласованный интерфейс или заключать договор с программистами, использующими их, абстрагируя различия между базовыми ISA, UISA и микроархитектурами . Например, стандарты C , C ++ или Java определяют различные макроархитектуры, видимые программисту.
  • Микрокод : микрокод — это программа, которая переводит инструкции для выполнения на микросхеме. Он действует как оболочка для оборудования, представляя предпочтительную версию интерфейса набора команд оборудования. Это средство трансляции инструкций дает разработчикам микросхем гибкие возможности: например, 1. Новая улучшенная версия микросхемы может использовать микрокод для представления того же набора инструкций, что и старая версия микросхемы, поэтому все программное обеспечение, ориентированное на этот набор инструкций, будет работать на новом кристалле без нуждаются в изменениях. Например, 2. Микрокод может представлять множество наборов инструкций для одного и того же базового чипа, что позволяет запускать более широкий спектр программного обеспечения.
  • UISA : Архитектура набора команд пользователя, относится к одному из трех подмножеств инструкций ЦП RISC, предоставляемых процессорами RISC PowerPC . Подмножество UISA — это инструкции RISC, представляющие интерес для разработчиков приложений. Два других подмножества — это инструкции VEA (Архитектура виртуальной среды), используемые разработчиками систем виртуализации, и OEA (Архитектура операционной среды), используемые разработчиками операционных систем.
  • Архитектура контактов : аппаратные функции, которые микропроцессор должен предоставлять аппаратной платформе, например, контакты x86 A20M, FERR / IGNNE или FLUSH. Кроме того, сообщения, которые должен выдавать процессор, чтобы внешние кеши могли быть аннулированы (опустошены). Функции архитектуры контактов более гибкие, чем функции ISA, поскольку внешнее оборудование может адаптироваться к новым кодировкам или переходить от вывода к сообщению. Термин «архитектура» подходит, потому что функции должны быть предусмотрены для совместимых систем, даже если подробный метод изменится.

Роли

Определение

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

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

Архитектура набора команд

Набор команд архитектуры (ISA) является интерфейсом между программным обеспечением и аппаратными средствами компьютера , а также может рассматриваться как точки зрения программиста машины. Компьютеры не понимают языков программирования высокого уровня, таких как Java, C ++, или большинства используемых языков программирования. Процессор понимает только инструкции, закодированные в некоторой числовой форме, обычно как двоичные числа . Программные инструменты, такие как компиляторы , переводят эти языки высокого уровня в инструкции, понятные процессору.

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

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

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

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

Компьютерная организация

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

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

Выполнение

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

  • Логическая реализация проектирует схемы, необходимые на уровне логического элемента .
  • Реализация цепи делает транзистор -LEVEL конструкции основных элементов (например, ворота, мультиплексоры , защелки ), а также некоторые более крупных блоков ( АЛУ , кэша и т.д.) , которые могут быть реализованы на уровне логического вентиля, или даже на физическом уровне если этого требует дизайн.
  • Физическая реализация рисует физические схемы. Различные компоненты схемы размещаются на плане микросхемы или на плате, и создаются соединяющие их провода.
  • Проверка проекта проверяет компьютер в целом, чтобы убедиться, что он работает во всех ситуациях и в любое время. Как только начинается процесс проверки дизайна, дизайн на логическом уровне тестируется с использованием логических эмуляторов. Однако обычно это слишком медленно, чтобы провести реалистичный тест. Итак, после внесения исправлений на основе первого теста, прототипы конструируются с использованием программируемых вентильных матриц ( ПЛИС ). Большинство хобби-проектов останавливаются на этом этапе. Последним шагом является тестирование прототипов интегральных схем, которые могут потребовать нескольких доработок.

Для ЦП весь процесс реализации организован по-другому и часто называется проектированием ЦП .

Цели дизайна

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

Наиболее распространенная схема выполняет углубленный анализ мощности и выясняет, как сохранить низкое энергопотребление при сохранении адекватной производительности.

Представление

Производительность современного компьютера часто описывается в инструкциях за цикл (IPC), которые измеряют эффективность архитектуры на любой тактовой частоте; более высокая скорость IPC означает, что компьютер быстрее. В старых компьютерах число IPC составляло всего 0,1, в то время как современные процессоры легко достигают почти 1. Суперскалярные процессоры могут достигать трех-пяти IPC, выполняя несколько инструкций за такт.

Подсчет инструкций на машинном языке может ввести в заблуждение, потому что они могут выполнять различный объем работы в разных ISA. «Инструкция» в стандартных измерениях — это не количество команд машинного языка ISA, а единица измерения, обычно основанная на скорости компьютерной архитектуры VAX .

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

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

Есть два основных типа скорости: задержка и пропускная способность. Задержка — это время между началом процесса и его завершением. Пропускная способность — это объем работы, выполненной за единицу времени. Задержка прерывания — это гарантированное максимальное время реакции системы на электронное событие (например, когда диск заканчивает перемещение некоторых данных).

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

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

Энергоэффективность

Энергоэффективность — еще одно важное измерение в современных компьютерах. Более высокий КПД часто можно обменять на более низкую скорость или более высокую стоимость. Типичное измерение энергопотребления в компьютерной архитектуре — MIPS / Вт (миллионы инструкций в секунду на ватт).

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

Изменения рыночного спроса

Повышение тактовой частоты за последние несколько лет росло медленнее по сравнению с улучшениями в области снижения мощности. Это было вызвано отменой закона Мура и требованием увеличения времени автономной работы и уменьшения габаритов мобильных технологий. Это изменение акцента с более высоких тактовых частот на энергопотребление и миниатюризацию может быть продемонстрировано значительным снижением энергопотребления, вплоть до 50%, о котором сообщила Intel в своем выпуске микроархитектуры Haswell ; где они снизили эталонное энергопотребление с 30 до 40 Вт до 10-20 Вт. Сравнивая это с увеличением скорости обработки с 3 ГГц до 4 ГГц (с 2002 по 2006 год), можно увидеть, что фокус в исследованиях и разработках смещается с тактовой частоты в сторону меньшего потребления энергии и занимающего меньше места.

Смотрите также

Рекомендации

Источники

  • Джон Л. Хеннесси и Дэвид Паттерсон (2006). Компьютерная архитектура: количественный подход (четвертое изд.). Морган Кауфманн. ISBN   978-0-12-370490-0 .
  • Бартон, Роберт С. , «Функциональный дизайн компьютеров», Коммуникации ACM 4 (9): 405 (1961).
  • Бартон, Роберт С., «Новый подход к функциональному дизайну цифрового компьютера», Труды Западной совместной компьютерной конференции , май 1961 г., стр. 393–396. О конструкции компьютера Burroughs B5000 .
  • Белл, К. Гордон ; и Ньюэлл, Аллен (1971). «Компьютерные структуры: материалы и примеры» , McGraw-Hill.
  • Блаау, Г.А. , и Брукс, Ф.П., мл. , «Структура системы / 360, Часть I — Краткое описание логической структуры» , IBM Systems Journal , т. 3, вып. 2. С. 119–135, 1964.
  • Таненбаум, Эндрю С. (1979). Структурированная компьютерная организация . Энглвуд Клиффс, Нью-Джерси : Прентис-Холл. ISBN   0-13-148521-0 .

Внешние ссылки

АРХИТЕКТУРА КОМПЬЮТЕРА | MindMeister ментальными картами

АРХИТЕКТУРА КОМПЬЮТЕРА
создатель Регина Хакимова

1. Тип

1.1. Принстонская (фон Неймана)

1.1.1. Принцип двоичного кодирования

1.1.2. Принцип однородности памяти

1.1.3. Принцип адресуемости памяти

1.1.4. Принцип последовательного программного управления

1.1.5. Принцип жесткости архитектуры

1.2. Гарвардская

1.3. Параллельная архитектура

2. Виды

2.1. По разрядности интерфейсов и машинных слов

2.1.1. 8-разрядные

2.1.2. 16-разрядные

2.1.3. 32-разрядные

2.1.4. 64-разрядные

2.1.5. 128-разрядные

2.2. По особенностям набора регистров, формата команд и данных

2.2.1. CISC

2.2.2. RISC

2.2.3. VLIW

2.3. По количеству центральных процессоров

2.3.1. однопроцессорные

2.3.2. многопроцессорные

2.3.2.1. симметричные многопроцессорные (SMP)

2.3.2.2. масcивно-параллельные (MPP)

2.3.2.3. распределенные

2.3.3. суперскалярные

3. Устройства вывода

3.1. Монитор

3.2. Проектор

3.3. Принтер

3.4. Графопостроитель

3.5. Оптический привод

3.6. Колонки

3.7. Наушники

4. Устройства ввода

4.1. Сканер

4.2. Клавиатура

4.3. Цифровой фотоаппарат

4.4. Мышь

4.5. Трекбол

4.6. Трекпоинт

4.7. Тачпад

4.8. Джойстик

4.9. Графический планшет

4.10. Световое перо

4.11. Микрофон

5. Память компьютера

5.1. Внутренняя

5.1.1. ОЗУ

5.1.1.1. Память динамического типа

5.1.1.1.1. Страничная память

5.1.1.1.2. Быстрая страничная память

5.1.1.1.3. EDO DRAM

5.1.1.1.4. SDRAM

5.1.1.1.5. Enhanced SDRAM

5.1.1.1.6. Пакетная EDO RAM

5.1.1.1.7. Video RAM

5.1.1.1.8. DDR SDRAM

5.1.1.1.9. Direct RDRAM

5.1.1.1.10. DDR2 SDRAM

5.1.1.1.11. DDR3 SDRAM

5.1.1.2. Память статического типа

5.1.1.2.1. Двоичная SRAM

5.1.1.2.2. Троичная SRAM

5.1.2. ПЗУ

5.1.2.1. По типу исполнения

5.1.2.1.1. Массив данных совмещён с устройством выборки

5.1.2.1.2. Массив данных существует самостоятельно

5.1.2.2. По разновидностям микросхем ПЗУ

5.1.2.2.1. По технологии изготовления кристалла

5.1.2.2.2. По виду доступа

5.2. Внешняя

5.2.1. гибкие магнитные диски

5.2.2. жёсткие магнитные диски

5.2.3. диски CD-ROM, CD-R, CD-RW, DVD

5.2.4. флешки

5.2.5. жесткий диск

6. Процессор

6.1. CISC-процессоры

6.2. RISC-процессоры

6.3. MISC-процессоры

6.4. VLIW-процессоры

Архитектор компьютеров и умнейший ученый Джон фон Нейман

Архитектор компьютеров и умнейший ученый Джон фон Нейман

В плане использования математики талант этого человека был практически безграничен. В свое время его мнение относительно решения той или иной задачи оказывалось непререкаемым, а специалисты даже называли его «человеком-математической машиной». Сейчас же сотни миллионов, если не миллиарды пользователей компьютеров и других цифровых вычислительных машин пользуются его наработками, даже не зная об этом человеке. А ведь это именно он впервые описал логическую организацию вычислительной машины. Мало того, ученый привлекался к работе над самыми первыми ЭВМ, а впоследствии изготовил свою собственную, будучи приглашенным на работу в Институт перспективных исследований в Принстоне. И даже сейчас, спустя более 60 лет после его кончины, до некоторых его идей человечество пока еще не «доросло». Имя этого великого математика – Джон фон Нейман.

Местом рождения гения является Австро-Венгрия. Именно там, во второй ее столице Будапеште, в семье еврея-банкира Макса Неймана 28 декабря 1903 года родился мальчик, которому дали имя Янош. Отец будущего ученого имел столь большое уважение в императорском семействе, что получил почетную приставку к своему имени «Маргаттай», впоследствии смененное его сыном на «фон».

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

Заметив такое страстное влечение сына, Макс Нейман нанял Яношу личного репетитора. Идея отца полностью себя оправдала. Личный учитель смог привить Яношу основные положения по математике, после чего предложил отцу и дальше развивать драгоценное дарование мальчика. Интересно, что с 8 лет юный Нейман уже учился в лютеранской гимназии Будапешта и до самого ее окончания в 1916 году слыл там лучшим математиком. Кстати, параллельно с Нейманом в этой же гимназии обучался и другой будущий великий ученый, Юджин Вигнер, с которым Янош впоследствии подружился и даже дискутировал на научные темы.

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

Будучи зачисленным в студенты Будапештского университета, начинающий ученый много времени проводил в других вузах. Так в в начале 1920-х он брал уроки у Эрхарда Шмидта, посещал лекции Альберта Эйнштейна в Берлинском университете. Добавив к фамилии приставку «фон», Нейман переехал в Швейцарию, где некоторое время учился в Цюрихском федеральном институте Технологии на факультете химического машиностроения, впоследствии получив диплом по данной специальности.

Но даже на этом талантливый молодой человек не остановился. В 1926 он уже стал доктором математики в родном для себя Будапештском университете. И после этого продолжал учиться. В 1926 и 1927 он совершенствовал свои знания в Геттингенском университете, где подружился с молодым студентом Робертом Оппенгеймером.

Последовавший за этим 3-летний период стал последним в европейской практике ученого. До 1930 года молодой профессор вел математику в Берлинском университете, написал и представил к публикации 5 научных работ. К концу 1920-х он уже стал признанным авторитетом в мировом математическом сообществе. И вовсе неудивительным является тот факт, что весной 1929 во время нахождения в Гамбурге его пригласили отправиться в США, для того чтобы читать лекции в Принстонском университете.

Приехав на новое место и начав с простого чтения лекций, уже в 1931 Джон фон Нейман (имя ученый сменил, прибыв в США) получил профессорскую должность. А когда в Принстоне образовался новый институт перспективных исследований, ему было там предложено место профессора математики, которое впоследствии он занимал до последних дней своей жизни. В 1937 ученый стал полноправным гражданином США, что открыло перед ним новые перспективы.

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

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

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

Несмотря на то, что разработчики устройства Маучли и Эккерт старались максимально скрыть механизм его функционирования, фон Нейману потребовалось меньше года для подробного понимания, как самой машины, так и ее логической организации. К величайшему неудовольствию авторов проекта 42-летний ученый выпустил подробный доклад по EDVAC. А спустя еще год в ставшем родным Принстоне фон Нейман начал строительство собственной вычислительной машины, названной в честь своего института «IAS-компьютер». Новая ЭВМ должна была стать самой совершенной, быстродействующей и универсальной из всех имеющихся на тот момент подобных устройств.

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

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

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

Компьютер для архитектора в 2019 году


Выбираем компьютер для работы в AutoCad и Revit


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


Ниже в таблице вы можете ознакомиться с рекомендуемыми требованиями для Автокада и Ревита, указанными на официальном сайте Autodesk:








Элементы системы


AutoCad 2019


Revit 2019


Процессор


тактовая частота от 3 ГГц


максимально возможная производительность


Оперативная память


16 Гб


8 Гб


Разрешение экрана


1920 x 1080 (Full HD) / 3840 x 2160 (4К)


1680 x 1050 / 3840 x 2160 (4К)


Видеокарта


объем 4 Гб, пропускная способность 106 Гбит/с, поддержка DirectX 11


поддержка DirectX 11 и Shader Model 5


Жесткий диск


занимает 6 Гб


занимает 5 Гб


Лучше не экономить


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


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


Технические характеристики


Однозначного ответа на вопрос, каким конкретным показателям должны соответствовать элементы компьютера для архитектора, к сожалению, нет. Ведь перед каждым специалистом стоят совершенно разные задачи. Кто-то работает в одном AutoCad и ему будет достаточно от комплектующих одних характеристик. А кто-то одновременно запускает Inventor, Civil 3D, Advance Steel, и тут уже, естественно, понадобится больше мощностей.


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


Видеокарта


Если в задачи архитектора или проектировщика входит только работа с плоским черчением (2D) или 3D-моделирование простых деталей, то будет достаточно интегрированного в процессор видеоадаптера. В Intel встроены видеокарты HD Graphics, а в AMD – Radeon, которые вполне «потянут» такие обязанности.


Для специалистов, занятых большими 3D-сборками и визуализацией, уже понадобятся видеоадаптеры геймерского уровня, как, например, GeForce GTX 1060 или 1070, или даже профессионального, как NVIDIA линейки Quadro. Отличие игровых видеокарт от профессиональных заключается в том, что последние благодаря своей архитектуре и драйверам могут увеличивать производительность программ по 3D-моделированию более чем в 10 раз по сравнению с геймерскими. 


Процессор


Несмотря на широкие возможности процессоров AMD, архитектору все же стоит отдать предпочтение второму лидеру в данном товарном сегменте – Intel, так как его процессоры больше «заточены» под работу с графическими приложениями. Для архитекторов оптимальным станет Intel Core i7. Он является одним из самых мощных среди существующих процессоров на сегодняшний день.


Также необходимо учитывать количество ядер и показатель тактовой частоты, ведь используемые в работе приложения потребуют от процессора многопоточности. Можно выбрать беспроигрышный вариант Intel Core i7-7700К на 4 ядра, работающий на частоте 4,20 ГГц/4,50 ГГц. 


Оперативная память


С оперативкой все достаточно просто: чем ее больше, тем лучше. К тому же, модули памяти стоят относительно недорого, поэтому экономить тут точно не стоит.


Все системные требования к программам указывают объем оперативного запоминающего устройства (ОЗУ), необходимый лишь для их корректного функционирования. Но параллельно с работой САПР-приложений в системе задействуется множество других процессов (операционка, антивирус, браузер и т.д.).


Примерный требуемый объем оперативной памяти можно вычислить по следующей схеме:

  • Операционная система (Windows 10) занимает 4 Гб ОЗУ;
  • Для работы электронной почты и браузера нужно заложить еще 1 Гб;
  • Добавьте на каждое одновременно используемое прикладное программное обеспечение еще по 1 Гб. Т.е., если вы параллельно запускаете AutoCad, Revit и Inventor, то прибавьте 3 Гб;
  • Теперь необходимо взять размер самой тяжелой созданной модели и умножить его на 20 (если одновременно работают несколько программ, то полученное число дополнительно умножить на их количество). Например, параллельно запущены AutoCAD и Inventor, а самый большой проект в Inventor весит 150 Мб, то считаем следующим образом: 0,15 Гб х 20 х 2 = 6 Гб.


Сложите все полученные показатели. В нашем случае: 4 Гб + 1 Гб + 3 Гб + 6 Гб = 14 Гб. Итоговую цифру округлите до следующего по объему стандартному размеру оперативки (4, 8, 16, 32…). На нашем примере получается, что потребуется минимум 16 Гб. Округляя вычисления, вы оставляете запас памяти для увеличения системных требований программ через несколько лет и для возможности беспрепятственного расширения своего круга задач в будущем.


Накопитель


Рекомендуется устанавливать систему на SSD-диск, а для хранения остальных файлов и данных использовать стандартный HDD-накопитель. В этом случае гнаться за SSD на 1 ТБ не целесообразно (в отличие от винчестера). Для эффективной работы системы и всех установленных на диск программ будет вполне достаточно 250 Гб. А сэкономленные деньги лучше вложить в другие не менее важные комплектующие.  


Блок питания


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


В целом хватит блока питания с показателем от 500 Вт с качественной проводкой и защитой от скачков напряжений. Подходящим вариантом может стать Corsair VS 650W, Chieftec ECO GPE-500S или Thermaltake ATX 550W. 


Система охлаждения


Чтобы все внутренние элементы компьютера оставались в целости и сохранности, корпус системного блока должен быть прочным и хорошо продуваемым. На современном электронном рынке выделяют 2 вида систем охлаждения компьютера:

  • Воздушные системы охлаждения — наиболее популярные. Они функционируют за счет того, что вырабатываемое тепло передается на радиатор, а после выводится во внешнее пространство;
  • Жидкостные системы охлаждения – в последнее время стали применяться чаще. Принцип их работы заключается в следующем: с помощью жидкости, которая течет по трубкам, тепло отводится от элементов компьютера к радиатору, а потом рассеивается наружу.


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


При сборке компьютера для архитектора устанавливайте кулер на процессор с медными трубами и автоматическим контроллером оборотов. Недорогие, но качественные кулеры выпускает тайваньская компания Cooler Master. Они подходят под огромное количество сокетов, прекрасно функционируют и с Intel, и с AMD, не превышают комфортный уровень шума, отлично охлаждают компоненты компьютера.


Монитор


При покупке компьютера для архитектора или дизайнера и любого другого специалиста, который занимается графикой, следует выбирать экраны диагональю от 19 дюймов с разрешением 1920х1080 пикселей (Full HD). Это обеспечит хорошую видимость общей картины и позволит комфортно работать в таких программах как AutoCad, Компас, ArchiCAD, SketchUp и т.д.


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


Широкая линейка мониторов представлена как в сегменте масс-маркета (например, у компаний HP и BenQ), так и в более дорогостоящем и профессиональном направлении (бренды Dell и EIZO).

Вы всегда можете

Власти Петербурга передадут Сирии компьютер для оцифровки архитектурных памятников — Наука

САНКТ-ПЕТЕРБУРГ, 9 апреля. /ТАСС/. Власти Санкт-Петербурга передадут специалистам из Сирии мощный компьютер, который поможет оцифровать архитектурные и археологические памятники страны. Об этом в пятницу сообщил на пресс-конференции вице-губернатор Петербурга Борис Пиотровский.

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

Как сказала на пресс-конференции замдиректора Института истории материальной культуры РАН Наталья Соловьева, новый компьютер, передаваемый сирийским специалистам, обладает большими вычислительными мощностями и памятью для работы с 3D-моделью Пальмиры, у сирийской стороны такого оборудования нет. Он позволит им организовать работу с уникальной 3D-моделью древней Пальмиры, которую создали ученые ИИМК РАН по результатам экспедиций в Сирию. 3D-модель содержит самую полную информацию о состоянии Пальмиры.

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

В сентябре 2016 года команда исследователей из Санкт-Петербурга совершила экспедицию в Пальмиру, чтобы провести фотосъемку и создать 3D-модель всего архитектурно-ландшафтного комплекса. На сегодняшний день эта модель содержит самую полную информацию о состоянии Пальмиры. В 2019 году российские археологи провели вторую аэрофотосъемку объектов всемирного наследия в Пальмире и дополнили 3D-модель этого некогда богатейшего города античности в оазисе Сирийской пустыни между Дамаском и Евфратом, руины которого внесены в список объектов Всемирного наследия ЮНЕСКО.

человек или компьютер? — Ассоциация архитекторов

Нелинейная архитектура пошла дальше. Нелинейная (фрактальная, дигитальная) архитектура диаметрально противоположна установкам всех десяти предшествующих тысячелетий: она исходит не из идеи космического порядка и закона, но из идей «хаоса», «множественности», «нестабильности», «катастроф» как мировоззренческих констант. (Добрицына И. А. От постмодернизма — к нелинейной архитектуре : Архитектура в контексте современной философии. — Москва, 2004. –С.5).

Оставляю в стороне исходные основания этих концепций – разработки философов, физиков, математиков, исследующих хаос. Это их дело. Мне важен вывод, сделанный архитекторами:

«Теория множественности… предполагает отказ от традиционных для естественнонаучного знания, философии и культурологии проблемных полей, понятийно-категориального аппарата, знаковых ценностей …Противопоставление эстетики хаоса эстетике порядка привело к игнорированию самого понятия композиция, к торжеству принципа нарушения устоявшихся моделей формообразования. На смену композиционной логике в 70-е пришла принципиально иная логика – логика текста, допускающая игру смыслов». (Шуб М.Л. Культура постмодернизма в пространстве архитектуры: диссертация. кандидата культурологи).

А вы говорите – польза, прочность, красота…

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

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

Беда заключается в другом: в нелинейной игре смыслов незаменимая роль отведена компьютеру.
«Любая немыслимая прежде форма – криволинейная, органическая, техноорганическая – относительно легко просчитывается компьютером. Разнообразие и неповторимость элементов перестает быть препятствием для строительного производства, базирующегося на новых технологиях… архитектурные объекты и инсталляции, развертывающиеся в виртуальном пространстве, неподвластном законам гравитации, подводят к идее полностью раскованной формы. Особая эстетика освобожденной от архитектонических закономерностей виртуальной архитектуры не может не влиять на реальное проектирование».

(Добрицына И.А. Там же).

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

Ю.М.Лотман так охарактеризовал итоги ХХ века: «антикультура XX столетия ударила по вековому зданию культуры».

Компьютер сегодня занял прочное место в воспитании, отучая детей писать, считать, рисовать, играть, отчуждая их в конечном счете от Культуры. Та же трагедия имеет место в архитектурном образовании, приводя к снижению художественных достоинств дипломных проектов (свидетельствую об этом, как член Аттестационной комиссии в Институте им. Репина более двадцати лет), а затем – к кризису архитектуры как искусства. «Равнодушный схематизм» – так определяют специалисты стиль петербургских новостроек.

Говорят, возможность свободного языкотворчества, персональной свободы формального поиска доводит адептов нелинейной архитектуры до эйфории. Не знаю. Единственно, что отсутствует в их программах и проектах – это человек, бедный живой хомо сапиенс…

* * *

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

Итак, мы вправе констатировать: люди в меру своих сил оказывают сопротивление и коробчатой, и «авторской» архитектуре. Феномен этот еще не исследован ни социологами, ни психологами. Что, если за интуитивной борьбой за искусство архитектуры стоит дефицит в информации, необходимой нам для выживания – с чего я начала свои рассуждения? Мир людей сегодня как никогда близок к катастрофе. Но к лицу ли архитектуре терять профессиональную честь?

Преодолеть кризис профессии – непростая задача. Для ее решения необходимо, на мой взгляд:

– создать профессиональное сообщество, которое возьмет на себя разработку и пропаганду концепции нормального архитектурного наследования;

– привлечь социологов и психологов, которые могли бы исследовать влияние архитектурной формы на сознание и поведение человека;

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

– возможно, впоследствии организовать соответствующую законотворческую инициативу, рассмотрев исключение «красоты» из целей архитектурного творчества как нарушение прав человека;

– а в первую очередь – предпринять реформу архитектурного образования в сторону «архитектуры как искусства».

Компьютерный архитектор: факты о заработной плате и карьере

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

Что такое компьютерный архитектор?

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

В таблице ниже приведены важные сведения о том, как стать компьютерным архитектором.

Необходимая степень Степень бакалавра
Образование Область исследования Информатика, информационные технологии
Ключевые навыки Решение проблем, технические, программирование
Рост рабочих мест (2018-2028) 9% (для всех аналитиков компьютерных систем) *
Средняя зарплата (2019) $ 122 421 (для компьютерных архитекторов) **

Источник: * U.S. Бюро статистики труда, ** Payscale.com

Чем занимаются компьютерные архитекторы?

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

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

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

Какое обучение мне следует пройти?

По данным Бюро статистики труда США, вам, как правило, необходимо иметь степень бакалавра в области компьютерных наук, информационных технологий или другой смежной области (www.bls.gov). Поскольку эта должность требует определенных знаний в ряде дисциплин, работодатели могут больше ценить ваши технические знания и опыт, а не уровень образования.Часто вы можете продемонстрировать свое мастерство с помощью профессиональной сертификации в отраслевых организациях, таких как CompTIA, или у поставщиков оборудования и программного обеспечения, таких как Microsoft или Cisco.

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

Какие навыки мне нужны?

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

Сколько я могу заработать?

Ваша зарплата может варьироваться в зависимости от вашего опыта и уровня знаний в определенных технологиях. BLS сообщил в 2018 году, что все аналитики компьютерных систем, включая компьютерных архитекторов, получали среднюю годовую зарплату в размере 88 740 долларов США. В 2019 году Payscale.com сообщил, что архитекторы компьютерного оборудования и программного обеспечения получали среднюю зарплату в размере 122 421 доллар США. По данным BLS, ожидается, что количество вакансий вырастет на 9% в период с 2018 по 28 год, что выше среднего.Те, у кого есть бизнес-знания в области, в которой они планируют работать, должны иметь наибольшие перспективы.

Какие альтернативные профессии связаны?

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

Что такое компьютерная архитектура? — Computer Science Degree Hub

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

Рейтинг: 10 лучших онлайн-программ по информатике

Что такое компьютерная архитектура?

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

  • Дизайн системы — сюда входят все аппаратные части, такие как ЦП, процессоры данных, мультипроцессоры, контроллеры памяти и прямой доступ к памяти. Эта часть и есть настоящая компьютерная система.
  • Архитектура набора команд — включает функции и возможности ЦП, язык программирования ЦП, форматы данных, типы регистров процессора и инструкции, используемые компьютерными программистами.Эта часть — программное обеспечение, которое запускает ее, например Windows, Photoshop или аналогичные программы.
  • Микроархитектура — определяет элемент обработки и хранения данных или пути к данным и то, как они должны быть реализованы в архитектуре набора команд. Сюда могут входить запоминающие устройства DVD или аналогичные устройства.

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

Как стать компьютерным архитектором

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

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

Перспективы карьеры

Пока у нас есть компьютеры и все компоненты, входящие в состав компьютерной системы, потребность в компьютерных архитекторах будет сохраняться. Ожидается, что компьютерные архитекторы увидят рост занятости на 6% в период с 2016 по 2026 год, как сообщает U.S. Бюро статистики труда (BLS). Хотя облачные вычисления несколько снизили потребность в компьютерных архитекторах, они будут оставаться востребованными, поскольку предприятия продолжают увеличивать свои технологические потребности. BLS сообщает, что компьютерные архитекторы по всей стране получали заработную плату в диапазоне от 58 160 до 162 390 долларов по состоянию на май 2017 года при средней зарплате в 107 870 долларов.

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

Безопасность | Стеклянная дверь

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

Nous aider à garder Glassdoor sécurisée

Nous avons reçu des activités suspectes venant de quelqu’un utilisant votre réseau internet.Подвеска Veuillez Patient que nous vérifions que vous êtes une vraie personne. Вотре содержание
apparaîtra bientôt. Si vous continuez à voir ce message, veuillez envoyer un
электронная почта à
pour nous informer du désagrément.

Unterstützen Sie uns beim Schutz von Glassdoor

Wir haben einige verdächtige Aktivitäten von Ihnen oder von jemandem, der in ihrem
Интернет-Netzwerk angemeldet ist, festgestellt. Bitte warten Sie, während wir
überprüfen, ob Sie ein Mensch und kein Bot sind.Ihr Inhalt wird в Kürze angezeigt.
Wenn Sie weiterhin diese Meldung erhalten, informieren Sie uns darüber bitte по электронной почте:
.

We hebben verdachte activiteiten waargenomen op Glassdoor van iemand of iemand die uw internet netwerk deelt.
Een momentje geduld totdat, мы выяснили, что u daadwerkelijk een persoon bent. Uw bijdrage zal spoedig te zien zijn.
Als u deze melding blijft zien, электронная почта:
om ons te laten weten dat uw проблема zich nog steeds voordoet.

Hemos estado detectando actividad sospechosa tuya o de alguien con quien compare tu red de Internet. Эспера
mientras verificamos que eres una persona real. Tu contenido se mostrará en breve. Si Continúas recibiendo
este mensaje, envía un correo electrónico
a para informarnos de
que tienes problemas.

Hemos estado percibiendo actividad sospechosa de ti o de alguien con quien compare tu red de Internet. Эспера
mientras verificamos que eres una persona real.Tu contenido se mostrará en breve. Si Continúas recibiendo este
mensaje, envía un correo electrónico a
para hacernos saber que
estás teniendo problemas.

Temos Recebido algumas atividades suspeitas de voiceê ou de alguém que esteja usando a mesma rede. Aguarde enquanto
confirmamos que Você é Uma Pessoa de Verdade. Сеу контексто апаресера эм бреве. Caso продолжить Recebendo esta
mensagem, envie um email para
пункт нет
informar sobre o проблема.

Abbiamo notato alcune attività sospette da parte tua o di una persona che condivide la tua rete Internet.Attendi mentre verifichiamo Che sei una persona reale. Il tuo contenuto verrà visualizzato a breve. Secontini
visualizzare questo messaggio, invia un’e-mail all’indirizzo
per informarci del
проблема.

Пожалуйста, включите куки и перезагрузите страницу.

Это автоматический процесс. Ваш браузер в ближайшее время перенаправит вас на запрошенный контент.

Подождите до 5 секунд…

Перенаправление…

Заводское обозначение: CF-102 / 6420c8ef2b613a77.

Компьютерная архитектура Карьера и вакансии

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

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

Что влечет за собой компьютерная архитектура

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

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

Что такое системный дизайн?

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

Что такое архитектура набора команд?

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

Что такое микроархитектура?

Это относится к тому, как пути к данным интегрированы в компьютер, например, на дисках и жестких дисках. Таким образом, компьютерные архитекторы должны обладать глубокими знаниями в области обработки данных.

Стать компьютерным архитектором

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

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

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

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

Работа в области компьютерной архитектуры

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

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

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

Заработная плата, которую вы можете ожидать в качестве компьютерного архитектора, сильно зависит от вашего опыта и знаний в различных технологиях. По данным PayScale.com, средняя годовая зарплата составляет около 114 000 долларов в год.

Варианты карьерного роста для компьютерных архитекторов

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

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

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

Есть ли у вас навыки, необходимые для работы в области компьютерной архитектуры?

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

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

Компьютерная архитектура | Школа электротехники и вычислительной техники

Обзор

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

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

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

Исследования

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

Курсы

  • Дизайн цифровых компьютеров
  • Продвинутые темы в компьютерной архитектуре
  • CMOS Digital Logic Design (VLSI)
  • Усовершенствованная высокоскоростная компьютерная арифметика
  • Система на кристалле архитектуры
  • Высокоскоростная компьютерная арифметика
  • Оптимизация компилятора для компьютерной архитектуры
  • Оценка производительности компьютерных систем

Исследовательские лаборатории

Наши исследовательские центры включают 3 исследовательских лаборатории с несколькими кластерами высокопроизводительных рабочих станций, стоечных систем, высокоскоростных осциллографов, логических анализаторов и генераторов сигналов.

Группа исследования компьютерной архитектуры СБИС
Группа разработки СБИС смешанных сигналов

Факультет

Доктор Джеймс Стайн получил степень доктора философии. В 2000 году получил степень бакалавра электротехники в университете Лихай. С 1999 по 2005 год он был ассистентом и адъюнкт-профессором Иллинойского технологического института, где руководил Лабораторией компьютерной архитектуры, арифметики и САПР СБИС. В настоящее время он является профессором графа и Кэролайн Глимп в школе электротехники и вычислительной техники при Университете штата Оклахома.Доктор Стайн специализируется на исследованиях и обучении в области СБИС, компьютерной арифметики, архитектуры компьютерных систем и цифрового дизайна. Его исследовательские работы были широко опубликованы в журналах и материалах конференций. Он является автором двух монографий в области компьютерной арифметики. Он является членом ACM, IEEE Computer Society, Eta Kappa Nu и старшим членом IEEE.

Машинное обучение для компьютерной архитектуры

Автор: Амир Язданбахш, научный сотрудник Google Research

Одним из ключевых участников последних достижений машинного обучения (ML) является разработка настраиваемых ускорителей, таких как TPU Google и Edge TPU, которые значительно увеличивают доступную вычислительную мощность, открывая различные возможности, такие как AlphaGo, RankBrain, WaveNets и Conversational Agents.Это увеличение может привести к повышению производительности обучения и логического вывода нейронных сетей, открывая новые возможности в широком спектре приложений, таких как зрение, язык, понимание и беспилотные автомобили.

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

В статье «Apollo: Transferable Architecture Exploration» мы представляем прогресс наших исследований по разработке пользовательских ускорителей на основе машинного обучения. В то время как недавняя работа продемонстрировала многообещающие результаты в использовании ML для улучшения процесса низкоуровневого планирования этажа (в котором компоненты оборудования пространственно разложены и соединены в кремнии), в этой работе мы сосредоточены на смешивании ML с высокоуровневой системной спецификацией и этап архитектурного проектирования, ключевой фактор, влияющий на общую производительность микросхемы, в котором устанавливаются элементы дизайна, которые управляют функциональностью высокого уровня.Наше исследование показывает, как алгоритмы машинного обучения могут облегчить изучение архитектуры и предложить высокопроизводительные архитектуры для ряда глубоких нейронных сетей с областями, охватывающими классификацию изображений, обнаружение объектов, распознавание текста и семантическую сегментацию.

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

На следующем рисунке показано общее пространство поиска архитектуры целевого ускорителя машинного обучения. Ускоритель содержит двумерный массив элементов обработки (PE), каждый из которых выполняет набор арифметических вычислений в режиме одной инструкции с множеством данных (SIMD).Основными архитектурными компонентами каждого PE являются ядра обработки, которые включают несколько вычислительных дорожек для операций SIMD. Каждый PE имеет общую память (PE Memory) для всех своих вычислительных ядер, которая в основном используется для хранения активаций модели, частичных результатов и выходных данных, в то время как отдельные ядра имеют память, которая в основном используется для хранения параметров модели. Каждое ядро ​​имеет несколько вычислительных дорожек с многоходовыми модулями умножения-накопления (MAC). Результаты расчетов модели в каждом цикле либо сохраняются обратно в PE-память для дальнейших вычислений, либо выгружаются обратно в DRAM.

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

Стратегии оптимизации
В этом исследовании мы изучили четыре стратегии оптимизации в контексте изучения архитектуры:

  1. Случайно: равномерно произвольно выбирает пространство поиска по архитектуре.
  2. Визирь: использует байесовскую оптимизацию для исследования в пространстве поиска, в котором оценка целевой функции является дорогостоящей (например,грамм. аппаратное моделирование, выполнение которого может занять несколько часов). Используя набор выбранных точек из пространства поиска, байесовская оптимизация формирует суррогатную функцию, обычно представленную гауссовским процессом, который аппроксимирует многообразие пространства поиска. Руководствуясь значением суррогатной функции, байесовский алгоритм оптимизации решает при выборе компромисса исследования и эксплуатации, следует ли брать больше образцов из многообещающих регионов в многообразии (эксплуатация) или брать больше из невидимых регионов в пространстве поиска ( исследование).Затем алгоритм оптимизации использует эти вновь выбранные точки и дополнительно обновляет суррогатную функцию, чтобы лучше моделировать целевое пространство поиска. Vizier реализует ожидаемые улучшения в качестве своей основной функции приобретения. Здесь мы используем Vizier (безопасный), вариант оптимизации с ограничениями, который направляет процесс оптимизации, чтобы не предлагать испытания, которые не удовлетворяют заданным ограничениям.
  3. Эволюционный: Выполняет эволюционный поиск с использованием популяции из k индивидуумов, где геном каждого индивидуума соответствует последовательности дискретизированных конфигураций ускорителя.Новые особи генерируются путем отбора для каждого человека двух родителей из популяции с использованием турнирного отбора, рекомбинации их геномов с некоторой скоростью кроссовера и мутации рекомбинированного генома с некоторой вероятностью.
  4. Оптимизация методом «черного ящика» на основе совокупности (P3BO): использует множество методов оптимизации, включая эволюционные и основанные на модели, которые, как было показано, повышают эффективность выборки и надежность. Выборочные данные обмениваются между методами оптимизации в ансамбле, и оптимизаторы взвешиваются по их истории производительности для создания новых конфигураций.В нашем исследовании мы используем вариант P3BO, в котором гиперпараметры оптимизаторов динамически обновляются с помощью эволюционного поиска.

Вложения пространства поиска ускорителя
Чтобы лучше визуализировать эффективность каждой стратегии оптимизации при навигации в пространстве поиска ускорителя, мы используем t-распределенное стохастическое встраивание соседей (t-SNE) для сопоставления исследуемых конфигураций в двумерном пространстве через оптимизацию. горизонт. Цель (награда) за все эксперименты определяется как пропускная способность (вывод / секунда) на область ускорителя.На рисунках ниже оси x и y обозначают компоненты t-SNE (вложение 1 и вложение 2) пространства вложения. Звездочки и круглые маркеры показывают невыполнимые (нулевое вознаграждение) и возможные проектные баллы, соответственно, при этом размер возможных баллов соответствует их вознаграждению.

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

Визуализация, представляющая t-SNE исследованных проектных точек (~ 4K) с помощью стратегии случайной оптимизации (максимальное вознаграждение = 0.96). Максимальные баллы вознаграждения (маркеры красного креста) подсвечиваются в последнем кадре анимации.

По сравнению с подходом случайной выборки стратегия оптимизации Vizier по умолчанию обеспечивает хороший баланс между исследованием пространства поиска и поиском точек проектирования с более высокими вознаграждениями (1,14 против 0,96). Однако этот подход имеет тенденцию застревать в невозможных областях, и, хотя он действительно находит несколько точек с максимальной наградой (обозначенных маркерами красного креста), он находит несколько возможных точек во время последних итераций исследования.

Как указано выше, со стратегией оптимизации Vizier (по умолчанию) (максимальное вознаграждение = 1,14). Максимальные баллы вознаграждения (маркеры красного креста) подсвечиваются в последнем кадре анимации.

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

Как указано выше, со стратегией эволюционной оптимизации (максимальное вознаграждение = 1,10). Максимальные баллы вознаграждения (маркеры красного креста) подсвечиваются в последнем кадре анимации.

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

Как указано выше, со стратегией оптимизации P3BO (максимальное вознаграждение = 1.13). Максимальные баллы вознаграждения (маркеры красного креста) подсвечиваются в последнем кадре анимации.

Исследование архитектуры при различных конструктивных ограничениях
Мы также изучили преимущества каждой стратегии оптимизации при различных ограничениях по площади, 6,8 мм 2 , 5,8 мм 2 и 4,8 мм 2 . Следующие ниже графики скрипки показывают полное распределение максимально достижимого вознаграждения в конце оптимизации (после десяти запусков каждого с 4К испытаниями) по изученным стратегиям оптимизации.Более широкие разделы представляют более высокую вероятность наблюдения возможных конфигураций архитектуры при конкретном заданном вознаграждении. Это означает, что мы отдаем предпочтение алгоритму оптимизации, который дает увеличенную ширину в точках с более высоким вознаграждением (более высокая производительность).

Две самые эффективные стратегии оптимизации для исследования архитектуры — эволюционная и P3BO, обе с точки зрения предоставления решений с высокой отдачей и надежностью при нескольких запусках. Рассматривая различные конструктивные ограничения, мы видим, что по мере ужесточения бюджетного ограничения области стратегия оптимизации P3BO приводит к более высокопроизводительным решениям.Например, когда ограничение бюджета площади установлено на 5,8 мм 2 , P3BO находит расчетные точки с вознаграждением (пропускная способность / площадь ускорителя) 1,25, превосходя все другие стратегии оптимизации. Та же тенденция наблюдается, когда ограничение бюджета площади установлено на 4,8 мм 2 , немного лучшее вознаграждение обнаруживается с большей надежностью (меньшей изменчивостью) в нескольких прогонах.

График скрипки, показывающий полное распределение максимально достижимого вознаграждения за десять прогонов по стратегиям оптимизации после 4K пробных оценок при бюджете области 6.8 мм 2 . Алгоритм P3BO и Evolutionary позволяют получить большее количество высокопроизводительных проектов (более широкие разделы). Оси x и y показывают изученные алгоритмы оптимизации и среднее геометрическое ускорение (вознаграждение) по сравнению с базовым ускорителем, соответственно.
Как указано выше, при бюджете площади 5,8 мм 2 .
Как указано выше, при бюджете области 4.8 мм 2 .

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

Благодарности
Эту работу выполнили Амир Язданбахш, Кристоф Ангермюллер и Беркин Акин. Мы также хотели бы поблагодарить Милад Хашеми, Кевина Сверски, Джеймса Лаудона, Германа Шмита, Клиффа Янга, Янки Чжоу, Альбина Джонса, Сатраджита Чаттерджи, Рави Нараянасвами, Рэя (И-Джуй) Сунга, Суйога Гупту, Кирана Сешадри, Сувинай Субраманиана, Мэтью Дентону и команде Vizier за их помощь и поддержку.


1 В нашем целевом ускорителе общее количество расчетных точек составляет около 5 x 10 8 .

2 Площадь кристалла приблизительно равна сумме всех аппаратных компонентов на кристалле, включая внутреннюю память, механизмы обработки, контроллеры, контакты ввода-вывода и т. Д.

Изучите компьютерную архитектуру с помощью онлайн-курсов и занятий

Что такое компьютерная архитектура?

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

Узнайте о компьютерной архитектуре

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

Курсы и сертификаты по компьютерной архитектуре

Некоторые ведущие мировые научно-исследовательские и инновационные институты сотрудничают с edX, чтобы предложить вам курсы по передовой компьютерной архитектуре.Массачусетский технологический институт может научить вас основам компьютерной архитектуры и вычислительных структур, курс, разработанный для ознакомления с классическими системами. Если вы ищете что-то ультрасовременное, курс Delft Introduction to Quantum Computers и Microsoft IoT Architecture основан на навыках, которые вы приобретаете с помощью классической компьютерной архитектуры, и поможет вам в разработке новейших процессоров. Другие курсы включают в себя различные аппаратные компоненты и компьютерную организацию. Проектирование системы для облачных вычислений (USM) или виртуальной реальности (Калифорнийский университет в Сан-Диего) подготовит вас к решению некоторых из важнейших задач, происходящих в сфере производительности компьютеров сегодня.Даже дизайн нейронных сетей может помочь вам построить карьеру в системной архитектуре, которая поставит вас на грань возможностей компьютеров.

Сделайте карьеру в области компьютерной архитектуры

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