Классификация и организация вычислительных систем. Михайлов Б.М - 64 стр.

UptoLike

сумматора находятся четыре первых произведения А
1
B
1
, ..., А
4
B
4
, а в сегментах
умножителя следующие четыре произведения: А
5
В
5
, …, А
8
B
8
. К началу девятого
цикла на выходе сумматора будет А
1
B
1
, а на выходе умножителя - А
5
В
5
. Таким
образом, десятый цикл начнется со сложения в сумматоре А
2
B
2
и А
5
В
5
. Десятый цикл
начнется со сложения А
2
B
2
+ А
6
B
6
и т. д. Процесс суммирования в четырех секциях
выглядит так:
Когда больше не остается членов для сложения, система заносит в умножитель
четыре нуля. Конвейер сумматора в своих четырех сегментах при этом будет со-
держать четыре скалярных произведения, соответствующие четырем суммам, при-
веденным в четырех строках показанного выше уравнения. Далее четыре частичных
суммы складываются для получения окончательного результата.
Программа для вычисления скалярного произведения векторов А и В, храня-
щихся в двух областях памяти с начальными адресами adr
A
и adr
B
, соответственно
может выглядеть так:
Первые две векторные команды V_load загружают векторы из памяти в вектор-
ные регистры V
A
и V
B
. Векторная команда умножения V_multiply вычисляет произ-
ведение для всех пар одноименных элементов векторов и записывает полученный
вектор в векторный регистр V
C
.
Важным элементом любого векторного процессора (ВП) является регистр длины
вектора. Этот регистр определяет, сколько элементов фактически содержит обра-
батываемый в данный момент вектор, то есть сколько индивидуальных операций с
элементами нужно сделать. В некоторых ВП присутствует также регистр макси-
мальной длины вектора, определяющий максимальное число элементов вектора,
которое может быть одновременно обработано аппаратурой процессора. Этот регистр
используется при разделении очень длинных векторов на сегменты, длина которых
сумматора находятся четыре первых произведения А1B1, ..., А4B4, а в сегментах
умножителя — следующие четыре произведения: А5В5, …, А8B8. К началу девятого
цикла на выходе сумматора будет А1B1, а на выходе умножителя - А5В5. Таким
образом, десятый цикл начнется со сложения в сумматоре А2B2 и А5В5. Десятый цикл
начнется со сложения А2B2 + А6B6 и т. д. Процесс суммирования в четырех секциях
выглядит так:




      Когда больше не остается членов для сложения, система заносит в умножитель
четыре нуля. Конвейер сумматора в своих четырех сегментах при этом будет со-
держать четыре скалярных произведения, соответствующие четырем суммам, при-
веденным в четырех строках показанного выше уравнения. Далее четыре частичных
суммы складываются для получения окончательного результата.
      Программа для вычисления скалярного произведения векторов А и В, храня-
щихся в двух областях памяти с начальными адресами adrA и adrB, соответственно
может выглядеть так:




      Первые две векторные команды V_load загружают векторы из памяти в вектор-
ные регистры VA и VB. Векторная команда умножения V_multiply вычисляет произ-
ведение для всех пар одноименных элементов векторов и записывает полученный
вектор в векторный регистр VC.
Важным элементом любого векторного процессора (ВП) является регистр длины
вектора. Этот регистр определяет, сколько элементов фактически содержит обра-
батываемый в данный момент вектор, то есть сколько индивидуальных операций с
элементами нужно сделать. В некоторых ВП присутствует также регистр макси-
мальной длины вектора, определяющий максимальное число элементов вектора,
которое может быть одновременно обработано аппаратурой процессора. Этот регистр
используется при разделении очень длинных векторов на сегменты, длина которых