Инфоурок Информатика КонспектыЛекция. Структура процессора. Два подхода к построению процессора. Цифровые микропрограммные автоматы (МПА). Синтез процессора с использованием программируемой логики

Лекция. Структура процессора. Два подхода к построению процессора. Цифровые микропрограммные автоматы (МПА). Синтез процессора с использованием программируемой логики

Скачать материал

Лекция. Структура процессора. Два подхода к построению процессора. Цифровые микропрограммные автоматы (МПА). Синтез процессора с использованием программируемой логики

 

Современные процессоры строятся из одной или нескольких интегральных схем. Как правило, в персональном компьютере ЦП представляет собой одну микросхему, в которой используются все возможности современной полупроводниковой технологии. Такую микросхему принято называть микропроцессором. В больших компьютерах процессоры могут быть выполнены из нескольких интегральных схем.

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

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

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

В одном  кристалле  с  процессором  размещается  и  кэш-память. Для понимания принципов работы компьютера нужно разделять понятия

«исполнение» и «выполняемые функции», поэтому процессором по-прежнему будем называть совокупность АЛУ и устройства управления.

 

Система команд. Форматы команд и способы адресации

 

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


 

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

Обычно различают команды:

   арифметические операции над числами с фиксированной точкой;

   логические операции;

   арифметические операции над числами с плавающей точкой;

   операции ввода/вывода;

   команды управления  (например,  управления  циклами,  условные и безусловные переходы) и т.д.

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

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

Формат команды – это структура полей ее кода с указанием номеров разрядов, определяющих границы полей. В универсальных ВМ код операции в команде составляет 8 разрядов, а число различных операций – не более 256. Остальные разряды отводятся под адреса операндов. Команды представляют собой слово размером 16, 32 или 48 разрядов.

В различных машинах число адресных полей в команде может составлять от одного до четырех. В четырехадресной команд первое поле – код операции. Он предназначен для кодирования выполняемой операции.


 

На основе данного поля формируются управляющие сигналы для выполнения соответствующих действий. Затем располагаются четыре адресных поля: А1 – адрес первого операнда, А2 – адрес второго операнда, А3 – адрес ячейки памяти, отведенной для  записи  результата  операции, А4 – адрес ячейки, где находится следующая команда. Но такая четырех- адресная команда занимает слишком много места в памяти компьютера, поэтому они в настоящее время не находят применения.

Наибольшее распространение имеют:

   трёхадресные  команды  (рис. 9.3)  характерны  для   компьютеров  с сокращенным набором команд. Первый и второй адреса такой команды указывают месторасположение операндов, в третий адрес (ячейку памяти) заносится результат операции. Для определения адреса следующей выполняемой команд служит счетчик команд (СК), к содержимому которого  после   выполнения   любой   команды   добавляется   ее   длина  в байтах.  Для  перехода  к  выполнению   команды,   которая   занимает   не следующую по порядку ячейку памяти, в машине предусматривают специальные команды переходов.  Трехадресные  команды  используются в RISC-компьютерах; в них операнды размещают в регистрах общего назначения, число которых может достигать 256.

   двухадресные    команды    (рис. 9.4);    оба    операнда    находятся в регистрах,  а   результат   выполнения   операции   также   записывается   в регистр. Такую команду принято называть командой RR-типа (регистр- регистр). Если один операнд находится в регистре, а второй в ячейке памяти,  адрес   которой   индексируется,   то   такая   команда   относится  к RX-типу. Команда, второй операнд которой находится в ячейке памяти без индексации, а первый в регистре, носит название RS-типа.

   одноадресные  команды  (рис. 9.5)  содержат  только  один  адрес,  а поскольку обычно в арифметической операции используется два операнда, то второй уже находится в одном из регистров процессора. Результат операции всегда сохраняется в выходном регистре процессора, который называют аккумулятором. Для сложения двух чисел нужно выполнить  три  одноадресных  команды:   поместить   первый   операнд  из памяти  в  регистр  процессора,  передать  второй  операнд  из  памяти   и сложить его  с  первым,  а  затем  сохранить  результат  в  памяти.  Однако на практике при выполнении программы никогда не приходится использовать все три команды. В регистре процессора сохраняется  один  из операндов,  полученный  при   выполнении   предыдущей   операции (т.е. первая команда не нужна), а результат сложения будет использован следующей командой (т.е. его не нужно сохранять в памяти).


 

В действительности  в  адресных  полях  находятся  не  сами  адреса, а информация, позволяющая их определить. Способ определения исполнительного адреса Аисп (т.е. адреса ячейки памяти, где находится операнд или команда) по адресу в коде команды Аk называется способом адресации.

Для указания способа адресации в некоторых системах команд используют специальное поле – способ адресации (рис. 9.2); это позволяет выполнять одну и ту же команду с любым предусмотренным способом адресации, что увеличивает длину команды. В настоящее время применяются следующие способы адресации:

   прямая (или абсолютная) адресация (рис. 10.2);

   косвенная адресация (рис. 10.3);

   регистровая адресация (рис. 10.4);

   косвенная регистровая адресация (рис. 10.5);

   адресация со смещением (рис. 10.6);

   относительная адресация (рис. 10.7);

   базовая регистровая адресация (рис. 10.8);

   индексная адресация (рис. 10.9);

   страничная адресация (рис. 10.10)

   блочная адресация (п. 10.1.11).

Все виды адресации в компьютере IBM PC определяют место расположения и способ нахождения адреса второго операнда; первый операнд всегда находится в одном из регистров. Для компьютеров IBM PC многочисленные способы адресации достались «по наследству» от ранних моделей микропроцессоров, когда разрядность была ограничена.

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


 

Система прерываний и приостановок, состояние процессора

 

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

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

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

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


 

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

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

 

Режимы работы процессора

 

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

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

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


 

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

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

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

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


 

Режимы обработки программ

 

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

  время ожидания результатов решения задачи заранее не определено; помимо ресурсов компьютера оно зависит от числа входящих в пакет программ и их приоритетов, приоритета самой задачи и других факторов.

   невозможно оперативно вносить изменения в программу;

   любое изменение связано с необходимостью повторного ввода нового пакета.

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

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


 

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

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

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

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


 

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

 

Контрольные вопросы

 

1.  Что такое микропроцессор? Для чего он служит?

2.  Из каких основных узлов состоит процессор?

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

4.  На какие типы делятся команды?

5.  Что такое система команд процессора?

6.  Какой формат имеет команда процессора?

7.  Сколько полей под адреса отводится в команде?

8.  Какие способы адресации операндов используются командах? Кратко охарактеризуйте каждый тип.

9.  Что такое прерывание и что такое система прерываний процессора?

10.  Какие    типы    прерываний    бывают?    Кратко    охарактеризуйте каждый тип.

11.   Что такое слово состояния программы и для чего оно служит?

12.   В каких режимах может работать процессор?

13.   В каких режимах может обрабатываться программа?

14.   Проведите сравнительный анализ режимов обработки программ.

 

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Лекция. Структура процессора. Два подхода к построению процессора. Цифровые микропрограммные автоматы (МПА). Синтез процессора с использованием программируемой логики"

Методические разработки к Вашему уроку:

Получите новую специальность за 3 месяца

Специалист контроля качества

Получите профессию

Менеджер по туризму

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 666 126 материалов в базе

Скачать материал

Другие материалы

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 05.11.2020 966
    • DOCX 81 кбайт
    • 28 скачиваний
    • Оцените материал:
  • Настоящий материал опубликован пользователем Рымашевская Сусана Эдуардовна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Рымашевская Сусана Эдуардовна
    Рымашевская Сусана Эдуардовна
    • На сайте: 8 лет и 7 месяцев
    • Подписчики: 2
    • Всего просмотров: 22565
    • Всего материалов: 21

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Интернет-маркетолог

Интернет-маркетолог

500/1000 ч.

Подать заявку О курсе

Курс повышения квалификации

Использование нейросетей в учебной и научной работе: ChatGPT, DALL-E 2, Midjourney

36/72 ч.

от 1700 руб. от 850 руб.
Подать заявку О курсе
  • Сейчас обучается 612 человек из 77 регионов
  • Этот курс уже прошли 973 человека

Курс профессиональной переподготовки

Математика и информатика: теория и методика преподавания в профессиональном образовании

Преподаватель математики и информатики

500/1000 ч.

от 8900 руб. от 4150 руб.
Подать заявку О курсе
  • Сейчас обучается 41 человек из 23 регионов
  • Этот курс уже прошли 53 человека

Курс повышения квалификации

Компьютерная грамотность для пенсионеров

36 ч. — 180 ч.

от 1580 руб. от 940 руб.
Подать заявку О курсе
  • Этот курс уже прошли 23 человека

Мини-курс

Литературные пути: от биографий к жанрам

4 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Инновационные технологии для бизнеса

4 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Конкурентная разведка и маркетинговые исследования

6 ч.

780 руб. 390 руб.
Подать заявку О курсе