Автор: Пользователь скрыл имя, 04 Марта 2013 в 09:35, реферат
Микропроцессор - центральная часть любой микропроцессорной системы (МПС) - включает в себя АЛУ и ЦУУ, реализующее командный цикл. МП может функционировать только в составе МПС, включающей в себя, кроме МП, память, устройства ввода/вывода, вспомогательные схемы (тактовый генератор, контроллеры прерываний и ПДП, шинные формирователи, регистры-защелки и др.).
Операция вычисления суммы некой последовательности значений является фундаментальной для алгоритмов, реализуемых на DSP. Защита от переполнения необходима для избежания потери данных.
Очевидно, что для большинства операций, выполняемых DSP, необходимы два операнда. Таким образом, для достижения максимального быстродействия процессор должен быть способен производить одновременную выборку двух операндов, что требует также наличия гибкой системы адресации.
Широкий класс алгоритмов, реализуемых на DSP требует использования циклических буферов. Аппаратная поддержка циклического возврата указателя адреса или модульная адресация уменьшает непроизводительные затраты процессорного времени и упрощает реализацию алгоритмов.
Алгоритмы DSP включают очень много повторяющихся операций, которые могут быть реализованы в виде циклов. Возможность организации последовательности выполнения программы кодов в цикле без потери производительности отличают DSP от других процессоров. Аналогично, потеря времени при выполнении операции ветвления по условию также недопустима при цифровой обработке сигналов.
Не следует, однако, думать, что DSP могут полностью заменить процессоры общего назначения. Как правило, процессоры цифровых сигналов имеют упрощенную систему команд, не позволяющие выполнить операции, не связанные с математическими вычислениями с такой же эффективностью, как и процессоры общего назначения. Попытка же сочетания в одном процессоре мощность при математических вычислениях и гибкость при операциях другого рода приводит к неоправданному повышению себестоимости. Поэтому DSP используют чаще в виде сопроцессоров (математических, графических, акселераторов и т.д.) при главном процессоре либо в качестве самостоятельного процессора, если этого достаточно.
16. Арбитраж
Основная функция протоколов арбитража – распределение времени пользования ресурсами между претендующими на них устройствами. Для осуществления арбитража используют 2-е линии: линия запрос, по которой устройство запрашивает захват ресурса; линия ответ, по которой поступает подтверждение на передачу. Помимо числа используемых сигналов протокол арбитража отличаются способом обработки запросов от нескольких устройств и реакцией на одновременные запросы – последовательный и параллельный арбитраж.
Параллельный арбитраж. Каждое устройство имеет индивидуальную линию запрос и ответ, которые соединены со входами и выходами специального устройства под названием арбитр. В случае поступления одновременно нескольких они обслуживаются в порядке значимости (приоритета), причем приоритет может изменяться или быть строго фиксированным.
После определения запроса, арбитр выдает пославшему устройству ответный сигнал (если запрос имеет наивысший приоритет).
Достоинства:
Недостатки:
Последовательный арбитраж используется общая линия запрос к которой подсоединены все выходы устройств и общая линия ответ проходящая через все устройства.
Приоритеты определяются физическим расположением устройства на магистрали. Максимальный приоритет имеют устройства находящиеся в начале линии ответ, минимальный – в конце линии.
Каждое из устройств при необходимости
может перехватывать посылаемый
по линии ответ сигналы
Достоинства:
Недостатки:
17. Распределение разряда при обращении к устройству
Для реализации выбранных протоколов, каждое подключенное к магистралям устройство должно иметь необходимый набор схем сопряжения – интерфейс. Основу интерфейсу составляют буферы магистралей и логическая схема управления, которая осуществляет привязку к необходимым адресам и сигналам управления. Адресное пространство может включать ПЗУ, ОЗУ, УВВ, контроллеры и т.п. Привязка устройства к определенному месту адресного пространства осуществляется с помощью дешифрации адреса.
CS – сигнал выбора устройства
Количество непосредственно
Например: к 16 разрядной МА подключили память V=2048 ячеек (211), следовательно, 5-ть старших разрядов идет на ДС.
18. Шинный формирователь
Подключение устройств производится параллельно, через разветвляющиеся схемы (системные контроллеры, буферные регистры, шинные формирователи), т.е. схемы имеющие 3-и состояния выхода: логический «0», логическая единица «1», состояние высокого сопротивления.
Схемы построены так, что при подаче низкого сигнала, выход элементов подключается к магистрали. Все остальное время выход не оказывает влияние на состояние магистрали.
Однонаправленный шинный формирователь.
Информация передается от А к В, если на ОЕ поступает низкий сигнал
Пример однонаправленного шинного формирователя (для парралл.кода)
Что бы не произошло наслоение
Двунаправленный формирователь.
ОЕ- сигнал разрешения передачи информации
А-вход, В- выход (или наоборот)
Т- сигнал выбора направления передачи информации.
А |
В | |
ОЕ=1 |
- |
- |
ОЕ=0 Т=0 |
источник |
приемник |
ОЕ=0 Т=1 |
приемник |
источник |
19. 8-разрядный микропроцессор
На Рис. 9.1 представлена внутренняя структура МП i8080, включающего в себя 8-разрядное АЛУ с буферным регистром и схемой десятичной коррекции, блок РОН, регистры указателя стека SP и счетчика команд PC, первичный управляющий автомат УА, буферные схемы шин адреса и данных и схему управления системой.
Рис. 9.1. Внутренняя структура МП i8080
Внешний интерфейс представлен 8-разрядной двунаправленной шиной данных D[7:0], 16-разрядной шиной адреса A[15:0] и группой линий управления.
Назначение входных и выходных линий МП :
D[7:0] - двунаправленная шина данных служит для приема и выдачи данных, приема команды, приема вектора прерывания, выдачи дополнительной управляющей информации (слово PSW);
A[15:0] - однонаправленная шина адреса служит для выдачи адреса памяти и устройств ввода/вывода;
Ф1,Ф2 - сигналы тактового генератора частотой 1..2,5 МГц;
RESET - сброс (начальная установка и запуск программы с адреса 0000);
READY - входной сигнал готовности памяти или ВУ к обмену (обеспечивает асинхронный режим обмена);
INT - запрос внешнего прерывания;
HOLD - захват шины (требование прямого доступа в память со стороны ВУ);
WR - запись - выходной сигнал, определяющий направление передачи информации по шине данных от процессора к памяти или ВУ;
RD - чтение - выходной сигнал, определяющий направление передачи информации по шине данных от памяти или ВУ к процессору;
SYNC - выходной сигнал, идентифицирующий наличие на шине данных дополнительной управляющей информации (PSW);
WAIT - выходной сигнал, отмечающий состояние ожидания или останова МП;
INTE - выходной сигнал, подтверждающий режим внешних прерываний;
HLDA - выходной сигнал, подтверждающий режим прямого доступа в память (подтверждение захвата).
Командный цикл микропроцессора
МП работает в составе МПС, обмениваясь информацией с памятью и ВУ. В основе работы МП лежит командный цикл - действия по выбору из памяти и выполнению одной команды. В зависимости от типа и формата команды, способов адресации и числа операндов командный цикл может включать в себя различное число обращений к памяти и ВУ и следовательно - иметь различную длительность.
Любой командный цикл (КЦ) начинается с извлечения из памяти первого байта команды по адресу, хранящемуся в PC, что команды i8080 имеют длину 1, 2 или 3 байта, причем в первом байте содержится информация о длине команды. В случае 2- или 3-байтовой команды реализуются дополнительные обращения к памяти по соседним (большим) адресам.
После считывания команды начинается ее выполнение, причем в процессе выполнения может потребоваться еще одно или несколько обращений к памяти или ВУ (чтение операнда, запись результата).
Для реализации команды i8080 может потребоваться от 1 до 5 обращений к памяти (ВУ). Хотя обращения к ЗУ/ВУ располагаются в разных частях КЦ, выполняются они по единым правилам, соответствующим интерфейсу МПС и реализованы на общем оборудовании управляющего автомата. Действия МПС по передаче в/из МП одного байта данных/команды называются машинным циклом.
Машинные циклы и их идентификация
Командный цикл представляет собой последовательность машинных циклов (МЦ), причем КЦ i8080 может содержать от 1 до 5 МЦ, которые принято обозначать M1, M2,..M5.
МЦ обязательно включает в себя действия по передаче байта информации. Кроме того, в некоторых МЦ дополнительно реализуются действия по пересылке и/или преобразованию информации внутри МП. Поэтому длительность МЦ может быть различной - за счет различного числа содержащихся в них машинных тактов (T1, T2,...).
Машинный такт (такт) образует пара сигналов тактового генератора Ф1, Ф2, поэтому длительность такта постоянна - период тактового генератора (за исключением такта Tw - см. ниже).
Таким образом, просматривается иерархия процедур при работе микропроцессора (не только i8080):
Командный цикл ® Машинный цикл ® Машинный такт
.
Каждому такту соответствует
МЦ микропроцессора i8080 предусматривает возможность обмена как в синхронном, так и в асинхронном режиме. Если в составе МПС использованы только "быстрые" устройства, т.е. такие, которые могут работать с тактовой частотой МП, то передача информации в МЦ осуществляется в синхронном режиме. В этом случае на вход READY МП подается константа "1" и после такта T2 начинается такт T3. При работе с "медленными" устройствами, быстродействие которых не позволяет переключаться с частотой тактового генератора МП, необходимо "растянуть" во времени МЦ, реализовав асинхронный принцип обмена. Для этого в начале МЦ обмена с "медленными" устройствами на входе READY формируется уровень логического нуля. В такте T2 МП анализирует состояние READY, и если READY = 0, то МП после T2 переходит не к T3, а к такту ожидания Tw, который может длиться произвольное число периодов тактового генератора. Переход к T3 осуществляется по фазе Ф1, если в предыдущей Ф2 READY установился в "1". С помощью входа READY можно не только согласовывать работу МП с устройствами различного быстродействия, но и реализовывать пошаговый и потактовый режимы работы МП.
Таким образом, в машинном цикле выполняются следующие действия: