Калабеков Б.А. Микропроцессоры и их применение в системах передачи и обработки сигналов (1988) (1092085), страница 5
Текст из файла (страница 5)
Покажем описанные действия на примере умножения чисел Х = 0101 1з (1!хе) н )г = 1 1!01х ( 13га) ° Дополнительный код множителя У' „, = 10011. Проводимые прн умноженнн действия иллюстрируются табл. В.З. Рнс, В.б. Схема алгоритма умножения Буга я содержательных обозначениях В блоке 2 пронзводнтся арифметический сдвиг вправо 5, )' (прн арифметическом сдвиге вправо сохраняется содержимое знакового разряда), рассматриваемых как единое число, в котором 5 образует его старшие, а У вЂ” младшие разряды. Значение появляющегося нз младшего разряда У переноса присваивается П2, а содержимое П2 передается в П1. Далее в блоках 3 ...
7 организуется выполнение действий по следующему правилу: Таблице В.О < — Хг„ои У кои Вывааннеиые действие 00000 , 00000 $10101 10!01 110!О 1!ВО! Исходное состоиние Арифметический сдвиг П2. П1) Вычитание Арифметический сдвиг П2, П1) Арифметический сдвиг П2, П1) Сложение Арифметический сдвиг П2, П1) Арифметический сдвиг П2, П1) Вычитание $00!1 О!00! 010!1 вправо (5, 1'. вправо (5, У, вправо (5, У, !0100 !1!О! ' О!ОП 01000 00100 01010 00101 вправо (5, )т, вправо (5, У, ООО)0 10101 1О!11 00010 101$! 11000 00010 11! $0„.
— 143гв Произведение в дополиительиом коде Произведение в прямом коде Рис. В.О. Схема алгоритма делеиия положительных чисел а и Ь Деление двоичных чисел. Будемрассматриватьоперацию алгебраического деления чисел, представленных в форме с фиксированной точкой. При этом выполнение операции содержит действия, связанные с определением знака частного, и действия, связанные с определением модуля частного. Знак частного может быть найден тем же приемом, что и знак произведения в рассмотренной выше операции умножения с отделением знаковых разрядов. Поэтому ниже рассматривается лишь нахождение модуля частного.
На рис. В. 6 показана схема алгоритма нахождения частного положительных чисел а и Ь. Покажем выполнение операции на примере. Пусть после отделения знаковых разрядов модули делимого и делителя представляются соответственно числами а = — — 0,10010 и Ь вЂ” 0,10! 1О. Встречаю$цуюся в алгоритме операцию вычитания числа заменим прибавлением числа — Ь, представленного в дополнительном коде: 1 — Ь>,„„-- 1,01010.
Сдвиг влево о с>0 с)0 с<0 с~О с' ( 0 1,01110 $ Идоп с Сдвиг влево $' — Идеи Сдвиг влево ! И дои с Сдвиг влево 6 Сдвиг влево ( ~)доп с О,1ОО10 $,0!о!о 1.1 11ОО , 1,11ООО '0,1О1!О 0,0 1 1 1 0 0,11101 $.01010 0,00110 0,01100 1,01010 1,10110 1,О! 100 0,10110 0,00010 0,00100 1,010! 0 !О, 10 ! ! О с сО О. 1 1 0 1 0 с)дстиое 1 $1 ПРИНЦИПЫ ПОСТРОЕНИЯ ПРОЦЕССОРОВ 1.1. АНАЛОГОВЫЙ И ЦИФРОВОЙ МЕТОДЫ ОБРАБОТКИ ИНФОРМАЦИИ Обработка информации может выполняться двумя методами: аналоговым, при котором участвующие в обработке величины представляются в аналоговой форме (обычно уровнями напряжения либо тока), или цифровым, при котором величины представляются в цифровой форме и сама обработка сводится к последовательности действий (операций) над числами. В зависимости от используемого метода обработки различают два типа аппаратуры: аналоговую, в которой используется аналоговый метод обработки, и цифровую, в которой применяется цифровой метод обработки.
В цифровой аппаратуре основным устройством, в котором непосредственно выполняется обработка, является процессорное устройство. Рассмотрим характерные особенности указанных методов обработки информации, В аналоговой аппаратуре обработка информации заключается в преобразованиях между токами и напряжениями вида иь —— Ейь!б(, (с = Соис!Ж; и„= — г(„выполняемых соответственно индуктивными, емкостными, резистивными элементами, в изменении масштаба и, —-- = йи„а также в нелинейных преобразованиях и, = ) (и,). При этом каждый элемент аналогового устройства в каждый момент времени находится в состоянии активного выполнения характерных для этих элементов операций; таким образом, имеет место параллельное выполнение операций во всех элементах устройства. В показанном на рис.
!.1, а простейшем аналоговом устройстве на выходе формируется величина и, ((), являющаяся решением следующего дифференциального уравнения: (1.1) На рис. 1.1, б показан график функции ис (г) при некоторой конкретной форме входного воздействия е (1). Рассмотрим решение дифференциального уравнения (!.1) цифровым методом. Одна из особенностей решения цифровым методом состоит в том,что оно может быть получено для дискретных моментов времени — некоторой последовательности моментов времени, например, следукхцих с интервалом Т (рис.
!.1, е). Интервал времени Т назовем шагом интегрирования и решения дифференциального уравнения, получаемые для моментов времени, следующих с интервалом Т, обозначим ..., ис (пТ), ис (пТ + Т), ис (пТ (- 2Т), Представим входящую в выражение (1.!) производную следукяцим приближением для момента 1 == пТ: ~ис я ~ ис(лт+т! — и,(лт! ((= т т После подстановки в уравнение и некоторых очевидных преобразований получим ис(пТ+Т) =й, ис(пТ)+й,е(пТ), ( 1.2) где й, =- 1 — Т(гС; й, = Т(гС вЂ” константы.
Выражение (!.2) представляет собой так называемую разностную форму дифференциального уравнения (!.1). Этим выражением пользуются как рекуррентным: по известным значениям ис (пТ), е (пТ) вычисляется ис (пТ + Т); затем по значениям ис (пТ + Т) и е (пТ + + Т) с помощью того же выражения вычисляется ис(пТ + 2Т) и т. д. На рис.
!.2 представлен цифровой алгоритм задачи в форме схемы. Вычислительный процесс носит циклический характер. При каждом исполнении предусмотренных блоками 1 ... 5 действий вычисляется очередное значение выходной величины. иса) е(а) а) Рвс.
1.1, 1!епь )(б (а), ксарерывиая аналоговая (о) в двскрсткаа (а) формы воадсастава в отклика цепи Для хранения входящих в выражение (1.2) величин в процессорном устройстве используем регистры: регистр Й, для формирования в нем вычисляемого в данном 1 шаге интегрирования значения ис(пТ + Т); регистр Й, для хранения вычисленного в а!п Т) предыдущем шаге интегрирования значе- 4. еГпг) ния ис (пТ); регистры Й, и Й,для хранения соответственно й, и й;, регистр Й,для 2 хранения промежуточных результаюв "и !и")'(Ю При записи выполняемых в блоках действий использованы следующие обозначе- л,).(~,) ння: (Й;) — содержимое регистра Й,, стрелка — знак засылки результата операции в 4 соответствукпций регистр. и, -~- Фа)'рц) Рассмотрим операции, выполняемые в отдельных блоках.
В блоке 1 производится ам~ з прием очередного значения е в регистр Й4. Блок 2 формирует в регистре Й, значение второго слагаемого выражения (1.2). Блок 3 вычисляет значение первого слагаемого А~(па) этого выражения, и оно затем в блоке 4 прибавляется к содержимому регистра Й,. При этом в регистре Йо образуе я выпи- рпц!зк схема алгорптма сленное значение выходной величины прп цифровом методе апаис (пТ + Т), которое блоком 5 выдается, лпаа процесса а йС-цепи Блок б производит под. Вку к следу це' му повторению цикла для вычисления ис (пТ + 2Т).
Необходимой 'замене в правой части выражения (!.2) ис (лТ) на ис (пТ+ Т) здесь соответствует передача вычисленного значения ис (пТ+ Т) в регистр Й,„ранее хранивший ис(пТ). Далее происходит переход к блоку 1 и очередное повюрение цикла. Таким образом, для получения одного значения выходной величины требуется последовательное выполнение большого числа операций (в отличие от аналоговой цепи, где операции во всех элементах выполняются параллельно), что затрудняет достижение высокого быстродействия.
Кроме того, при цифровом методе обработки возникает необходимость в большом количестве относительно сложных узлов (регистров,сумматора, множительного устройства и др.), а также в устройстве, координирующем их работу. Однако цифровые методы по сравнению с аналоговыми имеют ряд достоинств: возможность обеспечения любой требуемой точности обработки, высокую помехозащищенность, высокую стабильность характеристик обработки, возможность выполнения таких видов обработки, которые аналоговыми методами трудно либо вовсе невыполнимы.
Аппаратурная сложность цифровых устройств прежде приводила к высокой стоимости, большим габаритным размерам и массе, высо- 29 кому потреблению энергии, в связи с чем цифровые методы в большинстве случаев оказывались неприемлемыми для практического использования. Ситуация изменилась благодаря достижениям микроэлектроники, обеспечивающей в одной микросхеме упаковку тысяч и десятков тысяч элементов. В настоящее время цифровые устройства имеют малые стоимость, габаритные размеры, массу, потребление энергии, Это объясняет их широкое использование в тех случаях, когда они могут обеспечить требуемую скорость обработки. 1.2.
ОБЩАЯ СТРУКТУРА ПРОЦЕССОРА Процессор синтезируется в виде соединения двух устройств: операционного и управляющего (рис. 1.3). Операционное устройство (ОУ) — устройство, в котором выполняются операции. Оно включает в себя в качестве узлов регистры, сумматор, каналы передачи информации, мультиплексоры для коммутации каналов, шифраторы, дешифраторы и т. д. Управляющее устройство координируег действия узлов операционного устройства; оно вырабатывает в определенной временной последовательности управляющие сигналы, под действием которых в узлах операционного устройства выполняются требуемые действия. Процесс функционирования операционного устройства распадается на последовательность элементарных действий в его узлах.
Такими элементарными действиями могут быть; 1) установка регистра в некоторое состояние (например, запись в регистр к, числа О, обозначаемая й, — О); 2) инвертирование содержимого разрядов регистра (например, если регистр )ха содержал двоичное число 10!!01, то после инвертирования его содержимое будет равно 010010, такое действие обозначают це н — (йа))' 3) пересылка содержимого одного узла в другой (например; пересылка содержимого регистра 1(, в регистр Я,, обозначаемая Й, н--(ас)); хт аынИ данные Рпс. цв. Структура процессора 4) сдвиг содержимого узла влево, вправо!например, сдвиг на один разряд влево содержимого регистра Й,, обозначаемый К, +-Сдв Л (К,)]; 5) счет, при котором число в счетчике (регистре) возрастает нлн убывает на единицу [Сч — (Сч) ч- 1); 6) сложение [напрнмер, й, — ()1,) + (й,)[; 7) сравнение содержимого регистра на равенство с некоторым числом, результат сравнения — логическая 1 (в случае выполнения равенства) либо логический 0 (в случае невыполнения равенства); 8) некоторые логические действия 1поразрядно выполняемые операции конъюнкции, дизъюнкции и др.).
Каждое такое элементарное действие, выполняемое в одном из узлов ОУ в течение одного тактового периода, называется микрооперанаей. В определенные тактовые периоды одновременно могут выполняться несколько микроопераций, например й, — О, Сч — (Сч) — 1. Такая совокупность одновременно выполняемых микроопераций называется макрокомандой, а весь набор мнкрокоманд, предназначенный для решения определенной задачи, — макропрограммой. Таким образом, если в операционном устройстве предусматривается возможность исполнения и различных мнкроопераций, то из управляющего устройства выходят л управляющих цепей, каждая из которых соответствует определенной микрооперации.