Упрощенная структурная схема МП приведена на рис. 4.1.
Рисунок 4.1
Рисунок 4.2
Микропроцессор содержит арифметически-логическое устройство АЛУ, запоминающие устройства ЗУ для оперативного (ОЗУ) и постоянного (ПЗУ) хранения информации, устройство управления, осуществляющее прием, расшифровку команд и задающее последовательность их выполнения, а также устройства ввода-вывода (УВВ) информации, с помощью которого вводятся исходные и выводятся полученные в результате работы МП данные.
Микропроцессоры обрабатывают 2-, 4-, 8-, 16-, 32-разрядные числа, выполняют 30...500 команд сложения, вычитания, сдвига, логических операций. Четырех- и восьмиразрядные МП представляют собой БИС с размерами кристалла 5 х 5 х 0,2 мм.
Обобщенная структурная схема МП приведена на рис. 4.2. Арифметическо-логическое устройство АЛУ совершает различные арифметические и логические операции над числами и адресами, представленными в двоичном коде. Состав операций, выполняемых АЛУ, определен списком инструкций (набором команд). В набор команд входят, как правило, арифметические и логические сложения и умножения, сдвиги, сравнения и т. п. Арифметические операции выполняются в соответствии с правилами двоичной арифметики. Логические операции выполняются по правилам булевой алгебры.
В состав АЛУ входят сумматор, сдвигатели, регистры и другие элементы.
Устройство управления управляет работой АЛУ и всех других блоков МП. В УУ поступают команды из блока памяти. Здесь они преобразуются в двоичные сигналы управления для выполнения данной команды. Работа УУ синхронизируется таймером, распределяющим процесс выполнения команды во времени. Команда представляет собой двоичное слово из 8, 16, 24 разрядов и более (до 64), часть которых представляет код операции, а остальные распределены между адресами данных (операндов) в памяти. Команда с 16-разрядной адресной частью позволяет обращаться к 216—1=65635 ячейкам памяти. Этого количества, как правило, вполне достаточно для задач, решаемых МП. Такое обращение к памяти называется прямой адресацией.
Однако чаще применяется косвенная адресация, которая необходима, когда разрядность адресной части меньше, чем требуется. В этом случае, адресация проводится в два этапа. На первом этапе по адресу, содержащемуся в команде, выбирается ячейка, содержащая адрес другой ячейки, из которой на втором этапе выбирается операнд. Команда при косвенном методе адресации должна содержать один разряд признака операнда, состояние которого определяет, что выбирается на данном этапе: адрес операнда или сам операнд? Конечно, косвенный способ адресации медленнее прямого. Он позволяет за счет наращивания объема памяти адресов обращаться к числу операндов в 2n раза (где n—разрядность адресной части команды) большему, чем при прямом способе.
Управляющее устройство любую операцию согласно коду, заданному командным словом, распределяет на последовательность фаз (фазы адресации и фазы выполнения), называемую циклом. Из-за ограниченной разрядности МП действия над операндами большой разрядности могут выполняться за два и более циклов. Очевидно, что это в 2 и более раз снижает быстродействие МП. Отсюда следует интересный и практически важный вывод: быстродействие МП находится в обратной зависимости от точности, однозначно определяемой разрядностью операндов.
Микропроцессор содержит блок регистров (Р). Рабочие регистры МП физически представляют собой одинаковые ячейки памяти, служащие для сверхоперативного хранения текущей информации (СОЗУ). По выполненным функциям Р содержит группы, связанные с определенными элементами структуры МП.
Два регистра операндов (О) в течение выполнения операции в АЛУ хранят два двоичных числа. По окончании операции в первом регистре число заменяется результатом, т. е. как бы накапливается (отсюда и название регистра «аккумулятор»). Содержимое второго регистра операндов заменяется в следующей операции другим операндом, в то время как содержимое аккумулятора может быть сохранено по ряду специальных команд.
Регистр команд (К) хранит в течение выполнения операции несколько разрядов командного слова, представляющих собой код этой операции. Адресная часть командного слова содержится в регистре адреса А.
После реализации какой-либо операции разрядность результата может оказаться больше разрядности каждого из операндов, что регистрируется состоянием специального флагового регистра, иногда называемого триггером переполнения. В процессе отладки составленной программы программист должен следить за состоянием флагового регистра и в случае необходимости устранять возникшее переполнение.
Очень важными в системе команд МП являются команды переходов к выполнению заданного участка программы по определенным признакам и условиям, так называемые команды условных переходов. Наличие таких команд определяет уровень «интеллектуальности» МП, так как характеризует его способность принимать альтернативные решения и выбирать различные пути в зависимости от возникающих в ходе решения условий. Для определения таких условий служит специальный регистр состояний (С), фиксирующий состояние МП в каждый момент выполнения программы и посылающий в УУ сигнал перехода к команде, адрес которой содержится в специальном регистре, называемом счетчиком команд (СК). Команды в памяти записываются в определенной программной последовательности по адресам, образующим натуральный ряд, т. е. адрес следующей команды отличается от адреса предыдущей на единицу. Поэтому при реализации непрерывной последовательности команд адрес следующей команды получается путем прибавления к содержимому СК единицы, т. е. образуется в результате счета. Назначение СК—нахождение необходимых адресов команд, причем при наличии в программе команд перехода очередная команда может не иметь следующего адреса. В таком случае в СК записывается адресная часть команды перехода.
Регистры общего назначения (РОН) используются для хранения промежуточных результатов, адресов и команд, возникающих в ходе выполнения программы, и могут связываться по общим шинам с другими рабочими регистрами, а также со счетчиками команд и блоком ввода-вывода информации. В МП обычно содержите» 10...16 РОН разрядностью 2...8 бит каждый. Количество РОН косвенно характеризует вычислительные возможности МП.
Особый интерес представляет наличие у многих моделей МП группы регистров, имеющих магазинную или стековую организацию — так называемые стеки. Стек позволяет без обмена с памятью организовать правильную последовательность выполнения различных последовательностей арифметических действий. Операнд или другая информация может посылаться в стек без указания адреса, поскольку каждое помещаемое в него слово занимает сначала первый регистр, затем «проталкивается» последующими словами каждый раз на регистр глубже. Вывод информации происходит в обратном порядке, начиная с первого регистра, в котором хранится слово, посланное в стек последним. При этом последние регистры очищаются.
Блоки АЛУ, УУ, Р образуют центральный процессор (ЦП), входящий в состав, любой ЭВМ: выделенный на рис. 4.2 штриховой линией. В состав МП может, входить таймер (Т), использующий навесной времязадающий конденсатор или кварцевый резонатор. Таймер — сердце МП, поскольку его работа определяет динамику всех информационных, адресных и управляющих сигналов и синхронизирует работу УУ, а через него и других элементов структуры. Частота синхронизации, называемая тактовой, выбирается максимальной и ограничивается только задержками прохождения сигналов, определяемыми в основном технологией изготовления БИС. Скорость выполнения микропроцессором программы прямо, пропорциональна тактовой частоте.
В составе МП может быть устройство ввода-вывода (УВВ) для обмена информацией между МП и другими устройствами.
Сигналы трех видов — информационные, адресные и управляющие — могут передаваться по одной, двум или трем шинам. Шина представляет собой группу линий связи, число которых определяет разрядность одновременно передаваемой по ней двоичной информации.
Число линий информационной шины (ИШ) определяет объем информации, получаемой или передаваемой МП за одно обращение к памяти, к устройству ввода или вывода. Большинство МП имеет 8-шиниую информационную магистраль. Это позволяет за один раз принять восемь двоичных единиц информации (1 байт). Один байт информация может содержать один из 256 возможных символов алфавита источника информации или один из 256 возможных кодов операций. Такое количество допустимых символов и типов операций для большинства применений является достаточным.
Существуют МП, содержащие 16 и 32 шины в информационной магистрали.
Число линий в шине управления (VIII) зависит от порядка взаимодействия между МП, ЗУ, внешними УВВ информации. Обычно шины управления содержат 8... 16 линий.