Асинхронная схема ( безтактовая или самосинхронизирующаяся схема ) [1] : Лекция 12 [примечание 1] [2] : 157–186 представляет собой последовательную цифровую логическую схему , которая не использует глобальную тактовую схему или генератор сигналов для синхронизации своих компонентов. [1] [3] : 3–5 Вместо этого компоненты управляются схемой квитирования, которая указывает на завершение набора инструкций. Квитирование работает с помощью простых протоколов передачи данных . [3] : 115 Многие синхронные схемы были разработаны в начале 1950-х годов как часть более крупных асинхронных систем (например, ORDVAC ). Асинхронные схемы и их теоретическое окружение являются частью нескольких этапов в проектировании интегральных схем , области цифровой электронной инженерии.
Асинхронные схемы противопоставляются синхронным схемам , в которых изменения значений сигнала в схеме запускаются повторяющимися импульсами, называемыми тактовым сигналом . Большинство цифровых устройств сегодня используют синхронные схемы. Однако асинхронные схемы имеют потенциал быть намного быстрее, иметь более низкий уровень энергопотребления, электромагнитных помех и лучшую модульность в больших системах. Асинхронные схемы являются активной областью исследований в области проектирования цифровой логики . [4] [5]
Только в 1990-х годах жизнеспособность асинхронных схем была продемонстрирована реальными коммерческими продуктами. [3] : 4
Обзор
Все цифровые логические схемы можно разделить на комбинационную логику , в которой выходные сигналы зависят только от текущих входных сигналов, и последовательную логику , в которой выход зависит как от текущих входных, так и от прошлых входных сигналов. Другими словами, последовательная логика — это комбинационная логика с памятью . Практически все практические цифровые устройства требуют последовательной логики. Последовательную логику можно разделить на два типа: синхронную логику и асинхронную логику.
Синхронные цепи
В синхронных логических схемах электронный генератор генерирует повторяющуюся серию равноотстоящих импульсов, называемых тактовым сигналом . Тактовый сигнал подается на все компоненты ИС. Триггеры переключаются только при срабатывании по фронту тактового импульса, поэтому изменения логических сигналов по всей схеме начинаются одновременно и через равные интервалы. Выход всех элементов памяти в схеме называется состоянием схемы . Состояние синхронной схемы изменяется только по тактовому импульсу. Изменения сигнала требуют определенного времени для распространения через комбинационные логические вентили схемы. Это время называется задержкой распространения .
По состоянию на 2021 год [обновлять]синхронизация современных синхронных ИС требует значительных инженерных усилий и сложных инструментов автоматизации проектирования . [6] Разработчики должны гарантировать, что поступление тактовых импульсов не будет ошибочным. С постоянно растущим размером и сложностью ИС (например, ASIC ) это сложная задача. [6] В огромных схемах сигналы, отправляемые по распределительной сети тактовых импульсов, часто оказываются в разное время в разных частях. [6] Эта проблема широко известна как « перекос тактовых импульсов ». [6] [7] : xiv
Максимально возможная тактовая частота ограничивается логическим путем с самой большой задержкой распространения, называемым критическим путем. Из-за этого пути, которые могут работать быстро, большую часть времени простаивают. Широко распространенная тактовая сеть рассеивает много полезной мощности и должна работать независимо от того, получает ли схема входные данные или нет. [6] Из-за этого уровня сложности тестирование и отладка занимают более половины времени разработки во всех измерениях для синхронных схем. [6]
Асинхронные схемы
Асинхронные схемы не нуждаются в глобальных часах, и состояние схемы меняется, как только изменяются входы. Локальные функциональные блоки могут по-прежнему использоваться, но проблема перекоса часов все еще может быть терпима. [7] : xiv [3] : 4
Поскольку асинхронные схемы не должны ждать тактового импульса, чтобы начать обработку входов, они могут работать быстрее. Их скорость теоретически ограничена только задержками распространения логических вентилей и других элементов. [7] : xiv
Однако асинхронные схемы сложнее в проектировании и подвержены проблемам, не встречающимся в синхронных схемах. Это связано с тем, что результирующее состояние асинхронной схемы может быть чувствительно к относительному времени прибытия входов на вентили. Если переходы на двух входах приходят почти в одно и то же время, схема может перейти в неправильное состояние в зависимости от небольших различий в задержках распространения вентилей.
Это называется состоянием гонки . В синхронных схемах эта проблема менее серьезна, поскольку состояние гонки может возникнуть только из-за входов извне синхронной системы, называемых асинхронными входами .
Хотя были созданы некоторые полностью асинхронные цифровые системы (см. ниже), сегодня асинхронные схемы обычно используются в нескольких критически важных частях синхронных систем, где скорость имеет решающее значение, например, в схемах обработки сигналов.
Теоретическая основа
Первоначальная теория асинхронных цепей была создана Дэвидом Э. Мюллером в середине 1950-х годов. [8] Эта теория была позднее представлена в известной книге «Теория коммутации» Рэймонда Миллера. [9]
Термин «асинхронная логика» используется для описания различных стилей проектирования, которые используют различные предположения о свойствах схемы. [10] Они варьируются от модели связанной задержки, которая использует «обычные» элементы обработки данных с завершением, указанным локально сгенерированной моделью задержки, до дизайна, нечувствительного к задержкам , где произвольные задержки через элементы схемы могут быть учтены. Последний стиль имеет тенденцию давать схемы, которые больше, чем реализации связанных данных, но которые нечувствительны к компоновке и параметрическим изменениям и, таким образом, «правильны по конструкции».
Асинхронная логика
Асинхронная логика — это логика, необходимая для проектирования асинхронных цифровых систем. Они функционируют без тактового сигнала , поэтому нельзя полагаться на то, что отдельные логические элементы будут иметь дискретное состояние «истина/ложь» в любой момент времени. Булева (двузначная) логика не подходит для этого, поэтому требуются расширения.
Начиная с 1984 года Вадим О. Васюкевич разработал подход, основанный на новых логических операциях, которые он назвал венъюнкцией (с асинхронным оператором " x ∠ y ", обозначающим "переключение x на фоне y " или "если x , когда y , то") и секвенцией (с приоритетными знаками " x i ≻ x j " и " x i ≺ x j "). При этом учитывается не только текущее значение элемента, но и его история . [11] [12] [13] [14] [15]
Карл М. Фант разработал другую теоретическую трактовку асинхронной логики в своей работе «Логически детерминированное проектирование» в 2005 году, в которой использовалась четырехзначная логика с нулевым и промежуточным значениями в качестве дополнительных значений. Эта архитектура важна, поскольку она квазинечувствительна к задержкам . [16] [17] Скотт К. Смит и Цзя Ди разработали сверхнизкопотребляющую вариацию нулевой условной логики Фанта, которая включает многопороговую КМОП-схему . [18] Эта вариация называется многопороговой нулевой условной логикой (MTNCL) или, альтернативно, логикой условного сна (SCL). [19]
Сети Петри
Сети Петри являются привлекательной и мощной моделью для рассуждений об асинхронных схемах (см. Последующие модели параллелизма ). Особенно полезный тип интерпретируемых сетей Петри, называемый графами переходов сигналов (STG), был предложен независимо в 1985 году Леонидом Розенблюмом и Алексом Яковлевым [20] и Там-Ань Чу. [21] С тех пор STG широко изучались в теории и на практике, [22] [23] что привело к разработке популярных программных инструментов для анализа и синтеза асинхронных схем управления, таких как Petrify [24] и Workcraft. [25]
После появления сетей Петри были разработаны другие модели параллелизма, которые могут моделировать асинхронные схемы, включая модель акторов и исчисления процессов .
Преимущества
Асинхронные схемы продемонстрировали множество преимуществ. Как квази-нечувствительные к задержкам (QDI) схемы (общепризнанные как наиболее «чистая» форма асинхронной логики, сохраняющая вычислительную универсальность) [ требуется ссылка ] , так и менее чистые формы асинхронных схем, которые используют временные ограничения для более высокой производительности и меньшей площади и мощности, представляют несколько преимуществ.
Производительность в среднем случае: среднее время (задержка) операции не ограничивается наихудшим временем завершения компонента (вентиля, провода, блока и т. д.), как это имеет место в синхронных схемах. [7] : xiv [3] : 3 Это приводит к лучшей задержке и производительности пропускной способности. [26] : 9 [3] : 3 Примерами служат спекулятивное завершение [27] [28] , которое применялось для проектирования параллельных префиксных сумматоров, более быстрых, чем синхронные, и высокопроизводительный сумматор с плавающей запятой двойной точности [29], который превосходит ведущие синхронные конструкции.
Раннее завершение : выходные данные могут быть сформированы раньше времени, когда результат обработки входных данных предсказуем или неактуален.
Внутренняя эластичность: переменное количество элементов данных может появляться на входах конвейера в любое время (конвейер означает каскад связанных функциональных блоков). Это способствует высокой производительности, изящно обрабатывая переменные скорости ввода и вывода из-за задержек несинхронизированных этапов конвейера (функциональных блоков) (однако перегрузки все еще возможны, и задержка вентилей ввода-вывода также должна быть принята во внимание [30] : 194 ). [26]
Нет необходимости в согласовании по времени между функциональными блоками. Хотя с учетом различных моделей задержки (прогнозирование времени задержки затвора/провода) это зависит от фактического подхода к реализации асинхронной схемы. [30] : 194
Свобода от постоянно усугубляющихся трудностей распространения высокочастотного , чувствительного к времени тактового сигнала.
Скорость цепи адаптируется к изменяющимся условиям температуры и напряжения, а не фиксируется на скорости, предписанной наихудшими предположениями. [ необходима цитата ] [ неопределенно ] [3] : 3
Более низкое энергопотребление по требованию; [7] : xiv [26] : 9 [3] : 3 нулевое энергопотребление в режиме ожидания. [3] : 3 В 2005 году Epson сообщила о снижении энергопотребления на 70% по сравнению с синхронной конструкцией. [31] Кроме того, можно удалить тактовые драйверы, что может значительно снизить энергопотребление. Однако при использовании определенных кодировок асинхронные схемы могут потребовать больше площади, добавляя аналогичные издержки мощности, если базовый процесс имеет плохие свойства утечки (например, глубокие субмикрометровые процессы, использовавшиеся до внедрения диэлектриков с высоким κ ).
Нет необходимости в согласовании мощности между локальными асинхронными функциональными доменами схемы. Синхронные схемы, как правило, потребляют большое количество тока прямо на фронте тактового сигнала и вскоре после него. Количество переключающихся узлов (и, следовательно, количество потребляемого тока) быстро падает после фронта тактового сигнала, достигая нуля непосредственно перед следующим фронтом тактового сигнала. В асинхронной схеме время переключения узлов не коррелирует таким образом, поэтому потребление тока имеет тенденцию быть более равномерным и менее скачкообразным.
Устойчивость к изменчивости транзистор-транзистор в процессе переноса производства (что является одной из самых серьезных проблем, с которыми сталкивается полупроводниковая промышленность, поскольку кристаллы усаживаются), изменениям напряжения питания, температуры и параметров процесса изготовления. [3] : 3
Менее серьезные электромагнитные помехи (ЭМП). [3] : 3 Синхронные схемы создают большое количество ЭМП в полосе частот на (или очень близкой) их тактовой частоте и ее гармониках; асинхронные схемы генерируют модели ЭМП, которые гораздо более равномерно распределены по всему спектру. [3] : 3
Модульность конструкции (повторное использование), улучшенная помехоустойчивость и электромагнитная совместимость. Асинхронные схемы более устойчивы к изменениям процесса и внешним колебаниям напряжения. [3] : 4
Недостатки
Накладные расходы, вызванные дополнительной логикой, реализующей квитирование. [3] : 4 В некоторых случаях асинхронная конструкция может потребовать вдвое больше ресурсов (площадь, скорость цепи, энергопотребление) синхронной конструкции из-за добавления схем обнаружения завершения и проектирования для тестирования. [32] [3] : 4
По сравнению с синхронным проектированием, в 1990-х и начале 2000-х годов не так много людей были обучены или имели опыт проектирования асинхронных схем. [32]
Синхронные проекты изначально легче тестировать и отлаживать, чем асинхронные. [33] Однако эта позиция оспаривается Фантом, который утверждает, что кажущаяся простота синхронной логики является артефактом математических моделей, используемых в общих подходах к проектированию. [17]
Производительность (скорость) асинхронных схем может быть снижена в архитектурах, требующих полноты ввода (более сложный путь данных). [34]
Отсутствие специализированных коммерческих инструментов EDA , ориентированных на асинхронное проектирование . [34] Однако по состоянию на 2006 год ситуация постепенно улучшалась. [3] : x
Коммуникация
Существует несколько способов создания асинхронных каналов связи, которые можно классифицировать по протоколу и кодировке данных.
Протоколы
Существует два широко используемых семейства протоколов, которые различаются способом кодирования сообщений:
двухфазное рукопожатие (также известное как двухфазный протокол, кодирование без возврата к нулю (NRZ) или сигнализация перехода): коммуникации представлены любым переходом провода; переходы от 0 к 1 и от 1 к 0 считаются коммуникациями.
Четырехфазное рукопожатие (также известное как четырехфазный протокол или кодировка «возврат к нулю» (RZ)): коммуникации представляют собой переход провода с последующим сбросом; последовательность переходов от 0 к 1 и обратно к 0 считается одной коммуникацией.
Несмотря на то, что в каждой коммуникации задействовано больше переходов, схемы, реализующие четырехфазные протоколы, обычно быстрее и проще двухфазных протоколов, поскольку сигнальные линии возвращаются в исходное состояние к концу каждой коммуникации. В двухфазных протоколах реализации схем должны были бы хранить состояние сигнальной линии внутри.
Обратите внимание, что эти основные различия не учитывают большое разнообразие протоколов. Эти протоколы могут кодировать только запросы и подтверждения или также кодировать данные, что приводит к популярному многопроводному кодированию данных. Было предложено много других, менее распространенных протоколов, включая использование одного провода для запроса и подтверждения, использование нескольких значительных напряжений, использование только импульсов или балансировки таймингов для удаления защелок.
Кодирование данных
В асинхронных схемах широко используются два метода кодирования данных: пакетное кодирование данных и многоканальное кодирование.
Другой распространенный способ кодирования данных — использование нескольких проводов для кодирования одной цифры: значение определяется проводом, на котором происходит событие. Это позволяет избежать некоторых предположений о задержке, необходимых при кодировании связанных данных, поскольку запрос и данные больше не разделены.
Кодирование пакетных данных
Кодирование связанных данных использует один провод на бит данных с запросом и сигналом подтверждения; это то же самое кодирование, которое используется в синхронных схемах без ограничения, что переходы происходят на фронте тактового сигнала. Запрос и подтверждение отправляются по отдельным проводам с одним из вышеуказанных протоколов. Эти схемы обычно предполагают модель ограниченной задержки с сигналами завершения, задержанными достаточно долго для выполнения вычислений.
В процессе работы отправитель сигнализирует о доступности и действительности данных с помощью запроса. Затем получатель подтверждает завершение с помощью подтверждения, что указывает на то, что он может обрабатывать новые запросы. То есть запрос связывается с данными, отсюда и название «bundled-data».
Схемы передачи связанных данных часто называют микроконвейерами, независимо от того, используют ли они двухфазный или четырехфазный протокол, даже если этот термин изначально был введен для двухфазных связанных данных.
Многоканальное кодирование
Многорельсовое кодирование использует несколько проводов без взаимно-однозначного отношения между битами и проводами и отдельный сигнал подтверждения. Доступность данных обозначается самими переходами на одном или нескольких проводах данных (в зависимости от типа многорельсового кодирования) вместо сигнала запроса, как в кодировании с пакетированными данными. Это обеспечивает преимущество, заключающееся в том, что передача данных нечувствительна к задержкам. Два распространенных многорельсовых кодирования — это однорельсовое и двухрельсовое. Однорельсовое кодирование (также известное как 1-из-n) представляет число в базе n с сообщением по одному из n проводов. Двухрельсовое кодирование использует пары проводов для представления каждого бита данных, отсюда и название «двухрельсовое»; один провод в паре представляет значение бита 0, а другой представляет значение бита 1. Например, двухрельсовое кодированное двухбитовое число будет представлено двумя парами проводов для четырех проводов в общей сложности. Во время передачи данных связь происходит по одному из каждой пары проводов для указания битов данных. В общем случае кодировка m n представляет данные в виде m слов с основанием n.
Двухканальное кодирование
Двухпроводное кодирование с четырехфазным протоколом является наиболее распространенным и также называется трехфазным кодированием , поскольку имеет два допустимых состояния (10 и 01, после перехода) и состояние сброса (00). Другое распространенное кодирование, которое приводит к более простой реализации, чем однофазное двухпроводное кодирование, — это четырехпроводное кодирование или двухпроводное кодирование с уровневым кодированием, и использует бит данных и бит четности для достижения двухфазного протокола.
В отличие от обычного процессора, процессор без тактовой частоты (асинхронный ЦП) не имеет центрального тактового генератора для координации хода данных по конвейеру. Вместо этого этапы ЦП координируются с помощью логических устройств, называемых «управлением конвейером» или «секвенсорами FIFO». По сути, контроллер конвейера тактирует следующий этап логики, когда текущий этап завершен. Таким образом, центральный тактовый генератор не нужен. На самом деле может быть даже проще реализовать высокопроизводительные устройства в асинхронной, а не тактовой логике:
компоненты могут работать на разных скоростях на асинхронном ЦП; все основные компоненты тактируемого ЦП должны оставаться синхронизированными с центральным тактовым генератором;
традиционный ЦП не может «идти быстрее», чем ожидаемая худшая производительность самой медленной стадии/инструкции/компонента. Когда асинхронный ЦП завершает операцию быстрее, чем предполагалось, следующая стадия может немедленно начать обработку результатов, а не ждать синхронизации с центральным тактовым генератором. Операция может завершиться быстрее обычного из-за атрибутов обрабатываемых данных (например, умножение может быть очень быстрым при умножении на 0 или 1, даже при запуске кода, созданного наивным компилятором), или из-за наличия более высокого напряжения или настройки скорости шины, или более низкой температуры окружающей среды, чем «нормальная» или ожидаемая.
Сторонники асинхронной логики считают, что эти возможности дадут следующие преимущества:
меньшее рассеивание мощности для заданного уровня производительности, и
максимально возможная скорость выполнения.
Самый большой недостаток ЦП без тактовой частоты заключается в том, что большинство инструментов проектирования ЦП предполагают тактируемый ЦП (т. е. синхронную схему ). Многие инструменты «навязывают синхронные методы проектирования». [35] Создание ЦП без тактовой частоты (проектирование асинхронной схемы) включает в себя модификацию инструментов проектирования для обработки логики без тактовой частоты и проведение дополнительных испытаний, чтобы гарантировать, что проект избегает метастабильных проблем. Например, группа, которая проектировала AMULET , разработала инструмент под названием LARD [36] для работы со сложной конструкцией AMULET3.
Примеры
Несмотря на все трудности, было создано множество асинхронных процессоров.
ORDVAC 1951 года был преемником ENIAC и первым асинхронным компьютером, когда-либо созданным. [ 37] [38]
ILLIAC II был первым полностью асинхронным, независимым от скорости процессором, когда-либо созданным; это был самый мощный компьютер того времени. [37]
Модули передачи регистров DEC PDP-16 (около 1973 г.) позволили экспериментатору построить асинхронные 16-битные элементы обработки. Задержки для каждого модуля были фиксированными и основывались на наихудшем временном режиме модуля.
Калтех
С середины 1980-х годов Калифорнийский технологический институт разработал четыре некоммерческих процессора, пытаясь оценить производительность и энергоэффективность асинхронных схем. [39] [40]
Во время демонстраций исследователи загружали простую программу, которая работала в тесном цикле, пульсируя одну из выходных линий после каждой инструкции. Эта выходная линия была подключена к осциллографу. Когда на чип помещали чашку горячего кофе, частота импульсов (эффективная «тактовая частота») естественным образом замедлялась, чтобы адаптироваться к ухудшающейся производительности нагретых транзисторов. Когда на чип выливали жидкий азот , скорость выполнения инструкций взлетала без дополнительного вмешательства. Кроме того, при более низких температурах напряжение, подаваемое на чип, можно было безопасно увеличить, что также улучшало скорость выполнения инструкций — опять же, без дополнительной настройки. [ необходима цитата ]
При реализации в арсениде галлия ( HGaAs 3) было заявлено, что он достигает 100MIPS. [39] : 5 В целом, исследовательская работа интерпретировала полученную производительность CAM как превосходящую по сравнению с коммерческими альтернативами, доступными в то время. [39] : 5
MiniMIPS
В 1998 году был создан MiniMIPS, экспериментальный асинхронный микроконтроллер на базе MIPS I. Несмотря на то, что его производительность, предсказанная SPICE, составляла около 280 MIPS при 3,3 В, реализация страдала от нескольких ошибок в компоновке (человеческий фактор), и результаты оказались ниже примерно на 40% (см. таблицу). [39] : 5
Лютоний 8051
Созданный в 2003 году, это был почти нечувствительный к задержкам асинхронный микроконтроллер, разработанный для обеспечения энергоэффективности. [40] [39] : 9 Реализация микроконтроллера следовала архитектуре Гарварда . [40]
Эпсон
В 2004 году компания Epson выпустила первый в мире гибкий микропроцессор под названием ACT11, 8-битный асинхронный чип. [42] [43] [44] [45] [46] Синхронные гибкие процессоры медленнее, поскольку изгиб материала, на котором изготовлен чип, вызывает дикие и непредсказуемые изменения в задержках различных транзисторов, для которых наихудшие сценарии должны предполагаться везде, и все должно тактироваться на наихудшей скорости. Процессор предназначен для использования в смарт-картах , чипы которых в настоящее время ограничены по размеру теми, которые достаточно малы, чтобы они могли оставаться идеально жесткими.
ИБМ
В 2014 году IBM анонсировала чип, разработанный SyNAPSE , который работает асинхронно, с одним из самых высоких показателей транзисторов среди всех когда-либо созданных чипов. Чип IBM потребляет на порядки меньше энергии, чем традиционные вычислительные системы в тестах распознавания образов. [47]
Асинхронная реализация MIPS R3000, получившая название MiniMIPS (1998)
Несколько версий процессора XAP экспериментировали с различными стилями асинхронного проектирования: XAP с пакетными данными, XAP 1-из-4 и XAP 1-из-2 (с двумя шинами) (2003?) [59]
ARM-совместимый процессор (2003?), разработанный ZC Yu, SB Furber и LA Plana; «разработан специально для изучения преимуществ асинхронного дизайна для приложений, чувствительных к безопасности» [59]
Процессор «сетевой асинхронной архитектуры» (2005), который выполняет подмножество набора инструкций архитектуры MIPS [59]
Процессор ARM996HS (2006) от Handshake Solutions
Процессор HT80C51 (2007?) от Handshake Solutions. [62]
Vortex, суперскалярный процессор общего назначения с архитектурой загрузки/хранения от Intel (2007); [63] он был разработан как тестовый чип Fulcrum Microsystem 2 и не был коммерциализирован, за исключением некоторых его компонентов; чип включал DDR SDRAM и интерфейс Ethernet 10 Гбит, подключенный через сеть Nexus system-on-chip к процессору [63] [64]
Асинхронное ядро DLX Aspida; [68] асинхронный процессор DLX с открытым исходным кодом (ASPIDA) был успешно реализован как в версиях ASIC, так и FPGA [69]
^ ab Horowitz, Mark (2007). "Advanced VLSI Circuit Design Lecture". Стэнфордский университет, Лаборатория компьютерных систем. Архивировано из оригинала 21.04.2016.
^ Стаунструп, Йорген (1994). Формальный подход к проектированию оборудования. Бостон, Массачусетс, США: Springer USA. ISBN978-1-4615-2764-0. OCLC 852790160.
^ abcdefghijklmnop Спарсо, Йенс (апрель 2006 г.). "Учебное пособие по проектированию асинхронных схем" (PDF) . Технический университет Дании.
^ Nowick, SM; Singh, M. (май–июнь 2015 г.). «Асинхронное проектирование — часть 1: обзор и последние достижения» (PDF) . IEEE Design and Test . 32 (3): 5–18. doi :10.1109/MDAT.2015.2413759. S2CID 14644656. Архивировано из оригинала (PDF) 21.12.2018 . Получено 27.08.2019 .
^ Nowick, SM; Singh, M. (май–июнь 2015 г.). «Асинхронное проектирование — часть 2: системы и методологии» (PDF) . IEEE Design and Test . 32 (3): 19–28. doi :10.1109/MDAT.2015.2413757. S2CID 16732793. Архивировано из оригинала (PDF) 21.12.2018 . Получено 27.08.2019 .
^ abcde Myers, Chris J. (2001). Проектирование асинхронных схем. Нью-Йорк: J. Wiley & Sons. ISBN0-471-46412-0. OCLC 53227301.
^ Мюллер, Д. Э. (1955). Теория асинхронных цепей, Отчет № 66. Лаборатория цифровых компьютеров, Иллинойсский университет в Урбане-Шампейне.
^ Миллер, Рэймонд Э. (1965). Теория переключения, т. II . Wiley.
^ van Berkel, CH; Josephs, MB; Nowick, SM (февраль 1999). "Применение асинхронных цепей" (PDF) . Труды IEEE . 87 (2): 234–242. doi :10.1109/5.740016. Архивировано из оригинала (PDF) 2018-04-03 . Получено 2019-08-27 .
^ Васюкевич, Вадим О. (1984). «Whenjunction как логико-динамическая операция. Определение, реализация и приложения». Автоматическое управление и вычислительная техника . 18 (6): 68–74.(Примечание. В этой публикации функция по-прежнему называлась whenjunction вместо venjunction .)
^ Васюкевич, Вадим О. (1998). «Монотонные последовательности двоичных наборов данных и их идентификация с помощью венъюнктивных функций». Автоматическое управление и вычислительная техника . 32 (5): 49–56.
^ Васюкевич, Вадим О. (апрель 2007 г.). «Декодирование асинхронных последовательностей». Автоматическое управление и вычислительная техника . 41 (2). Allerton Press: 93–99. doi :10.3103/S0146411607020058. ISSN 1558-108X. S2CID 21204394.
^ Васюкевич, Вадим О. (2009). "Асинхронные логические элементы. Венъюнкция и секвенция" (PDF) . Архивировано (PDF) из оригинала 2011-07-22.(118 страниц)
^ Васюкевич, Вадим О. (2011). Написано в Риге, Латвия. Асинхронные операторы последовательной логики: Венъюнкция и секвенция — Анализ и проектирование цифровых схем . Конспект лекций по электротехнике. Том 101 (1-е изд.). Берлин / Гейдельберг, Германия: Springer-Verlag . doi :10.1007/978-3-642-21611-4. ISBN978-3-642-21610-7. ISSN 1876-1100. LCCN 2011929655.(xiii+1+123+7 страниц) (Примечание. На задней обложке этой книги ошибочно указан том 4, хотя на самом деле это том 101.)
^ Фант, Карл М. (февраль 2005 г.). Логически детерминированное проектирование: проектирование безтактовой системы с логикой соглашения NULL (NCL) (1-е изд.). Хобокен, Нью-Джерси, США: Wiley-Interscience / John Wiley and Sons, Inc. ISBN978-0-471-68478-7. LCCN 2004050923.(xvi+292 страницы)
^ ab Fant, Karl M. (август 2007). Computer Science Reconsidered: The Invocation Model of Process Expression (1-е изд.). Хобокен, Нью-Джерси, США: Wiley-Interscience / John Wiley and Sons, Inc. ISBN978-0-471-79814-9. LCCN 2006052821 . Получено 2023-07-23 .(xix+1+269 страниц)
^ Смит, Скотт С.; Ди, Цзя (2009). Проектирование асинхронных схем с использованием обычной логики NULL (NCL) (PDF) . Лекции по синтезу цифровых схем и систем. Morgan & Claypool Publishers [d] . стр. 61–73. eISSN 1932-3174. ISBN978-1-59829-981-6. ISSN 1932-3166. Лекция № 23 . Получено 10.09.2023; Смит, Скотт К.; Ди, Цзя (2022) [2009-07-23]. Проектирование асинхронных схем с использованием обычной логики NULL (NCL). Лекции по синтезу цифровых схем и систем. Университет Арканзаса , Арканзас, США: Springer Nature Switzerland AG . doi :10.1007/978-3-031-79800-9. eISSN 1932-3174. ISBN 978-3-031-79799-6. ISSN 1932-3166. Лекция № 23 . Получено 10.09.2023 .(x+86+6 страниц)
^ Розенблюм, Л. Я.; Яковлев, А. В. (июль 1985 г.). «Сигнальные графы: от самосинхронных до синхронизированных. Труды международного семинара по синхронизированным сетям Петри» (PDF) . Турин, Италия: IEEE CS Press. стр. 199–207. Архивировано (PDF) из оригинала 2003-10-23.
^ Чу, Т.-А. (1986-06-01). «О моделях проектирования асинхронных цифровых систем СБИС». Интеграция . 4 (2): 99–113. doi :10.1016/S0167-9260(86)80002-5. ISSN 0167-9260.
^ Яковлев, Александр; Лаваньо, Лучано; Санджованни-Винчентелли, Альберто (1996-11-01). "Унифицированная модель графа переходов сигналов для синтеза асинхронных схем управления". Formal Methods in System Design . 9 (3): 139–188. doi :10.1007/BF00122081. ISSN 1572-8102. S2CID 26970846.
^ Кортаделла, Дж.; Кишиневский, М.; Кондратьев, А.; Лаваньо, Л.; Яковлев, А. (2002). Логический синтез для асинхронных контроллеров и интерфейсов. Springer Series in Advanced Microelectronics. Том 8. Берлин / Гейдельберг, Германия: Springer Berlin Heidelberg. doi :10.1007/978-3-642-55989-1. ISBN978-3-642-62776-7.
^ "Petrify: Связанные публикации". www.cs.upc.edu . Получено 28.07.2021 .
^ abc Nowick, SM; Singh, M. (сентябрь–октябрь 2011 г.). «Высокопроизводительные асинхронные конвейеры: обзор» (PDF) . IEEE Design & Test of Computers . 28 (5): 8–22. doi :10.1109/mdt.2011.71. S2CID 6515750. Архивировано из оригинала (PDF) 21.04.2021 . Получено 27.08.2019 .
^ Nowick, SM; Yun, KY; Beerel, PA; Dooply, AE (март 1997). "Спекулятивное завершение проектирования высокопроизводительных асинхронных динамических сумматоров" (PDF) . Труды Третьего международного симпозиума по перспективным исследованиям в области асинхронных цепей и систем . стр. 210–223. doi :10.1109/ASYNC.1997.587176. ISBN0-8186-7922-0. S2CID 1098994. Архивировано из оригинала (PDF) 2021-04-21 . Получено 2019-08-27 .
^ Nowick, SM (сентябрь 1996 г.). «Проект асинхронного сумматора с малой задержкой с использованием спекулятивного завершения» (PDF) . Труды IEE — Компьютеры и цифровые технологии . 143 (5): 301–307. doi :10.1049/ip-cdt:19960704. Архивировано из оригинала (PDF) 22.04.2021 . Получено 27.08.2019 .
^ Шейх, Б.; Манохар, Р. (май 2010 г.). «Операндно-оптимизированный асинхронный сумматор с плавающей точкой двойной точности IEEE 754» (PDF) . Труды Международного симпозиума IEEE по асинхронным схемам и системам ('Async') : 151–162. Архивировано из оригинала (PDF) 21-04-2021 . Получено 27-08-2019 .
^ ab Sasao, Tsutomu (1993). Логический синтез и оптимизация. Бостон, Массачусетс, США: Springer USA. ISBN978-1-4615-3154-8. OCLC 852788081.
^ "Epson разрабатывает первый в мире гибкий 8-битный асинхронный микропроцессор" [ постоянная неработающая ссылка ] 2005
^
"Keep It Strictly Synchronous: поцелуйте эти проблемы асинхронной логики на прощание". Personal Engineering and Instrumentation News, ноябрь 1997 г., страницы 53–55. http://www.fpga-site.com/kiss.html
^ ab van Leeuwen, TM (2010). Реализация и автоматическая генерация асинхронного запланированного графика потока данных. Делфт.
^ Кругер, Роберт (2005-03-15). "Реалити-шоу для инженеров-разработчиков ПЛИС!". eetimes.com . Получено 11 ноября 2020 г.
^ abcd "В 1950-х и 1960-х годах асинхронная схема использовалась во многих ранних мэйнфреймах, включая ILLIAC I и ILLIAC II ...". Краткая история разработки асинхронных схем
^ ab «Illiac — это двоичный параллельный асинхронный компьютер, в котором отрицательные числа представлены в виде двоичных дополнений». — окончательное резюме «Illiac Design Techniques» 1955 г.
^ abcdefghij Мартин, А. Дж.; Нистром, М.; Вонг, К. Г. (ноябрь 2003 г.). «Три поколения асинхронных микропроцессоров». IEEE Design & Test of Computers . 20 (6): 9–17. doi :10.1109/MDT.2003.1246159. ISSN 0740-7475. S2CID 15164301.
^ abc Martin, AJ; Nystrom, M.; Papadantonakis, K.; Penzes, PI; Prakash, P.; Wong, CG; Chang, J.; Ko, KS; Lee, B.; Ou, E.; Pugh, J. (2003). "The Lutonium: A sub-nanojoule asynchronous 8051 microcontroller". Девятый международный симпозиум по асинхронным схемам и системам, 2003. Труды (PDF) . Ванкувер, Британская Колумбия, Канада: IEEE Comput. Soc. стр. 14–23. doi :10.1109/ASYNC.2003.1199162. ISBN978-0-7695-1898-5. S2CID 13866418.
^ ab Martin, Alain J. (2014-02-06). "25 лет назад: первый асинхронный микропроцессор". Computer Science Technical Reports. Калифорнийский технологический институт. doi :10.7907/Z9QR4V3H.{{cite journal}}: Цитировать журнал требует |journal=( помощь )
^ "Seiko Epson Tips Flexible Processor via TFT Technology" Архивировано 01.02.2010 на Wayback Machine Марком ЛаПедусом в 2005 г.
^ «Гибкий 8-битный асинхронный микропроцессор на основе низкотемпературной поликремниевой технологии TFT» Караки и др. 2005 г. Аннотация: «Гибкий 8-битный асинхронный микропроцессор ACTII... Уровень мощности составляет 30% от синхронного аналога».
^ "Введение в научно-исследовательскую деятельность в области TFT в корпорации Seiko Epson" Тацуи Симоды (2005?) содержит изображение "Гибкого 8-битного асинхронного микропроцессора ACT11"
^ «Epson разрабатывает первый в мире гибкий 8-битный асинхронный микропроцессор»
^ «Seiko Epson описывает гибкий микропроцессор: листы электронной бумаги формата А4 в разработке», Пол Каллендер, 2005 г.
^ "Программа SyNAPSE разрабатывает усовершенствованный чип, вдохновленный мозгом" Архивировано 10 августа 2014 г. на Wayback Machine . 7 августа 2014 г.
^ История Джонниака, написанная в 1968 году.
^ В. М. Глушков и Е. Л. Ющенко. Математическое описание ЭВМ «Киев». УССР, 1962.
^ «Компьютерное воскрешение, выпуск 18».
^ "Полностью асинхронные, его сотня с лишним плат отправляли запросы, помечали результаты для кого-то другого, перехватывали чьи-то сигналы или данные и наносили друг другу удары в спину всевозможными забавными способами, которые иногда давали сбой (срабатывал таймер "op not complete" и вызывал ошибку). ... [Не было] и намека на организованную стратегию синхронизации: различные импульсы "все готово", "хорошо, вперед", "сделать цикл" просто проносились через огромную заднюю панель, совмещались с соответствующим состоянием и сбивали следующего парня. Не лишенная своих прелестей, эта, казалось бы, спонтанная технология способствовала существенной степени перекрытия ... а также [сегментации и страничке] механизма адресации Multics для существующей архитектуры 6000 изобретательным, модульным и удивительным способом ... . Однако модификация и отладка процессора были неинтересны". "Глоссарий Multics: ... 6180"
^ "10/81 ... DPS 8/70M CPUs" Хронология Multics
^ "Series 60, Level 68 был просто переупаковкой 6180." Аппаратные возможности Multics: Series 60, Level 68
^ А.А. Васенков, В.Л. Дшхунян, П.Р. Машевич, П.В. Нестеров, В.В. Теленков, Ю.В. Чичерин Е., Юдицкий Д.И. "Микропроцессорная вычислительная система". Патент US4124890, 7 ноября 1978 г.
^ abc "Сетевая асинхронная архитектура для криптографических устройств" Лилианы Спадавеккья 2005 в разделе "4.10.2 Анализ побочных каналов двухканальных асинхронных архитектур" и разделе "5.5.5.1 Набор инструкций"
^ Чжан, Цяньи; Теодоропулос, Георгиос (2003). «К асинхронному процессору MIPS». В Омонди, Амос; Седухин, Станислав (ред.). Достижения в архитектуре компьютерных систем . Конспект лекций по информатике. Берлин, Гейдельберг: Springer. стр. 137–150. doi :10.1007/978-3-540-39864-6_12. ISBN978-3-540-39864-6.
^ ab Lines, Andrew (март 2007 г.). «The Vortex: A Superscalar Asynchronous Processor». 13th IEEE International Symposium on Asynchronous Circuits and Systems (ASYNC'07) . стр. 39–48. doi :10.1109/ASYNC.2007.28. ISBN978-0-7695-2771-0. S2CID 33189213.
^ Lines, A. (2003). "Nexus: асинхронное перекрестное соединение для синхронных систем на кристалле". 11-й симпозиум по высокопроизводительным соединениям, 2003. Труды . Стэнфорд, Калифорния, США: IEEE Comput. Soc. стр. 2–9. doi :10.1109/CONECT.2003.1231470. ISBN978-0-7695-2012-4. S2CID 1799204.
^ Обзор SEAforth. Архивировано 2 февраля 2008 г. на Wayback Machine . «... асинхронная схема по всему чипу. Нет центрального тактового генератора с миллиардами глупых узлов, рассеивающих бесполезную энергию. ... ядра процессора сами по себе асинхронны».
^ "GreenArrayChips" "Мультикомпьютерные микросхемы со сверхнизким энергопотреблением и интегрированной периферией."
^ «Асинхронный процессор DLX с открытым исходным кодом (ASPIDA)».
Дальнейшее чтение
TiDE от Handshake Solutions в Нидерландах, коммерческий инструмент проектирования асинхронных схем. Доступны коммерческие асинхронные ARM (ARM996HS) и 8051 (HT80C51).
Введение в проектирование асинхронных схем Архивировано 23 июня 2010 г. на Wayback Machine Дэвисом и Новиком
Логика нулевых соглашений, стиль проектирования, впервые предложенный Theseus Logic, которая изготовила более 20 микросхем ASIC на основе ядер микроконтроллеров NCL08 и NCL8501 [1]
Статус асинхронного проектирования в программе «Технологии промышленного информационного общества» (IST), IST-1999-29119, DA Edwards WB Toms, июнь 2004 г., через www.scism.lsbu.ac.uk
Red Star — это версия MIPS R3000, реализованная в асинхронной логике.
Микропроцессоры Amulet представляли собой асинхронные ARM-процессоры, созданные в 1990-х годах в Манчестерском университете , Англия.