Author: Бабич Н.П. Жуков И. А
Tags: блоки обработки данных процессоры вычислительная техника компьютерные технологии
ISBN: 966-96415-2-7
Year: 2004
Text
МКПрссс МММВЦНМс Н. П. Бабич, И. А. Жуков МЕТОДЫ ПОСТРОЕНИЯ И ПРОЕКТИРОВАНИЯ “МК-Пресс” Киев, 2004 Рецензенты: член-корреспондент НАН Украины, профессор В.Ф. Евдокимов — директор Института проблем моделирования в энергетике НАН Украины; доктор технических наук, профессор Г.М. Луцкий — заведующий кафедрой "Вычислительная техника" НТУУ “КПИ''. Бабич Н. П., Жуков И. А. Б125 Компьютерная схемотехника. Методы построения и проектирования: Учебное пособие. — К,: “МК-Пресс”, 2004. — 576 с., ил. ISBN 966-96415-2-7 В этом учебном пособии систематизировано изложены информационные, арифметические и логические основы микроэлектронных схем современных компьютеров. Рассмотрены принципы построения и функционирования логических и запоминающих элементов, типовых функциональных узлов, аналого-цифровых и цифро-аналоговых преобразователей, электронной памяти, арифметико-логических и управляющих устройств, микропроцессоров, интерфейсных контроллеров, а также представлены технологии производства печатных плат. Особое внимание уделено правилам составления конструкторской и программной документации, а также требованиям оформления схем и иллюстративных документов. Рассчитано на студентов инженерно-технических специальностей высших учебных заведений. ББК з973.2-04я73-5 BN 966-96415-2-7 © Бабич Н.П., Жуков И.А., текст, иллюстрации, 2004 © "МК-Пресс ’, оформление, дизайн обложки, 2004 Содержание 3 Содержание Введение Перечень используемых сокращений Глава 1. Основы теории компьютерной схемотехники 1 1 Информационные основы компьютерной схемотехники 1 2 Арифметические основы компьютерной схемотехники 1 3 Логические основы компьютерной схемотехники 1 4 Основные хаоактеристики цифровых микросхем Глава 2. Элементы компьютерной схемотехники 2 1 Логические элементы — диодные, транзисторные, ИИЛ и ДТЛ 2 2 Транзисторно-транзисторные логические элементы 2 3 Логические элементы эмиттерно-связной логики 2 4 Логические элементы на МОП-транзисторах 2 5 Импульсная и потенциально-импульсная системы элементов 2 6 Магнитная схемотехника 2 7 Асинхронные и синхронные RS-триггеры 2 8 Триггеры типов JK, Т D и DV Глава 3. Последовательностные (накапливающие) узлы компьютерной схемотехники 3 1 Регистры 3 2 Счетчики Глава 4. Комбинационные функциональные узлы компьютерной схемотехники 4 1 Дешифраторы 4 2 Шифраторы 4 3 Мультиплексоры и демультиплексоры 4 4 Схемы сравнения и контроля 4 5 Преобразователи кодов 4 6 Двоичные сумматоры 4 7 Двоично-десятичные сумматоры Глава 5. Цифро-аналоговые и аналого-цифровые преобразователи 5 1 Цифро-аналоговые преобразователи 5 2 Аналого-цифровые преобразователи Глава 6. Основы компьютерной техники 6 1 Общая характеристика компьютерной техники и короткая история ее развития 6 2 Архитектура и структура компьютеров 6 3 Принцип программного управления 6 4 Основные характеристики компьютеров 6 5 Поколения компьютеров 6 7 10 10 18 40 51 65 65 73 83 86 S3 97 103 110 119 119 128 141 141 147 151 157 166 173 186 190 190 196 202 202 203 207 208 209 4 Введение Глава 7. Память компьютеров 213 7 1 Общая характеристика памяти 213 7 2 Основные структуры полупроводниковой памяти 219 7 3 Кэш-память 223 7 4 Постоянная память 227 7 5 Флэш-память 235 7 6 Статические запоминающие устройства 240 7 7 Динамическая память 243 Глава 8. Арифметико-логические устройства и устройства управления 254 8 1 Классификация арифметико-логических устройств 254 8 2 Языки описания операционных устройств 256 8 3 Устройства управления 258 8 4 Управляющие автоматы со схемной логикой 261 8 5 Структурный синтез управляющего автомата со схемной логикой 264 8 6 Синтез микропрограммного автомата с программируемой логикой 267 8 7 Центральное устройство управления 273 Глава 9. Проектирование специализированных арифметико-логических устройств 277 9 1 Реализация операции сложения 277 9 2 Реализация операции вычитания 285 9 3 Реализация операций сложения и вычитания 291 9 4 Реализация операции умножения 299 9 5 Реализация операции деления 308 Глава 10. Микропроцессоры 323 10 1 Общая характеристика процессоров и микропроцессоров 323 10 2 Однокристальные восьмиразрядные микропроцессоры 335 10 3 Однокристальные шестнадцатиразрядные микропроцессоры 368 10 4 Арифметические сопроцессоры 376 10 5 Суперскалярные 32-разрядные микропроцессоры с C/SC-архитектурой 378 10 6 Суперскалярные микропроцессоры с R/SC-архитектурой 390 Глава 11. Интерфейсы микропроцессорных систем 395 111 Общая характеристика микропроцессорных систем 395 112 Общая характеристика интерфейсов 401 113 Интерфейсные микросхемы 406 114 Программируемые интерфейсные контроллеры 417 Глава 12. Проектирование печатных плат 434 12 1 Основные определения 434 12 2 Виды печатных плат и кабелей 434 12 3 Материалы для печатных плат 436 12 4 Входной контроль и механическая обработка печатных плат 437 12 5 Чертеж печатной платы 439 12 6 Изготовление оригиналов и фотошаблонов 446 Содержание 5 12.7. Типовые процессы изготовления печатных плат.............452 12.8. Последовательность технологических процессов изготовления печатных плат................................454 Глава 13. Конструкторская документация............................457 13.1. Виды конструкторской документации....................... 457 13.2. Общие требования к оформлению проектов..................458 13.3. Обозначение стандартов ЕСКД.............................458 13.4. Обозначение конструкторских документов..................459 13.5. Форматы.................................................460 13.6. Основные надписи и порядок их заполнения................461 13.7. Конструкторские изделия.................................464 13.8. Стадии разработки конструкторской документации..........467 13.9. Правила оформления пояснительной записки................468 Глава 14. Требования к выполнению схем и иллюстративных документов.........................................480 14.1. Понятие схем и общие требования к их выполнению.........480 14.2. Правила выполнения схем цифровой вычислительной техники.488 14.3. Условные графические обозначения элементов цифровой техники в схемах...........................496 14.4. Требования к выполнению иллюстративных документов.......510 Глава 15. Программная документация 518 15.1. Программное обеспечение систем обработки информации.....518 15.2. Единая система программной документации..................521 15.3. Обозначение программных документов.......................523 15.4. Виды программ и программной документации................524 15.5. Стадии разработки программ и программной документации...524 15.6. Требования к содержанию и оформлению....................525 15.7. Символы в схемах алгоритмов, программ, данных и систем...530 Список литературы..................................................542 Приложения.........................................................546 А. Образцы форм документов проекта.............................545 Б. Соотношения размеров условных графических обозначений на модульной сетке...........................................552 В. Обозначения функций элементов, меток выводов...............553 Г. Примеры чертежей печатной платы............................559 Д. Условные графические обозначения элементов цифровой техники.562 Е. Перечень стандартов........................................567 Ж. Словарь общих терминов.....................................569 6 Введение Введение Компьютерная схемотехника — это научно-техническая дисциплина, которая изучает теоретические методы анализа и синтеза схем компьютеров (электронных вычислительных машин) и способы их технической реализации. Развитие компьютерной схемотехники является основой усовершенствования архитектуры компьютеров, качественного повышения их производительности и надежности, существенного уменьшения весогабаритных показателей. Компьютеры широко используются в различных отраслях народного хозяйства. Цель применения компьютеров заключается в информатизации общества — обеспечении повсеместного использования автоматизированных методов сбора, передачи, обработки и хранения информации. Решение проблемы информатизации обеспечивает выход страны на новый уровень цивилизации. Данное учебное пособие предназначено для студентов, которые обучаются по специальностям “Компьютерные системы и сети", “Информационные управляющие системы и технологии”, "Программное обеспечение автоматизированных систем”. Здесь нашли отражение результаты методологических исследований по оптимизации учебного процесса, полученные на кафедре вычислительной техники Института компьютерных технологий Национального авиационного университета Украины. В пособии изложены информационные, арифметические, логические и схемотехнические основы компьютерной схемотехники. Рассмотрены элементы и типовые функциональные узлы, а также основные устройства компьютеров: электронная память, арифметико-логические, управления и системы ввода/вывода информации. В сжатой форме представлены характеристики процессоров, микропроцессоров и компьютеров, даны определения, классификация, основные области их применения. Рассмотрен также процесс проектирования печатных плат. Особое внимание уделено правилам разработки конструкторской и программной документации, а также требованиям к выполнению схем и иллюстративных документов. Авторы благодарны рецензентам — директору Института проблем моделирования в энергетике НАН Украины, члену-корреспонденту НАН Украины, профессору В. Ф. Евдокимову и заведующему кафедры “Вычислительная техника” НТУУ “КПИ”, доктору технических наук, профессору Г. М. Луцкому за ценные замечания. Авторы выражают благодарность кандидату технических наук А. А. Бабич за помощь в подготовке книги к изданию, а также ответственному редактору издательства “МК-Пресс” Юрию Шпаку, выполнившему всю работу по обработке авторского материала. Перечень используемых сокращений 7 Перечень используемых сокращений А аккумулятор АК арифметический канал АЛБ арифметико-логический блок АЛУ арифметико-логическое устройство АЦП аналого-цифровой преобразователь АШ арбитр шины БАД буфер адреса данных БМУ блок местного управления БИС большая интегральная схема БИФ блок интерфейса ВЗУ внешнее ЗУ ГПК гибкий печатный кабель ГПП гибкая печатная плата ГТИ генератор тактовых импульсов ДПП двусторонняя печатная плата ЕСКД единая система конструкторской документации ЕСПД единая система программной документации ЗГ задающий генератор ЗУ запоминающее устройство И2Л интегральная инжекционная логика ИМС интегральная микросхема КВВ канал ввода-вывода КМОП комплементарная МОП-структура КОП код операции КПДП контроллер ПДП КПР контроллер прерываний КПТО комплекс программ технического обслуживания KLLI контроллер шины МЕП структура “металл-полупроводник" МИС малая интегральная схема МК микрокоманда МНОП структура "металл-нитрид-оксид-полупроводник” МОП структура “металл-оксид-полупроводник” МП микропроцессор МПА микропрограммный автомат МПК микропроцессорный комплект 8 Введение мпп многослойная печатная плата МПС микропроцессорная система мц мэт машинный цикл многоэмиттерный транзистор СБИС сверхбольшая интегральная схема НГМД НЖМД НМЛ накопитель на гибких магнитных дисках накопитель на жестких магнитных дисках накопитель на магнитных лентах НОД ОА накопитель на оптических дисках операционный автомат ОЗУ оперативное ЗУ ок открытый коллектор оп ОПП оперативная память односторонняя печатная плата ОС операционная система ОУ операционный усилитель ПД пдп ПЗУ переключатель Джозефсона прямой доступ к памяти постоянное ЗУ пмк память микрокоманд ПУ периферийное (внешнее) устройство ППА ППЗУ программируемый параллельный адаптер программируемое ПЗУ ппи ппп программируемый последовательный интерфейс пакеты прикладных программ пт программируемый таймер ПЭВМ персональная ЭВМ РОН РПЗУ-ЭС РПЗУ-УФ регистр общего назначения репрограммируемое ПЗУ с электрическим стиранием репрограммируемое ПЗУ со стиранием данных ультрафиолетовым лучом рт распределитель тактов СДНФ СКНФ совершенная дизъюнктивная нормальная форма совершенная конъюнктивная нормальная форма сис средняя интегральная схема сои СУП сш система обработки информации схема ускоренного переноса системная шина Перечень используемых сокращений 9 тз техническое задание тл транзисторная логика ТТЛ транзисторно-транзисторная логика ттлш транзисторно-транзисторная логика с диодами Шотки УА управляющий автомат УВВ устройство ввода-вывода информации УВв устройство ввода информации УВыв УГО УУ устройство вывода информации условное графическое обозначение устройство управления ФАМК формирователь адреса МК ЦАП ЦП ЦУУ ША цифро-аналоговый преобразователь центральный процессор центральное устройство управления шина адреса ШВВ шина ввода-вывода ШД ШУ ЭВМ шина данных шина управления электронная вычислительная машина эп эсл элемент памяти; эмиттерный повторитель эмиттерно-связная логика 10 Основы теории компьютерной схемотехники Глава 1 Основы теории компьютерной схемотехники 1.1. Информационные основы компьютерной схемотехники 1.1.1. Информатика, информация, сигналы и их представление Широкое применение компьютеров способствует научно-техническому развитию страны. Сфера использования компьютеров охватывает практически все виды человеческой деятельности. Компьютер — это программно управляемая физическая система, предназначенная для алгоритмической обработки информации, представленной сигналами. В широком смысле слова информация является отражением реального мира. Информация — это единственный неубывающий ресурс жизнеобеспечения. Более того: ее объем в настоящее время удваивается ежегодно. Информация, подготовленная для обработки на компьютерах, называется данными. Информационный процесс включает в себя такие этапы: I . сбор информации от различных источников и представление ее в форме, необходимой для ввода в компьютер; 2 . передачу (пересылку) информации от источника к приемнику; 3 . хранение — процесс передачи информации во времени; 4 . обработку — систематическое выполнение операций над данными; 5 . выдачу результата обработки пользователю. На всех этих этапах используют средства компьютерной схемотехники. К информации предъявляют следующие требования: • корректность (однозначность восприятия); • ценность (полезность) и оперативность (актуальность); • точность, достоверность и устойчивость (способность реагировать на изменения исходных данных); • достаточность (полнота) — наличие минимально необходимого объема информации для принятия правильного решения. Структуру и общие свойства информационных процессов изучают в информатике, которая включает: • теорию информации; • алгоритмические, программные и компьютерные средства обработки информации; 1.1. Информационные основы компьютерной схемотехники 11 • архитектуру компьютеров, системы искусственного интеллекта, вычислительные сети и т.д. В теории информации изучают процессы передачи, преобразования и хранения информации, в том числе: • методы определения количества информации в сообщении; • рациональные способы представления информации с помощью различных символов (букв, цифр и т.д.); • способы формирования, обнаружения и оценки параметров информационных процессов. Упорядоченную последовательность символов (букв, цифр, математических знаков, предназначенных для передачи информации), закодированную в материальной форме, называют сообщением. Информационное сообщение всегда связано с источником и приемником информации, соединенных каналом передачи (рис. 1.1). Рис. 1.1. Информационная модель канала передачи Источником и приемником информации могут быть как люди, так и технические устройства (компьютеры, датчики, индикаторы и др.). Каналом передачи (связи) называется совокупность устройств, имеющих один вход и один выход, предназначенных для передачи информации на расстояния. Сообщения'могут иметь различные формы: звука, текста, изображения, электрического напряжения от датчиков (например, от термопар). Информационные сообщения размещают на машинных носителях информации. Носитель информации — это любая запоминающая предметная среда, предназначенная для записи и хранения информации с целью ее непосредственного ввода в компьютер. Носитель информации является промежуточным звеном между компьютером и первичным документом, содержащим числовые данные, текстовые материалы, схемы, графики, различные измерения. Хранение сообщений — это, как правило, три вида операций: запись, собственно хранение и считывание. Информация записывается в носитель посредством изменения физических или механических свойств запоминающей среды. Данные считываются посредством преобразования их в электрические сигналы. Считают, что в носителе информации сигнал хранится в закодированной форме. Носители информации различаются по следующим признакам: • средой накопления: непрерывные (магнитные ленты и диски) и дискретные, где каждой хранимой единице данных отводится свой дискретный участок или элемент (ферритовые сердечники, перфокарты, перфоленты, триггеры, криотроны и т.д ); • типом материала: бумага с текстом или рисунком; бумажные перфоленты, перфокарты; магнитные ппенки, магнитные ленты и диски; полупроводниковые схемы памяти; 12 Основы теории компьютерной схемотехники • способом считывания данных: механические, оптические, магнитные, электрические; • конструктивным исполнением: ленточные, дисковые, электронные и др. Для передачи информации от источника к приемнику сообщение преобразовывают в сигналы. Согласно ДСТУ 2938-94 “сигнал — это изменение физической величины, используемой для передачи данных”. Таким образом, сигнал образуется на основе некоторой физической величины (электромагнитные или акустические колебания, электрическое напряжение и др.), традиционно называемой энергетическим носителем, и изменения одного или нескольких ее параметров (амплитуды, частоты, фазы, длительности и др.) по закону передаваемой информации. Считают, что сигнал — это материально-энергетическое воплощение сообщения. Посредством совокупности сигналов можно представить любое сложное сообщение. Сигнал может преобразовываться без изменения смысла информации из одной физической величины в другую, более удобную для передачи по каналу связи и обработки в схемах компьютера. Изменение параметров физической величины по закону передаваемого сообщения называют модуляцией, а изменяемые параметры — информативными Сигналы классифицируют по таким признакам: • степени определенности ожидаемых значений — случайные и детерминированные; • структуре временного изменения — непрерывные и дискретные; • роли переданной информации в компьютеры — адреса, данные и управления; • особенностям спектрального представления — низкочастотные и высокочастотные, узкополосные и широкополосные; • способу преобразования — кодированные, декодированные, усиленные, дискретизированные и т.д.; • принадлежности к виду связи — телеграфные, телефонные, радиолокационные, междумашинные и внутримашинные; • характеру изменения кодированных сигналов в синхронизированные моменты времени-— потенциальные и импульсные. В процессе передачи сигналов от источника к приемнику физические величины и способы их модуляции могут многократно изменяться, но содержание сообщения остается неизменным, поскольку оно определяется только законом модуляции. Для информационного обмена используют знаки различного ранга: • первый ранг — символы. Символ — это элементарная единица сообщения. Если число различных символов ограничено, то их совокупность называют алфавитом (например, буквы латинского алфавита, двоичные символы 0 и 1 — в технических устройствах); • второй ранг — слова (группы символов), из которых строятся фразы и выражения. В общем случае способ формализованного описания различных сигналов (и соответственно сообщений) называется представлением информации. В теории информации рассматривают не физическое, а математическое представление сиг 1.1. Информационные основы компьютерной схемотехники 13 налов, то есть их описание с помощью различных функций, формул, графиков, законов распределения вероятностей. Наиболее распространенными способами представления сигналов являются временной, спектральный, статистический. Во многих случаях информация о протекании некоторого физического процесса поступает от соответствующих датчиков в виде электрических сигналов, которые непрерывно изменяются во времени. Различают следующие разновидности сигналов, описываемых временной функцией y(f). 1. Непрерывная функция непрерывного аргумента в интервале времени О <t <tk (рис. 1.2, а). 2. Дискретная функция непрерывного аргумента (рис. 1.2, б). Значения, принимаемые функцией y(t), образуют дискретный ряд чисел i = 1, 2, .... к. Значение аргумента может быть любым в заданном интервале времени О <t <tk. Преобразование непрерывной функции y(t) в дискретное множество значений)/, называется квантованием по уровню. 3. Непрерывная функция дискретного аргумента (рис. 1.2, в). Значения функции y(t) определяются только на дискретном множестве th i = 1,2, ..., к. Функция y(tt) может принимать любые значения в заданном диапазоне. Преобразование функции y(t) непрерывного аргумента t в функциюy(t,) дискретного аргумента t, называется дискретизацией (квантованием) во времени. 4. Дискретная функция дискретного аргумента (рис. 1.2, г). Значения, принимаемые функцией и аргументом, образуют дискретные ряды чисел у0, уь , у к и to, t\, ..., tk. Рис. 1.2. Математическое представление сигналов Первая из рассмотренных разновидностей описывает непрерывные (аналоговые) сигналы, вторая и третья — дискретно-непрерывные, а четвертая — чисто дискретные. Совместное применение дискретизации и квантования позволяет преобразовывать непрерывную функцию в чисто дискретную. Согласно теореме Котельникова сигнал, описываемый функцией с ограниченным спектром, определяется своими дискретными значениями, которые отсчитываются через интервалы времени t = \/2Fc, где Fc — ширина спектра. Таким образом, сигнал y(t) можно передавать отдельными мгновенными значениями, которые отсчитываются через конечный интервал времени. По этим значениям компьютер полностью восстанавливает первичный непрерывный сигнал. К дискретно-непрерывным функциям относят также время-импульсное представление первичного сигнала y(t) прямоугольными импульсами с непрерывным 14 Основы теории компьютерной схемотехники информативным параметром (,/Т. где /, — длительность импульсов, пропорциональная значению сигнала; Т — период повторения импульсов (рис. 1.3, а). Рис. 1.3. Представление сигналов: а — время-импульсное; 6 — число-импульсное; в — импульсно-кодовое При число-импульсном представлении (рис. 1.3, б) информативным параметром является количество импульсов за период. В телеграфной связи используют импульсно-кодовое представление символов. Например, в коде Бодо передачу символов реализуют последовательной посылкой во времени пяти импульсов разной полярности, как показано на рис. 1.3, е для букв А и Б. В компьютерной схемотехнике используют разрядно-цифровое (или просто цифровое) кодирование, в котором первичный сигнал представляется группой символов, отображайэщих значения цифр 0 и 1 двоичной системы счисления электрическими сигналами, например, импульсами. Наличие импульса соответствует цифре 1, отсутствие— 0. Разряды двоичного числа характеризуются весом, кратным степени двойки — 1, 2, 4, 8, ... (в направлении от младших к старшим разрядам), например. для четырехразрядного двоичного числа имеем: .х - ,т3 л:2 • Л', • т0 = То • 21 -г х2 • Т + л', 21 т ,у() 2° = = л'з -8 <- х2 • 4 т л', 2 + л'о • I Если двоичное число х2 -- 1 101, то получим следующий десятичный эквивалент: Хю == 1-8+ 1-4+ 0-2+ 1-1 = 13 Цифровой код передают последовательно во времени (последовательный код) с помощью одного канала передачи (рис. 1.4. а) или одновременно (параллельный код) с помощью многоканальной передачи (рис.1.4, б). На практике последовательный код используют при передаче информации на большие расстояния (например, между компьютерами), а параллельный код — при передаче информации на малые расстояния (например, внутримашинные). Рис. 1.4. Передача информации: а — последовательным кодом; б — параллельным кодом 1.1. Информационные основы компьютерной схемотехники 15 1.1.2. Информационные меры В теории передачи и преобразования информации установлены информационные меры количества и качества информации — семантические, структурные, статистические. Семантический подход позволят выделить полезность или ценность информационного сообщения. В структурном аспекте рассматривают строение массивов информации и их измерение простым подсчетом информационных элементов или комбинаторным методом. Структурный подход используют для оценки возможностей информационных систем вне зависимости от условий их применения. При использовании структурных мер информации учитывают только дискретное строение сообщения, количество содержащихся в нем информационных элементов, связей между ними. При структурном подходе различают геометрическую, комбинаторную и аддитивную меры информации. Геометрическая мера определяет параметры геометрической модели информационного сообщения (длина, площадь, объем) в дискретных единицах. Эту меру применяют как для оценки информационной емкости всей модели, так и для оценки количества информации в одном сообщении. В комбинаторной мере количество информации 1 определяют количеством комбинаций элементов (символов), которые совпадают с числом: • сочетаний из q элементов по п: 1 = -^--, п\(q - п)! например, для множества цифр 1, 2, 3, 4 можно составить шесть сочетаний по две цифры: 12, 13, 14, 23, 24, 34; • перестановок I = q!, например, для множества букв а, в, с можно получить шесть перестановок: аве, асе, вас, вса, сав, сва\ • размещений с повторениями из q элементов по it. I = q". Например, для q = 0, 1 и а = 3 имеем: ООО, 001, 010, 01 1, 100, 101, 110, 111. Широкое распространение получила аддитивная мера. Пусть N — число равновероятных сообщений, а — их длина, q — число букв алфавита, используемого для передачи информации. Количество возможных сообщений длины п равняется числу размещений с повторениями N-~-q. (1.1) Эту меру наделяют свойством аддитивности, чтобы она была пропорциональна длине сообщения и позволяла складывать количество информации ряда источников. Для этого Хартли предложил логарифмическую функцию как меру количества информации: I = log N = п log q. (1.2) Количество информации, которое приходится на один элемент сообщения, называется энтропией: H = - = log(/. (1.3) п 16 Основы теории компьютерной схемотехники Основание логарифма зависит от выбора единицы количества информации. Если для алфавита используют двоичные цифры 0 и 1, то за основание логарифма принимают q = 2, в результате чего I = п log2 2 = п. При длине п = 1 получают Z = 1 и это количество информации называют битом. Передача сообщения длиной п = 1 эквивалентна выбору одного из двух возможных равновероятных сообщений — одно из них равно единице, другое — нулю. Двоичное сообщение длины п содержит п битов информации. Если основание логарифма равно 10, то количество информации измеряется в десятичных единицах — дитах, причем 1 дит = 3,32 бита. Например, текст составлен из 32 букв алфавита и передается последовательно по телетайпу в двоичном коде. При этом количество информации I = log2jV = log232 = 5 битов. Далее используются логарифмы с основанием два. В общем случае сообщения появляются с разной вероятностью. Статистическая мера использует вероятностный подход к оценке количества информации. Согласно Шеннону каждое сообщение характеризуется вероятностью появления, и чем она меньше, тем больше в сообщении информации. Вероятность конкретных типов сообщений устанавливают на основе статистического анализа. Пусть сообщения образуются последовательной передачей букв некоторого алфавита xj... х„ xq с вероятностью появления каждой буквы р(х\) = р}, р(х) = р„ р(х:1) = рч, при этом выполняется условие:р< + ... +р, + ... + рч = 1. Множество с известным распределением элементов называют ансамблем. Согласно Шеннону количество информации, которое содержится в сообщении х„ рассчитывают по формуле /(*,) = log—• (1.4) Р, Для абсолютно достоверных сообщений р, = 1, количество информации 1(х) = 0; при уменьшении значенияр, количество информации увеличивается. Пусть в ансамбле все букры алфавита хь ..., х„ ... , хч — равновероятны, то есть р\ = р2 = ... = pq = \/q, и статистически независимы. Тогда количество информации в сообщении длиной п букв с учетом выражения (1.4) ” ”11 1 / = УЛх,) = У log—= log—+ ...+ log— = n\ogq, Zf P, P-. A что совпадает с мерой Хартли в соответствии с выражениями (1.1) и (1.2). Согласно Шеннону информация — это снятие неопределенности, что понимают следующим образом. До опыта событие (например, появление буквы х,) характеризуют малой начальной вероятностью рн, которой соответствует большая неопределенность. После опыта неопределенность уменьшается, поскольку конечная вероятность рк > рн. Уменьшение неопределенности рассчитывают как разность между начальным 7Н и конечным 1К значениями количества информации. Например, для рн = 0,1 и рк = 1 получим: А/ = IH -1к = log —— log — = log 10 - log 1 - 3,32 бит. Рн Рк 1.1. Информационные основы компьютерной схемотехники 17 Пусть сложное сообщение характеризуется алфавитом из букв хь х2, ..., xq, их вероятностями р\, р2, ..., рч и частотой появления каждой буквы т,, т2, .... mq. Все сообщения статистически независимы, при этом + т2 + ... + mq = т. Общее количество информации для всех q типов сообщений с учетом выражения (1.4) я 1 h = У-Jog- м Р, Среднее значение количества информации на одно сообщение (энтропия) согласно формуле Шеннона гг Л: V"1 mi 1 1 V"1 1 1 ^= —= у—log—= XAlog—, (1.5) - ,=i - А ,=1 А где при большом значении т отношение mjm характеризует вероятность р, каждой буквы. Выражение logl//>, рассматривают как частную энтропию, которая характеризует информативность буквы х,, а энтропию Н— как среднее значение частных энтропий. При малых значениях р, частная энтропия велика, а с приближением р. к единице она приближается к нулю (рис. 1.5, а). Функция г| = (pj = р, logl/p, отражает вклад буквы х, в энтропию Н. Как видим, при р, = I эта функция равна нулю, затем возрастает до своего максимума и при уменьшении р, приближается к нулю. Функция q(p) при значении р, = 0,37 имеет максимум 0,531. Интерес представляют сообщения с использованием двухбуквенного алфавита Х| и х2 (например, цифры 0 и 1). Поскольку при q = 2 вероятность букв алфавита Р\ + Pi = 1, то можно положить, чтор\ = р и р2 = 1 -р. Тогда энтропию определяют соотношением Н = ?7() + 7(Рг) = Р log - + (1 - р) log 1 , р О-/’) график которой показан на рис. 1.5, б. Он образуется суммированием двух графиков, определяющих энтропию каждой из двух букв. Из графиков видно, что при р = 0 или р = 1 энтропия равна нулю и неопределенность полностью снимается. Это означает, что с вероятностью, равной единице, можно знать, каким будет следующее сообщение. Рис. 1.5. Гоафики функции Н: а — для частной энтропии; б — для двоичных сообщений 2 — 4-1749 0,2 0,4 0,6 0,8 1,0 Р 18 Основы теории компьютерной схемотехники Энтропия двухбуквенных сообщений достигает максимального значения, равного 1 биту, при р = 0,5, и ее график симметричен относительно этого значения. Это тот случай, когда наиболее трудно предугадать, какое сообщение будет следующим, — то есть ситуация наиболее неопределенная. В общем случае энтропия обладает следующими свойствами. 1. Энтропия — величина вещественная, непрерывная, ограниченная и неотрицательная. 2. Энтропия равна нулю, если сообщение заранее известно. В этом случае некоторое сообщение задано с вероятностью р, = 1, а вероятность остальных равна нулю. 3. Энтропия максимальна, если все сообщения равновероятны: рх = р2 = ... = = рч = \lq... В этом случае на основании выражения (1.5) получим: ч 1 4 1 •Og—= X-1Qg9 = log^ Pi 7^ Я что совпадает с выражением (1.3). В этом случае оценки количества информации по Хартли и Шеннону совпадают. 4. При неравных вероятностях количество информации по Шеннону меньше меры Хартли. 5. При объединении энтропий двух независимых источников сообщений их энтропии складываются. В компьютере наименьшей возможной единицей объемной (геометрической) меры информации является бит. Объем (или емкость) информации вычисляется по количеству двоичных символов 0 и 1, записанных в памяти компьютера. При этом возможно только целое число битов в отличие от вероятностного подхода, где может быть и нецелое число. Для удобства использования введены также единицы количества информации, превышающие бит. Так, двоичное слово из восьми символов содержит 1 байт информации, 1024 байт составляют килобайт (Кбайт), 1024 Кбайт — мегабайт (Мбайт) и 1024 Мбайт — гигабайт (Гбайт); при этом 1024 = 210. Между объемным и вероятностным количествами информации соотношение неоднозначное. Если сообщение допускает измерение количества информации и объемно и вероятностно, то они не обязательно совпадают. При этом вероятностное количество не может быть больше объемного. В дальнейшем тексте количество информации понимается в объемном значении. 1.2. Арифметические основы компьютерной схемотехники 1.2.1. Принципы построения системы счисления Числовая информация в компьютерах характеризуется: • системой счисления (двоичная, десятичная и др.); • видом числа (числа вещественные, комплексные, массивы); • типом числа (смешанное, целое, дробное); 1.2. Арифметические основы компьютерной схемотехники 19 • формой представления числа (место запятой) — с природной (переменной), фиксированной, плавающей запятой; • разрядной сеткой и форматом числа; • диапазоном и точностью представления чисел; • способом кодирования отрицательных чисел — прямым, обратным и дополнительным кодами; • алгоритмами выполнения арифметических операций. Системой счисления называется совокупность цифр и правил для записи чисел. Запись числа в некоторой системе счисления называется его кодом. Все системы счисления делятся на позиционные и непозиционные. Для записи чисел в позиционной системе счисления используют определенное количество графических знаков (цифр и букв), которые отличаются один от другого. Число таких знаков q называют основанием позиционной системы счисления. В компьютерах используют позиционные системы с разным основанием. Система счисления с основанием два (цифры 0 и 1) называется двоичной, система счисления с основанием три (цифры 0, 1,2) — троичной и т.д. В системах счисления с основанием меньше десяти используют десятичные цифры, а для основания больше десяти добавляют буквы латинского алфавита — А, В, С, D, Е, F. Далее в обозначениях в случае необходимости пишут десятичный индекс, равный применяемому основанию системы счисления (табл. 1.1). Таблица 1.1 Основание q Система счисления Знаки 2 Двоичная 0, 1 3 Троичная 0, 1,2 5 Пятеричная 0, 1,2, 3,4 8 Восьмеричная 0, 1,2, 3,4,5, 6,7 10 Десятичная 0, 1,2, 3,4, 5, 6, 7, 8,9 16 Шестнадцатеричная 0, 1,2, 3,4, 5, 6, 7, 8, 9, А, В, С, D, Е, F В позиционных системах счисления значение каждой цифры определяется ее изображением и позицией в числе. Отдельные позиции в записи числа называют разрядами, а номер позиции — номером разряда. Число разрядов в записи числа называется его разрядностью и совпадает с длиной числа. В непозиционных системах счисления значение каждой цифры не зависит от ее позиции. Самой известной непозиционной системой является римская, в которой используются семь знаков — I, V, X, L, С, D, М, соответствующих таким значениям: I 1 V X L С D М 5 10 50 100 500 1000 Например: III — 3; LIX — 59; DLV — 555. Недостатком непозиционной системы является отсутствие нуля и формальных правил записи чисел и соответственно арифметических действий с ними (хотя по традиции римскими числами часто пользуются при нумерации глав в книгах, веков в истории и др.). Система счисления должна обеспечивать: • возможность представления любого числа в заданном диапазоне; 2* 20 Основы теории компьютерной схемотехники • однозначность, сжатость записи числа и простоту выполнения арифметических операций; • достижение высокого быстродействия машины в процессе обработки информации. Число в позиционной системе можно представить полиномом: к Aq = ak-qk + а^_, -qk 1 +...+а0 -q' +а_, -q 1 + -q т = -q , (1.6) i=-m где q — основание системы счисления; q‘ — вес позиции; а, е {0, 1, - 1)} — цифры в позициях числа; 0, 1, ..., к — номера разрядов целой части числа; -1, -2, ..., -т — номера разрядов дробной части числа. Позиционные системы с одинаковым основанием в каждом разряде называют однородными. Поскольку на значение q нет никаких ограничений, то теоретически возможно бесконечное множество позиционных систем счисления. На практике применяют сокращенную запись полинома (1.6) в виде последовательности цифр со знаком в зависимости от типа числа: • для смешанного числа Aq - +ак ак-] ... а\ а0, а_\ ... С1-т, (1.6, а) • для целого числа Aq = +ак Я*-| Щ а0; (1.6,6) • для правильной дроби Aq = ± 0, ... (2 _т . (1.6, в) \ Пример 1.1 Иллюстрация записи чисел в виде последовательности цифр (1.6) и соответствующего полинома (1.5): • двоичная система: q = 2; cq е {0, 1}: А2 = 111,01 = 1-22 + 1-2' + 1-2°+ 0-2*' + 1 -2 2 = 7,2510; • восьмеричная система: q = 8; а,- е {0, 1, 2, ..., 7}: Л8 = 45,21 =4-8' + 5-8° + 2-81 + 1-8“2 = 37,26510; • десятичная система: q = 10; а, е {0, 1, 2, ..., 9}: А10 = 135,64 = 1 -102 + 3-101 + 5-10° + 6 10“' + 4-10“2 • шестнадцатеричная система: q = 16; cq= {0, 1, ..., F}\ Al6 = DEAB = D-161 -ь^-160 + 1-16"' + 5-16“2 = = 13-16' + 14-16° + 1-16"' + 11-16 2 = 222,10510. Рассмотренные записи чисел показывают один из способов перевода недесятичных чисел в десятичные. При одинаковой разрядности в системах счисления с большим основанием можно записать больше разных чисел. 1.2. Арифметические основы компьютерной схемотехники 21 Достоинством двоичной системы является: простота выполнения арифметических операций; наличие надежных микроэлектронных схем с двумя устойчивыми состояниями (триггеров), предназначенных для хранения значений двоичного разряда— цифр 0 или 1. Двоичные цифры называют также битами. В двоичнодесятичной системе счисления каждая десятичная цифра записывается четырьмя двоичными разрядами (тетрадами). Пример 1.2 Запись десятичного числа в двоично-десятичной системе: 8 7 3 2 5 Aw = 873,25 = 1000 01110011,0010 0101. 1.2.2. Перевод чисел из одной системы в другую Для перевода целого числа из одной системы счисления в другую необходимо разделить переводимое число на новое основание по правилам исходной системы. Полученный первый остаток является значением младшего разряда в новой системе, а первое частное необходимо снова разделить. Этот процесс продолжается вплоть до получения неделимого частного. Результат записывают в порядке, обратном их получению в виде формулы (1.6, б). Для перевода правильной дроби из одной системы счисления в другую необходимо, действуя по правилам исходной системы, умножить переводимое число на основание новой системы; от результата отделить целую часть, а оставшуюся дробную часть снова умножить на это основание. Процесс такого умножения повторяется до получения заданного числа цифр. Результат записывают как целые части произведения в порядке их получения, располагаемых в виде формулы (1.6, в). 22 Основы теории компьютерной схемотехники Пример 1.4 Перевод правильной десяти стью до четвертого знака: 0, 1 0 1 0 Результат: А = 0,62510 = 0,10 чной дроби А = 0,625 в двоичное число с точно- 625 2_ 0; 250 2_ a-i = 1; 500 2 а_2=0; 000 2_ а-з=1; 000 <7-4 = 0. 102. Для перевода смешанных чисел в двоичную систему требуется отдельно переводить их целую и дробную части. В записи результата целая часть перевода отделяется от дробной в соответствии с формулой (1.6, а). Г Пример 1.5 Перевод смешанного десятичного числа А = 118,62510 в двоичное. Используя результаты перевода целого числа 118 в примере 1.3 и дробного числа в примере 1.4, запишем результат: ________________________А= 118,62510 = 1110110,10102._______________________ В восьмеричных и шестнадцатеричных числах основание системы счисления кратно степени двойки: 23 = 8; 24 = 16. По этой причине перевод этих чисел в двоичные реализуется очень просто: каждую цифру записывают тремя двоичными цифрами (триадами) для восьмеричных чисел и четырьмя двоичными цифрами (тетрадами) для шестнадцатеричного числа в направлении влево и вправо от запятой. При этом крайние незначащие нули опускаются. Пример 1.6 Иллюстрация перевода восьмеричных и шестнадцатеричных чисел в двоичные: Г-°-, Г-'-, Г-Л-, А = 305,428 = 011000101,100 0102’ л—। ,_Х_, ,-5—, ^-3-^ ,-3—, А = 1AB,EFX6 = 011110101011,111011112- Для перевода двоичного числа в восьмеричное исходное число разбивают на триады влево от запятой; отсутствующие крайние цифры дополняют нулями. Затем каждую триаду записывают восьмеричной цифрой. Аналогично осуществляется перевод двоичного числа в шестнадцатеричное, при этом выделяют тетрады, заменяемые шестнадцатеричными цифрами. 1.2. Арифметические основы компьютерной схемотехники 23 Пример 1.7 Иллюстрация перевода двоичных чисел в восьмеричные и шестнадцатеричные: Д-, Д_, А = 110011,1000102 = 110011,1000102 = 63,428; А = 110011,1000102 = 00110011,100010002 = 33,88]6 Рассмотрим правила, облегчающие расчеты с двоичными числами. 1. Необходимо знать представление десятичных чисел от нуля до 15 в системах счисления с основанием q = 2, 8, 16 и 2-10 (табл. 1.2). Таблица 1.2 q = 10 гч II О" QO II О" q = 16 q = 2-10 0 0 0 0 0000 1 1 1 1 0001 2 10 2 2 0010 3 и 3 3 ООП 4 100 4 4 0100 5 101 5 5 0101 6 по 6 6 оно 7 111 7 7 0111 8 1000 10 8 1000 9 1001 11 9 1001 10 1010 12 А 0001 0000 11 1011 13 В 0001 0001 12 1100 14 С 0001 0010 13 1101 15 D 0001 ООП 14 1110 16 Е 0001 0101 15 1111 17 F 0001 0101 2. Необходимо знать десятичные значения чисел 2к от к = 0 до к = Ю (табл. 1.3). Таблица 1.3 к 0 1 2 3 4 5 6 7 8 9 10 2к 1 2 4 8 16 32 64 128 256 512 1024 3. Полезно знать следующие соотношения для двоичных целых и дробных чисел: А = Ю0...00 = 2к, например , А = 1000 2 = 23 = 8|0; к А = 11... 11 = 2к -1, например , А = 111112 = 25 -1 = 31|0; к А = 0,11...И = 1-2”*, например, Л = 0,1111 = 1-2”4=| — | '—Г' 2 Ы10 24 Основы теории компьютерной схемотехники А ~ 0,00...01 = 2“‘, например, А = 0,00001 2 = 2-5 = — • Двоичные дробные числа в десятичном виде записываются так: к разрядов справа от запятой определяют целое положительное число в числителе, а в знаменателе — число 2а. Например, А = 0,10112 = (11/24)10 = (11/16)10, что читается как “одиннадцать шестнадцатых”. 1.2.3. Специальные системы счисления Рассмотренные позиционные системы счисления относят к классическим. Кроме них, в компьютерах используют ряд специальных позиционных двоичных систем, в том числе: • систему с использованием символов 0, -1, или_1, -Г, для удобства символ -1 обозначают как 1 ; систему с символами 1 и 1 называют системой счисления (1, 1); • системы с отрицательным основанием q < -1 и символами 0, 1, ...,(<?- 1); систему с основанием q = -2 и символами 0, 1 называют минус-двоичной; • избыточную систему с основанием q и количеством символов больше q, например, при q = 2 используют символы (1,0, 1), такую систему называют также симметричной знакоразрядной. Преимуществом специальных систем счисления является упрощение и ускорение выполнения ряда арифметических операций (сложение, вычитание, умножение, деление) и представление единым кодом положительных и отрицательных чисел без дополнительного знакового разряда. Недостатком специальных систем является сложность правил перевода их в классические системы счисления и наоборот, а также неоднозначное представление ряда чисел. Если в формуле (1.6) учесть, что символы а, принимают значение 1 или 1, то для основания q = 2 число А = 99|0 будет иметь вид 1111111. В системе чисел (1,1) отсутствует символ “нуль”, поэтому некоторые целые и дробные числа в ней не могут быть представлены конечным множеством символов. Например, десятичное чис-ло_ А =_20|0 в системе чисел (1,1) записывается как^ бесконечное число 11111,111 ..., что обуславливает погрешность в системе (1, 1). В то же время есть числа, которые не имеют единого изображения. В минус-двоичной системе может быть представлено любое положительное или отрицательное число. Например, для q = -2, п = 4 с учетом формулы (1.6): А = 5ю = 0101 (_2); А = -5ю =1111(_2). Некоторые числа представлены неоднозначно и только бесконечными дробями: А = 1/3 = 0,010101... или А = 1,101010... Избыточная двоичная система связана с обычной соотношением: 2= £ 2' = 2* -1 = 100...01. к '=0 к На основании выражения (1.6) осуществляется переход от обычной двоичной системы к избыточной с символами 1,0, 1 и наоборот. Избыточная система имеет следующие свойства: 1.2. Арифметические основы компьютерной схемотехники 25 • одно и то же число не имеет единой записи: А = 12ю = 011002 — 10 1 00, = = 11100; • положительные и отрицательные числа изображаются без_использования дополнительного знакового разряда: А = 13|0 = 011012 = 10101; А = -1310 = = -011012= 10101 (при смене знака достаточно заменить в записи числа 1 на 1 и наоборот); • возможно уменьшение количества единиц в записи числа, что позволяет упростить и ускорить выполнение арифметических операций, особенно сложение и вычитание. Преобразование двоичных чисел в избыточную систему с минимальным числом единиц в разрядах осуществляют так. На первом этапе все комбинации в записи числа вида 01. ..11 заменяют равнозначной комбинацией вида_10...01 с тем же числом разрядов; затем выполняют замену сочетаний 11 на 01 и 11 на 0 1, например: А = 10 0111 0 01Н0И012 = 10100101 ООП 011 =10100101000101. 1 1 з Количество единиц в записи числа уменьшилось с десяти до четырех. 1.2.4. Выбор системы счисления В компьютерах в основном используют однородные позиционные системы счисления. При выборе основы q этих систем учитывают такие показатели. 1. Наличие физических элементов для изображения цифр системы в виде одного из q состояний, например, разницы напряжений. Уменьшение числа состояний упрощает физический элемент, поэтому наиболее приемлемой является двоичная система. 2. Экономичность системы счисления. Система с большим основанием q обеспечивает представление определенного числа меньшим количеством разрядов. Однако при этом усложняется построение физического элемента с большим числом состояний. Эффективность системы счисления с основанием оценивается количеством цифровых разрядов D„ необходимых для изображения определенного числа с длиной то есть D, = qrn,. При этом учитывается, что уменьшение значения D, приводит к уменьшению электронных схем для представления чисел в компьютерах. Для представления любого десятичного числа длиной, например, «ю = 6 используют Di0 = (fio’Hio = Ю-6 = 60 цифроразрядов. В двоичной системе для представления того же числа (с учетом соотношения п2 = З-ию) требуется иметь D2 - q2-3-n]0 = 2-3-6 = 36 цифровых разрядов. Наиболее экономичной является система с основанием q = 2,73 ... « 3. Двоичная система по экономичности уступает троичной на 5,8%, однако имеет более надежные физические элементы. Кроме того, для запоминания цифр троичной системы 0, 1, 2 используют два двоичных физических элемента. Из этого следует, что самой эффективной является двоичная система счисления. 26 Основы теории компьютерной схемотехники 3. Трудоемкость и быстродействие выполнения арифметических операций. Чем меньше основание q, тем меньше цифр принимают участие в вычислении данных и тем выше быстродействие компьютера. Например, быстродействие машины в двоичной системе превышает быстродействие в троичной на 26,2%, а в десятичной — в 2,7 раза. 4. Наличие формального математического аппарата для анализа и синтеза цифровых схем. Таким аппаратом для двоичных элементов является булева алгебра. Таким образом, из перечисленных показателей видно, что самой приемлемой для применения в компьютерах является однородная позиционная двоичная система счисления. Двоичные системы счисления используют в больших и средних компьютерах, предназначенных для решения научно-технических задач с большим объемом вычислений и сравнительно малым количеством исходных данных. Двоично-десятичную систему применяют для решения экономических задач, которые характеризуются большим объемом входных и выходных данных в сравнении с малым объемом вычислений. Двоично-десятичная система имеет следующие достоинства: • не требуется перевод исходных данных из одной системы в другую; • удобство контроля результатов изображением их на экране дисплея; • удобство автоматического контроля через наличие избыточных кодов в изображении цифр: 1010, 1011, .... 1111. 1.2.5. Формы, диапазон и точность представления чисел Двоичные числа в компьютерах размещаются в ячейках памяти или в регистрах, которые состоят из запоминающих элементов — триггеров. В ячейке или триггере хранится значение одного двоичного разряда — бит информации. Разрядной сеткой компьютера называется совокупность запоминающих элементов для размещения одного двоичного числа. Для разных классов компьютеров длина разрядной сетки составляет 8, 16, 32, 64 и больше разрядов. Форматом называется способ размещения компонентов числа в разрядной сетке, то есть последовательность и позиции знака, мантиссы, порядка и др. В компьютерах используются две формы представления числа: • с фиксированной запятой перед старшим разрядом числа (для правильной дроби) или после младшего (для целого числа); • с плавающей запятой, место положения которой задается порядком числа. Место запятой в обоих форматах понимается неявно, без использования дополнительных разрядов. По традиции нумерация разрядов в больших машинах осуществляется слева направо, а в мини- и микрокомпьютерах и микропроцессорах — справа налево. В числах со знаком выделяют дополнительный знаковый разряд (обычно, крайний слева). В нем для знака плюс записывают цифру 0, а для знака минус — цифру 1. В числах без знака все разряды числа определяют модуль. Форматы двоичных дробных и целых чисел со знаком, с нумерацией разрядов справа налево и значением их веса показаны на рис. 1.6. 1.2. Арифметические основы компьютерной схемотехники 27 6 5 4 3 2 1 0 2’1 2'2 2‘3 2’4 2'5 2-б 2'7 Рис. 1.6. Формат байта: а — для правильной дроби; б — для целого числа Числа в разрядную сетку записывают в соответствии с весом позиций. Не занятые разряды заполняют нулями, как это показано на рис. 1.7 для чисел +0,725ю = = .+0,101112 и-4710 =-1011112. 7 6 5 4 3 2 1 0 0. 1 0 1 1 1 0 0 А 7 6 5 4 3 2 1 0 1 0 1 0 1 1 1 1 Рис. 1.7. Запись чисел: а — дроби +0,101112; б — целого числа -1011112 Интервал числовой оси, заключенный симметрично между максимальным и минимальным значением числа, называется диапазоном представления. Абсолютное значение целого числа Л изменяется в пределах: Amin IА | < Лтах; Лт|П = 1; Атах = 2 — 1, (1.7) где к— количество разрядов цифровой части числа. Из выражения (1.7) следует, что числа, по абсолютному значению меньше единицы, воспринимаются как “машинный нуль”; числа, больше Л,пах, вызывают переполнение разрядной сетки. Диапазон представления целых чисел с учетом симметрии относительно нуля числовой оси Д>я=2Лтах = 2(2*-1)«2* ’. (1.8) Пример 1.8 Рассчитать максимальное значение и диапазон представления целого числа со знаком в 16-разрядной сетке. На основе выражений (1.7) и (1.8) для к = 15 получаем: Лтах = 215 - 1 = 32767; D = 2Лтах = 65534. Абсолютное значение правильной дроби В изменяется в пределах: . Д„,п < IВ | < Bmax; Bmin = Тк; Втт = 1-2* (1.9) Правильная дробь, по модулю меньше 2”*, воспринимается как “машинный нуль”; числа, больше единицы, вызывают переполнение разрядной сетки. Диапазон представления правильной дроби DB = 2Дпах = 2(1- 2 *) « 2, так как 1 » 2"*. Точность представления чисел в компьютере определяется абсолютной и относительной погрешностью. Абсолютная погрешность представления чисел в компьютере составляет: для целых чисел АЛ = 1/2 = 2"'; (1.10) 28 Основы теории компьютерной схемотехники для правильной дроби АВ = 2 к/2 =2"(А+,). (1.11) Из выражения (1.10) следует, что абсолютная погрешность представления целых чисел в форме с фиксированной запятой равна половине младшего разряда и не зависит от длины разрядной сетки. Из выражения (1.11) видно, что абсолютная погрешность представления правильной дроби в форме с фиксированной запятой уменьшается при увеличении длины разрядной сетки. Относительная погрешность 8 представления числа задается отношением абсолютной погрешности к текущему значению числа и находится в пределах 8min — 8 Зщах. Для целых чисел в форме с фиксированной запятой минимальное и максимальное значения относительной погрешности Зл,™ = ЛА/Лтах = 2~7(2*- 1) « 2-(И|); 8Лтах = Жш = 2’71 = 0,5. Такими же формулами определяются минимальное и максимальное значения относительной погрешности для правильной дроби с фиксированной запятой. Относительная погрешность представления чисел в форме с фиксированной запятой существенно зависит от значения числа и значительно возрастает для малых чисел. В форме с плавающей запятой числа представляются в виде произведений: С = qn -М = ХМ, (1.12) где q — основание системы счисления (обычно целая степень числа 2); П — порядок числа длиной £+1 (целое число со знаком); М— мантисса числа длиной г+1 (правильная дробь со знаком); X — характеристика числа. Знак всего числа определяется знаком мантиссы. Для мини-компьютеров основания порядка и мантиссы совпадают (далее предполагается этот случай), а для больших машин — они различны. Представление числа формулой (1.12) называют также полулогарифмическим, потому что только часть числа — характеристика — представляется в логарифмической форме. Мантисса называется нормализованной, если ее значение определяется неравенством вида \/q<\M\<1, (1.13) то есть в старшем разряде модуля мантиссы должна быть записана единица. Так, для основания q = 2 имеем: 2'1 < М< 1. Пример 1.9 Иллюстрация записи числа в форме с плавающей запятой: Л2 = 2'110,111 = 22-1 1,01 11 - 24-0,1 1011 1. Значение порядка указывает на количество позиций, на которые “плавает" запятая. Формат числа с плавающей запятой в 16-разрядной сетке показан на рис. 1.8. Тут для модулей порядка и мантиссы отведено соответственно пять и девять разря 1.2. Арифметические основы компьютерной схемотехники 29 дов. Запятая в порядке размещена (условно) после младшего разряда, а в мантиссе— перед старшим. Знаки порядка и мантиссы размещены перед их старшими разрядами. 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 О ± Порядок ± Мантисса Рис. 1.8. Формат чисел в форме с плавающей запятой Абсолютное значение числа С в форме с плавающей запятой с учетом формул (1.7), (1.9) и (1.13) изменяется в пределах Ainin Akinin “ Cmjn < | С* | < C*max — -Aqnax Л/1Пах, (1.14) где Xmnl = 2 n- ; Af,nill = 2~’; Xmax = 2+n- ; Mmax = 1 -2~‘; Птах = T - 1; г л к— разрядность модулей порядка и мантиссы. Диапазон представления чисел в форме с плавающей запятой Dc =2Cmax = 2-2+n"M>(l-2~*)«2+n”"'+1. (1.15) Пример 1.10 I Рассчитать значение диапазона Dc для числа С при г = 5, к = 9. С учетом \ выражения (1.15) получаем: П,„ах = 2/<- 1 = 25 - 1 - 31; Dc = 23|+|= 232, что приблизительно соответствует десятичному числу 1О320’3 ~ 109. Диапазон представления чисел с плавающей запятой приблизительно больше в Птах раз диапазона представления чисел в форме с фиксированной запятой. —-----—-----------------------------------------------__----,-----,----.- Абсолютная погрешность представления чисел в форме с плавающей запятой зависит от погрешности мантиссы и порядка числа: АС = АЛ/-2±П; АЛ/ = 2(Ж), (1.16) где АЛ/— погрешность представления мантиссы. Минимальная и максимальная относительные погрешности представления чисел в форме с плавающей запятой не зависят от характеристики (она записывается в числителе и знаменателе выражения и потому сокращается). С учетом формул (1.14) и (1.16) относительные погрешности рассчитывают из соотношений: = Ш 2~(t+l) “ ~ 2“’ (1.17) Из выражений (1.17) следует, что относительные погрешности представления чисел в форме с плавающей запятой практически постоянны во всем диапазоне чисел. 30 Основы теории компьютерной схемотехники 1.2.6. Представление информации в микропроцессорах класса Pentium Рассмотрим представления операндов в 32-разрядных микропроцессорах класса Pentium. В них используются такие типы данных: целые числа, вещественные числа, двоично-десятичные числа и строки битов, байтов и слов. Целые числа представляются со знаком и без знака в форматах байта, слова, двойного и учетверенного слова длиной соответственно 8, 16, 32 и 64 бит (рис. 1.9). 7 0 7 0 15 8 7 0 15 8 7 0 l± I Байт | | Байт | Слово | | Слово I a б в г 31 16 15 0 31 16 15 0 |± | Двойное слово | I Двойное слово д е 61 0 l± I Учетверенное слово I Рис. 1.9. Форматы целых чисел: а, в, д, ж— со знаком; б, г, е— без знака Над числами в этих форматах выполняются операции сложения, вычитания, умножения, деления и др. Диапазоны представления знаковых и беззнаковых значений в данных форматах представлены в табл. 1.4. Таблица 1.4 Формат числа Диапазон представления чисел без знака со знаком Байт 0...255 “128... + 127 Слово 0...65535 -32768...+32767 Двойное слово 0...4-Ю9 -2-1О9...+2-1О9 Учетверенное слово 0...5-1019 -2,51019. ..+2,5Ю19 Вещественные числа представлены в формате с плавающей запятой в коротком (32 бит), длинном (64 бит) и расширенном (80 бит) форматах (рис. 1.10). Числа с плавающей запятой длиной 32 и 64 бит, которые используются во многих компьютерах, например, в ЕС ЭВМ, СМ ЭВМ, обычно называют числами с одинарной и двойной точностью. Расширенный формат характерен только для процессоров класса Pentium. 31 30 27 26 0 | Порядок 1 Мантисса | 63 62 a 52 51 0 1 ± 1 Порядок 1 Мантисса 1 79 78 б 64 63 0 Ь L Порядок 1 Мантисса в Рис. 1.10. Форматы чисел с плавающей запятой: а — короткий; б — длинный; в — расширенный 1.2. Арифметические основы компьютерной схемотехники 31 В данных форматах чисел с плавающей запятой используются смещенные по- рядки Псм ’ П + 127 для г = 8; Псм = П + АП = П +2г-'~ 1 = •! П + 1023 для г = 11; П + 16383 для г = 15, где П — значение истинного порядка; АП = 2'1 - 1 — смещение; г — длина порядка, которая равна 8, 11 или 15 бит соответственно для короткого, длинного и расширенного формата. Значение ПСм всегда положительное, поэтому знаковый разряд не нужен. Представление порядка со смещением упрощает операции сравнения чисел с плавающей запятой, что особенно важно для алгоритмов сортировки. Значение числа с плавающей запятой и смещенным порядком определяется по формуле где 5— знак числа; п — число, которое для разных форматов равно 23, 52 или 63. В машине мантисса представлена в нормализованной форме, которая состоит из целой части Fo = 1 и дроби в таком виде: М — 1, F, F2, .... Fi, ...,Fn. В коротком и длинном форматах бит Fo при передаче чисел и хранении их в памяти не фигурирует. Это — скрытый (неявный) бит, который в нормализованном числе всегда равен единице. Пример 1.11 Представить десятичное число -247,375 в коротком формате. Двоичный код этого числа равен -11110111,011; истинный порядок будет +7 (запятая сдвигается влево на семь разрядов), а смещение достигнет значения Псм = 127 + 7 = 134. С учетом скрытого бита Fo = 1 имеем: Знак Порядок Мантисса 1 1000 0110 ,1110 1110 1100 0000 0000 0000. Параметры форматов вещественных чисел представлены в табл. 1.5. Таблица 1.5 Параметры Формат короткий ДЛИННЫЙ расширенный Длина формата, бит 32 64 80 Длина мантиссы, бит 24 53 64 Длина порядка, бит 8 П 15 Смещение порядка + 127 + 1023 +16383 Диапазон Ю±з8 1О±308 10±4932 Числа в коротком и длинном форматах существуют только в памяти. При загрузке чисел в одном из этих форматов в микропроцессор они автоматически преобразуются в 80-битный формат, который используется только для внутренних one- 32 Основы теории компьютерной схемотехники раций. Аналогично данные из процессора преобразуются в короткий или длинный формат для хранения в памяти. Точность вычислений чисел с плавающей запятой возрастает с увеличением длины мантиссы. Диапазон представления чисел с плавающей запятой зависит от длины порядка и основания счисления q. В машинах ЕС ЭВМ значение q = 16. В процессорах Pentium диапазон представления чисел в коротком формате для q = 2 находится в пределах 10±38. Если же для этого формата взять основание q = 16, то получим значение диапазона в пределах 10±152. В микропроцессорах Pentium используются двоично-десятичные цифры в таких форматах: • восьмиразрядные упакованные, которые содержат в одном байте две десятичные цифры в коде 8421, например, 3910 = 0011 Ю012_10; • восьмиразрядные неупакованные, которые содержат одну десятичную цифру в байте (младшая тетрада) вместе с признаком (зоной) 00112 в международном коде ASCII, например, 3910 = 0011 0011 0011 Ю012_10. Представление десятичного числа 136492 в неупакованном и упакованном форматах показано на рис. 1.11; 7______0 7_______0 7______0 7______0 7_______0 7______0 |00П 0001 |0011 ООП |0011 0П0|00П 0100|00П 100110011 оою| а 7______0 7_______0 7______0 [0001 ООП |0П0 0100 |1001 0010 I б Рис. 1.11. Представление десятичных цифр в форматах: а — неупакованном; б — упакованном • 80-разрядные упакованные, в которые записываются 19 десятичных цифр, и в старшую тетраду записывается знак числа. 1.2.7. Кодирование отрицательных чисел Для записи знака числа, замены операции вычитания чисел сложением их кодов, а также для определения переполнения разрядной сетки используют прямой, обратный и дополнительный коды, где для представления знака числа отводится знаковый разряд, который располагается слева от числа и отделяется запятой. В знаковый разряд записывают нуль (для положительного числа) или единицу (для отрицательного). Запятая в машине в явном виде не изображается, а только подразумевается. Числа, представленные в прямом, обратном и дополнительном кодах, называют машинными изображениями. Они состоят из знакового разряда и цифровой части (модуля числа). Положительные числа во всех кодах записываются одинаково. Если обозначить машинные изображения числа А в прямом коде [Л]Пр, в обратном коде [Л]0Б, в дополнительном коде [Л]д, то для положительных чисел имеем: [Л]пр = [Л]об = И]д. 1.2. Арифметические основы компьютерной схемотехники 33 Для отрицательных чисел с длинной мантиссы к битов коды определяют по таким правилам: прямой код: Г1 + |Л| -для дроби; МпР = ] А. I I 2 + -для целого числа; обратный код: [2-|л|-2“а' -для дроби; И]оБ=1 л+| | | 2 -Л -для целого числа; дополнительный код: [2-|л| -для дроби; Ид Н А.+| I , 12 - |Л| - для целого числа; Пример 1.12 ] Запись двоичных чисел А = 10102 и В = —10102 в прямых кодах: [Л]Пр = 0,1010; [5]пр= 1,1010. | Обратный код отрицательного числа образуется из его прямого кода после инвертирования значений разрядов цифровой части, то есть заменой нуля на единицу и единицы — на нуль; значение знакового разряда не изменяется. Дополнительный код отрицательного двоичного числа образуется из его обратного кода путем добавления единицы к младшему разряду. Пример 1.13 Представление в обратном и дополнительном кодах двоичных чисел: целого А =-10012 и дробного В = —10012: И]0Б= 1,0110; №=1,0111; [5]об= 1,0110; [5]д= 1,0111. Из этих примеров видно, что обратный и дополнительный коды целых и дробных чисел по виду записи совпадают; расхождения между ними отражены в алгоритмах обработки информации. В модифицированных кодах знак числа дублируется в двух знаковых разрядах. Пример 1.14 Представление в модифицированных кодах чисел А = 11012 и В = -11012: №р=№б=№ = 00,1101; [5]пр= 11,1101; Моб = 11,0010; [5]д = 11,0011. Для перехода от обратного кода отрицательного числа к прямому коду требуется инвертировать значения разрядов цифровой части, не изменяя значения знакового разряда. Для перехода от дополнительного кода отрицательного числа к прямому сначала получают его обратный код, а затем добавляют единицу к младшему разряду. 3-4-1749 34 Основы теории компьютерной схемотехники 1.2.8. Арифметические операции сложения и вычитания Все операции в компьютере выполняются в арифметико-логическом устройстве (АЛУ). Числа, которые участвуют в операциях, называются операндами. Основной операцией в АЛУ является сложение. Операция вычитания заменяется сложением операндов в обратном или дополнительном кодах. Операции умножения и деления сводятся к многократным сложениям и сдвигам. Правила выполнения операций сложения, вычитания, умножения и сложения по модулю 2 в двоичной арифметике представлены в табл. 1.6. При сложении двух единиц возникает перенос в старший разряд; при вычитании из нуля единицы требуется заем из старшего разряда. Таблица 1.6 Сложение Вычитание Умножение Модуль 2 0+0 = 0 0-0 = 0 00 = 0 0+0 = 0 0+1 = 1 1-0=1 01 =0 0+1 = 1 1+0 = 1 1-1=0 1-0 = 0 1+0=1 1 + 1 = 10 т Перенос 0-1 = 11 t Заем 11 = 1 1 + 1=0 Операция сложения в АЛУ выполняется типовым функциональным узлом — сумматором. Он состоит из отдельных логических схем, называемых одноразрядными сумматорами. Связь между отдельными одноразрядными сумматорами реализуется с помощью цепей переноса в направлении от младших разрядов к старшим. Операнды А и В поступают с выходов регистров операндов. Комбинационный сумматор строится на логических элементах и не обладает свойством запоминания информации, поэтому результат сложения записывается в регистр результата. Во всех компьютерах имеются команды сложения и вычитания чисел. Однако в сумматорах реализуются только операции сложения условно положительных машинных изображений. Машинные изображения положительных операндов во всех кодах совпадают. Машинные изображения отрицательных операндов получают по правилам представления чисел в обратном и дополнительном кодах. В операциях вычитания знак второго операнда (вычитаемого) автоматически изменяется на противоположный и после этого получают его машинное изображение. Поэтому в последующих примерах рассматриваются только операции сложения. В машинных изображениях (для обратного и дополнительного кодов) знаковый разряд и цифровая часть числа рассматриваются как одно целое. Они одинаково участвуют в операции сложения. При сложении в обратных кодах перенос из старшего знакового разряда результата поступает на вход переноса младшего разряда (циклический перенос). При сложении в дополнительных кодах перенос из старшего знакового разряда результата не учитывается, поэтому в сумматоре цепь циклического переноса разрывается. Знак результата при сложении машинных изображений образуется автоматически. При сложении двоичных л-разрядных чисел А = а,„ ..., а, и В = Ь„, ..., Z>„ ..., Ьх результат в каждом разряде определяют по формулам: 1.2. Арифметические основы компьютерной схемотехники 35 а, + bj +Zi — Si + 2P,+l, f 0 при а, + Ь, < 1; /+l [1 при at + bi > 2; где а„ bj — значения z-x разрядов; Z, — перенос из младшего разряда; S, — результат; Р1+, — перенос в старший разряд. Пример 1.15 Сложить двоичные числа А = 1010 и В = 0011 в обратном коде: [Л]Об = 0,1010 + [^]ОБ = 0,0011 [С]об = 0,1101; С= 11012 = 1310. Пример 1.16 Сложить двоичные числа А = -1010 и В = ном кодах: [Л]Об = 1,0101 + [^]об = 1,1100 -0011 в обратном и дополнитель- [Л]д= 1,0110 + [5]д= 1,1101 1,0001 | +1 [С]Об = 1,0010; С = -11012 =-1310. [С]д= 1,0011; С =-11012 =-1310. При сложении чисел одного знака возможно переполнение разрядной сетки, признаком чего является несовпадение знака результата со знаками операндов. В АЛУ имеются специальные логические схемы, которые автоматически формируют признак переполнения. Пример 1.17 Сложить двоичные числа А = 1011 и В = 0111 в обратном и дополнительном кодах: [Л]об = 0,1011 [Л]д = 0,1011 + [5]об = 0,0111 + [5]д = 0,0111 [Qoe# 1,0010; [С]д# 1,0010. В этом примере сложение положительных чисел привело к положительному переполнению: операнды — положительные, результат — отрицательный. Пример 1.18 Сложить двоичные числа А = -1011 и В = -0111 в обратном и дополнительном кодах: |/4]об — 1,0100 + [5]об= 1,1000 [Л]д= 1,0101 + [Я]д= 1,1001 [С]об # 0,1101; [С]д # 0,1110. з* 36 Основы теории компьютерной схемотехники В этом примере сложение отрицательных чисел привело к отрицательному переполнению; операнды — отрицательные, результат — положительный. Для упрощения обнаружения переполнения разрядной сетки используются модифицированные коды, для которых знаковый разряд в сумматоре дублируется. Положительному переполнению в знаковых разрядах соответствуют цифры 01, а отрицательному — 10. Значение знаковых разрядов 00 соответствует правильному положительному результату, а цифры 11 — отрицательному. Пример 1.19 \ Сложить двоичные числа А = -1010 и В = 1100 в обратном и дополнительном \ модифицированных кодах: I [Л]МОБ= 11,0101 [Л]мд= 11,0110 I +[^]МОБ = 00,1100 + [£]мд = 00,1100 I ’ 100,0001” [С]мд = 00,0010; I I* +1 I 1-----► [С]Моб = 00,0010; С = 00102 = 2|О. С = 00102 = 2|О. Пример 1.20 Сложение чисел А = -1101 и В = фицированных кодах: -1010 в обратном и дополнительном моди- [Л]МОБ = 11,0010 [Л]мд= 11,0011 + [£]МОБ= 11,0101 + [£]мд= 11,0110 [С]МОБ^ 10,1000; [С]мд^ 10,1001. В этих примерах произошло отрицательное переполнение в результате. 1.2.9. Арифметические операции умножения и деления Операция умножения чисел состоит из к циклов, где к — число цифровых разрядов множителя. Результат умножения z-го разряда множителя на множимое называется частичным произведением, а их последовательное сложение — суммой частичных произведений (СЧП). В каждом цикле анализируется следующая цифра множителя: если это 1, то к СЧП прибавляется множимое, если 0, то сложение не выполняется. Цикл завершается сдвигом на один разряд множимого относительно СЧП или сдвигом СЧП относительно неподвижного множителя. Множимое и множитель размещаются в разрядной сетке на основе специальных схем-регистров, а СЧП — в сумматоре-регистре. Умножение можно выполнять одним из четырех способов: • с младших разрядов множителя со сдвигом его и СЧП вправо при неподвижном множимом (рис. 1.12, а). Старшие разряды произведения находятся в сумматоре, а младшие — в регистре множителя; • с младших разрядов множителя при сдвиге множимого и неподвижной СЧП; • со старших разрядов множителя при сдвиге СЧП влево и неподвижном множимом; 1.2. Арифметические основы компьютерной схемотехники 37 • со старших разрядов множителя при сдвиге его и СЧП влево (рис. 1.12, б). Если хотя бы один из сомножителей равен нулю, то произведению сразу присваивается нулевое значение. п 1 а б Рис. 1.12. Способы умножения: a — первый; б — четвертый Алгоритм умножения целых чисел, представленных в прямом коде, на основе первого способа реализуется в такой последовательности: 1. взять модули сомножителей и обнулить исходное значение СЧП; 2. если младшая цифра множителя равна 1, то к СЧП прибавляется множимое; если это 0, то сложение не происходит; 3. сдвиг вправо на один разряд СЧП и множителя; 4. пп. 2 и 3 последовательно выполняются к раз, после чего произведению присваивается знак, определяемый сложением по модулю 2 знаков сомножителей. Пример 1.21 Перемножить первым способом числа А = 13 )0 = 11012 и В = 1110 = 10112, представленные прямыми кодами. 1101 — модуль множимого 1011 — модуль множителя 0000 — исходная СЧП +1101 — первое частичное произведение (ЧП) 1101 — первая СЧП 01101 — сдвиг вправо СЧП на 1 разряд + 1101 — второе ЧП 100111 — вторая СЧП 0100111 — сдвиг вправо СЧП на 1 разряд +0000 — третье ЧП 100111 — третья СЧП 0100111 — сдвиг вправо СЧП на 1 разряд +1101 — четвертое ЧП 10001111 • — четвертая СЧП 10001111 — сдвиг вправо СЧП на 1 разряд. Произведение С = А В = 100011112= 143,0- 38 Основы теории компьютерной схемотехники Разработаны также методы ускоренного умножения и умножения в дополнительных кодах. Операция деления числа С = А / В обычно сводится к последовательности вычитаний делителя В сначала из делимого А, а затем из создаваемых в процессе деления остатков Числа А и В поступают в прямом коде. В зависимости от способа вычитания делителя различают два алгоритма деления: без восстановления остатка и с восстановлением. Для обоих алгоритмов общим является следующее: • деление осуществляется над модулями чисел А и В (при делении целых чисел в машинах длина делимого А вдвое больше длины делителя В)-, • знак частного определяется сложением по модулю 2 знаков Л и В; • перед делением анализируются числа А и В на равенство нулю: если А = О, то частному присваивается значение 0 и операция завершается; при В = О выполнение программы прерывается; • умножение частного на два осуществляется сдвигом его влево на один разряд, а операция вычитания делителя В заменяется его сложением в дополнительном коде; • первый остаток R} определяет по формуле R} =2-\А\-В = 2-\А\+[-В]а, причем, если 7?| < 0, то деление возможно, если R} > 0, то возникает переполнение разрядной сетки; • цифры частного определяются, начиная со старших разрядов: при R, < 0; при R, > 0, i - 1,2, ..., к, где к — заданное количество цифр частного. Обычно первый разряд С,- отводится для записи знака. Алгоритм деления без восстановления остатка определяют по следующему ре-курентному соотношению: ' 2Rt +15 2R, + [б 1ц при R,< 0; при R, >0. Алгоритм деления с восстановлением остатка определяют по следующему ре-курентному соотношению: 47?,-, + [- 5]д при Ri < 0; 2Rj + В]д при Rj > 0. при R, > 0. [ Пример 1.22 Разделить числа А = 49|0 и В - -7]0 на основе алгоритма без восстановления остатка. Прямой код операндов: [Л]Пр = 0,0110001, [В]Пр = 1,111; [-5]д = = 1,001: 1.2. Арифметические основы компьютерной схемотехники 39 Пример 1.22. Продолжение [Л]Пр = 0,0110001 + [5]ПР= 1,111 2 |Л = 0,1100010 + [-В]д= 1,001 7?, = 1,1110010 < 27?, = 1,1100100 + \В\ =0,111 0 С, =0 Т?2 = 0,1010100 > 27?2= 1,0101000 + [-7?]д= 1,001 0 С2 = 1; 7?з = 0,0111000 > 27?3 = 0,1110000 + Н?]д= 1,001 0 С3 = 1; частное [С]пр = 1,111; С = -111 = -7)0; остаток равен нулю. Т?4 = 0,0000000 > 0 С4 = 1; Знак частного А[7] Ф В[7] = 0 Ф 1 = 1. Пример 1.23 Разделить числа А остатков: [Л]пр = 0,0110001 + [5]ПР= 1,111 = 49ю и В = -710 на основе алгоритма с восстановлением 2|Л| = 0,1100010 + [-7?]п= 1,001 7?! = 1,1110010 < 47?0= 1,1000100 + [-7?]д= 1,001 0 С, = 0 Т?2 = 0,1010100 > 27?2 = 1,0101000 + [-7?]д= 1,001 0 С2 = 1; 7?з = 0,0111000 > 27?3 = 0,1110000 + [-Д]д= 1,001 0 С3 = 1; частное [Л]ПР = 1,111; С = -111 = -710. Т?4 = 0,0000000 > 0 С4 = 1; 40 Основы теории компьютерной схемотехники Описанные способы выполнения арифметических операций над числами с фиксированной запятой применяют также для выполнения их над мантиссами чисел с плавающей запятой. Сложение и вычитание чисел А и В с плавающей запятой может осуществляться только при равенстве их порядков Пл и Пя. Для этого они предварительно выравниваются сдвигом одного из них. При умножении или делении чисел А и В с плавающей запятой порядок результата ПР равен соответственно сумме или разности порядков этих чисел, то есть ПР = ПА± Пй. 1.3. Логические основы компьютерной схемотехники 1.3.1. Булева алгебра Теоретической основой компьютерной схемотехники является алгебра логики — наука, которая использует математические методы для решения логических задач. Алгебру логики называют булевой в честь английского математика Дж. Буля, внесшего наибольший вклад в развитие этой науки. Основным предметом булевой алгебры является высказывание — простое предложение, о котором можно утверждать: истинно оно (обозначают символом 1) или ложно (обозначают символом 0). Обычно простые высказывания обозначают буквами, например, Хъ которые в компьютерной схемотехнике называют переменными (аргументами). С помощью логических связок НЕ, ИЛИ, И, ЕСЛИ... ТО... строят сложные высказывания, которые называют булевыми (логическими) функциями и обозначают буквами F, L, К, М, Р и др. В настоящее время главная задача алгебры логики — анализ, синтез и структурное моделирование любых дискретных конечных систем. Аппарат булевой алгебры распространяется на объекты самой различной природы безотносительно их сути, лишь бы они характеризовались двумя значениями или состояниями: контакт включен или выключен, наличие высокого или низкого уровня электрического напряжения, выполнение или невыполнение некоторого условия работы и т.д. Использование аппарата алгебры логики в компьютерной схемотехнике основано на том, что цифровые элементы характеризуются двумя состояниями и благодаря этому могут быть описаны булевыми функциями. Стандарт ДСТУ 2533-94 “Арифметические и логические операции. Термины и определения” конкретизировал основные понятия булевой алгебры в системах обработки информации. Переменную с конечным числом значений (состояний) называют переключательной, а с двумя состояниями — булевой. Функция, которая имеет как и каждая ее переменная конечное число значений, называется переключательной (логической). Логическая функция, число возможных значений которой и каждой ее независимой переменой равно двум, является булевой. Таким образом, булева функция — это частный случай переключательной. Операция — это четко определенное действие над одним или несколькими операндами, которое создает новый объект (результат). В булевой операции операнды и результат принимают “булево значение 1” (далее просто значение 1) и “булево значение 0” (далее просто значение 0). Булеву операцию над одним операндом называют одноместной, над двумя — двуместной и т.д. 1.3. Логические основы компьютерной схемотехники 41 Булевы функции могут зависеть от одной, двух и в целом от п переменных. Запись F(AS,, AS, ... , XJ означает, что некоторая булева функция F зависит от переменных AS,, AS, ..., AS„. Основными булевыми операциями являются отрицание (операция НЕ, инверсия), дизъюнкция (операция ИЛИ, логическое сложение, объединение) и конъюнкция (операция И, логическое умножение). _ Отрицание — это одноместная булева операция F = X (читается “не X’), результатом которой является значение, противоположное значению операнда. Дизъюнкция — это булева операция F = Х} vX2 (читается “Х} или AS”), результатом которой является значение нуль тогда и только тогда, когда оба операнда имеют значение нуль. Конъюнкция — это булева операция F = ХгХ2 (читается “AS, и Х2"), результатом которой является значение единица тогда и только тогда, когда значение каждого операнда равно единице. В выражении AS,AS2 точку можно опускать; часто используют запись AS, л Х2 или Х} & Х2. Операции отрицания, дизъюнкции и конъюнкции можно задать с помощью таблиц истинности (табл. 1.7 и 1.8), в которых слева представлены значения операндов, а справа — значения булевой функции. Таблица 1.7 X F ~X 0 1 1 0 Таблица 1.8 Xi x2 F = X, vX, F = X, X2 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 В табл. 1.8. булевы функции ИЛИ, И заданы для двух переменных Хь Х2. Для булевых операций отрицания, дизъюнкции и конъюнкции справедливы следующие законы, свойства и тождества: • коммутативность (переместительный закон): Х^ vAS = AS vAS; Хх X2 = AS X; • ассоциативность (сочетательный закон): X vX2 vX3 = (X vX2) vX3; X X2 X3=(XX2)X3; • дистрибутивность (распределительный закон): AS, (AS v AS) = AS AS v AS AS; XvX2X3 = (X^X2)(XvX3); • идемпотентность (исключение повторения): XvXvX = X; XXX = X; • закон поглощения: Xi v AS AS = AS; Хх {Хх v AS) = X; • закон склеивания: X X ^X X = Жv(*i v T2) = AS,; • закон де Моргана: ,Y,v J, =XX; XxX2 =^v^; • свойства отрицания и констант:_ ASvX=l; ASX=0; X = .Y; 1 = 0; 0=1; ASvO=AS; Avl = l; XI =X; ^-0=0; 42 Основы теории компьютерной схемотехники • тождества: Х} vIX = Х} чХ2; Х}(х^ Х2)=Х}Х2. Справедливость приведенных законов булевой алгебры проверяется путем подстановки в логическое выражение нуля и единицы, как показано в табл. 1.9 для формулы Х\Х"2 =X'2vX'2. Таблица 1.9 Xi х2 Xi -х2 *1 х2 vX2 0 0 0 1 1 1 1 0 1 0 1 1 0 1 1 0 0 1 0 1 1 1 1 1 0 0 0 0 Областью определения булевой функции F(JVb Х2, ... , Х„) является конечное множество различных двоичных наборов длиной п, на каждом из которых указывается значение функции нуль или единица. Количество разнообразных двоичных наборов равно множеству «-разрядных двоичных чисел т = 2". Например, для функции двух переменных Х} и Х2 имеется четыре двоичных набора: < 0,0 >; < 0,1 >; < 1,0 >; < 1,1 >. Часто наборы нумеруются десятичными эквивалентами двоичных чисел от нуля до 2п-1. Например, для п = 4, наборы < 0, 1, 0, 1 > и < 1, 0, 0, 1 > имеют соответственно номера 5 и 9. Две функции отличаются одна от другой, если их значения будут разными хотя бы в одном наборе. Число различных булевых функций от п переменных равно 2т, где т = 2". Произвольную булеву функцию можно задать разными способами: словесным описанием, временными диаграммами, геометрическими фигурами, графами, таблицами истинности и аналитическими выражениями. Словесное описание некоторой булевой функции F(JVb Х2) можно представить так: F = 1 при Х} Х2 = 1 и F = 0, если Х} Х2 = 0. Такую функцию можно изобразить временной диаграммой (рис.1.13, а) или геометрически с помощью двухмерного куба (рис.1.13, б), в котором точками выделены единичные вершины (данная функция принимает значение единицы на наборе < 1, 1 >), а также графом, где вершины отображают значение нуля и единицы, а на ориентированных дугах переменные указывают условия переходов (рис. 1.13, в). Рис. 1.13. Способы задания булевых функций 1.3. Логические основы компьютерной схемотехники 43 С помощью таблиц истинности показывают все возможные функции одной переменной (всего четыре функции) и двух переменных (всего 16 функций). Для и = 3 число возможных булевых функций равно 256, для п = 4 их количество - 21е = 65536. Булевы функции одной переменной представлены в табл. 1.10. Как видим, из четырех булевых функций практический интерес вызывает только операция отрицания L2 = X. Таблица 1.10 Lt Xi Выражение Название операции 0 1 Lty 0 0 Fo = O Константа 0 F, 0 1 F, =X Повторение X Fj 1 0 f2 =x Отрицание X F3 1 1 F3 = 7 Константа 1 Все 16 булевых функций Fn-Fi5 двух переменных Хг, Х2 представлены в табл. 1.11. Таблица 1.11 х, 00 11 Выражение Название операции х2 0 10 1 Fo 0000 F0=0 Константа 0 F} 000 1 F=X}X2 Конъюнкция f2 00 10 f2= XxX2 Запрет по Х2 F3 00 11 F3=Xx ПовторениеF, F< 0 100 F4=X,A'2 Запрет по Xt f5 0 10 1 f5=x2 Повторение Х2 F6 0 110 F6 = X{®X2 Сумма по модулю 2 f7 0 111 Fj = Xi v X2 Дизъюнкция f8 1000 Fs = X}lX2 Отрицание дизъюнкции f9 100 1 F9=Xi~X2 Эквивалентность F,o 10 10 f}0 = x~2 Отрицание Х2 F,. 10 11 Fu=X<-X2 Импликация от Х2 к А) Fn 1100 Fn = X{ Отрицание X) F13 110 1 Fl3=X^X2 Импликация от X] к Х2 FM 1110 f»=xfx2 Отрицание конъюнкции f15 1111 F,5=l Константа 1 Как следует из табл.1.11, функции Fo и F]5 — константы, F3 и Fs— повторяют, а Fio и F)2 — отрицают одну из переменных, Fi и F7 — конъюнкция и дизъюнкция, которые рассмотрены ранее. К новым булевым функциям (операциям) относятся следующие. Исключение (запрет) — двухместная булева операция, результатом которой является значение единицы тогда и только тогда, когда значение одного операнда равно единице, а другого — нулю. Записывается в виде: 44 Основы теории компьютерной схемотехники F2 = Х}Х2 илиР4=Х1Х2. Сумма по модулю два (исключающее ИЛИ, отрицание эквивалентности) — двухместная булева операция, результатом которой является значение единицы тогда и только тогда, когда операнды имеют разные значения. Обозначается в виде: F6 = X, ® Х2 =Y^X2 v X, Y . Отрицание дизъюнкции (операция НЕ ИЛИ, стрелка Пирса) — булева операция, результатом которой является значение единицы тогда и только тогда, когда оба операнда равны нулю. Обозначается в виде: F8 =.¥, 1х2 = X, V,¥2 . Обобщая для п переменных, имеем: .¥, 1х21х3 ... lX„=Y}Y2...Y„ = X, vX2 vX3v...vX„. Эквивалентность (равнозначность) — двухместная булева операция, результатом которой является единица тогда и только тогда, когда операнды принимают одинаковые значения. Обозначается в виде: F9 =Х, ~Х2 =Х, Х2 V Х\ Y2 . Импликация (включение) — двухместная булева операция, результатом которой является значение нуль тогда и только тогда, когда значение одного из операндов равно нулю, а другого — единице. Обозначается в виде: Fn =Х^Х2=Х 'Y_; Fl3 =Х->Х2 = X~jvX2. Отрицание конъюнкции (операция НЕ И, штрих Шеффера, отрицание пересечения) — булева операция, результат которой равен нулю тогда и только тогда, когда оба операнда равны единице. Обозначается в виде: Fu /Х2 = Х,Х2 . Обобщая для п переменных, имеем: х}/х2/... xn=Y^Y2^..7Yn=xxx2... хп. Булевы функции одного и двух аргументов называют элементарными. Схему, которая осуществляет элементарную логическую операцию, называют логическим элементом (вентилем). Совокупность взаимозависимых логических элементов с формальными методами описания называется логической схемой. Названия и условные графические обозначения основных логических элементов, применяемых в компьютерной схемотехнике, представлены в табл. 1.12. Значения переменных (операндов) отображаются электрическими сигналами с двумя четко выраженными уровнями значений. Таблица 1.12 Название операции Название элемента Условное графическое обозначение Отрицание НЕ X 1 С — 1.3. Логические основы компьютерной схемотехники 45 Таблица 1.12. Продолжение Название операции Название элемента Условное графическое Обозначение Дизъюнкция ИЛИ х2 1 Конъюнкция и У] х2 & Х\Х2 Отрицание дизъюнкции НЕ ИЛИ х2 1 А', уУ Отрицание конъюнкции НЕИ у. х2 & С ) Х'Х2 Отрицание эквивалентности Исключающее ИЛИ х2 х{®х2 Эквивалентность Эквивалентность Х{ х2 -1 С х}®х2 ь - - Импликация ЕСЛИ, ТО Х2 bi Х; v X-} Запрет НЕТ Х2 )& xXi С помощью суперпозиций, то есть подстановки в логические формулы вместо переменных некоторых других булевых выражений, можно получить более сложные функции любого числа переменных, например, Y = v Х2, Л] = Zi Z2; Х2 = Z3v Z4, тогда У = Z, Z2 v Z3 v Z4. Одной из интерпретаций булевых операций являются схемы, состоящие из ключей, источника напряжения Е и лампочки Л. Для реализации операции дизъюнкции двух переменных Хх и Х2 используют два параллельно соединенных нормально разомкнутых ключа (рис. 1.14, а). При нажатии любого ключа = 1 или Х2 = 1) или обоих вместе лампочка горит (значение 1). Для реализации операции конъюнкции двух переменных Х} и Х2 применяют два последовательно соединенных нормально разомкнутых ключа (рис. 1.14, б). При нажатии одновременно обоих ключей (.Y| = Х2 - 1) лампочка горит (значение 1). 46 Основы теории компьютерной схемотехники Для реализации операции отрицания применяют нормально замкнутый ключ (рис. 1.14, в). При Х= 0 ключ замкнут и лампочка горит; при X = 1 ключ размыкается и лампочка не горит. Рос. 1.14. Интерпретация булевых операций: а — дизъюнкция; б — конъюнкция; в — отрицание 1.3.2. Аналитическое представление булевых функций Разработаны универсальные (канонические) формы представления булевых функций, дающие возможность получить аналитическую форму произвольной функции непосредственно из таблицы истинности. Эта форма в дальнейшем может быть минимизирована или упрощена. Поскольку между множеством аналитических представлений и множеством схем, реализующих эту функцию, имеется взаимнооднозначное соответствие, то отыскание канонической формы записи является начальным этапом синтеза логических схем. Наиболее широкое распространение получили совершенная дизъюнктивная нормальная форма (СДНФ) и совершенная конъюнктивная нормальна форма (СКНФ). Для получения этих форм вводятся понятия мин-термов (конституента 1) и макстермов (конституента 0). Минтерм — это функция п переменных, равная единице только на одном наборе. Минтерм получают как конъюнкцию п переменных, которые входят в него в прямом виде, если значение данной переменной в наборе Л) = 1, и — с отрицанием, если Х; = 0. При п переменных имеется 2П минтермов т0, ть ..., mR, где R = 2" - 1. Все минтермы двух переменных приведены в табл. 1.13. Таблица 1.13 Xi Хг F, / Минтермы Макстермы 0 0 1 /о=1 т0 = Х} Х2 М0=Л1 0 1 0 />=о т\= X, Х2 Mi =Xi v *2 1 0 0 /2=0 т2 = Х} Х2 М2= Х^ j Х2 1 1 1 /=1 т2 = Х\ Х2 M2 = Xt v Значения функции Fg, соответствующие, согласно таблице истинности, каждому z-му набору, обозначены как/о,/,/,/. Представление функции F9 в СДНФ является дизъюнктивной суммой минтермов, соответствующих наборам переменных, для которых/ = 1: 1.3. Логические основы компьютерной схемотехники 47 Fg = f0 • та v f • т, v /2 т2 v f3 • т} = 1 • т0 v 0 m, v 0 т2 v 1 m3 = = т0 v m3 — Х2 v Х\ Х2. Макстерм — это функция п переменных, равная нулю только на одном наборе. Макстерм получают как дизъюнкцию всех переменных, которые входят в него в прямом виде, если^значение X, = 0, или в инверсном виде, если значение JV, = 1. Число макстермов равно 2п, для функции двух переменных они приведены в табл. 1.13. Представление функции Fg в СКИФ записывается в виде: Fg = (/0 vM0 ) (/ vM,) (A VM2) (/3 V _ = (lvMo)(OvM,)(0vM,)(lvM3) = M2 ={X} V X2 )(X> vl2). Поясним на примере табл. 1.14 аналитическую запись функции трех переменных в СДНФ и СКИФ. Для записи функции Р в СДНФ требуется дизъюнктивно сложить те минтермы, для которых функция равна единице: Р = Х^Х3 v Х^Х2 Х2 v X Х^ Х^ v X Х2Х^ v X Х2Х2. Таблица 1.14 х, х2 Х1 р 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 1 Для записи функции Р в СКИФ необходимо записать конъюнкцию макстермов, для которых функция равна нулю: Р = (X,vX2v^3) (X-vX2v Х3) ( X{-v ,Y,v Х3). По этому способу производится запись в СДНФ и СКНФ функций с произвольным числом переменных. Система функций, суперпозицией которых может быть представлена любая булева функция, называется функционально полной; она образует базис в логическом пространстве. Систему функций называют минимально полным базисом, если удаление из нее любой функции превращает эту систему в неполную. В теории алгебры логики доказано, что функционально полные системы образуют следующие наборы функций: 1. Х_, JV, v Х2, Xt Х2 (булев базис, избыточный); 2. X , v ; 3. X, ХхХ2, 4. х~х; 5. X, v Х2 и др. 48 Основы теории компьютерной схемотехники Другая алгебра логики строится на основе функции суммы по модулю два и конъюнкции (алгебра Жегалкина). Через операции алгебры Жегалкина можно выразить все другие булевы функции: Хх -> Х2 - ~Х\ V Х2 = 1 © Xt © Х2; .¥,-%,= (Л\ vJ¥2)G¥, vX)-1® .V,© .¥2; Х} <г- Х2 = X, -» Х2 = Х{ ®Х}Х2. В булевой алгебре широко используется разложение Шеннона — формула, позволяющая перейти к представлению функции п переменных через функции от (и-1) переменных: F(X},X2,...,Xn)~X]f(l,X2,...,Xi:)'v'x\f(Q,X2,...,Xn). Выражение легко обобщается для любого числа переменных, если обе функции его правой части подвергнуть такому же разложению по другим переменным. Отметим, что в результате разложения по всем переменным получится СДНФ. 1.3.3. Минимизация булевых функций Важным этапом проектирования компьютерных схем является минимизация булевых функций, то есть нахождение их выражений с минимальным числом букв. Минимизация обеспечивает построение экономичных схем компьютеров. Для минимизации функций с числом букв п < 6 используют карты Карно. Их строят в виде таблиц из 2П клеток с разметкой строк и столбцов переменными. Карты Карно для функции трех переменных F(X\, Х2, Х3) показаны на рис. 1.15. Строки карты отмечены значениями переменной J¥,, а столбцы — значениями переменных Х2, Х2. Каждая клетка карты Карно однозначно соответствует одному набору таблицы истинности для функции трех переменных (рис. 1.15, а) или минтермам этой функции (рис. 1.15, б). Клетки карты Карно часто нумеруют десятичными цифрами — номерами наборов (рис. 1.15, в). При минимизации для каждого минтерма, входящего в СДНФ функции, ставится единица, а другие клетки не заполняются. Например, заполнение карты Карно для функции, заданной табл. 1.14, показано на рис. 1.15, г. Минтермы в соседних клетках карты Карно в строке (включая верхние и нижние) или в столбце (включая крайние) отличаются значением одной переменной, что позволяет выполнить операцию склеивания по этой переменной. Например, на рис. 1.15, г минтермы Х}Х2Х2 и X,Х2Х3 (клетки с номерами 1 и 3) отличаются значением переменной Х2, поэтому они склеиваются по ней и представляются конъюнкцией двух переменных Х,Х2. Аналогично для минтермов А", Х2Х2 и Х}Х2Х2 (номера клеток 4 и 6) склеивание происходит по переменной Х2 и получают конъюнкцию Х\ Х3. В результате минимизации функции Р(Х}, Х2, Х3) получают ее минимальное выражение Р = Х,Х2 vХ2Х2 v Xt X3. 1.3. Логические основы компьютерной схемотехники 49 Рис. 1.15. Карты Карно для функции трех переменных Перечислим общие правила минимизации. 1. Изображают карту Карно для п переменных и производят разметку ее строк и столбцов. В клетки таблицы, соответствующие минтермам (единичным наборам) минимизируемой функции, записывают единицу. 2. Склеиванию подлежат прямоугольные конфигурации, заполненные единицами и содержащие 2, 4 или 8 клеток. Верхние и нижние строки, крайние левые и правые столбцы карты как бы склеиваются, образуя поверхность цилиндра. 3. Множество прямоугольников, покрывающих все единицы, называется покрытием. Чем меньше прямоугольников и чем больше клеток в прямоугольниках, тем лучше покрытие. Из нескольких вариантов выбирают тот, у которого меньше коэффициент покрытия z = г / s, где г — общее число прямоугольников, 5 — их суммарная площадь в клетках. Например, для изображенного покрытия (рис. 1.15,г) имеем z = 3/5. 4. Формулы, полученные в результате минимизации, содержат г элементарных конъюнкций (по числу прямоугольников в покрытии). Каждая конъюнкция содержит только те переменные, которые не меняют своего значения в склеиваемых наборах в соответствующем прямоугольнике. Число переменных в конъюнкции называется ее рангом. При склеивании двух соседних клеток получают ранг конъюнкции п-1, четырех клеток — п-2 , восьми клеток — п-3 и т.д. Разметка карт Карно для функций четырех переменных показана на рис. 1.16. 00 01 II________10 х 00 01 11 10 0000 0001 ООН 00! 0 оюо 010! ОН! 0! Ю иоо НО! ИИ пю 1000 100! юи юю 0 I 3 2 4 5 7 6 12 13 15 14 8 9 И Ю a б Рис. 1.16. Карты Карно для функции четырех переменных: а — двоичное значение минтермов; 6— десятичное значение минтермов 4 — 4-1749 50 Основы теории компьютерной схемотехники В клетки карт записаны значения минтермов соответственно в двоичном и десятичном эквивалентах. Пример 1.25 ! Минимизировать булевы функции Lt, L2 и четырех переменных. Функция ! задана двумя способами — в СДНФ и с десятичными эквивалентами минтер-: мов: • L. = Х}Х2X3 J4 v Х}Х2 v Х\Х2Х.Х4 v Х}Х2Х3Х4 v i v XtX2X2X4 v X,X,Х3Х4 v Х,Х2ХХ. v Х}Х2Х3Х4 = : = 0 v 1 v 2 v 3 v 4 v 8 v 12 v 15. Функции L2 и Ц для упрощения заданы десятичными эквивалентами мин-. термов: : L2 = 2v3v6v7v8v9v12v13; L2 =1v3v5v7v9v11v13v15. Минимизация функций Lx, L2 и L3 производится на основе карт Карно, пока- ! занных на рис. 1.17. Результаты минимизации: Рис. 1.17. Карты Карно для минимизации булевых функций четырех переменных: а — L ,; б — L2; в — Из Л = 77T7V Х,Х2Х2Х4-, z, =3/8; L2 = V A”, J7; z2 = 2/8; L, = X 4; z3 = I /8. Для минимизации булевых функций используют также диаграммы Вейча, кото- рые аналогичны картам Карно и отличаются от них способом разметкиизместо символов 0 и 1 используют булевы обозначения аргументов — Х}, Х: , Х2 и др. (рис. 1.18). X X Л А, X, V, и 10 ио 111 101 юо у 01 00 ОН . 001 000 X ою х - X х, X х- 1100 1101 1001 юоо X 1110 11 и 1011 юю X; X, 01 10 01 11 0011 оою 0100 0101 0001 0000 X X . в X, X Рис. 1.18. Диаграммы Вейча: а — для двух переменных; б — для трех переменных; в — для четырех переменных 1.4. Основные характеристики цифровых микросхем 51 I Пример 1.26 \ Минимизировать с помощью диаграмм Вейча функцию £2 из примера 1.25. ! Запись значения минтермов функции £2 в клетки Вейча показан на рис. 1.19. Ре-\ зультат минимизации: [ L2=V3v/X z2=1/4 j совпадает сданными примера 1.25. Рис. 1.19. Диаграмма Вейча для минимизации функции L2 1.4. Основные характеристики цифровых микросхем 1.4.1. Понятие элементов, узлов и устройств компьютерной схемотехники Технические средства компьютерной схемотехники в зависимости от выполняемых функций, делят на элементы, функциональные узлы и устройства, а также микропроцессоры и компьютеры (рис. 1.20). Они предназначены для обработки дискретной информации и потому называются цифровыми. Технические средства компьютерной схемотехники в настоящее время основаны на интегральных микросхемах (ИМС) разной степени сложности. Элементы ) Узлы ? Устройства Компьютеры Рис. 1.20. Состав технических средств компьютерной схемотехники Элементами в компьютерной схемотехнике называются наименьшие неделимые микроэлектронные схемы (изделия), предназначенные для выполнения логических операций или хранения бита информации. К элементам условно относятся и вспомогательные схемы — усилители, повторители, формирователи и др. Элементы строятся на основе двухпозиционных ключей, что технически реализуется наиболее просто. Элементы с двумя состояниями называются двоичными. На входах и выходах двоичного элемента действуют напряжения, которые принимают в установившемся режиме два значения — высокого U/., и низкого UL уровней (индексы от английских слов High и Low). Эти напряжения отображают электрические сигналы. Сигнал с двумя состояниями называется двоичным. Переход эле 4* 52 Основы теории компьютерной схемотехники мента из одного состояния в другое называется его переключением. На основе элементов строят типовые функциональные узлы. Элементарные действия, выполняемые в компьютерах за один машинный такт, называются микрооперациями. Например, инкремент или декремент слова, сдвиг, инверсия, сложение и др. В компьютерах команды выполняют последовательностью микроопераций над двоичными словами (числами). Типовыми функциональными узлами компьютеров называются микроэлектронные схемы, предназначенные для выполнения одной или нескольких микроопераций. По логике работы функциональные узлы разделяют на комбинационные и последовательностные схемы. В комбинационных схемах логическое состояние выходов элементов зависит только от комбинации входных сигналов в данный момент времени. К функциональным узлам комбинационного типа относятся сумматоры, дешифраторы, шифраторы, мультиплексоры и демультиплексоры, схемы сравнения (компараторы) и контроля по четности, кодопреобразователи. В последовательностных схемах логическое значение выходов определяют как комбинацией выходных сигналов, так и состоянием памяти схемы в данный момент времени. К функциональным узлам последовательностного типа относятся регистры, счетчики, генераторы чисел и управляющие автоматы. На основе типовых функциональных узлов строят различные устройства компьютеров. Универсальность компьютеров обеспечивает возможность приема и выдачи информации, ее хранения и арифметико-логической обработки, а также управления всем вычислительным процессом. Эти функции реализуют соответствующими устройствами ввода, вывода, запоминающими, арифметико-логическими и управления. Во всех компьютерах используют генератор тактовых импульсов (ГТИ), который вырабатывает периодическую последовательность прямоугольных импульсов, называемых тактовыми (С). Начало каждого импульса С называется тактовым моментом. Временной интервал между двумя соседними импульсами С называется машинным тактом Тс. Вначале каждого импульса С происходит смена информации на входах элементов и узлов машины (рис. 1.21). Частота ГТИ измеряется десятками, сотнями мегагерц и гигагерцами. В литературе ГТИ часто называют генераторами синхронизирующих импульсов, а сами импульсы называют синхронизирующими или синхроимпульсами. Амплитуда и полярность импульса С зависит от физических принципов построения машины. Принцип подачи информации на входы элементов и узлов в тактовые моменты называется дискретизацией сигналов во времени. В компьютерной схемотехнике используются два основные вида двоичных сигналов: потенциальные и импульсные (рис. 1.22). 1.4. Основные характеристики цифровых микросхем 53 Рис. 1.22. Диаграммы потенциальных (ПС) и импульсных (ИС) сигналов Сигнал, который изменяется только в тактовые моменты времени, называется потенциальным. Сигнал, который нарастает в тактовый момент, а спадает в пределах данного такта, называется импульсным. Длительность потенциального сигнала равна или кратна длительности машинного такта. В логике значения двоичного сигнала и соответствующей переменной X кодируются символами 0 (лог. 0) и 1 (лог. 1). Напряжение, отображающее символ 1, обозначим через U', а символ 0 — через U0. Различают два способа кодирования логических сигналов Xi потенциальными сигналами — положительный и отрицательный. При положительном кодировании (положительная логика или соглашение) больший уровень напряжения UH с учетом знака отображает лог. 1, а меньший UL — лог. 0, то есть X = 1, если I/1 = UH, и X = 0 при if = UL (рис. 1.23, а). При отрицательном кодировании (отрицательная логика или соглашение) больший уровень напряжения UH с учетом знака отображает лог. 0, а меньший UL — лог. 1, то есть Х= 1, если U' = UL, и X = 0 при if = UH (рис. 1.23, б). Рис. 1.23. Логические соглашения: а — положительное X ; б — отрицательное X Для импульсных сигналов различают два рода кодирования (рис. 1.24): первый — наличие импульса отображает лог. 1, отсутствие — лог. 0; второй — наличие импульса одной полярности отображает лог. 1, а другой полярности — лог. 0. Рис. 1.24. Импульсное кодирование: а — первого рода; б — второго рода 54 Основы теории компьютерной схемотехники Элементы компьютеров классифицируют по следующим признакам: • используемым физическим приборам; • виду информационных сигналов; • функциональному назначению; • конструктивно-технологическому изготовлению; • уровню и степени сложности. По типу физических приборов различают следующие элементы: построенные на электронных лампах — первое поколение; на транзисторах — второе поколение; на ИМС малой и средней степени интеграции — третье поколение; на больших и сверхбольших ИМС — четвертое поколение. По виду информационных сигналов выделяют: • потенциальные элементы — используются только потенциальные сигналы; • импульсные элементы — используются только импульсные сигна. ,ы; • потенциально-импульсные элементы — используются потенциальные и импульсные сигналы. По функциональному назначению элементы компьютерной схемотехники делятся на следующие классы: • логические элементы, предназначенные для выполнения логических операций — НЕ, И, ИЛИ, НЕ И, НЕ ИЛИ, НЕ И ИЛИ и др.; • запоминающие элементы — триггеры, предназначенные для хранения значения одной двоичной переменной — нуля или единицы, то есть одного бита информации; • вспомогательные элементы (усилители, формирователи, преобразователи сигналов, схемы временного согласования, генераторы импульсов и др.), предназначенные для обеспечения работы элементов первых двух классов. По конструктивно-технологическому изготовлению элементную базу современной компьютерной схемотехники составляют интегральные микросхемы. Это — микроэлектронные изделия с высокой плотностью упаковки электрорадиоэлементов (резисторов, диодов, транзисторов) и соединений между ними. С точки зрения спецификации, испытаний, поставки и эксплуатации ИМС рассматриваются как единое целое. В ИМС электрорадиоэлементы называются элементами, если они неотделимы от схемы, и компонентами, если их можно использовать самостоятельно. Далее, во избежание путаницы с элементами компьютеров, электрорадиоэлементы называют просто компонентами. Микросхемы классифицируют по следующим основным признакам: • технологии изготовления — полупроводниковые, гибридные, пленочные; • конструктивному оформлению — корпусные и бескорпусные; • форме обработки информации —• аналоговые, цифровые и аналого-цифровые; • степени интеграции (сложности) — малые, средние, большие, сверхбольшие и ультрабольшие; • типу активных элементов — построенные на биполярных и МОП-транзисторах; 1.4. Основные характеристики цифровых микросхем 55 • области применения — широкого применения, специализированные, в том числе заказные и полузаказные; • используемым материалам — кремниевые, арсенид-галлиезые; • перспективным направлениям — криомикроэлектронные, акустоэлектрон-ные, оптоэлектронные, молекулярной электроники и др. Набор цифровых микросхем с общими конструктивно-технологическими и схемотехническими признаками образует серию ИМС. В компьютерной схемотехнике широко применяются цифровые полупроводниковые корпусные ИМС на основе кремния и арсенида галлия. В полупроводниковых ИМС все компоненты и соединения между ними выполнены в объеме и на поверхности кристалла площадью от 4 до 100 мм2. В гибридных ИМС навесные компоненты крепятся на поверхности диэлектрической подложки. В пленочных ИМС все компоненты и соединения между ними выполнены в виде тонких пленок на диэлектрической подложке. Сложность микросхем характеризуется уровнем интеграции N, степенью интеграции К = lg/V и степенью функциональной сложности F = IgA, где N— число компонентов, комп.; L — число двухвходовых логических элементов (вентилей); значение десятичного логарифма округляется до большего целого числа. Промышленность изготовляет ИМС от первой (менее 10 комп.) до шестой (менее 1 млн комп.) и выше степени интеграции. Возможности интегральной технологии определяет плотность упаковки: соотношение числа компонентов к объему (иногда к площади) кристалла. Плотность упаковки в полупроводниковых ИМС составляет 107 комп, /см3, а для гибридных — 100-200 комп. /см3. Малая интегральная схема (МИС) содержит до 100 комп, включительно, средняя микросхема (СИС) — 100-1000 комп., большая интегральная схема (БИС) — до 100000 комп., сверхбольшая интегральная микросхема (СБИС) — до 1 млн комп., а ультрабольшая (ультра-БИС) — до 10 млн комп, и больше. На МИС строят элементы, на СИС реализуют типовые узлы, на БИС, СБИС и ультра-БИС обеспечивается построение микропроцессоров и микрокомпьютеров. Каждая элементарная логическая функция реализуется соответствующим логическим элементом: ИЛИ (дизъюнктор), И (конъюнктор), НЕ (инвертор). Для реализации сложных функций логические элементы объединяются в логическую схему. Функционально полная система логических элементов позволяет построить любую сложную логическую схему. Такие системы образуются следующими наборами логических элементов: 1) ИЛИ, НЕ; 2) И, НЕ; 3) НЕ ИЛИ; 4) НЕ И и другими. В технически полной системе элементов обеспечивается значение электрических параметров двоичных сигналов, для этого используются вспомогательные элементы — усилители, повторители, формирователи и др. С учетом вышеизложенного можно сказать, что система элементов представляет собой функционально и технически полный набор элементов, который использует одинаковые способы представления информации, а также имеет общие конструктивно-технологические характеристики. 56 Основы теории компьютерной схемотехники 1.4.2. Характеристики логических элементов Логические, схемотехнические и эксплуатационные свойства логических элементов определяются совокупностью характеристик и параметров, к которым относят: • функции логических элементов; • логические соглашения; • коэффициенты объединения по входу и выходу; • коэффициент разветвления; • быстродействие; • мощность потребления; • работа переключения; • входные и выходные напряжения и токи; • статическая и динамическая помехоустойчивость; • надежность элементов; • допустимые величины механических воздействий, диапазоны давления и температуры окружающей среды, устойчивость к радиационным воздействиям; • масса, стоимость и конструктивное оформление. В большинстве случаев указанные характеристики и параметры относятся и к ИМС, на которых реализованы логические элементы. Коэффициент объединения по входу Ni характеризует число логических входов логического элемента — обычно 1,2, 3, 4 или 8 (рис. 1.25). N=3 N=8 N{ = 2И-2И-ЗИ-ЗИЛИ-НЕ Рис. 1.25. Примеры значений коэффициента Nt Коэффициент объединения по выходу No характеризует допустимое количество соединенных между собою выходов логических элементов с целью создания новых функций. Коэффициент разветвления по выходу Np характеризует нагрузочную способность логического элемента, то есть максимальное число входов идентичных схем, которое может быть одновременно подключено к выходу данного элемента без нарушения его работоспособнрсти (рис. 1.26). В состав серий ИМС обычно входят элементы с малой нагрузочной способностью (Np = 3...15) и с большой (Np = 30...50). 1.4. Основные характеристики цифровых микросхем 57 а б Рис. 1.26. Подключение нагрузки: а — N„ = 3; б— Nv = 4 Приняты следующие определения и буквенные обозначения электрических параметров цифровых микросхем (ДСТУ 2883-94): • входные Ut и выходные Uo уровни напряжений (индексы — от английских слов Input и Output)', • входные напряжения низкого UIL и высокого UIH уровней; для них устанавливаются максимальное значение низкого уровня U1L П1ах и минимальное значение высокого уровня UlHniin (рис. 1.27, а); • выходные напряжения низкого U0L и высокого UOh уровней; для них установлены максимальное значение низкого уровня U()L пмх и минимальное значение высокого уровня J7(Wniin (рис. 1.27, б); • входной I/ и выходной 10 токи; • входной ток I!L — при низком уровне напряжения на входе, 1т — при высоком; • выходной ток Iql — при низкому уровне напряжения на входе, а 10н — при высоком; • UCc — значение напряжения источника питания; • 1( (—ток, потребляемый ИМС от источника питания; • Ра— мощность, потребляемая ИМС от источника питания; • входные пороговые напряжения, при которых происходит переключение элемента: UTih — наименьшее значение для высокого уровня и UTIL — наибольшее значение для низкого уровня. _ а б Рис. 1.27. Обозначение уровней напряжения: а — входных; б— выходных Основные параметры логических элементов определяют с помощью входной, выходной и передаточной характеристик. Типовые графики этих характеристик для 58 Основы теории компьютерной схемотехники инвертирующих элементов транзисторно-транзисторной логики представлены на рис. 1.28. Входная характеристика логического элемента I, = flUi) — это зависимость входного тока от изменения входного напряжения. Токи, втекающие в схему элемента, считаются положительными, а вытекающие — отрицательными (рис. 1.28, а). Из этой характеристики определяют входные токи I!L для напряжения U/Lnax и то 1!Н для напряжения U!Hт[п. Выходная характеристика логического элемента Uo = fll()) определяет зависимость выходного напряжения от тока нагрузки для состояний высокого и низкого уровней (рис. 1.28, б). Из этой характеристики определяют допустимые значения токов: +IOL — при низком уровне выходного напряжения UOL п1ах и -10н — при высоком уровне напряжения (7oWmi„ (рис. 1.28, б). в Рис. 1.28. Характеристики логического транзисторно-транзисторного элемента: а — входная; б — выходная; в — передаточная Передаточная характеристика Uo = fill,) — это зависимость выходного напряжения от входного (рис. 1.28, в). Из этой характеристики определяют значение помехоустойчивости для низкого уровня на входе ML (отпирающая помеха) и для высокого уровня на входе Мн (запирающая помеха): = Util ~ UlLmux, Мн = Uiffmn - UTIH- Средняя мощность Р сс, потребляемая элементом от источника питания вычисляется по формуле Р сс = Р'сс (Iccl + Icch) / 2 = UCc I сс. где ICCl, Icch — токи потребления при низком и высоком уровнях напряжения на выходе соответственно; /*сс — средний ток потребления. Современные элементы потребляют мощность от микроватт до десятков милливатт. Потенциальные сигналы характеризуются значением логического перепада (амплитудой) UM = UH - UL и длительностью положительного tWH и отрицательного 1.4. Основные характеристики цифровых микросхем 59 twL перепадов (рис. 1.29). Перепады напряжений часто называют положительными и Для измерения временных параметров сигнала устанавливают условные уровни в долях амплитуды — 0,1; 0,5 и 0,9. Быстродействие микросхем определяют по значениям следующих длительностей: • фронта tLH и спада tHL (рис. 1.30, а); • собственно включения tTHL и выключения tTLH (рис. 1.30, б); и их задержки соответственно tDHL и tDL/f, • задержек распространения сигнала при включении tPHL и выключении tPLH (рис. 1.30, в). Рис. 1.30. Измерение временных параметров сигналов: а — фронта tw и спада tm.; б — времени включения Ithl и выключения tnn: в — времени задержек распространения сигнала при включении tPHL и выключении tTLH Для практических расчетов используют среднее время задержки распространения сигнала tp ~ (tpHL + tPLH) I "P Для оценки качества элемента широко используют обобщенный параметр — работу переключения Л-п — Р сс ’ tp- 60 Основы теории компьютерной схемотехники Если мощность Р*сс измеряется в милливаттах, а время задержки — в наносекундах, то работа переключения Лп выражается в пикоджоулях (пДж). Значение обобщенного параметра Лп находится в пределах 0,1-200 пДж. Чем меньше значение Ап, тем лучшими характеристиками обладает логический элемент. Надежность ИМС характеризуется тремя взаимозависимыми показателями: • интенсивностью отказов А = n / (mt), где п — число отказов за время испытания, час; т — общее количество испытуемых микросхем; • наработкой на отказ Т = 1/2; • возможностью безотказной работы на протяжении заданного интервала времени Р = ехр(-Лг). Для современных ИМС интенсивность отказов А = (10“7 ... 10'8). Приняв, что А = 10~8, t = 15000, получим значение вероятности безотказной работы P(t) = 0,998 или 99,8%. По конструктивно-технологическому исполнению микросхемы подразделяются на пять групп, которым присвоены следующие обозначения (ДСТУ 3212-95): • полупроводниковым на биполярных транзисторах— 1, 6; • полупроводниковым на полевых транзисторах — 5, 7; • гибридным — 2, 4; • другим (пленочным, вакуумным, керамическим и т.д.) — 3; • резервным — 0, 8, 9. Указанные группы микросхем по конструктивно-технологическому исполнению подразделяются на подгруппы, которым присваиваются следующие обозначения: • для первой группы: комбинированные структуры с биполярными и полевыми транзисторами — 0; структура на биполярных транзисторах с изоляцией р-n переходами или диэлектриком — соответственно 1, 2; на транзисторах с инжекционной интегрированной логикой — 3; резерв — 4-9; • для второй группы: структура на полевых транзисторах п- или р- типа — соответственно 5, 6; с симметричной комплементарной структурой — 7; структуры с зарядовой связью — 8; резерв — 1-4, 9; • для третьей группы (гибридные микросхемы): толстопленочные — 1; тонкопленочные — 2; комбинированные — 3; резерв — 4-9; • для четвертой группы: толстопленочные — 4; тонкопленочные — 2; комбинированные — 3; резерв — 4-9. По функциональному назначению микросхемы подразделяются на группы, которым присваиваются следующие обозначения: • генераторы — Г; • коммутаторы и ключи — К; • логические элементы — Л; • многофункциональные схемы — X; • наборы элементов — Н; • преобразователи сигналов — П; • схемы источников вторичного электропитания — Е; • схемы задержки — Б; • схемы сравнения — С; • триггеры — Т; 1.4. Основные характеристики цифровых микросхем 61 • усилители — У; • формирователи —А; • схемы запоминающих устройств — Р; • схемы цифровых устройств — И; • схемы вычислительных средств — В. В каждой функциональной группе различают виды, например: • логических елементов: ЛИ — элемент И; ЛН — элемент НЕ; ЛЛ — элемент ИЛИ; ЛА — элемент НЕ И; ЛЕ — элемент НЕ ИЛИ; ЛР — элемент НЕ И' ИЛИ; ЛД — расширители; ЛП — прочие; • триггеров: ТВ — универсальные (тип JK); ТР — с раздельной записью (тип RS); ТМ — с задержкой (тип О); ТК — комбинированные; ТП — прочие; • схем вычислительных средств: BE — микро-ЭВМ; ВМ — микропроцессоры; ВС— микропроцессорные секции; ВУ — схемы микропрограммного управления; ВБ — схемы синхронизации; ВВ — схемы интерфейса; ВН — время-задающие схемы; ВП — прочие. Для характеристики материала и типа корпуса по ГОСТ 174-67 перед цифровым обозначением серии добавляются следующие буквы; • Р — для пластмассового корпуса типа 2; • М — для керамического, металлокерамического корпуса типа 2; • Е — для металлополимерного корпуса типа 2; • С —для стеклокерамического корпуса типа 2 и др. Для некоторых микросхем буквенные обозначения типа корпуса не применяют. Присвоение обозначений микросхемам осуществляет в централизованном порядке главная организация по стандартизации изделий электронной техники. Обозначение микросхемы должно состоять из следующих элементов: • первый и второй элементы — две цифры, характеризующие соответственно группу и подгруппу микросхемы по конструктивно-технологическому исполнению; • третий элемент — две цифры, обозначающие порядковый номер разработки серии микросхем; • четвертый элемент — две буквы, характеризующие соответственно группу и вид микросхемы; • пятый элемент — две цифры, обозначающие порядковый номер разработки микросхемы. Три первых элемента определяют серию микросхем. В случае необходимости после обозначения порядкового номера разработки микросхемы по функциональному назначению дополнительно проставляются буквы от А до Я, характеризующие отличие микросхем одного типа по электрическим параметрам. Такая буква во время маркировки может быть заменена цветной точкой. Буква или цвет маркировочной точки указываются в технических условиях микросхем конкретных типов. Примеры условного обозначения микросхем: • 5704ВГ03 — полупроводниковый программируемый контроллер управления динамической памятью с симметричной комплементарной структурой серии 5704; номер разработки серии — 04, номер разработки микросхемы в данной серии по функциональному назначению — 03 (рис. 1.31); 62 Основы теории компьютерной схемотехники • 1101УД06 — полупроводниковая микросхема серии 1101, порядковый номер разработки серии — 01, структура на биполярных транзисторах с изоляцией р-п переходом, операционный усилитель постоянного тока, порядковый номер разработки микросхемы в данной серии по функциональному назначению — 06. Серия ( /X 5 7 04 ВГ 03 Третий в данной серии Контроллер Порядковый номер разработки серии Симметричная комплементарная структура Вторая полупроводниковая группа на полевых транзисторах Рис. 1.31. Структура условного обозначения программируемого контроллера памяти с симметричной комплементарной структурой 5704ВГ03 Перед условным обозначением микросхем указывается сокращенное название государства-разработчика — У (Украина). Для микросхем с шагом 1,27 или 2,54 мм между выводами корпуса, которые поставляются на экспорт, вначале условного обозначения после буквы У проставляется буква Е, например: • УЕ1217УД06 — микросхемы серии 1217, выпущенные в Украине в экспортном исполнении (шаг выводов 1,27 или 2,54 мм) в пластмассовом корпусе типа 2. В ранее принятых обозначениях ИМС широкого применения вначале ставили букву К. ^Примечание j | Условные обозначения ИМС, которые выпускались до 1991 года в СССР, ус- ] | танавливались по ОСТ 11073.915-80. В соответствии с отраслевым стандартом, | условное обозначение микросхем состояло из четырех цифро-буквенных злемен-; тов. | Первый элемент — цифра, которая обозначает конструктивно- | технологическую группу: полупроводниковых — 1, 5, 6, 7; гибридных — 2, 4 8; J прочих (пленочных, керамических) — 3. | Второй элемент, состоящий из двух или трех цифр, обозначает порядковый | номер серии. j Третий двухбуквенный элемент определяет функциональное назначение ! ИМС: первая буква — подгруппу; вторая — вид в подгруппе, что совпадает с ) ДСТУ 3212-95. j Четвертый элемент — это порядковый номер разработки ИМС данного типа j в серии. Первый и второй элементы вместе обозначают серию ИМС, перед кото-j рой могут проставляться буквы, характеризующие тип корпуса. 1.4. Основные характеристики цифровых микросхем 63 \ В дальнейшем условные обозначения ИМС выбираются по отраслевому ; стандарту. Для ИМС коммерческого назначения условное обозначение начинает-’ ся с буквы К, а в экспортном варианте — с букв ЭК. Пример условного обозначения D-триггера ТТЛШ серии КР1333ТМ2 представлен на рис. 1.32. К Р 1 333 Т М 2 — ————"————————— 5 i Порядковый номер разработки | | по функциональному признаку | | Вид: D-триггер \ I L........-------------------- ! I Подгруппа: триггер I . Порядковый номер серии | „ . .. i । Конструктивно-технологическое исполнение । | Пластиковый корпус типа 2 | I Коммерческое назначение [ i I I Рис. 1.32. Пример условного обозначения ИМС по ОСТ 11073.915-80 j I.......... ; ; ... . ...................................... , j Корпусы микросхем состоят из трех основных частей: кристалла, корпуса для защиты кристалла от климатических воздействий и для удобства монтажа, а также проводников для электрической связи кристалла и выводов корпуса. Имеется четыре основных конструктивно-технологических варианта корпусов (рис. 1.33): пластмассовый, металлокерамический, металлостеклянный и керамический. Рис. 1.33. Конструкции корпусов ИМС: 1 — кристалл ИМС; 2 — проволочные проводники; 3 — кристаллодержатель; 4 — выводы; 5— низкотемпературный припой; 6 — крышка корпуса; 7 — стекло (стеклоприпой); 8 — монтажная площадка; 9 — основание корпуса 64 Основы теории компьютерной схемотехники Контрольные вопросы 1. Какие методы и технические средства изучает дисциплина “Компьютерная схемотехника”? 2. Что такое информатика? 3. Что такое сигнал? 4. Охарактеризуйте основные системы счисления, используемые в компьютерах. 5. Дайте определение логических функций инверсии, дизъюнкции и конъюнкции. 6. Назовите основные технические характеристики цифровых микросхем. 7. Назовите буквенно-цифровые элементы, определяющие условные обозначения микросхемы. 8. Поясните количественные меры информации — бит, байт, килобайт. 9. Запишите число А = -0101 в прямом, обратном и дополнительном кодах и их модификациях. 10. Поясните, зачем используют минимизацию булевых выражений. 11. Назовите отличия между картами Карно и диаграммами Вейча. 12. Дайте определение потенциального информационного сигнала. 13. Поясните отличие между положительным и отрицательным кодированием логических переменных потенциальными сигналами. 14. Что такое импульсный информационный сигнал? 15. Поясните способы кодирования логических переменных импульсными сигналами. 16. Назовите функционально полные системы логических элементов. 17. Охарактеризуйте классификационные признаки элементов компьютерной схемотехники. 18. Что такое серия ИМС? 2.1. Логические элементы — диодные, транзисторные, ИИЛ и ДТЛ 65 Глава 2 Элементы компьютерной схемотехники 2.1. Логические элементы — диодные, транзисторные, ИИЛ и ДТЛ В компьютерной схемотехнике в основном используют потенциальную систему элементов. Она обладает следующими особенностями: • на входах и выходах логических элементов действуют только потенциальные сигналы; • с выхода одного элемента на вход другого передаются как переходные, так и установившиеся значения сигналов; • на пути потенциального сигнала не допускается включать конденсаторы и обмотки трансформаторов, поскольку длительность потенциального сигнала в общем не ограничена (такой вид электрической связи называется гальваническим или непосредственным); • отсутствие конденсаторов и трансформаторов в цепях связи способствует упрощению технологии изготовления микросхем; • реализуется ограниченный набор булевых функций: НЕ, ИЛИ, И, НЕ ИЛИ, НЕ И, НЕ И-ИЛИ, “Исключающее ИЛИ”, что облегчает применение автоматизированных методов проектирования. Потенциальные элементы различают по схемотехническому признаку — способом соединения транзисторов, диодов и резисторов между собой в пределах одной схемы типового базового элемента. Принято считать, что совокупность элементов с общим признаком построения образует вид схемной логики или просто логику. Различают следующие виды логики потенциальных элементов: • диодную (ДЛ) и диодно-транзисторную логику (ДТЛ); • транзисторную логику (ТЛ), в которой выделяют схемы с непосредственными связями (ТЛНС), с резисторными связями (ТЛРС) и резисторноконденсаторными связями (ТЛРКС); • интегральную инжекционную логику (ИИЛ или И2Л); • транзисторно-транзисторную логику (ТТЛ) и ее модификации с диодами Шотки (ТТЛШ); • эмиттерно-связанную логику (ЭСЛ); • МОП-транзисторную логику (p-МОП, n-МОП, КМОП); • логику на основе арсенида галлия (AsGa). 5-4-1749 66 Элементы компьютерной схемотехники • 2.1.1. Диодные логические элементы Диодные логические элементы являются исторически первыми и самыми простыми схемами, которые реализуют булевы функции ИЛИ, И, И-ИЛИ, ИЛИ-И. Диодные элементы не усиливают входных сигналов и не могут выполнять операцию НЕ. При рассмотрении работы логических элементов принимают (если не оговорено особо) положительное кодирование: высокий уровень напряжения Ун отображает лог. 1, а низкий уровень UL — лог. 0. Элемент ИЛИ Логика работы логического элемента ИЛИ на два входа и Х> представлена в табл. 2.1, на основе которой получают выражение для выходной булевой функции элемента F = Х-Х X-,. Таблица 2.1 Xt х2 F 0 0 0 0 1 1 1 0 1 1 1 1 Используя принцип суперпозиции, функцию F можно записать для произвольного числа входных переменных F=X} v%2v ,.ухп. Схема двухвходового элемента ИЛИ, его условное графическое изображение и временные диаграммы работы показаны на рис. 2.1. Рис. 2.1. Диодный элемент ИЛИ: а — схема; б — условное графическое изображение; в — временные диаграммы работы Высокий уровень напряжения У()н на выходе диодного элемента ИЛИ устанавливается при подаче на один или оба входа высоких уровней напряжения У1Н, при которых открываются соответствующие кремниевые диоды FD1 или VD2, либо оба вместе. В резистор нагрузки RH втекает выходной ток 10н, определяемый по формуле 1он ~ Uон/ Rh. Значение выходного высокого уровня УОн зависит от входных напряжений: Уон — Уш — У ! где U = 0,8 В — прямое падение напряжения на кремниевом диоде. Для Um = 5 В, RH =1 кОм получим: Уон = Уш-У' = 5 - 0,8 = 4,2 В; Ion ~ Уон / Rh ~ 4,2/10 = 4,2 мА. 2.1. Логические элементы — диодные, транзисторные, ИИЛ и ДТЛ 67 При подаче одновременно на оба входа низких уровней напряжения UIL < 0,4 В, диоды закрыты, ток в цепи нагрузки не протекает и выходное напряжение U0L почти равно нулю. На выходе элемента обычно имеется паразитная емкость Сп = 25...100 пФ, вследствие чего длительность фронта tLH очень мала (емкость быстро заряжается от источника входных сигналов через малое прямое сопротивление открытого диода), а длительность спада tHL велика (диоды закрыты и емкость разряжается через резистор 7?н). Поэтому для диодных схем ИЛИ выполняется неравенство tLH « tHL (рис. 2.1, в). Элемент И Логика работы логического элемента И на два входа Хх и Х2 представлена в табл. 2.2, на основе которой получают выражение для выходной булевой функции элемента F = X, Х2. Используя принцип суперпозиции, функцию F можно записать для произвольного числа входных переменных: xt Х2 F F = Xt X ... Хп. 0 0 0 Схема двухвходового элемента И, его условное графическое 0 1 0 изображение и временные диаграммы работы, показаны на 1 0 0 рис. 2.2. 1 1 1 9 +(7 I <->сс а б в Рис. 2.2. Диодный элемент И: a — схема; б — условное графическое изображение; в — временные диаграммы работы Высокий уровень напряжения U0H на выходе диодного элемента И устанавливается только при одновременной подаче на оба входа высоких уровней напряжения U1H, при которых закрываются кремниевые диоды FD1 и VD2. При этом от источника питания Ucc через резисторы R и RH протекает ток нагрузки 1он = Ucc RR + R\i)> который определяет значение высокого уровня выходного напряжения Uqh =IohRh ~ Ucc R» t(R + Ru)- Как правило, используют значения R = 1... 2 кОм и RH > R. Длительность фронта выходного сигнала tLH определяется временем заряда паразитной емкости Сп через большое сопротивление резистора R. Если на один из входов, например Хь подан низкий уровень напряжения UIL, то диод VD1 открывается. При этом от ис-5* 68 Элементы компьютерной схемотехники точника питания Ucc по цепи: резистор R, открытый диод VDi и источник входного сигнала Xt — протекает ток, значение которого определяют из выражения IIL= [t/cc - (t/’ + UIL) ]/R, и на выходе устанавливается низкий уровень напряжения Uol = Ucc —IjlR ~ Uл + U , где U* = 0,8 В — прямое падение напряжения на открытом диоде VD1. Источники входных сигналов строят так, чтобы они пропускали втекающий в них ток IIL. Длительность спада выходного сигнала определяется временем разряда паразитной емкости Сп через малое прямое сопротивление открытого диода. Поэтому в диодных схемах И длительность фронта выходного сигнала значительно больше длительности спада: tLH » tHL. 2.1.2. Элемент НЕ Логика работы логического элемента НЕ (инвертора) представлена в табл. 2.3, на основе которой получают выражение для выходной булевой функции F = X . Таблица 2.3 X F 0 1 1 0 Схема элемента НЕ, его условное графическое изображение и временные диаграммы работы показаны на рис. 2.3. Схема элемента НЕ включает: VT1 — кремниевый транзистор п-р-п типа; резисторы в цепи коллекторной нагрузки 7?к и базы 7?б; UCc — источник питания. Такую схему часто называют транзисторным ключом. а — схема; б— условное графическое обозначение; в — временные диаграммы работы Рис. 2.3. Элемент НЕ: Транзистор VT1 может находиться в трех основных режимах: отсечки коллекторного тока (закрытое состояние), насыщения (открытое состояние) и активной работы (усиление). В режиме отсечки коллекторный и базовый переходы закрыты (на вход подан низкий уровень напряжения UfL), в цепи коллектора протекает очень малый обратный ток коллекторного перехода Тк0 < 1 мкА и на коллекторе транзистора устанавливается высокий уровень напряжения, определяемый из выражения Uoh = UCc - Лео ~ UcC' В режиме насыщения (на вход подан высокий уровень напряжения иОн) на кремниевом переходе база-эмиттер прямое падение напряжения равно С/Бн = U* = = 0,8 В, через коллектор протекает максимально возможный ток, который называет- ся током насыщения коллектора Ан- Значение этого тока находят из соотношения 2.1. Логические элементы — диодные, транзисторные, ИИЛ и ДТЛ 69 7rh = (Рсс ” ^KhW где (7КН = UOL <0,4 В — напряжение на коллекторе насыщенного транзистора. Например, для типовых значений Ucc = 5 В, йк= 1 кОм получим для тока /Кн ~ 5 мА. Для получения этого тока требуется минимальный базовый ток насыщения /БН, значение которого вычисляют из соотношения = Лсн/р, где р — коэффициент передачи базового тока в транзисторе, включенном по схеме с общим эмиттером. Для обеспечения надежного насыщения транзистора значение базового тока насыщения рассчитывают из выражения Л| ~ S Тбн, где 5 = 3...10 — степень насыщения. Например, если р = 50, то /БН = ОД мА и прямой ток базы, включающий транзистор, 1ы = 0,5 мА для 5=5. Значение сопротивления резистора Т?Б получают из условия обеспечения необходимого значения включающего тока Re ~ (Um- )/ 7Б1. Для UIH = 5 В, и" = 0,8 В получим: Т?Б = 8,4 кОм. В режиме насыщения в базе транзистора накапливается избыточный заряд, значение которого пропорционально степени насыщения. При подаче низкого уровня входного сигнала транзистор закрывается. Однако коллекторный ток остается постоянным в интервале времени - h, называемом временем рассасывания /рас избыточного заряда в базе (рис. 2.3, в). После окончания рассасывания коллекторный ток спадает и формируется фронт выходного сигнала tLH. Таким образом, наличие насыщения вызывает задержку выключения инвертора, что является недостатком данной схемы. Уменьшение длительности переходных процессов обеспечивается схемой элемента НЕ (рис. 2.4, а), в которой вместо резистора Т?Б включены два последовательно включенных диода VD1 и VD2. Рис. 2.4. Элемент НЕ с диодами в цепи базы: а — схема; б — временные диаграммы базовых токов Диоды VDI и VD2 называются смещающими, поскольку они смещают пороговый уровень входного открывающего напряжения в большую сторону на значение 2(7*. Емкость СБ называется ускоряющей (форсирующей), поскольку она при включении быстро заряжается, увеличивая при этом прямой ток базы ГБ1 > /Бн, а при выключении быстро разряжается, создавая обратный, выключающий ток с амплитудой /Б2. Этот ток ускоряет рассасывание избыточного заряда в базе транзистора. 70 Элементы компьютерной схемотехники 2.1.3. Элементы ДТЛ В этих элементах операции дизъюнкции и конъюнкции реализуются с помощью диодных схем, а операцию отрицания выполняет инвертор на основе транзисторного ключа. Логика работы двухвходового элемента НЕ ИЛИ представлена в табл. 2.4, на основе которой получают выражение для булевой функции т л F = X vX2. Таблица 2.4 12 Используя принцип суперпозиции, функцию F можно за- X, хг F писать для произвольного числа переменных: 0 0 1 F = X, v Х2 v... v Хп . Схема ДТЛ-элемента, которая реализует булеву операцию HE-ИЛИ для двух переменных, и его условное графическое изо-бражение показаны на рис. 2.5. 0 1 0 1 0 0 1 1 0 Рис. 2.5. Элемент НЕ ИЛИ: а — схема; б — условное графическое обозначение Схему ДТЛ-элемента НЕ ИЛИ строят путем подключения выхода диодного элемента ИЛИ ко входу инвертора. Смещающие диоды FD3 и FD4 играют ту же роль, что и в схеме, изображенной на рис. 2.4, а. Через резистор смещения 7?см протекает ток ZK0. Транзистор УТ\ открывается и формирует низкий уровень выходного напряжения UC,L только в том случае, когда на одном или обоих входах имеется высокий уровень напряжения Um. При этом включающий ток /Б1 проходит от источников входных сигналов. Временные диаграммы работы (идеализированные) элемента НЕ ИЛИ показаны на рис. 2.6. Длительность переходных процессов практически определяется быстродействием транзистора. Рис. 2.6. Временные диаграммы работы элемента НЕ ИЛИ 2.1. Логические элементы — диодные, транзисторные, ИИЛ и ДТЛ 71 Логика работы двухвходового элемента НЕ И представлена в табл. 2.5, на основе которой получают выражение для булевой функции F = XxX2. Используя принцип суперпозиции, функцию F можно записать для произвольного числа переменных: Р = Х,Х2...Х„. Схема ДТЛ-элемента, реализующего булеву операцию НЕ-И для двух переменных X, иХ2, и его условное графическое изображение показаны на рис. 2.7. Таблица 2.5 X, Х2 F 0 0 1 0 1 1 1 0 1 1 1 0 Схему ДТЛ-элемента НЕ И строят путем подключения выхода диодного элемента И ко входу инвертора. Смещающие диоды VD3 и VD4 играют ту же роль, что и в схеме, изображенной на рис. 2.4. Транзистор ИЛ открывается и формирует низкий уровень выходного напряжения Uql только при совпадении высоких уровней входных сигналов UtH на обоих входах одновременно. При этом включающий ток протекает от источника тока Усс по цепи: резистор R, диоды VD3, VD4 и база транзистора УЛ. При подаче хотя бы на один из входов (или на оба) сигнала низкого уровня весь ток от источника пита- Рис. 2.8. Временные диаграммы работы элемента НЕ И ния Ucc замыкается по цепи: резистор R, диод ИО1 или VD2 (или оба) на соответствующий источник входных сигналов. В результате этого транзистор ИЛ закрывается и на выходе устанавливается высокий уровень напряжения UOH. Длительность переключения элемента практически определяется быстродействием транзистора. Временные диаграммы работы элемента НЕ И показаны на рис. 2.8. 2.1.4. Транзисторная логика Элементы ТЛ строят путем параллельной подключения коллекторов транзисторов к общему резистору коллекторной нагрузки 7?к. Выходное напряжение снимается с объединенных коллекторов. Если на один из входов поступает высокий уровень напряжения UIH, то соответствующий транзистор открывается и на выходе устанавливается низкий уровень сигнала U0L. Высокий уровень напряжения формируется на выходе только в случае подачи на все входы низких уровней UIL. 72 Элементы компьютерной схемотехники Логика работы элементов ТЛ представлена в табл. 2.4. В элементах ТЛНС входные сигналы подают непосредственно на базы транзисторов VT\ и VT2 (рис. 2.9, а). В схеме ТЛРС в цепи баз транзисторов включены резисторы Т?Б (рис. 2.9, б). Рис. 2.9. Элементы ТЛ: а — ТЛНС; б — ТЛРС; в — ТЛРКС В схеме ТЛРКС для ускорения переходных процессов резисторы Т?Б шунтированы конденсаторами СБ. Их роль описана при рассмотрении схемы инвертора (см. рис. 2.4). Временные диаграммы работы элементов ТЛ совпадают с процессами, изображенными на рис. 2.6. Интегральная инжекционная логика Разновидностью транзисторных схем являются элементы интегральной инжекционной логики (ИИЛ или И2Л). Схемотехнику И2Л используют для построения микропроцессорных и запоминающих БИС (серии К582, К583, К584 и др.). Схема логического элемента И2Л показана на рис. 2.10. Схема включает инжекционные р-п-р транзисторы VT1, VT2, включенные по схеме с общей базой, и входные многоколлекторные п-р-п транзисторы VTi, VTA, включенные по схеме с общим эмиттером. Эмиттеры транзисторов Г7Т, VT1 называются инжекторами, а протекающий через них дырочный ток — инжекционным. Каждый из транзисторов VT\, VT2 образует вместе с источником питания и внешним резистором R источник тока, который питает индивидуальным током ZT входы транзисторов F73, VTA. 2.2. Транзисторно-транзисторные логические элементы 73 Особенностями элементов И2Л являются: • “безрезисторность”, характерная для МОП-структур, которая впервые была реализована в схемотехнике И2Л; • соединение областей базы и коллектора инжекционных р-п-р транзисторов соответственно с областями эмиттера и коллектора входных п-р-п транзисторов, а также малое число схемных компонентов и соединений между ними (количество операций маскирования и диффузии в два раза меньше сравнительно с элементами ТТЛ); • низкий уровень напряжения UL = 0,01 В снимается с коллектора насыщенного транзистора, а высокий уровень напряжения £/#= 0,8 В — с коллектора закрытого транзистора, причем этот уровень ограничивается напряжением базы насыщенного транзистора нагрузки; используется режим микротоков, в котором токи коллектора изменяются от десятков до сотен микроампер; работоспособность элементов сохраняется при изменении значения тока в них на несколько порядков; • на коллекторах входного транзистора реализуется инверсия переменной, а на соединенных коллекторах транзисторов И73, VT4 выполняются операции НЕ-ИЛИ. Входные транзисторы управляются переключением тока на их входах. Если ко входу X] подключен коллектор левого насыщенного транзистора, то ток /т замыкается на него и не поступает в базу транзистора VI3, который закрывается и создает на своих коллекторах режим разомкнутых контактов. Если ко входу X, подключен коллектор левого закрытого транзистора, то ток /т втекает в базу И73, насыщает его и обеспечивает на коллекторах режим замкнутых контактов. Задержка распространения сигнала в элементе И2Л при токе 100 мкА составляет примерно 5-10 нс, мощность потребления — до 20 мкВт, работа переключения равна 0,1 пДж (например, в ТТЛШ серии КР1533 работа переключения составляет 6 пДж). Отмеченные свойства элементов И2Л и БИС на их основе придают им технологичность и компактность, они имеют невысокую стоимость при большом быстродействии. 2.2. Транзисторно-транзисторные логические элементы 2.2.1. Общая характеристика транзисторнотранзисторных логических элементов Элементы ТТЛ появились в результате развития схем ДТЛ в направлении сокращения числа компонентов, уменьшения емкости переходов и учета специфики интегральной технологии. Первоначально главной особенностью элементов ТТЛ было использование на входе многоэмиттерного транзистора (МЭТ) для реализации операции И. Каждый эмиттер МЭТ используют как логический вход. Число эмиттеров определяет коэффициент на входе N, = 1.. .8 и более. 74 Элементы компьютерной схемотехники Промышленность выпускает следующие серии ТТЛ и ТТЛШ: • стандартного среднего быстродействия (ТТЛ) — К133, К155, быстродействующие — К130, К131, К599 и маломощные — К134, К158 (1963 г.); • стандартные быстродействующие (ТТЛШ) — К530, К531 и маломощные — К533, К555 (1970 г.); • сверхбыстродействующие (ТТЛШ) — КР1530 (тип AS), высокого быстродействия — КР1531 (тип FAST) и маломощные — КР1533 (тип ALS) (1980 г.). В этих сериях применена изопланарная технология на основе ионной имплантации, прецизионной фотолитографии, обеспечивающих малые площади и емкости переходов. В микросхемах серий К533, К555, КР1531 и КР1533 вместо МЭТ на входы снова поставили диодные схемы совпадения, однако название схемотехники ТТЛШ сохранилось. 2.2.2. Транзисторно-транзисторный логический элемент с простым инвертором Схема простейшего ТТЛ-элемента содержит МЭТ, коллектор которого подключен к базе инвертирующего транзистора VT2 (рис. 2.11, а). Рис. 2.11. Элемент ТТЛ с простым инвертором: а — схема; б — топология Многоэмиттерный транзистор выполняет операцию И, транзистор VT2. — операцию НЕ. Поэтому элемент в целом реализует функцию/7 = ХхХ2. В первом приближении МЭТ с топологией, показанной на рис. 2.11, б, рассматривают как совокупность из п (по числу эмиттеров) отдельных транзисторов с общими базой и коллектором. Для исключения взаимного влияния эмиттерные переходы располагают друг от друга на расстоянии 10...15 мкм, что превышает диффузионную длину пробега носителей в базовом слое. В схеме ТТЛ-элемента МЭТ работает в двух основных режимах: инверсном и насыщения. Процессы, происходящие в инверсном режиме, отображают эквивалентной схемой (рис. 2.12, а). Инверсный режим возникает после подачи на все входы высоких уровней напряжений U!H. В результате эмиттеры Э1 и Э2 закрываются, коллекторный переход находится под прямым напряжением U* = 0,8 В и инжектирует электроны в общую базу. 2.2. Транзисторно-транзисторные логические элементы 75 Рис. 2.12. Эквивалентные схемы элемента ТТЛ: а — е инверсном режиме; б — в режиме насыщения С целью уменьшения втекающих в эмиттер обратных токов 1/н, технологическими методами специально уменьшают значение инверсного коэффициента передачи тока /?/0т базы к эмиттеру до 0,01-0,02. В этом случае значение тока 11Н находят из соотношения 1/н = Pi 4м > где 7gM — ток базы МЭТ. На основе схемы рис. 2.12, а для тока 1^м, вытекающего из коллектора МЭТ, справедливо выражение 4м ~ 4м + 2-4 = 4м + 2р,- /БМ = /БМ (1+2 pj). Ток /БМ находят из равенства 4м =(Ucc-2UyR, где 2U* = 1,6 В — суммарное падение напряжения на двух последовательно включенных кремниевых переходах — коллектора МЭТ и базы VT2. Для типовых значений Ucc = 5 В, R = 3 кОм, получим: 4М=(5- 1,6)/3-103= 1,12 мА; 1,н = 0,02-1,12-10“3 = 25 мкА; 4м = 4м(1+2-0,02)- 7’м=1,12мА. Таким образом, значение коллекторного тока 4м достаточно для надежного насыщения транзистора VT2, при этом на выходе устанавливается низкий уровень напряжения t/oz.<0,l В. Режим насыщения возникает при подаче на один из входов (или на оба), например низкого уровня входного напряжения UIL (рис. 2.12, б). При этом эмиттер Э1 открывается, поскольку на нем падение напряжения if = 0,8 В, и инжектирует электроны в базу МЭТ. Коллекторный переход МЭТ также находится под прямым смещением. Однако он не может собирать (“коллекционировать”) электроны; это равнозначно появлению втекающего в коллектор тока, что не допускает база транзистора VT2. Считают, что в цепи коллектора МЭТ включено бесконечно большое сопротивление нагрузки, поэтому в области коллектора МЭТ накапливается объемный заряд электронов, что 76 Элементы компьютерной схемотехники характерно для режима насыщения. Транзистор VT2 — закрытый и на его коллекторе устанавливается высокий уровень напряжения U0H~ UCc- Значение вытекающего (отрицательного) из открытого эмиттера Э1 тока IIL находят из равенства IfL~[Ucc-(U,L+U*)]/R. Допустив, что UIL = 0,4 В, получим IIL= 1,23 мА. Таким образом, в рассмотренной схеме элемента ТТЛ практически постоянный ток базы 7бМ коммутируется или в базу транзистора VT2 (инверсный режим), или в открытый эмиттер МЭТ (режим насыщения). 2.2.3. Транзисторно-транзисторный логический элемент со сложным инвертором В микросхемах ТТЛ используют сложные инверторы, которые повышают быстродействие и нагрузочную способность элементов. Схема базового (типового) элемента ТТЛ со сложным инвертором содержит три основных каскада (рис. 2.13, а): 1. Входной каскад, реализующий операцию И (транзистор И7Т, резистор RA). Ко всем входам МЭТ подключены демпфирующие (антизвонные) диоды, ограничивающие влияние импульсов помех отрицательной полярности. 2. Фазоинверсный каскад (транзистор VT2, резисторы 7?к и 7?э), управляющий выходными транзисторами с помощью противофазных изменений напряжений на коллекторе и эмиттере VT2. 3. Выходной двухканальный усилитель (транзисторы V73, VT4, смещающий диод VD3, резистор Яо). Сложный инвертор образуется совместной работой фазоинверсного и выходного каскадов. При совпадении на входах элементов высоких уровней напряжений МЭТ переключается в инверсный режим и своим коллекторным током открывает транзистор VT2. Часть эмиттерного тока транзистора VT2 втекает в базу транзистора ИТ4 и открывает его. После быстрого разряда паразитной емкости Сп через коллектор насыщенного транзистора VT4 на выходе устанавливается низкий уровень напряжения. При этом транзистор VT3 — закрытый, поскольку напряжение, прикладываемое к последовательно включенным переходам базы и диода VD3, недостаточно для его открывания. 2.2. Транзисторно-транзисторные логические элементы 77 При подаче на один из входов напряжения низкого уровня МЭТ переключается в режим насыщения, ток его коллектора равен нулю, вследствие чего закрываются транзисторы VT2 и VT4. При этом открытый транзистор VT3 работает в режиме эмиттерного повторителя: на его вход поступает высокий уровень напряжения с коллектора закрытого транзистора VT2, а нагрузкой служит сопротивление закрытого транзистора VT4. Эмиттерный повторитель передает на выход высокое напряжение UOH=UCC-2U\ где 2U"— прямое падение напряжения на двух последовательно включенных переходах — базы транзистора VI3 и диода VD3. Повторитель создает в нагрузке ток, в 50-100 раз превышающий его входное значение. Это также обеспечивает быстрый заряд паразитной емкости Сп. Временные диаграммы работы ТТЛ элемента совпадают с рис. 2.8. В процессе переключения имеется кратковременный интервал, когда транзистор VT4 уже открыт, a VT3 — еще не успел закрыться. При этом возникает значительный импульс тока от источника питания на землю (сквозной ток). Для уменьшения амплитуды сквозного тока в коллекторе транзистора VT3 поставлен ограничительный резистор Ro = 100...200 Ом. Рассмотренная схема элемента ТТЛ со сложным инвертором является типовой для ТТЛ серий К131, К133, К155 и др. Принцип работы транзисторов Шотки Элементы ТТЛШ в сравнении с ТТЛ имеют более высокое быстродействие и меньшую потребляемую мощность, что достигается применением диодов Шотки. Принцип работы диода Шотки основан на использовании потенциального барьера, который образуется в приконтактной области между металлом и полупроводником. В диодах Шотки нет накопления избыточных зарядов, поскольку ток определяется переходом основных носителей из полупроводника в металл. Время переключения диодов Шотки очень мало (до 0,1 нс) и не зависит от температуры. В сравнении с кремниевыми диодами прямое падение напряжения в диодах Шотки вдвое меньше (около 0,3-0,4 В). В режиме насыщения на коллекторе кремниевого транзистора действует прямое напряжение (7КБ = 0,7 В, вследствие чего коллектор открывается и инжектирует электроны в базу. Это вызывает задержку выключения, обусловленную временем рассасывания грас(рис. 2.14, а). Рис. 2.14. Распределение напряжений в открытом транзисторе: а — обычном; б — с диодом Шотки; в — условное обозначение транзистора Шотки 78 Элементы компьютерной схемотехники При наличии между базой и коллектором диода Шотки (рис. 2.14, б) коллектор при открывании транзистора не переходит в режим насыщения, поскольку прямое напряжение Ukb = 0,4 В. Транзистор с диодом Шотки между базой и коллектором называют транзистором Шотки (рис. 2.14, в). Таким образом, транзистор Шотки не переходит в режим насыщения и тем самым исключается задержка выключения. При этом быстродействие увеличивается приблизительно в 3-5 раз. Элементы ТТЛШ серий К530, К531 Схема типового элемента ТТЛШ серии К530 и К531 показана на рис. 2.15. Элемент реализует операцию НЕ-И для двух переменных Х1 иХ2. Рис. 2.15. Схема элемента ТТЛШ серий К530, К531 В сравнении с элементом ТТЛ со сложным инвертором (см. рис. 2.13) в схеме ТТЛШ серии К530 и К531 внесены следующие изменения: • используются только диоды и транзисторы Шотки (за исключением транзистора VT4, который не переходит в режим насыщения); • в фазоинверсный каскад добавлена корректирующая цепочка (транзистор VT6, резисторы R3 и /?4), которая смещает порог включения элемента в сторону больших входных напряжений, благодаря чему повышается помехоустойчивость схемы; • в выходной каскад встроена схема Дарлингтона на транзисторах VT3 и VT4, которая удваивает значение коэффициента усиления базового тока, что обеспечивает большие токи в нагрузке и повышает быстродействие элемента; • в коллекторе транзистора VT4 включен резистор R6, который ограничивает амплитуду “сквозного" тока от источника питания на общий провод в моменты переключения выходных транзисторов; резистор 7?5 обеспечивает прохождение обратного тока /к0 транзистора VT4. Схема работает аналогично элементу ТТЛ со сложным инвертором. При описании работы элементов ТТЛШ других серий сохранены буквенно-цифровые обозна 2.2. Транзисторно-транзисторные логические элементы 79 чения резисторов, диодов и транзисторов, назначение которых описано применительно к схеме, изображенной на рис. 2.15. Условное графическое обозначение рассмотренного элемента представлено на рис. 2.13, б. Элементы ТТЛШ серий К533, К535 Схема типового элемента ТТЛШ серий К533 и К535 показана на рис. 2.16. Элемент реализует операцию НЕ-И для двух переменных Хх и Х2. ЯЗ Я4 Рис. 2.16. Схема элемента ТТЛШ серий К533, К535 В схеме рассматриваемого элемента не применяют МЭТ. Входной каскад образуется схемой совпадения на диодах VD3, VD4 и резисторе 7?1. Коллектор транзистора VT2 дополнительно соединен с базой транзистора VT4- через диод VD5 и резистор 7?5; это способствует уменьшению времени перезарядки паразитных емкостей нагрузки. При совпадении высоких уровней входных напряжений диоды VD3 и FD4 закрываются и ток от источника питания через резистор R1 открывает транзистор 1-72; при этом включается также транзистор /7’5 и на выходе устанавливается низкий уровень напряжения. Если на один из входов подать низкий уровень напряжения, то данный диод открывается и через него протекает ток, создаваемый источником питания через резистор 7?1. В этом случае транзисторы VT2 и VT5 закрыты и схема Дарлингтона устанавливает высокий уровень выходного напряжения. Элементы ТТЛШ серий КР1531 и КР1533 Элементы ТТЛШ новых серий КР1531 (условное название FAST) и КР1533 (условное название ALS) изготовляют по новейшей технологии “Изопланар II”, которая использует ионную имплантацию (точное дозированное внедрение атомов примеси в области полупроводника), прецизионную фотолитографию, что позволяет в восемь раз уменьшить площадь, которую элементы занимают на кристалле. Существенно уменьшены потребляемая мощность и работа переключения, входные токи при низких уровнях входных напряжений (I!L < 0,1 мА). Схема типового элемента 80 Элементы компьютерной схемотехники ТТЛШ серии КР1531 показана на рис. 2.17. Элемент реализует операцию НЕ-И для двух переменных и Х2. Рис. 2.17. Схема элемента ТТЛШ серии КР1531 Рис. 2.18. Схема элемента ТТЛШ серии КР1533 В рассматриваемом элементе на выходе диодной схемы совпадения включен дополнительный усилитель на транзисторе УТ1. При совпадении высоких входных уровней напряжения диоды VD3 и TD4 закрываются, а транзистор УТ1 открывается. Ток его эмиттера создает на резисторе 7?8 падение напряжения, которое управляет фазоинверсным каскадом. Дополнительные диоды VD6, VD1 емкостными токами своих переходов ускоряют процесс переключения транзистора УТ\. В элементах серии КР1533 (рис. 2.18) в качестве диодов схемы совпадения используют эмиттерные переходы р-п-р транзисторов УП и УТЬ. Переходы закрыты при совпадении высоких уровней на входах; открываются транзисторы УТ1, УТ2, VT5 и УТ6. Если хотя бы на один из входов подан низкий уровень, то ток, протекающий через резистор R\, замыкается на общий провод по цепи эмиттер-коллектор открытого р-п-р транзистора. Вследствие этого транзисторы VTl, VT2, VT5 и VT6 закрываются, a УТЗ, УТА — открываются. Применение схемы совпадения на переходах р-п-р транзисторов позволило в сравнении с ТТЛШ серии КР1531 в 20 раз уменьшить входные токи IIL. 2.2.4. Элементы ТТЛ и ТТЛШ с открытым коллекторным выходом и тремя состояниями Для работы на нестандартную нагрузку (например, лампу накаливания (ЛН) или обмотку реле) выпускают схемы элементов ТТЛ и ТТЛШ с открытым коллектором (рис. 2.19, а). При совпадении высоких уровней на входах транзистор УТЗ открывается и ЛН светится. Если хотя бы на одном из входов будет низкий уровень напряжения, то транзистор УТЗ размыкается и ЛН гаснет. Если выходы нескольких элементов с открытым коллектором подключаются к источнику питания через общий коллекторный резистор, то такая схема реализует функцию НЕ-И-ИЛИ (рис. 2.19, в). 2.2. Транзисторно-транзисторные логические элементы 81 Рис. 2.19. Элемент ТТЛШ с открытым коллектором: а — схема; б — условное обозначение; в — подключение к общей нагрузке В схемах элементов ТТЛ и ТТЛШ соединение выходов нескольких элементов во избежание протекания большого тока от выхода с высоким уровнем иОнна выход с низким уровнем U0L недопустимо, поскольку может привести к выходу из строя микросхемы. При необходимости такого прямого соединения выходов (способ “монтажное ИЛИ”) используют элементы с тремя состояниями. Два состояния выходов — это обычная выдача значений лог. О и лог. 1. Третье состояние характеризуется бесконечно большим выходным сопротивлением, когда элемент практически полностью отключается от нагрузки, то есть не потребляет и не выдает тока. Это достигается рядом схемных решений, в том числе и простейшим, показанным на рис. 2.20, а. В том случае, когда диод РТЛ подключен к эмиттеру и коллектору транзисторов VT\ и VT2, а на катод диода подается управляющий сигнал Z с высоким уровнем напряжения (лог. 1), схема работает как элемент НЕ И. Рис. 2.20. Элемент ТТЛ с тремя состояниями: а — схема; б — условное обозначение; в — подключение к общей нагрузке Если управляющий сигнал Z представлен низким уровнем напряжения (лог. 0), то МЭТ и коллектор транзистора 7Т2 (а соответственно и база транзистора Р73) подключаются через открытый диод VDI к шине земли. В этом случае все транзисторы закрыты и элемент переходит в третье состояние (Z-состояние). В сериях микросхем часто управляющий сигнал является инверсным. При объединении выходов^элементов ТТЛ с тремя состояниями (рис. 2.20, в) управляющие сигналы Zi, Z-i и Zj должны подаваться только поочередно. 6-4-1749 82 Элементы компьютерной схемотехники Для элементов с тремя состояниями введены следующие временные параметры для задания задержек распространения: • tuz. и ?hz — длительность задержки при переходе из низкого и высокого уровней выходного напряжения в состояние “выключено” соответственно; • (ть и <zh — длительность задержки при переходе из состояния “выключено” в состояние низкого и высокого уровней выходного напряжения соответственно. 2.2.5. Сравнительный анализ параметров элементов ТТЛ и ТТЛШ Серии микросхем ТТЛ и ТТЛШ включают широкий функциональный набор логических элементов, триггеров, узлов (регистры, счетчики, сумматоры и др.). Наличие готовых узлов в сериях позволяет уменьшить число корпусов микросхем и получить значительный выигрыш в объеме аппаратуры. Серии элементов ТТЛ и ТТЛШ обладают функциональной и технической полнотой, работают от источника напряжения плюс 5 В, совместимы по уровням логических сигналов, а часть — и по разводке выводов корпуса микросхемы. Уровни напряжения лог. О и лог. 1 при положительном кодировании составляют: для элементов ТТЛ — UL< 0,4 В; UH > 2,4 В; для элементов ТТЛШ — UL < 0,5 В; UH > 2,7 В. В элементах ТТЛ и ТТЛШ удачно сочетаются схемотехнические, технологические и конструктивные достоинства: • высокий уровень схемно-технологической отработанности, обеспечивающий высокий процент выхода годных микросхем и низкую стоимость изготовления; • сравнительно высокое быстродействие и помехоустойчивость; • высокая нагрузочная способность No = 10...30 и умеренная потребляемая мощность; • широкий функциональный набор элементов и удобство применения (монтаж, компоновка, охлаждение). Значение задержек и потребляемой мощности элементов ТТЛ и ТТЛШ различных серий приведены в табл. 2.6. Таблица 2.6 Группы микросхем Номер серии /р, нс /'со мВт Лп, пДж Стандартные ТТЛ К133, К135 9 10 90 Быстродействующие ТТЛ К130, К131 6 22 132 Маломощные ТТЛ К134, К136 33 5 165 Стандартные ТТЛШ К530, К531 3 19 57 Маломощные ТТЛШ К533,К531 9,5 2 19 FAST КР1531 3 4 12 ALS КР1533 4 1,2 4,8 К недостаткам элементов ТТЛШ относятся: меньшее быстродействие в сравнении с элементами ЭСЛ, трудности согласования с низкоомной нагрузкой, высокий уровень создаваемых помех и рост потребляемой мощности с повышением частоты 2.3. Логические элементы эмиттерно-связной логики 83 переключения, значительное импульсное потребление тока во время переключения, особенно при емкостной нагрузке. Усилия разработчиков направлены на расширение функционального состава серий элементов ТТЛШ, функций элементов и узлов, а также на повышение быстродействия, уменьшение потребляемой мощности и снижение стоимости. Элементы ТТЛ и ТТЛШ в настоящее время составляют основу элементного базиса компьютерной схемотехники. Выбор конкретной серии микросхем для построения цифровых устройств производится на основе следующих рекомендаций: • если к устройствам не предъявляются особые требования, то используют стандартные серии; • если по условиям работы следует обеспечить малое энергопотребление и допустимо понижение быстродействия, то используют маломощные (экономичные) серии; • устройства повышенной продуктивности проектируют на быстродействующих сериях элементов. 2.3. Логические элементы эмиттерно-связной логики Схемотехника элементов ЭСЛ основана на использовании дифференциального усилителя в режиме переключения тока. Элементы ЭСЛ появились в 1967 г. и в настоящее время являются самыми быстродействующими среди полупроводниковых элемен ,0В на основе кремния. Задержки распространения сигналов в элементах ЭСЛ уменьшились до субнаносекундного диапазона (приблизительно 1 нс). Сверхбыстродействие элементов ЭСЛ достигается за счет использования ненасыщенного режима работы транзисторов, выходных эмиттерных повторителей, малых амплитуд логических сигналов (около 0,8 В). В логических элементах ЭСЛ имеется парафазный выход, что позволяет одновременно получать прямое и инверсное значение реализуемой функции. Это дает заметное снижение общего количества микросхем в аппаратуре. Особенностями схемотехники ЭСЛ и ее характеристик являются: • возможность объединения выходов нескольких элементов для образования новых функций; • возможность работы на низкоомную нагрузку благодаря наличию эмиттерных повторителей; • небольшое значение работы переключения и независимость потребляемой мощности от частоты переключения; • высокая стабильность динамических параметров при изменении температуры и напряжения питания; • использование отрицательного источника питания и заземления коллекторных цепей, что уменьшает зависимость выходных сигналов от помех в шинах питания. К недостаткам элементов ЭСЛ относят сложность схем, значительное потребление мощности и трудности согласования с микросхемами ТТЛ и ТТЛШ. Промышленность выпускает ряд серий ЭСЛ: 100, 137, 138, 187, 223, 229, 700, 500 и К1500. Высокие технико-экономические характеристики микросхем серий 500 6* 84 Элементы компьютерной схемотехники и К1500 обусловили их широкое применение в быстродействующих цифровых устройствах. Типовые значения параметров элементов ЭСЛ представлены в табл. 2.7. Таблица 2.7 Номер серии элементов ЭСЛ tp, нс Рсс, мВт Ап, пДж 500 2 25 50 К1500 0,75 40 30 Микросхемы ЭСЛ серии 500 изготовляют по полупроводниковой диффузионной планарно-эпитаксиальной технологии. Все компоненты микросхемы размещают в одном кристалле кремния и изолируют обратно смещенными р-п переходами. Компоненты формируются диффузией примесей в тонком эпитаксиальном слое монокристаллического кремния. Схема типового логического элемента ЭСЛ серии 500 показана на рис. 2.21. Рис. 2.21. Элемент ЭСЛ серии 500: а — схема; б — условное обозначение Схема ЭСЛ включает: • переключатель тока (логические транзисторы РТ1, VT2, опорный транзистор KZ3, резисторы R1, R2, R2); • источник опорного смещения (транзистор VT4, диоды VD1, VD2, резисторы R5,R6)\ • выходные эмиттерные повторители (транзисторы Р75, К7’6). Напряжение на открытом переходе база-эмиттер кремниевого транзистора является постоянным параметром U = 0,8 В. При описании работы элемента берут соглашение отрицательной логики: значение лог. 0 отображается высоким (с учетам знака) уровнем напряжения UH = -0,9 В; значение лог. 1 отображается низким уровнем напряжения UL= -1,7 В. Амплитуда (перепад) логического сигнала Um = = UH- UL = 0,8 В. Опорное напряжение переключателя тока располагается симметрично относительно уровней двоичных сигналов и определяется как их среднее: UOn = ~(UH + UL)I2 =-1,3 В. 2.3. Логические элементы эмиттерно-связной логики 85 Если хотя бы на один из входов подано напряжение UH = -0,9 В, то данный транзистор открывается, на него переключается ток Лэ, что создает на резисторе 7?, падение напряжения минус 0,9 В. При этом опорный транзистор закрытый и на резисторе R2 падение напряжения равно минус 0,1 В. Если на всех входах поданы уровни UL = -1,7 В, то транзисторы VT\ и VT2 закрываются, а транзистор К73 открывается и на него переключается ток 1Э. В этом случае падение напряжения на резисторе 7?1 равно минус 0,1 В, а на резисторе R2 минус 0,9 В. При этом на коллекторах левого и правого плеча уровни напряжения не соответствуют принятому значению двоичного сигнала. Эмиттерные повторители на транзисторах VT5 и VT6 смещают уровни сигналов, поступающих на их базы с левого и правого плеча переключателя, на U* = 0,8 В в сторону отрицательных сигналов: UOH = - (J7* + 0,1) В = - 0,9 В; Uql = -(£/’ + 0,9) В = -1,7 В. Вследствие этого уровни входных и выходных сигналов соответствуют принятому стандарту. Временные диаграммы работы элемента ЭСЛ показаны на рис. 2.22. Рис. 2.22. Временные диаграммы работы элемента ЭСЛ Как следует из временных диаграмм, входные и выходные логические сигналы изменяются на ±0,4 В относительно опорного напряжения. В отрицательной логике элемент ЭСЛ реализует на прямом выходе F функцию И, а на инверсном выходе Y — функцию НЕ-И, что записывается как НЕ-И/И. В положительной логике элемент ЭСЛ реализует функцию НЕ-ИЛИ/ИЛИ. Резисторы 7?7 и 7?8 сопротивлением 50 кОм подключены к источнику отрицательного питания и обеспечивают протекание обратного базового тока, а также надежное запирание неиспользуемых входных транзисторов (незадействованные входы не требуется подключать к лог. 1). Кроме того, эти резисторы служат нагрузкой для источников входных сигналов. В элементах ЭСЛ серии 500 нагрузочные резисторы эмиттерного повторителя (ЭП) вынесены за пределы микросхемы, что снижает рассеиваемую мощность на кристалле и обеспечивает возможность организации монтажной логики. Внешние нагрузочные резисторы сопротивлением 0,3-3,0 кОм подключаются между выходом ЭП и основным источником отрицательного питания минус 5,2 В. При работе на низкоомную нагрузку 50-200 Ом резисторы могут подключаться к дополнительному пониженному источнику питания минус 2,0 В. 86 Элементы компьютерной схемотехники Подключение отрицательного напряжения питания к эмиттерной цепи и заземление коллекторов обеспечивает лучшую помехоустойчивость и меньшую зависимость выходных сигналов от наводок в цепях эмиттера. Сопротивление резистора R3 в несколько раз больше сопротивлений 7?1 и R2, чем достигается постоянство тока 1Э в плечах переключателя тока. Кроме того, соотношение сопротивлений резисторов 7?1, R2 и R3 подобрано таким образом, чтобы на выходе закрытого плеча устанавливалось напряжение минус 0,1 В за счет протекания тока базы ЭП, а на выходе открытого плеча напряжение составляло минус 0,9 В за счет протекания тока 1Э. Коллекторы ЭП подключены к отдельной шине земли. Это связано с тем, что токи повторителей носят импульсный характер и создают помехи в, проводниках, подводящих напряжение. В элементах ЭСЛ допускается объединение выходов, как показано на рис. 2.23. Объединение прямых выходов увеличивает коэффициент объединения по И; объединение инверсных выходов позволяет реализовать функцию НЕ-И-ИЛИ. Рис. 2.23. Объединение выходов элемента ЭСЛ Элементы ЭСЛ серии 500 обладают функциональной и технической полнотой. Серия 500 включает широкий набор микросхем: логические элементы, триггеры, регистры, счетчики, дешифраторы, мультиплексоры, АЛУ. 2.4. Логические элементы на МОП-транзисторах Развитие компьютерной схемотехники на основе МОП-транзисторов началось с появлением в 1962 г. полевого транзистора с индуцированным каналом. Схемы на МОП-транзисторах характеризуются относительной простотой изготовления, компактностью, малой потребляемой мощностью, высокой помехоустойчивостью к изменению напряжения питания. МОП-транзисторы имеют структуру: металл-диэлектрик-полупроводник и в общем случае называются МДП-транзисторами (рис. 2.24). Поскольку диэлектрик реализуется на основе оксида SiO2, то применяют название МОП-транзисторы (униполярные, канальные). Металлический электрод, на который поступает управляющее напряжение, называется затвором (3) а два других электрода — истоком (И) и стоком (С). От истока к стоку протекает рабочий ток. Для p-канала полярность стока отрицательная, а для п-канала — положительная. Основная пластина полупроводника называется подкладкой (П). Канал — это приповерхностный проводящий слой между истоком и стоком, в котором величина тока определяется с помощью электрического поля. 2.4. Логические элементы на МОП-транзисторах 87 Процессы инжекции и диффузии в канале отсутствуют. Рабочий ток в канале обусловлен дрейфом в электрическом поле электронов в n-каналах и дырок в р-каналах. р-МОП -OCCQ А/ п-МОП Рис. 2.24. Топология и условные обозначения МОП-транзисторов: а, б — p-МОП; в, г — п-МОП При нулевом значении управляющего напряжения канал отсутствует и ток не протекает. Канал, который образуется под действием внешнего управляющего напряжения, называется индуцированным. Напряжение, при котором образуется канал, называется пороговым J7TIH. Канал с начальной дополнительной концентрацией зарядов называется встроенным. Быстродействие n-МОП транзисторов в 5-8 раз выше быстродействия р-МОП транзисторов, поскольку подвижность электронов существенно больше дырок. В МОП-схемах полностью исключены резисторы, их роль выполняют МОП-транзисторы. Схемы логических элементов НЕ на МОП-транзисторах показаны на рис. 2.25. Рис. 2.25. Схемы элементов НЕ на МОП-транзисторах: а — с p-каналами; б — с п-каналами В схеме элемента НЕ на p-МОП транзисторах применяют нагрузочный транзистор VT\, сток которого подключается к отрицательному источнику питания минус Ucc (рис. 2.25, а). Напряжение отрицательной полярности входной переменной X поступает на затвор входного транзистора VT2. В этой схеме применяют транзисторы с индуцированными каналами. В схеме элемента НЕ на n-МОП транзисторах используют нагрузочный транзистор VT\ со встроенным каналом, который подключается к положительному источнику питания плюс UCc- Положительное напряжение входной переменной X посту 88 Элементы компьютерной схемотехники пает на затвор входного транзистора VT2 с индуцированным каналом (рис. 2.25, б). Нагрузочные транзисторы включены по схеме двухполюсника. Если входное напряжение U < Utih, то транзистор VT2 закрытый, a VT1 — открытый и на выходе устанавливается уровень напряжения, близкий к значению UCc- Если входное напряжение U > Utih, то оба транзистора открыты и выходное напряжение снимается с делителя, образованного сопротивлением каналов Uq = (Lcc-^b) / (*в + 7?н), где RB и 7?н — сопротивления каналов входного и нагрузочного транзисторов. Пороговые напряжения для p-МОП UTih = - (5...7) В, а для n-МОП UnH = +(1,5...2) В. Для того чтобы напряжение UOl было меньше 0,1 В, требуется выполнение условия RB « RH, которое достигается изготовлением транзисторов с разными сопротивлениями каналов. В схемах на р-МОН транзисторах сопротивление каналов транзистора УТ\ в 25 раз больше сопротивления канала транзистора VT2. Специфика n-МОП транзисторов такова, что достаточно соотношения сопротивлений около четырех. Схемы элементов НЕ ИЛИ и НЕ И на n-МОП транзисторах показаны на рис. 2.26. Рис. 2.26. Логические элементы на n-МОП транзисторах: а — НЕ ИЛИ; б — НЕ И Элемент НЕ ИЛИ образуется параллельным соединением входных транзисторов (рис. 2.26, а), а элемент НЕ И последовательным соединением (рис. 2.26, б). Значение лог. 0 отображается напряжением UL = 0,1 В, а лог. 1 — напряжением Uh = Ucc- На выходе элемента НЕ ИЛИ устанавливается инверсное значение логической суммы входных переменных, а на выходе элемента НЕ И устанавливается инверсное значение логического произведения входных переменных. Например, на выходе элемента НЕ ИЛИ уровень лог. 0 устанавливается при наличии хотя бы на одном входе единичного сигнала. На выходе элемента НЕ И уровень лог. 0 устанавливается при совпадении высоких уровней напряжений на двух входах, когда одновременно открываются транзисторы VT2 и УТЬ. В комплементарной МОП-структуре (логика КМОП) используются одновременно р- и n-канальные транзисторы. Элемент НЕ в схемотехнике КМОП построен на двух транзисторах с индуцированными каналами: нагрузочном VT2 с каналом р-типа и входном УТ1 с каналом n-типа (рис. 2.27, а). Исток транзистора VT2 подключен к 2.4. Логические элементы на МОП-транзисторах 89 источнику положительного питания Ucc, напряжение входной переменной X поступает на затворы обоих транзисторов; выходное напряжение снимается с объединенных стоков. Рис. 2.27. Схемы элементов КМОП: а — НЕ; 6 — НЕ ИЛИ; в — НЕ И При входном уровне UJH транзистор VT1 открыт, a VT2 — закрыт, поскольку между его затвором и истоком есть нулевое напряжение. На выходе устанавливается уровень UOL и ток в цепи не протекает. При входном уровне U1L транзистор VT1 закрыт, a VT2 — открыт, потому что между его затвором и истоком есть напряжение Ucc. На выходе — уровень UOh и ток в цепи не протекает. На рис. 2.27, б показана схема КМОП элемента НЕ ИЛИ, в которой входные транзисторы VT\, VT2 включены параллельно, а нагрузочные F73, КГ4 — последовательно. Если хотя бы на одном из входов имеется уровень напряжения Um, то данный транзистор открывается, на выходе устанавливается уровень U0L, нагрузочные транзисторы закрыты, ток в цепи не протекает. Если на обоих входах имеется уровень напряжения U1L, то транзисторы VT1 и К72 закрыты, а К73 и РТ4 — открыты, на выходе устанавливается напряжение UOh и ток в цепи не протекает. На рис. 2.27, в показана схема КМОП-элемента НЕ И, в которой входные транзисторы КП и VT2 включены последовательно, а нагрузочные VT3 и КГ4 — параллельно. Если на затворы входных транзисторов одновременно поступают сигналы U/H, то транзисторы КП и VT2 открываются, выходной уровень равен UOl, нагрузочные транзисторы закрыты, ток в цепи не протекает. Если хотя бы на одном из входов имеется уровень напряжения UIL, то транзисторы КП и КГ2 закрыты и открывается один из нагрузочных транзисторов К73 или VT4. На выходе устанавливается уровень ион и ток в цепи не протекает. Таким образом, в схемах КМОП в статическом состоянии протекает очень малый рабочий ток, поскольку при открытых входных транзисторах закрыты нагрузочные и наоборот. Суммарная мощность потребления в основном определяется энергией, расходуемой на перезаряд паразитных емкостей. Промышленность выпускает следующие серии КМОП: 176, 564, 561, КР1561 й КР1554. Микросхемы быстродействующей серии КР1554 имеют функциональную и техническую полноту и включают логические элементы, триггеры, регистры, счетчики, дешифраторы, мультиплексоры и др. 90 Элементы компьютерной схемотехники Элементы серии КР1554 характеризуются следующими параметрами: диапазон напряжения питания составляет 3-6 В; уровни логических сигналов: U0L = 0,1 В, UOh = исс, U/L < 1,35 В, U,H > 3,15 В; ток потребления в статическом режиме на логический элемент — 0,25 мкА (в тысячу раз меньше в сравнении с серией КР1533); мощность потребления на элемент — 2,5 мкВт; задержка распространения сигналов — 4 нс; работа переключения Лп = 0,01 пДж; частота переключения D-триггера — 150 МГц; диапазон температур: минус 40 ... плюс 85°С. Как следует из этих данных, микросхемы КМОП серии КР1554 являются серьезным конкурентом схемам ТТЛШ. 2.4.1. Логические элементы на МЕП-транзисторах Полевые транзисторы МЕП-типа имеют структуру “металл-полупроводник”; их строят на основе арсенида галлия (AsGa — соединение галлия с мышьяком). В сравнении с германием AsGa имеет следующие преимущества: • более высокую подвижность электронов в слабых электрических полях (приблизительно в пять раз); • почти в полтора раза шире запрещенную зону, которая обеспечивает высокое удельное сопротивление подкладки (как следствие, подкладки из AsGa служат полуизолирующим материалом); • очень малые паразитные емкости между электродами МЕП-транзистора. На основе арсенида галлия достигается десятикратное повышение быстродействия схем при снижении мощности потребления вдвое. Однако арсенид галлия Не позволяет строить МОП-транзисторы с изолированным затвором, поскольку он не образует стойких оксидов. В полевых МЕП-транзисторах используют барьер Шотки на границе контакта металла с полупроводником. Поэтому МЕП-транзисторы также называют “полевыми транзисторами с барьером Шотки” (ПТШ). Структура арсенид-галлиевого МЕП-транзистора (поперечный разрез) показана на рис. 2.28, а. Транзистор создается на подкладке из нелегированного AsGa. На поверхности подкладки ионным методом формируют сильно легированные п+-области истока и стока, а потом тонкий слой канала /7-типа толщиной d0 = 0,2 мкм. На поверхность подкладки в канале наносят металлический электрод затвора (например, сплав титан-вольфрам) Рис. 2.28. МЕП-транзистор: а — поперечный разрез; б — сток-затворные характеристики Для обеспечения омических контактов с истоком и стоком применяют металлические электроды на основе композиции германий-золото. На поверхность подклад- 2.4. Логические элементы на МОП-транзисторах 91 ки между контактами наносят слой диэлектрика, например, диоксида кремния. Металлический электрод затвора создает в канале обедненный электронами слой — барьер Шотки высотой 0,8 В. Пространственные размеры барьера изменяются под действием напряжения затвора. Собственно проводящий канал толщиной dK ограничен областью барьера и подкладкой. Между затвором и истоком подается управляющее напряжение (7ЗИ, а на сток — напряжение питания плюс Ucc. При изменении управляющего напряжения изменяется толщина обедненного слоя <УБ и проводящего канала dK = d0- d^, его проводимость и ток стока. Пороговое напряжение Un определяется из уравнения UT}=C}-C2Ndd^l, где С], С2 — константы, Nd — концентрация доноров в канале. Если напряжение (7ЗИ (затвор-исток) достигает порогового значения, то граница обедненного слоя смыкается с подкладкой <7К = d0- d5 = 0; при этом толщина проводящего слоя и ток стока 7С равны нулю. Если при напряжении 7/зи = 0 есть проводящий канал и протекает рабочий ток, то МЕП-транзистор называется нормально открытым, он работает в режиме обеднения. Если при 7/зи = 0 барьер Шотки перекрывает весь канал и рабочий ток не протекает, то МЕП-транзистор называется нормально закрытым; он работает в режиме обогащения. На рис. 2.28, б представлены сток-затворные характеристики нормально открытого (кривая 1) и нормально закрытого (кривая 2) МЕП-транзистора, а также их входная характеристика (кривая 3). Для нормально открытых МЕП-транзисторов управляющее напряжение на затворе, при котором протекает ток стока /с, может изменяться от отрицательных значений до небольших положительных (не больше 0,6 В). При напряжениях, больших (7ЗИ > 0,6 В, в его канале возникает ток затвора 73, поскольку открывается переход металл-полупроводник. Поэтому ток стока ограничен значением /СМ1. Для нормально закрытых транзисторов напряжение затвора, при котором протекает ток стока, положительное и может изменяться только в узких пределах (0...0,6 В). Максимальный ток стока ограничен значением 1СМ2. Для транзисторов с одинаковыми размерами канала (длиной и шириной) /Cmi » /смз- В схемотехнике применяют нормально закрытые и нормально открытые МЕП-транзисторы. Варианты схем логических элементов НЕ, НЕ ИЛИ на МЕП-транзистбрах показаны на рис. 2.29. Рис. 2.29. Логические элементы на МЕП-транзисторах: а — НЕ; б, е — НЕ ИЛИ Схема НЕ (рис. 2.29, а) содержит пассивный транзистор VT\ (нормально открыт) и входной активный транзистор VT2 (нормально закрыт). Пассивный транзистор Р71 включен по схеме двухполюсника и выполняет роль источника стокового тока, зна 92 Элементы компьютерной схемотехники чение которого практически не изменяется в широком диапазоне изменения напряжения между стоком и истоком. К выходу элемента НЕ подключается аналогичный инвертор. Он в статическом режиме представлен эквивалентной схемой из последовательно включенных диода Шотки (барьера металл-полупроводник) и сопротивления между затвором и истоком Ази. Напряжение источника питания в схеме Ucc = 1,5 В; усредненные значения пороговых напряжений для транзисторов УТ\ и VT2 соответственно равны (7П1 = = -0,3 В и [/гл = 0,15 В. При £/Вх = UlL < Um транзистор VT2 закрыт, ток стока 7С2 = 0 и на выходе устанавливается уровень напряжения U0H. Ток 1С] открытого транзистора УТ\ переключается в затвор инвертора нагрузки. Поскольку ток 1С2 составляет единицы миллиампер, а сопротивление 7?зи измеряется десятками ом, то выходной уровень практически определяется прямым напряжением на диоде VD'. U()n ~и^щ + 7С1 7?3и = t/дш ~ 0,6 В. Уровень напряжения UOH мало зависит от значений источника питания Ucc, тока /С| и понижается с увеличением коэффициента объединения и температуры. При U^x = UIH > Um транзистор VT2 открывается и через него протекают токи стоков транзистора УТ\ и предыдущего транзистора (источник входного сигнала). На выходе устанавливается низкий уровень U0L = 0,05 В. Уровень U0L понижается с уменьшением токов стоков и сопротивления 7?си между стоком и истоком. Если допустить, что U'=UH, U°=Ul, то амплитуда логического сигнала Um = U} - U° = 0,55 В. Помехоустойчивость элемента НЕ Л/л= 0,16 В, Мн = = 0,26 В, что значительно меньше, чем для схем на л-МОП транзисторах. Схема двухвходового элемента НЕ ИЛИ содержит нормально открытый пассивный транзистор УТ1, входные нормально закрытые транзисторы VT2 и УТЗ, включенные параллельно (рис. 2.29, б). При UX\ = Цу2 = UIL транзисторы VT2 и УТЗ закрыты, на выходе У устанавливается высокий уровень напряжения иПн- Если на одном из входов или на обоих действует напряжение Um, то соответствующий транзистор (или оба) открываются и на выходе устанавливается уровень U()L. Параметры элемента НЕ ИЛИ аналогичны схемам, изображенным на рис. 2.29, а. Схема двухвходового элемента НЕ ИЛИ с повышенной помехоустойчивостью показана на рис. 2.29, в. Входные диоды Шотки VD\ и VD2 реализуют операцию ИЛИ, транзисторы УТ\ и VT2 создают инвертор, а транзистор УТЗ вместе с диодами — это цепь смещения уровня порога транзистора VT2. В данном элементе в сравнении со схемами, изображенными на рис. 2.29, а и б, обеспечивается большая помехоустойчивость и меньшая ее зависимость от технологического разброса пороговых напряжений транзисторов. Это достигается усложнением схемы, увеличением ее площади на кристалле и использованием другого источника питания минус UCC2- В схеме применяют только нормально открытые транзисторы с напряжениями питания t/Cci = 1,5 В; UCC1 = -1 В. Для транзисторов УТ\ и УТЗ (7П1 = t/пз = - 0,7 В, а для транзистора VT2 Um = - 0,45 В. Прямое напряжение на диодах Шотки при протекании через них тока 7СЗ равно приблизительно 0,7 В (минус на катоде). Напряжение на затворе транзистора VT2 определяется из зависимости изи= UBX - t/дш, которая является практически линейной, поскольку (7ДШ = const. 2.5. Импульсная и потенциально-импульсная системы элементов 93 При (7Вх = UIL = 0 напряжение (7ЗИ = - 0,7 В, что меньше t/nz, и транзистор VT2 закрыт, на его выходе устанавливается высокий уровень напряжения U0H ~ 1 В. При [/вх = Um = 1 В напряжение (73и = +0,3 В, что больше Um, и транзистор VT2 открыт, на его выходе устанавливается низкий уровень напряжения = 0,01 В. Таким образом, использование цепи смещения позволяет уменьшить значение U0, увеличить [/' и логический перепад U„, = I/1 - U° = 1 В. Промышленность выпускает схемы на МЕП-транзисторах серии К6500, которые характеризуются следующими параметрами: UCC] = 4 В, UCC2 = -2,4 В; UH= 0,9 В; UL = 0,1 В; средняя задержка распространения /п = 0,15 нс, мощность, потребляемая одним логическим элементом, Рсс = 5 мВт. 2.5. Импульсная и потенциально-импульсная системы элементов 2.5.1. Импульсная система элементов В импульсной системе элементов используются только импульсные информационные сигналы. В этой системе обычно применяются логические элементы ИЛИ, И, НЕ и импульсные (динамические) триггеры. Информационные сигналы с выходов одних импульсных элементов поступают на входы других через конденсаторы, обмотки трансформаторов, которые исключают взаимосвязь элементов по постоянному току. Импульсные элементы характеризуются относительно простой схемою и малой потребляемой мощностью. Недостатком импульсных элементов являются трудности реализации конденсаторов большой емкости и трансформаторов методами интегральной технологии. Схема импульсного диодного элемента ИЛИ показана на рис. 2.30, а. Она отличается от аналогического потенциального элемента наличием на входе разделительной RC-цепи, причем постоянная времени т = RC » t,, где Г, — длительность входных информационных импульсов. Сигнал на выходе элемента ИЛИ возникает в случае наличия импульса хотя бы на одном входе (рис. 2.30, б). Рис. 2.30. Импульсный диодный элемент ИЛИ: а — схема; б — временные диаграммы работы 94 Элементы компьютерной схемотехники Схема импульсного диодного элемента И показана на рис. 2.31, а, она отличается от аналогичного потенциального элемента наличием на входе разделительной RC-цепи, причем постоянная времени т = RC » t,, и должно выполняться условие R1 » R. Сигнал на выходе элемента И возникает при совпадении импульсов на всех входах (рис. 2.31, б). а б Рис. 2.31. Импульсный диодный элемент И: a — схема; б — временные диаграммы работы Схема импульсного элемента НЕТ, которая реализует логическую функцию Y = Х\Х2 , показана на рис. 2.32, а. Если АЛ? = 0, то на выходе элемента повторяется значение переменной Х}. При наличии импульса на входе Х2 на вторичной обмотке W2 трансформатора Тр наводится напряжение, которое компенсирует запирающее смещение плюс Сем- По этой причине диод VD2 открывается и выход элемента практически подключается к потенциалу земли, то есть обеспечивается значение лог. О (рис. 2.32, б). Рис. 2.32. Импульсный диодный элемент НЕТ: а — схема; б — временные диаграммы работы В импульсных схемах часто используются искусственные линии задержки, состоящие из £.С-звеньев_Т-образного типа. Длительность задержки определяется из соотношения Г3 = n^LC, где п — количество звеньев, L — индуктивность, мкГн; С — емкость, Пф (рис. 2.33, а). Для исключения помех на входе и выходе линии задержки включают резисторы с волновым сопротивлением р = -]ЫС . 2.5. Импульсная и потенциально-импульсная системы элементов 95 Рис. 2.33. Искусственная линия задержки: а — схема; б — условное обозначение DEL 2.5.2. Потенциально-импульсная система элементов В потенциально-импульсной системе элементов используют потенциальные и импульсные информационные сигналы. В этой системе применяют как чисто импульсные и потенциальные элементы, так и специальные потенциальноимпульсные схемы на основе диодов, транзисторов и трансформаторов. Потенциально-импульсные элементы широко применялись в компьютерах первого и второго поколений; сейчас их используют в специализированных цифровых устройствах. Потенциально-импульсные элементы по энергопотреблению занимают промежуточное положение в сравнении с импульсными и потенциальными схемами.. Схема потенциально-импульсного диодно-трансформаторного логического элемента И ИЛИ, который реализует функцию Y = 7177lv72772, где L, Z2 — импульсные сигналы; 77,, П2— потенциальные сигналы, показана на рис. 2.34, а. Наличие импульса положительной полярности заданной амплитуды отображает лог. 1, а его отсутствие — лог. 0. Низкий уровень потенциального сигнала кодирует лог. 1, высокий уровень — лог. 0. 6- б Рис. 2.34. Потенциально-импульсный элемент И ИЛИ: а — схема; б — временные диаграммы работы В диодно-трансформаторной схеме И ИЛИ диоды VD1 и VD2 выполняют роль ключей: они открываются в том случае, если на аноде действует отпирающий положительный импульс, а на катоде — потенциал земли. При этом к первичной обмотке или W\2 прикладывается импульс напряжения, который трансформируется на выходной обмотке W2 трансформатора Тр (рис. 2.34, б). Резистор 7?ш и диод Дш образуют шунтирующую (демпфирующую) цепь, которая уменьшает выходные после-импульсные колебания. При наличии на потенциальных входах П< и П2 высокого уровня напряжения, диоды VD\ и VD2 закрываются, и первичные обмотки отключаются от импульсов напряжения: на выходе импульсный сигнал отсутствует. 96 Элементы компьютерной схемотехники Схема потенциально-импульсного элемента И ИЛИ с усилителем-формирователем на выходе показана на рис. 2.35. Усилитель-формирователь построен на транзисторе VT1 с импульсным трансформатором Тр2 в электрической цепи коллектора. Рис. 2.35. Элемент И ИЛИ с усилителем-формироеателем Основное назначение усилителя-формирователя состоит в том, чтобы обеспечить выходной сигнал необходимой формы (обычно прямоугольный), амплитуды и длительности. В исходном состоянии транзистор п-р-п типа Р71 закрыт отрицательным напряжением смещения Есм = -1 В, которое подается через обмотку W2 трансформатора Тр1 на базу, ток в электрической цепи коллектора не протекает, и выходной импульс отсутствует. При совпадении импульсного и потенциального сигналов на входах обмоток Wu или Г7|2 (или обеих одновременно) на выходной обмотке трансформатора Тр1 индуцируется напряжение, которое компенсирует запирающее напряжение и открывает транзистор VT\. Потенциал между коллектором и эмиттером насыщенного транзистора близок к нулю, поэтому напряжение источника питания Ucc практически полностью прикладывается к обмотке WK трансформатора Тр2. На выходной обмотке W4 формируется импульс напряжения с постоянной амплитудой Um = = {Ucc Длительность выходного импульса определяется временем заряда эмиттерным током конденсатора Сэдо уровня напряжения, которое закрывает транзистор VT\. Цепь из резистора и диода Дш уменьшает послеимпульсные выбросы во вторичных обмотках трансформаторов. Для повышения надежности и помехоустойчивости цифровых систем используют мажоритарные логические элементы. Мажоритарные элементы, инвертор, константы “0” и “1” создают функционально полную систему логических элементов. Мажоритарный логический элемент имеет непарное количество входов п = 3, 5, 7, ... и один выход, состояние которого определяется по большинству входов. В минимизированной дизъюнктивной нормальной форме мажоритарной функции в каждом произведении имеется т = (и+1)/2 переменных без инверсии. Например, мажоритарная функция для п = 3 имеет вид: М{Х}, Х2, Х3) = Х} Х2 V X Х3 v X, Х3. В 1960 г. была введена операция мажоритарности с символическим изображением #. В этом случае мажоритарная функция на п входов имеет вид: М{Х,, Х2,..., Х„) = X,#х2#х3#...#х„. 2.6. Магнитная схемотехника 97 Наибольшее практическое применение нашли мажоритарные элементы с количеством входов п = 3 (рис. 2.36) реже — с п = 5. Рис. 2.36. Мажоритарные элементы: а — схема на элементах НЕ И; б— условное обозначение; в — строенный мажоритарный элемент типа КР1533ЛПЗ Микросхема КР1533ЛПЗ (рис. 2.36, в) представляет собой три мажоритарных элемента с общим входом стробирования Е. При Е = 0 логическое состояние каждого выхода определяется совпадением единиц на любых двух входах из трех. Если £ = 1, то выходы элементов повторяют состояние третьего входа. 2.6. Магнитная схемотехника 2.6.1. Общая характеристика магнитных схем Магнитные схемы (МС) строят на основе электромагнитной цепи, частью которой является магнитный материал. Их применяют для преобразования, обработки и хранения информации. Для построения МС используют ряд физических явлений: ферромагнитных, магнитно-полупроводниковых, магнитооптических, сверхпроводимости и др. Явление ферромагнетизма характеризуется: • нелинейным характером процесса намагничивания и высокой магнитной проницаемостью; • эффектом магнитного гистерезиса, который используется для хранения информации. К достоинствам МС относят: высокую надежность работы и радиационную стойкость; хранение информации без потребления энергии; высокую температурную стабильность и помехозащищенность. Применяют несколько методов интеграции и миниатюризации МС: • конструктивный (технологический) — переход к интегральной схемотехнике; • функциональный — МС выполняет несколько функций; • физический — в одном и том же ферромагнетике используются различные физические явления, например, магнитные и магнитоакустические. 7-4-I749 98 Элементы компьютерной схемотехники По виду обрабатываемой информации МС подразделяются на аналоговые и цифровые. В магнитной схемотехнике выделяют следующие основные направления: • на кольцевых сердечниках; • на конструкциях со сложным магнитопроводом; • на магнитных доменах и эффекте Джозефсона. Магнитные схемы на кольцевых сердечниках В компьютерной схемотехнике применяют магнитные элементы на ферритовых кольцевых сердечниках. Предельная кривая намагничивания В = /(Я) представляет собой почти прямоугольную петлю гистерезиса (рис. 2.37, а). На этой характеристике используются следующие обозначения: Н — напряжение магнитного поля; В — магнитная индукция; ±В, — остаточная магнитная индукция; Вт — индукция насыщения (максимальное значение), достигаемое в сердечнике под действием импульса напряжения Нт. Простейшим магнитным элементом является кольцевой ферритовый сердечник с информационной, управляющей и выходной обмотками (рис. 2.37, б). Рис. 2.37. Магнитные схемы: а — кривая намагничивания; б, в — магнитные элементы Информационная ИзП и управляющая Исч обмотки служат для записи и считывания информации. Выходная обмотка WB предназначена для получения электрического сигнала, который отображает значение функции элемента. В общем случае количество обмоток, их использование и наименование определяются назначением данного магнитного элемента. Обычно допускается, что положительная остаточная индукция плюс В,, отображает состояние “1”, а отрицательная минус Вг — состояние “0”. Начала обмоток сердечника обозначены точками. Условно считают, что ток считывания 7СЧ, втекающий в начало обмотки 1УСЧ, намагничивает сердечник в состояние “0", а ток записи /зп, вытекающий из начала обмотки РГЗП, перемагничивает сердечник в состояние “1". Намагничивающая сила, действующая в сердечнике, определяется алгебраической суммой ампервитков во всех одновременно действующих обмотках. Поэтому, в зависимости от направления тока и включения обмоток, отдельные составляющие магнитной индукции могут складываться или вычитаться, что расширяет возможно 2.6. Магнитная схемотехника 99 сти использования магнитных элементов. Ток записи и ток считывания должны иметь амплитуду, которая обеспечивает расчетное значение напряжения поля Н,„ и длительность, не меньше времени переключения т сердечника. В процессе перемагничивания сердечника из одного состояния в другое на выходной обмотке WB индуцируется знакопеременный импульс напряжения U,n = = ± Ив5АВ/т, где JFB — количество витков выходной обмотки; А — площадь поперечного сечения сердечника; АВ = 2ВГ + А, где А = В„, - В,.; т — время переключения (рис. 2.37, б). Переключение сердечника в состояние “1” сопровождается индуцированием на выходной обмотке отрицательного импульса напряжения; для его отсечки от нагрузки в выходной цепи включается ограничивающий диод VD1 (рис. 2.37, в). При повторной подаче импульсов записи или считывания магнитная индукция изменяется на А, и на выходе возникают импульсы помехи небольшой амплитуды. К особенностям кодирования информации относится то, что входной электрический сигнал записи преобразуется в магнитную остаточную индукцию и только при считывании вновь преобразуется в электрический сигнал. Наличие положительного импульса на выходной обмотке в момент считывания считается лог. 1, а его отсутствие— лог. 0. Для изображения магнитного элемента используют “зеркальный" метод, при котором сердечник обозначают утолщенной вертикальной линией, обмотки — в виде горизонтальных тонких линий. Ток по входных обмотках протекает слева направо. Способ включения обмоток изображен тонкими наклонными линиями под углом 45°. Входной ток, отражаясь по наклонной линии вверх, переключает сердечник в состояние “1”, а отражаясь вниз — в состояние “0”. На выходной обмотке появление положительного импульса напряжения возникает в момент переключения из состояния “1” в состояние “0” (рис. 2.38). Рис. 2.38. Ферродиодные (а, б) и ферротранзисторные (в) логические элементы В магнитных схемах используют ферродиодные и ферротранзисторные элементы. Функционально полным набором логических элементов на ферродиодных схемах являются дизъюнктор, НЕТ и генератор “1”. Схема дизъюнктора, который реализует функцию F -Xt v X, показана на рис. 2.38, а. Сердечник переключается в состояние “1” в первом такте сигналами Xt или Х2 или одновременно обоими. Выходной сигнал F возникает в выходной обмотке во втором такте при считывании. Схема НЕТ, которая реализует функцию F =Х}Х2 показана на рис. 2.38, б. Информационные входные обмотки включены встречно, поэтому переключение сердечника возможно только при условии Х1 = 1, Х2 = 0. 7* 100 Элементы компьютерной схемотехники Упрощенная схема ферротранзисторного дизъюнктора, в которой с помощью транзистора VTI и коллекторной обмотки И7К образована положительная обратная связь, ускоряющая перемагничивание сердечника из состояния “1” в состояние “0”, показана на рис. 2.38, в. В исходном состоянии транзистор VT1 закрыт, при считывании лог. 1 на базовой обмотке возникает положительный импульс напряжения, который открывает транзистор ИЛ. Ток коллектора создает дополнительный перемагничивающий поток, действующий согласно с потоком обмотки считывания. В результате время переключения сердечника значительно уменьшается. Универсальная магнитная схема для реализации восьми минтермов для трех переменных А7], Х2, X (рис. 2.39) имеет вид: М() = Хх Х2 Х3; Мх = Хх Х2 Х3; М2= Хх Х2 Х3 ; Рис. 2.39. Универсальная магнитна схема Если прошить общим проводом несколько сердечников, то реализуется дизъюнкция минтермов. Для примера в схеме (рис. 2.39) с помощью прошивки реализуются следующие функции: Fx = м0 = Yx ~Х2 Y3; f2 = м2 v л/4 v м2 v мх = х, х2 х3 v хх x^ Y3 v Yx x2 Y3 v Yx Y, X3. Для усиления сигналов в соединениях между магнитными схемами используются интегральные усилители и формирователи тока (серии 146, 169, 170), а также диодные и транзисторные микросборки. 2.6. Магнитная схемотехника 101 2.6.2. Магнитные элементы со сложным магнитопроводом К магнитным элементам со сложным магнитопроводом относятся многоотвер-стные пластины, трансфлюксоры и ряд других. Многоотверстные пластины — это конструкции из феррита, имеющие до ста отверстий диаметром 0,65 мм. На такой пластине может размещаться более 25 RS-триггеров или несколько десятков логических элементов И ИЛИ, НЕ ИЛИ. Трансфлюксор — это ферритовый диск с двумя неодинаковыми отверстиями (рис. 2.40, а), который может находиться в двух состояниях, характеризующихся разным распределением магнитного поля вокруг большого отверстия и отображают лог. 1 (рис. 2.40, б) и лог. 0 (рис. 2.40, в). Характерной особенностью RS-триггера на трансфлюксоре является считывание информации без ее разрушения. Рис. 2.40. Трансфлюксор: а — конструкция; б, е - состояния “1" и “0". Криоэлектронные магнитные элементы Криоэлектронные магнитные элементы строятся на основе сверхпроводимости, при которой электрическое сопротивление ряда металлов и сплавов при их охлаждении скачком падает до нуля — ниже определенной критической температуры Тк. Под действием управляющего магнитного поля с напряженностью выше критической Нк, сверхпроводимость исчезает. Чем больше охлажден материал, тем больше магнитное поле требуется для разрушения сверхпроводимости. Простейший криоэлектронный логический элемент с двумя входами и одними выходом называется криотроном. Конструктивно криотрон выполнен в виде двух тонкопленочных металлических полосок, разделенных диэлектриком и помещенных на сверхпроводящий металлический экран. Полоску для рабочего тока называют вентилем “В”, а для управляющего тока — затвором ”3”. Если затвор помещен поперек вентиля, криотрон называют поперечным (рис. 2.41, а), а если параллельно — продольным (рис. 2.41, б). Рис. 2.41. Криотроны: а — поперечный; б — продольный, в, г — условное обозначение 102 Элементы компьютерной схемотехники При подаче в затвор тока управления, который создает критическое магнитное поле 7/к, вентиль переключается из состояния сверхпроводимости в нормальное омическое состояние, при этом его сопротивление увеличивается в 1012- 1017 раз Сверхпроводящее состояние затвора не меняется, поскольку он выполнен из материала с более высоким значением магнитного поля Нк, чем вентиль. Если рабочий ток вентиля отображает переменную А, а управляющий ток затвора — переменную В, то криотрон выполняет функцию запрета АВ. Включение криотронов для реализации элементарных логических функций переменных показано на рис. 2.42. а б Рис. 2.42. Логические элементы на криотронах: а — И, НЕ И; б — ИЛИ, НЕ ИЛИ В 1962 г. английский физик Б. Джозефсон показал, что сверхпроводимость может возникать в пластинках, разделенных диэлектриком толщиной в несколько нанометров (рис. 2.43, а). При этом происходит туннелирование электронов. Конструкции, называемые туннельными переходами или переключателями Джозефсона (ПД), имеют вольтамперную характеристику, показанную на рис. 2.43, б. a б в Рис. 2.43. Переключатель Джозефсона: а — конструкция перехода; б — вольт-амперная характеристика; в — зависимость /к = f(H, Но) При токе Io < I < /к (участок 7) переключатель находится в состоянии сверхпроводимости. При достижении значения тока 1> 1К (участок 2) сверхпроводимость исчезает и на ПД скачком возникает напряжение А// ~ 3 мВ. Дальнейшее увеличение тока I (участок 3) сопровождается почти линейным ростом напряжения на ПД. Уменьшение тока возможно до минимального значения 70 (участок 4), после чего происходит скачкообразный возврат в состояние сверхпроводимости (участок 1). Такая характеристика с петлей гистерезиса позволяет строить на ПД логические элементы. Например, состоянию сверхпроводимости приписывается значение лог. 0, а его отсутствию, при котором на ПД имеется напряжение, — значение лог. 1. Магнитное поле “сплющивает” петлю гистерезиса в вертикальном направлении (рис. 2.43, в), в результате чего ПД переключается в нормальное состояние (так называемое “включение”) при меньшем токе 7К. Обратное переключение происходит 2.7. Асинхронные и синхронные RS-триггеры 103 или после снятия входных сигналов, или специальным понижением тока ПД ниже уровня 70. Упрощенные схемы логических элементов на ПД показаны на рис. 2.44. а б в Рис. 2.44. Логические элементы на ПД: а — ИЛИ; б — И; в — НЕТ Питание схем — импульсное; ток питания равен 0,32 мА; критический ток — 0,4 мА; управляющий ток — 0,2 мА. Схема ИЛИ включается на входах А или В, а схема И — при совпадении сигналов на входах А и В. Сигнал лог. 1 на выходе элемента НЕТ формируется при условии, что в момент поступления тактового импульса Л = 1 и В = 0. Время переключения ПД составляет пикосекунды, работа переключения равна 10‘6 пДж. Плотность компоновки и степень интеграции криоэлектронных элементов достаточно высокие. К недостаткам криоэлектронных элементов относится сложность обеспечения компактного, экономичного и надежного охлаждения. 2.7. Асинхронные и синхронные RS-триггеры 2.7.1. Определение и назначение триггеров Триггер — это запоминающий элемент с двумя устойчивыми состояниями, изменение которых происходит под действием входных сигналов. Как элемент компьютера, триггер предназначен для хранения одного бита информации, то есть лог. 0 или лог. 1. Схема триггера обеспечивает запись, считывание, стирание и индикацию хранимой двоичной информации. На основе триггеров строят типовые функциональные узлы компьютеров — регистры, счетчики, накапливающие сумматоры, а также микропрограммные автоматы. Все разновидности триггеров представляют собой элементарный автомат, включающий собственно элемент памяти (ЭП) и схему управления (СхУ), которая образует входную логику (рис. 2.45). Состояние триггера определяется сигналами на прямом Q и инверсном Q выходах. При положительном кодировании информации высокий уровень напряжения на прямом выходе отображает значение лог. 1 (состояние Q = 1), а низкий уровень — значение лог. 0 (состояние Q = 0). 104 Элементы компьютерной схемотехники Рис. 2.45. Структура триггера в виде ЭП и СхУ Изменение состояния триггера (его переключение) обеспечивается внешними сигналами и сигналами обратной связи на выходе триггера, поступающие на входы СхУ. Обычно внешние сигналы, как и входы триггера, обозначают латинскими буквами R, S, Т, С, Ии др.. В простейших схемах триггеров отдельная СхУ может отсутствовать. Поскольку функциональные свойства триггеров определяются их СхУ, то названия основных входов переносятся на всю схему триггера. 2.7.2. Классификация триггеров Триггеры классифицируют по следующим признакам: • логике функционирования (RS, JK, D, Т и др.); • способу записи информации (асинхронные и синхронные); • моменту реакции на тактовый сигнал (статические, динамические); • количеству тактов синхронизации (одно-, двух- и трехтактные); • количеству ступеней (одно- или двухступенчатые триггеры); ' • составу логических элементов (триггеры на элементах НЕ И, НЕ ИЛИ, НЕ И ИЛИ и др.). В соответствии с логикой функционирования различают следующие триггеры: • с раздельной установкой состояний “0” и “1” (MS-триггеры); • с одним информационным входом (D-триггеры); • со счетным входом (Т-триггеры); • универсальные с раздельной установкой состояний “0” и “1” (JK-триггеры); • комбинированные (RST-, RSJK-триггеры); • со сложной входной логикой. Входы триггеров разделяются на информационные (R, S, Т и др.) и управляющие (С, V). Информационные (логические) входы предназначены для приема сигналов запоминаемой информации. Названия входных сигналов отождествляют с названиями входов триггера. Управляющие входы служат для управления записью информации. В триггерах может быть два вида управляющих сигналов: синхронизм-рующий (тактовый) сигнал С, поступающий на С-вход (тактовый вход) и разрешаю-щий сигнал V, поступающий на К-вход. По способу записи (приема) информации различают асинхронные и синхрон-ные (тактируемые) триггеры. Триггеры, не имеющие С-входа, называются асинхронными (рис. 2.46, а и б). В асинхронных триггерах запись информации производится в любой момент времени при поступлении сигналов на информационные входы. 2.7. Асинхронные и синхронные RS-триггеры 105 Триггеры, имеющие С-вход, называются синхронными. В синхронном триггере запись информации возможна при совпадении сигналов на информационном и синхронном входах. Этим объясняется более высокая помехоустойчивость синхронных триггеров в сравнении с асинхронными. а бег Рис. 2.46. Условные обозначения триггеров: а, б — асинхронных; е, г — синхронных На К-входы триггера поступают сигналы, которые разрешают (V = 1) или запрещают (Г = 0) запись информации. В синхронных триггерах с К-входом запись информации возможна при совпадении сигналов на информационном, С- и V- входах (рис. 2.46, г). В зависимости от количества тактовых сигналов, необходимых для формирования нового состояния, различают однотактные, двухтактные и многотактные триггеры. По способу управления записью (моменту реакции на тактовый сигнал) выделяют синхронные триггеры со статическим (по уровню), динамическим (по фронтам) и двухступенчатым управлением. В асинхронных триггерах запись нуля и единицы возможна в любой момент времени, при этом входной информационный сигнал одновременно является и управляющим. В синхронных триггерах с управлением по уровню запись информации возможна только в течение длительности тактового сигнала. При этом тактовые сигналы могут быть прямыми (изменяться от нуля к единице) или инверсными (изменяться от единицы к нулю) (рис. 2.47, а и б). Рис. 2.47. Управляющие входы триггера: а — прямой статический; б — инверсный статический; в - прямой динамический; г — инверсный динамический При управлении фронтами разрешение на запись информации дается только в момент перепада тактового сигнала от нуля к единице (прямой динамический вход) или от единицы к нулю (инверсный динамический вход). В другие моменты времени триггер не реагирует на входные информационные сигналы независимо от уровня тактового импульса (рис. 2.47, в и г). 106 Элементы компьютерной схемотехники 2.7.3. Динамические параметры триггеров Для триггеров установлены следующие динамические параметры, измеряемые на уровне половины амплитуды сигналов (рис. 2.48): • минимальная длительность импульса t( на тактовом входе; • минимальное время предварительной установки сигнала на информационном входе /уС1; • время восстановления (фиксации) /вос — минимальное время между нарастанием синхросигнала С и спадом информационного сигнала D; для асинхронных триггеров /впс — просто длительность входного сигнала; • время переключения триггера /пт— временной интервал между фронтом входного переключающего сигнала и фронтом сигнала на выходе Q или Q (который Рис. 2.48. Измерение временных параметров триггеров D-muna позже принимает новое состояние). Минимальная длительность синхросигнала на входе триггера определяется максимальным временем переключения триггера k > /птmax- В двухступенчатом триггере с однотактной синхронизацией время переключения второй ступени определяется по отношению к спаду синхроимпульса. 2.7.4. Таблица переходов и логические уравнения RS-триггера RS-триггером называют запоминающий элемент с раздельными информационными входами для установки его в состояние “0” (Л-вход) и в состояние “1" (5-вход). Название “RS-триггер” образовано от первых букв слов RESET (сброс) и SET (установка). В таблице переходов RS-триггера (табл. 2.8) приняты обозначения: R,, Sb Qt — значения логических переменных в момент времени t на входах R, S и выходе Q, Ql+i — состояние триггера после переключения; К6, К7 — неопределенные коэффициенты на тех наборах, где входные сигналы R, и S, одновременно принимают значение единицы (запрещенная комбинация сигналов). Таблица 2.8 R, 5 0/+I 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 кь 1 1 1 0 I 0 1 0 1 1 К7 0 0 1 00 01 11 10 0 /Г 0 С1__ \D 0 б 0 а 0 0 C£Z 0 0 Рис. 2.49. Карта Карно для RS-триггеров о 2.7. Асинхронные и синхронные RS-триггеры 107 Таблице переходов соответствует карта Карно (рис. 2.49, а), где значения функции Q,+ l для минтермов Rh S„ Qt и Rh St, Qt заменены неопределенными коэффициентами Кь и К-,. Предположив, что комбинации входных сигналов R, S, = 1 не существует, получим карты Карно для К6 = Ку = 1 (рис. 2.49, б) и К6 = Ку = 0 (рис 2.49, в). Из карт Карно получаем логические уравнения асинхронного RS-триггера: А-6=А-7=1, Ql+l =5^^, (2.1) K6 = K7 = 0, Q^R'tS'VQ,). (2.2) Логические выражения (2..1) и (2.2) определяют новое состояние триггера Ql+i в зависимости от старого состояния Q, и входных сигналов R, и S,. В дальнейшем для простоты индекс t в правой части логического выражения опускается. Асинхронный RS-триггер на элементах НЕ И Преобразуем логическое выражение (2.1) к виду, удобному для реализации на элементах НЕ И: QM=SvRQ = SR-Q. (2.3) Схема асинхронного RS-триггера на двух элементах НЕ И с логическими связями на основе выражения (2.3) показана на рис. 2.50, а. Особенностью этого триггера является инверсное управление по информационным входам, что отражается в условном графическом обозначении. Из анализа диаграмм работы RS-триггера следует, что элементы НЕ И в схеме переключаются последовательно. Имеется интервал времени, когда на обоих выходах устанавливаются одинаковые сигналы Q = 1 и Q = 1 (рис. 2.50, в, заштрихованные области) — явление “риск”. Рис. 2.50. Асинхронный RS-триггер на элементах НЕ И: а — схема; б — условное обозначение; е — временные диаграммы Длительность переключения триггера определяется суммой задержек: /пт = 2ГР. Длительность входного сигнала определяется из условия Г, > /Пт На практике для надежности переключения триггера длительность входного импульса увеличивают на одну задержку, то есть г, = 3/р. Максимальная и рабочая частоты переключения триггера соответственно равны_/тах = 1/(2Гр) и fp = 1/(3/р). 108 Элементы компьютерной схемотехники Асинхронный RS-триггер на элементах НЕ ИЛИ Преобразуем логическое выражение (2.2) к виду, удобному для реализации на элементах НЕ ИЛИ: &+1=/?(5v0 = /?v(Sv0. (2.4) Схема асинхронного RS-триггера на двух элементах НЕ ИЛИ с логическими связями на основе выражения (2.4) показана на рис. 2.51, а. Из анализа диаграмм работы RS-триггера следует, что элементы НЕ ИЛИ в схеме переключаются последовательно. Имеется интервал_времени, когда на обоих выходах устанавливаются одинаковые сигналы Q = 0 и Q = 0, — явление “риск” (рис. 2.51, в). Временные параметры данного триггера аналогичны параметрам триггера, изображенного на схеме рис. 2.50, а. Рис. 2.51. Асинхронный RS-триггер на элементах НЕ ИЛИ: а — схема; б — условное обозначение; в — временные диаграммы Синхронный RS-триггер на элементах НЕ И Для построения синхронного RS-триггера на элементах НЕ И следует заменить в логическом выражении (2.3) переменные S и R на сочетания CS и CR, где С — синхросигнал: й+1 = CS CRQ . (2.5) Схема синхронного RS-триггера на четырех элементах НЕ И с логическими связями на основе выражения (2.5) показана на рис. 2.52, а. Элементы D\ и D2 образуют схему управления с прямыми входами, а элементы D3 и D4 образуют фиксатор (асинхронный RS-триггер). При значении сигналов CS = 1 на выходе элемента D1 устанавливается лог. О, и триггер переключается в состояние “1”. При значении сигналов CR = 1 на выходе элемента D2 устанавливается лог. 0. и триггер переключается в состояние “0”. Комбинация входных сигналов CSR = 1 запрещена, поскольку приводит к неопределенному состоянию триггера. Из временной диаграммы (рис. 2.52, б) следует, что время переключения триггера /пт = 3tp, а длительность синхросигнала (с учетом запаса на одну задержку) 2.7. Асинхронные и синхронные RS-триггеры 109 определяется из условия t( = 4гр. Максимальная и рабочая частоты переключения триггера соответственно равны: = 1/Згр и/р = l/4zp. Рис. 2.52. Синхронный RS-триггер на элементах НЕ И: а — схема; б — временные диаграммы Синхронный RS-триггер на элементах НЕ ИЛИ Для построения синхронного RS-триггера на элементах НЕ ИЛИ следует заменить в логическом выражении (2.4) переменные S и R на сочетания CS и CR : 0,+1 =Cflv(CSv0 = Cv2?v(CvSv0. (2.6) Схема синхронного RS-триггера на четырех элементах НЕ ИЛИ с логическими связями на основе выражения (2.6) показана на рис. 2 53. Элементы D\ и D2 составляют схему управления с инверсными входами, а элементы D3 и D4 образуют фиксатор (асинхронный RS-триггер). Рис. 2.53. Синхронный RS-триггер на элементах НЕ ИЛИ: а — схема; б — условное обозначение; в — временные диаграммы При значении сигналов С = 0 и S = 0 на выходе элемента D2 устанавливается лог. £(то есть_С$ = 1), и триггер переключается в состояние “1”. При значении сигналов С = 0 и R = 0 на выходе элемента D1 устанавливается лог. 1 (то есть CR = 1), и 110 Элементы компьютерной схемотехники триггер переключается в состояние “0”. Комбинация сигналов С = S =R = 0 запрещена, так как приводит к неопределенному состоянию триггера. Временные параметры такого триггера аналогичны параметрам триггера, изображенного на схеме рис. 2.52. Двухступенчатые RS-триггеры Двухступенчатые триггеры строятся по способу “М-S” и обеспечивают совмещение двух процессов — одновременной записи новой информации и считывания старой. Во время действия синхроимпульса С первая ступень “М" (Master— основная) принимает новую входную информацию, а вторая ступень “S” (Slave — вспомогательная) в это же время передает во внешние схемы старую информацию. После окончания синхроимпульса С информация из первой ступени переписывается во вторую ступень. При однофазном (однотактном) обмене информацией связь между ступенями реализуется с помощью инвертора (рис. 2.54, а), запрещающих связей (рис. 2.54, б) или разнополярного управления (рис. 2.54, в). При двухтактном обмене связь между ступенями обеспечивается двумя сериями синхросигналов — СТ и С2 (рис. 2.54, г). Рис. 2.54. Организация связи между ступенями триггера: а — с инвертором; б — с запрещающими связями; в — с разнополярным управлением; г — с двухфазным обменом 2.8. Триггеры типов JK, Т, D и DV 2.8.1. Триггеры типа JK Триггером типа JK называется запоминающий элемент с двумя устойчивыми состояниями и информационными входами J (аналог S) и К (аналог R), которые обеспечивают соответственно раздельную установку состояний “1” и “0”. Он функционирует подобно RS-триггеру, однако при совпадении сигналов JK = 1 переключается в противоположное состояние, то есть реализует сложение сигналов по модулю два. Таким образом, JK-триггер не имеет запрещенных комбинаций входных 2.8. Триггеры типов JK, Т, D и DV 111 сигналов. Триггер типа JK является универсальным, поскольку может выполнять функции RS-триггера (при раздельном поступлении сигналов/и К), Т-триггера (при одновременной подаче сигналов J и К), D-триггера (при подаче сигнала от входа J через инвертор на вход К). Изменение состояний JK-триггера приведено в табл. 2.9; с помощью карты Карно (рис. 2.55) получаем следующее уравнение для триггера: 0,+l=^Gv7,-a- (2-7) Таблица 2.9 К, J, Qt+\ 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 0 KJ \ 00 01 И 10 0 Cl_ __D 0 CL_ _D 0 0 Рис. 2.55. Карта Карно для JK-триггера Для построения одноступенчатого синхронного JK-триггера на элементах НЕ И требуется заменить в уравнении (2.7) переменные К и J на сочетания СК и JK, после чего выполнить преобразования на основе правил двойной инверсии и правил де Моргана: Qt+} = C K QvC J Q = C K Q C J Q. (2.8) Схема одноступенчатого JK-триггера с логическими связями на основе уравнения (2.8).показана на рис. 2.56. Рис. 2.56. Одноступенчатый JK-триггер: а — схема; б — условное обозначение В схемотехнике потенциальных триггеров в основном применяют двухступенчатые синхронные JK-триггеры на элементах НЕ И (рис. 2.57). Новая информация снимается с выходов Q* основной /W-стулени, а старая — с выходов Q вспомогательной S-ступени. Из временных диаграмм (рис. 2.57, б) следует: при использовании JK-триггера для хранения информации сигналы на входы J и К подаются поочередно; при совпадении сигналов на входах J и К реализуется счетный триггер (на практике эти входы часто монтажно объединяются). Время переключения JK-триггера определяется суммой задержек первой и второй ступеней и составляет /птт = 7/р. На выходе S-ступени новая информация возникает после спада сигнала С. 112 Элементы компьютерной схемотехники Рис. 2.57. Двухступенчатый JK-триггер на элементах НЕ И: а — схема; б— временные диаграммы; в — условное графическое обозначение 2.8.2. Таблица переходов и логические уравнения Т-триггера Триггером типа Т называется запоминающий элемент с двумя устойчивыми состояниями и одним информационным Т-входом. Состояние Т-триггера изменяется на противоположное после каждого поступления счетного сигнала на Т-вход. Логика функционирования асинхронного счетного триггера представлена таблицей переходов (табл. 2.10) и описывается логическим уравнением Q^TQ^t-q,. (2.9) Таблица 2.10 Т, Qt бг+1 0 0 0 0 1 1 1 0 1 1 1 0 Для построения асинхронного RS-триггера на элементах НЕ И уравнение (2.9) преобразуется к виду, удобному для реализации в заданном элементном базисе: Qt+л =TQvTQ = TQQ-TQ. (2.10) _В уравнении (2.10) для исключения инверсии сигнала Т используется тождество Т • Q = (Т Q) • Q. Переключение триггера определяется совместным действием счетных сигналов “Т” и обратной связи выходов Q и Q. Для исключения “гонок” в триггере сигналы обратной связи не должны изменяться во время действия счетно- го сигнала “7"”. Задержка выходного сигнала может осуществляться линией задерж- ки (в импульсно-потенциальной системе элементов) или дополнительным триггером (в потенциальной системе элементов). Схема одноступенчатого асинхронного Т-триггера на элементах НЕ И с логическими связями согласно уравнению (2.10) показана на рис. 2.58. Сигналы с выходов элементов DI и D2 задерживаются на время Az, что равно длительности счетного сигнала на Рис. 2.58. Схема одноступенчатого Т-триггера Г-входе. 2.В. Триггеры типов JK, T, D и DV 113 Надежные структуры счетных триггеров строят с использованием двухступенчатых триггеров или триггеров с динамическим управлением по фронту сигнала С. 2.8.3. Двухступенчатые Т-триггеры Схема двухступенчатого асинхронного Т-триггера на элементах НЕ И с логическими связями согласно уравнению (2.10) показана на рис. 2.59, а. Рис. 2.59. Асинхронный двухступенчатый Т-триггер: а — схема; б — временные диаграммы работы Асинхронный Т-триггер включает в себя два синхронных RS-триггера, при этом на Т-вход основной ступени додается считаемый сигнал, а входы S и R соединены соответственно с выходами Q и Q вспомогательной ступени. Пусть в начальном состоянии Q* = Q = 0. При поступлении первого счетного импульса происходит совпадение лог. 1 на входе элемента DI (Т = 1, Q = 1), а основной триггер переключается в состояние “1". После окончания входного импульса инвертор в цепи связи между ступенями разрешает перезапись информации во вспомогательный триггер (рис. 2.59, б). После поступления второго импульса триггер переключается в состояние “0”, то есть осуществляется сложение входных сигналов по модулю два. В общем случае, в Т-триггерах с однофазным обменом информацией связь между ступенями реализуется на основе трех основных способов (см. рис. 2.54). В схеме двухступенчатого синхронного Т-триггера переключение “ЛТ-ступени происходит при совпадении считаемого импульса с синхросигналом (рис. 2.60, а). В схеме двухступенчатого синхронного Т\/-триггера переключение происходит при совпадении считаемого импульса с синхросигналом при условии V = 1 (рис. 2.60, б). Рис. 2.60. Синхронные двухступенчатые счетные триггеры: а — типа Т; б — типа TV 8 — 4-1749 114 Элементы компьютерной схемотехники 2.8.4. Таблица переходов и логическое уравнения • D-триггера Триггером типа D называется синхронный запоминающий элемент с двумя устойчивыми состояниями и одним информационным D-входом. Закон функционирования D-триггера описывается логическим уравнением: C2r+i = CtDt. Это уравнение показывает, что после переключения состояние D-триггера повторяет значение сигнала на D-входе в тактовые моменты времени. Поэтому в литературе D-триггеры часто называют триггерами задержки (от Delay — задержка). Схему D-триггера можно построить на основе синхронного RS-триггера, если сигнал по входу S одновременно подавать через инвертор на вход R (рис. 2.61, а). Схемы D-триггера строят также на основе самостоятельного логического уравнения. Преобразуем уравнение (2.5) путем замены сигнала S на D и сигнала R на D: е,+1 ^C^S-'C^RQ = 'C^DC-DQ. (2.11) Схема D-триггера на элементах НЕ И с логическими связями согласно уравнению (2.11) показана на рис. 2.61, б. Рис. 2.61. D-триггер: а — на основе RS-триггера; б — на элементах НЕ И; в — временные диаграммы работы D-триггер “следит” за изменением сигнала на D-входе во время действия синхросигнала С и сохраняет ту информацию, которая имелась в момент его окончания. RS-триггеры таким свойством не обладают и потому они менее помехозащищенные в сравнении с D-триггерами. Для задержки информации в D-триггере на произвольное число тактов используется разрешающий /-вход, как показано штриховой линией на рис. 2.61, б. Если V = 1, то DV-триггер функционирует как обычный триггер задержки; если V = 0, то работа схемы по входам блокируется и DV-триггер сохраняет предыдущую информацию. Схема двухступенчатого однотактного О\/-триггера на элементах НЕ И с запрещающими связями между ступенями показана на рис. 2.62. 2.8.5. D-триггер с динамическим управлением Во всех синхронных триггерах со статическим управлением (по уровню) возможно ложное переключение в случае изменения сигналов на информационных входах во время действия синхросигнала С. Например, если в D-триггере информа- 2.8. Триггеры типов JK, T, D и DV 115 ционный сигнал изменяет свое значение от единицы к нулю до окончания сигнала “С", то триггер может вновь переключиться из единичного в нулевое состояние. Поэтому для надежной работы D-триггера требуется определенный интервал времени между фронтом синхроимпульса С и спадом сигнала на D-входе (параметр /вос). Рис. 2.62. Двухступенчатый DV-триггер: а — схема; б — временные диаграммы В триггерах с динамическим управлением записью информации синхроимпульс С активен лишь на коротком интервале времени в окрестности фронта или спада. Поэтому D-триггеры с динамическим управлением обладают высокой помехоустойчивостью. На практике широкое распространение получили D-триггеры с прямым динамическим управлением по схеме “трех триггеров”. Схема такого D-триггера с прямым динамическим управлением показана на рис. 2.63, а, а его условное графическое изображение — на рис. 2.63, б. Рис. 2.63. D-триггер с динамическим управлением: а - схема; б - условное обозначение; в — временные диаграммы Здесь хранение информации осуществляет основной выходной синхронный RS-триггер (элементы D5 и D6) с инверсным управлением, а прием тактового и информационного сигналов и задание динамического режима работы обеспечивают 8* 116 Элементы компьютерной схемотехники два выходных коммутирующих триггера (элементы Di, D2, D3, D4). Элемент 04 подает инверсное значение входного сигнала О на входы элементов О1 и 03 (рис. 2.63, в). Элемент О1 повторяет значение сигнала О. При С - D - 1 включается элемент D2 и устанавливает основной триггер по входу Si в состояние “1”; одновременно блокируется работа элемента 03, в связи с чем схема уже не реагирует на изменение входного сигнала. При С = 1,0 = 0 включается элемент 03 и устанавливает основной триггер в состояние “0”; одновременно происходит прием новой информации элементом 04. При С = 0 обеспечивается режим хранения записанной информации. Время переключения триггера по С-входу Згр. После окончания сигналов на О- и С-входах начинается этап восстановления, который характеризуется переходом коммутирующих триггеров в исходное состояние за время 3/р. Максимальная частота переключения D-триггера с динамическим управлением определяется суммарным временем задержек/тах = 1/(6/р). На рис. 2.64 показаны схемы ряда триггеров серии КР1533: ТР2 — четыре RS-триггера; ТВ9 — два JK-триггера; ТВ11 — два JK-триггера с общим входом сброса и синхронизации по спаду С; ТМ2 — два D-триггера с динамическим управлением по фронту С. ТВ9 ТВ1Л а б в г Рис. 2.64. Триггеры серии КР-1533: a — ТР2; б — ТВ9; в — ТВ11; г — ТМ2 Микросхемы указанных триггеров характеризуются следующими параметрами: UCc = 5 В; 7сс = 4...5 мА; РСс = 20...25 мВт; время переключения — 15...20 нс. Схема импульсного (динамического) RS-триггера на элементах ИЛИ И с линией задержки (ЛЗ), реализованная на основе уравнения Ql+l =Rl(Sl v Qt)Ct, показана на рис. 2.65, а. Рис. 2.65. Импульсный RS-триггер: a — схема; б— временные диаграммы работы 2.8. Триггеры типов JK, T, D и DV 117 Импульсный триггер устанавливается в состояние лог. 1 сигналами St = 1 и R, =0. После этого в замкнутой цепи схемы триггера циркулируют импульсы с периодом синхронизации Т (рис. 2.65, б). Для сброса триггера подается сигнал R, = 1, после чего схема НЕТ прерывает циркуляцию импульсов. Схема RST’-триггера в потенциально-импульсной системе элементов показана На потенциальные входи вентилей 1 и 4 подаются сигналы обратной связи с инверсного Q и прямого Q выходов статического триггера, а импульсные входы объединяются и образуют 7-вход. Импульсные входы вентилей 2 и 3 образуют S- и R- входы. Схема магнитного RS-триггера, в котором ток Is переключает сердечник в состояние "1”, а ток IR — в состояние “0”, показана на рис. 2.67, а. При считывании состояния “1" на выходе возникает положительный импульс (рис. 2.67, б). Одновременная подача токов Is и IR запрещена. Рис. 2.67. RS-триггер: а — условное обозначение; б— временные диаграммы работы Функция переходов RS-триггера описывается уравнением QM=Stv~RtQt, где индексы t и /+1 определяют состояния входов до и после переключения. Магнитный RS-триггер может реализовать функцию конъюнкции вида: Yl+i=S,R,+it где переменные S, и R, подаются соответственно в первом и втором такте. Увеличением числа обмоток по входам S и R логическая функция схемы расширяется. Согласное включение нескольких обмоток по входам S и R дает функцию п т i=i /=1 118 Элементы компьютерной схемотехники Например, для п = 2, т = 2 получим: Если принять, что в первом такте S, = 1, а во втором такте по нескольким обмоткам Rt+], включенных согласно, поступает т аргументов Х„ а сигнал на выходе схемы снимать в третьем дополнительном такте Rl+2, то реализуется функция НЕ ИЛИ (рис. 2.68, а). Рис. 2.68. Магнитный элемент НЕ ИЛИ: а — схема; б — временные диаграммы работы Например, для т = 3 получим: т = v Xt ; 1 = 1 У,+2 = X, v X, v Х3 = X, X, Х3 . Контрольные вопросы 1. Поясните работу диодных логических элементов ИЛИ, И. 2. Охарактеризуйте свойства логических элементов ТТЛШ. 3. За счет каких факторов достигается сверхвысокое быстродействие логических элементов ЭСЛ? 4. Что такое криотрон? 5. Укажите на отличия между триггерами типов RS, JK, D 1лТ. 6. В каких случаях используют двухступенчатые триггеры? 7. Опишите достоинства элементов на КМОП-структурах. 8. В чем заключаются преимущества синхронных триггеров в сравнении с асинхронными. 9. Поясните, почему JK-триггер называют универсальным. 10. Поясните назначение логических элементов с открытым коллектором. 11. Охарактеризуйте работу логических элементов с тремя состояниями. 12. Какие преимущества имеют логические элементы на основе арсенида галлия в сравнении с кремниевыми схемами? 13. Поясните работу элемента ИЛИ на магнитных схемах. 14. Охарактеризуйте особенности построения потенциальной, импульсной и потенциально-импульсной систем элементов. 3.1. Регистры 119 Глава 3 Последовательностные (накапливающие) узлы компьютерной схемотехники 3.1. Регистры 3.1.1. Общая характеристика регистров Регистром называется типовой функциональный узел компьютера, предназначенный для приема, временного хранения, преобразования и выдачи «-разрядного двоичного слова. Регистр содержит регулярный набор однотипных триггеров, в каждом из которых хранится значение одного двоичного разряда машинного слова. Наиболее часто используют триггеры типов RS, JK\a D (рис. 3.1). Регистры, предназначенные только для приема (записи), хранения и передачи информации, называются элементарными или фиксаторами. Регистры, в которых хранение данных совмещается с микрооперациями сдвига, называются сдвиговыми. Элементарные регистры строят на одноступенчатых триггерах, а сдвиговые — на двухступенчатых или D-триггерах с динамическим управлением. Логическая функция регистра обозначается буквами RG (register). Регистры обеспечивают хранение команд, адресов памяти, результатов операций, индексов и т.д. Регистры классифицируют по следующим признакам: • способу управления записью — асинхронные и синхронные; • способу записи и выдачи двоичных слов — параллельные, последовательные и универсальные; в параллельных регистрах запись и выдача слов производится одновременно всеми разрядами, а в последовательных — разряд за разрядом в направлении от младших разрядов к старшим или наоборот; универсальные регистры обеспечивают как параллельный, так и последовательный обмен информацией; • числу линий для представления значения одного разряда слова (бита информации) — однофазные и парафазные; при однофазном представлении значение каждого разряда слова передается по одной линии связи, а при 120 Последовательностные (накапливающие) узлы компьютерной схемотехники парафазном — по двум линиям (одновременно отображается прямое и инверсное значение разряда); • числу тактов для записи слова — одно-, двух- и многотактные; • составу выполняемых микроопераций — установочные, записи, считывания, поразрядные логические и сдвига, а также преобразования последовательного кода в параллельный и наоборот; • направлению сдвига — односторонние (левый или правый сдвиг) и двухсторонние (реверсивные); • типу используемых триггеров; • элементной структуре — потенциальные, импульсные и потенциальноимпульсные. 3.1.2. Установочные микрооперации. Однофазный и парафазный способ записи информации Установочные микрооперации служат для переключения регистров в определенное состояние. Например, установка регистра в состояние “0” или “1”; установка парных разрядов в состояние “0”, а непарных — в состояние “1”; запись в регистр некоторой константы или обнуление некоторых байтов и т.д. Установочные микрооперации преимущественно используют асинхронные входы регистра, например, вход сброса Л для схемы, изображенной на рис. 3.1. В регистрах на RS- или JK- триггерах возможен однофазный или парафазный способ записи информации. При однофазной записи значение каждого разряда слова А = А„ А,А, ...А} поступает по одной линии связи на вход S (или J) соответствующих триггеров. После считывания записанной информации регистр должен обнулиться по общему Л-входу (рис. 3.2). Таким образом, при однофазной записи частота обмена информацией уменьшается, поскольку процессы ввода и сброса чередуются. При парафазной записи информации значение каждого разряда слова А передается по двум линиям связи. При этом прямое значение А, поступает на вход 5 (или J) соответствующих триггеров, а инверсное значение Д — на вход R (или К). В этом случае не требуется предварительного сброса регистра в состояние “0”, потому что такую функцию выполняет сигнал Д (рис. 3.3). В регистрах на D-триггерах, имеющих один информационный вход, возможен только однофазный способ записи информации. С приходом очередного синхроимпульса записывается новая информация или, при отсутствии данных на входной шине, состояние регистра автоматически обнуляется (см. рис. 3.1). 3.1. Регистры 121 Рис. 3.3. Схема регистра с парафазией записью данных При необходимости сохранения информации на несколько тактов в регистрах на D-триггерах следует использовать разрешающий К-вход, или блокировать прохождение синхроимпульса на С-вход. 3.1.3. Запись информации от двух источников Для записи информации от нескольких источников (направлений) на входе каждого триггера ставят дополнительные комбинационные схемы, образующие входную логику регистра. Каждое направление имеет свою совокупность электрических линий (шину), по которым передаются сигналы, отображающие значения разрядов слова. Если «-разрядное слово передается однофазным кодом, то шина имеет п линий связи, а если парафазным кодом — то 2п линий. Запись каждого слова инициируется соответствующим управляющим сигналом У,, У2 и т.д. Для записи в регистр на RS-триггерах однофазным кодом слов А и В требуется реализовать следующие поразрядные функции возбуждения входа Si=Y}Al\fY2B„ (3.1) где А, и В, — двоичные разряды слов А и В\ У, и У2 — сигналы управления приема слов А и В соответственно. Схема входной логики z-ro разряда регистра на основе уравнения (3.1) показана на рис. 3.4, а. Для записи в регистр на JK-триггерах парафазным кодом слов А и В требуется реализовать следующие поразрядные функции возбуждения входов / i АГ,: J, = YtA,v Y2B,; К/ = YtA,v Y2B,. (3.2) Схема входной логики z-ro разряда регистра на основе уравнений (3.2) показана на рис. 3.4, б. Рис. 3.4. Схемы разряда регистра с записью слов от двух источников: а — однофазным кодом; б — парафазным кодом 122 Последовательностные (накапливающие) узлы компьютерной схемотехники 3.1.4. Считывание информации Информация, хранимая в регистрах, может передаваться во внешние схемы однофазным или парафазным способом в прямом или обратном коде. Для реализации микроопераций считывания к выходам каждого триггера подключаются комбинационные схемы, образующие выходную логику регистра. Схемы выходной логики строятся на основе следующих поразрядных логических уравнений: • для считывания однофазным прямым или обратным кодом ОД= Knp0vyo6a; (3.3) • для считывания парафазным прямым или обратным кодом Ш' = YnpQt v УПР2,; Ш- = Уоб Ql v Уоб2,; (3.4) где Упр и Уоб — управляющие сигналы выдачи соответственно прямого или обратного кода; Q, и Qi — прямое и инверсное значение выхода z-ro разряда регистра; Ш,— разряд однофазной шины данных; Ш,‘ и Ш’ — разряды парафазией шины данных. Очевидно, что управляющие сигналы Упр и Уоб не должны совпадать во времени. Например, при считывании информации парафазным обратным кодом получим: Упр = 0; Уоб = Ш* = Q,. Схемы выходной логики для z-ro разряда на основе уравнений (3.3) и (3.4) показаны на рис. 3.5. Рис. 3.5. Схемы выходной логики i-го разряда регистра для считывания информации: а — однофазным кодом; б — парафазным кодом 3.1.5. Логические микрооперации в регистрах В регистрах могут выполняться следующие поразрядные (без переносов) логические микрооперации над словами А и В: логическое сложение и умножение:' RG1 := AvB; RG1 := АлВ; сложение по модулю два и его отрицание: RG1 := А®В; RG1 ;= А®В; инверсия слова: RG1 : = А . Логические микрооперации предполагают наличие первого слова А в регистре. С учетом этого логическое сложение слов А и В в регистре на RS- или JK-триггерах с однофазной записью выполняется вводом слов В без предварительного сброса. Логическое умножение реализуется подачей инверсных значений разрядов слова В на входы R (или К) триггеров регистра. Действительно, если значение В, = 0, то 3.1. Регистры 123 Bl = 1 и соответственно триггеры обнуляются, что и требуется для поразрядного логического умножения. Микрооперации сложения по модулю два и его отрицания реализуются в регистрах на Т-триггерах. Вначале записывается слово Л а затем без предварительного сброса по счетному входу вводится слово В. После этого на прямых выходах триггеров фиксируется результат операции Q = А ® В, а на инверсных выходах — Q = А ® В. Микрооперация инвертирования состоит в подаче импульса на все Т-входы триггеров регистра, в которых хранится слово Л. В итоге на прямых выходах триггеров устанавливается результат согласно соотношению Q, = А,® 1 = А,. 3.1.6. Микрооперации сдвига Сдвиг — это одновременное пространственное перемещение двоичного слова в разрядной сетке с сохранением порядка следования нулей и единиц. Регистры, предназначенные для выполнения микроопераций сдвига, называются регистрами сдвига или сдвиговыми. Микрооперации сдвига используют в процессе выполнения команд умножения, деления и нормализации. Кроме того, с помощью сдвига осуществляется преобразование параллельного кода в последовательный или наоборот (например, при обмене информацией с магнитными лентами и дисками). Сдвиг слова может выполняться вправо (в сторону младших разрядов) или влево (в сторону старших разрядов). Обозначим одноразрядные микрооперации сдвига вправо и влево символами R и L соответственно. Различают правый и левый арифметический (/?а, Та), логический (/?.,, Ьл) и циклический (7?ц, Ц,) сдвиги слова. Пусть в регистре А записано слово А„ А„_} ...А2 Ah где А} — младший разряд; А,,— старший разряд. Символически микрооперации сдвига записываются следующим образом: • арифметические сдвиги (знаковый разряд не сдвигается): RGA := Ra(A)=A„0A„4 ...А2; RGA :-La(A) = Л„ Ац_2 ...А, 0; • логические сдвиги (одновременно сдвигаются все разряды): RGA := R„(A) = 0 А„А„^ ...А2; RGA := ВЛ(А) = А„ч А„_2 ...А, 0; • циклические сдвиги (между старшим и младшим разрядами имеется кольцевая связь): RGA := RU(A) = А} А„ А„ f ...А2; RGA := LU(A) = А„ t А„_2 ...At А„. Арифметические и циклические сдвиги преимущественно используют при выполнении команд в процессорах, а логические сдвиги обеспечивают преобразование последовательного кода в параллельный и наоборот в устройствах связи с магнитными лентами и дисками. Сдвиговые регистры проектируют на двухступенчатых RS- (или JK-) или D-триггерах с динамическим управлением по фронту. Такие триггеры обеспечивают разделение во время процессов приема новой информации в каждом разряде и выдачи (сдвига) старой. Примем, что в реверсивном регистре должны выполняться параллельная запись слова А по сигналу управления Узп и сдвиги информации влево и вправо под 124 Последовательностные (накапливающие) узлы компьютерной схемотехники воздействием управляющих сигналов Ьл и R,. Функции возбуждения S, и R, для каждого разряда регистра сдвига на двухступенчатых RS-триггерах имеют вид: S; = Y3nAjV R„Qi+]v L„Qi4; R, = Y3n A, v Rn Ql+I v 1Л Q,_,. (3.5) Схема одного разряда регистра сдвига на RS-триггерах согласно уравнениям (3.5) показана на рис. 3.6, а. Экономичная схема разряда регистра, в которой функция на Л-входе триггера образуется инвертированием сигнала S,, показана на рис. 3.6, б. Однако в этом случае время записи данных увеличивается за счет задержки инвертора. Для регистра сдвига на D-триггерах функции возбуждения имеют вид: Д = ГзпЛ^лС,+1^лб,ч. (3.6) Схема разряда регистра сдвига на D-триггерах согласно уравнению (3.6) показана на рис. 3.6, в. Рис. 3.6. Схема разряда регистра сдвига: а — на RS-триггере; б — с инвертором на входе R; в — на D-триггере Пример построения реверсивного трехразрядного регистра сдвига на D-триггерах с динамическим управлением представлен на рис. 3.7. Рис. 3.7. Схема реверсивного регистра сдвига на D-триггерах Реверсивный регистр сдвига работает следующим образом. При значении сигнала Узп = 1 в регистр записывается информация параллельным однофазным кодом. При значении сигнала 7?л = 1 хранимая информация одновременно сдвигается 3.1. Регистры 125 в сторону младших разрядов, при этом разряд Q3 обнуляется. При значении сигнала La = 1 информация в регистре одновременно сдвигается в сторону старших разрядов, при этом разряд обнуляется. Запись и сдвиг информации происходят по фронту синхроимпульса. 3.1.7. Преобразование последовательного кода в параллельный и наоборот Схема четырехразрядного регистра сдвига вправо на JK-триггерах, которая обеспечивает преобразование кодов, показана на рис. 3.8, а. Старший разряд регистра с помощью инвертора на /<-входе работает в режиме D-триггера. Рис. 3.8. Регистр сдвига : а — схема ; 6, в — преобразование последовательного кода в параллельный и наоборот Пусть от накопителей на магнитных дисках или лентах на вход регистра по линии D поступает последовательный код слова А = 1101 в направлении от младших разрядов к старшим. Значение разрядов слова поступает одновременно с синхроимпульсами, которые обеспечивают как прием кода в старший разряд, так и одновременный сдвиг содержимого регистра вправо (рис. 3.8, б). После прихода четырех синхроимпульсов на выходах регистра Qi - 2i устанавливается код 1101. Таким образом осуществляется преобразование последовательного кода в параллельный, часто называемое последовательным вводом слова в регистр. Преобразование параллельного кода в последовательный также выполняется сдвигом хранимого слова. Процесс преобразования параллельного кода слова Л = 1101 в последовательный в направлении от младших разрядов к старшим с помощью сдвига вправо показан на рис. 3.8, в. 3.1.8. Распределители тактов В системах синхронизации и устройствах управления используют распределители тактов (РТ), которые вырабатывают серии импульсов. Простейший способ построения распределителя тактов состоит в делении счетными триггерами частоты прямоугольных импульсов f от задающего генератора (ЗГ). 126 Последовательностные (накапливающие) узлы компьютерной схемотехники На прямом и инверсном выходах триггера с помощью схем совпадения образуются две последовательности импульсов фаз С, = f Q и С2 =/Q (рис. 3.9, а). Длительность такта синхронизации Т( в два раза больше периода следования импульсов ЗГ (рис. 3.9, б). Рис. 3.9. Распределитель тактов: а - схема; б - временные диаграммы Распределители тактов строятся также на кольцевых регистрах, в которых выход младшего разряда соединен с информационным входом старшего, если реализован сдвиг вправо (рис. 3.10, а), или имеется связь от старшего разряда к младшего при сдвиге влево. Кольцевой регистр в качестве распределителя тактов функционирует следующим образом. Вначале через схему ИЛИ в старший разряд Q4 записывается единица. Затем по фронту каждого синхроимпульса единица сдвигается вправо и поочередно появляется на выходах Q3, Q2 и Q}. С приходом четвертого синхроимпульса единица из младшего разряда Q, по кольцевой связи и через схему ИЛИ снова записывается в старший разряд. Число выходов распределителя тактов определяется количеством триггеров кольцевого регистра. В распределителе тактов на основе четырехразрядного кольцевого регистра формируются импульсы фаз С,, С2, С3 и С4, которые образуют машинный такт Т длительностью в четыре периода синхроимпульсов, то есть Т ~ 4 Тс (рис. 3.10, б). 3.1. Регистры 127 Недостатком схемы, изображенной на рис. 3.10, а, является возможность сбоя — появления лишних единиц в разрядах, например, 1100, 1001. В кольцевом регистре с самовосстановлением после сбоя используется схема контроля, которая при неправильной работе автоматически возвращает регистр в исходное состояние. 3.1.9. Регистры в микросхемах серии КР1533 Серия микросхем КР1533 содержит широкий набор регистров. Большинство регистров — восьмиразрядные с третьим состоянием выхода и одно- или двухсторонним сдвигом (рис. 3.11). Микросхема КР1533ИР13 (рис. 3.11, а) — это восьмиразрядный реверсивный сдвиговой регистр. Он имеет входы для параллельной записи данных D0-D7, синхронизации С, последовательного приема DR и DL, задания режимов работы 51, S0 и вход сброса R. Информация считывается с параллельных выходов 00-07. Разряды нумеруются слева направо: QQ — старший разряд, Q7 — младший. a б в Рис. 3.11. Регистры серии КР1533: а — ИР13; 6 — ИР24; в — ИР34 Регистр обеспечивает четыре режима работы: 51-50 = 00 — хранение данных (блокировка); 01 — последовательный прием со сдвигом вправо по входу DR; 10 — последовательный прием со сдвигом влево по входу DL; 11 — параллельная запись по входу D0-D7. Запись и последовательный прием данных осуществляются по фронту синхроимпульса С. Во время записи последовательный ввод данных блокируется. При R = 0 все входы регистра устанавливаются в состояние “0". Микросхема КР1533ИР24 (рис. 3.11, б) — это восьмиразрядный реверсивный сдвиговой регистр с двунаправленными выводами DQ D7 для приема и выдачи информации. Выводы D0-D7 имеют Z-состояния, в которые они переключаются при подаче сигнала лог. 1 хотя бы на один из входов Z1 или Z2. Регистр содержит так- 128 Последовательностные (накапливающие) узлы компьютерной схемотехники же дополнительные выводы DO и D7, которые связаны соответственно со старшим и младшим разрядами, но не имеют Z-состояний. Регистр обеспечивает четыре синхронных режима работы в зависимости от сигналов на входах 51 -SO: 00 — хранение (блокировка); 01 — последовательная запись по входу DR со сдвигом вправо; 10 — последовательная запись по входу DL со сдвигом влево; 11 — параллельный прием данных. Первые три режима реализуются при Z1 =Z2 - 0; при этом информация передается на выводы D0-D7, а четвер-тый режим осуществляется независимо от значений сигналов на выходах Z1 и Z2. Все операции выполняются по фронту сигнала синхронизации С. Регистры ИР13, ИР24 серии КР1533 используют для временного хранения информации, преобразования данных из параллельной формы в последовательную и наоборот. Микросхема КР1533ИР34 (рис. 3.11, в) — это два независимых четырехразрядных регистра с тремя состояниями на выходах О()- Q3. Параллельная запись данных по входам D0-D3 выполняется при сигнале лог. 1 на входе разрешения L; если L_= 0, то регистр переходит в режим хранения. Высокий уровень сигнала на входе Z переключает выходы регистра в третье состояние. Однако при этом в регистр могут записываться новые данные или сохраняться предыдущие. Микросхема обладает большой нагрузочной способностью, что в сочетании с тремя состояниями позволяет использовать регистр в магистральных структурах без дополнительных интерфейсных схем. Мощность потребления регистров ИР13, ИР24 и ИР34 серии КР1533 составляет примерно 200 мВт, а время записи информации — 15-20 нс. 3.2. Счетчики 3.2.1. Общая характеристика счетчиков Счетчиком называется типовой функциональный узел компьютера, предназначенный для счета входных импульсов. Счетчик представляет собой связанную цепочку Т-триггеров, образующих память с заданным числом устойчивых состояний (рис. 3.12). Рис. 3.12. Логическая структура счетчика Разрядность счетчика п равна числу Т-триггеров. Каждый входной импульс изменяет состояние счетчика, которое сохраняется до поступления следующего сигнала. Значения выходов триггеров счетчика Q„, Q„_}, ..., Q} отображают результат счета в принятой системе счисления. Логическая функция счетчика обозначается буквами СТ (counter). Список микроопераций счетчика включает предварительную 3.2. Счетчики 129 установку в начальное состояние, инкремент или декремент хранимого слова, выдачу слов параллельным кодом и др. Входные импульсы могут поступать на счетчик как периодически, так и произвольно распределенными во времени. Амплитуда и длительность счетных импульсов должны удовлетворять техническим требованиям для используемых серий микросхем. Счетчик является одним из основных функциональных узлов компьютера, а также различных цифровых управляющих и информационно-измерительных систем. Основное применение счетчиков: • образование последовательности адресов команд программы (счетчик команд или программный счетчик); • подсчет числа циклов при выполнении операций деления, умножения, сдвига (счетчик циклов); • получение сигналов микроопераций и синхронизации; аналого-цифровые преобразования и построение электронных таймеров (часов реального времени). Счетчик характеризуется модулем и емкостью счета. Модуль счета Ксч определяет число состояний счетчика. Модуль двоичного «-разрядного счетчика выражается целой степенью двойки М = 2"; в счетчиках других типов справедливо неравенство /<сч М. После счета числа импульсов /VI!X = Ксч счетчик возвращается в начальное состояние. Таким образом, модуль счета, который часто называют коэффициентом пересчета, определяет цикл работы счетчика, после которого его состояние повторяется. Поэтому число входных импульсов и состояние счетчика однозначно определены только для первого цикла. Емкость счета 7Vmax определяет максимальное количество входных импульсов, которое может зафиксировать счетчик при одном цикле работы. Емкость счета Nnm = Ксч - 1 при условии, что работа счетчика начинается с нулевого начального состояния. В счетчиках используются три режима работы: управления, накопления и деления. В режиме управления считывание информации производится после каждого входного счетного импульса, например, в счетчике адреса команд. В режиме накопления главным является подсчет заданного числа импульсов либо счет в течение определенного времени. В режиме деления (пересчета) основным является уменьшение частоты поступления импульсов в КСч раз. Большинство счетчиков может работать во всех режимах, однако в специальных счетчиках-делителях состояния в процессе счета могут изменяться в произвольном порядке, что позволяет упростить схему узла. Счетчики классифицируют по следующим признакам: • способу кодирования — позиционные и непозиционные; • модулю счета — двоичные, десятичные, с произвольным постоянным или переменным (программируемым) модулем; • направлению счета — простые (суммирующие, вычитающие) и реверсивные; • способу организации межразрядных связей — с последовательным, сквозным, параллельным и комбинированным переносами (заемом); • типу используемых триггеров — Т, JK, D в счетном режиме; 9 — 4-1749 130 Последовательностные (накапливающие) узлы компьютерной схемотехники • элементному базису — потенциальные, импульсные и потенциальноимпульсные. В счетчиках с позиционным кодированием числовое выражение текущего состояния счетчика определяется формулой: }) v N = ^riQi = r„Ql, + r„^Q„_]+...+ r}Q}, /=1 где г,- — вес z-ro разряда; Q, — значение выхода z-го разряда; п — число разрядов. Нулевое значение всех разрядов обычно принимается за начальное состояние счетчика. Остальные состояния нумеруют по числу поступивших входных импульсов. В счетчиках с непозиционным кодированием (например, в кодах Грея) разряды не имеют постоянных весов и каждом набору состояний Q„, Q,,^, .... Q, приписывается определенное количество входных импульсов. В компьютерах преимущественно используют счетчики с позиционным кодированием. По виду переходов простые счетчики (Сч) подразделяются на суммирующие (прямого счета) и вычитающие (обратного счета). В суммирующих счетчиках каждый прибавляемый импульс if увеличивает состояние на единицу, то есть реализуется микрооперация инкремента Сч := Сч + 1. Граф переходов суммирующего счетчика показан на рис. 3.13, а, где вершины обозначают устойчивые состояния. Из Л/-1-го состояния очередной сигнал if возвращает счетчик в начальное состояние и выдает сигнал переполнения Р. В вычитающих счетчиках каждый вычитаемый импульс 1Г уменьшает состояние на единицу, то есть реализуется микрооперация декремента Сч := Сч - 1. Граф переходов вычитающего счетчика (рис. 3.13, б) характеризуется наличием переходов только в обратном направлении от некоторого (например, Л/-1-го) предварительно установленного состояния. После вычитания М импульсов счетчик выдает сигнал заема Z и возвращается в исходное М-\-е состояние. в Рис. 3.13. Гоафы счетчиков: а — суммирующего; б — вычитающего; в — реверсивного Реверсивные счетчики имеют переходы в прямом и обратном направлениях, что позволяет считать прибавляемые и вычитаемые импульсы (рис. 3.13, в). В процессе счета должно выполняться условие Ylf + Nn > YlT, где 7Vn — предварительно записанное число. По текущему состоянию выходов счетчика определяется результат реверсивного счета: \N = Xlf +Nn ZU- К временным характеристикам счетчиков относятся разрешающая способность, быстродействие и время установления (переключения) кода. 3.2. Счетчики 131 iMii)>i>i..itiii»i.HiiiiwiiiiJii(i»Hi(((oiii(ioiiii«i)UHiiJTO:H):wM)WH'ir;iiiiTiiiMii)i«iiiiiiiiHiii(i>iit»oiitiiiirriiiiiiiiiii>:iict:,iniiiiiini(ii-i ^^Lll»и^.:l^мlrlffiiffilrntll^^',^,*,.•tmi'Hi4iiiri'iiiiiiiiTiiii!"'i‘,,,i...... Разрешающая способность /рс определяется минимальным интервалом времени между двумя входными импульсами, при котором еще сохраняется работоспособность счетчика. Параметр tpL задают временем переключения // первого (младшего) триггера счетчика, то есть /рс = /Л поскольку он переключается под воздействием каждого входного импульса. Быстродействие счетчика определяется максимальной частотою F„, поступления входных импульсов в режиме деления и вычисляется по формуле F„, = l//z Время установления кода /уст отсчитывается от начала входного импульса до момента получения нового состояния. Данный параметр позволяет рассчитать быстродействие счетчика в режиме управления из соотношения FnK = 1/(г,сг + /еч), где t„ — время считывания информации. Межразрядные связи обеспечивают выработку сигналов переноса в старшие разряды при суммировании импульсов и сигналов заема — при вычитании От вида реализации межразрядных связей существенно зависят параметры /уст и F,„K. В счетчиках с последовательными переносами триггеры переключаются поочередно после каждого входного импульса в направлении от младших разрядов к старшим. Такие счетчики называются последовательными или асинхронными. В счетчиках с параллельными переносами триггеры переключаются одновременно после каждого входного импульса, такие счетчики называются параллельными или синхронными. 3.2.2. Двоичные суммирующие и вычитающие счетчики Двоичные счетчики реализуют счет входных импульсов в двоичной системе счисления. Число разрядов п двоичного суммирующего счетчика для заданного модуля М находят из выражения п - log2M Значение текущего числа N* входных импульсов «-разрядного суммирующего счетчика при отсчете с нулевого начального состояния определяют по формуле л^= X2'-1 Q' =2"~' Q"+ 2"2 + -+2° 1=\ где 2'“' — вес z-ro разряда; Q, е {0,1} — логическое значение прямого выхода триггера /-го разряда. Разряды двоичного счетчика строятся на двухступенчатых Г-триггерах или D-триггерах с динамическим управлением по фронту синхросигнала (в счетном режиме). В двоичном суммирующем счетчике перенос Р, в соседний старший разряд Ql+[ возникает в том случае, если в момент поступления очередного счетного импульса !/ все младшие разряды находятся в единичном состоянии, то есть Р, = U* QiQi-i Qi = 1- После выработки переноса старший разряд переключается в состояние “1”, а все младшие разряды — в состояние “0”. Асинхронные суммирующие счетчики на двухступенчатых Т-триггерах строятся так, чтобы входные импульсы if поступали на счетный вход только первого (младшего) разряда. Сигналы переноса передаются асинхронно (последовательно во времени) с прямых выходов младших разрядов на Т-входы соседних старших, как показано на рис. 3.14 для трехразрядного счетчика. Изменение состояний триггеров происходит по спаду счетного импульса для первого разряда, а для остальных — по спаду сигнала переноса (рис. 3.14, б). 9’ 132 Последовательностные (накапливающие) узлы компьютерной схемотехники Рис. 3.14. Асинхронный суммирующий счетчик на двухступенчатых Т-триггерах: а — схема; б — временные диаграммы работы После подсчета семи импульсов на выходе трехразрядного счетчика устанавливается двоичный код gjgzQi = И1 (то есть максимальное значение или емкость счета), После прихода восьмого входного импульса if трехразрядный суммирующий счетчик переключается в исходное нулевое состояние последовательно (асинхронно) во времени: вначале спадает напряжение на выходе Qi, затем — на выходе Q2 и т.д. С помощью импульса по входу сброса R счетчик возвращается в нулевое состояние в любой момент времени. Временные параметры «-разрядного асинхронного счетчика на двухступенчатых триггерах определяются из соотношений: • разрешающая способность /рс = гГ1+ = 2tr, где tTi и tn — время переключения первой и второй ступени триггера, причем = tn = tf, • время установки гус1 = + ntn ~ ntT\ • максимальная частота счета в режиме деления и управления соответственно: Fm = l/2tT;FmK* \/ntT. В режиме управления быстродействие асинхронного счетчика примерно в п раз меньше, чем в режиме деления. Схема трехразрядного асинхронного двоичного суммирующего счетчика на Т-триггерах с динамическим управлением по фронту показана на рис. 3.15. Счетные импульсы If поступают на 7-вход только первого (младшего) разряда; последующие триггеры переключаются асинхронно от сигналов переноса с инверсных выходов соседних младших разрядов. Рис. 3.15. Асинхронный суммирующий счетчик на триггерах с динамическим управлением по фронту: а — схема; б — временные диаграммы работы Временные параметры асинхронного «-разрядного двоичного счетчика на триггерах с динамическим управлением: /рс = tT, /уст = ntT, F„, = l/tT, Fm к ® \/ntT. Достоинством асинхронных счетчиков является простота схемы: увеличение разрядности производится подключением необходимого числа триггеров. К недостаткам асинхронных счетчиков относятся сравнительно низкое быстродействие в 3.2. Счетчики 133 режиме управления и ее зависимость от числа разрядов, а также появление промежуточных выходных двоичных кодов в процессе последовательного переключения триггеров в новое состояние. Для получения минимального времени переключения счетчика используют параллельные переносы (рис. 3.16). Для этого в каждом разряде синхронного счетчика имеется схема совпадения, с помощью которой анализируются состояния всех предыдущих младших триггеров и вырабатываются функции переноса согласно следующим логическим соотношениям: л = trg,; л = стае,; л = л = При поступлении очередного счетного импульса if переключаются только те триггеры, для которых все предыдущие (младшие) разряды находятся в этот момент в единичном состоянии. Время установления синхронного счетчика не зависит от числа разрядов и равна /уст = tri + tP, где Г/7-— время переключения двухступенчатого триггера; t,— время задержки распространения сигнала вентилем в цепи переноса. Максимальная частота счета в режиме управления F,„ ® l/trr. Таким образом, синхронные счетчики обеспечивают наибольшее быстродействие в режиме управления. При построении многоразрядных синхронных счетчиков появляются трудности — рост числа входов вентилей в цепи переноса и увеличение нагрузки на выходы триггеров. В двоичном вычитающем счетчике каждый вычитаемый импульс W уменьшает состояние на единицу. Текущее значение количества входных импульсов «-разрядного двоичного вычитающего счетчика определяется по формуле где К — значение кода на прямых выходах триггеров счетчика; N„ — предварительно записанное начальное число; при этом должно выполняться условие 11Г < Nn. В вычитающих счетчиках сигналы межразрядной связи называются заемами. По правилу двоичного вычитания в момент поступления счетного импульса LT заем из старшего разряда с единичным значением возникает при условии, что все младшие триггеры находятся в нулевом состоянии. После этого все они переключаются в состояние “1”, а старшие — в состояние “0”. Сигналы заема образуются на инверсных выходах двухступенчатых триггеров или на прямых выходах триггеров с динамическим управлением по фронту. Параметры вычитающего счетчика (модуль и емкость счета, быстродействие) совпадают с аналогичными характеристиками суммирующих счетчиков. Схема трехразрядного двоичного асинхронного вычитающего счетчика на двухступенчатых триггерах показана на рис. 3.17, а. 134 Последовательностные (накапливающие) узлы компьютерной схемотехники а б Рис. 3.17. Асинхронный вычитающий счетчик на двухступенчатых триггерах: а — схема; 6 — временные диаграммы работы Перед началом работы с помощью сигнала на общем входе 5 все триггеры счетчика устанавливаются в состояние “1”, образуя выходной код 111. Вычитаемый импульс 1Г поступает на счетный вход только первого младшего разряда, межразрядные сигналы заема снимаются асинхронно с инверсных выходов триггера. После поступления семи вычитаемых импульсов все триггеры счетчика устанавливаются в состояние “0”, образуя выходной код ООО. Восьмой вычитаемый импульс переключает счетчик в состояние 111 (при условии, что рассматривается трехразрядная схема). В вычитающем счетчике на триггерах с динамическим управлением по фронту сигналы заема снимаются с прямых выходов триггеров. 3.2.3. Двоичные реверсивные счетчики Двоичные реверсивные счетчики имеют переходы в двух направлениях: в прямом (при счете суммируемых сигналов if) и в обратном (при счете вычитаемых сигналов 1Г). Текущее значение разности подсчитанных импульсов определяется из соотношения Xlf -1.1Г = N-Nn , где N— значение кода на прямых выходах триггеров счетчика; N„ — предварительно записанное в счетчик начальное число. В процессе счета должно выполняться условие fU Nn+£.lf < 2"-1. Различают одноканальные и двухканальные реверсивные счетчики. В одноканальных реверсивных счетчиках суммируемые if и вычитаемые LT сигналы поочередно поступают на общий счетный вход, а направление счета задается направлением цепей межразрядных переносов или заемов. Для переключения межразрядных связей в одноканальном реверсивном счетчике требуются дополнительные управляющие сигналы. Двухканальные реверсивные счетчики имеют два счетных входы: один для суммируемых импульсов if, другой — для вычитаемых 1Г. Переключение цепей межразрядных связей осуществляется автоматически счетными сигналами: для переносов — импульсами 1Г, для заема — импульсами 1Г. Схема одноканального трехразрядного двоичного реверсивного счетчика показана на рис. 3.18. Межразрядные связи коммутируются с помощью логических элементов И ИЛИ. Для задания направления счета используют дополнительный RS-триггер: с его прямого выхода снимается сигнал управления сложением Усл (включает цепи переноса), а с инверсного выхода — сигнал управления вычитанием Увч (включает 135 цепи заема). На выходах элементов И ИЛИ (которые называются “схемы реверса”) вырабатывается сигнал Т) для счетных входов старших разрядов: Г.-ГдЙУГвё, / = 1,2,3,...,». Рис. 3.18. Схема одноканального реверсивного счетчика Таким образом, если управляющий RS-триггер находится в состоянии “1”, то счетчик реализует режим прямого счета входных импульсов (то есть суммирование), в противном случае — обеспечивает режим обратного счета (вычитание). В обоих режимах работы триггеры переключаются асинхронно. Схема двухканального четырехразрядного двоичного реверсивного счетчика показана на рис. 3.19. Рис. 3.19. Схема двухканального реверсивного счетчика Счетные Г-входы в триггерах внутренне связаны схемой ИЛИ. Суммирующие импульсы if поступают на счетный вход первого (младшего) разряда счетчика и одновременно — на входы всех вентилей в цепи параллельного переноса. При этом формируются импульсы межразрядных переносов на основе логических выражений: f = U+QX; Р2 ~U+QXQ2; Р2 =U+QtQ2Q2; P,=U+QXQ2Q&. Вычитаемые импульсы LT поступают на счетный вход первого разряда счетчика и одновременно на входы всех вентилей в цепи параллельных заемов. При этом 136 Последовательностные (накапливающие) узлы компьютерной схемотехники формируются импульсы межразрядных заемов на основе следующих логических выражений: Z, -L7-Q; Z2 =U-Q&, Z2=IJ-Q£2Q2- Z4 =U~QQ2Q2Q4. Таким образом, в двухканальных реверсивных счетчиках направление счета непосредственно задается суммируемыми if или вычитаемыми IP импульсами. Запрещается одновременное поступления на входы двухканального реверсивного счетчика суммируемых и вычитаемых импульсов. На практике с учетом схемотехнических возможностей микросхем средней степени интеграции многоразрядные реверсивные счетчики строятся в виде групповой структуры. При этом каждая группа представляется, например, микросхемой четырехразрядного реверсивного счетчика с параллельными переносами и заемами. Между группами могут бути образованы последовательные или параллельные связи. Схема 12-разрядного двухканального реверсивного счетчика групповой структуры с последовательными переносами между группами (микросхемы КР1533ИЕ7) показана на рис. 3.20; СТ2 — функция двоичного счетчика. Рис. 3.20. Схема 12-разрядного двухканального реверсивного счетчика с групповой структурой Микросхема КР1533ИЕ7 — это двоичный четырехразрядный реверсивный синхронный счетчик, имеющий следующие режимы работы: • параллельная загрузка начальных данных D3-D0 при L = 0 ; • суммирование импульсов If по входу “+Г; • вычитание импульсов IP по входу “-1”; • сброс в начальное состояние сигналом лог. 1 на Л-входе. Информация считывается с выходов gll-QO счетчика. Суммируемые импульсы if в счетчике с групповой структурой поступают на вход прямого счета “+1” первой младшей группы. Для другой группы сигналы переноса формируются при условии Р = If QiQiQiQo- Вычитаемые импульсы IP поступают на вход обратного счета “-1”. Для второй группы сигналы заема вырабатываются при условии Z = IP Q2Q2QiQ0. Аналогично строятся связи и между старшими группами. Длительность импульсов на счетных входах должна быть не меньше 20 нс, а максимальная частота счета не должна превышать 30 МГц. 137 3.2.4. Двоично-десятичные счетчики Двоично-десятичные счетчики реализуют счет импульсов в десятичной системе счисления, причем каждая десятичная цифра от нуля до девяти кодируется четырехразрядным двоичным кодом (тетрадой), Эти счетчики часто называют десятичными или декадными, поскольку они работают с модулем счета, кратным десяти. Многоразрядный двоично-десятичный счетчик строится на основе регулярной цепочки декад, при этом первая (младшая) декада имеет вес 10°, вторая — 101, третья — 102 и т.д. Декада строится на основе четырехразрядного двоичного счетчика, в котором исключается избыточное число состояний. Исключение лишних шести состояний в декаде достигается многими способами: • предварительной записью числа 6 (двоичный код ОНО); после счета девятого импульса выходной код равен 1111 и десятичный сигнал возвращает счетчик в исходное состояние ОНО. Таким образом, здесь результат счета фиксируется двоичным кодом с избытком 6; • блокировкой переносов: счет импульсов до девяти осуществляется в двоичном коде, после чего включаются логические связи блокировки переносов; с поступлением десятого импульса счетчик заканчивает цикл работы и возвращается в начальное нулевое состояние; • введением обратных связей, которые обеспечивают счет в двоичном коде и принудительное переключение счетчика в нулевое начальное состояние после поступления десятого импульса. Схема синхронного десятичного счетчика с блокировкой переносов показана на Рис. 3.21. Схема десятичного счетчика на JK-триггерах В этой схеме С-входы используются как счетные. С приходом десятого импульса на С-вход младшего разряда JK-триггера обнуляются первый и четвертый разряды и сигналом с выхода блокируют переключения второго и третьего разряда. Схема суммирующего счетчика с обратными связями (один разряд) показана на рис. 3.22. 138 Последовательностные (накапливающие) узлы компьютерной схемотехники Рис. 3.22. Схема десятичного суммирующего счетчика с обратными связями После сброса в нулевое начальное состояние на счетный вход первого триггера поступают суммируемые импульсы if. Сигналы переноса в старшие разряды формируются обычным асинхронным способом. Счет до девяти ведется в двоичном коде. После прихода десятого входного импульса обратная связь на основе схемы совпадения вырабатывает сигнал P = U+Q^Q^Q2QXt который является переносом для старшей декады и одновременно переключает счетчик в нулевое состояние. Далее цикл работы счетчика повторяется. Схема пятиразрядного суммирующего двоично-десятичного счетчика показана на рис. 3.23. 10°=1 10=10 10=100 ioJ=iooo io4=ioooo Рис. 3.23. Схема пятиразрядного суммирующего двоично-десятичного счетчика Модуль данного счетчика составляет Ксч = 105 = 100000, емкость счета N„,ax = Ксч - 1= 99999. Выходы триггеров каждой декады подключаются ко входам дешифраторов, которые обеспечивают визуальную индикацию состояния счетчика с помощью разного рода световых табло. 3.2.5. Счетчики с единичным кодированием При единичном (унитарном) кодировании состояния «-разрядного счетчика различаются только местоположением одной единицы, называемой маркирующим кодом; в других разрядах записаны нули. В отдельных случаях маркирующий код состоит из двух единиц и называется парно-единичным. Счетчик с единичным кодированием — это цепочка триггеров, в которой обеспечивается сдвиг предварительно записанного маркирующего кода по “кольцу” в направлении старших разрядов (прямой счет) или младших (обратный счет). Такие счетчики часто называют кольцевыми (по аналоги с кольцевыми регистрами сдвига). Счетчик с единичным кодированием характеризуется модулем Ксч = п и емкостью счета Nmax = п - 1. Таким образом, число состояний кольцевого счетчика равно его разрядности и существенно меньше в сравнении с другими типами счетчиков. 139 В кольцевых счетчиках каждый разряд имеет вес, равный номеру состояния О, 1, 2,(п - 1). Из состояния (п - 1) после поступления очередного импульса счетчик образует на выходе сигнал окончания цикла (переполнения) и возвращается в начальное состояние с помощью цепи обратной связи с выхода старшего разряда Q„ на вход младшего разряда Qt. Схема четырехразрядного кольцевого счетчика пока- Рис. 3.24. Кольцевой счетчик: а— схема; б— временные диаграммы Перед началом работы по входу D схемы ИЛИ в младший разряд счетчика записывается единица и устанавливается начальный код Q4Q3Q2Q1 = 0001. С поступлением каждого счетного импульса по входу синхронизации единичный код последовательно сдвигается в сторону старших разрядов; при этом младшие разряды, выполненные на D-триггерах с динамическим управлением, обнуляются. После прихода четвертого импульса счетчик возвращается в начальное состояние с помощью сигнала с выхода Q4 на вход схемы ИЛИ. Практическое использование кольцевых счетчиков объясняется следующими его достоинствами: • не требует выходного дешифратора, поскольку все состояния отличаются наличием единицы только в одном каком-либо триггере; • в процессе счета всегда переключается в единичное состояние только один триггер, что обеспечивает минимальное значение />ст; • упрощается построение схемы контроля счетчика. Схема счетчика Джонсона (рис. 3.25) строится на основе кольцевого, в котором обратная связь реализуется подключением инверсного выхода старшего разряда ко входу младшего. Рис. 3.25. Счетчик Джонсона: а— схема; б— временные диаграммы Счетчик Джонсона характеризуется модулем счета Ксч = 2п и емкостью счета Nmm = In - 1. Таким образом, число состояний счетчика Джонсона в два раза больше аналогичного параметра кольцевого счетчика Однако информация на выходах 140 Последовательностные (накапливающие) узлы компьютерной схемотехники счетчика Джонсона представляется не в двоичной позиционной системе счисления, которая требует дополнительного преобразования. Как видно из временных диаграмм (рис. 3.25, б), в процессе счета вначале двигается “волна” единиц, а затем — “волна” нулей. Дешифрация состояний счетчика Джонсона осуществляется проще в сравнении с двоичными позиционными счетчиками. Контрольные вопросы 1. Что такое регистр? 2. Каковы области применения регистров? 3. Сформулируйте признаки классификации регистров. 4. Охарактеризуйте микрооперации, которые может выполнять регистр. 5. Что такое сдвиги? Перечислите основные виды сдвигов. 6. Какие логические операции реализуются в регистрах? 7. Что такое счетчик? 8. Перечислите области применения счетчиков. 9. Сформулируйте признаки классификации счетчиков. 10. Охарактеризуйте два режима работы счетчика: управления и деления. 11. Как можно повысить быстродействие счетчика в режиме управления? 12. Чем отличается двоичный счетчик от десятичного? 13. Какие ограничения накладываются на работу реверсивного счетчика? 14. По каким правилам организуются связи между триггерами суммирующего и вычитающего счетчиков? 15. Каковы особенности работы счетчика на двухступенчатых триггерах в сравнении с D-триггерами с динамическим управлением? 16. Перечислите способы построения счетчиков с произвольным модулем счета. 17. Охарактеризуйте счетчик Джонсона. 4.1. Дешифраторы 141 Глава 4 Комбинационные функциональные узлы компьютерной схемотехники 4.1. Дешифраторы 4.1.1. Общая характеристика дешифраторов Дешифратором называется функциональный узел компьютера, предназначенный для преобразования каждой комбинации входного двоичного кода в управляющий сигнал только на одном из своих выходов. В общем случае дешифратор имеет п однофазных входов (иногда 2п парафазных) и т = 2" выходов, где п — разрядность (длина) дешифрируемого кода. Дешифратор с максимально возможным числом выходов т = 2" называется полным. Функционирование полного дешифратора описывается системой логических выражений вида: Fo = ...ВД,- F, = ХпХ„^...Х2Хх; F„,_\ ...Х2Хх, где Х}, ..., Х„ — входные двоичные переменные; Fo, Fit ..., F,„_| — выходные логические функции, представляющие собой минтермы (конституенты 1) п переменных. Индекс функции F, определяет номер выбранного выхода и соответствует десятичному эквиваленту входного кода. Выход, на котором появляется управляющий сигнал, называется активным. Если значение сигнала на активном выходе отображается лог. 1, то на остальных пассивных выходах устанавливается лог. 0. Двоичный код, включающий всегда только одну единицу, а остальные — нули, называется унитарным. Поэтому дешифратор является преобразователем входного позиционного кода в унитарный выходной код. В дешифраторах в интегральном исполнении состояние активного выхода часто отображается значением лог. 0, а на остальных пассивных выходах устанавливается лог. 1. Функционирование полного дешифратора с инверсными выходами представляется системой вида: Lo = X п v X v ... v 2Г2 v Х}; Lx = X ,,v Х„_, v ... v Х2 v Х}; L т-1 = X „ V X п_} V ... V Х2 V У,, где Lo, L\, ... , Lm_x — выходные логические функции, которые являются макстермами (конституенты 0) п переменных. 142 Комбинационные функциональные узлы компьютерной схемотехники Индекс функции L, определяет номер выбранного выхода и соответствует десятичному эквиваленту входного кода. Между двумя видами выходных функций существует простая связь: Ft = Д. Дешифраторы классифицируют по следующим признакам: • способу структурной организации — одноступенчатые (линейные) и многоступенчатые, в том числе пирамидальные и прямоугольные (матричные); • формату входного кода — двоичные, двоично-десятичные; • разрядности дешифрируемого кода — 2, 3, ..., и; • форме подачи входного кода — с однофазными и парафазными входами; • количеству выходов — полные и неполные дешифраторы; • виду входных стробирующих сигналов — в прямом или инверсном значениях; • типу используемых логических элементов — И, НЕ, ИЛИ, НЕ И, НЕ ИЛИ и т. д. К основным характеристикам дешифратора относят: число ступеней (каскадов) дешифрации, количество используемых логических элементов или микросхем, общее число входов логических элементов, время дешифрации и потребляемую мощность. Условные графические обозначения дешифраторов на электрических схемах показаны на рис. 4.1. а — на функциональных схемах; б, в — на принципиальных схемах Логическая функция дешифратора обозначается буквами DC (decoder). Метки левого дополнительного поля в условном обозначении отображают десятичные веса входных переменных, а метки правого дополнительного поля соответствуют десятичным эквивалентам входных комбинаций двоичных переменных. В схему дешифраторов встраиваются один или два стробирующих (разрешающих) входа, например, W (рис. 4.1, б). С помощью сигнала на входе W определяется момент срабатывания дешифратора; кроме того, вход IV используется для наращивания разрядности входного кода. На практике полный дешифратор на п входов и т выходов для краткости называют дешифратором “из п в т" или “п -> т". Например, дешифратор “из 3 в 8” — активизируется одна из восьми выходных линий. В компьютерах дешифраторы используют для выполнения следующих операций: • дешифрации кода операции, записанного в регистр команд процессора, что обеспечивает выбор требуемой микропрограммы; • преобразования кода адреса операнда в команде в управляющие сигналы выбора заданной ячейки памяти в процессе записи или чтения информации; • обеспечения визуализации на внешних устройствах; 4.1. Дешифраторы 143 • реализации логических операций и построения мультиплексоров и демультиплексоров. Использование дешифраторов для дешифрации кода операции и адреса операнда, размещенных в регистре команд процессора, показано на рис. 4.2. Дешифрация кода операции в устройстве управления (УУ) определяет тип машинной команды. Дешифрация адреса операнда в оперативной памяти (ОП) обеспечивает доступ к указанной ячейке памяти для записи или считывания данных. Рис. 4.2. Иллюстрация использования дешифраторов 4.1.2. Линейные дешифраторы на два входа и четыре выхода В линейном дешифраторе “из п в т" каждая выходная функция F, реализуется полностью отдельным и-входным логическим элементом при использовании пара-фазного входного кода. Логика работы полных дешифраторов на два входа X,, Х2 и четыре прямых выхода Fo, F}, F2, F3 и четыре инверсных выхода Lo, L}, L2, X представлена в табл. 4.1 и 4.2 соответственно. Таблица 4.1 Х2 х. Fo F, f2 F3 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 1 1 0 0 0 1 Таблица 4.2 x2 Xt L0 Lt L2 L3 0 0 0 1 1 1 0 1 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 По данным табл. 4.1 получают систему логических функций в СДНФ: Fo = Х~2 F, = Х~2Х}-, F2=X2Y}; F3=X2X}. (4.1) Для линейного дешифратора со стробирующим входом IV система уравнений (4.1) принимает вид: Fo = JF F,-F2 - Fo -As A', JF (4.2) Схемы линейных дешифраторов на основе уравнений (4.1) и (4.2) показаны на рис. 4.3. В схеме, изображенной на рис. 4.3, б используется однофазный входной код, поскольку инверсии переменных образуются элементами НЕ. Если сигнал на стробирующем входе W = 0, то работа дешифратора блокируется — на всех выходах 144 Комбинационные функциональные узлы компьютерной схемотехники устанавливаются логические нули независимо от значений входных переменных. При W = 1 дешифратор функционирует согласно табл. 4 1. Рис. 4.3. Схемы линейных дешифраторов на элементах И: а — с парафазными входами; б — с однофазными входами и стробированием По данным табл. 4.2 записывается система логических функций в СКНФ: £0 — A?vХ\', L] = Аг v Х1 Ьг = А\ v Ац X. — Х2 v Х}. (4.3) Схема линейного дешифратора с парафазным входным кодом и инверсными выходами, построенная в соответствии с уравнением (4.3) на элементах ИЛИ, показана на рис. 4.4, а. Для линейного дешифратора со стробирующим И/-входом система уравнений (4.3) принимает вид: L-^2v.Yr< L^X^T^W-, (44) L, = Y2 v Хх v W; L3=X}vX\vJ7. Схема линейного дешифратора на основе уравнений (4.4) показана на рис. 4.4, б. Рис. 4.4. Схема линейных дешифраторов на элементах ИЛИ: а — с парафазными входами; б — с однофазными входами и стробированием Здесь используется однофазный входной код, поскольку инверсии переменных образуются элементами НЕ. Если сигнал на стробирующем входе W = 1, то работа дешифратора блокируется — на все/ выходах устанавливаются лог. 1 независимо от значений входных переменных. При W = 0 дешифратор функционирует согласно с табл. 4.2. 4.1. Дешифраторы 145 4.1.3. Пирамидальные дешифраторы В пирамидальном дешифраторе число ступеней на единицу меньше разрядности входного кода, то есть К = п - 1. Во всех ступенях используются только двухвходовые логические элементы. На первой ступени используются линейные дешифраторы на два входа и четыре выхода. Число логических элементов в каждой ступени равно М, = 2'+|, где i = 1,2, ..., к. Это означает, что каждая последующая ступень имеет в два раза больше элементов, чем предыдущая. Выход элемента z-й ступени подключается ко входам только двух элементов (?+1 )-й ступени. Пирамидальная структура для реализации полного дешифратора “из 3 в 8” описывается системой минтермов вида: F, = ...F7=X,X2Xi. Схема пирамидального дешифратора с парафазным входным кодом на три входа и восемь выходов показана на рис.4.5. Рис. 4.5. Схема пирамидального дешифратора на три входа и восемь выходов На первой ступени дешифрируются переменные и Х}, на второй ступени добавляется разряд Хз. При большем числе разрядов дешифрируемого кода, например, п > 10, пирамидальный дешифратор в п/4 раз экономичнее линейного. Основным недостатком пирамидального дешифратора является большое число ступеней, что существенно увеличивает время дешифрации кода. 4.1.4. Прямоугольные дешифраторы Прямоугольный дешифратор строится по двухступенчатой схеме. При этом входной код разбивается на две группы по и/2 разрядов при четном и; при нечетной разрядности группы содержат неравное число переменных. Две группы переменных декодируются на первой ступени двумя полными линейными (возможно и пирамидальными) дешифраторами, а на второй ступени формируются выходные функции 10 — 4-1749 146 Комбинационные функциональные узлы компьютерной схемотехники Усповно считают, что один из дешифраторов первой ступени формирует адреса строк матрицы, а второй — адреса столбцов матрицы. На пересечении линий строк и столбцов подключается т = 2" двухвходовых схем совпадения, которые образуют вторую, выходную ступень дешифратора. При четном п матрица вентилей квадратная, при нечетном п — прямоугольная. Поэтому такие дешифраторы назы-ваются матричными или прямоугольными. Запишем систему выходных функций полного дешифратора “из 4 в 16" в виде следующих сокращенных обозначений: Л.)=Д0^0’ ^8~fl2^0’ ^12=fl3^O’ F5-axb}\ F^a2bx' Fx3 = a3bx- (4.0) F3~rt0F; F6-t2]Z)2; F\o~a2b2, F\A-a3b2\ F3^aob3, Fj - axb3; Ftl=a2b3; FX5=a3b3. где введены двухразрядные функции а, и Ь,, которые реализуются дешифраторами строк и столбцов соответственно: t\=X2Xx, Ьг~Х2Хх, Ь.-Х2Х,', (4 6) «0-ВД; ах-Х4Х3, а2 = Х4Х3, а3=Х4Х3. Схема прямоугольного дешифратора на основе уравнений (4.5) и (4.6) показана на рис 4 6. Рис. 4.6. Схема прямоугольного дешифратора При большом числе разрядов прямоугольный дешифратор почти в и/2 раза экономичнее линейного и в два раза — пирамидального. 4.1.5. Многоступенчатые дешифраторы. Каскадирование дешифраторов Принцип построения многоступенчатых дешифраторов состоит в последовательном разбиении входного многоразрядного кода до получения в каждой группе двух-трех разрядов. В качестве примера на рис. 4.7 показано разбиение дешифри- 4.2. Шифраторы 147 руемого кода для п = 10 и п = 13. После этого многоступенчатая схема дешифратора изображается в виде соединения ряда линейных схем. Рис. 4.7. Разбиение входного дешифрируемого кода на группы: а — при п = 10; б — при п = 13 Под каскадированием (наращиванием) понимают способ соединения дешифраторов в виде микросхем средней степени интеграции для получения большей разрядности входного кода. Соединение двух трехразрядных дешифраторов для декодирования четырехразрядного кода показано на рис. 4.8. Рис. 4.8. Каскадирование дешифраторов Входные переменные Хъ Х2 и Х3 подаются параллельно на входы обоих дешифраторов: переменная Х4 подается непосредственно на вход стробирования W первого дешифратора, через инвертор — на вход стробирования второго дешифратора. Такая каскадная схема работает следующим образом. Если значение старшего разряда входного кода Х4 = 0, то в работу включается первый дешифратор с инверсными восемью выходами Lo, ..., L2, при этом второй дешифратор блокирован (выключен) и на его выходах £8, ..., £,5 устанавливаются высокие уровни. При Х4 = 1 блокируется первый дешифратор и включается в работу вторая микросхема. Таким образом, благодаря наличию стробирующего входа два трехразрядных дешифратора образуют схему дешифрации четырехразрядного кода. 4.2. Шифраторы 4.2.1. Общая характеристика шифратора Шифратором называется функциональный узел компьютера, предназначенный для преобразования входного m-разрядного унитарного кода в выходной n-разрядный двоичный позиционный код. Двоичные шифраторы выполняют функцию, обратную функции дешифратора. При активизации одной из входных линий дешифратора на его выходах формируется код, отображающий номер активного входа. Полный двоичный шифратор имеет т = 2'1 входов и п выходов. Условные графические обозначения шифраторов на схемах показаны на рис. 4.9. 10* 148 Комбинационные функциональные узлы компьютерной схемотехники Рис. 4.9. Условные графические обозначения иифратора: а — на функциональных схемах; б — на принципиальных схемах Функция шифратора обозначается буквами CD (coder). Входы шифратора нумеруются последовательными десятичными цифрами 0, 1, т-1, а метки выходов отображают веса выходных двоичных переменных 1, 2" В цифровых устройствах шифраторы используются для следующих операций: преобразования унитарного входного кода в выходной двоичный позиционный код; ввода десятичных дан ных с клавиатуры; указания старшей единицы в слове; передачи информации между различными устройствами при ограниченном числе линий связи. 4.2.2. Приоритетный шифратор клавиатуры Одно из основных применений шифратора — ввод данных с клавиатуры, например, десятичных цифр. Нажатия клавиши с десятичной цифрой 0, 1, ..., 9 должны приводить к передаче в цифровое устройство двоично-десятичного кода этой цифры. Для этого используется неполный шифратор “из 10 в 4”. Шифраторы, которые при одновременном нажатии нескольких клавиш вырабатывают код только старшей цифры, называются приоритетными. Приоритетные шифраторы, предназначенные для поиска старшей (левой) единицы в слове и формирования на выходе двоичного номера искомого разряда, называются указателями старшей единицы. Их применяют в устройствах нормализации чисел с плавающей запятой, в системах с приоритетным обслуживанием запросов на прерывание работы компьютера. Логика работы приоритетного шифратора на восемь входов представлена в табл. 4.3, где приняты следующие обозначения: Fo, F[,...,F1 — входные инверсные сигналы, записанные в порядке возрастания приоритета: Fo — самый низкий, /ч — самый высокий; _¥3, Х2, ¥, — выходной инверсный позиционный код; W— сигнал стробирования; Р — функция, указывающая на поступление входного сигнала; V — функция, указывающая на отсутствие входных сигналов. Таблица 4.3 W F. F, F, F. F. F2 Fo X. 2G *1 р V 1 X X X X X X X X 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 1 1 1 0 1 0 1 1 1 1 1 1 0 X 1 1 0 0 1 0 1 1 1 1 1 0 X X 1 0 1 0 1 0 1 1 1 1 0 X X X 1 0 0 0 1 0 1 1 1 0 X X X X 0 1 1 0 1 0 1 1 0 X X X X X 0 1 0 0 1 0 1 0 X X X X X X 0 0 1 0 1 0 0 X X X X X X X 0 0 0 0 1 4.2. Шифраторы 149 В табл. 4.3 значения входных переменных справа от диагонали, образованной цифрами 1, не должны определять выходной код (они обозначены крестиком). Это объясняется тем, что сигнал с большим приоритетом блокирует запросы с меньшими приоритетами. Из табл. 4.3 получаем выражения для выходного кода шифратора Х3, Х2, X, и функций V и Р, которые соответственно определяют отсутствие информационных сигналов на всех выходах и наличие сигнала хотя бы на одном входе. Для упрощения выражений используем тождество F, v FlFk = F( v Fk и законы де Моргана: Х2 = W v WY}F3F2 v 17F7F6F5 v HT7F6F4; X} = WvWY}F3F2 v WY,F3Ft v WF2Fb v WF2F3F^ P = WvWY{Y2; V =W vY^Y2WvY{vY2-, Y^F^F^- Y2=F3F2FXFQ. На основе этих выражений построена схема приоритетного шифратора “8 —> 3” (рис. 4.10). Рис. 4.10. Схема приоритетного шифратора “8 —> 3” При W = 1 работа схемы блокируется и независимо от сигналов на входах на инверсных выходах получаем: Х3Х2Х, = 111, Р=1, V -1. Если, например, F6=0 и F2 = 0 , то схема формирует на выходах код номера входа со старшим приоритетом: Х3Х2Хх = 001 или в прямом коде Х3Х2Хх = 1102 = 6|0. Активное состояние выхода 150 Комбинационные функциональные узлы компьютерной схемотехники отображается значениями функций Р =0 и V =1, которые передаются в процессор, а также используются при каскадировании шифраторов. Схема, изображенная на рис. 4.10, является аналогом шифратора К555ИВ1. 4.2.3. Каскадирование шифраторов Каскадирование шифраторов используется для увеличения разрядности входного слова. Схема каскадирования двух восьмивходовых шифраторов К555ИВ1 для приоритетного обслуживания 16-разрядного слова Ft5 -Fo показана на рис. 4.11. Рис. 4.11. Каскадирование двух восьмивходовых приоритетных шифраторов Разряды Fl5 -Fg старшего байта входного слова поступают на первый шифратор CD1, а разряды F7 - Fo младшего байта подаются на второй шифратор CD2. Вход 7^5 имеет наивысший приоритет, a Fo — наинизший. Информационные выходы обоих шифраторов объединяются с помощью логических элементов ИЛИ, образуя трехразрядный инверсный код Z3Z2Zj. Значение старшего разряда Z4 обеспечивается непосредственно сигналом Рг Информация с выходов первого шифратора подается на входы элементов ИЛИ с помощью схем совпадения ЛИ1 при /1= 1 (микросхема CD1 воспринимает входные данные, a CD2 — заблокирована). Информация с выходов второго шифратора подается на входы элементов ИЛИ с помощью схем совпадения ЛИ2 при V2 = 1 (микросхема CD2 воспринимает входные данные, CD\ — блокируется). Схема работает следующим образом: когда на входе имеется активный сигнал из старшего байта входного слова, например, F14 =0 (Р1 = 0 И1 = 1), то работает шифратор CF1 и на выходах элементов ИЛИ формируется инверсный код Z4Z3Z2Zj =0001, что соответствует прямому значению Z4Z3Z2Z, = 1110 = 1410. Если активный входной сигнал относится ко младшему байту слова, например, F6 = 0, то 4.3. Мультиплексоры и демультиплексоры 151 работает шифратор CD2 (Р1 = 1, /1 = 0, V2 = 1) и на инверсных выходах формируется код =1001, что соответствует прямому числу Z4Z3Z,Z, = 01 10 = 6|(|. 4.3. Мультиплексоры и демультиплексоры 4.3.1. Общая характеристика мультиплексоров Мультиплексором называется функциональный узел компьютера, предназначенный для поочередной коммутации (переключения) информации от одного из п входов на общий выход. Номер конкретной входной линии, подключаемой к выходу в каждый такт машинного времени, определяется адресным кодом Ло, Ait А„ ,. Связь между числом информационных и и адресных т входов определяется соотношением п = 2'". Таким образом, мультиплексор реализует управляемую передачу данных от нескольких входных линий в одну выходную. Условное графическое обозначение мультиплексоров показано на рис. 4.12. Функция мультиплексоров записывается буквами MUX (multiplexor). Рис. 4.12. Условное обозначение мультиплексора: а - на функциональных схемах; б - на принципиальных схемах Мультиплексоры применяют для следующих операций: коммутации как отдельных линий, так и групп линий (шин); преобразования параллельного кода в последовательный; реализации логических функций; построения схем сравнения, генераторов кодов. Мультиплексор символически часто обозначают: “л-1”. Логика работы четырехвходового мультиплексора представлена в табл. 4.4, где Ао, А\ — адресный код; Fo, F}, F2, F3 — выходы внутреннего дешифратора; Хо, Xt, Х2, Х2 — входная информация; D — общий информационный выход. Таблица 4.4 Ад Fo f2 F3 D 0 0 1 0 0 0 FoX) 0 1 0 1 0 0 FX 1 0 0 0 1 0 f2x2 1 1 0 0 0 1 FX На основе табл. 4.4. выражение для выходной функции D можно представить с использованием выходов F0~F3 внутреннего дешифратора в виде: D = F(Xo v FjjYj v F2X2 \/ F-..X 3, (4.7) или с минтермами адресного кода: О = А\ Ао v Zj А0Х) v А\ А,.: Х2 \у А, А о Х3. (4 8) Схемы мультиплексоров, соответствующие уравнениям (4.7) и (4.8), показаны на рис. 4.13. 152 Комбинационные функциональные узлы компьютерной схемотехники Рис. 4.13. Схемы мультиплексоров: а — с внутренним дешифратором; б — с адресными минтермами При построения схемы мультиплексоров с внутренним линейным дешифратором требуются логические элементы с меньшим числом входов, однако при этом увеличивается время установления выходного сигнала. При исключении дешифратора быстродействие повышается, однако требуются схемы совпадения с большим числом входов 4.3.2. Каскадирование мультиплексоров В интегральном исполнении мультиплексоры выпускают на четыре, восемь или шестнадцать входов. Каскадирование позволяет реализовать коммутацию произвольного числа входных линий на базе серийных микросхем мультиплексоров меньшей разрядности. Пример построения схемы мультиплексора на 16 входов на основе типовых четырехвходовых мультиплексоров показан на рис. 4.14. Младшие разряды адреса At, Ао подключаются к адресным входам всех мультиплексоров первого уровня, на выходах которых вырабатываются следующие функции: А = № v F\X\ v F2X2 х/ FyXy, D{ —FХа v F\XS v ^2^6 v FyXi', D'2 — FXs v FX> v F-X\ 0 v FyX\ 1 '> D'3 ~ FXn v v ^12^14 v FX\s, 4.3. Мультиплексоры и демультиплексоры 153 где Fo-F3 — выходы внутренних дешифраторов: Fo= А,. ; Ft=A,A0; F2= AtAn; /'.= At А»; .AGs-JVo — входные переменные. Старшие разряды адреса А3, А2 подаются на адресные входы мультиплексора второго уровня, на выходе которого формируется окончательная функция D = Ft; D'o v F; D\ v F,' £>' v F’ D\ , где внутренние выходы дешифратора определяются следующими минтермами: Fo' = А2 А2', F{ = А2 А2; F2 = А3А2; F2 = А3 А2 . Пусть, например, значение адреса А3 А2 А} Ао = 10112 = Ню- При этом функция младшей части адреса принимает значение F3 = At Ао = 1 и на выходах мультиплексоров первого уровня одновременно формируются сигналы D'o = F3 Xlt D' = F,F7, D'2 = F3 A'n, D’3 = F2X\5. Функция старшей части адреса F2 = А3А2 = 1 обеспечивает передачу на выход значение сигнала 1У2, то есть F - F,' D'2 = F'2F2Xw =АъТ2А{АйХи. 4.3.3 Реализация логических функций мультиплексорами С помощью мультиплексоров реализуются логические функции с числом переменных т, равным разрядности адресного кода. Выполняемая функция должна быть представлена в СДНФ. При этом переменные поступают на адресные входы, а информационные входы используются как настроечные — на них подаются константы нуля и единицы в зависимости от реализуемой функции. Выходная функция трехадресного мультиплексора на восемь входов описывается уравнением: F(A) = А., ф А(,Х$ А2 A., Aq Xt v А2 А । AqХ2 \/ А2 A i Aq Х2 v v А2 Д, AqXj v А2 AjAtj Х$ v А2 А । А,, Х<, v А2 А \ Aq Х2. Если требуется получить логическую функцию с десятичными эквивалентами минтермов 1, 3, 5 и 7, то на четные входы Хо, Х2, Х4 и Х6 необходимо подать кон станту “0”, а на нечетные Х\, Хъ, Xs и (рис. 4.15): /1) A, А,АП\/ A7AtAov v А2 A] Aq v А2 А1 Aq. С помощью дополнительных логических преобразований можно реализовать логические функции с числом переменных т+l, то есть на единицу больше разрядности адресного кода мультиплексора. Возможны и другие схемотехнические применения мультиплексоров. Мультиплексор может выполнять функции преобразователя //-разрядного двоичного параллельного кода в последовательный. — константу “1”. В результате получаем Рис. 4.15. Схема мультиплексора для реализации логической функции трех переменных с десятичными эквивалентами минтермов 1,3,5 и 7 154 Комбинационные функциональные узлы компьютерной схемотехники Для этого требуется подать параллельный код на информационные входы мультиплексора и затем изменять код на адреса в необходимой последовательности. 4.3.4 Мультиплексирование шин Мультиплексирование шин — это поочередное переключение шин (групп линий) от нескольких источников информации к одному приемнику. Такие микрооперации реализуются схемами на основе мультиплексоров одиночных линий. При выборе количества и типа мультиплексоров учитывают следующее: • число коммутируемых шин равно 2т, где т — длина адресного кода; • г-й номер входа всех мультиплексоров служит для подключения разрядов определенной одной шины. Схема мультиплексора четырех Ди), К(и), Z(w) и 5(и) шин показана на рис. 4.16. Для ее построения требуется и двухадресных четырехвходовых мультиплексоров, где и — произвольная разрядность коммутируемых шин. Л S2Z2Y2X. .1.1 J, 1 J? *11 Ж Ж -L 1? ,L «L A MUX / W1 Рис. 4.16. Мультиплексор шин 4.3.5. Общая характеристика демультиплексоров Демультиплексором называется функциональный узел компьютера, предназначенный для коммутации (переключения) сигнала с одного информационного входа D на один из и информационных выходов. Номер выхода, на который в каждый такт машинного времени передается значение входного сигнала, определяется адресным кодом Д0,Д|,Д2,...,Л,„_1. Адресные входы т и информационные выходы и связаны соотношением и = 2'" или т = log2n. Демультиплексор выполняет функцию, обратную функции мультиплексора. Применительно к мультиплексорам и демультиплексорам пользуются также термином “селекторы” данных. В условных графических обозначениях (рис. 4.17) функция демультиплексора обозначается буквами DMX. Рис. 4.17. Условные графические обозначения демультиплексоров: а — на функциональных схемах; б — на принципиальных ^хемах; в — типовое соединение с мультиплексором 4.3. Мультиплексоры и демультиплексоры 155 Демультиплексоры используют для следующих операций: • коммутации как отдельных линий, так и многоразрядных шин; • преобразования последовательного кода в параллельный; • реализации логических функций и др. Демультиплексоры часто обозначают: “1 —>п ”. Логика работы двухадресного демультиплексора на языке микроопераций представлена в табл. 4.5, где D — информационный вход; Fo, Ft,F2viF} — выходы внутреннего дешифратора адреса. Таблица 4.5 А, Ад Fo F, Fi F3 х» х, Xi X2 0 0 1 0 0 0 F0D — — — 0 1 0 1 0 0 — FD — — 1 0 0 0 1 0 - - f2d — 1 1 0 0 0 1 - - - F3D По данным табл. 4.5 записываем систему уравнений для информационных выходов: Хо = FaD = Д ДD- X, = F,D = ДАо£); X2=F2D=Ai1<)D;X3=F3D=AiA0D; На основе уравнений (4.9) построены схемы демультиплексоров с внутренним дешифратором (рис. 4.18, а) и с совмещением адресных и входных переменных на трехвходовых элементах И (рис. 4.18, б). Рис. 4.18. Схема демультиплексоров: а — с внутренним дешифратором; б — с совмещением адресных и входных переменных Схема демультиплексора с совмещением адресных и входных переменных обеспечивает высокое быстродействие, однако требует применения логических элементов с большим числом входов. 1 56 Комбинационные функциональные узлы компьютерной схемотехники 4.3.6. Каскадирование демультиплексоров Каскадирование позволяет реализовать коммутацию одного входного сигнала на произвольное число выходных линий на базе серийных микросхем меньшей разрядности. Пусть требуется реализовать демультиплексирование входного сигнала на и выходных линий, определяемых m-разрядным адресным кодом, на базе типовых микросхем меньшей размерности вида “1 -^п”. Для этого следует использовать L = п/п, типовых демультиплексоров с числом адресных входов т\ = log2 щ каждый. Число старших адресных разрядов, равное разности т - mlt используется дополнительным “ведущим” демультиплексором, который располагается в первом уровне схемы каскадирование. Ведущий демультиплексор определяет поочередное включение одного из L микросхем демультиплексоров второго уровня. Каскадирование демультиплексоров вида “1 ->4” для реализации коммутатора “1 —> 16” показано на рис. 4.19. Рис. 4.19. Каскадирование демультиплексоров Пусть для схемы (рис. 4.19) адресный кодЛ^/Мо = ЮЮ и значение входного сигнала 0=1. Тогда на выходе ведущего демультиплексора D2 = A3A2D = 1, а на остальных выходах устанавливаются нулевые значения. Единичное значение сигнала D', передается на выходку ведомого демультиплексора согласно соотношению Х10 = А। А() D2 ~ А3 А2А\ AqD. Демультиплексоры не выпускаются как самостоятельные изделия на интегральных микросхемах. Функцию демультиплексора обычно реализуют на дешифраторах, имеющих входы стробирования (дешифраторы-демультиплексоры). 4.3.7. Демультиплексирование шин Под демультиплексированием шин понимается поочередное переключение групп линий от одного источника информации ко многим приемникам. Такие микрооперации реализуются обычно на основе демультиплексоров одиночных линий. При выборе количества и типа демультиплексоров учитывают: • число коммутируемых шин равно 2т, где т — длина адресного кода; • количество используемых демультиплексоров определяется разрядностью и демультиплексируемых шин; • адресные входы всех мультиплексоров параллельно объединяются. 4.4. Схемы сравнения и контроля 157 Схема демультиплексора входной шины £>(//) на четыре выходные шины Х(п), Y(n), Z(n) и S(„) показана на рис. 4.20 Рис. 4.20. Демультиплексор шин Типовое включение мультиплексоров и демультиплексоров для коммутации входных и выходных шин //-разрядных регистров Л, В, С и D показано на рис. 4 21 Рис. 4.21. Типовая коммутация входных и выходных шин регистров АЛУ В АЛУ такая коммутация обеспечивает использование в качестве первого операнда сумматора содержимого любого регистра и запись результата операции в любой регистр, указанный микропрограммой выполняемой команды. 4.4. Схемы сравнения и контроля 4.4.1. Общая характеристика схем сравнения Схемой сравнения (компаратором) называется функциональный узел компьютера, предназначенный для выработки признаков отношений между двоичными словами (числами). Признаки отношений записываются в виде: F, := А*К или F, rA или F/(*A; F,:=A*B или F, или F(*w, где А и В — двоичные или двоично-десятичные числа; К — двоичная константа; i — номер отношения (часто пропускается); * - операция отношения вида =, #, <, >, <, > и т. д.; F, — функция, задающая результат отношения: лог. 1 — если отношение выполняется, то есть истинно, и лог. 0 — если отношение не выполняется, то есть ложно. Функция компаратора обозначается буквами COMP (comparator) или знаками = =. 158 Комбинационные функциональные узлы компьютерной схемотехники Основными отношениями считаются: “равно” FA.K, “больше” FA>t} и “меньше” FA<I1. Часто схемы, реализующие отношения FA>I} или FA<ji, называют схемами сравнения “на больше” или “на меньше". Располагая основными признаками отношений, можно на их основе получить ряд дополнительных признаков, например: Fa в ~ ^а=в S Fa<b=Fa>h\ FAsB = FA/j v F,tB- Признаки отношения используются как логические условия (осведомительные сигналы) в микропрограммах, командах передачи управления, а также в устройствах контроля и диагностики. После выполнения каждой команды в машине автоматически формируются признаки результатов операции. Эти признаки, называемые флагами (флажками), помещаются в специальный регистр флагов. К флагам обычно относят признаки нулевого результата, переполнения разрядной сетки, знак результата, наличие переносов из старшего разряда сумматора, четное или нечетное число единиц в результате и др. Отметим, что формирование и использование признаков (флажков) — это основное отличие компьютера от калькулятора. Только с помощью флагов машина принимает решение про ход вычислительного процесса, то есть обладает интеллектуальными свойствами. 4.4.2. Схемы сравнения слов с константой Примем, что требуется получить признаки отношений двоичного слова А=А2АtA0 со следующими заданными константами: Ft:=(A=000); F2:=(A=lll) и F3 := (Л<011). На основе табл. 4.6 значения признаков отношения слова А с константами запишутся в виде: F\ ~ Л4Л; f2=a2A\Aq, f2 = a2 (4.10) Схема сравнения слова с константой согласно выражениям (4.10) показана на рис. 4.22. Таблица 4.6 Аг Л1 Ао F, F2 F 0 0 0 1 0 1 0 0 1 0 0 1 0 1 0 0 0 1 0 1 1 0 0 1 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 0 0 1 1 1 0 ' 1 0 4.4.3. Схемы сравнения двоичных слов А и В Многоразрядные двоичные слова равны, когда одновременно попарно равны все их разряды, то есть Л(и) = 5(и), если А, = Bt, i = 1, 2, ..., п. 4.4. Схемы сравнения и контроля 159 На основе табл. 4.7, задающей условие равенства г, двух z-x разрядов А и В, получим: г, = 2,13,4 А1В1 = А,® В, = М, , (4.11) где М, — функция сложения по модулю два (“Исключающее ИЛИ"). Схемная реализация функции (4.11) показана на рис. 4.23. Таблица 4.7 А, В, г, 0 0 1 0 1 0 1 0 0 1 1 1 Рис. 4.23. Элемент “Исключающее ИЛИ": а — схема; б — условное обозначение Признак равенства двух zz-разрядных слов Р4.в определяется логическим произведением поразрядных условий г,: Ъ=в = r„r^t ... = Мп -М^...МХ. (4.12) Схема сравнения двух четырехразрядных слов А и В согласно выражению (4.12) показана на рис. 4.24. Схема включает четыре логических элемента “Исключающее ИЛИ” и один конъюнктор. При большой разрядности сравниваемых слов можно на первом уровне получить при Рис. 4.24. Схема сравнения двух четырехразрядных слов А и В знаки для четырехразрядных групп и на втором уровне реализовать общий флаг логическим умножением групповых признаков. На пример, при разрядности сравниваемых слов и = 16 получим четыре групповых при знака сравнения. ’ 1 4 , г4 5 8 , г, 9 12 . г413 16 ’ ГА = В > Г А=В ’ ГА=В ’ где верхние индексы обозначают номера разрядов в группах. Тогда признак сравнения двух 16-разрядных слов запишется в виде: Z7 - Z714 .//58 .^912 ^13,16 1 Л-Ц ГА=В гА=В ГА=В гА-И Схема сравнения двух 16-разрядных слов показана на рис. 4.25, а. Сравнение может быть реализовано и на других схемотехнических принципах. Схема сравнения двух четырехразрядных чисел А и В на основе дешифратора и мультиплексора показана на рис 4.25, б. Дешифратор вырабатывает единичное значение сигнала на том выходе, номер которого также определяется десятичным эквивалентом входного кода. Например, при А4А3 А2А\ = 0111 логическая единица появится на выходе с номером семь Мультиплексор подключает к выходу тот вход, номер которого также определяется десятичным эквивалентом входной комбина- 160 Комбинационные функциональные узлы компьютерной схемотехники ции. Если В4 В3 В2В, =0111, то разрешается прохождение на выход сигнала с седьмого входа. Таким образом, если слова А и В равны, то формируется флаг FA-K = 1 Л .4, л2 Я, б Рис. 4.25. Схема сравнения двух слов на равенство: а — групповая структура; б — на основе дешифратора и мультиплексора 4.4.4. Схемы сравнения двух слов “на больше” Схема сравнения двух слов А и В “на больше” по абсолютному значению вырабатывает признак FA,B и строится по следующему алгоритму: • анализ неравенства слов Л и В выполняется последовательно в направлении от старших разрядов к младшим; • младшие разряды включаются в анализ в том случае, если старшие разряды равны (эквивалентны), • для получения признака строится дизъюнктивная сумма поразрядных условий. Логика сравнения Таблица 4.8 Я, в, С, Г, 0 0 0 1 0 1 0 0 1 0 1 0 1 1 0 1 разрядов А и В представлена в табл. 4.8, где С, — признак А, >В,; г, — условие подключения к анализу соседних младших разрядов обоих слов. На основе табл. 4.8 получаем такие выражения: С, = Л В,,/; =Л,В, v4B, =Л, ©В, =М, (4.13) С учетом выражения (4 13) и алгоритма анализа функцию признака FA,B представляем в виде' Fa>B ~ G; v rn^n-\ v v rnrn-\ (4.14) Для сравнения двух четырехразрядных слов “на больше” признак неравенства согласно выражению (4.14) представляем следующим образом. 4.4. Схемы сравнения и контроля 161 fa>b = с4 v г4С3 V г4г2С2 V г4г2г2С, = _ _ _--------------------------- (4.15) = А4Ва vМлА3Вз vМлМзА2В2 vМаМзМ2А{В\. Схема сравнения “на больше” двух четырехразрядных слов А и В согласно соотношению (4.15) показана на рис. 4.26. Рис. 4.26. Схема сравнения двух слов “на больше" 4.4.5. Многоразрядные схемы сравнения “на больше” При реализации схем сравнения многоразрядных слов “на больше” возникают технические трудности, связанные с необходимостью использования вентилей с большим количеством входов. Поэтому сравниваемые слова разбиваются на группы, состоящие, например, из четырех разрядов. Каждая группа вырабатывает свой признак неравенства и условие подключения к анализу М\-р младшей группы согласно выражению (4.15) и схеме (рис. 4.26). Например, для п = 16 имеем четыре группы, которые объединяются согласно соотношению fa>b(4.16) где — флаг сравнения “на больше” в самой старшей группе с разрядами А|6-А13, В]6--й,3 и Л/гр = М16М15М}4М[3 — условие для подключения к анализу соседней младшей группы; Р*А>В — флаг сравнения “на больше” в группе с разрядами Л12-Л|9, ВГВР и Л/гр = М{2МпМ[0Мч — условие анализа младшей группы; F2A.B— флаг сравнения “на больше” в группе с разрядами Л8-Л5, Й8-/Л и Л/2гр = = — условие подключения младшей группы; F'a>b — флаг сравнения “на больше” в группе с разрядами Аа-А\, В4-В,. Схема сравнения “на больше” двух 16-разрядных слов А и В на основе уравнения (4.16) показана на рис. 4.27. II .4-1749 * 162 Комбинационные функциональные узлы компьютерной схемотехники Рис. 4.27. Схема сравнения “на больше" двух 16-разрядных слов 4.4.6. Применение компараторов Контроль (обнаружение) и коррекция (исправление) результатов операций является важным условием грамотной эксплуатации машин. Контроль может быть программным или аппаратным. К аппаратным методам относятся дублирование операций и восстановление входных сигналов. Контроль операций сложения методом дублирования реализуется двумя одинаковыми сумматорами (SM), на входы которых одновременно поступают слагаемые Л(п) и В(п). Оба результата ^(/z) и S2(n) поступают на входы схемы сравнения (рис. 4.28, а). a б Рис. 4.28. Применение схемы сравнения для контроля операций 4.4. Схемы сравнения и контроля 163 Если оба результата равны, то на выходе схемы сравнения значение признака /-\1-v2 = 1 и ошибок нет При нулевом значении признака операцию следует повторить или остановить работу ЭВМ. Схема контроля методом восстановления входных сигналов показана на рис. 4.28, б. Двухразрядное слово А2А} декодируется и значение унитарного кода с выходов дешифратора поступает на входы шифратора. При правильной работе дешифратора и шифратора входной код A2At должен совпадать с выходным кодом шифратора В?В> При этом на выходе схемы сравнения установится единичное значение признака При передаче информации из одного регистра в другой контроль правильности пересылки может осуществляться поразрядным сравнением содержимого этих двух регистров. На рис. 4 28, в показан один из вариантов контроля пересылок слов между регистрами После передачи информации из регистра А в регистр В (или наоборот) проводится сравнение их содержимого. Если значения двух слов совпадают, то признак равенства принимает единичное значение, в противном случае — вырабатывается сигнал ошибки. 4.4.7. Общая характеристика схем контроля четности В компьютерах широко используется контроль четности (синоним — по паритету или соответствию). Этот способ основан на допущении, что в двоичном числе чаще всего возникают одиночные ошибки — потеря или появление лишней единицы. В обоиЛ случаях число единиц изменится на одну. Если двоичное число имело нечетное количество единиц, то после одиночной ошибки оно окажется четным и наоборот. На практике контроль четности осуществляется следующим образом Для повышения эффективности контроля двоичное слово разбивается на части, как правило, байты. К каждому байту добавляется дополнительный контрольный разряд Содержимое контрольного разряда зависит от выбранного способа контролю (по четности или нечетности). При контроле по четности значение контрольного разряда выбирается таким, чтобы общее число единиц в байте и контрольном бите было четным. В этом случае значение контрольного (паритетного) бита определяется сложением по модулю два значений разрядов байта (рис. 4 29, а): FK4 = А,® А2® А.® А4® As® Ап® А, ® А,,,. (4.17) Яч 8 7 6 5 4 3 2 1 0 1 0 1 0 1 1 ] 1 1 1 1 1 0 1 1 0 J 0 a ГМ-8 I 7 ! о М О 1 1 1 О О б t— Рис. 4.29. Контроль байта: а — по четности; б — по нечетности В результате операции сложения по модулю два значений разрядов байта с четным числом единиц получаем значение контрольного байта ?’кч - 0. При сложении по модулю два значений разрядов байта с нечетным числом единиц значение контрольного байта FK ч = 1. и* 164 Комбинационные функциональные узлы компьютерной схемотехники При контроле по нечетности значение контрольного бита выбирается из условия, чтобы количество единиц в байте с учетом содержимого контрольного разряда было нечетным. В этом случае значение контрольного бита определяется следующим выражением: fkh=4®4®4®^®4®A®4®4^k4- (4.18) На практике контроль нечетности используется чаще, поскольку он фиксирует полное пропадание информации. Контроль четности (нечетности) предполагает формирование значений контрольных разрядов до выполнения операции и проверку байта после выполнения операции с учетом контрольных разрядов. Например, при записи байта в память компьютера одновременно автоматически формируется (генерируется) значение его контрольного разряда. При считывании хранимого байта осуществляется сложение по модулю два значений его разрядов совместно с контрольным битом согласно принятому способу контролю четности или нечетности. Таким образом, контроль по паритету требует использования дополнительных разрядов. Схемы, которые обеспечивают получение значения контрольного разряда и проверку двоичного числа по признаку четности или нечетности, называются схемами контроля четности. Их часто называют схемами свертки, схемами контроля по модулю два, схемами контроля по паритету. Для получения условия четности (4.17) требуется сложение по модулю два восьмиразрядного слова, что реализуется с помощью ступенчатого включения двухвходовых элементов “Исключающее ИЛИ”: • на первом уровне получают функции F\ - F4: ^|=Л|Фу42; F2=43©t44; F3 = А5®А6; F4 = А7®А$; (4.19) • на втором и третьем уровнях реализуются функции: F5 = Fi®F2; F6 = F3®F4; М = Fs®Fb. (4.20) Функция М согласно выражениям (4.19) и (4.20) принимает значение лог. 1 при нечетном числе единиц во входном байте и значение лог. 0 — при четном числе единиц во входном байте. Для задания признака контроля вводится управляющий сигнал F, который вместе с сигналом Мпоступает на входы схемы “Исключающее ИЛИ” в четвертом уровне. На прямом и инверсном выходах этого уровня формируются прямое и инверсное значения контрольного разряда: F = M®V; F = M®F. Логика работы схемы контроля, показанной на рис. 4.30, а, представлена в табл. 4.9. Таблица 4.9 Входы А8- А। V F F На входах: Четное число единиц 0 0 1 Нечетное число единиц 0 1 0 На входах: Четное число единиц 1 1 0 Нечетное число единиц 1 0 1 4.4. Схемы сравнения и контроля 165 а б Рис. 4.30. Схемы контроля по четности: a — ступенчатое включение элемента "Исключающее ИЛИ"; б — условное обозначение Из табл. 4.9 видно, что при V = 0 на выходе F генерируется значение контрольного разряда для контроля четности, при V = 1 на выходе F генерируется значение контрольного разряда для контроля нечетности. Пример схемы контроля нечетности пересылок байта от источника информации (ИИ) к приемнику информации (ПИ) показан на рис. 4.31. Рис. 4.31. Контроль пересылок байта Схема контроля на стороне источника информации выступает как генератор значения контрольного разряда нечетности Fm. Схема контроля на стороне приемника информации обеспечивает сложение по модулю два значений разрядов принятого байта совместно с принятым контрольным битом нечетности. Прием информации возможен только при выполнении условия нечетности Гпи = 1 на стороне приемника. 166 Комбинационные функциональные узлы компьютерной схемотехники 4.5. Преобразователи кодов 4.5.1. Общая характеристика преобразователей кодов Преобразователем кода называется функциональный узел компьютера, предназначенный для преобразования двоичного кода из одной формы в другую. Для представления информации используют разнообразные двоичные и двоично-десятичные коды, прямой, обратный, дополнительный и их модификации, циклический с избытком три и др. Существует множество кодов, которые обеспечивают. • простоту выполнения арифметико-логических операций; • удобство перевода чисел из десятичной системы в двоичный код, • надежность выполнения заданных алгоритмов функционирования и эффективный контроль результатов вычислений, ® уменьшение аппаратных затрат при построении цифровых устройств. Наиболее распространенными являются прямой, обратный и дополнительный коды, которые обеспечивают представление знака числа и замену операции вычитания сложением (табл. 4.10). К преобразователям кода относятся шифраторы и дешифраторы, однако по традиции эти функциональные узлы выделены в отдельные самостоятельные классы Таблица 4.10 Коды тля положительных чисел Коды для отрицательных чисел десятичный -'0 прямой обратный дополнительный десятичный прямой обратный дополнительный 0.000 0,000 0,000 0 1,000 1,111 0,000 • 1 0,001 0,001 0,001 -1 1,001 1,110 1,111 4-2 ___ 0,010 0,010 0,010 -2 1,010 1,101 1,110 0,011 0,011 0.011 -3 1,011 1,100 1,101 +4 и, 100 0,100 0,100 —4 1,100 1,011 1,100 0,101 0,101 0,101 -5 1,101 1,010 1,011 4 6 >,110 0,110 0,110 -6 1,110 1,001 1,010 7 7 0,111 0,111 0,111 -7 1,111 1,000 1,001 Прямой, обратный и дополнительный коды используются для записи знака числа, замены операции вычитания чисел сложением их кодов, а также для определения переполнения разрядной сетки. Для представления знака числа в них отводится знаковый разряд, который располагается слева от числа и отделяется запятой В знаковый разряд записывается нуль — для положительного числа и единица — для отрицательного. 4.5.2. Преобразователь прямого кода в обратный В прямом двоичном коде А’ПР - АЛЗН А7,,^, ..., Х{ один разряд, обычно старший, отображает знак числа, остальные — значение цифровых разрядов; при этом для положительного числа Адн = 0, а для отрицательного Хзн - 1. Обратный код положи 4.5. Преобразователи кодов 167 тельного двоичного числа совпадает с прямым кодом, а для отрицательного числа цифровые разряды прямого кода инвертируются. В процессе преобразования прямого кода в обратный значение знакового разряда Jf3H используется в качестве управляющего сигнала, который обеспечивает получение следующего выражения: Yi = X3UXt v Хзн - Хзн © Xt , (4.21) где Yt — значение z-ro разряда обратного кода; Х,— значение z-ro разряда положительного входного числа (Хзн = 0); X,— значение z-ro разряда отрицательного входного числа (Хзн = 1). Схема пятиразрядного преобразователя прямого кода в обратный, построенная на элементах “Исключающее ИЛИ” соответственно выражению (4.21), показана на рис. 4.32. Рис. 4.32. Схема преобразователя прямого кода в обратный 4.5.3. Преобразователь прямого кода в дополнительный Дополнительный код положительного двоичного числа совпадает с его прямым и обратным кодами. Дополнительный код отрицательного двоичного числа образуется из его обратного кода добавлением к младшему разряду единицы. Таким образом, операция преобразования прямого кода в дополнительный не является поразрядной и выполняется значительно сложнее, чем получение обратного кода. Соответствие между прямым и дополнительным кодами на примере четырех цифровых разрядов (беззнаковых) представлено в табл. 4.11. Таблица 4.11 Прямой код Дополнительный код Прямой код Дополнительный код х4 X Х2 Xt y4 Уз Уг У, х4 Хз Хг X, У< Уз Уг у. 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 1 0 1 1 1 0 0 1 0 1 1 1 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 0 1 1 0 1 1 0 1 0 1 0 1 0 0 1 1 0 0 1 1 0 0 0 1 0 0 0 1 0 1 1 0 1 1 1 1 0 1 0 0 1 1 0 1 1 0 1 0 1 0 1 1 1 0 0 0 1 0 0 1 1 1 1 0 0 1 1 1 1 1 0 0 0 1 Знаковый разряд прямого кода используется в качестве управляющего сигнала: если Хзн = 0, то выходной код повторяет значение входного; при Jf3H = 1 реализуется преобразование согласно табл. 4.11. Карта Карно, соответствующая табл. 4.11, для получения минимальных форм функций преобразования прямого кода в дополнительный показана на рис. 4.33. 168 Комбинационные функциональные узлы компьютерной схемотехники Рис. 4.33. Карта Карно для функций преобразователя прямого кода в дополнительный: a— Y1;6— Y3; в— Y3;e — Y4 На основе карт Карно с учетом знакового разряда прямого кода для функций У,, Yi, У3, У4, представляющих выходы преобразователя, получаем: ^зн ~ ^зн; = -^i; У2 = ^2 ® Хзн; У3-ЛЛз©(Х2 V Y4=X4®(X3v Х2 vX{)X3li. В общем виде для У, справедливо уравнение: Y, = Xt Ф v Xt2 v... v X.) Хзн. (4.23) Схема преобразователя прямого кода в дополнительный на основе выражений (4.22) и (4.23) показана на рис. 4.34, а. Данный преобразователь характеризуется высоким быстродействием. Время установления выходного кода определяется тремя задержками распространения сигнала, однако по мере возрастания номера разряда линейно возрастает и требуемое число входов используемых элементов ИЛИ. a б Рис. 4.34. Схемы преобразователей прямого кода е дополнительный Второй вариант схемы преобразователя (рис. 4.34, б) использует только двухвходовые элементы ИЛИ, при этом дизъюнктивная сумма переменных образуется последовательным способом. В такой реализации схема преобразователя упрощается, однако время установления выходного кода существенно увеличивается. Практическое правило получения дополнительного кода состоит в том, что справа от первой единицы (учитывая и саму единицу) в прямом коде числа значения разрядов — неизменны, а слева от единицы (кроме знакового) — инвертируются. Например, для прямого кода 10100100 дополнительным будет код 11011100. Для преобразования в дополнительный код многоразрядных двоичных чисел часто используют перевод числа в обратный код с последующим прибавлением единицы к его младшему разряду с помощью сумматора. 4.5. Преобразователи кодов 169 4.5.4. Преобразователь двоичных чисел в код Грея Код Грея образован последовательностью двоичных чисел, в которых два любых соседних числа отличаются только одним разрядом (табл. 4.12). Первое и последнее число считаются соседними. Код Грея, называемый также цикличным, относится к невзвешенным двоичным кодам. К достоинствам кода Грея относят: удобство кодирования угловых перемещений; простота кодирующей логики; сокращение времени преобразования в связи с изменением значения только одного разряда; высокая эффективность защиты от сбоев. Недостатками кода Грея являются затруднения при выполнении арифметических операций и цифро-аналоговых преобразований. Поэтому при необходимости код Г рея преобразуют в двоичный код. Таблица 4.12 х4 х. Хг X, Л !з h /| Х4 Х3 Х1 х, Л h h 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 0 1 0 0 0 1 1 0 0 1 1 1 0 1 0 0 1 0 0 0 1 1 1 0 1 0 1 1 1 1 0 0 1 1 0 0 1 0 0 0 1 1 1 1 1 0 0 1 0 0 0 1 1 0 1 1 0 0 1 0 1 0 0 1 0 1 0 1 1 1 1 1 0 1 1 0 1 1 0 1 1 0 0 1 0 1 1 1 1 0 1 0 0 1 0 1 1 1 0 1 0 0 1 1 1 1 1 0 0 0 По данным табл. 4.12 в клетки карт Карно (рис. 4.35) внесены значения разрядов Ц кода Г рея. Рис. 4.35. Карта Карно для кода Грея: а — Л, б — 12, в —13, г —14 С помощью карт Карно получаем следующие выражения для разрядов кода Грея: 1Х = Х2ХЛ v Х2Хх = Хх ®Х2; I2=X3X2vX3X2 = Х2 © Х3. (4.24) 13 = ^Х4Х3 = Х3 ®Х4; 14 =Х4. Схема преобразователя прямого кода в код Грея на основе соотношений (4.24) показана на рис. 4.36. По аналогичной методике, используя табл. 4.12 и новые заполнения карт Карно, получаем обратное преобразование кода Грея в прямой код: Хх =1Х ®12®13®14, Х2=12®13®14, Х3=13®14, Х4—14. (4.25) 170 Комбинационные функциональные узлы компьютерной схемотехники Схема преобразования кода Грея в прямой код на основе соотношений (4.25) показана на рис. 4.37. Рис. 4.36. Преобразователь прямого кода в код Грея Рис. 4.37. Преобразователь кода Грея в прямой код 4.5.5. Преобразователь двоично-десятичных чисел в код семисегментного индикатора Визуальное отображение двоично-десятичных чисел часто выполняется с помощью семисегментных индикаторов на основе электролюминисцентных приборов, жидких кристаллов или светодиодных матриц. Количество семисегментных индикаторов определяется разрядностью чисел, отображаемых на световом табло — обычно шесть и белее десятичных цифр. Выводимый из компьютера десятичный код отображаемой цифры поступает на вход двоично-десятичного преобразователя, выходы которого а, Ь, с, ..., g подключаются к соответствующим сегментам индикатора (рис. 4.38, а). Рис. 4.38. Подключение преобразователя к индикатору (а) и отображение цифр (б) Единичное значение выходного сигнала преобразователя вызывает свечение сегмента, подключенного к этому выходу. Комбинации единичных сигналов на выходах преобразователя образуют изображение десятичной цифры в своем разряде (рис. 4.38, б). 4.5. Преобразователи кодов 171 Соответствие между двоично-десятичным числом и необходимыми для отображения десятичной цифры наборами сегментов представлено в табл. 4 13. Таблица 4.13 ' х4 Ху Хг х, a ь с d е / к Х4 Ху хг X. a h с d е / А' 0 0 0 0 1 1 1 1 1 1 0 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 0 1 1 0 0 0 0 0 1 1 0 1 0 1 1 1 1 1 0 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 1 1 0 0 0 1 1 1 1 1 1 1 0 1 0 0 0 1 1 0 0 1 1 1 0 0 1 1 1 1 1 0 1 1 На основе данных табл. 4.13 и после их минимизации с помощью карт Карно получаем систему логических уравнений для сегментов преобразователей кодов: a ~ Х2 v X, v X, Х3 v X, Х3; b = X}X2v Х'Х2 v Х3 V X.; с - Х{ v Х2 v Х3 v Х4; d = Х{Х2 v Х2Х3 v X,Х3 v Х,Х2Х3 v Х4; e = XtX2 vX,J3; f = Х{Х2 v XtX3 v Х2Х3 v Az4; g = X,X2v X,X3 v X2X, v X4 Схема преобразователя двоично-десятичного кода в управляющие сигналы семисегментного индикатора локазана на рис 4 39. Рис. 4.39. Схема преобразователя кода “8421" в код семисегментного индикатора (для выходов а, Ь, с) 4.5.6. Двоично-десятичные преобразователи В компьютерах широко используется двоично-десятичное кодирование, в котором каждая десятичная цифра изображается четырехразрядным двоичным кодом, то есть тетрадой двоичных символов. Количество различных двоично-десятичных кодов определяется числом возможных комбинаций по десять из 16 комбинаций, которые допускаются тетрадой Десятичные числа могут представляться в коде “с избытком 3”, в коде с весом “5421" или “2421” (код Айкена) и др. Наиболее распространенным является код прямого замещения “8421”, в котором каждая десятичная цифра 0, 1, ..,9 заменяется ее двоичным эквивалентом 0000, 0001, ..., 1001. Такой код называют также взвешенным Д-кодом. Например, 172 Комбинационные функциональные узлы компьютерной схемотехники число 72910 в двоично-десятичном коде записывается в виде трех тетрад: 0111001010012-ю Для Д-кодов разработаны машинные алгоритмы операций сложения, вычитания, умножения, деления и других. Операции над десятичными числами (десятичная арифметика) входят в состав команд компьютеров различных классов. Особенностью Д-кодов является наличие десяти разрешенных и шести запрещенных комбинаций двоичных символов в тетраде. Появление запрещенной комбинации при выполнении операций над числами свидетельствует о возникновении ошибки или же о необходимости коррекции результата. В разрядной сетке машины двоично-десятичные коды представляются в форме с плавающей или фиксированной запятой. При этом отрицательные числа отображаются в прямом, обратном или дополнительном кодах. Для Д-кодов не выполняется условие получения обратного кода инвертированием разрядов тетрады. Применение Д-кодов в компьютерах не требует выполнения разного рода преобразований: двоично-десятичных чисел в двоичные и наоборот. Например, с помощью шифратора обеспечивается сравнительно простой способ ввода в машину десятичных цифр двоично-десятичным кодом. Значение одной тетрады Д-кода, дополнение тетрады до девяти “9-Д” (обратный код) и до десяти “10-Д” (дополнительный код), а также коды с “избытком 3” и с весом “5421" представлены в табл. 4.14 Таблица 4.14 ' Код Д Код “9-Д” Код “10-Д” Код “Д+3” Код “5421” Х4 Ху хг х. г4 Уз У1 У| /з F3 F2 F, 2$ 2^ 2i 2\ Е4 Еу Ег Е{ 0 0 0 0 0 0 0 1 0 0 10 0 0 11 0 10 0 0 10 1. 0 110 0 111 10 0 0 10 0 1 10 0 1 10 0 0 0 111 0 110 0 10 1 0 10 0 0 0 11 0 0 10 0 0 0 1 0 0 0 0 10 10 10 0 1 10 0 0 0 111 0 110 0 10 1 0 10 0 0 0 11 0 0 10 0 0 0 1 0 0 11 0 10 0 0 10 1 0 110 0 111 10 0 0 10 0 1 10 10 10 11 110 0 0 0 0 0 0 0 0 1 0 0 10 0 0 11 0 10 0 0 10 1 0 110 0 111 10 0 0 110 0 Систему минимальных логических выражений обратного двоично-десятичного кода получаем с помощью карт Карно (рис. 4.40), в которые вносятся значения разрядов У|-У4 по данным табл. 4.14. Рис. 4.40. Карты Карно для получения обратного Д-кода; знаком “х” помечены неопределенные наборы: а — Y,, б — Y2, в — Y3, г — Y» 4.6. Двоичные сумматоры 173 На основе карт Карно получаем систему уравнений для разрядов У! - У4 обратного Д-кода: Y^X}; Y2=X2; Y3=X2®X3; Y4=X4X3X2=X^X^Jx'2. (4.26) Из выражений (4.26) следует, что значение второго разряда тетрады прямого и обратного Д-кодов совпадают. Схема преобразователя прямого Д-кода в обратный на основе соотношений (4.26) показана на рис. 4.41, а. Рис. 4.41. Схемы преобразователей Д-кода в обратный: а — на основе логических уравнений; б — с использованием элемента "Исключающее ИЛИ" а Возможен и другой способ построения преобразователя Д-кода в обратный: вначале инвертируются цифры всех тетрад (получается код с избытком шесть) и затем производится вычитание из каждой тетрады числа минус ОНО, что эквивалентно добавлению в дополнительном коде плюс 1010 (без учета переносов между тетрадами). Например, А = —148, прямой Д-код £Л]Пр = 1 0001 0100 1000; после инвертирования имеем: [Л]*ПР = 1 1110 1011 0111; после прибавления плюс 1010 к каждой тетраде получаем значение обратного Д-кода: [Л]Об = 1 Ю00 0101 0001. Схема преобразователя на основе инвертирования и коррекции тетрад показана на рис. 4.41, б. В данной схеме инвертирование значений разрядов тетрад осуществляется логическими элементами “Исключающее ИЛИ", а коррекция реализуется типовой микросхемой четырехразрядного комбинационного сумматора. Дополнительный Д-код тетрады получается из обратного прибавлением единицы к младшему разряду. 4.6. Двоичные сумматоры 4.6.1. Общая характеристика сумматоров Сумматором называется функциональный узел компьютера, предназначенный для сложения двух n-разрядных слов (чисел). Операция вычитания заменяется сложением слов в обратном или дополнительном коде. Операции умножения и деления сводятся к реализации многократных сложений и сдвигов. Поэтому сумматор является важной частью арифметико-логического устройства. Функция сумматора обозначается буквами SM или L. 174 Комбинационные функциональные узлы компьютерной схемотехники Сумматор состоит из отдельных схем, которые называются одноразрядными сумматорами; они выполняют все действия по сложению значений одноименных разрядов двух чисел (операндов). Сумматоры классифицируются по следующим признакам: • способу сложения — параллельные, последовательные и параллельнопоследовательные; • числу входов — полусумматоры, одноразрядные и многоразрядные сумматоры; • организации хранения результата сложения — комбинационные, накапливающие, комбинированные; • организации переноса между разрядами — с последовательным, сквозным, параллельным или комбинированным переносом (с групповой структурой); • системе счисления — позиционные (двоичные, двоично-десятичные, троичные) и непозиционные, например, в системе остаточных классов; • разрядности (длине) операндов — 8-, 16-, 32-, 64-разрядные; • способу представления отрицательных чисел — в обратном или дополнительном кодах, а также в их модификациях; • времени сложения — синхронные, асинхронные В параллельных //-разрядных сумматорах значения всех разрядов операндов поступают одновременно на соответствующие входы одноразрядных суммирующих схем. В последовательных сумматорах значения разрядов операндов и перенос, который запомнился в предыдущем такте, поступают последовательно в направлении от младших разрядов к старшим на входы одного одноразрядного сумматора. В параллельно-последовательных сумматорах числа разбиваются на части, например, байты, разряды байтов поступают на входы восьмиразрядного сумматора параллельно (одновременно), а сами байты — последовательно, в направлении от младших к старшим байтам с учетом запомненного переноса В комбинационных сумматорах результат операции сложения запоминается в регистре результата. В накапливающих сумматорах процесс сложения объединяется с хранением результата. Это объясняется использованием 7-триггеров как одноразрядных схем сложения. Организация переноса практически определяет время выполнения операции сложения. Последовательные переносы схемно образуются просто, однако являются медленнодействующими. Параллельные переносы схемно организуются значительно сложнее, однако дают высокое быстродействие. Разрядность сумматоров находится в широких пределах: 4-16 — для микро- и мини-компьютеров и 32-64 и более — для универсальных машин. Сумматоры с постоянным интервалом времени для сложения называются синхронными. Сумматоры, в которых интервал времени для сложения определяется моментом фактического окончания операции, называются асинхронными. В асинхронных сумматорах имеются специальные схемы, которые определяют фактический момент окончания сложения и сообщают об этом в устройство управления. На практике преимущественно используют синхронные сумматоры Сумматоры характеризуются следующими параметрами: • быстродействием — временем выполнения операции сложения /v, которое отсчитывается от начала подачи операндов до получения результата, часто 4.6. Двоичные сумматоры 175 быстродействие характеризуется количеством сложений в секунду имея в виду операции типа регистр-регистр (то есть числа хранятся в регистрах АЛУ); • аппаратными затратами: стоимость одноразрядной схемы сложения определяется общим числом логических входов используемых элементов; стоимость многоразрядного сумматора определяется общим количеством используемых микросхем; • потребляемой мощностью сумматора. 4.6.2. Одноразрядные сумматоры Одноразрядным сумматором называется логическая схема, которая выполняет сложение значений i-x разрядов X, и Y, двоичных чисел с учетом переноса Z, из младшего соседнего разряда и вырабатывает на выходах функции результат S, и перенос Р, в старший соседний разряд. На основе одноразрядных схем сложения на три входа и два выхода строятся многоразрядные сумматоры любого типа Алгоритм работы одноразрядного сумматора отображается таблицей истинности [табл. 4.15). На основе табл. 4.15 записывается система логиче- Таблица4.15 ских функций для результата 5, и переноса Р, в СДНФ. s, = vj,y;z, vx,^z, vx,y,z,,- (4.27) Д =X,YlZ, vX,Y,Z, vX^Z, VX^Z,. (4.28) Минимизация функций (4.27) и (4.28) с помощью карт Карно показана на рис. 4.42. Л[ Y, X, Y, 00 01 11 10 /Z, 00 01 11 10 i 0 1 0 1 | 0 0 0 j fT] j J 1 0 1 _L_ 0 . L JL 1Л J 1 0 Щ 1 Ш 1 О , 1 a б х, Y, Z, S, р, 0 0 0 0 0 0 0 1 1 0 0 1 1 0 1 0 0 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 Рис. 4.42. Карты Карно для минимизации функций: а — S,; 6 — Р, Как видно из карт Карно, функция результата S, не минимизируется, а функция Р, минимизируется с понижением ранга конъюнкции и использует только прямые значения переменных: /)=^vI,Z,V};Z,=^vkv^. (4 29) При проектировании комбинационных одноразрядных сумматоров учитывают следующие факторы: • схема должна характеризоваться регулярностью (одинаковостью) структуры и минимальной стоимостью, то есть иметь по возможности наименьшее число логических входов всех элементов, • с целью повышения быстродействия многоразрядного сумматора требуется минимальное время получения функции переноса /п =• k tP, где к — число последовательно включенных элементов от входов к выходам Р, или Pt, гР — средняя задержка распространения сигнала одним логическим элементом в выбранной серии интегральных микросхем; параметр к часто на 176 Комбинационные функциональные узлы компьютерной схемотехники зывают каскадностью (этажностью) схем. Таким образом, для минимизации времени получения переноса необходимо уменьшить каскадность схемы и использовать интегральные микросхемы с малым временем задержки распространения сигнала; • для схем одноразрядных сумматоров на основе уравнений (4.27) и (4.28) необходимо вырабатывать как прямые Р„ так и инверсные Pt значения функции переноса. Такая организация переносов называется парафазной. Для построения схемы одноразрядного сумматора на универсальных логических элементах НЕ И уравнения (4.27) и (4.28) преобразуются на основе правил двойной инверсии и де Моргана к следующему виду: S, = XXZ-XX.Z.-XXZ,-X^Z,; Р, = ~ХХ • ~X^Zi • \Zt. (4.30) Схема одноразрядного сумматора, построенная на элементах НЕИ соответственно уравнениям (4.30), показана на рис. 4.43, а; ее стоимость, измеряемая числом логических входов всех элементов, составляет 27, каскадность к = 3. Уравнения (4 27) и (4.28) могут быть выражены через функцию “Исключающее ИЛИ”: S, = (X, © YI)ZI v (^, © jjz, = X, ©, Y®ZI; (4.31) Р, = XX, v (X,Y, v X,Y,)Zl = X,Y, v (x, © Y,)z,. (4.32) Схема одноразрядного сумматора на элементах “Исключающее ИЛИ” согласно уравнениям (4.31) и (4.32) показана на рис. 4.43, б; ее стоимость составляет восемь входов и каскадность к = 2 Функции одноразрядного сумматора — самодвойственны, то есть их инверсии образуются инвертированием значений аргументов без изменения местонахождения знаков дизъюнкции и конъюнкции, например, для переноса из уравнения (4.28): р,=ххх vXXX, ^ХХХ^ХХХ- (4.зз) Умножая левые и правые части соотношения (4.33) на макстерм (X,vy,vZ,), получают: Р,Х, vPXvP'Z, = XX,Z, \zX,Y,Z, vXXZr (4.34) После подстановки левой части соотношения (4.34) в правую часть выражения (4 27) получают уравнения для функции S, с использованием собственного переноса. S, = PtX, ^РХ^ P.Z, vХУЛ (4.35) Схема одноразрядного сумматора соответственно уравнениям (4.35) и (4.29) показана на рис. 4.43, в; ее стоимость равна 17 входов, каскадность к = 2. Важным свойством этой схемы является использование только прямых значений входных переменных и однофазной цепи формирования переноса Р, в старший разряд. Полусумматором называется логическая схема, которая выполняет сложения значений z'-x разрядов X, и Y, двоичных чисел X и Y и реализует на выходе значение результата М, и перенос в старший соседний разряд R,: М^ХХ^ХХ^Х,®^- Rt=XX. (4.36) Таким образом, полусумматор выполняет лишь часть задачи суммирования в z-м разряде, поскольку не учитывает перенос из соседнего младшего разряда. Схема полусумматора, построенная на основе уравнений (4.36), показана на рис. 4.44. Из уравнений (4.31) и (4.32) следует, что схема одноразрядного сумматора может 4.6. Двоичные сумматоры 177 быть построена на основе двух полусумматоров и дополнительного логического элемента ИЛИ, как показано на рис. 4.44, в. Рис. 4.43. Схемы одноразрядных сумматоров: а — на элементах НЕ И; б — на элементах “Исключающее ИЛИ”; в — с использованием собственного переноса Рис. 4.44. Схемы суммирования: а, б — полусумматор и его условное обозначение; в, г — одноразрядный сумматор и его условное обозначение 12-4-1749 178 Комбинационные функциональные узлы компьютерной схемотехники 4.6.3. Последовательный многоразрядный сумматор Последовательный двоичный многоразрядный сумматор включает в себя, «-разрядные сдвиговые регистры операндов А' и У, регистр результата S, одноразрядный сумматор SM и двухступенчатый D-триггер для запоминания переноса. Все регистры обеспечивают одновременный сдвиг вправо, в сторону младших разрядов (рис. 4.45). Рис. 4.45. Схема последовательного многоразрядного сумматора В последовательном сумматоре попарная подача значений разрядов X, и У, начинается с младших разрядов. Образуются значения суммы S, и переноса РИ которые записываются соответственно в регистр результата и в триггер запоминания переноса на один такт Тс. Последовательное сложение выполняется за столько тактов, сколько разрядов в числе. Поэтому время сложения определяется соотношением: ~ пТс, где rc — длительность машинного такта. Отрицательные числа рекомендуется представлять в дополнительном коде. Последовательный сумматор требует минимальных аппаратных затрат, однако длительность операции сложения пропорциональна разрядности операндов Поэтому последовательный сумматор можно использовать в относительно медленнодействующих цифровых устройствах. 4.6.4. Параллельные многоразрядные сумматоры Параллельный многоразрядный сумматор содержит « одноразрядных схем 4.6. Двоичные сумматоры 1 79 Значения всех разрядов двух чисел X и Y поступают на входы соответствующих одноразрядных сумматоров параллельно (одновременно). В параллельных сумматорах с последовательным переносом значение сигнала переноса Р, передается от разряда к разряду последовательно во времени (асинхронно). При использовании обратного кода перенос из самого старшего разряда подается на вход переноса младшего разряда по цепи циклического переноса (рис. 4.46, а). При использовании дополнительного кода цепь циклического переноса разрывается, а на вход переноса младшего разряда подается логический нуль. В параллельных сумматорах с последовательным переносом время сложения определяется соотношением: = (п-1) Гп + ts , где /и — время формирования переноса в каждом разряде, ts — время сложения в самом старшем разряде. В худшем случае возможен вариант, когда сигнал переноса последовательно распространяется от первого до /г-го разряда. 4.6.5. Параллельные сумматоры с параллельными переносами Для повышения быстродействия сумматоров используют //-разрядные сумматоры с параллельными переносами. При этом сумматор разбивается на две части: собственно схему сложения и схему выработки ускоренных переносов (СУП). Схема сложения содержит п упрощенных одноразрядных сумматоров SM на три входа и только на один выход суммы S,; они могут строиться по выражениям типа (4.27), (4.30) и т.д. Схема ускоренных переносов вырабатывает сигналы переноса Р, одновременно во всех разрядах на основе уравнений, которые учитывают значение переменных X, и Y, как в данном разряде, так и в предыдущем младшем. Например, перенос Р, в первом (младшем) разряде является функцией переменных X, и У, и внешнего переноса Z]: Pi=f](Xi,Yl,Zl) = Z2. Для второго разряда функция переноса Р2 записывается в виде: р2 =/2(x2,y2,z2) = /2(x2,y2,xi,y,zl) = z3. Аналогично для z-го разряда P^f{Xl,Yl,X,_},Yl-},-.X},Y}X^ = Zl^ а в последнем (старшем) разряде имеем: Для уменьшения аппаратных затрат при построении схемы и сокращении записи функций переноса Р, вводят две вспомогательные функции: генерации (порождения) переноса в z-м разряде R, = X,Y< и распространения (транзита или передачи) переноса через z-й разряд. Функция транзита имеет две эквивалентные по результатам применения формулы: М, = X,®Y, — из неминимизированного уравнения переноса (4.30) и F, = Х1\Х1 — из минимизированного уравнения переноса (4.29). Перенос из z-го разряда в старший генерируется при условии, что /?, = X,-Y, = 1, то есть Р, = 1 при Xt = У, = 1. Сигнал переноса из младшего разряда передается транзитом в старший при условии, что Z, = 1 и М, = Xt®Y, = 1 или F, - X,vy, = 1. С учетом 12’ 180 Комбинационные функциональные узлы компьютерной схемотехники функций переноса и транзита уравнения (4.29) и (4.30) запишутся соответственно в виде: р = X.Y. v (Xi v K)Z, = 7?,. v FZ,; ' ' ' v ' '7 ' ' ' ' (4.37) = Xft v (Xi Ф Yi)Zi = 7?,. v 7H,.Z,.. Для образования в сумматоре параллельных (одновременных) переносов необходимо, чтобы уравнения (4.37) строились с учетом значений переменных всех младших разрядов. Это достигается последовательной подстановкой в каждую функцию переноса Р, вместо переменной Z, ее значение Р,_! в направлении от младших к старшим разрядам: Д = 7?! v FiZ] = Z2; Р2 = Т?2 v F2Z2 =R2vF2P} =R2vF2R} v F2F}Z} = Z3; P3 = P, v F3Z3 = R3 v F3P2 = R3v F3R2 v F3F2R} v F^F^ - Z4; P4 = P4 v F4Z4 = T?4 v F4F3 = = P4 v F4F3 v F4F37?2 v F4F3F2P, v F4F3F2F,Z, = Z5. (4.38) Для i -го разряда: P, = R< vFJ^R,-, у...уХХ}...Р^. Схема четырехразрядного сумматора с параллельными переносами между разрядами на основе системы уравнений (4.38) показана на рис. 4.47. Рис. 4.47. Схема четырехразрядного сумматора с параллельными переносами Для выработки функций генерации R}-R4 и транзита F]-F4 использовано по четыре логических элемента соответственно И и ИЛИ, которые показаны на схеме пакетным изображением. Время сложения в схеме (рис. 4.47) вычисляется по формуле = tr + /п, где учтены задержки при выработке сигналов генерации tr = tp, переноса t„ = tp и сложения ts = 2/р. С учетом этого /i=4zp. Например, для гр = 5 нс имеем: F = 20 нс. Таким образом, длительность операции сложения в данном сумматоре не зависит от числа 4.6. Двоичные сумматоры 181 разрядов п, если не учитывать ухудшение временных характеристик логических элементов при увеличении числа входов и нагрузки на выходе. В четырехразрядном сумматоре элементы И ИЛИ в схеме переносов вместе имеют 30 входов совпадения. В 32-разрядном сумматоре общее число входов совпадения в элементе И ИЛИ составит 6550. Поэтому строить многоразрядные сумматоры с параллельными переносами сложно по конструктивно-технологическим причинам В схемотехнике часто используют частично параллельные переносы: «-разрядный сумматор разбивается на к групп по т разрядов в группе (обычно т = 4). Перенос между группами может быть последовательным, параллельным или сквозным. Для построения w-разрядных сумматоров с параллельными переносами в группе для т = 4 (первый уровень) и универсальными способами переносов между группами в уравнении (4.38) выделяют вспомогательные функции генерации переноса из группы G, = R3 vF4R3 vF4F3R2 vF4F3F2R} (4.39) и транзита через группу H}=F4F3F2F}. (4.40) С учетом формул (4.39) и (4.40) уравнение для параллельного переноса и первой группы имеет вид: = Р3 = vHXZ{. По аналогии записывают уравнения для Gt, Я, и Д, где / = 1,2, ..., к. Для организации универсальных способов переносов в схему (см. рис. 4.47) включают дополнительные схемы выработки функций G„ Н, и L, (рис. 4.48). Рис. 4.48. Сумматор с универсальными выходами переносов: а — схема для G,; 6 — условное обозначение первой группы сумматора С помощью функций G,, II,, L, реализуют следующие способы переносов между группами: • последовательный, если используется выход/,, (рис. 4.49); • параллельный, если используются выходы G, и Я,; • сквозной с использованием выхода Я,. Во всех этих случаях в группах используют параллельный перенос. 182 Комбинационные функциональные узлы компьютерной схемотехники Рис. 4.49. Сумматор с параллельными переносами в группах и последовательными — между группами Время сложения в сумматоре (рис. 4.49) определяется задержками сигналов последовательного переноса 2(к- 1)/р и выполнения действия в последнем разряде группы ts = 2tp, то есть = 2(к- 1)гр + 2гр. Например, для к = 8, Гр = 5 нс имеем: - 14/р + 2гр = 16гр = 80 нс. Параллельные переносы между группами сумматора (второй уровень параллелизма) реализуют на основе системы уравнений, описывающих функцию переноса С, в каждую старшую группу с учетом уравнений (4.39) и (4.40) (по аналогии с параллельными переносами первого уровня — между разрядами в группе): G = GjvH.C,; С, =Z,; С3 = G2 vН2С2 = G2 vHfi, nH2HxC}-, С4 = G3 v Н3С3 = G3 vH3G2 vH3H2G} у Н3Н2Н}Сй С4 = G4 у Н4С4 = G4 у H4G3 у HJ13G2 у у Н4 Н3Н2Н}С,. (4.41) В уравнениях (4.41) выделяют функции генерации переноса D и транзита Vдля обеспечения третьего уравнения параллелизма: D = G4 у H4G3 у H,H3G2 у HJIilhGi, V = H,H3H2H}. (4.42) Реализация функций С2-С4, а также D и Н на логических элементах И ИЛИ, И показана на рис. 4.50, а. На их основе проектируется СУП (рис. 4.50, б) Рис. 4.50. Реализация функций С2, С3, Ct, D и V: а — схемы; б — условное обозначение микросхемы СУП 4.6. Двоичные сумматоры 183 Микросхема CRU (символ функции СУП) в сериях ТТЛШ обозначается как ИПЧ, например, КР1533ИПЧ. Она имеет входы и Я„ i = 1, 2, 3, 4, на которые поступают сигналы генерации и транзита от четырехразрядных сумматоров с параллельными переносами между разрядами в группах (см. рис. 4.49). С выходов микросхемы CRU сигналы ускоренного переноса С2, С3 и С4 подаются соответственно на входы переноса С второй, третьей и четвертой (старшей) групп сумматоров. Таким образом, с помощью микросхемы CRUстроится 16-разрядный сумматор с параллельными переносами в четырехразрядных группах и между группами (рис. 4.51). Рис. 4.57. Схема блока 16-разрядного сумматора SM16 с параллельными переносами в четырех группах и между группами Время сложения в этом сумматоре определяется задержками сигналов: генерации (или транзита) tG = 2/р в группе; переноса из CRU tc = 2tp и времени выполнения действия в последнем разряде четвертой группы ts = 2/р. Таким образом, h = tG + tc + ts = 67Р. Для /р = 5 нс имеем время сложения t = 30 нс. Схема 64-разрядного сумматора с третьим уровнем параллелизма строится на основе системы уравнений, полученных по аналогии с соотношениями (4.41) и (4.42): К2 = A v ИСТ,; С, = Z,; )?3=P2vK2C2=D2vK251vW1; (4-43) Я4 = Dy v RyCy = Dy v VyD2 v Vy V2D} v Vy V2 Г, C, Схема 64-разрядного сумматора с третьим уровнем параллелизма показана на рис. 4.52. Она содержит четыре блока сумматоров 57И16 и дополнительно одну микросхему CRU. Время сложения в этом сумматоре определяется задержками формирования сигналов генерации (или транзита) в группах tG = 2/р, задержкой в двух схемах CRU tc = 4/р и задержкой времени выполнения действия в последнем разряде старшей группы: = tG + tc + ts = 7tp. Для tp = 5 нс имеем = 35 нс. 184 Комбинационные функциональные узлы компьютерной схемотехники Рис. 4.52. Схема 64-разрядного сумматора с третьим уровнем параллелизма 4.6.6. Схемы для выполнения логических микроопераций Все компьютеры могут выполнять определенный список поразрядных логических операций. Для их реализации используют отдельный блок логических операций (рис. 4.53). Рис. 4.53. Структура блока логических операций В простых компьютерах этот блок совмещается со схемой параллельного сумматора. Каждую логическую операцию в блоке задают кодом £3-£0, который подается на входы дешифратора. Сигналы Fl5-F0 с выходов дешифратора непосредственно управляют выбором определенной логической операции. Составим список буле- вых выражений для шести поразрядных логических микроопераций: L0(. := £0(^, v логическое ИЛИ >; Li; := F^JV,. v У)] 4, ) < логическое НЕ ИЛИ >; < логическое И >; < логическое НЕ И >; L4l := F4(X, ® < исключающее ИЛИ >; L5l := F5 (х, ® Y,) < равнозначность >. Каждая поразрядная логическая операция выполняется одним из определенных логических элементов ИЛИ, НЕ ИЛИ, И, НЕ И и другими. Функции L5i-LOi в каждом разряде объединяются элементом ИЛИ по формуле: 4.6. Двоичные сумматоры 185 (4.44) Схема для реализации поразрядных логических микроопераций над z'-ми разрядами операций Х(п) и Y(ri) согласно выражению (4.44) показана на рис. 4.54. Рис. 4.54. Схема реализации поразрядных логических микроопераций над i-ми разрядами операндов Блок логических поразрядных операций над двумя «-разрядными операндами должен иметь п схем, аналогичных изображенным на рис. 4.54. 4.6.7. Микросхемы ALU Промышленность выпускает микросхемы с символом функции ALU для выполнения 16 арифметических и 16 поразрядных логических микроопераций в зависимости от входных сигналов настройки. В сериях ТТЛШ 530, 531, 533, 555 и 1533 они имеют обозначения ИПЗ; в сериях ЭСЛ 100, 500 и 700 используются обозначения ИП179. Микросхема ALU в сериях ТТЛШ имеет (рис. 4.55): • информационные входы для представления двух четырехразрядных операндов Хи Y; • входы настройки Е3-Ео для задания номера одной из микроопераций; • вход М для задания типа микрооперации: М = 0 — арифметические, М = 1 — логические; _ • вход переноса С1, необходимый только при исполнении арифметических микроопераций; • выходы: результата микрооперации F4-F,, последовательного переноса L, генерации G, транзита Н, а также выход с открытым коллектором от внутреннего компаратора для выработки признака равенства операндов Fa=B- Рис. 4.55. Условные обозначения микросхемы ALU 1533ИПЗ 186 Комбинационные функциональные узлы компьютерной схемотехники Перечень арифметических и логических операций, выполняемых ALU, представлен в табл. 4.16. При исполнении логических операций перенос между разрядами не используется. Арифметические операции реализуются с учетом переносов и заемов. В арифметические операции включены фрагменты логических действий. Например, запись (X vK) + XY означает, что сначала выполняется операция инверсии (Y ), затем — логического сложения (XvK) и логического умножения (X Y ), а затем полученные таким образом два числа складываются арифметически с учетом переносов. Таблица 4.16 Дз Ег Е\ Еп Логика М=1 Арифметика M=Q 0 0 0 0 х x 0 0 0 1 XvY X + Y 0 0 1 0 XY X vF 0 0 1 1 0 -1 0 1 0 0 XY X + XY 0 1 0 1 Y (X v Y) + XY 0 1 1 0 X®Y X-Y-l 0 1 1 1 XY XY-1 1 0 0 0 XvY X + XY 1 0 0 1 X®Y X + Y 1 0 1 0 Y (X + Y) + XY 1 0 1 1 XY XY-1 1 1 0 0 1 X + Y 1 1 0 1 X vf (X v У) + X 1 1 1 0 XvY (X v Y ) + X 1 1 1 1 x X-l Микросхема ALU выполняет операцию арифметического сложения двух четырехразрядных операндов X и Y, если на входы настройки поданы сигналы Е3Е2Е1Ео = Ю01 и М = 0. В этом случае микросхема ALU выполняет функцию сумматора. Наращивание разрядности ALU осуществляется с помощью микросхемы CRUсогласно рис. 4.51 и рис. 4.52. 4.7. Двоично-десятичные сумматоры Двоично-десятичные сумматоры используются для обработки массивов десятичной информации по сравнительно простым алгоритмам, поскольку при этом исключаются затраты времени на перевод чисел из десятичной системы счисления в двоичную и наоборот. 4.7. Двоично-десятичные сумматоры 187 Каждая десятичная цифра X, кодирует двоичным кодом прямого замещения “8421” (двоичной тетрадой), то есть Xt = Xl4Xl3Xl2Xl} и Y, = Y,4Yl3Yl2Y,,. Например, X, = 7,о = 011 12-ю. Y, = 9io = 10012-ю; Для двухразрядных десятичных чисел: ХХ-1 = 16,о = 0001011О2.|О; Y,Y, 1 = 28,о = 001010002.,о Один разряд двоично-десятичного сумматора (декада) содержит четырехразрядный сумматор SM1 для получения предварительной суммы в тетраде, четырехразрядный сумматор SM2 для коррекции результата и логический элемент И ИЛИ для выработки признаков коррекции, как показано на рис. 4.56. Рис. 4.56. Одноразрядный двоично-десятичный сумматор: а — схема; б — условное обозначение Декада работает следующим образом. Двоичные тетрады десятичных цифр X, = Х14Х,зХ,2Х,} и Y, = Y^Y^Y^Y,! вместе с переносом поступают на входы сумматора SM1, и на его выходах образуется предварительная сумма S’,T = где S’,Т—десятичный эквивалент тетрады (табл. 4.17). Таблица 4.17 До коррекции После коррекции Примечание Р' S3 s'2 s', P s4 s3 S2 s, 0 0 0 0 0 0 0 0 0 0 0<Si7-<9 Коррекция не требуется 0 0 0 0 I 0 0 0 0 1 0 0 0 1 0 0 0 0 I 0 0 1 0 0 I 0 I 0 0 I 1 0 0 0 0 0 I 0 I 0 10<Si7-< 15 Коррекция требуется: минус 10 и перенос в старшую декаду г 1 0 0 0 I 0 I 0 I I 1 0 0 0 0 0 I I I 0 1 0 1 0 I 0 I 1 1 I 1 0 1 1 0 I 0 0 0 0 16<S,T< 19 Коррекция требуется: плюс 6 1 0 1 1 1 1 0 0 0 1 1 1 0 0 0 1 0 0 1 0 1 1 0 0 I 1 0 0 1 I 188 Комбинационные функциональные узлы компьютерной схемотехники При этом возможны три случая: 1. для значения 0 < S'lT <9 коррекция не требуется; 2. для значений 10 < S'lT < 15 требуется вычесть из предварительной суммы число 10 и выполнить перенос в старшую соседнюю декаду; вычитание числа 10 в дополнительном коде соответствует добавлению с помощью сумматора SM2 к предварительному результату числа шесть, то есть плюс 01102; признаком такой коррекции является единичное значение функции коррекции суммы и переноса F'r=S',4S',2vS'i4S'2, (4.45) которое реализуется элементом И ИЛИ; 3. для значений 16 < S'T < 19 на выходе сумматора SM1 возникает перенос P'lT с весом 1610. Однако в старшей декаде его значение воспринимается как 10, поэтому требуется прибавить к предварительному результату с помощью сумматора число шесть, то есть 01102. С учетом уравнения (4.45) функцию коррекции результата и переноса можно записать в виде: Pa = P'TvF'T = P'TvS'4S'3vS'i4S'i2. Таким образом, во всех случаях, когда Р'1Г = 1, к предварительной сумме добавляется число плюс 01102 и формируется перенос в старший разряд. Схема четырехразрядного двоично-десятичного сумматора с последовательным переносом в тетрадах и между декадами показана на рис. 4.57. Быстродействие таких сумматоров рассчитывают по аналогии с двоичными последовательными переносами. Для двоично-десятичных сумматоров можно использовать групповые структуры ускоренных переносов. X,— SM} 0 1.0 0 21. X.— 5ЛЛ 0 1.0 0 5. Л’Л/10 1.0 0 1 । 8Ш 0 1.0 0 I — 2 0 У2 — 2 0 У31 — 2.0 ^41 2.0 ^2 — 1.1 1 X,— 1.1 1 22 X,— 1.1 1 32 х2— 1.1 1 42 2.1 1.2 2.2 1.3 2 3 313 5.4 24 2.1 1 2 2.2 1.3 2 3 ^23 । Г'J г' L 2.1 1.2 2.2 1.3 2 3 2 1 1.2 2.2 1.3 2 3 3.43 1)4 ^14 2.3 Г24 2.3 У34 — 2.3 Г44~ 2.3 z р 7 р 7 р 7 Р Рис. 4.57. Схема четырехразрядного двоично-десятичного сумматора. Операция вычитания в двоично-десятичном сумматоре заменяется сложением операндов в обратном или дополнительном кодах. Обратный код отрицательных десятичных чисел получают заменой каждой цифры ее дополнением до девяти. Схема одного десятичного сумматора с преобразователями прямого кода операндов и результата в обратный код показана на рис. 4.58. Значение отрицательных чисел при Хзи = 1, Узн = 1, Хн = 1 инвертируется схемой “Исключающее ИЛИ”; при этом образуется двоичный код тетрад с избытком шесть. Коррекцию результата выполняют сумматорами SMI, SM2 и SM3, в которых Контрольные вопросы 189 вычитание заменяется сложением двоичной тетрады с обратным кодом числа шесть, то есть плюс 10102. Рис. 4.58. Схема одного разряда десятичного сумматора с преобразователями прямого кода в обратный Контрольные вопросы 1. Назовите области применения дешифраторов и шифраторов. 2. Как строятся мультиплексоры и демультиплексоры шин? 3. Поясните назначение компараторов. 4. Что такое контроль по модулю два? 5. Назовите основные типы кодопреобразователей. 6. По каким признакам классифицируют сумматоры? 7. Поясните отличия в построении двоичного и двоично-десятичного сумматоров. 8. Назовите способы увеличения быстродействия сумматоров. 9. Поясните функции микросхем ALU. 10. Поясните назначение микросхемы CRU. 11. Поясните способ преобразования прямого двоично-десятичного кода в обратный. 12. Как строится последовательный многоразрядный сумматор? 13. Что такое функция генерации переноса? 14. Что такое функция транзита переноса? 15. В чем отличие синхронного сумматора от асинхронного? 16. Поясните построение матричного дешифратора. 17. Поясните принцип работы приоритетного шифратора. 18. Дайте определение типового функционального узла компьютера. 190 Цифро-аналоговые и аналого-цифровые преобразователи Глава 5 Цифро-аналоговые и аналого-цифровые преобразователи 5.1. Цифро-аналоговые преобразователи 5.1.1. Общая характеристика цифро-аналоговых преобразователей Цифро-аналоговые преобразователи (ЦАП) предназначены для преобразования цифровой информации в аналоговую форму в виде напряжения (иногда тока). Их используют в системах управления технологическими процессами, в аналоговых микропроцессорах, в дисплеях, графопостроителях, робототехнике. Цифро-аналоговое преобразование состоит в том, что для входного параллельного n-разрядного кода X = Х,2~' + Х22~2 + ... + Х,2~‘ + ... + Х„2~", где X, — цифры 0 или 1, а 2“'— вес г-го разряда, сначала получают ток 1,:, пропорциональный значению числа X, а затем преобразуют его в выходное напряжение. Значение тока Д определяется суммой эталонных токов /„ создаваемых для каждого разряда числа /г = XJ{ + Х212 + ... + Х^ + .. + ХП1П, причем суммируются токи только тех разрядов, для которых Л) = 1. Значения эталонов тока I, пропорциональны весу позиции двоичного числа и уменьшаются в два раза при переходе от старшего г-го разряда к соседнему младшему с номером г+1. 5.1.2. Схемы цифро-аналоговых преобразователей Структура ЦАП включает- резистивную или транзисторную матрицу для формирования эталонных токов; ключи для коммутации эталонных токов согласно входному коду к общей точке суммирования; операционный усилитель (ОУ) для преобразования тока Д в выходное напряжение; вспомогательные схемы для согласования с входными уровнями сигналов; стабилизированный источник опорного напряжения Доп- Резистивные матрицы строят или из набора двоично-взвешенных по номиналам резисторов, или в виде лестничной (многозвенной) цепочки резисторов лишь двух номиналов R-2R. Схема ЦАП с резистивной матрицей на основе двоичновзвешенных сопротивлений вида R-2R- ...~2"~lR показана на рис. 5.1. В этой схеме сопротивление резисторов матрицы удваивается при переходе от старшего разряда к младшему, а эталонные токи уменьшаются в два раза. Например, если для первого, самого старшего разряда принять значение тока Ц = 1 мА, то для второго разряда Д = 0,5 мА, для третьего Д = 0,25 мА и т. д. 5.1. Цифро-аналоговые преобразователи 191 Рис. 5.1. Схема ЦАП со взвешенными резисторами Ключи А") - К„ управляются уровнями напряжений, отображающих цифры “нуль” и “один” соответствующих разрядов входного кода. Источник опорного напряжения С/оп чаще всего бывает внешним, однако в некоторых случаях его встраивают в микросхему ЦАП. На входе ОУ всегда имеется практически нулевой потенциал, поэтому суммирование разрядных токов определяется соотношением = — (Xi +2~'Х2 +2“2Jf3 + ... + 2-('",)^„) = -^^^, •2“('~,). (5.1) A R Напряжение на выходе ЦАП рассчитывают по формуле t/BbIX=-ZXc=-^onE^-2"', (5.2) i=i где Аос = R/2 — сопротивление в цепи обратной связи усилителя. Пример 5.1 Рассчитать напряжение на выходе ЦАП при преобразовании входного шестиразрядного цифрового кода2С = 101011. Опорное напряжение Uon = 10 В. На основе выражения (5.2) имеем: С/ВЬ1Х = -1о(1 • 2’’ + 0-2’2 + 1-2'1 + 0-2’4 + 1-2~5 + 1-2"6) = = -10 (2’1 + 2’3 + 2'5 + 2'6) = -6,72 В. Основной недостаток рассмотренной структуры ЦАП — это огромный диапазон сопротивлений матрицы, особенно при большой разрядности входного кода. Схема ЦАП на основе лестничной матрицы R-2R показана на рис. 5.2. Здесь используются резисторы только двух номиналов, с помощью которых реализуются соотношения (5.1) и (5.2), то есть при переходе от старшего разряда к младшему эталонный ток уменьшается в два раза. Для быстродействующих ЦАП токовые ключи строят на диодах и биполярных транзисторах; для преобразователей среднего и низкого быстродействия используют ключи на КМОП-структурах. Схема диодного ключа, который можно использовать в рассмотренных схемах ЦАП, показана на рис. 5.3, а. 192 Цифро-аналоговые и аналого-цифровые преобразователи Ux, i Рис. 5.3. Диодный ключ: а — схема; б — входной сигнал i-го разряда Входной сигнал С7г „ отображающий цифру в разряде входного кода, является двухполярным: положительный уровень (лог. 1) закрывает диод VD1 и эталонный ток /, через диод VD2 поступает на вход ОУ; отрицательный уровень (лог. 0) закрывает диод VD2 и ток I, замыкается на источник входного сигнала J7,,. В схемы ЦАП часто встраивают генераторы токов (ГТ), предназначенные для термостабилизации токов. Один из вариантов ГТ с обратной связью показан на рис. 5.4. Рис. 5.4. Схема ГТ с узлом управления 5.1. Цифро-аналоговые преобразователи 193 В этой схеме транзисторы VT1-VT4 стабилизируют токи резистивной матрицы R-2R-4R-8R. Вспомогательный транзистор КЛ) вместе с усилителем образуют схему управления, которая стабилизирует токи транзисторов VT1-VT4. Изменение эталонных токов от расчетных величин контролируется по току коллектора транзистора VT0, идентичного транзисторам VT1-VT4 и находящегося с ними в одинаковых температурных условиях. Если через коллектор транзистора VTQ протекает заданный ток ZK, то сигнал коррекции с выхода ОУ не будет поступать на базы транзисторов Р7О-Р74 (баланс ОУ) и режим работы транзисторов не изменится. При отклонении /к от заданного значения на базы транзисторов VT1-VT4 будет подаваться сигнал коррекции. 5.1.3. Двоичные коды, используемые в цифро-аналоговых преобразователях Ввод информации в ЦАП осуществляется, в основном, в параллельном коде. В ЦАП используют три основных двоичных кода: прямой, смещенный и дополнительный (рис. 5.5). Прямой код удобен при преобразовании сигналов следящих систем, так как при переходе через нуль не меняются старшие разряды кода, что позволяет реализовать линейный переход от малых положительных к малым отрицательным выходным напряжениям. Для преобразования положительных и отрицательных кодов используют знаковый разряд, который управляет переключением выходного напряжения ЦАП (рис. 5.5, а). Для исключения из схемы ЦАП коммутирующих элементов используют смещенный код, который является наиболее простым (рис. 5.5, 6). В дополнительном коде (рис. 5.5, в) положительные числа преобразуются так же, как и в прямом коде, а отрицательные — двоичным дополнением соответствующего положительного числа (инверсия всех разрядов с последующим добавлением единицы в младший разряд). 13 — 4-1749 194 Цифро-аналоговые и аналого-цифровые преобразователи 5.1.4. Умножающие цифро-аналоговые преобразователи Цифро-аналоговые преобразователи могут работать с постоянным или переменным опорным напряжением. Преобразователи, работающие с переменным напряжением Uon, называются умножающими. Операция умножения выполняется схемой ЦАП непосредственно в виде: ^-Аых Авх! ^вх2> (5-3) где Хвх] = Uon, Хвх2 = -¥(АЛь Х2, Х„). На основе выражения (5.3) воспроизводится операция умножения аналогового сигнала ХвхЛ на цифровой кодХх?- Производительность вычислительных систем повышается, если на входах используются ЦАП, которые реализуют умножение аналоговых и цифровых сигналов Цифро-аналоговые преобразователи могут быть одно- и многоканальными, что достигается объединением в одной БИС нескольких идентичных преобразователей, работающих независимо друг от друга, либо использованием на входах и выходах ЦАП коммутаторов аналоговых и цифровых сигналов. Структура многоканального умножающего ЦАП показана на рис. 5.6. Рис. 5.6. Структура многоканального умножающего ЦАП Коммутаторы аналоговых каналов АК1 и AJC2 и мультиплексор цифровых каналов MUXуправляются трехразрядными адресными кодами: АуА2А.,, В2В2В\ и С3С2С, соответственно. Если А2А2А[ = 011 и С2С2С} = 110, то получим для выхода с адресом В3В2В{ = 100 значение операции умножения С/вых4 = С/вх3 JVBx6. Изменяя кодовые комбинации на адресных входах, можно получить любое произведение вида: ^-Аых/ ^-Аху ^-АхЛ, С j> k 1 5 ..., 8. В умножающих ЦАП в основном используются токовые ключи на МОП-транзисторах в режимах малых напряжений и токов, что дает им возможность работать с опорным напряжением произвольного знака и формы. Выходной сигнал такого ЦАП может располагаться в любом из четырех квадрантов в зависимости от знаков, принимаемых сомножителями. 5.1. Цифро-аналоговые преобразователи 195 5.1.5. Основные параметры и характеристики цифро-аналоговых преобразователей Основными параметрами ЦАП являются число разрядов входного цифрового кода, разрешающая способность, погрешности преобразования, диапазон выходных сигналов, динамические параметры (табл. 5.1). Таблица 5.1 Тип микросхемы Разрядность, п Максимальное отклонение <5ЛД, % Время установления Густ, мкс Технология К427ПА4 16 0,0015 20 КМОП К572ПА2 12 0,025 15 Биполярная КМ1118ПА1 8 0,75 0,02 Биполярная К1108ПАЗ 8 0,5 0,05 Биполярная КМ1148ПА1 10 0,75 1 Биполярная Число разрядов п входного кода для различных типов ЦАП составляет от восьми до восемнадцати. Число разрядов определяет максимальное количество кодовых комбинаций на входе ЦАП, равное 2П. Диапазон изменения выходного напряжения (без учета знака) определяется из соотношения (5.2) при Л) = 1, i = 1, 2, ..., п: UBbn тах= С/Оп(2~1+2“2+...+2^')= С7оп(1-2 л), если п = 10, Uon = 10 В, то С/вь,хтах = 10 В. Разрешающая способность h характеризуется минимальным квантом выходного напряжения, который соответствует изменению входного кода на единицу младшего разряда: h = Uon/T ~ 10 мВ для предыдущего примера. Абсолютная погрешность преобразования <5А — отклонение выходного напряжения от расчетного в конечной точке характеристики преобразования. Типичная погрешность ЦАП не превышает ± 1/2 младшего разряда. Нелинейность <5л— максимальное отклонение реальной характеристики преобразования от теоретической (прямой линии, соединяющей точку нуля и минимального выходного сигнала). Дифференциальная нелинейность <5ЛД — максимальное отклонение разницы двух аналоговых сигналов соседних кодов от значения младшего разряда. Параметры <5А, <5Л и <5ЛД выражаются в долях младшего разряда или в процентах от полной шкалы выходного напряжения. Время установления /уст — интервал времени от подачи входного кода до момента достижения выходным сигналом установившегося значения с заданной погрешностью (обычно ±1/2 младшего разряда). Это время определяет общее быстродействие ЦАП. В зависимости от значений параметров выделяют прецизионные (8Л <0,1%) и быстродействующие (густ < 100 нс) ЦАП. Цифро-аналоговые преобразователи различаются структурой резистивной матрицы (взвешенные резисторы или R-2R), элементной базой, функциональной полнотой, согласующими устройствами, числом источников питания и т.п. 13* '196 Цифро-аналоговые и аналого-цифровые преобразователи Реализуются ЦАП в виде гибридных и полупроводниковых микросхем. Большинство микросхем ЦАП — полупроводниковые, функционально законченные. Ряд ЦАП используют внешние источники опорного напряжения и выходные операционные усилители. Питание ЦАП может осуществляться от одного или от нескольких источников, что определяется элементной базой. Перспективами развития ЦАП являются повышение быстродействия и точности, удобство согласования с микропроцессорами, снижение потребляемой мощности. 5.2. Аналого-цифровые преобразователи 5.2.1. Общая характеристика аналого-цифровых преобразователей Аналого-цифровые преобразователи (АЦП) предназначены для преобразования аналоговой информации (обычно в виде напряжения) в цифровой код. Используют АЦП в микропроцессорных системах, в цифровых измерительных приборах Во многом области их применения аналогичны ЦАП, поскольку они часто используются совместно, например, в автоматизированных системах управления (АСУ) (рис. 5.7). Рис. 5.7. Аналого-цифровой и цифро-аналоговый преобразователи в контуре управления Основными параметрами и характеристиками АЦП являются: • число разрядов и выходного кода; • разрешающая способность h — минимальный квант входного напряжения, за который выходной код изменяется на единицу младшего разряда; • нелинейность <5Л— максимальное отклонение выходного кода от расчетного значения во всем диапазоне шкалы; • абсолютная погрешность <5А — наибольшее отклонение выходного кода от расчетного в конечной точке шкалы; • время преобразования гпр — интервал от момента начала преобразования до появления на выходе установившегося кода; часто вместо /пр быстродействие АЦП характеризуется частотой преобразования; • диапазон и полярность входного напряжения, число источников питания, ток потребления, возможность общей работы с микропроцессорами. В АЦП используются следующие методы преобразования: • последовательного счета (с использованием ЦАП или с двухтактным интегрированием); • поразрядного кодирования (последовательного двоичного приближения); • параллельного действия (считывания); • параллельно-последовательные (комбинированные). 5.2. Аналого-цифровые преобразователи 197 Аналого-цифровые преобразователи последовательного счета Метод последовательного счета с применением АЦП основан на уравновешивании входного напряжения суммой эталонов, подсчитываемых счетчиком. Момент уравновешивания определяется аналоговым компаратором. Схема АЦП последовательного счета показана на рис. 5.8, а. В ней по сигналу “Пуск” RS-триггер переключается в состояние “1” и разрешает прохождение импульсов от генератора G через элемент И на вход суммирования двоичного счетчика СП. а б Рис. 5.8. Аналого-цифровой преобразователь последовательного счета с ЦАП: а — схема; б — временные диаграммы работы Нарастающий цифровой код с выхода счетчиков СТ2 преобразуется с помощью ЦАП в напряжение, которое подается на вход компаратора КОМП. На второй вход КОМП поступает измеряемое напряжение С7ВХ. В момент равенства напряжений С7ВХ = С/ЦАП компаратор вырабатывает сигнал сброса триггера. После этого счет импульсов прекращается и на выходе счетчика СТ2 фиксируется цифровой эквивалент входного напряжения. Время преобразования /Г1р зависит от значения напряжения С7ВХ (рис. 5.8, б). В АЦП с двухтактным интегрированием (рис. 5.9, а) преобразование реализуется за два такта. В первом такте сигнал “Пуск” переключает RS-триггер Т\ в состояние “1”. Входное напряжение минус С7ВХ через ключ 771, управляемый выходом Q}, поступает на интегратор ИНТ. Импульсы от генератора G через схему И ИЛИ подаются на вход суммирования счетчика СТ2. После подсчета 2П импульсов (и — разрядность счетчика) сигнал с выхода Q„ старшего разряда счетчика СТ2 сбрасывает триггер Т1 и устанавливает в состояние “1” RS-триггер 72. На этом первый этап интегрирования заканчивается. Во втором такте на интегратор поступает опорное напряжение плюс С70П через ключ 772, управляемый выходом Q2. Одновременно высокий уровень напряжения с выхода Q2 разрешает прохождение импульсов от генератора G на суммирующий вход счетчика С72 (начинается новый счет). 198 Цифро-аналоговые и аналого-цифровые преобразователи Рис. 5.9. Аналого-цифровой преобразователь с двухтактным интегрированием: а — схема; б — временная диаграмма работы В момент, когда напряжение на выходе ИНТ равно нулю, компаратор обнуляет триггер Л, прохождение импульсов на вход счетчика блокируется, и на его выходах фиксируется цифровой код Nx, пропорциональный входному напряжению. Для интегратора приросты напряжений в первом и втором тактах равны (рис. 5.9, б): £4х(^2~ ~ Uon(t2 — t2). Поскольку t2 - /| = T02", t3- t2 = Nx То, где To— период следования импульсов генератора G, то получим: t/Bx = (t/on№)/2". (5.4) Пример 5.2 При измерении десятиразрядный АЦП с опорным напряжением Uon = 10 В, зафиксировал в счетчике число импульсов Nx = 455. Найти значение входного напряжения UBX. На основе выражения (5.4) имеем: U вх=1^ . 4,48 В. 2° 1024 Аналого-цифровые преобразователи с поразрядным кодированием В схеме АЦП с поразрядным кодированием (уравновешиванием) входное напряжение С/вх сравнивается скачкообразно с выходным напряжением С/ЦАП по определенной программе (рис. 5.10, а). Сигнал “Пуск” включает генератор периодических импульсов G и одновременно записывает единицу в старший разряд сдвигового регистра поразрядного приближения РгПП, а остальные разряды обнуляет. В первом такте с помощью компаратора КОМП сравниваются входное напряжение С/Вх и напряжение с выхода ЦАП, соответствующее значению старшего разряда РгПП. Алгоритм сравнения следующий: если [7цап > С7ВХ, то в следующем такте эта единица исключается, а вместо нее в РгПП добавляется следующая из соседнего разряда. Если же С/ЦАП < С/вх, то единица в старшем разряде сохраняется и к ней прибавляется единица из соседнего разряда и т. д. 5.2. Аналого-цифровые преобразователи 199 Л' X а б Рис. 5.10. Аналого-цифровой преобразователь поразрядного кодирования: а — схема; б — временные диаграммы работы Преобразование заканчивается за время гпр = n0T0 + 1, где п0— разрядность РгПП; То — период следования тактирующих импульсов. Временные диаграммы поразрядного уравновешивания для С/вх = 4,5 В и п = 4 показаны на рис. 5.10, б. Аналого-цифровой преобразователь параллельного и параллельно-последовательного действия Принцип работы АЦП параллельного действия основан на одновременном сравнении входного сигнала с 2П-1 эталонами напряжений, где п — разрядность выходного кода. Сравнение осуществляется с помощью компараторов, результат сравнения запоминается в регистре и в дальнейшем шифруется в л-разрядный двоичный выходной код (рис. 5.11). Рис. 5.11. Схема АЦП параллельного действия В АЦП опорные напряжения формируются с помощью резистивного делителя. Каждое опорное напряжение Uoni подается вместе с входным напряжением С/Вх на входы соответствующих компараторов КОМП. Срабатывают только те компараторы, в которых С7ВХ > Uo„, Результат сравнения через фиксирующие триггеры Т подается на шифратор CD, который преобразовывает его в выходной «-разрядный двоичный код. Аналого-цифровые преобразователи параллельного действия являются наиболее быстродействующими, поскольку преобразование осуществляется за одну операцию сравнения. К недостаткам этого АЦП относится большое число источников опорного напряжения и соответствующих им компараторов. Параллельно-последовательные АЦП имеют повышенную разрядность, высокое быстродействие и приемлемую сложность (рис. 5.12). 200 Цифро-аналоговые и аналого-цифровые преобразователи Рис. 5.12. Схема АЦП параллельно-псследоеательного действия В таких комбинированных преобразователях несколько малоразрядных АЦП параллельного действия соединяются последовательно между собой. Входной аналоговый сигнал подается на первый АЦП (АЦП1), на выходе которого формируются старшие разряды N„ выходного кода. Эти разряды подключаются также на вход ЦАП. Выходной сигнал с ЦАП сравнивается в усилителе разности (УР) с входным сигналом. Усиленная разность этих сигналов подается на вход другого АЦП (АЦП2), который преобразует ее в выходной код Умл младших разрядов. 5.2.2. Основные параметры и характеристики аналого-цифровых преобразователей В АЦП используют методы поразрядного кодирования, последовательного счета с двоичным интегрированием и параллельного преобразования. Микросхемы АЦП выполняют по гибридной и полупроводниковой технологии. В последние годы выпускают, в основном, полупроводниковые АЦП. Основные параметры и характеристики некоторых полупроводниковых АЦП представлены в табл. 5.2. Таблица 5.2 Тип микросхемы Разрядность, п Максимальное отклонение, <5Лд, % Время преобразования Тп, мкс Технология Примечание КР572ПВЗ 8 ±0,75 7,5 КМОП МК, СМ К1107ПВ1 6 ±0,5 0,1 Биполярная — М1107ПВ6 10 ± 1,5 0,06 Биполярная ФЗ, СМ К1108ПВ2 12 ± 1 0,9 Биполярная ФЗ Примечание. В табл. 5.2: СМ — совместимость с микропроцессорами; ФЗ — функциональная законченность; МК — многоканальность. Некоторые АЦП являются функционально законченными, однако большинство требуют дополнительных внешних элементов: операционных усилителей, источников опорного напряжения, генераторов тактовых импульсов, резисторов и конденсаторов. Микросхемы АЦП обычно имеют диапазон изменения входного напряжения 0-10 В, а некоторые АЦП допускают использование двухполярного входного сигнала. Разрядность АЦП составляет 6-12, причем ряд АЦП допускают наращивание разрядности. Контрольные вопросы 201 Быстродействие АЦП определяется, в основном, методом преобразования и элементной базой (ТТЛШ, ЭСЛ, КМОП). Наибольшее быстродействие имеют АЦП ' параллельного действия на базе ЭСЛ-елементов (гпр < 20 нс). Преобразователи по уровням выходных сигналов согласуются с ТТЛШ-, ЭСЛ- и КМОП-микросхемами. Большинство современных АЦП совместимы с микропроцессорными устройствами. Выходные цепи в таких АЦП имеют три устойчивых состояния (лог. 0, лог. 1 и Z). Выходным кодом АЦП чаще всего является двоичный. В АЦП с двоичным интегрированием применяется двоично-десятичный код для сопряжения с индикаторами и измерительными приборами. Здесь для представления каждого десятичного знака используются четыре двоичных разряда. Используются также обратный и дополнительный коды. Некоторые АЦП — это БИС аналого-цифровой системы сбора данных, включающей в свой состав, кроме преобразователя, многоканальный мультиплексор, оперативное запоминающее устройство, схемы буферов и управления. Основными направлениями совершенствования АЦП являются: • повышение быстродействия основных узлов, особенно компараторов; • использование АЦП комбинированного действия; • повышение точности преобразования, в частности, увеличение разрядности до 16 и более; • снижение потребляемой мощности; • достижение удобства и гибкости применения, особенно согласования с микропроцессорными устройствами. Контрольные вопросы 1. Назовите области применения ЦАП. 2. Расскажите о принципе преобразования цифрового кода в напряжение. 3. Назовите отличия в структуре резисторных матриц со ступенчатыми резисторами типа R-2R. 4. Каково назначение токовых ключей? 5. Какую функцию в схеме ЦАП выполняет ОУ? 6. Охарактеризуйте основные параметры ЦАП. 7. Назовите серии микросхем отечественных ЦАП. 8. Каковы основные параметры и характеристики АЦП? 9. Поясните структуру АЦП последовательного счета. 10. Нарисуйте временные диаграммы АЦП последовательного счета. 11. Поясните принцип построения АЦП с двухтактным интегрированием. 12. Нарисуйте структурную схему АЦП поразрядного кодирования. 13. Поясните временные диаграммы работы АЦП поразрядного кодирования. 14. Охарактеризуйте работу АЦП параллельного действия. 15. Поясните работу АЦП параллельно-последовательного действия. 16. Как строится умножающий ЦАП? 202 Основы компьютерной техники Глава 6 Основы компьютерной техники 6.1. Общая характеристика компьютерной техники и короткая история ее развития Компьютерная техника — это совокупность средств для автоматизации процессов обработки информации, а также отрасль техники, которая занимается разработкой, изготовлением и эксплуатацией компьютеров. Комплекс электронного оборудования, которое предназначено для автоматизации процессов обработки дискретной информации и имеет общее управление, называют цифровой электронной вычислительной машиной (ЭВМ). В наше время диапазон использования ЭВМ существенно расширился: называют более 20 тыс. областей их применения — от научно-инженерных задач до искусственного интеллекта, математического моделирования, робототехники. Поэтому вместо термина ЭВМ используют его более современный синоним — компьютер. Первые сведения о вычислительных устройства относятся к 1500 г., когда Леонардо да Винчи разработал эскиз 13-разрядного суммирующего устройства с десятизубцовыми колесами. В 1642 г. Б. Паскаль во Франции создал первую действующую модель восьмиразрядного цифрового устройства “Паскалина”. Каждая цифра в нем определялась положением десятисекторного колеса. Сложение осуществлялось поворотом колеса на соответствующее число секторов. Немецкий ученый Г. Лейбниц в 1670 г. описал механическую счетную машину, которая выполняла операции сложения, вычитания, умножения и деления. В 1833 г. английский математик Ч. Беббидж спроектировал и почти 30 лет совершенствовал “аналитическую машину", в которую были заложены фундаментальные для компьютерной техники принципы: • автоматическое (без остановки) выполнение операций; • необходимость памяти (“склада") для хранения чисел, набранных зубчатыми колесами; • работа по программе, вводимой “на ходу” с перфокарты в исполнительное устройство (“фабрику”) со скоростью выполнения операций в машине. Ограниченные технические возможности того времени не позволили реализовать эти прогрессивные идеи. Автоматические цифровые машины на механических и релейных элементах создавали одновременно и независимо во многих странах. Так, в 1936 г. А. Тьюринг в Англии и Э. Пост в США разработали концепцию абстрактной автоматической цифровой машины, которая могла решать любую алгоритмическую задачу. В 1941 г. немецкий инженер К. Зюс разработал две электромеханические машины с программным управлением “Зюс-1” и “Зюс-2”. 6.2. Архитектура и структура компьютеров 203 В 1944 г. в США под управлением Г. Айкена была разработана электромеханическая машина “Марк-1", где впервые были использованы идеи Ч. Беббиджа. В том же году в США под управлением Д. Эккерта, Д. Моучли и Дж. фон Неймана был создан первый в мире компьютер ENIAC с применением электронных ламп и электромеханических реле. В машине было задействовано 18 тыс. ламп и 1,5 тыс. реле; она выполняла за одну секунду 5 тыс. операций сложения, 300 — умножения, потребляла мощность 150 кВт. У этих первых машин были следующие недостатки: • программы не хранились в памяти, а набирались с помощью внешних сложных и продолжительных коммутаций; • данные представлялись и обрабатывались в десятичной системе счисления последовательно (разряд за разрядом). 6.2. Архитектура и структура компьютеров Архитектура — это наиболее общие принципы построения компьютеров. Она охватывает круг вопросов, существенных в первую очередь для пользователя: функциональный состав технических и программных средств и их взаимодействие в процессе обработки информации; систему команд, их форматы и способы кодирования; методы адресации команд и данных. Основные принципы построения компьютеров изложили в 1946 г. американские математики Дж. фон Нейман, К. Голдстайн и А. Беркс. Совокупность этих принципов породила классическую неймановскую архитектуру, которая остается актуальной и сегодня. В общем неймановская архитектура обладает следующими основными признаками: • наличие одного вычислителя, имеющего процессор, память, средства ввода-вывода информации, а также средства управления; • применение двоичной системы счисления как для представления информации, так и для выполнения арифметико-логических операций; • размещение в единой общей памяти команд и чисел фиксированной длины; • линейную структуру адресации ячеек памяти, что требует наличия в процессоре счетчика команд; • централизованное автоматическое последовательное считывание команд из памяти и интерпретацию их процессором; данные обрабатываются параллельно — одновременно над всеми разрядами машинного слова; • низкий уровень машинного языка. Первый компьютер EDSAC с хранимой программой в памяти на 512 ртутных линиях задержки был построен М. Уилксом (Англия) в 1949 г. Машина выполняла 15 тыс. сложений и 120 умножений за одну секунду. В 1950 г. под управлением Дж. фон Неймана был создан первый полностью электронный компьютер классической архитектуры EDVAC, который положил начало машинам первого поколения. В 1948-1950 гг. в Институте электротехники в Киеве была создана малая электронная счетная машина “МЭСМ". Ее разработкой руководил выдающийся ученый и конструктор многих компьютеров академик С. А. Лебедев. В машине “МЭСМ” были 204 Основы компьютерной техники использованы (независимо от Неймана) основные принципы классической архитектуры. Компьютер содержал 3500 ламп, 2500 диодов, занимал площадь 60 м2, потреблял мощность 25 кВт и выполнял 50 операций за одну секунду. Компьютер классической архитектуры включает в себя (рис. 6.1): • арифметико-логическое устройство (АЛУ); • оперативную память (ОП); • средства хранения и ввода-вывода информации: внешние запоминающие устройства (ВЗУ); устройства ввода информации (УВв); устройства вывода информации (УВыв); все эти устройства называют внешними или периферийными (ПУ); • устройство управление (УУ). Вместе с АЛУ оно образует процессор. При наличии в машине нескольких процессоров выделяют центральный (ЦП). Рис. 6.1. Структура компьютера Арифметико-логическое устройство предназначено для выполнения арифметических и логических операций, предусмотренных системой команд данного компьютера. В состав АЛУ входят регистры и комбинационные схемы. Данные для обработки в АЛУ поступают из ОП и называются операндами. Результаты операций пересылаются в ОП или временно сохраняются в регистрах АЛУ. Устройство управления (УУ) считывает и дешифрирует в соответствующей последовательности команды, формирует и подает управляющие сигналы для других устройств компьютера. Оперативная память предназначена для временного хранения программ и данных, в ней выполняются операции записи и считывания информации. Кроме ОП, используют также постоянную память, в которой выполняются только операции считывания. Оперативную (ОЗУ) и постоянную память (ПЗУ), а также регистры АЛУ называют внутренней памятью (рис. 6.2). Процессор и ОП вместе образуют ядро компьютера. Рис. 6.2. Внутренняя память компьютера Операции ввода-вывода — это обмен информацией между ядром машины и ПУ. Операция ввода передает информацию из ПУ в ядро компьютера, а операция вывода — наоборот. 6.2. Архитектура и структура компьютеров 205 Внешняя память предназначена для длительного и энергонезависимого хранения больших объемов информации. Физически ее реализуют в виде накопителей (рис. 6.3): • на гибких магнитных дисках (НГМД); • на жестких магнитных дисках (НЖМД); они называются винчестерами; • на оптических (лазерных) дисках (НОД); • на магнитных лентах (НМЛ). Накопители на дисках имеют электромеханический привод (дисковод), который обеспечивает вращение диска, блок магнитных головок для считывания или записи, систему установки (позиционирования) магнитной головки в требуемое положение и электронный блок управления. Рис. 6.3. Внешняя память компьютера Все виды внешней памяти обеспечивают обмен информацией с ядром компьютера, однако ВЗУ выделяют в отдельный вид ПУ по следующим признакам: • внешняя память обеспечивает хранение больших массивов информации и быстродействующий обмен с ядром компьютера (более 30 тыс. байт/с); • информация в ВЗУ хранится в виде, недоступном для непосредственного восприятия человеком. Устройства ввода и вывода информации (УВВ) рассматривают как единую функциональную часть компьютера. Различные по своим функциями, принципам построения и характеристикам УВВ и ВЗУ вместе образуют группу очень разнообразных внешних или периферийных устройств. К УВв информации относятся (рис. 6.4): • клавиатура, предназначенная для ввода программ и данных и управления работой машины; • сканеры, предназначенные для ввода графической информации; • ручные манипуляторы — мышь, шариковый манипулятор и джойстик — предназначенные для быстрого перемещения курсора в заданную точку экрана дисплея и выполнения других действий; • устройства речевого ввода, предназначенные для управления машиной с помощью речевых команд; • устройства ввода с перфолент, перфокарт и др. К УВыв информации относят (рис. 6.5): • принтеры (матричные, струйные, лазерные); • дисплеи (на электронно-лучевых трубках (ЭЛТ), на жидких кристаллах, плазменные, люминесцентные), предназначенные для отображения информации, которая вводится с клавиатуры (для контроля правильности набора данных) или из памяти машины; 206 Основы компьютерной техники • плоттеры (графопостроители), предназначенные для печати чертежей высокого качества; • синтезаторы звука и языка, предназначенные для преобразования аналоговых сигналов в цифровой код и наоборот; • устройства вывода информации на перфоленты и перфокарты. Рис. 6.4. Устройства ввода информации Рис. 6.5. Устройства вывода информации Связь между функциональными частями машины осуществляют с помощью интерфейса — совокупности шин, сигналов, вспомогательных микросхем и алгоритмов, предназначенных для обмена информацией между устройствами компью- тера Выделяют три шины (рис. 6 6): • адреса (ША), предназначенная для передачи адреса ячеек ОП и регистров ПУ; • данных (ШД), предназначенная для передачи данных; • управления (ШУ), предназначенная для передачи управляющих сигналов от процессора к устройствам и наоборот Рис. 6.6. Структура процессора 6.3. Принцип программного управления 207 6.3. Принцип программного управления В компьютере реализуют принцип программного управления, суть которого следующая. Для решения каждой задачи разрабатывают алгоритм на основе числовых методов вычислений. Алгоритм переводится на язык, свойственный данной машине, в виде программы— языковой конструкции, которая является упорядоченной последовательностью описаний и команд, предназначенных для обработки информации. Каждая команда определяет действия компьютера в отношении выполнения любой операции, реализующей аппаратные (технические) и программные средства. Программа записывается в ОП в виде машинных слов, которые кодируются цифрами 0 и 1 и различаются только способом применения. Код операции поступает в регистр команд IR (instruction register) и затем дешифрируется, а данные — в регистры АЛУ (см. рис. 6.6). Команды программы размещены в ОП линейно (одна за другой) и выполняются последовательно. Номер команды в ОП определяется программным счетчиком PC (program counter). Управляющий автомат (УА) вырабатывает множество управляющих сигналов, которые подаются на все устройства машины. Регистр команд, программный счетчик и управляющий автомат входят в состав УУ. Последовательное управление обусловлено наличием одного процессора. Команды условного и безусловного ветвления изменяют линейный порядок считывания и выполнения команд. Множество всех операций, реализуемых в компьютере, составляет его операционные ресурсы. Компьютеры, операционные ресурсы которых обеспечивают выполнение любого алгоритма обработки информации, называют универсальными. Для этого теоретически достаточно иметь в операционных ресурсах только четыре операции: пересылку слова между любыми ячейками ОП, прибавление единицы к слову (вычитание единицы из слова), условный переход по совпадению слов и безусловную остановку компьютера. Однако в компьютерах операционные ресурсы состоят из десятков и сотен команд, что упрощает программирование. В общем в компьютерах используют список команд, который обеспечивает выполнение следующих групп операций: • пересылки данных между регистрами АЛУ, регистрами и ОП; • арифметических операций над двоичными числами с фиксированной и плавающей запятой: сложение, вычитание, знаковое и беззнаковое умножение и деление; • логических операций отрицания, дизъюнкции, конъюнкции, сложения по модулю два; • установления соотношений — больше, меньше, неравно, больше-равно и др.; • сдвига влево или вправо — арифметического, логического, циклического; • управления программой: условными и безусловными переходами и вызовами процедур, безусловными и условными возвратами из процедур, прерыванием программ; некоторые компьютеры имеют специальные команды для организации циклов; • ввода-вывода данных между ядром машины и ПУ; • специальных операций для машин с сопроцессорами (математическими расширителями): вычислений квадратного корня, синуса, косинуса, логарифмические и др.; 208 Основы компьютерной техники • преобразования из одного формата в другой (например, из восьмибитного в 16-битный); • системных операций — загрузки служебных регистров, защиты памяти; • мультимедийных операций для выполнение действий со звуком, графикой, изображением. С ростом производительности процессора увеличивается и количество команд. Компьютеры, в зависимости от их сложности и назначения, работают в следующих режимах (рис. 6.7): Рис. 6.7. Режимы работы компьютеров • однопрограммном — каждая программа отдельно загружается в ОП и выполняется до получения результата; • многопрограммном — в память загружается несколько программ; когда выполнение одной из программ останавливается из-за необходимости обратиться к ПУ, то машина переключается на выполнение другой программы; • пакетном — в ВЗУ формируется пакет задач, которые затем считываются в ОП группами и выполняются в многопрограммном реж