труктура процессора.
Для вып-я команд в структуру процессора входят внутренние регистры, арифметико-логическое устройство (АЛУ, ALU — Arithmetic Logic Unit), мультиплексоры, буферы, регистры и другие узлы. Работа всех узлов синхрониз-ся общим внеш. тактовым сигналом процессора. Т.е.процессор предст-т собой довольно сложное цифровое устр-во (рис. 1.4).
Рис. 1.4. Пример структуры простейшего процессора.
Впрочем, для разработчика микропроцессорных с-м инф-я о тонкостях внутр.стр-ры процессора не слишком важна. Разработчик должен рассматривать процессор как «черный ящик», который в ответ на входные и управляющие коды производит ту или иную операцию и выдает выходные сигналы. Разработчику необходимо знать систему команд, режимы работы процессора, а также правила взаимодействия процессора с внешним миром или, как их еще называют, протоколы обмена информацией. О внутренней структуре процессора надо знать только то, что необходимо для выбора той или иной команды, того или иного режима работы.
ции процесора, памяти, устр-в ввода-вывода.
Функции процессора.Процессор представляет собой отдельную микросхему Микросхема процессора обязательно имеет выводы трех шин: шины адреса, шины данных и шины управления. Хаар-ки процессора — это количество разрядов его шины данных, шины адреса и количество управляющих сигналов в шине управления. Основные функции любого процессора:1)выборка (чтение) выполняемых команд; 2)ввод (чтение) данных из памяти или устройства ввода/вывода; 3)вывод (запись) данных в память или в устройства ввода/вывода; 4)обработка данных (операндов), в том числе арифметические операции над ними; 5)адресация памяти, то есть задание адреса памяти, с которым будет производиться обмен; 6)обработка прерываний и режима прямого доступа.Функции памяти.Память микропроцессорной системы выполняет функцию временного или постоянного хранения данных и команд. Объем памяти определяет допустимую сложность выполняемых с-мой алгоритмов и скорость работы системы. Модули памяти вып-ся на микросхемах памяти. В составе микропроцессорных систем используется флэш-память, которая представляет собой энергонезависимую память с возможностью многократной перезаписи содержимого. Информация в памяти хранится в ячейках, количество разрядов которых равно количеству разрядов шины данных процессора. Стек — это часть оперативной памяти, предназначенная для временного хранения данных. Особенность стека по сравнению с другой оперативной памятью — это заданный и неизменяемый способ адресации. Можно также хранить в стеке и данные, для того чтобы удобнее было передавать их между программами.Ф-ции устр--в ввода/вывода.Устр-ва ввода/вывода обмен-ся инф-ей с магистралью по тем же принципам, что и память. Наиболее сущ.отличие с точки зрения организации обмена состоит в том, что модуль памяти имеет в адресном пространстве с-мы много адресов, а уст-во ввода/вывода имеет немного адресов. Входной порт в простейшем случае представляет собой параллельный регистр, в который процессор может запис-ь инф-ю. Вых. порт обычно предст-т собой просто однонаправленный буфер, через который процессор может читать инф-ю от внешнего устр-ва. Устр-ва ввода/вывода помимо программ-го обмена могут также поддерживать режим обмена по прерыв-ям. В составе МС выд-ся три спец.группы устр-в ввода/вывода:устр-ва интерфейса польз-ля;устр-ва ввода/вывода для длит.хран-я инф-ии; таймерные устр-ва.Таймерные устр-ва могут не иметь внеш.выводов для подключ-я к внеш.устр-вам. |
6. Обмен по прерываниям используется тогда, когда необходима реакция микропроцессорной системы на какое-то внешнее событие, на приход внешнего сигнала. В случае компьютера внешним событием может быть, например, нажатие на клавишу клавиатуры или приход по локальной сети пакета данных. Компьютер должен реагировать на это, соответственно, выводом символа на экран или же чтением и обработкой принятого по сети пакета. Этот режим предпочтительно применять при управлении в режиме реального времени, при коротких импульсных сигналов которые можно пропустить во время программного опроса.
15. Модули последовательного ввода/вывода
Наличие в составе 8-разрядного МК модуля контроллера последовательного ввода/вывода стало в последнее время обычным явлением. Задачи, которые решаются средствами модуля контроллера последовательного ввода/вывода, можно разделить на три основные группы: 1)связь встроенной микроконтроллерной системы с системой управления верхнего уровня, например, с персональным компьютером(RS-232C и RS-485); 2)связь с внешними по отношению к МК периферийными ИС, а также с датчиками физических величин с последовательным выходом(I2C, SPI), а также нестандартные протоколы обмена; 3)интерфейс связи с локальной сетью в мультимикроконтроллерных системах. В системах с числом МК до пяти обычно используются сети на основе интерфейсов I2C, RS-232C и RS-485 с собственными сетевыми протоколами высокого уровня. С точки зрения организации обмена информацией упомянутые типы интерфейсов последовательной связи отличаются режимом передачи данных (синхронный или асинхронный), форматом кадра (число бит в посылке при передаче байта полезной информации) и временными диаграммами сигналов на линиях. Число линий, по которым происходит передача в последовательном коде, обычно равно двум (I2C, RS-232C, RS-485) или трем (SPI, некоторые нестандартные протоколы). Данное обстоятельство позв-т спроектировать модули контроллеров послед-го обмена таким образом, чтобы с их помощью на аппаратном уровне можно было реализовать несколько типов последовательных интерфейсов. При этом режим передачи и формат кадра поддерживаются на уровне логических сигналов, а реальные физические уровни сигналов для каждого интерфейса получают с помощью специальных ИС, которые называют приемопередатчиками, конверторами, трансиверами. Среди различных типов встроенных контроллеров последовательного обмена, которые входят в состав тех или иных 8-разрядных МК, сложился стандарт «де-факто» — модуль UART (Universal Asynchronous Receiver and Transmitter). UART — это универсальный асинхронный приемопередатчик. Однако большинство модулей UART, кроме асинхронного режима обмена, способны также реализовать режим синхронной передачи данных. Модули типа UART в асинхронном режиме работы позволяют реализовать протокол обмена для интерфейсов RS-232C, RS-422А, RS-485, в синхронном режиме — нестандартные синхронные протоколы обмена, и в некоторых моделях
7. Прямой доступ к памяти (ПДП, DMA) — это режим, принципиально отличающийся от двух ранее рассмотренных режимов тем, что обмен по системной шине идет без участия процессора. Внешнее устройство, требующее обслуживания, сигнализирует процессору, что режим ПДП необходим, в ответ на это процессор заканчивает выполнение текущей команды и отключается от всех шин, сигнализируя запросившему устройству, что обмен в режиме ПДП можно начинать. Понятно, что в этом случае требуется введение в систему дополнительного устройства (контроллера ПДП), которое будет осуществлять полноценный обмен по системной магистрали без всякого участия процессора. Причем процессор предварительно должен сообщить этому контроллеру ПДП, откуда ему следует брать информацию и куда ее следует помещать. Теоретически обмен с помощью прямого доступа к памяти может обеспечить более высокую скорость передачи информации, чем программный обмен, так как процессор передает данные медленнее, чем специализированный контроллер ПДП. Однако на практике это преимущество реализуется далеко не всегда. Скорость обмена в режиме ПДП обычно ограничена возможностями магистрали. К тому же необходимость программного задания режимов контроллера ПДП может свести на нет выигрыш от более высокой скорости пересылки данных в режиме ПДП. Поэтому режим ПДП применяется редко.
12. Изменяемый функциональный блок включает в себя модули памяти различного типа и объема, порты ввода/вывода, модули тактовых генераторов, таймеры. В относительно простых МК модуль обработки прерываний входит в состав процессорного ядра. В более сложных МК он представляет собой отдельный модуль с развитыми возможностями. В состав изменяемого функционального блока могут входить и такие дополнительные модули как компараторы напряжения, аналого-цифровые преобразователи (АЦП) и другие. Каждый модуль проектируется для работы в составе МК с учетом протокола ВКМ. Данный подход позволяет создавать разнообразные по структуре МК в пределах одного семейства. В настоящее время существует подход по которому одному и тому же выводу микросхемы соответствует несколько различных функциональных назначений. При это назначение задается программно. Вот эти периферийные модули, память и составляют изменяемый функциональный блок.
10. При модульном принципе построения все МК одного семейства содержат процессорное ядро, одинаковое для всех МК данного семейства, и изменяемый функциональный блок, который отличает МК разных моделей. Процессорное ядро включает в себя: центральный процессор; внутреннюю контроллерную магистраль (ВКМ) в составе шин адреса, данных и управления; схему синхронизации МК; схему управления режимами работы МК, включая поддержку режимов пониженного энергопотребления, начального запуска (сброса) и т.д. модульная организация, при которой на базе одного процессорного ядра (центрального процессора) проектируется ряд (линейка) МК, различающихся объемом и типом памяти программ, объемом памяти данных, набором периферийных модулей, частотой синхронизации; использование закрытой архитектуры МК, которая характеризуется отсутствием линий магистралей адреса и данных на выводах корпуса МК. Таким образом, МК представляет собой законченную систему обработки данных, наращивание возможностей которой с использованием параллельных магистралей адреса и данных не предполагается; использование типовых функциональных периферийных модулей (таймеры, процессоры событий, контроллеры последовательных интерфейсов, аналого-цифровые преобразователи и др.), имеющих незначительные отличия в алгоритмах работы в МК различных производителей; расширение числа режимов работы периферийных модулей, которые задаются в процессе инициализации регистров специальных функций МК.
11. Базовый функциональный блок микроконтроллера включает:
1. Центральный процессор.
2. Внутренние магистрали адреса, данных и управления.
3. Схему формирования многофазной импульсной последовательности для тактирования центрального процессора и межмодульных магистралей.
4. Устройство управления режимами работы МК, такими, как активный режим, в котором МК выполняет прикладную программу, режимы пониженного энергопотребления, в один из которых МК переходит, если по условиям работы выполнение программы может быть приостановлено, состояния начального запуска (сброса) и прерывания.
Базовый функциональный блок принято называть процессорным ядром МК. Процессорное ядро обозначают именем семейства МК, основой которого оно является. Например, ядро НС05 — процессорное ядро семейства Motorola MC68HC05, ядро MCS-51 — ядро семейства МК Intel 8xC51, ядро PIC16 — процессорное ядро Microchip PIC16.Процессорное ядро представляет собой неразрывное единство трех составляющих его технического решения:1. Архитектуры центрального процессора с присущими ей набором регистров для хранения промежуточных данных, организацией памяти и способами адресации операндов в пространстве памяти, системой команд, определяющей набор возможных действий над операндами, организацией процесса выборки и исполнения команд.2. Схемотехники воплощения архитектуры, которая определяет последовательность перемещения данных по внутренним магистралям МК между регистрами, арифметическо-логическим устройством и ячейками памяти в процессе выполнения каждой команды.3. Технологии производства полупроводниковой БИС МК, которая позволяет разместить схему той или иной сложности на полупроводниковом кристалле, определяет допустимую частоту переключений в схеме и энергию потребления.Эти три составляющие неразрывно связаны друг с другом и в конечном счете определяют важнейший параметр процессорного ядра МК — его производительность.Ядро современных 8-разрядных МК реализует один из двух принципов построения МП: МП с CISC-архитектурой — МП с полной системой команд (Complicated Instruction Set Computer).МП с RISC-архитектурой — МП с сокращенной системой команд (Reduced Instruction Set Computer).
13. Модули таймеров. служат для приема информации о времени наступления тех или иных событий от внешних датчиков событий, а также для формирования управляющих воздействий во времени. Модуль таймера 8-разрядного МК представляет собой 8-ми или 16-разрядный счетчик со схемой управления. В памяти МК 16-разрядный счетчик отображается двумя регистрами: TH — старший байт счетчика, TL — младший байт. Регистры доступны для чтения и для записи. Направление счета — только прямое, то есть при поступлении входных импульсов содержимое счетчика инкрементируется. счетчик может использовать один из источников входных сигналов: импульсную последовательность с выхода управляемого делителя частоты fBUS; сигналы внешних событий, поступающие на вход TOCKI контроллера. При переполнении счетчика устанавливается в «единицу» триггер переполнения TF, который генерирует запрос на прерывание, если прерывания от таймера разрешены. Пуск и останов таймера могут осуществляться только под управлением программы. Программным способом можно также установить старший и младший биты счетчика в произвольное состояние или прочитать текущий код счетчика. Совершенствование подсистемы реального времени МК ведется по следующим направлениям: увеличение числа модулей таймеров/счетчиков.
14. Модули АЦП и ЦАП. Для того чтобы цифровое устройство могло работать с аналоговыми сигналами применяются эти устройства. АЦП – устр-во, преобразующее аналоговый сигнал в дискретный код. По типу проебразования АЦП бывают: линейные и нелинейные. Большинство АЦП считаются линейными (т.е. диапазон входных значений, отображаемый на выходное цифровое значение, связан по линейному закону с этим выходным значением, т.е. выходное значение k достигается при диапазоне входных значений от m (k + b) до m (k +1+ b), где m и b – нек-ые константы. Константа b, как правило, имеет значение 0 или −0.5. Если b =0, АЦП наз. квантователь с ненулевой ступенью, если же b = −0.5, то АЦП наз. квантователь с нулём в центре шага квантования). Типы АЦП: 1.АЦП прямого преобразования или параллельный АЦП содержит по одному компаратору на каждый дискретный уровень входного сигнала. 2.АЦП последовательного приближения или АЦП с поразрядным уравновешиванием содержит компаратор, вспомогательный ЦАП и регистр последовательного приближения. АЦП преобразует аналоговый сигнал в цифровой за N шагов, где N — разрядность АЦП. 3.АЦП дифференциального кодирования содержат реверсивный счётчик, код с которого поступает на вспомогательный ЦАП. Входной сигнал и сигнал со вспомогательного ЦАП сравниваются на компараторе. 4.АЦП сравнения с пилообразным сигналом (некоторые АЦП этого типа называют Интегрирующие АЦП) содержат генератор пилообразного напряжения, компаратор и счётчик времени. Пилообразный сигнал линейно нарастает до некоторого уровня, затем быстро спадает до нуля. В момент начала нарастания запускается счётчик времени. Когда пилообразный сигнал достигает уровня входного сигнала, компаратор срабатывает и останавливает счётчик; значение считывается со счётчика и подаётся на выход АЦП. 5.АЦП с уравновешиванием заряда (к ним относятся АЦП с двухстадийным интегрированием, АЦП с многостадийным интегрированием и нек-ые др.) содержат генератор стабильного тока, компаратор, интегратор тока, тактовый генератор и счётчик импульсов. Преобразование происходит в два этапа (двухстадийное интегрирование). 6.Конвейерные АЦП используют два или более шага-поддиапазона. На первом шаге производится грубое преобразование. Далее определяется разница между входным сигналом и аналоговым сигналом, соответствующим результату грубого преобразования (со вспомогательного ЦАП, на который подаётся грубый код). На втором шаге найденная разница подвергается преобразованию, и полученный код объединяется с грубым кодом для получения полного выходного цифрового значения. АЦП этого типа быстры, имеют высокое разрешение и небольшой размер корпуса. 7.Сигма-Дельта АЦП (наз. также Дельта-Сигма АЦП) производит аналого-цифровое преобразование с частотой дискретизации, во много раз превышающей требуемую и путём фильтрации оставляет в сигнале только нужную спектральную полосу. Применение. АЦП используется везде, где требуется обрабатывать, хранить или передавать сигнал в цифр. форме. Быстрые видео АЦП используются, например, в TV-тюнерах. Медленные встроенные 8, 10, 12, или 16 битные АЦП часто входят в состав микроконтроллеров. Очень быстрые АЦП необходимы в цифровых осциллографах.
17. Модуль сторожевого таймера. Сторожевой таймер – это 16-разряный таймер, который можно использовать как в качестве сторожевого, так и в качестве «интервального» таймера. В этом разделе описывается модуль сторожевого таймера. Сторожевой таймер реализован во всех устройствах MSP430x1xx. Первичная функция модуля сторожевого таймера (WDT) – выполнять рестарт управляемой системы при возникновении проблемы с программным обеспечением. Если установленный временной интервал истек, генерируется системный сброс. Если сторожевая функция в приложении не нужна, модуль может быть сконфигурирован как интервальный таймер для генерации прерываний через установленные интервалы времени. Сторожевой таймер обладает следующими возможностями: 1)Восемь программно настраиваемых временных интервалов 2)Режим сторожевого таймера 3)Режим интервального отсчета 4)Доступ к регистру управления WDT защищен паролем 5)Управление функцией вывода nonRST/NMI 6)Возможность выбора источника тактовых импульсов Возможность останова для уменьшения потребляемой мощности.//Счетчик сторожевого таймера (WDTCNT) – это 16-разрядный суммирующий счетчик, не имеющий прямого доступа из программы. Управление WDTCNT и выбор временных интервалов производится через регистр управления сторожевым таймером WDTCTL. WDTCNT может тактироваться от ACLK или SMCLK. Источник тактирования выбирается с помощью битаWDTSSEL.
13. Модули таймеров. служат для приема информации о времени наступления тех или иных событий от внешних датчиков событий, а также для формирования управляющих воздействий во времени. Модуль таймера 8-разрядного МК представляет собой 8-ми или 16-разрядный счетчик со схемой упр-я. Схемотехникой МК обычно предусматр-ся возм-ть исп-я таймера в режиме счетчика внешних событий, поэтому его часто называют таймером/счетчиком. В памяти МК 16-разрядный счетчик отображается двумя регистрами: TH — старший байт счетчика, TL — младший байт. Регистры доступны для чтения и для записи. Направление счета — только прямое, то есть при поступлении входных импульсов содержимое счетчика инкрементируется. счетчик может использовать один из источников входных сигналов: импульсную послед-ть с выхода управляемого делителя частоты fBUS; сигналы внешних событий, поступающие на вход TOCKI контроллера. В первом случае говорят, что счетчик работает в режиме таймера, во втором — в режиме счетчика событий. При переполнении счетчика устанавливается в «единицу» триггер переполнения TF, который генерирует запрос на прерывание, если прерывания от таймера разрешены. Пуск и останов таймера могут осущ-ся только под упр-ем программы. Программным способом можно также установить старший и младший биты счетчика в произвольное состояние или прочитать текущий код счетчика. Этот путь характерен для фирм, выпускающих МК со структурой MCS-51, а также для МК компаний Mitsubishi и Hitachi; модиф-я стр-ры модуля таймера/счетчика, при которой увеличение числа каналов достиг-ся не за счет увелич-я числа счетчиков, а за счет введения доп.аппаратных средств входного захвата (input capture — IC) и выходного сравнения (output compare — OC).
18.Программи́руемый логи́ческий контро́ллер (ПЛК) (от англ. Programmable Logic Controller) или программируемый контроллер — специализированное компьютеризированное устр-во, используемое для автоматизации технологических процессов. В отличие от компьютеров общего назнач-я, ПЛК имеют развитые устр-ва ввода-вывода сигналов датчиков и исполнительных механизмов, приспособлены для длительной работы без серьёзного обслуж-я, а также для работы в неблагоприятных условиях окр.среды. ПЛК явл-ся устр-вами реального времени. В программируемых логических контроллерах обеспеч-ся доступ к отдельным битам памяти. ПЛК не имеют развитых ср-в интерфейса, типа клавиатуры и дисплея, их программирование, диагностика и обслуживание производится подключаемыми для этой цели программаторами — специальными устр-вами или устр-вами на базе PC или ноутбука, со специальным программным обеспечением, а возможно и со специальными интерфейсными платами. В с-мах упр-я технологическими процессами ПЛК взаимод-т с с-мами человеко-машинного интерфейса: операторскими панелями или рабочими местами операторов на базе PC. Программируемые логические контроллеры ПЛК выполнены на базе бесплатной среды CoDeSys. Контроллеры ПЛК обладают высокой программной и аппаратной надежностью, высокой производительностью, имеют большой объем внутренней памяти (8 Мб). Промышленные контроллеры ОВЕН ПЛК – это высокие программная надежность и производительность, большой объем внутренней памяти. Спектр применений ОВЕН ПЛК достаточно широк, это как построение распределенных систем управления и диспетчеризации, так и автоматизация небольших задач.Осн.отрасли применения: ЖКХ, котельные, энергетика, автоматизация станков и автоматов, пищевая и упаковочная промышленность.