Рефераты. Архитектура ЭВМ

Виды аппаратных методов ускорения умножения: 1) Ускорение выполнения операций + и >> (за счет элементной базы и технологии) 2) Введение дополнительных цепей сдвига, которые за один такт могут производить сдвиг информации в регистрах сразу на несколько разрядов. 3) Совмещенные по времени операции + и >>. Классификация логических методов ускорения умножения. В основе логических методов УУ лежит целенаправленный анализ цифр множителя. Этот анализ позволяет исключить из процесса умножения ряд микроопераций сложения и сдвига. Анализу подвергается или 1 разряд или 2-3-4. 1) Метод, позволяющий уменьшить количество сложений 2) количество сдвигов. Если при выполнении умножения в множителе встречается группа 1, то вместо сложений, число которых равно количеству единиц в группе можно выполнить одно сложение и одно вычитание. Выполнить следующее: 1) множитель сдвигается до появления первой единицы. 2) производится вычитание множимого и сдвиг множителя до появления первого нуля. 3) производится прибавление множимого и вновь сдвигается множитель до появления первой единицы.

1. Модифицированный метод. а) 0001000 Если две группы нулей разделены единицей, в К-той позиции, то вместо выполнения в К n сложений в K+1 позиции достаточно выполнить толко сложение в К-ой позиции. б) 1110111 - достаточно только вычитание в К-ой позиции.

2. Анализ двух разрядов множителя. Если пара 00, то производится простой сдвиг на два разряда вправо суммы частичных произведений. Если 01, то к сумме частичных произведений прибавляется одинарное множимое и сумма частичных произведений сдвигается на два разряда вправо. При 10 прибавляетя удвоенное множимое и сумма частичных произведений сдвигается на два разряда вправо. При 11 из суммы частичных произведений вычитается одинарное множимое и сумма частичных произведений сдвигается на два разряда вправо. При обработке следующей пары следует учесть, что при 11 на следующем шаге надо прибавить к сумме одинарное множимое.

13. Деление дробных чисел

Сводится к многократному вычитанию сначала из делимого, а потом из остатков (эти остатки умножаются на основание системы счисления - 10).

Сравнение величины модуля делимого и делителя, а впоследствии и остатков в ЭВМ производится с помощью операции вычитания (с помощью знака разности). Умножение делимого, а впоследствии остатков от деления на основание системы счисления осуществляется сдвигом исходного числа влево на 1 разряд. Z = X / Y. X - делимое, Y -делитель.

14. Деление целых положительных чисел

Делимое всегда берется двойным словом - 2n. Делитель - n. Модули операндов формируют n-1 разрядную сумму, часть частного и n-разрядный остаток со своим знаком. Знак остатка должен совпадать со знаком делимого. При большей величине модуля делимого и малой делителя - случай некорректного деления => перед началом необходимо провести проверку на корректность деления. Z=|X|/|Y| < 2^(n-1). Проверку можно совместить с первым шагом деления. |X|-2^(n-1)|Y|<0. Если результат пробного вычитания >0, то |Z|>=2^(n-1), и деление невозможно. Если <0, то можно выполнить деление.

Алгоритм деления с неподвижным делителем с восстановлением остатка:

1. Берутся модули от делимого и делителя.

2. Исходное значение частичного остатка полагается равным старшим разрядам делимого

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

4. Из сдвинутого частичного остатка вычитается делитель и анализируется знак результата вычитания.

5. Очередная цифра модуля частного равна 1, если результат вычитания положителен, и 0, если отрицателен. В последнем случае значение остатка восстанавливается до того, которое было до вычитания

6. Пункты 3-5 последовательно выполняются для получения всех цифр модуля частного.

7. Знак частного плюс, если знаки делимого и делителя одинаковы, и минус в противном случае.

Алгоритм без восстановления остатка:

4. Из сдвинутого частичного остатка вычитается делитель, если остаток положителен, и к сдвинутому частичному остатку прибавляется делитель, если остаток отрицателен.

5. Очередная цифра модуля частного равна 1, если результат вычитания положителен и 0 если отрицателен.

18. Классификация аппаратных средств многопроцессорных вычислительных комлпексов (МПВК) по Ф.Г. Энслоу

Общая шина

Перекрестная коммутация

Многовходовые ОЗУ

Ассоциативные

Матричные, векторные

С конвейерной обработкой.

19. МПВК с общей шиной

Физическая или логическая (опр. методы передачи инфы по проводам). Все устр-ва в ней. Связь только между двумя устройствами. Малонадежны, делают дополнительную шину, кот-ую можно использовать для ускорения работы. Дост. - простота выполнения, доступ всех модулей к ОЗУ. Низкое быстродействие и надежность.

20. МПВК с перекрестной коммутацией

Три вида: 1) сетка - к ней все подключено 2) к каждому процессору добавляется своя память

3) отделяются процессоры ввода-вывода, в дополнительную матрицу. Они соединяется через процессор ввода-вывода.

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

Недостатки - сложность наращивание, дороговизна комм. матрицы.

21. МПВК с многовходовыми ОЗУ

1) Коммутация устройств осуществляется в памяти

2) Модули памяти ОЗУ имеют число входов равное числу устройств, которое к нему подключается

3) Средства коммуникации распределены между несколькими устройствами

4) Для наращивания системы предусматривается дополнительные входы в память

Особенности:

1) Используется несколько путей передачи информации

2) Блоки ОЗУ должны быть снабжены логическими схемами для разрешения конфликтов - когда несколько внешних устройств требуют доступа к одному и тому же элементу.

3) Каждый модуль памяти должен идентифицировать и обрабатывать запросы на доступ к определенным ячейкам памяти. Максимально возможная конфигурация системы данного типа ограничена числом входов модулей памяти.

22. Ассоциативные вычислительные системы

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

1) при приеме и размещении в памяти входного потока данных

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

Достижение наивысшей степени параллелизма обработки возможно когда число обрабатываемых элементов равно числу слов.

23. Матричные вычислительные системы

Выполняют последовательно поразрядные арифметические и логические операции. Каждый элемент соединяется с 4-мя другими. ПЭ - Процессор и ОЗУ. Разрядность слов устанавливается программно. От УУ - команды управления и различные константы.

Многомодальная логика - каждый ПЭ м.б. активным или пассивным.

25. Принципы векторной обработки

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

Do i = 1, n

A(i) = B(i)+C(i)

End Do

в скалярном режиме потребуется сгенерировать целую последовательность команд: прочитать элемент B(I), прочитать элемент C(I), выполнить сложение, записать результат в A(I), увеличить параметр цикла, проверить условие цикла. В векторном режиме этот фрагмент преобразуется в: загрузить порцию массива B, загрузить порцию массива C (эти две операции будут выполняться со сдвигом в один такт, т.е. практически одновременно), векторное сложение, запись порции массива в память, если размер массивов больше длины векторных регистров, то повторить эту последовательность некоторое число раз.

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

Векторные операции, использующие различные ФУ и регистры, могут выполняться параллельно.

26. Факторы, снижающие производительность векторных ЭВМ. Возможность векторной обработки программ

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

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

Do i=1,n

A(i) = A(i) + s

EndDo

Пример невекторизуемого фрагмента (очередная итерация не может начаться, пока не закончится предыдущая):

Do i=1,n

Страницы: 1, 2, 3, 4, 5



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.