Аннотация: В этой лекции рассказывается о базовой терминологии микропроцессорной техники, о принципах организации микропроцессорных систем, о структуре связей, режимах работы и об основных типах микропроцессорных систем.
В этой главе рассматриваются базовые концепции, которые лежат в основе любой микропроцессорной системы — от простейшего микроконтроллера до сложного компьютера. Именно в этом смысле здесь используется термин «философия».
Для начала несколько основных определений.
- Электронная система — в данном случае это любой электронный узел, блок, прибор или комплекс, производящий обработку информации.
- Задача — это набор функций, выполнение которых требуется от электронной системы.
- Быстродействие — это показатель скорости выполнения электронной системой ее функций.
- Гибкость — это способность системы подстраиваться под различные задачи.
- Избыточность — это показатель степени соответствия возможностей системы решаемой данной системой задаче.
- Интерфейс — соглашение об обмене информацией, правила обмена информацией, подразумевающие электрическую, логическую и конструктивную совместимость устройств, участвующих в обмене. Другое название — сопряжение.
Микропроцессорная система может рассматриваться как частный случай электронной системы, предназначенной для обработки входных сигналов и выдачи выходных сигналов (рис. 1.1). В качестве входных и выходных сигналов при этом могут использоваться аналоговые сигналы, одиночные цифровые сигналы, цифровые коды, последовательности цифровых кодов. Внутри системы может производиться хранение, накопление сигналов (или информации), но суть от этого не меняется. Если система цифровая (а микропроцессорные системы относятся к разряду цифровых), то входные аналоговые сигналы преобразуются в последовательности кодов выборок с помощью АЦП , а выходные аналоговые сигналы формируются из последовательности кодов выборок с помощью ЦАП . Обработка и хранение информации производятся в цифровом виде.
Характерная особенность традиционной цифровой системы состоит в том, что алгоритмы обработки и хранения информации в ней жестко связаны со схемотехникой системы. То есть изменение этих алгоритмов возможно только путем изменения структуры системы, замены электронных узлов, входящих в систему, и/или связей между ними. Например, если нам нужна дополнительная операция суммирования, то необходимо добавить в структуру системы лишний сумматор . Или если нужна дополнительная функция хранения кода в течение одного такта, то мы должны добавить в структуру еще один регистр . Естественно, это практически невозможно сделать в процессе эксплуатации, обязательно нужен новый производственный цикл проектирования, изготовления, отладки всей системы. Именно поэтому традиционная цифровая система часто называется системой на «жесткой логике».
Чем отличается МИКРОКОНТРОЛЛЕР и МИКРОПРОЦЕССОР
Рис. 1.1. Электронная система.
Любая система на «жесткой логике» обязательно представляет собой специализированную систему, настроенную исключительно на одну задачу или (реже) на несколько близких, заранее известных задач. Это имеет свои бесспорные преимущества.
Во-первых, специализированная система (в отличие от универсальной) никогда не имеет аппаратурной избыточности, то есть каждый ее элемент обязательно работает в полную силу (конечно, если эта система грамотно спроектирована).
Во-вторых, именно специализированная система может обеспечить максимально высокое быстродействие , так как скорость выполнения алгоритмов обработки информации определяется в ней только быстродействием отдельных логических элементов и выбранной схемой путей прохождения информации. А именно логические элементы всегда обладают максимальным на данный момент быстродействием.
Но в то же время большим недостатком цифровой системы на «жесткой логике» является то, что для каждой новой задачи ее надо проектировать и изготавливать заново. Это процесс длительный, дорогостоящий, требующий высокой квалификации исполнителей. А если решаемая задача вдруг изменяется, то вся аппаратура должна быть полностью заменена. В нашем быстро меняющемся мире это довольно расточительно.
Путь преодоления этого недостатка довольно очевиден: надо построить такую систему, которая могла бы легко адаптироваться под любую задачу, перестраиваться с одного алгоритма работы на другой без изменения аппаратуры. И задавать тот или иной алгоритм мы тогда могли бы путем ввода в систему некой дополнительной управляющей информации, программы работы системы (рис. 1.2). Тогда система станет универсальной, или программируемой, не жесткой, а гибкой. Именно это и обеспечивает микропроцессорная система .
Рис. 1.2. Программируемая (она же универсальная) электронная система.
Но любая универсальность обязательно приводит к избыточности. Ведь решение максимально трудной задачи требует гораздо больше средств, чем решение максимально простой задачи. Поэтому сложность универсальной системы должна быть такой, чтобы обеспечивать решение самой трудной задачи, а при решении простой задачи система будет работать далеко не в полную силу, будет использовать не все свои ресурсы. И чем проще решаемая задача, тем больше избыточность , и тем менее оправданной становится универсальность . Избыточность ведет к увеличению стоимости системы, снижению ее надежности, увеличению потребляемой мощности и т.д.
Кроме того, универсальность , как правило, приводит к существенному снижению быстродействия. Оптимизировать универсальную систему так, чтобы каждая новая задача решалась максимально быстро, попросту невозможно. Общее правило таково: чем больше универсальность , гибкость, тем меньше быстродействие . Более того, для универсальных систем не существует таких задач (пусть даже и самых простых), которые бы они решали с максимально возможным быстродействием. За все приходится платить.
Таким образом, можно сделать следующий вывод . Системы на «жесткой логике» хороши там, где решаемая задача не меняется длительное время, где требуется самое высокое быстродействие , где алгоритмы обработки информации предельно просты. А универсальные, программируемые системы хороши там, где часто меняются решаемые задачи, где высокое быстродействие не слишком важно, где алгоритмы обработки информации сложные. То есть любая система хороша на своем месте.
Однако за последние десятилетия быстродействие универсальных ( микропроцессорных ) систем сильно выросло (на несколько порядков). К тому же большой объем выпуска микросхем для этих систем привел к резкому снижению их стоимости. В результате область применения систем на «жесткой логике» резко сузилась. Более того, высокими темпами развиваются сейчас программируемые системы, предназначенные для решения одной задачи или нескольких близких задач. Они удачно совмещают в себе как достоинства систем на «жесткой логике», так и программируемых систем, обеспечивая сочетание достаточно высокого быстродействия и необходимой гибкости. Так что вытеснение «жесткой логики» продолжается.
1. Что такое микропроцессор?
Ядром любой микропроцессорной системы является микропроцессор или просто процессор (от английского processor ). Перевести на русский язык это слово правильнее всего как «обработчик», так как именно микропроцессор — это тот узел, блок, который производит всю обработку информации внутри микропроцессорной системы . Остальные узлы выполняют всего лишь вспомогательные функции : хранение информации (в том числе и управляющей информации, то есть программы), связи с внешними устройствами, связи с пользователем и т.д. Процессор заменяет практически всю «жесткую логику», которая понадобилась бы в случае традиционной цифровой системы. Он выполняет арифметические функции ( сложение , умножение и т.д.), логические функции (сдвиг, сравнение, маскирование кодов и т.д.), временное хранение кодов (во внутренних регистрах), пересылку кодов между узлами микропроцессорной системы и многое другое. Количество таких элементарных операций, выполняемых процессором, может достигать нескольких сотен. Процессор можно сравнить с мозгом системы.
Но при этом надо учитывать, что все свои операции процессор выполняет последовательно, то есть одну за другой, по очереди. Конечно, существуют процессоры с параллельным выполнением некоторых операций, встречаются также микропроцессорные системы , в которых несколько процессоров работают над одной задачей параллельно, но это редкие исключения. С одной стороны, последовательное выполнение операций — несомненное достоинство, так как позволяет с помощью всего одного процессора выполнять любые, самые сложные алгоритмы обработки информации. Но, с другой стороны, последовательное выполнение операций приводит к тому, что время выполнения алгоритма зависит от его сложности. Простые алгоритмы выполняются быстрее сложных. То есть микропроцессорная система способна сделать все, но работает она не слишком быстро, ведь все информационные потоки приходится пропускать через один-единственный узел — микропроцессор (рис. 1.3). В традиционной цифровой системе можно легко организовать параллельную обработку всех потоков информации, правда, ценой усложнения схемы.
Рис. 1.3. Информационные потоки в микропроцессорной системе.
Итак, микропроцессор способен выполнять множество операций. Но откуда он узнает, какую операцию ему надо выполнять в данный момент? Именно это определяется управляющей информацией, программой. Программа представляет собой набор команд (инструкций), то есть цифровых кодов, расшифровав которые, процессор узнает, что ему надо делать. Программа от начала и до конца составляется человеком, программистом, а процессор выступает в роли послушного исполнителя этой программы, никакой инициативы он не проявляет (если, конечно, исправен). Поэтому сравнение процессора с мозгом не слишком корректно. Он всего лишь исполнитель того алгоритма, который заранее составил для него человек. Любое отклонение от этого алгоритма может быть вызвано только неисправностью процессора или каких-нибудь других узлов микропроцессорной системы .
Все команды, выполняемые процессором, образуют систему команд процессора. Структура и объем системы команд процессора определяют его быстродействие , гибкость, удобство использования . Всего команд у процессора может быть от нескольких десятков до нескольких сотен. Система команд может быть рассчитана на узкий круг решаемых задач (у специализированных процессоров) или на максимально широкий круг задач (у универсальных процессоров). Коды команд могут иметь различное количество разрядов (занимать от одного до нескольких байт ). Каждая команда имеет свое время выполнения , поэтому время выполнения всей программы зависит не только от количества команд в программе, но и от того, какие именно команды используются.
Для выполнения команд в структуру процессора входят внутренние регистры, арифметико-логическое устройство ( АЛУ , ALU — Arithmetic Logic Unit ) , мультиплексоры, буферы, регистры и другие узлы. Работа всех узлов синхронизируется общим внешним тактовым сигналом процессора. То есть процессор представляет собой довольно сложное цифровое устройство (рис. 1.4).
Рис. 1.4. Пример структуры простейшего процессора.
Впрочем, для разработчика микропроцессорных систем информация о тонкостях внутренней структуры процессора не слишком важна. Разработчик должен рассматривать процессор как » черный ящик «, который в ответ на входные и управляющие коды производит ту или иную операцию и выдает выходные сигналы. Разработчику необходимо знать систему команд, режимы работы процессора, а также правила взаимодействия процессора с внешним миром или, как их еще называют, протоколы обмена информацией. О внутренней структуре процессора надо знать только то, что необходимо для выбора той или иной команды, того или иного режима работы.
Пройдите тестирование «Микропроцессорные системы»
Команды распределяют: по функциональному назначению, передача данных, обработка данных, передача управления и …..
одноадресное
дополнительное
без адресное
двухадресное
….- микропроцессоры, в которых начало и конец выполнения операций задаются устройством управления
Синхронные микропроцессоры
Асинхронные микропроцессоры
Универсальные микропроцессоры
Цифровые микропроцессоры
Что называется Вводом/выводом (ВВ)?
адреса ячейки памяти, в которой находится окончательный исполнительный адрес
разрядностью, т.е. максимальным числом одновременно обрабатываемых двоичных разрядов
передача данных между ядром ЭВМ, включающим в себя микропроцессор и основную память, и внешними устройствами (ВУ)
поле памяти с упорядоченной последовательностью записи и выборки информации
С помощью чего микропроцессор координирует работу всех устройств цифровой системы?
с помощью шины адреса
с помощью шины управления
с помощью постоянного запоминающего устройства (ПЗУ)
с помощью шины данных
…. — могут быть применены для решения широкого круга разнообразных задач (их эффективная производительность слабо зависит от проблемной специфики решаемых задач)
Асинхронные микропроцессоры
Цифровые микропроцессоры
Универсальные микропроцессоры
Синхронные микропроцессоры
…….- это процедура или схема преобразования информации об операнде в его исполнительный адрес
Режим формата памяти
Режим кодирования памяти
Режим обслуживания памяти
Режим адресации памяти
Пропустить вопрос
Следующий вопрос
Завершить тест
Воспользуйтесь нашим сервисом
«Премиум Пакет»
, чтобы получить доступ к скачиванию тестирования в формате pdf и отображению правильных ответов во время прохождения тестов.
Положение о проведении олимпиад
Если вы уже проходили тестирование на нашем портале, вы можете оформить подтверждающий диплом для портфолио.
Нажмите на кнопку ниже, чтобы перейти в редактор дипломов и выбрать тестирование, по которому вы хотите Получить диплом.
Микропроцессорные системы
Применение микропроцессорных систем практически во всех электрических устройствах — важнейшая черта технической инфраструктуры современного общества. Электроэнергетика, промышленность, транспорт, системы связи существенно зависят от компьютерных систем управления. Микропроцессорные системы встраиваются в измерительные приборы, электрические аппараты, осветительные установки и д.р.
Всё это обязывает электрика знать хотя бы основы работы микропроцессорной техники.
Микропроцессорные системы предназначены для автоматизации обработки информации и управления различными процессами.
Понятие «Микропроцессорная система» очень широко и объединяет такие понятия как «Электронно-вычислительная машина (ЭВМ)», «управляющая ЭВМ», «Компьютер» и т.п.
Микропроцессорная система включает в себя аппаратное обеспечение или по-английски – hardware и программное обеспечение (ПО) — software.
Микропроцессорная система работает с цифровой информацией , которая представляет собой последовательность цифровых кодов.
В основе любой микропроцессорной системы лежит микропроцессор , который способен воспринимать только двоичные числа (составленные из 0 и 1). Двоичные числа записываются посредством двоичной системы счисления. Например, в повседневной жизни мы пользуемся десятичной системой счисления, в которой для записи чисел используются десять символов или цифр 0,1,2,3,4,5,6,7,8,9. Соответственно в двоичной системе таких символов (или цифр) всего два – 0 и 1.
Необходимо понимать, что система счисления – это всего лишь правила записи чисел, и выбор типа системы определятся удобством применения. Выбор двоичной системы обусловлен её простотой, а значит надёжностью работы цифровых устройств и лёгкостью их технической реализации.
Рассмотрим единицы измерения цифровой информации:
Бит (от английского «BInary digiT» — двоичная цифра) принимает только два значения: 0 или 1. Можно закодировать логическое значение «да»» или «нет», состояние «включено» или «выключено», состояние «открыто» или «закрыто» и т.п.
Группа из восьми бит называется байтом, например 10010111. Один байт позволяет кодировать 256 значений: 00000000 – 0, 11111111 — 255.
Бит – наименьшая единица представления информации.
Байт — наименьшая единица обработки информации. Байт — часть машинного слова, состоящая обычно из 8 бит и используемая как единица количества информации при её хранении, передаче и обработке на ЭВМ. Байт служит для представления букв, слогов и специальных символов (занимающих обычно все 8 бит) или десятичных цифр (по 2 цифры в 1 байт).
Два взаимосвязанных байта называется словом, 4 байта – двойное слово, 8 байт – учетверённое слово.
Почти вся информация, которая нас окружает, является аналоговой. Поэтому, прежде чем информация попадёт на обработку в процессор, она подвергается преобразованию посредством АЦП (аналого-цифровой преобразователь). Кроме того, информация кодируется в определённом формате и может быть числовой, логической, текстовой (символьной), графической, видео и д.р.
Например, для кодирования текстовой информации используется таблица кодов ASCII (от англ. American Standard Code for Information Interchange — Американский стандартный код для обмена информацией). Запись одного символа осуществляется одним байтом, который может принимать 256 значений. Графическая информация разбивается на точки (пиксели) и производится кодирование цвета и положение каждой точки по горизонтали и вертикали.
Кроме двоичной и десятичной системы в МС используют шестнадцатеричную систему, в которой для записи чисел используются символы 0. 9 и A. F. Её применение обуславливается тем, что один байт описывается двухразрядным шестнадцатеричным числом, что значительно сокращает запись цифрового кода и делает его более читаемым (11111111 – FF).
Таблица 1 – Запись чисел в различных системах счисления
Для определения значения числа (например, значения числа 100 для разных систем счисления может составлять 42, 10010, 25616), в конце числа добавляют латинскую букву, обозначающую систему счисления: для двоичных чисел букву b, для шестнадцатеричных — h, для десятичных – d. Число без дополнительного обозначения считается десятичным.
Перевод чисел из одной системы в другую и основные арифметические и логические операции над числами позволяет производить инженерный калькулятор (стандартное приложение операционной системы Windows).
Структура микропроцессорной системы
Основу микропроцессорной системы составляет микропроцессор (процессор), который выполняет функции обработки информации и управления. Остальные устройства, входящие в состав микропроцессорной системы, обслуживают процессор, помогая ему в работе.
Обязательными устройствами для создания микропроцессорной системы являются порты ввода/вывода и отчасти память . Порты ввода/вывода связывают процессор с внешним миром, обеспечивая ввод информации для обработки и вывод результатов обработки, либо управляющих воздействий. К портам ввода подключают кнопки (клавиатуру), различные датчики; к портам вывода — устройства, которые допускают электрическое управление: индикаторы, дисплеи, контакторы, электроклапаны, электродвигатели и т.д.
Память нужна в первую очередь для хранения программы (либо набора программ), необходимой для работы процессора. Программа — это последовательность команд, понятных процессору, написанная человеком (чаще программистом).
Структура микропроцессорной системы представлена на рисунке 1. В упрощённом виде процессор состоит из арифметически-логического устройства (АЛУ), осуществляющего обработку цифровой информации и устройства управления (УУ).
Память обычно включает постоянно-запоминающее устройство (ПЗУ), являющееся энергонезависимым и предназначенное для долговременного хранения информации (например, программ), и оперативно-запоминающее устройство (ОЗУ), предназначенное для временного хранения данных.
Рисунок 1 – Структура микропроцессорной системы
Процессор, порты и память взаимодействуют между собой посредством шин. Шина – это набор проводников, объединённых по функциональному признаку. Единый набор системных шин называют внутрисистемная магистраль , в которой выделяют:
- шину данных DB (Data Bus), по которой производится обмен данными между ЦП, памятью и портами;
- шину адреса AB (Address Bus), используемой для адресации процессором ячеек памяти и портов;
- шину управления CB (Control Bus), набор линий, передающих различные управляющие сигналы от процессора на внешние устройства и обратно.
Микропроцессор — программно-управляемое устройство, предназначенное для обработки цифровой информации и управления процессом этой обработки, выполненное в виде одной (или нескольких) интегральной схемы с высокой степенью интеграции электронных элементов.
Микропроцессор характеризуется большим числом параметров, поскольку он одновременно является сложным программно-управляемым устройством и электронным прибором (микросхемой). Поэтому для микропроцессора важны, как тип корпуса, так и система команд процессора . Возможности микропроцессора определяются понятием архитектуры микропроцессора.
Приставка «микро» в названии процессора означает, что выполняется он по микронной технологии.
Рисунок 2 – Внешний вид микропроцессора Intel Pentium 4
В ходе работы микропроцессор считывает команды программы из памяти или порта ввода и исполняет их. Что означает каждая команда, определяется системой команд процессора. Система команд заложена в архитектуре микропроцессора и выполнение кода команды выражается в проведении внутренними элементами процессора определённых микроопераций.
Архитектура микропроцессора — это его логическая организация; она определяет возможности микропроцессора по аппаратной и программной реализации функций, необходимых для построения микропроцессорной системы.
Основные характеристики микропроцессоров:
1) Тактовая частота (единица измерения МГц или ГГц) – количество тактовых импульсов за 1 секунду. Тактовые импульсы вырабатывает тактовый генератор, который чаще всего находится внутри процессора. Т.к. все операции (инструкции) выполняются по тактам, то от значения тактовой частоты зависит производительность работы (количество выполняемых операций в единицу времени). Частотой процессора можно варьировать в определённых пределах.
2) Разрядность процессора (8, 16, 32, 64 бит и т.д.) – определяет число байтов данных, обрабатываемых за один такт. Разрядность процессора определяется разрядностью его внутренних регистров. Процессор может быть 8-разрядным, 16-разрядным, 32-разрядным, 64-разрядным и т.д., т.е. данные обрабатываются порциями по 1, 2, 4, 8 байт. Понятно, что чем больше разрядность, тем выше производительность работы.
Внутренняя архитектура микропроцессора
Упрощенная внутренняя архитектура типового 8-разрядного микропроцессора показана на рисунке 3. В структуре микропроцессора можно выделить три основных части:
1) Регистры для временного хранения команд, данных и адресов;
2) Арифметико-логическое устройство (АЛУ) , которое реализует арифметические и ло-гические операции;
3) Схема управления и синхронизации — обеспечивает выборку команд, организует функционирование АЛУ, обеспечивает доступ ко всем регистрам микропроцессора, воспринимает и генерирует внешние управляющие сигналы.
Рисунок 3 — Упрощенная внутренняя архитектура 8-разрядного микропроцессора
Как видно из схемы, основу процессора составляют регистры, которые делятся на специальные (имеющие определенное назначение) и регистры общего назначения.
Программный счетчик (PC) — регистр, содержащий адрес следующего командного байта. Процессор должен знать, какая команда будет выполняться следующей.
Аккумулятор – регистр, используемый в подавляющем большинстве команд логической и арифметической отработки; он одновременно является и источником одного из байт данных, которые требуются для операции АЛУ, и местом, куда помещается результат операции АЛУ.
Регистр признаков (или регистр флагов) содержит информацию о внутреннем состоянии микропроцессора, в частности о результате последней операции АЛУ. Регистр флагов не является регистром в обычном смысле, а представляет собой просто набор триггер-защелок (флаг поднят или опущен. Обычно имеются флаж¬ки нуля, переполнения, отрицательного результата и переноса.
Указатель стека (SP) — следит за положением стека, т. е. содержит адрес последней его использованной ячейки. Стек – способ организации хранения данных.
Регистр команды содержит текущий командный байт, который декодируется дешифратором команды.
Линии внешних шин изолированы от линий внутренней шины с помощью буферов, а основные внутренние элементы связаны быстродействующей внутренней шиной данных.
Для повышения производительности многопроцессорной системы функции центрального процессора могут распределяться между несколькими процессорами. В помощь центральному процессору в компьютер часто вводят сопроцессоры , ориентированные на эффективное исполнение каких-либо специфических функций. Широко распространены математические и графические , сопроцессоры ввода-вывода , разгружающие центральный процессор от несложных, но многочисленных операций взаимодействия с внешними устройствами.
На современном этапе основным направлением повышения производительности является разработка многоядерных процессоров , т.е. объединение в одном корпусе двух и более процессоров, с целью выполнения нескольких операций параллельно (одновременно).
Лидирующими компаниями по разработке и изготовлению процессоров являются Intel и AMD.
Алгоритм работы микропроцессорной системы
Алгоритм — точное предписание, однозначно задающее процесс преобразования исходной информации в последовательность операций, позволяющих решать совокупность задач определённого класса и получать искомый результат.
Главным управляющим элементом всей микропроцессорной системы является процессор . Именно он, за исключением нескольких особых случаев, управляет всеми остальными устройствами. Остальные же устройства, такие, как ОЗУ, ПЗУ и порты ввода/вывода являются ведомыми.
Сразу после включения процессор начинает читать цифровые коды из той области памяти, которая отведена для хранения программ. Чтение происходит последовательно ячейка за ячейкой, начиная с самой первой. В ячейке записаны данные, адреса и команды. Команда — это одно из элементарных действий, которое способен выполнить микропроцессор. Вся работа микропроцессора сводится к последовательному чтению и выполнению команд.
Рассмотрим последовательность действий микропроцессор во время выполнения команд программы:
1) Перед выполнением очередной команды микропроцессор содержит ее адрес в программном счетчике РС.
2) МП обращается к памяти по адресу, содержащемуся в РС, и считывает из памяти первый байт очередной команды в регистр команд.
3) Дешифратор команд декодирует (расшифровывает) код команды.
4) В соответствии с полученной от дешифратора информацией устройство управления вырабатывает упорядоченную во времени последовательность микроопераций, реализующих предписания команды, в том числе:
— извлекает операнды из регистров и памяти;
— выполняет над ними предписанные кодом команды арифметические, логические или другие операции;
— в зависимости от длины команды модифицирует содержимое РС;
— передает управление очередной команде, адрес которой снова находится в программном счетчике РС.
Совокупность команд микропроцессора можно разделить на три группы:
1) Команды перемещения данных
Перемещение происходит между памятью, процессором, портами ввода/вывода (каждый порт имеет свой собственный адрес), между регистрами процессора.
2) Команды преобразования данных
Любые данные (текст, рисунок, видеоролик и т.д.) представляют собой числа, а с числами можно выполнять только арифметические и логические операции. Поэтому к командам этой группы относятся сложение, вычитание, сравнение, логические операции и т.п.
3) Команда передачи управления
Очень редко программа состоит из одной последовательной команд. Подавляющее число алгоритмов требуют разветвления программы. Для того, чтобы программа имела возможность менять алгоритм своей работы в зависимости от какого-либо условия, и служат команды передачи управления. Данные команды обеспечивают протекание выполнения программы по разным путям и организуют циклы.
К внешним, относятся все устройства, находящиеся вне процессора (кроме оперативной памяти) и подключаемые через порты ввода/вывода. Внешние устройства можно подразделить на три группы:
1) устройства для связи человек-ЭВМ (клавиатура, монитор, принтер и т.д.);
2) устройства для связи с объектами управления (датчики, исполнительные механизмы, АЦП и ЦАП);
3) внешние запоминающие устройтсва большой ёмкости (жёсткий диск, дисководы).
Внешние устройства подключаются к микропроцессорной системе физически — с помощью разъёмов, и логически — с помощью портов (контроллеров).
Для взаимодействия процессора и внешних устройств применяется система (механизм) прерываний.
Это специальный механизм, который позволяет в любой момент, по внешнему сигналу заставить процессор приостановить выполнение основной программы, выполнить операции, связанные с вызывающим прерывание событием, а затем вернуться к выполнению основной программы.
У любого микропроцессора имеется хотя бы один вход запроса на прерывание INT (от слова Interrupt — прерывание).
Рассмотрим пример взаимодействия процессора персонального компьютера с клавиатурой (рисунок 4).
Клавиатура — устройство для ввода символьной информации и команд управления. Для подключения клавиатуры в компьютере имеется специальный порт клавиатуры (микросхема).
Рисунок 4 – Работа процессора с клавиатурой
1) При нажатии клавиши контроллер клавиатуры формирует цифровой код. Этот сигнал поступает в микросхему порта клавиатуры.
2) Порт клавиатуры посылает процессору сигнал прерывания. Каждое внешнее устройство имеет свой номер прерывания, по которому процессор его и распознаёт.
3) Получив прерывание от клавиатуры, процессор прерывает выполнение программы (например, редактор Microsoft Office Word) и загружает из памяти программу обработки кодов с клавиатуры. Такая программа называет драйвер.
4) Эта программа направляет процессор к порту клавиатуры, и цифровой код загружается в регистр процессора.
5) Цифровой код сохраняется в памяти, и процессор переходит к выполнению другой задачи.
Благодаря высокой скорости работы, процессор выполняет одновременно большое количество процессов.
Телеграмм канал для тех, кто каждый день хочет узнавать новое и интересное: Школа для электрика
Если Вам понравилась эта статья, поделитесь ссылкой на неё в социальных сетях. Это сильно поможет развитию нашего сайта!
Не пропустите обновления, подпишитесь на наши соцсети:
Параметры микропроцессоров
Центральный процессор подобно любой электронной плате обладает несколькими параметрами. Ниже приведем важнейшие из них.
- Максимальная частота микропроцессора и стабильность синхронизации.
- Номинальные значения источников питания, а также требования к их стабильности. Ради сокращения тепловыделения схем производители стремятся уменьшать напряжение питания. При этом повышается частота работы процессора. Если ранее требовалось напряжение в районе 15 Вольт, то теперь некоторым схемам достаточно менее 1 Вольта.
- Мощность потерь (рассеяния) на выходе схемы. Эта мощность преобразуется в тепло, которое нагревает транзисторы выходного каскада. По данному параметру можно определить степень тепловыделения БИС, определяющую требования к конструктивному исполнению всего микропроцессорного блока. Особую важность эта характеристика имеет во встраиваемых системах.
Только до 8.02
Скачай подборку материалов, чтобы гарантированно найти работу в IT за 14 дней
Список документов:
ТОП-100 площадок для поиска работы от GeekBrains
20 профессий 2023 года, с доходом от 150 000 рублей
Чек-лист «Как успешно пройти собеседование»
Чтобы зарегистрироваться на бесплатный интенсив и получить в подарок подборку файлов от GeekBrains, заполните информацию в открывшемся окне
- Уровни сигналов логических нуля и единицы. Определяются номиналами источника питания.
- Тип корпуса ЦП. Разрабатывается под конкретные условия эксплуатации. По этой характеристике также можно определить совместимость схемы при замене БИС.
- Рабочая температура окружающей среды. Существуют коммерческий и расширенный температурные диапазоны. В первом случае принимаются значения от 0 до +70 градусов Цельсия, во втором — от -40 до +85 градусов Цельсия.
- Помехоустойчивость. Характеризует способность ЦП исправно функционировать в условиях создаваемых помех. В качестве параметра оценки используется интенсивность помех, приводящих к нарушению функций в допустимых пределах. Таким образом, чем выше показатель помехоустойчивости, тем сильнее помехи, в условиях которых схема будет продолжать работать.
- Коэффициент разветвления по выходу. Определяет нагрузочную способность схемы и вычисляется как количество подобных схем, каждую из которых можно подключить к выходу данной схемы, не нарушив тем самым ее работоспособность. С увеличением этого коэффициента расширяются логические способности процессора и одновременно снижается число микросхем, требуемых для создания сложного вычислительного устройства. Однако при этом также снижаются показатели помехоустойчивости и быстродействия ЦП.
- Надежность схемы. Иными словами, это способность процессора функционировать на заложенном уровне качества при определенных условиях и в течение определенного времени. При производстве микропроцессоров, как правило, задается такой параметр, как интенсивность отказов либо средний период наработки на отказ. Но производители современных крупных интегральных схем данный показатель чаще всего не указывают. Лишь по другим характеристикам процессора можно косвенно оценить этот параметр. Например, используют паспортное значение надежности всего изделия.
- Параметры технологического процесса. Главной характеристикой здесь является разрешающая способность процесса. Номинальное значение в современных схемах составляет 5 нм.
Часто задаваемые вопросы о микропроцессорах
Чем отличаются цифровые сигнальные процессоры?
Под этим названием понимается целый класс микропроцессоров, объединенных общим предназначением — обработкой цифровой информации (звуков, изображений и т. д.). В частности ЦСП используются для распознавания образов. У этих схем присутствуют и черты, характерные для универсальных RISC-процессоров — организация работы по типу конвейера, наличие функций для выполнения вычислительных операций с плавающей запятой, поддержка умножения и других сложных специализированных вычислений на аппаратном уровне.
Философия микропроцессорной техники
Аннотация: В этой лекции рассказывается о базовой терминологии микропроцессорной техники, о принципах организации микропроцессорных систем, о структуре связей, режимах работы и об основных типах микропроцессорных систем.
В этой главе рассматриваются базовые концепции, которые лежат в основе любой микропроцессорной системы — от простейшего микроконтроллера до сложного компьютера. Именно в этом смысле здесь используется термин «философия».
Для начала несколько основных определений.
- Электронная система — в данном случае это любой электронный узел, блок, прибор или комплекс, производящий обработку информации.
- Задача — это набор функций, выполнение которых требуется от электронной системы.
- Быстродействие — это показатель скорости выполнения электронной системой ее функций.
- Гибкость — это способность системы подстраиваться под различные задачи.
- Избыточность — это показатель степени соответствия возможностей системы решаемой данной системой задаче.
- Интерфейс — соглашение об обмене информацией, правила обмена информацией, подразумевающие электрическую, логическую и конструктивную совместимость устройств, участвующих в обмене. Другое название — сопряжение.
Микропроцессорная система может рассматриваться как частный случай электронной системы, предназначенной для обработки входных сигналов и выдачи выходных сигналов (рис. 1.1). В качестве входных и выходных сигналов при этом могут использоваться аналоговые сигналы, одиночные цифровые сигналы, цифровые коды, последовательности цифровых кодов. Внутри системы может производиться хранение, накопление сигналов (или информации), но суть от этого не меняется. Если система цифровая (а микропроцессорные системы относятся к разряду цифровых), то входные аналоговые сигналы преобразуются в последовательности кодов выборок с помощью АЦП , а выходные аналоговые сигналы формируются из последовательности кодов выборок с помощью ЦАП . Обработка и хранение информации производятся в цифровом виде.
Характерная особенность традиционной цифровой системы состоит в том, что алгоритмы обработки и хранения информации в ней жестко связаны со схемотехникой системы. То есть изменение этих алгоритмов возможно только путем изменения структуры системы, замены электронных узлов, входящих в систему, и/или связей между ними. Например, если нам нужна дополнительная операция суммирования, то необходимо добавить в структуру системы лишний сумматор . Или если нужна дополнительная функция хранения кода в течение одного такта, то мы должны добавить в структуру еще один регистр . Естественно, это практически невозможно сделать в процессе эксплуатации, обязательно нужен новый производственный цикл проектирования, изготовления, отладки всей системы. Именно поэтому традиционная цифровая система часто называется системой на «жесткой логике».
Рис. 1.1. Электронная система.
Любая система на «жесткой логике» обязательно представляет собой специализированную систему, настроенную исключительно на одну задачу или (реже) на несколько близких, заранее известных задач. Это имеет свои бесспорные преимущества.
Во-первых, специализированная система (в отличие от универсальной) никогда не имеет аппаратурной избыточности, то есть каждый ее элемент обязательно работает в полную силу (конечно, если эта система грамотно спроектирована).
Во-вторых, именно специализированная система может обеспечить максимально высокое быстродействие , так как скорость выполнения алгоритмов обработки информации определяется в ней только быстродействием отдельных логических элементов и выбранной схемой путей прохождения информации. А именно логические элементы всегда обладают максимальным на данный момент быстродействием.
Но в то же время большим недостатком цифровой системы на «жесткой логике» является то, что для каждой новой задачи ее надо проектировать и изготавливать заново. Это процесс длительный, дорогостоящий, требующий высокой квалификации исполнителей. А если решаемая задача вдруг изменяется, то вся аппаратура должна быть полностью заменена. В нашем быстро меняющемся мире это довольно расточительно.
Путь преодоления этого недостатка довольно очевиден: надо построить такую систему, которая могла бы легко адаптироваться под любую задачу, перестраиваться с одного алгоритма работы на другой без изменения аппаратуры. И задавать тот или иной алгоритм мы тогда могли бы путем ввода в систему некой дополнительной управляющей информации, программы работы системы (рис. 1.2). Тогда система станет универсальной, или программируемой, не жесткой, а гибкой. Именно это и обеспечивает микропроцессорная система .
Рис. 1.2. Программируемая (она же универсальная) электронная система.
Но любая универсальность обязательно приводит к избыточности. Ведь решение максимально трудной задачи требует гораздо больше средств, чем решение максимально простой задачи. Поэтому сложность универсальной системы должна быть такой, чтобы обеспечивать решение самой трудной задачи, а при решении простой задачи система будет работать далеко не в полную силу, будет использовать не все свои ресурсы. И чем проще решаемая задача, тем больше избыточность , и тем менее оправданной становится универсальность . Избыточность ведет к увеличению стоимости системы, снижению ее надежности, увеличению потребляемой мощности и т.д.
Кроме того, универсальность , как правило, приводит к существенному снижению быстродействия. Оптимизировать универсальную систему так, чтобы каждая новая задача решалась максимально быстро, попросту невозможно. Общее правило таково: чем больше универсальность , гибкость, тем меньше быстродействие . Более того, для универсальных систем не существует таких задач (пусть даже и самых простых), которые бы они решали с максимально возможным быстродействием. За все приходится платить.
Таким образом, можно сделать следующий вывод . Системы на «жесткой логике» хороши там, где решаемая задача не меняется длительное время, где требуется самое высокое быстродействие , где алгоритмы обработки информации предельно просты. А универсальные, программируемые системы хороши там, где часто меняются решаемые задачи, где высокое быстродействие не слишком важно, где алгоритмы обработки информации сложные. То есть любая система хороша на своем месте.
Однако за последние десятилетия быстродействие универсальных ( микропроцессорных ) систем сильно выросло (на несколько порядков). К тому же большой объем выпуска микросхем для этих систем привел к резкому снижению их стоимости. В результате область применения систем на «жесткой логике» резко сузилась. Более того, высокими темпами развиваются сейчас программируемые системы, предназначенные для решения одной задачи или нескольких близких задач. Они удачно совмещают в себе как достоинства систем на «жесткой логике», так и программируемых систем, обеспечивая сочетание достаточно высокого быстродействия и необходимой гибкости. Так что вытеснение «жесткой логики» продолжается.
1. Что такое микропроцессор?
Ядром любой микропроцессорной системы является микропроцессор или просто процессор (от английского processor ). Перевести на русский язык это слово правильнее всего как «обработчик», так как именно микропроцессор — это тот узел, блок, который производит всю обработку информации внутри микропроцессорной системы . Остальные узлы выполняют всего лишь вспомогательные функции : хранение информации (в том числе и управляющей информации, то есть программы), связи с внешними устройствами, связи с пользователем и т.д. Процессор заменяет практически всю «жесткую логику», которая понадобилась бы в случае традиционной цифровой системы. Он выполняет арифметические функции ( сложение , умножение и т.д.), логические функции (сдвиг, сравнение, маскирование кодов и т.д.), временное хранение кодов (во внутренних регистрах), пересылку кодов между узлами микропроцессорной системы и многое другое. Количество таких элементарных операций, выполняемых процессором, может достигать нескольких сотен. Процессор можно сравнить с мозгом системы.
Но при этом надо учитывать, что все свои операции процессор выполняет последовательно, то есть одну за другой, по очереди. Конечно, существуют процессоры с параллельным выполнением некоторых операций, встречаются также микропроцессорные системы , в которых несколько процессоров работают над одной задачей параллельно, но это редкие исключения. С одной стороны, последовательное выполнение операций — несомненное достоинство, так как позволяет с помощью всего одного процессора выполнять любые, самые сложные алгоритмы обработки информации. Но, с другой стороны, последовательное выполнение операций приводит к тому, что время выполнения алгоритма зависит от его сложности. Простые алгоритмы выполняются быстрее сложных. То есть микропроцессорная система способна сделать все, но работает она не слишком быстро, ведь все информационные потоки приходится пропускать через один-единственный узел — микропроцессор (рис. 1.3). В традиционной цифровой системе можно легко организовать параллельную обработку всех потоков информации, правда, ценой усложнения схемы.
Рис. 1.3. Информационные потоки в микропроцессорной системе.
Итак, микропроцессор способен выполнять множество операций. Но откуда он узнает, какую операцию ему надо выполнять в данный момент? Именно это определяется управляющей информацией, программой. Программа представляет собой набор команд (инструкций), то есть цифровых кодов, расшифровав которые, процессор узнает, что ему надо делать. Программа от начала и до конца составляется человеком, программистом, а процессор выступает в роли послушного исполнителя этой программы, никакой инициативы он не проявляет (если, конечно, исправен). Поэтому сравнение процессора с мозгом не слишком корректно. Он всего лишь исполнитель того алгоритма, который заранее составил для него человек. Любое отклонение от этого алгоритма может быть вызвано только неисправностью процессора или каких-нибудь других узлов микропроцессорной системы .
Все команды, выполняемые процессором, образуют систему команд процессора. Структура и объем системы команд процессора определяют его быстродействие , гибкость, удобство использования . Всего команд у процессора может быть от нескольких десятков до нескольких сотен. Система команд может быть рассчитана на узкий круг решаемых задач (у специализированных процессоров) или на максимально широкий круг задач (у универсальных процессоров). Коды команд могут иметь различное количество разрядов (занимать от одного до нескольких байт ). Каждая команда имеет свое время выполнения , поэтому время выполнения всей программы зависит не только от количества команд в программе, но и от того, какие именно команды используются.
Для выполнения команд в структуру процессора входят внутренние регистры, арифметико-логическое устройство ( АЛУ , ALU — Arithmetic Logic Unit ) , мультиплексоры, буферы, регистры и другие узлы. Работа всех узлов синхронизируется общим внешним тактовым сигналом процессора. То есть процессор представляет собой довольно сложное цифровое устройство (рис. 1.4).
Рис. 1.4. Пример структуры простейшего процессора.
Впрочем, для разработчика микропроцессорных систем информация о тонкостях внутренней структуры процессора не слишком важна. Разработчик должен рассматривать процессор как » черный ящик «, который в ответ на входные и управляющие коды производит ту или иную операцию и выдает выходные сигналы. Разработчику необходимо знать систему команд, режимы работы процессора, а также правила взаимодействия процессора с внешним миром или, как их еще называют, протоколы обмена информацией. О внутренней структуре процессора надо знать только то, что необходимо для выбора той или иной команды, того или иного режима работы.
Архитектура Фон-Неймана
В соответствии с организацией процессов выборки и исполнения команды в современных МПС применяют одну из двух архитектур: фон-неймановскую (принстонскую) или гарвардскую.
Основная особенность архитектуры Фон-Неймана заключается в использовании общей памяти для хранения программ и данных.
Рисунок 2. Структура МПС архитектуры Фон-Неймана
Основным преимуществом данной архитектуры является упрощение устройства МПС, поскольку реализовано обращение только к одной общей памяти. Помимо этого использование единой области памяти позволило оперативно перераспределить ресурсы между областями программ и данных, что существенно повысило гибкость МПС со стороны программного обеспечения. Размещение стека в общей памяти облегчило доступ к его содержимому. Поэтому данный тип архитектуры стал основным для универсальных компьютеров, в том числе и персональных.
Гарвардская архитектура
Основная особенность гарвардской архитектуры заключается в использовании раздельных адресных пространств для хранения команд и данных, как изображено на рис. 3.
Рисунок 3. Структура МПС с гарвардской архитектурой
Гарвардской архитектурой обеспечивается потенциально более высокая скорость выполнения программ в сравнении с фон-неймановской за счет возможности реализовывать параллельные операции. Процесс выборки следующей команды может проходить параллельно выполнению предыдущей. Данный метод реализации операций дает возможность обеспечивать выполнение различных команд за одинаковое число тактов, что дает возможность более просто определить время выполнения циклов и критичных участков программы.