|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Арифметико-логическое устройствоВ минимальном варианте АЛУ должно содержать аппаратуру для реализации сложения и вычитания чисел в форме с фиксированной запятой (ФЗ), основных логических операций, а также сдвигов. Опираясь на этот набор, можно программным способом обеспечить выполнение остальных арифметических и логических операций как для чисел с фиксированной запятой, так и для других форм представления информации. Следует, однако, учитывать, что подобный вариант не позволяет добиться высокой скорости вычислений, поэтому по мере расширения технологических возможностей доля аппаратных средств в составе АЛУ постоянно возрастает. Учитывая разнообразие выполняемых операций и типов обрабатываемых данных, реально сегодня можно говорить не о едином устройстве, а о комплексе специализированных операционных устройств (ОПУ), каждое из которых реализует определенное подмножество арифметических или логических операций, предусмотренных системой команд ВМ: · ОПУ целочисленной арифметики; · ОПУ для реализации логических операций; · ОПУ десятичной арифметики; · ОПУ для чисел с плавающей запятой. На практике две первых группы обычно объединяются в рамках одного операционного устройства. Специализированные ОПУ десятичной арифметики в современных ВМ встречаются достаточно редко, поскольку обработку чисел, представленных в двоично-десятичной форме, можно достаточно эффективно организовать на базе средств целочисленной двоичной арифметики. Таким образом, будем считать, что АЛУ образуют два вида операционных устройств: целочисленное ОПУ и ОПУ для обработки чисел в формате с плавающей запятой (ПЗ). Для большинства современных ВМ общепринятым является такой формат с фиксированной запятой (ФЗ), когда запятая фиксируется справа от младшего разряда кода числа. По этой причине соответствующие операционные устройства и называют целочисленными ОПУ. В форме с ФЗ могут быть представлены как числа без знака, когда все n позиций числа отводятся под значащие цифры, так и со знаком. Если исключить логические операции, которые рассматриваются ниже, целочисленное ОПУ должно обеспечивать выполнение следующих арифметических операций над числами без знака и со знаком: · сложение/вычитание; · умножение; · деление. Особенности этих операций были приведены ранее (см. п.4.3). ОПУ для обработки чисел в формате с ПЗ, как и целочисленные ОПУ минимум должно обеспечить выполнение четырех арифметических действий: сложение, вычитание, умножение и деления. Особенностью ОПУ для обработки чисел в формате с ПЗ является то, что в них операции над тремя составляющими чисел с ПЗ (знаками, мантиссами и порядками операндов) выполняются раздельно; блоком обработки знаков, блоком обработки порядка и блоком обработки мантисс. Все остальные особенности также были рассмотрены ранее в п.4.3. Набор элементов, на основе которых строятся структуры различных ОПУ, называется структурным базисом. Структурный базис ОПУ включает в себя: регистры, обеспечивающие кратковременное хранение слов данных; управляемые шины, предназначенные для передачи слов данных; комбинационные схемы, реализующие вычисление функций микроопераций и логических условий по управляющим сигналам от устройства управления. На практике набольшее применение находят два вида структур ОПУ: жесткая и магистральная. В ОПУ с жесткой структурой комбинационные схемы жестко распределены между всеми регистрами. К каждому регистру относится свой набор комбинационных схем, позволяющих реализовать определенные микрооперации. Достоинством ОПУ с жесткой структурой является высокое быстродействие, недостатком - малая регулярность структуры, что затрудняет реализацию таких ОПУ в виде больших интегральных схем. В ОПУ с магистральной структурой все внутренние регистры объединены в отдельный узел РОН (в ОПУ для обработки чисел с плавающей запятой вместо РОН часто используется отдельный узел регистров с плавающей запятой), а все комбинационные схемы - в операционный блок (ОПБ), который зачастую ассоциируют с термином «арифметико-логическое устройство». Операционный блок и узел регистров сообщаются между собой с помощью магистралей - отсюда и название «магистральное ОПУ». Пример магистрального ОПУ представлен на рис. 4.46. Рис. 4.46 Магистральное ОПУ В состав узла РОН здесь входят N регистров общего назначения, подключаемых к магистралям А и В через мультиплексоры MUX А и MUX В. Номер подключаемого регистра определяйся адресом а или b, подаваемым на адресные входы мультиплексора из устройства управления. По магистралям А и В операнды поступают на входы операционного блока, к которым подключается комбинационная схема, реализующая требуемую микрооперацию (по сигналу управления из УУ). Таким образом, любая микрооперация ОПБ может быть выполнена над содержимым любых регистров ОПУ. Результат микрооперации по магистрали С заносится через демультиплексор DMX С в конкретный регистр узла РОН. Он определяется по заданному адресу с, который поступает на адресные входы DMX С из УУ. Основным достоинством магистральных ОПУ является высокая универсальность и регулярность структуры, что облегчает их реализацию на кристаллах ИС. Вообще говоря, магистральная структура ОПУ в современных ВМ является превалирующей. Тип ОПБ определяется способом обработки данных. Различают ОПБ последовательного и параллельного типа. В последовательном операционном блоке (рис. 4.47) операции выполняются побитово, разряд за разрядом. Рис. 4.47. Последовательный ОПБ Бит переноса, возникающий при обработке i -го разряда операндов, подается на вход ОПБ и учитывается при обработке (i + 1)-го разряда операндов. Результат побитово заносится в выходной регистр, предыдущее содержимое которого перед этим сдвигается на один разряд. Таким образом, после n циклов в выходном регистре формируется слово результата, где каждый разряд занимает предназначенную для него позицию. В параллельном ОПБ (рис. 4.48) все разряды операндов обрабатываются одновременно. Внутренние переносы обеспечиваются схемой ОПБ. Рис. 4.48. Параллельный ОПБ Реализация эффективной системы переносов в рамках «длинного» слова сопряжена с определенными аппаратурными издержками, поэтому на практике часто используют параллельно-последовательную схему ОПБ. В ней слово разбивается на группы по 2, 4 или 8 разрядов, обработка всех разрядов внутри группы осуществляется параллельно, а сами группы обрабатываются последовательно. Обобщенная схема ОПБ приведена на рис. 4.49. В нее входят: дешифратор микрокоманды ДшМК, формирователи кодов ФК1 и ФК2, многофункциональный сумматор См, сдвигатель Сдв и формирователь логических условий (ФЛУ). Рис. 4.49. ОПБ Дешифратор микрокоманды вырабатывает внутренние сигналы управления для элементов ОПБ. Он введен в схему с целью минимизации количества связей, требуемых для передачи сигналов управления из УУ. Формирователи кодов ФК1 и ФК2 служат для формирования прямых и инверсных кодов операндов, поступающих по магистралям А и В. Многофункциональный сумматор выполняет микрооперации арифметического сложения (с учетом переноса), сложения по модулю два, логического сложения и логического умножения кодов на левом и правом входах. Формирователь логических условий на основе анализа кода на выходе См вырабатывает значения ознакомительных сигналов, передаваемых в УУ машины. Осведомительными сигналами могут быть: признак знака S, признак переполнения V, признак нулевого значения результата Z и т. п. Сдвигатель служит для выполнения микроопераций сдвига кода на выходе См. Помимо арифметических действий ОПУ любой вычислительной машины предполагает выполнение основных логических операций. Чаще всего такие операции реализуются дополнительными схемами, входящими в состав целочисленных ОПУ. К базовым логическим операциям относятся: · логическое отрицание (НЕ); · логическое сложение (ИЛИ); · логическое умножение (И). Этот набор, как правило, дополняют операцией сложения по модулю 2 (исключающее ИЛИ). Булева переменная в ВМ представляется одним битом, однако на практике логические операции в ОПУ выполняются сразу над совокупностью логических переменных, объединенных в рамках одного байта или машинного слова, причем над всеми битами этого слова выполняется одна и та же операция. Поскольку каждый бит совокупности логических переменных рассматривается как независимая переменная, никакие переносы между разрядами не формируются. Операционный блок (ОПБ) для выполнения логических операций обеспечивает реализацию всех перечисленных логических операций. Возможная структура подобного ОПБ показана на рис. 4.50. Рис. 4.50. ОПБ логических операций Выбор нужной операции осуществляется с помощью двухразрядного управляющего кода подаваемого на дешифратор.
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.) |