Сайт о телевидении

Сайт о телевидении

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

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

„ ЦИФРОВАЯ СХЕМОТЕХНИКА ”

ХАРЬКОВ 2006

Предисловие

1 ЛОГИЧЕСКИЕ И СХЕМОТЕХНИЧЕСКИЕ ОСНОВЫ ЦИФРОВОЙ МИКРОСХЕМОТЕХНИКИ

1.2 Логические элементы

1.3 Основные законы алгебры логики

1.4 Дизъюнктивные нормальные формы

1.5 Минимизация логических функций

1.6 Синтез комбинационных логических схем

2 КОМБИНАЦИОННЫЕ СХЕМЫ

2.1 Основные положения

2.2 Дешифраторы

2.3 Шифраторы

2.4 Демультиплексоры

2.5 Мультиплексоры

2.6 Арифметические устройства

3 ТРИГГЕРНЫЕ УСТРОЙСТВА

3.1 Основные понятия

3.2 Асинхронный RS-триггер

3.3 Синхронные триггеры

4 РЕГИСТРЫ

4.1 Общие сведения о регистрах

4.2 Регистры памяти

4.3 Сдвигающие регистры

4.4 Реверсивные регистры

4.5 Универсальные регистры

5 СЧЕТЧИКИ

5.1 Общие сведения о счетчиках

5.2 Счетчики с последовательным переносом

5.3 Счетчики с параллельным переносом

5.4 Реверсивные счетчики

5.5 Счетчики с произвольным коэффициентом счета не равным 2n

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРИ

ПРЕДИСЛОВИЕ

Данное методическое пособие содержит информацию, которая обеспечивает изучение дисциплин:

- «Цифровая схемотехника» для студентов специальности 5.091504 (Обслуживание компьютерных и интеллектуальных систем и сетей);

- «Микросхемотехника» для студентов специальности 5.090805 (Конструирование, производство и техническое обслуживание изделий электронной техники);

- «Электронные приборы и микроэлектроника» для студентов специальности 5.090704 (Конструирование, производство и техническое обслуживание радиотехнических устройств).

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

Методическое пособие состоит из пяти разделов:

Логические и схемотехнические основы цифровой микросхемотехники,

Комбинационные схемы,

Триггерные устройства,

Регистры,

Счетчики.

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

Основные понятия, определения, правила выделены «жирным» шрифтом, чтобы сделать освоение предмета более удобным и наглядным.

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

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

1 ЛОГИЧЕСКИЕ и схемотехнические ОСНОВЫ ЦИФРОВОЙ МИКРОСХЕМОТЕХНИКИ

1.1 Основные понятия алгебры логики

Логика - это наука о законах и формах мышления.

Математическая логика - наука о применении математических методов для решения логических задач.

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

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

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

Различные логические переменные могут быть связаны функциональными зависимостями. Например, выражение у = f (x1, х2) указывает на функциональную зависимость логической переменной у от логических переменных х1 и х2, называемых аргументами или входными переменными.

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

Отрицание (операция «НЕ»);

Логическое умножение (конъюнкция, операция «И»);

Логическое сложение (дизъюнкция, операция «ИЛИ»).

Отрицание (операция «НЕ») - это такая логическая связь между входной логической переменной х и выходной логической переменной у, при которой у истинно только тогда, когда х ложно, и, наоборот, у ложно только тогда, когда истинно х. Изобразим данную функциональную зависимость в виде таблицы 1.1, которая называется таблицей истинности.

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

Таблица 1.1- Таблица истинности операции «НЕ»

x y
0 1
1 0

Логическая функция НЕ переменной у записывается как у =

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

Логическое умножение (конъюнкция, операция «И») - это такая функция, которая истинна только тогда, когда одновременно истинны все умножаемые переменные. Таблица истинности операции логического умножения соответствует таблице 1.2.

Таблица 1.2- Таблица истинности операции логического умножения

х2 х1 y
0 0 0
0 1 0
1 0 0
1 1 1

Операция «И» обозначается точкой ( ). Иногда точка подразумевается. Например, операция «И» между двумя переменными х1 и х2 обозначается как у = х1 х2.

Логическое сложение (дизъюнкция, операция «ИЛИ») – это такая функция, которая ложна только тогда, когда одновременно ложны все слагаемые переменные. Таблица истинности операции логического сложения соответствует таблице 1.3. Операция «ИЛИ» обозначается знаком V. Например, у = x1 V х2.

Таблица 1.3 - Таблица истинности операции логического сложения

ЛЕКЦИИ

По дисциплине

"Организация и функционирование ЭВМ"

для учащихся

специальности 2-40 01 01«Программное обеспечение информационных технологий»

Ошмяны 2010 г.


АННОТАЦИЯ

На лекционный материал по дисциплине "Организация и функционирование ЭВМ" для учащихся специальности 2-40 01 01 «Программное обеспечение информационных технологий», разработанный преподавателем УО «Ошмянский государственный аграрно-экономический колледж» М.Г. Шаткевич.

Актуальность методического материала, его значение. Данный набор лекций представляет собой комплекс материалов, необходимых для качественной организации работы учащихся на практических занятиях по освоению дисциплины " Организация и функционирование ЭВМ" для учащихся специальности 2-40 01 01 «Программное обеспечение информационных технологий»,

Лекции разработаны в строгом соответствии с действующим в УО «Ошмянский государственный аграрно-экономический колледж» Положением об учебно-методических комплексах дисциплин. В состав комплекса вошли лекции по всем разделам дисциплины «Организация и функционирование ЭВМ».

Возможность практического применения. Комплекс лекций может быть рекомендован преподавателям при подготовке и проведении занятий по дисциплине "Организация и функционирование ЭВМ" для учащихся специальности 2-40 01 01 «Программное обеспечение информационных технологий», а также учащимся дневной формы обучения при самостоятельном изучении.

Заключение цикловой комиссии. Комплекс лекций рассмотрен на заседании цикловой комиссии юридических дисциплин и информационных технологий, рекомендован к внутриколледжскому использованию (протокол №___ от «____»______________________20___г.).


Введение. 4

Представление информации в ЭВМ... 5

Коды с выявлением ошибок. 9

Коды с исправлением ошибок. 10

Раздел 2. Алгебра логики и теоретические основы синтеза цифровых устройств . 11



Элементы математической логики. 11

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

Логические элементы и схемы. Классификация логических устройств. 15

Методы минимизации логических функций. 17

Раздел 3. Синтез комбинационных схем .. 18

Этапы построения логической схемы.. 18

Мультиплексоры и демультиплексоры.. 20

Дешифраторы и шифраторы.. 22

Компараторы, сумматоры.. 24

Раздел 4. Триггерные элементы цифровых устройств . 25

Классификация триггеров и их общие характеристики. Асинхронный RS-триггер и его разновидности 25

Асинхронные триггеры с одним входом.. 27

Cинхронные триггеры.. 29

Раздел 5. Синтез цифровых автоматов . 31

Регистры. Регистр сдвига. 31

Счетчики по mod M. Реверсивные счетчики. Синтез последовательных схем.. 33

Раздел 6. Современное состояние и перспективы развития элементной базы и средств вычислительной техники . 35


Введение

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

Это утверждение в равной мере относится как к аппаратной организации, так и к структуре и организации программного обеспечения. На верхнем уровне иерархии находятся проблемно ориентированные программные средства, такие, как Mathcad (для решения математических задач), Visual Basic для офисных приложений, уровнем ниже расположены процедурно ориентированные языки (Си/Си++, Паскаль)..., самый нижний уровень это уровень физической реализации цифровых логических элементов.

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

ü принцип цифрового представления данных в технических устройствах;

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

ü системы счисления;

ü некоторые основные понятия цифровой схемотехники: комбинационные логические устройства и устройства с памятью (триггеры, регистры, счетчики).

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

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

Дисциплина базируется на знаниях, полученных учащимися при изучении дисциплин «Математика», «Информатика».

Для изучения учебного материала предусматриваются практические и лабораторные работы. Программа дисциплины рассчитана на 68 часов, из них 34 часа – лекции, 24 часа – практические занятия, 10 часов – лабораторные занятия.

Список литературы

1. Бабич Н. П., Жуков И. А. Компьютерная схемотехника. Методы построения и

2. проектирования: Учебное пособие. – К.: «МК-Пресс», 2004

3. Жмакин А. П. Архитектура ЭВМ. - СПб.: БХВ-Петербург, 2006

4. Лысиков Б.Г. Цифровая и вычислительная техника.- Мн.: УП Экоперспектива, 2002

5. Новиков Ю. В. Основы цифровой схемотехники. Базовые элементы и схемы. Методы проектирования. М.: Мир, 2001

6. Угрюмов Е.П. Цифровая схемотехника.- СПб.: БХВ-Петербург, 2004

7. Бойко В. И. Схемотехника электронных схем. Микропроцессоры и микроконтроллеры. - СПб.: БХВ-Петербург, 2004

8. Цилькер Б. Я., Орлов С.А. Организация ЭВМ и систем. – СПб.: Питер, 2004

9. Информатика: учебник/ Б.В. Соболь – Ростов н/Д: Феникс, 2006


Раздел 1. Математические основы цифровой схемотехники

25 апреля 2010 в 16:16

Самостоятельное изучение схемотехники. Основные понятия. Часть 1

  • Электроника для начинающих

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


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

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

Цифровой сигнал можно представить в виде временной диаграммы.

В природе дискретных сигналов не существует, по этому их заменяют аналоговыми. Аналоговый сигнал не может перейти из 0 в 1 мгновенно, по этому такой сигнал обладает фронтом и срезом .
Если рисовать упрощенно то это выглядит так:

1 - низкий уровень сигнала, 2 - высокий уровень сигнала, 3 - нарастание сигнала (фронт), 4 - спад сигнала (срез)

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

Отрицание - инвертирует сигнал.
На схемах обозначается так:

Логическое ИЛИ (логическое сложение, дизъюнкция)

На схеме:

Логическое И (логическое умножение, конъюнкция)

На схеме:

Последние два могут иметь отрицание на выходе (И-НЕ, ИЛИ-НЕ). Значения их логических функций инвертируются, а на схеме выход рисуется кружочком.

Сводная таблица логических функций двух аргументов выглядит так:

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

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

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

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

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

По количеству входов и выходов схемы бывают: с одним входом и одним выходом, с несколькими входами и одним выходом, с одним входом и несколькими выходами, с несколькими входами и выходами.

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

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

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

В качестве примера ниже представлена схема электрическая функциональная логического преобразователя (комбинационного автомата), реализующего логическую функцию в элементном базисе из логических элементов И, ИЛИ, НЕ.

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

Сделать это можно к примеру в Electronic workbench.

Вот для примера первое выполненное задание:

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

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

Тебе наверняка знакомы римские и арабские цифры. В римской системе числа представляются в виде комбинации букв I, V, X, L, C, D, M, а в арабской с помощью комбинации символов 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Но существуют и другие формы представления числа. Одна из них -- это двоичная форма. Или, как её чаще называют, двоичная система счисления. В такой системе счисления любое число представляет собой последовательность только из "0" и "1".

Арабские Римские Двоичные
0 - 00
1 I 01
2 II 10
3 III 11

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

Независимо от того, с какой информацией работает цифровое устройство, глубоко внутри оно занимается обработкой чисел.

Почему именно "0" и "1", а не "0", "1" и "2", к примеру? На самом деле были вполне успешные попытки создать цифровую технику, которая использует не двоичную, а троичную систему исчисления ("0", "1" и "2"), но двоичная все же победила.

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

Структура цифрового устройства

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

Давай выберем что-нибудь из этого списка и посмотрим, как оно устроено. Пусть это будет микроконтроллер (МК)! Ладно, признаюсь. Микроконтроллер я выбрал неспроста. Дело в том, что именно появление микропроцессоров произвело настоящую революцию в электронике и выдвинуло её развитие на новый уровень.

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

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

В наше время наибольшей популярностью пользуются, к примеру, микроконтроллеры AVR, PIC, ARM. Каждая из компаний, что выпускает перечисленные виды МК, производит десятки, если не сотни, разновидностей микроконтроллеров, предназначенных под все мыслимые и немыслимые задачи.

Как работает микроконтроллер

Несмотря на всю сложность конструкции настоящего микроконтроллера, рассказать, как он функционирует можно всего одним предложением: "В память микроконтроллера записывается текст программы, МК считывает команды из этой программы и выполняет их", -- вот и всё.

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

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

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

Что происходит, когда включается микроконтроллер?

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

Что произойдёт, когда ты подашь питание на свою схему с МК? Оказывается, ничего особенного. Там нет вообще никакой магии. Происходить будет следующее:

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

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

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

Как устроен типичный МК

Любая микропроцессорная система стоит на трёх китах:

  1. Процессор (АЛУ + устройство управления),
  2. Память (ROM, RAM, FLASH),
  3. Порты ввода-вывода .

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

МК, как я уже писал, тоже микропроцессор. Просто специализированный. Физическая структура микросхем МК разных серий может существенно различаться, но идейно они будут похожи и будут иметь такие, например, блоки как: ПЗУ, ОЗУ, АЛУ, порты ввода/вывода, таймеры, счетчики, регистры.

ПЗУ Постоянная память. Всё, что в неё записано, остаётся в ПЗУ и после того как устройство было отключено от питания.
ОЗУ Временная память. ОЗУ -- это рабочая память МК. В неё помещаются все промежуточные результаты выполнения команд или данные от внешних устройств.
АЛУ Математический мозг микроконтроллера. Именно он складывает, вычитает, умножает, а иногда и делит, сравнивает нолики и единички в процессе выполнения команд программы. Один из важнейших органов МК.
Порты I/O Просто устройства для общения МК с внешним миром. Без них ни во внешюю память записать, ни данные от датчика или клавиатуры получить нельзя.
Таймеры Готовил торт или курицу? Ставил таймер, чтобы он тебя оповестил, когда блюдо будет готово? Вот в МК таймер выполняет схожие функции: отсчитывает интервалы, выдаёт сигнал о срабатывании и т.д.
Счетчики Пригождаются, когда требуется что-либо подсчитать.
Регистры Самое непонятное слово для тех, кто хоть раз пытался освоить Асемблер самостоятельно. А между прочим они своего рода выполняют роль быстрой ОЗУ МК. Каждый регистр представляет собой своего рода ячейку памяти. И в каждом МК их всего несколько десятков.

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

Мозг микроконтроллера

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

  • чтение из ячейки памяти
  • запись в ячейку памяти
  • чтение из порта В/В
  • запись в порт В/В

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

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

Память микроконтроллера

Ранее в таблице с типичными устройствами, входящими в МК, я указал два вида памяти: ПЗУ и ОЗУ. Различие между ними заключается в том, что в ПЗУ данные сохраняются между включениями устройства. Но при этом ПЗУ (ROM) довольно медленная память. Поэтому и существует ОЗУ (RAM), которая довольно быстра, но умеет хранить данные только тогда, когда на устройство подано питание. Стоит выключить устройство и все данные оттуда...пшик и нету.

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

В зарубежном мире ОЗУ и ПЗУ называют RAM и ROM:

  1. RAM (Random Access Memory) -- память со случайны доступом
  2. ROM (Read Only Memory) -- память только для чтения

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

ПЗУ

Сейчас всё больше получила распространение ПЗУ память типа FLASH (или, по-нашему, ЭСПЗУ). Она позволяет сохранять данные даже тогда, когда устройство выключено. Поэтому в современных МК, например в МК AVR в качестве ПЗУ используются именно FLASH-память.

Раньше микросхемы ПЗУ-памяти были однократно-программируемыми. Поэтому если были записаны программа или данные с ошибками, то такую микросхемы просто выкидывали. Чуть позже появились ПЗУ, которые можно было перезаписывать многократно. Это были чипы с ультрафиолетовым стиранием. Они довольно долго прожили и даже сейчас встречаются в некоторых устройствах из 1990-х...2000-х годов. Например, вот такая ПЗУ родом из СССР.

У них был один существенный минус -- при случайно засветке кристалла (тот, что виден в окошечке) программа могла быть повреждена. А также ПЗУ до сих пор работает медленней, чем ОЗУ.

ОЗУ

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

ПАМЯТЬ ПРОГРАММ И ПАМЯТЬ ДАННЫХ

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

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

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

В 1930-х годах правительство США поручило Гарвардскому и Принстонскому университетам разработать архитектуру ЭВМ для военно-морской артиллерии. В конце 1930-х годов в Гарвардском университете Говардом Эйкеном была разработана архитектура компьютера Марк I, в дальнейшем называемая по имени этого университета.

Ниже я схематично изобразил гарвардскую архитектуру:

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

ИЕРАРХИЯ ПАМЯТИ

КАК УСТРОЕН МОЗГ МИКРОКОНТРОЛЛЕРА

Ты уже значешь, что мозгом МК является ЦПУ -- центральный процессор, который состоит из АЛУ (арифметико-логическое устройство) и устройства управления (УУ). УУ дерижирует всем оркестром из памяти, внешних устройств и АЛУ. Благодаря ему МК может выполнять команды в том порядке в каком мы этого хотим.

АЛУ -- это калькулятор, а УУ говорит АЛУ что, с чем, когда и в какой последовательности вычислять или сравнивать. АЛУ умеет складывать, вычитать, иногда делить и умножать, выпонять логические операции: И, ИЛИ, НЕ (о них будет чуть позже)

Любой компьютер, МК в том числе, умеет сегодня работать только с двоичными числами, составленными из "0" и "1". Именно эта простая идея привела к революции в области электроники и взрывному развитию цифровой техники.

Предположим, что АЛУ надо сложить два числа: 2 и 5. В упрощенном виде это будет выглядеть так:

При этом УУ знает в каком месте памяти взять число "2", в каком число "5" и в какое место памяти поместить результат. УУ знает обо всём этом потому, что оно прочитало об этом в команде из программы, которую в данный момент прочитало в программе. Более подробно про арефмитические операции с двоичными числами и как устроен сумматор АЛУ изнутри я расскажу чуть позже.

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

ЛОГИЧЕСКИЕ ОПЕРАЦИИ

Тебе наверняка хорошо знакомо шуточное высказывание про "женскую логику"? Но речь пойдет не о ней, а логике в принципе. Логика оперирует причинно-следственными связями: если солнце взошло, то стало светло. Причина "солнце взошло" вызвала следствие "стало светло". При этом про каждое утверждение мы можем сказать "ИСТИНА" или "ЛОЖЬ".

Например:

  • "Птицы плавают под водой" -- это ложь
  • "Вода мокрая" -- при комнатной температуре это утверждение истинно

Как ты заметил, второе утверждение при определённых условиях может быть как истинным, так и ложным. В нашем компьютере есть только числа и инженеры с математичками придумали обозначать истину "1", а ложь "0". Это дало возможность записывать истинность утверждения в виде двоичных чисел:

  • "Птицы плавают под водой" = 0
  • "Вода мокрая" = 1

А ещё такая запись позволила математикам выполнять с этими утверждениями целые операции -- логические операции. Первым до этого додумался Джордж Буль. По имени которого и названа такая алгебра: "булева алгебра", которая оказалась очень удобной для цифровых машин.

Вторая половина АЛУ -- это логические операции. Они позволяют "сравнивать" утверждения. Базовых логических операций всего несколько штук: И, ИЛИ, НЕ, -- но этого достаточно, так как более сложные могут комбинироваться из этих трёх.

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

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

Логическое операция НЕ меняет истинность утверждения на противоположное значение. Это логическое отрицание. Например:

Солнце всходит каждый день = ИСТИНА

НЕ (Солнце всходит каждый день) = НЕ ИСТИНА = ЛОЖЬ

Благодаря логическим операция мы можем сравнивать двоичные числа, а так как наши двоичные числа всегда что-то обозначают, например, какой-нибудь сигнал. То получается, что благодаря булевой алгебре мы можем сравнивать настоящие сигналы. Этим логическая часть АЛУ и занимается.

УСТРОЙСТВО ВВОДА-ВЫВОДА

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

Подведу итоги:

  1. Цифровая электроника -- верхушка айсберга электроники
  2. Цифровое устройство знает и понимает только числа
  3. Любая информация: сообщение, текст, видео, звук, -- могут быть закодированы с помощью двоичных чисел
  4. Микроконтроллер -- это микрокомпьютер на одной микросхеме
  5. Любая микропроцессорная система состоит из трёх частей: процессор, память, устройства ввода-вывода
  6. Процессорс состоит из АЛУ и управляющего устройства
  7. АЛУ умеет выполнять арифметические и логические операции с двоичными числами

Оставайся с нами. В следующих статьях я расскажу более подробно как устроена память МК, порты ввода-вывода и АЛУ. А после этого мы пойдём ещё дальше и в итоге дойдём до аналоговой электроники.

p.s.
Нашёл ошибку? Сообщи мне!

/blog/tsifrovaya-elektronika-chto-eto/ В этом рассказе первые шаги в мир электроники делаются с необычного направления. Своё путешествие по электронике ты начинаешь с мира цифровой схемотехники, с микроконтроллеров 2016-11-17 2016-12-26 цифровая электроника, цифровая схемотехника, микроконтроллер, логические элементы

Большой радиолюбитель и конструктор программ

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

Простейшие схемы

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

Схема пробника для прозвонки электрической цепи.

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

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


Схема логического пробника.

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

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

Внутреннее устройство цифровых микросхем ТТЛ

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


Схема базового элемента ТТЛ 2И-НЕ и его переходная характеристика.

На входе элемента стоит многоэмиттерный транзистор VT1, затем усилительный каскад на транзисторе VT2 и двухтактный выходной каскада на транзисторах VT3, VT4.

Опишем работу логического элемента 2И-НЕ. В исходном состоянии входное напряжение не превышает 0,5 В, а эмиттерный переход транзистора VT1 открыт, данного напряжения не достаточно для перевода коллекторного перехода в открытое состояние, то же относится и к эмиттерным переходам транзисторов VT2, VT4. Поэтому данные транзисторы закрыты, а транзистор VT3 – открыт, напряжением, поступающим с R2. Диод VD3 оказывается открытым и на выходе элемента напряжение составляет примерно 3…4 В (точка А ). Когда начинается увеличиваться напряжение на эмиттерах VT1, то транзистор VT2 начинает открываться, а транзистор VT3 плавно закрываться (участок А – Б ). Дальнейшее увеличение напряжения на входном транзисторе приводит к тому, что транзистор VT2 ещё больше открывается, напряжение на R3 тоже возрастает и открывается транзистор VT4. В результате, эмиттерный переход транзистора VT4 шунтирует резистор R3, и транзистор VT2 резко открывается, а напряжение на выходе элемента уменьшается. В этот момент (участок Б – В ) все транзисторы открыты и находятся в активном режиме. Если продолжать увеличивать входное напряжение, то транзисторы VT2 и VT4 перейдут в режим насыщения (участок В – Г ), а транзистор VT3 закроется и значение выходного напряжения станет равным напряжению насыщения транзистора VT4, а ток будет ограничен резистором R4.

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

Внутреннее устройство цифровых микросхем КМОП

Так же как и в ТТЛ семействе, КМОП микросхемах базовым элементом является 2И-НЕ , внутреннее устройство которого показано ниже


Схема базового элемента КМОП 2И-НЕ и его переходная характеристика.

В данном логическом элементе работают комплементарные полевые транзисторы . Транзисторы с каналом р-типа (VT1, VT2) подключены к положительному проводнику источника питания, с каналом n-типа (VT3, VT4) соединены последовательно.

При входном напряжении 2 В и менее транзисторы VT1 и VT2 открыты, так как напряжение на участках затвор – исток (при напряжении питания 9 В) составляет не менее 7 В. Напряжение на таких же участках транзисторов VT3 и VT4 оказывается недостаточным для их открывания, поэтому на выходе элемента будет напряжение, почти равное напряжению питания, то есть около 9 В (точка А ). По мере увеличения входного напряжения транзисторы начинают открываться, а VT1 и VT2 закрываться. На участке А – Б этот процесс происходит сравнительно плавно, а на участке Б – В он ускоряется и наиболее линеен. В точке В транзисторы VT1 и VT2 почти полностью закрыты, а VT3 и VT4 открыты. Выходное напряжение в этом случае невелико и при дальнейшем увеличении входного напряжения до уровня источника питания оно стремиться к нулю (точка Г ).

Логический элемент в линейном режиме

Использование логических элементов цифровых микросхем для работы с аналоговыми сигналами возможно лишь в случае, если их режим выведен в линейный или близкий к нему. Так в линейном режиме ТТЛ элемент эквивалентен усилителю к коэффициентом усиления 10 … 15 (примерно 20 дБ), а элемент КМОП – усилителю с коэффициентом усиления 10 … 20 (20 … 26 дБ).


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

Для вывода логического элемента на линейный участок применяют различные способы. Один из них основан на включении на входе элемента ТТЛ резистора R . Этот резистор вызовет ток, который будет протекать через эмиттерный переход входного транзистора элемента ТТЛ. Изменяя сопротивление внешнего резистора, можно изменять напряжение на выходе элемента, то есть изменять положение его рабочей точки на передаточной характеристике. Для элементов ТТЛ сопротивление такого внешнего резистора составляет от 1 кОм до 3 кОм. Однако такой способ не применим для КМОП микросхем , так как они работают без выходных токов (есть токи утечки, но они малы и нестабильны).

Второй способ вывода логического элемента на рабочий режим может быть подача на вход соответствующего напряжения , например с помощью резистивного делителя . Так, для элементов ТТЛ середина линейного участка передаточной характеристики соответствует входное напряжение 1,5…1,8 В , а для КМОП 3…6 В (при напряжении питания 9 В). Для разных логических элементов это напряжение не одинаково, поэтому его подбирают опытным путём. Номиналы входных резисторов выбирают таким образом, что бы входные токи элементов не влияли на напряжение, снимаемое с резистивного делителя.

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

Сопротивление резистора в цепи ООС выбирают исходя из обеспечения элементу необходимого входного тока. Для элементов КМОП оно составляет от нескольких килоом до десятков мегаом , а для ТТЛ – от десятков Ом до 1 кОм . Но применение ООС снижает коэффициент усиления элемента.

Усилители на логических элементах

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

Серия Схема
вывода в
линейный
режим
К УС,
дБ
F max ,
МГц
Р потр
мВт
U вых,
В
R вх,
кОм
R вых,
кОм
R1,
кОм
R2,
кОм
К155 OOC 18 40 20 1,2 0,6 0,05 0,68 0,68
Ток 21 0,8 1,9
К176 ООС 25 5,5 5 … 20 1,5 0,4 0,05 7,5 5,1
Ток 17 3 … 4 5,0 3,5 6 6,2 4
561 OOC 25 1000 7 1000 1000

Схема простейшего усилителя на элементе ТТЛ приведена ниже. Регулировка усилителя сводится к установке подстроечным резистором R1рабочей точки элемента на середине линейного участка передаточной характеристики.


Простейший усилитель на ТТЛ элементе

Недостатком простых усилителей является невысокое входное сопротивление , что ограничивает область их применения. К тому же коэффициент усиления небольшой. Устраняется данный недостаток использованием совместно с транзисторами. Коэффициент усиления повышается включением последовательно нескольких каскадов. Кроме того, цифровая микросхема содержит несколько идентичных элементов, это позволяет создавать многоканальные усилители. Примером может служить схема показанная ниже. Основные характеристики усилителя: коэффициент усиления – 50; выходное сопротивление 50 Ом, входное сопротивление 5 кОм, верхняя граничная частота 40 МГц.


Схема усилителя с транзистором на входе

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


Схемы усилителей на элементах КМОП.

Пороговые устройства на логических элементах

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


Схема порогового устройстван на логических элементах.

По большёму счёту логический элемент является сам пороговым устройствам, однако его передаточная характеристика не совсем линейна. Для повышения линейности передаточной характеристики логического элемента, его необходимо охватить положительной обратной связью (ПОС) по постоянному току через резистор R2. В таком случае он превращается в своеобразный триггер Шмитта с возможностью регулирования пороговых напряжений. Ширина петли гистерезиса (разность между пороговыми напряжениями) зависит от соотношения номиналов резисторов R1 и R2. От этих же резисторов зависит и чувствительность. При увеличении R2 и уменьшении R1 чувствительность повышается, а ширина петли гистерезиса уменьшается. Для микросхем ТТЛ сопротивление R1 = 0,1 … 2 кОм, а R2 = 2 … 10 кОм. Пороговые устройства на КМОП элементах отличаются высокой экономичностью, а недостатком является низкая чувствительность. Для КМОП микросхем R1 – несколько десятков килоом, а R2 – несколько сотен килоом.

Генераторы на логических элементах

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

Ниже показана схема генератора с RC частотно-зависимой цепью . Работа данного генератора связана с процессами зарядки-разрядки конденсатора С1 через резистор R1.


Схема RC-генератора

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

F \approx \frac{0,7}{RC}

При работе такой генератор вырабатывает прямоугольные импульсы со скважностью примерно равной 2. Максимальная частота генерации ограниченна величиной задержки переключения логических элементов, так для КМОП микросхем максимальная частота составляет 2 … 4 МГц , а для ТТЛ – несколько десятков МГц .

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


Схема LC-генератора

В качестве частотно-зависимой связи применяются как последовательный так и параллельный колебательный контур , но в любом случае частота колебаний будет соответствовать формуле Томпсона

F=\frac{1}{2 \pi \sqrt{LC}}

Сопротивление резистора R1 выбирается также как и для усилительного каскада .

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


Схема генератора с кварцевой стабилизацией частоты

Теория это хорошо, но без практического применения это просто слова.