Выполнение команды в микропроцессоре
Работа МП состоитиз следующих шагов:
1) извлекается команда,
2) логические схемы устройства управления команду декодируют,
3) осуществляется выполнение заданной операции.
Реализация команды состоит из двух этапов (фаз):
1. Выборка команды (осуществляется ее загрузка в регистр команд).
2. Выполнение выбранной команды (осуществляется декодирование команды и формирование управляющих сигналов, обеспечивающих выполнение требуемой операции).
Интервал времени, в течение которого извлекается из памяти и выполняется одна команда, принято называть циклом выполнения командыМП.
Длительность циклавыполнения команды неодинакова. Она зависит от типа команды, ее длины и используемого способа адресации. Длительность цикла выполнения команды в МП принято измерять в количестве машинных циклов (МЦ). Машинный цикл МП– это интервал времени, в течение которого происходит одно обращение к памяти за операндом или командой или выполнение «короткой» операции. Количество МЦ как на этапе выборки, так и на этапе выполнения команды зависит от типа команды, ее длины и способа адресации.
Однобайтовые команды с неявной адресацией имеют самый короткий цикл выполнения – всего два машинных цикла: МЦ выборки команды и МЦ ее выполнения. Они характеризуются наименьшим временем выполнения.
Команды с непосредственной адресацией этапа выборки команды выполняются за один МЦ, а этап выполнения зависит от длины команды. Так, для двухбайтовой команды этап выполнения может составлять либо один, либо два МЦ, для трехбайтовой команды – как правило, два МЦ.
Например, цикл выполнения двухбайтовой команды с мнемокодом LDA A ЗАГРУЗКА РЕГИСТРА НЕПОСРЕДСТВЕННАЯ (рис. 4.11) занимает два МЦ: в первом МЦ выбирается один байт команды с мнемокодом LDA A, во втором – данные, содержащиеся во втором байте команды, выбираются из памяти и загружаются в аккумулятор. В то же время выполнение двухбайтовой команды с непосредственной адресацией ADD I – СЛОЖЕНИЕ С НЕПОСРЕДСТВЕННЫМИ ДАННЫМИ требует реализации одного машинного цикла на этапе выборки команды и двух машинных циклов на этапе выполнения.
LDAA | ADDI | ADDM | 1 байт 2 байта 3 байта | |||||
Данные | Данные | Ст. байт адреса | ||||||
Мл. байт адреса | ||||||||
а) | б) | в) | ||||||
Рис. 11. Цикл выполнения двухбайтной команды
Реализация первого машинного цикла этапа выполнения позволяет выбрать данные, содержащиеся во втором байте команды, и загрузить их в буферный регистр АЛУ. Второй машинный цикл этапа выполнения команды необходим для реализации операции сложения в АЛУ.
Применение прямой адресациисвязано с использованием дополнительного, по сравнению с рассмотренными типами адресации, числа машинных циклов.
1. Сначала микропроцессору необходимо произвести выборку кода операции команды.
2. После его декодирования следует извлечь из памяти еще два байта, являющихся адресом местоположения данных в памяти.
Таким образом, этап выборки с прямой адресацией требует реализации трех машинных циклов. После извлечения из памяти кода операции и байтов адреса начинается этап выполнения команды, который, например для команды сложения, занимает два машинных цикла: один – для выборки числа из памяти, а другой – для выполнения операции сложения в АЛУ.
Например, цикл выполнения команды сложения с использованием прямой адресации ADD M – СЛОЖЕНИЕ С ПАМЯТЬЮ ПРЯМОЕ ( рис. 4.11 в). По этой команде содержимое ячейки памяти, адрес которой указан в команде, прибавляется к содержимому аккумулятора. Второй и третий байты команды составляют адрес области памяти, в которой хранится число. Результат (сумма) помещается в аккумулятор.
Цикл выполнения занимает пять машинных циклов, три из которых предназначены для извлечения трех байтов команды и размещения их соответственно в регистре команд и в регистре адреса памяти (в старшем и младшем байтах). Четвертый машинный цикл используется на этапе выполнения команды для извлечения числа из памяти и размещения его в буферном регистре. Пятый машинный цикл используется непосредственно для сложения содержимого аккумулятора и буферного регистра в АЛУ, для записи результата в аккумулятор и установления в соответствующее состояние разрядов регистра признаков.
Итак, время выполнения команд с прямой адресацией существенно больше времени выполнения команд с другими способами адресации. Поэтому прямую адресацию целесообразно использовать в том случае, если необходимо размещать данные в любой области памяти. При написании программ с целью уменьшения времени их реализации рекомендуется использовать как можно меньше команд с прямой адресацией.
В некоторых микропроцессорах используется прямая адресация, реализуемая за четыре машинных цикла. В таких случаях команда имеет длину два байта: один – для кода операции, другой – для адреса. Однобайтовый адрес не позволяет адресоваться ко всем ячейкам памяти емкостью 65 К слов, а только к первым 256 ячейкам памяти. Специальный код операции информирует устройство управления, что такая команда с прямой адресацией имеет однобайтовый адрес. Обычно отсчет этих адресов в памяти начинается с ячейки памяти, адрес которой равен 0. Диапазон значений, охватываемый такими однобайтовыми адресами, принято называть нулевой страницей памяти.
Преимущество команд с однобайтовыми адресами по сравнению с двухбайтовыми заключается в меньших затратах времени на выполнение таких команд, поскольку при этом сокращается один машинный цикл. Команды с однобайтовыми адресами целесообразно применять в тех случаях, когда требуется многократно обращаться к сравнительно небольшому количеству байтов данных, размещающихся в первых 256 ячейках памяти.
Вывод.
Наиболее эффективно применение однобайтовых команд с непосредственной адресацией. Команда –это совокупность сведений, используемых микропроцессором, которая предназначена для осуществления последовательности действий с целью выполнения требуемого задания (программы).
Заключение:
Командаэто совокупность сведений используемых микропроцессором которая предназначена для осуществления последовательности действий с целью выполнения требуемого задания (программы).
Дата добавления: 2017-12-05; просмотров: 3256;