Цифровая электроника — это область электроники, включающая изучение цифровых сигналов и разработку устройств, которые их используют или производят. Это отличается от аналоговой электроники , которая работает в основном с аналоговыми сигналами . Несмотря на название, цифровые электронные проекты включают в себя важные соображения по аналоговому проектированию.
Цифровые электронные схемы обычно изготавливаются из больших сборок логических вентилей , часто упакованных в интегральные схемы . Сложные устройства могут иметь простые электронные представления булевых логических функций . [1]
Двоичная система счисления была усовершенствована Готфридом Вильгельмом Лейбницем (опубликовано в 1705 году), и он также установил, что с помощью двоичной системы можно объединить принципы арифметики и логики. Цифровая логика, какой мы ее знаем, была детищем Джорджа Буля в середине 19 века. В письме 1886 года Чарльз Сандерс Пирс описал, как логические операции могут выполняться с помощью электрических коммутационных схем. [2] В конечном итоге электронные лампы заменили реле для логических операций. Модификация клапана Флеминга Ли Де Фореста в 1907 году могла использоваться в качестве вентиля И. Людвиг Витгенштейн представил версию 16-строчной таблицы истинности как предложение 5.101 Логико-философского трактата (1921). Вальтер Боте , изобретатель схемы совпадений , разделил Нобелевскую премию по физике 1954 года за создание первого современного электронного вентиля И в 1924 году.
Механические аналоговые компьютеры начали появляться в первом веке и позднее использовались в средневековую эпоху для астрономических расчетов. Во время Второй мировой войны механические аналоговые компьютеры использовались для специализированных военных приложений, таких как расчет наведения торпед. В это время были разработаны первые электронные цифровые компьютеры, а термин «цифровой» был предложен Джорджем Стибицем в 1942 году . Первоначально они были размером с большую комнату и потребляли столько же энергии, сколько несколько сотен современных ПК . [3]
Z3 был электромеханическим компьютером, разработанным Конрадом Цузе . Завершенный в 1941 году, он был первым в мире работающим программируемым , полностью автоматическим цифровым компьютером. [4] Его работа была облегчена изобретением электронной лампы в 1904 году Джоном Амброузом Флемингом .
В то же время, когда цифровые вычисления заменили аналоговые, чисто электронные элементы схемы вскоре заменили их механические и электромеханические эквиваленты. Джон Бардин и Уолтер Браттейн изобрели точечный транзистор в Bell Labs в 1947 году, а затем Уильям Шокли изобрел биполярный транзистор в Bell Labs в 1948 году. [5] [6]
В Манчестерском университете группа под руководством Тома Килберна спроектировала и построила машину, используя недавно разработанные транзисторы вместо электронных ламп. [7] Их « транзисторизированный компьютер », первый в мире, был запущен в эксплуатацию к 1953 году , а вторая версия была завершена там же в апреле 1955 года. С 1955 года и далее транзисторы заменили электронные лампы в компьютерных конструкциях, что дало начало «второму поколению» компьютеров. По сравнению с электронными лампами транзисторы были меньше, надежнее, имели неограниченный срок службы и требовали меньше энергии, чем электронные лампы, тем самым выделяя меньше тепла и позволяя гораздо более плотную концентрацию схем, до десятков тысяч в относительно компактном пространстве.
В 1955 году Карл Фрош и Линкольн Дерик открыли эффекты пассивации поверхности диоксида кремния. [8] В 1957 году Фрош и Дерик, используя маскирование и предварительное осаждение, смогли изготовить полевые транзисторы из диоксида кремния; первые планарные транзисторы, в которых сток и исток были смежными на одной поверхности. [9] В Bell Labs важность техники Фроша и Дерика и транзисторов была немедленно осознана. Результаты их работы распространялись по Bell Labs в форме служебных записок BTL, прежде чем были опубликованы в 1957 году. В Shockley Semiconductor Шокли распространил препринт своей статьи в декабре 1956 года среди всех своих старших сотрудников, включая Жана Эрни , [10] [11] [12] [13] который позже изобрел планарный процесс в 1959 году, работая в Fairchild Semiconductor . [14] [15] В Bell Labs Дж. Р. Лигенза и В. Г. Шпитцер изучали механизм термически выращенных оксидов, изготовили высококачественный стек Si/ SiO2 и опубликовали свои результаты в 1960 году. [16] [17] [18] После этого исследования в Bell Labs Мохамед Аталла и Давон Канг предложили кремниевый МОП-транзистор в 1959 году [19] и успешно продемонстрировали работающее МОП-устройство со своей командой Bell Labs в 1960 году. [20] [21] В состав команды входили Э. Э. Лабате и Э. И. Повилонис, которые изготовили устройство; М. О. Терстон, Л. А. Д'Асаро и Дж. Р. Лигенза, которые разработали процессы диффузии, а также Х. К. Гуммель и Р. Линднер, которые охарактеризовали устройство. [22] [23]
Работая в Texas Instruments в июле 1958 года, Джек Килби записал свои первоначальные идеи относительно интегральной схемы (ИС), а затем успешно продемонстрировал первую работающую интегральную схему 12 сентября 1958 года. [24] Чип Килби был изготовлен из германия . В следующем году Роберт Нойс из Fairchild Semiconductor изобрел кремниевую интегральную схему. Основой для кремниевой ИС Нойса был планарный процесс Хорни .
Преимущества MOSFET включают в себя высокую масштабируемость , [25] доступность, [26] низкое энергопотребление и высокую плотность транзисторов . [27] Его быстрая скорость включения-выключения электронного переключения также делает его идеальным для генерации импульсных последовательностей , [28] основы для электронных цифровых сигналов , [29] [30] в отличие от BJT, которые, более медленно, генерируют аналоговые сигналы, напоминающие синусоиды . [28] Наряду с большой интеграцией МОП (БИС), эти факторы делают МОП-транзистор важным коммутационным устройством для цифровых схем . [31] МОП-транзистор произвел революцию в электронной промышленности , [32] [33] и является наиболее распространенным полупроводниковым прибором . [34] [35]
На заре развития интегральных схем каждый чип ограничивался всего несколькими транзисторами, а низкая степень интеграции означала, что процесс проектирования был относительно простым. Производственные показатели также были довольно низкими по сегодняшним меркам. Широкое внедрение транзистора MOSFET к началу 1970-х годов привело к появлению первых чипов с большой интеграцией (LSI) с более чем 10 000 транзисторов на одном чипе. [36] После широкого внедрения КМОП , типа логики MOSFET, к 1980-м годам миллионы, а затем и миллиарды MOSFET могли быть размещены на одном чипе по мере развития технологии, [37] и хорошие проекты требовали тщательного планирования, что привело к появлению новых методов проектирования . Количество транзисторов в устройствах и общее производство выросли до беспрецедентных высот. Общее количество транзисторов, произведенных до 2018 года, оценивается в1,3 × 1022 (13 секстиллионов ). [ 38]
Беспроводная революция (внедрение и распространение беспроводных сетей ) началась в 1990-х годах и стала возможной благодаря широкому внедрению усилителей мощности ВЧ на основе МОП-транзисторов ( мощные МОП-транзисторы и LDMOS ) и ВЧ-схем ( RF CMOS ). [39] [40] [41] Беспроводные сети позволили осуществлять цифровую передачу данных без необходимости использования кабелей, что привело к появлению цифрового телевидения , спутникового и цифрового радио , GPS , беспроводного Интернета и мобильных телефонов в 1990-х–2000-х годах.
Преимущество цифровых схем по сравнению с аналоговыми схемами заключается в том, что сигналы, представленные в цифровом виде, могут передаваться без ухудшения качества, вызванного шумом . [42] Например, непрерывный аудиосигнал, передаваемый как последовательность единиц и нулей, может быть восстановлен без ошибок, при условии, что шум, возникающий при передаче, не настолько велик, чтобы помешать идентификации единиц и нулей.
В цифровой системе более точное представление сигнала может быть получено путем использования большего количества двоичных цифр для его представления. Хотя это требует большего количества цифровых схем для обработки сигналов, каждая цифра обрабатывается одним и тем же типом оборудования, что приводит к легко масштабируемой системе. В аналоговой системе дополнительное разрешение требует фундаментальных улучшений в линейности и шумовых характеристиках каждого шага цепи сигнала .
С цифровыми системами с компьютерным управлением новые функции могут быть добавлены путем пересмотра программного обеспечения, и не требуется никаких изменений в оборудовании. Часто это можно сделать вне завода, обновив программное обеспечение продукта. Таким образом, ошибки в конструкции продукта могут быть исправлены даже после того, как продукт окажется в руках клиента.
Хранение информации может быть проще в цифровых системах, чем в аналоговых. Помехоустойчивость цифровых систем позволяет хранить и извлекать данные без ухудшения. В аналоговой системе шум от старения и износа ухудшает хранимую информацию. В цифровой системе, пока общий шум ниже определенного уровня, информация может быть восстановлена идеально. Даже при наличии более значительного шума использование избыточности позволяет восстановить исходные данные при условии, что не возникнет слишком много ошибок.
В некоторых случаях цифровые схемы используют больше энергии, чем аналоговые схемы, для выполнения тех же задач, тем самым производя больше тепла, что увеличивает сложность схем, например, включение радиаторов. В портативных или работающих от батарей системах это может ограничить использование цифровых систем. Например, работающие от батарей сотовые телефоны часто используют маломощный аналоговый входной интерфейс для усиления и настройки радиосигналов от базовой станции. Однако базовая станция имеет сетевое питание и может использовать энергоемкие, но очень гибкие программные радиостанции . Такие базовые станции можно легко перепрограммировать для обработки сигналов, используемых в новых стандартах сотовой связи.
Многие полезные цифровые системы должны преобразовывать непрерывные аналоговые сигналы в дискретные цифровые сигналы. Это приводит к ошибкам квантования . Ошибку квантования можно уменьшить, если система хранит достаточно цифровых данных для представления сигнала с желаемой степенью точности . Теорема выборки Найквиста-Шеннона дает важное руководство относительно того, сколько цифровых данных необходимо для точного отображения заданного аналогового сигнала.
Если один фрагмент цифровых данных потерян или неправильно истолкован, в некоторых системах может возникнуть только небольшая ошибка, в то время как в других системах смысл больших блоков связанных данных может полностью измениться. Например, ошибка в одном бите в аудиоданных, сохраненных непосредственно в виде линейной импульсно-кодовой модуляции, вызывает, в худшем случае, один слышимый щелчок. Но при использовании сжатия звука для экономии места на диске и времени передачи ошибка в одном бите может вызвать гораздо большее нарушение.
Из-за эффекта обрыва пользователям может быть сложно определить, находится ли конкретная система на грани отказа или может ли она выдержать гораздо больше шума перед отказом. Цифровую хрупкость можно уменьшить, спроектировав цифровую систему для обеспечения надежности . Например, бит четности или другой метод управления ошибками можно вставить в сигнальный тракт. Эти схемы помогают системе обнаруживать ошибки, а затем либо исправлять их , либо запрашивать повторную передачу данных.
Цифровая схема обычно состоит из небольших электронных схем, называемых логическими вентилями , которые можно использовать для создания комбинационной логики . Каждый логический вентиль предназначен для выполнения функции булевой логики при воздействии на логические сигналы. Логический вентиль обычно создается из одного или нескольких электрически управляемых переключателей, обычно транзисторов, но термоэлектронные клапаны также нашли историческое применение. Выход логического вентиля может, в свою очередь, управлять или подавать сигнал на большее количество логических вентилей.
Другая форма цифровой схемы строится на основе таблиц поиска (многие продаются как « программируемые логические устройства », хотя существуют и другие виды ПЛИС). Таблицы поиска могут выполнять те же функции, что и машины на основе логических вентилей, но их можно легко перепрограммировать без изменения проводки. Это означает, что проектировщик часто может исправить ошибки проектирования, не меняя расположение проводов. Поэтому в продуктах малого объема программируемые логические устройства часто являются предпочтительным решением. Они обычно проектируются инженерами с использованием программного обеспечения для автоматизации электронного проектирования .
Интегральные схемы состоят из нескольких транзисторов на одном кремниевом кристалле и являются наименее дорогим способом создания большого количества взаимосвязанных логических вентилей. Интегральные схемы обычно соединяются на печатной плате, которая представляет собой плату, содержащую электрические компоненты и соединяющую их вместе медными дорожками.
Инженеры используют множество методов для минимизации логической избыточности с целью уменьшения сложности схемы. Уменьшение сложности уменьшает количество компонентов и потенциальных ошибок, а следовательно, обычно снижает стоимость. Логическую избыточность можно устранить несколькими известными методами, такими как двоичные диаграммы решений , булева алгебра , карты Карно , алгоритм Куайна-Маккласки и эвристический компьютерный метод . Эти операции обычно выполняются в системе автоматизированного проектирования .
Встроенные системы с микроконтроллерами и программируемыми логическими контроллерами часто используются для реализации цифровой логики для сложных систем, не требующих оптимальной производительности. Такие системы обычно программируются инженерами-программистами или электриками с использованием релейной логики .
Входные-выходные отношения цифровой схемы можно представить в виде таблицы истинности . Эквивалентная схема высокого уровня использует логические вентили , каждый из которых представлен различной формой (стандартизированной IEEE / ANSI 91–1984). [43] Низкоуровневое представление использует эквивалентную схему электронных переключателей (обычно транзисторов ).
Большинство цифровых систем делятся на комбинационные и последовательные . Выход комбинационной системы зависит только от текущих входов. Однако последовательная система имеет некоторые из своих выходов, возвращаемых в качестве входов, поэтому ее выход может зависеть от прошлых входов в дополнение к текущим входам, чтобы производить последовательность операций . Упрощенные представления их поведения, называемые конечными автоматами, облегчают проектирование и тестирование.
Последовательные системы делятся на две подкатегории. «Синхронные» последовательные системы изменяют состояние одновременно, когда тактовый сигнал изменяет состояние. «Асинхронные» последовательные системы распространяют изменения при каждом изменении входов. Синхронные последовательные системы созданы с использованием триггеров , которые сохраняют входные напряжения в виде бита только при изменении тактового сигнала.
Обычный способ реализации синхронной последовательной машины состояний — разделить ее на часть комбинационной логики и набор триггеров, называемых регистром состояний . Регистр состояний представляет состояние как двоичное число. Комбинационная логика создает двоичное представление для следующего состояния. На каждом такте регистр состояний фиксирует обратную связь, сгенерированную из предыдущего состояния комбинационной логики, и возвращает ее как неизменный вход в комбинационную часть машины состояний. Тактовая частота ограничена наиболее трудоемким логическим вычислением в комбинационной логике.
Большая часть цифровой логики является синхронной, поскольку ее легче создать и проверить синхронную конструкцию. Однако асинхронная логика имеет преимущество в том, что ее скорость не ограничена произвольным тактовым сигналом; вместо этого она работает на максимальной скорости своих логических вентилей. [a]
Тем не менее, большинству систем необходимо принимать внешние несинхронизированные сигналы в свои синхронные логические схемы. Этот интерфейс по своей сути асинхронный и должен анализироваться как таковой. Примерами широко используемых асинхронных схем являются триггеры синхронизаторов, дебаунсеры переключателей и арбитры .
Асинхронные логические компоненты может быть трудно проектировать, поскольку необходимо учитывать все возможные состояния во всех возможных временных интервалах. Обычный метод заключается в построении таблицы минимального и максимального времени, в течение которого может существовать каждое такое состояние, а затем в настройке схемы для минимизации количества таких состояний. Проектировщик должен заставить схему периодически ждать, пока все ее части не войдут в совместимое состояние (это называется «саморесинхронизацией»). Без тщательного проектирования легко случайно создать асинхронную логику, которая будет нестабильной, то есть реальная электроника будет иметь непредсказуемые результаты из-за кумулятивных задержек, вызванных небольшими изменениями значений электронных компонентов.
Многие цифровые системы являются машинами потока данных . Они обычно разрабатываются с использованием синхронной регистровой логики передачи и пишутся с помощью языков описания оборудования, таких как VHDL или Verilog .
В логике передачи регистров двоичные числа хранятся в группах триггеров, называемых регистрами . Последовательный конечный автомат контролирует, когда каждый регистр принимает новые данные со своего входа. Выходы каждого регистра представляют собой связку проводов, называемую шиной , которая переносит это число в другие вычисления. Вычисление — это просто часть комбинационной логики. Каждое вычисление также имеет выходную шину, и они могут быть подключены к входам нескольких регистров. Иногда регистр будет иметь мультиплексор на своем входе, так что он может хранить число с любой из нескольких шин. [b]
Асинхронные системы передачи регистров (например, компьютеры) имеют общее решение. В 1980-х годах некоторые исследователи обнаружили, что почти все синхронные машины передачи регистров можно преобразовать в асинхронные конструкции с помощью логики синхронизации «первым пришел — первым вышел». В этой схеме цифровая машина характеризуется как набор потоков данных. На каждом этапе потока схема синхронизации определяет, когда выходные данные этого этапа являются действительными, и инструктирует следующий этап, когда использовать эти выходные данные. [ необходима цитата ]
Наиболее универсальная логическая машина регистрового переноса — это компьютер . По сути, это автоматические двоичные счеты . Блок управления компьютера обычно проектируется как микропрограмма, запускаемая микросеквенсором . Микропрограмма очень похожа на рояль. Каждая запись таблицы микропрограммы управляет состоянием каждого бита, который управляет компьютером. Затем секвенсор считает, и счет адресуется к памяти или комбинационной логической машине, которая содержит микропрограмму. Биты из микропрограммы управляют арифметико-логическим блоком , памятью и другими частями компьютера, включая сам микросеквенсор. Таким образом, сложная задача проектирования элементов управления компьютера сводится к более простой задаче программирования набора гораздо более простых логических машин.
Почти все компьютеры синхронные. Однако были построены и асинхронные компьютеры . Одним из примеров является ядро ASPIDA DLX . [45] Другое было предложено ARM Holdings . [46] Однако они не имеют никаких преимуществ в скорости, поскольку современные компьютерные конструкции уже работают на скорости своего самого медленного компонента, обычно памяти. Они потребляют несколько меньше энергии, поскольку не нужна сеть распределения тактовых импульсов. Неожиданным преимуществом является то, что асинхронные компьютеры не производят спектрально-чистый радиошум. Они используются в некоторых радиочувствительных контроллерах базовых станций мобильных телефонов. Они могут быть более безопасными в криптографических приложениях, поскольку их электрические и радиоизлучения может быть сложнее декодировать. [46]
Архитектура компьютера — это специализированная инженерная деятельность, которая пытается организовать регистры, вычислительную логику, шины и другие части компьютера наилучшим образом для определенной цели. Архитекторы компьютеров проделали большую работу по снижению стоимости и повышению скорости компьютеров, а также по повышению их устойчивости к ошибкам программирования. Все более распространенной целью архитекторов компьютеров является снижение мощности, используемой в компьютерных системах с батарейным питанием, таких как смартфоны .
Цифровые схемы изготавливаются из аналоговых компонентов. Проект должен гарантировать, что аналоговая природа компонентов не доминирует над желаемым цифровым поведением. Цифровые системы должны управлять шумовыми и временными запасами, паразитными индуктивностями и емкостями.
Плохие конструкции имеют периодически возникающие проблемы, такие как сбои , исчезающе быстрые импульсы, которые могут запускать одни логические схемы, но не запускать другие, короткие импульсы , которые не достигают допустимых пороговых напряжений .
Кроме того, когда тактируемые цифровые системы взаимодействуют с аналоговыми системами или системами, которые управляются от другого тактового генератора, цифровая система может быть подвержена метастабильности , когда изменение входного сигнала нарушает время установки для защелки цифрового входа.
Поскольку цифровые схемы сделаны из аналоговых компонентов, цифровые схемы вычисляют медленнее, чем аналоговые схемы низкой точности, которые используют аналогичное количество пространства и мощности. Однако цифровая схема будет вычислять более повторяемо из-за своей высокой помехоустойчивости.
Значительная часть работ по проектированию больших логических машин была автоматизирована за счет применения средств автоматизации электронного проектирования (EDA).
Простые описания логики в виде таблиц истинности часто оптимизируются с помощью EDA, которые автоматически производят сокращенные системы логических вентилей или меньшие таблицы поиска, которые все еще производят желаемые результаты. Наиболее распространенным примером такого рода программного обеспечения является Espresso эвристический логический минимизатор . Оптимизация больших логических систем может быть выполнена с использованием алгоритма Куайна-Маккласки или бинарных диаграмм принятия решений . Существуют многообещающие эксперименты с генетическими алгоритмами и оптимизациями отжига .
Для автоматизации дорогостоящих инженерных процессов некоторые EDA могут брать таблицы состояний , описывающие конечные автоматы , и автоматически создавать таблицу истинности или таблицу функций для комбинационной логики конечного автомата. Таблица состояний представляет собой фрагмент текста, в котором перечислены все состояния вместе с условиями, контролирующими переходы между ними, и связанными с ними выходными сигналами.
Часто реальные логические системы проектируются как ряд подпроектов, которые объединяются с помощью потока инструментов . Поток инструментов обычно контролируется с помощью языка сценариев , упрощенного компьютерного языка, который может вызывать инструменты проектирования программного обеспечения в правильном порядке. Потоки инструментов для больших логических систем, таких как микропроцессоры, могут состоять из тысяч команд и объединять работу сотен инженеров. Написание и отладка потоков инструментов является устоявшейся инженерной специальностью в компаниях, которые производят цифровые проекты. Поток инструментов обычно заканчивается подробным компьютерным файлом или набором файлов, которые описывают, как физически построить логику. Часто он состоит из инструкций о том, как рисовать транзисторы и провода на интегральной схеме или печатной плате .
Части потоков инструментов отлаживаются путем проверки выходов смоделированной логики относительно ожидаемых входов. Тестовые инструменты берут компьютерные файлы с наборами входов и выходов и выделяют несоответствия между смоделированным поведением и ожидаемым поведением. После того, как входные данные считаются правильными, сам проект все равно должен быть проверен на правильность. Некоторые потоки инструментов проверяют проекты, сначала создавая проект, а затем сканируя проект для получения совместимых входных данных для потока инструментов. Если сканированные данные соответствуют входным данным, то поток инструментов, вероятно, не внес ошибок.
Данные функциональной проверки обычно называются тестовыми векторами . Функциональные тестовые векторы могут быть сохранены и использованы на заводе для проверки правильности работы новой логики. Однако функциональные тестовые шаблоны не обнаруживают все производственные дефекты. Производственные тесты часто разрабатываются с помощью автоматических программных инструментов генерации тестовых шаблонов . Они генерируют тестовые векторы, исследуя структуру логики и систематически генерируя тесты, нацеленные на конкретные потенциальные дефекты. Таким образом, покрытие неисправностей может приблизиться к 100%, при условии, что конструкция надлежащим образом сделана тестируемой (см. следующий раздел).
После того, как дизайн существует, проверен и протестирован, его часто необходимо обработать, чтобы сделать его пригодным для производства. Современные интегральные схемы имеют характеристики, меньшие, чем длина волны света, используемого для экспонирования фоторезиста. Программное обеспечение, разработанное для обеспечения технологичности, добавляет интерференционные узоры к маскам экспонирования, чтобы исключить открытые цепи и повысить контрастность масок.
Существует несколько причин для тестирования логической схемы. Когда схема впервые разрабатывается, необходимо проверить, что схема проекта соответствует требуемым функциональным и временным спецификациям. Когда изготавливается несколько копий правильно спроектированной схемы, важно проверить каждую копию, чтобы убедиться, что производственный процесс не внес никаких дефектов. [47]
Большая логическая машина (скажем, с более чем сотней логических переменных) может иметь астрономическое число возможных состояний. Очевидно, что заводское тестирование каждого состояния такой машины невыполнимо, поскольку даже если тестирование каждого состояния займет всего микросекунду, возможных состояний больше, чем микросекунд с момента возникновения Вселенной!
Большие логические машины почти всегда проектируются как сборки меньших логических машин. Чтобы сэкономить время, меньшие подмашины изолируются постоянно установленной конструкцией для испытательной схемы и тестируются независимо. Одна из распространенных схем тестирования обеспечивает тестовый режим, который заставляет некоторую часть логической машины войти в тестовый цикл . Тестовый цикл обычно проверяет большие независимые части машины.
Граничное сканирование — это распространенная схема тестирования, которая использует последовательную связь с внешним испытательным оборудованием через один или несколько сдвиговых регистров, известных как цепи сканирования . Последовательное сканирование имеет только один или два провода для передачи данных и минимизирует физический размер и стоимость редко используемой тестовой логики. После того, как все тестовые биты данных будут на месте, конструкция перенастраивается для работы в нормальном режиме , и применяется один или несколько тактовых импульсов для тестирования на наличие неисправностей (например, застрявших на низком или застрявших на высоком уровне) и фиксации результата теста в триггерах или защелках в сдвиговом регистре(ах) сканирования. Наконец, результат теста сдвигается на границу блока и сравнивается с прогнозируемым хорошим результатом машины .
В среде тестирования плат последовательно-параллельное тестирование было формализовано как стандарт JTAG .
Поскольку цифровая система может использовать много логических вентилей, общая стоимость создания компьютера сильно коррелирует со стоимостью логического вентиля. В 1930-х годах самые ранние цифровые логические системы были построены на основе телефонных реле, поскольку они были недорогими и относительно надежными.
Самые ранние интегральные схемы были сконструированы для экономии веса и позволили компьютеру Apollo Guidance Computer управлять инерциальной системой наведения космического корабля. Первые логические вентили интегральных схем стоили около 50 долларов США, что в 2023 году будет эквивалентно 515 долларам. Массовое производство вентилей на интегральных схемах стало наименее дорогим методом построения цифровой логики.
С ростом интегральных схем , сокращение абсолютного числа используемых чипов стало еще одним способом экономии средств. Цель проектировщика — не просто сделать самую простую схему, но и сократить количество компонентов. Иногда это приводит к более сложным конструкциям в отношении базовой цифровой логики, но тем не менее уменьшает количество компонентов, размер платы и даже энергопотребление.
Другим важным мотивом для сокращения количества компонентов на печатных платах является снижение уровня производственных дефектов из-за неисправных паяных соединений и повышение надежности. Уровень дефектов и отказов имеет тенденцию к росту вместе с общим количеством выводов компонентов.
Отказ одного логического вентиля может привести к отказу цифровой машины. Если требуется дополнительная надежность, можно обеспечить избыточную логику. Избыточность увеличивает стоимость и энергопотребление по сравнению с неизбыточной системой.
Надежность логического вентиля можно описать его средним временем между отказами (MTBF). Цифровые машины впервые стали полезны , когда MTBF для переключателя превысило несколько сотен часов. Тем не менее, многие из этих машин имели сложные, хорошо отрепетированные процедуры ремонта и не работали в течение нескольких часов, потому что перегорала трубка или в реле застревала моль. Современные транзисторные интегральные схемы логических вентилей имеют MTBF более 82 миллиардов часов (8,2 × 10 10 ч ). [48] Такой уровень надежности необходим, поскольку интегральные схемы имеют очень много логических вентилей.
Разветвление описывает, сколько логических входов может контролироваться одним логическим выходом без превышения номинальных значений электрического тока выходов вентилей. [49] Минимальное практическое разветвление составляет около пяти. [ необходима цитата ] Современные электронные логические вентили, использующие КМОП- транзисторы для переключателей, имеют более высокие разветвления.
Скорость переключения описывает, сколько времени требуется логическому выходу для изменения с истинного на ложный или наоборот. Более быстрая логика может выполнять больше операций за меньшее время. Современная электронная цифровая логика обычно переключается на5 ГГц , а некоторые лабораторные системы переключаются на частоте более1 ТГц . [ необходима ссылка ] .
Цифровая конструкция началась с релейной логики, которая медленная. Иногда происходила механическая поломка. Обычно выходов из строя было около 10, что ограничивалось сопротивлением катушек и искрением на контактах от высокого напряжения.
Позже стали использовать вакуумные трубки . Они были очень быстрыми, но выделяли тепло и были ненадежными, поскольку нити накаливания сгорали. Обычно количество разветвлений составляло от 5 до 7, что ограничивалось нагревом от тока трубок. В 1950-х годах были разработаны специальные компьютерные трубки с нитями накаливания, в которых отсутствовали летучие элементы, такие как кремний. Они работали сотни тысяч часов.
Первым семейством полупроводниковой логики была резисторно-транзисторная логика . Она была в тысячу раз надежнее ламповой, работала холоднее и потребляла меньше энергии, но имела очень низкий разветвитель — 3. Диодно-транзисторная логика улучшила разветвитель примерно до 7 и снизила мощность. Некоторые конструкции DTL использовали два источника питания с чередующимися слоями NPN- и PNP-транзисторов для увеличения разветвителя.
Транзисторно-транзисторная логика (ТТЛ) была большим улучшением по сравнению с ними. В ранних устройствах разветвление улучшилось до 10, а более поздние вариации надежно достигли 20. ТТЛ также была быстрой, некоторые вариации достигали времени переключения всего 20 нс. ТТЛ все еще используется в некоторых конструкциях.
Эмиттерно-связанная логика очень быстра, но потребляет много энергии. Она широко использовалась для высокопроизводительных компьютеров, таких как Illiac IV , состоящих из множества компонентов среднего масштаба.
На сегодняшний день наиболее распространенные цифровые интегральные схемы используют логику КМОП , которая быстра, обеспечивает высокую плотность схем и низкое энергопотребление на затвор. Она используется даже в больших, быстрых компьютерах, таких как IBM System z .
В 2009 году исследователи обнаружили, что мемристоры могут реализовывать хранилище булевых состояний и обеспечивают полное семейство логических схем с очень малыми объемами и энергопотреблением, используя знакомые полупроводниковые процессы КМОП. [50]
Открытие сверхпроводимости позволило разработать технологию схем быстрого квантования одного потока (RSFQ), которая использует переходы Джозефсона вместо транзисторов. Совсем недавно были предприняты попытки построить чисто оптические вычислительные системы, способные обрабатывать цифровую информацию с использованием нелинейных оптических элементов .
Мы можем построить логические схемы (которые в свою очередь приводят к цифровым схемам) для любого булева выражения...
представляют собой импульсы фиксированной ширины, которые занимают только один из двух уровней амплитуды.
Si MOSFET произвел революцию в электронной промышленности и в результате влияет на нашу повседневную жизнь практически всеми мыслимыми способами.
Полевой транзистор металл-оксид-полупроводник (MOSFET) является наиболее часто используемым активным устройством в сверхбольшой интеграции цифровых интегральных схем (VLSI). В 1970-х годах эти компоненты произвели революцию в электронной обработке сигналов, системах управления и компьютерах.