Какая компьютерная архитектура объединяет память данных и память программ в одном устройстве

Обновлено: 05.07.2024

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

Обзор

Что такое параллельные вычисления?

Последовательные вычисления

Традиционно программное обеспечение писалось для последовательных вычислений:

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

Например:

Параллельные вычисления

Проще говоря, параллельные вычисления — это одновременное использование нескольких вычислительных ресурсов для решения вычислительной задачи:

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

Например:

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

    Параллельные компьютеры

    • Сегодня практически все автономные компьютеры параллельны с аппаратной точки зрения:
      • Несколько функциональных блоков (кеш L1, кэш L2, переход, предварительная выборка, декодирование, операции с плавающей запятой, обработка графики (GPU), целые числа и т. д.)
      • Несколько исполнительных блоков/ядер
      • Несколько аппаратных потоков

       IBM BG/Q Compute Chip с 18 ядрами (PU) и 16 модулями кэша L2 (L2)

      • Сети соединяют несколько автономных компьютеров (узлов) в большие параллельные компьютерные кластеры.
      • Например, на приведенной ниже схеме показан типичный кластер параллельных компьютеров LLNL:
        • Каждый вычислительный узел сам по себе является многопроцессорным параллельным компьютером
        • Несколько вычислительных узлов объединены в сеть Infiniband.
        • Узлы специального назначения, также многопроцессорные, используются для других целей.
        • Большинство больших параллельных компьютеров (суперкомпьютеров) в мире представляют собой кластеры оборудования, произведенного несколькими (в основном) известными поставщиками.

        График совместного использования систем поставщиков и доля производительности» width=

        Зачем использовать параллельные вычисления?

        Реальный мир чрезвычайно сложен

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



        Основные причины использования параллельного программирования

        ЭКОНОМЬТЕ ВРЕМЯ И/ИЛИ ДЕНЬГИ
        • Теоретически, выделение большего количества ресурсов для выполнения задачи сократит время ее выполнения, что может привести к снижению затрат.
        • Параллельные компьютеры могут быть собраны из дешевых, широко распространенных компонентов.

        Задачи выполняются быстрее с большим ресурсы, как показано несколькими людьми, строящими дом и несколькими плугами на поле». ширина =

        РЕШАТЬ БОЛЬШИЕ/БОЛЕЕ СЛОЖНЫЕ ПРОБЛЕМЫ

        Большие проблемы

        ОБЕСПЕЧИТЬ ПАРАЛЛЕЛЬНОСТЬ
        • Один вычислительный ресурс может одновременно выполнять только одну операцию. Несколько вычислительных ресурсов могут выполнять множество задач одновременно.
        • Пример. Сети для совместной работы представляют собой глобальную площадку, где люди со всего мира могут встречаться и работать «виртуально».

        CollaborativeNetworks, объединяющие людей по всему миру

        ИСПОЛЬЗОВАТЬ НЕМЕСТНЫЕ РЕСУРСЫ
        • Использование вычислительных ресурсов в глобальной сети или даже в Интернете, когда локальных вычислительных ресурсов недостаточно или недостаточно.
        • Пример. SETI@home (setiathome.berkeley.edu) насчитывает более 1,7 миллиона пользователей почти во всех странах мира (май 2018 г.).
        ЛУЧШЕ ИСПОЛЬЗОВАТЬ БАЗОВОЕ ПАРАЛЛЕЛЬНОЕ ОБОРУДОВАНИЕ
        • Современные компьютеры, даже ноутбуки, имеют параллельную архитектуру с несколькими процессорами/ядрами.
        • Параллельное программное обеспечение специально предназначено для параллельного оборудования с несколькими ядрами, потоками и т. д.
        • В большинстве случаев последовательные программы, запускаемые на современных компьютерах, «тратят впустую» потенциальную вычислительную мощность.

        Процессор Intel Xeon с 6 ядрами и 6 единиц кэш-памяти L3

        Будущее

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

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

        Наука и техника

        Исторически параллельные вычисления считались «высшим уровнем вычислений» и использовались для моделирования сложных задач во многих областях науки и техники:

        • Атмосфера, Земля, Окружающая среда
        • Физика - прикладная, ядерная, частица, конденсированное состояние, высокое давление, термоядерный синтез, фотоника.
        • Бионаука, биотехнология, генетика
        • Химия, молекулярные науки
        • Геология, сейсмология
        • Машиностроение: от протезов до космических кораблей
        • Электротехника, схемотехника, микроэлектроника
        • Информатика, математика
        • Оборона, Оружие

        Примеры научного и инженерного моделирования

        Промышленные и коммерческие

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

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

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

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

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

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

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

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

        Мультипроцессоры и мультикомпьютеры

        В этом разделе мы обсудим два типа параллельных компьютеров —

        Мультикомпьютеры с общей памятью

        Три наиболее распространенные модели мультипроцессоров с общей памятью —

        Унифицированный доступ к памяти (UMA)

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

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

        UMA Multiprocessor

        Неоднородный доступ к памяти (NUMA)

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

        Модель NUMA для многопроцессорных систем

        Архитектура кэш-памяти (COMA)

        Модель COMA — это частный случай модели NUMA. Здесь вся распределенная основная память преобразуется в кэш-память.

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

        Многовекторные и SIMD-компьютеры

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

        Векторные суперкомпьютеры

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

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

        Архитектура векторного суперкомпьютера
        < /p>

        Суперкомпьютеры SIMD

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

        Операционная модель SIMD-компьютеров

        Модели PRAM и VLSI

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

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

        Параллельные машины с произвольным доступом

        Шепердсон и Стерджис (1963) смоделировали обычные однопроцессорные компьютеры как машины с произвольным доступом (ОЗУ). Форчун и Уилли (1978) разработали модель параллельной машины с произвольным доступом (PRAM) для моделирования идеального параллельного компьютера с нулевыми накладными расходами на доступ к памяти и синхронизацией.

        Модель PRAM

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

        Ниже приведены возможные операции обновления памяти —

        Эксклюзивное чтение (ER) — в этом методе в каждом цикле только один процессор может читать из любой области памяти.

        Эксклюзивная запись (EW). В этом методе по крайней мере один процессор может одновременно записывать в ячейку памяти.

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

        Параллельная запись (CW) — позволяет выполнять одновременные операции записи в одну и ту же ячейку памяти. Чтобы избежать конфликта записи, настроены некоторые политики.

        Модель сложности СБИС

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

        В настоящее время технологии СБИС являются двумерными. Размер микросхемы СБИС пропорционален объему памяти (памяти), доступной в этой микросхеме.

        Мы можем рассчитать пространственную сложность алгоритма по площади чипа (A) реализации этого алгоритма на чипе СБИС. Если T — это время (задержка), необходимое для выполнения алгоритма, то A.T дает верхнюю границу общего количества битов, обработанных чипом (или вводом-выводом). Для определенных вычислений существует нижняя граница f(s), такая что

        Где A = площадь чипа, а T = время

        Направления развития архитектуры

        Эволюцию параллельных компьютеров я распределил по следующим направлениям —

        • Несколько дорожек процессора
          • Многопроцессорная версия
          • Многокомпьютерная дорожка
          • Векторный трек
          • Отслеживание SIMD
          • Многопоточный трек
          • Отслеживание потока данных

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

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

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

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

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

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

          Веб-разработка, языки программирования, тестирование программного обеспечения и другое

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

          1. Архитектура фон Неймана

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

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

          Каждая память имеет несколько местоположений, и каждое место имеет уникальный адрес. Мы можем обращаться к содержимому памяти по его расположению независимо от того, какой тип данных и инструкций присутствует в памяти, благодаря чему мы можем читать или записывать любые данные и инструкции. Выполнение всегда происходит последовательно, если изменение не требуется.Например, предположим, что мы выполняем инструкцию со строки 1 по строку 10, но теперь нам требуется выполнить строку 50 вместо строки 11, тогда мы переходим к инструкции 50 и выполняем ее.

           Архитектура фон Неймана

          Существует шина (адресная шина/шина данных/шина управления), используемая для выполнения инструкций и кода данных. Устройство ввода принимает данные или инструкции, а центральный процессор (ЦП) выполняет одну операцию за раз, либо извлекая данные, либо вводя/извлекая инструкции из памяти. После завершения операции она отправляется на устройство вывода. Блоки управления и логики для обработки операций находятся внутри центрального процессора.

          Все в одном пакете для разработки программного обеспечения (600+ курсов, 50+ проектов) 600+ онлайн-курсов | 3000+ часов | Поддающиеся проверке сертификаты | Пожизненный доступ
          4,6 (3144 оценки)

          2. Гарвардская архитектура

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

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

          Набор инструкций архитектура

          3. Архитектура набора инструкций

          Чтобы составить архитектуру, необходима архитектура набора инструкций, так как в ней есть набор инструкций, понятных процессору. Он имеет два набора инструкций: один — RISC (компьютер с сокращенным набором инструкций), а второй — CISC (компьютер со сложным набором инструкций).

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

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

          4. Микроархитектура

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

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

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

          5. Дизайн системы

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

          Заключение

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

          Рекомендуемые статьи

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

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

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

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

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

          *Условия использования:

          Изображения для загрузки на веб-сайте отдела новостей Массачусетского технологического института доступны некоммерческим организациям, прессе и широкой публике в соответствии с лицензией Creative Commons Attribution Non-Commercial No Derivatives. Вы не можете изменять предоставленные изображения, кроме как обрезать их до нужного размера. При воспроизведении изображений необходимо использовать кредитную линию; если он не указан ниже, укажите, что изображения принадлежат "MIT".

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

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

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

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

          Предыдущее изображение Следующее изображение

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

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

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

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

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

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

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

          Однако такая архитектура невозможна с существующей технологией на основе кремния, по словам ведущего автора статьи Макса Шулакера, который является одним из основных сотрудников Лаборатории технологий микросистем Массачусетского технологического института. «Сегодня схемы являются двумерными, поскольку создание обычных кремниевых транзисторов связано с чрезвычайно высокими температурами, превышающими 1000 градусов по Цельсию», — говорит Шулакер. «Если вы затем построите второй слой кремниевых схем сверху, эта высокая температура повредит нижний слой схем».

          Ключом в этой работе является то, что схемы из углеродных нанотрубок и память RRAM можно изготавливать при гораздо более низких температурах, ниже 200 C. «Это означает, что их можно наращивать слоями, не повреждая находящиеся под ними схемы», – говорит Шулакер.

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

          "Помимо улучшенных устройств, трехмерная интеграция может решить еще одну важную проблему в системах: межсоединения внутри и между чипами", – добавляет Сарасват.

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

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

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

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

          "Это приводит к принципиально иному взгляду на вычислительные архитектуры, обеспечивая тесное переплетение памяти и логики", – говорит Рабей. «Эти структуры могут особенно подходить для альтернативных вычислительных парадигм, основанных на обучении, таких как мозговые системы и глубокие нейронные сети, и подход, представленный авторами, определенно является отличным первым шагом в этом направлении».

          "Большое преимущество нашей демонстрации заключается в том, что она совместима с современной кремниевой инфраструктурой как с точки зрения изготовления, так и дизайна", – говорит Хоу.

          "Тот факт, что эта стратегия совместима с КМОП [комплементарными металл-оксид-полупроводник] и жизнеспособна для различных приложений, свидетельствует о том, что это важный шаг в дальнейшем развитии закона Мура", – говорит Кен Хансен, президент и Генеральный директор Semiconductor Research Corporation, поддержавшей исследование. «Чтобы сохранить перспективы экономической теории закона Мура, необходимы инновационные гетерогенные подходы, поскольку размерного масштабирования уже недостаточно. Эта новаторская работа воплощает эту философию».

          Команда работает над улучшением базовых нанотехнологий, изучая новую трехмерную компьютерную архитектуру.Следующим шагом для Шулакера станет сотрудничество с компанией Analog Devices, производящей полупроводники из Массачусетса, над разработкой новых версий системы, которые используют преимущества ее способности выполнять измерения и обработку данных на одном чипе.

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

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

          "Эта демонстрация трехмерной интеграции датчиков, памяти и логики — исключительно инновационная разработка, в которой используется современная КМОП-технология с новыми возможностями полевых транзисторов из углеродных нанотрубок", – говорит Сэм Фуллер, почетный технический директор компании Analog Devices. Устройства, не участвовавшие в исследовании. «Это может стать платформой для многих революционных приложений в будущем».

          Эта работа финансировалась Агентством перспективных оборонных исследовательских проектов, Национальным научным фондом, Корпорацией исследований полупроводников, STARnet SONIC и компаниями-членами Stanford SystemX Alliance.

          Читайте также: