[go: up one dir, main page]

RU2744239C1 - Устройство для возведения бинарной матрицы в квадрат - Google Patents

Устройство для возведения бинарной матрицы в квадрат Download PDF

Info

Publication number
RU2744239C1
RU2744239C1 RU2020122205A RU2020122205A RU2744239C1 RU 2744239 C1 RU2744239 C1 RU 2744239C1 RU 2020122205 A RU2020122205 A RU 2020122205A RU 2020122205 A RU2020122205 A RU 2020122205A RU 2744239 C1 RU2744239 C1 RU 2744239C1
Authority
RU
Russia
Prior art keywords
input
output
block
group
elements
Prior art date
Application number
RU2020122205A
Other languages
English (en)
Inventor
Светлана Николаевна Гвоздева
Эдуард Игоревич Ватутин
Виталий Семенович Титов
Original Assignee
Федеральное государственное бюджетное образовательное учреждение высшего образования. "Юго-Западный государственный университет" (ЮЗГУ)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Федеральное государственное бюджетное образовательное учреждение высшего образования. "Юго-Западный государственный университет" (ЮЗГУ) filed Critical Федеральное государственное бюджетное образовательное учреждение высшего образования. "Юго-Западный государственный университет" (ЮЗГУ)
Priority to RU2020122205A priority Critical patent/RU2744239C1/ru
Application granted granted Critical
Publication of RU2744239C1 publication Critical patent/RU2744239C1/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/40Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using contact-making devices, e.g. electromagnetic relay
    • G06F7/44Multiplying; Dividing

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Electromagnetism (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

Изобретение относится к области вычислительной техники и может быть использовано для возведения бинарной матрицы размером n*n элементов в квадрат. Техническим результатом является снижение аппаратной сложности при реализации возможности возведения бинарной матрицы размером n*n элементов в квадрат. Технический результат заявляемого технического решения достигается тем, что заявленное решение содержит n*n блоков хранения и группу из n выходных элементов ИЛИ, каждый из блоков хранения содержит элемент И, группу элементов И, группу элементов ИЛИ, триггер, введены первый и второй инверторы, первый, второй и третий сдвиговые регистры, первый, второй и третий элементы задержки, первый, второй, третий и четвертой элементы И, первый, второй и третий коммутаторы; первый, второй и третий элемент ИЛИ, двухступенчатый триггер, вход сброса ячейки блока хранения. 4 ил., 1 табл.

Description

Изобретение относится к вычислительной технике и может быть использовано для возведения бинарной матрицы размером
Figure 00000001
элементов в квадрат.
Известно устройство для умножения бинарных матриц (Патент РФ на полезную модель № 193927. Устройство для умножения бинарных матриц. заявл. 26.06.2019, опубл. 21.11.2019, бюл. № 33.), содержащее матрицу из
Figure 00000001
операционных блоков (где n – размер перемножаемых квадратных матриц), первый и второй блоки коэффициентов матриц, сдвиговый регистр, группу из
Figure 00000002
двухступенчатых регистров, каждый из блоков коэффициентов матриц содержит
Figure 00000001
блоков хранения и группу из
Figure 00000002
выходных элементов ИЛИ, каждый из блоков хранения содержит элемент И, группу из
Figure 00000002
элементов И, группу из
Figure 00000002
элементов ИЛИ, в составе каждого операционного блока первый, второй, третий триггер, первый, второй, третий элементы И, первый, второй элементы ИЛИ, инвертор, в составе каждого блока хранения – триггер, группа элементов И, группа элементов ИЛИ.
Недостатком указанного устройства является аппаратная избыточность при умножении бинарных матриц и, как следствие, высокая аппаратная сложность.
Наиболее близким по технической сущности к заявляемому изобретению является устройство для умножения ленточной матрицы на полную матрицу (авторское свидетельство СССР № 1534471, кл. G06F 15/347, заявл. 15.01.88, опубл. 07.01.90, бюл. № 1), содержащее матрицу
Figure 00000003
(где m – ширина ленты матрицы – множимого, n – число столбцов матрицы – множителя) операционных блоков, каждый из которых содержит три регистра, умножитель, сумматор, матрицу
Figure 00000004
элементов задержки .
Недостатком данного устройства является отсутствие возможности умножения плотных бинарных матриц.
Технической задачей предложенного устройства является снижение аппаратной сложности при реализации возможности возведения бинарной матрицы размером
Figure 00000005
элементов в квадрат.
Техническая задача решается тем, что в устройство, содержащее
Figure 00000005
блоков хранения и группу из
Figure 00000002
выходных элементов ИЛИ, каждый из блоков хранения содержит элемент И, группу элементов И, группу элементов ИЛИ, триггер, причем в составе каждого из блоков коэффициентов матриц синхровход блока коэффициентов матрицы подключен к синхровходам каждого из
Figure 00000005
блоков хранения, k-й вход (где
Figure 00000006
) в составе группы адресов строк чтения блока коэффициентов матрицы подключен ко входу адресов строк чтения
Figure 00000007
-го блока хранения (где
Figure 00000008
), k-й вход (где
Figure 00000009
) в составе группы адресов столбцов чтения блока коэффициентов матрицы подключен ко входу адресов столбцов чтения
Figure 00000010
-го блока хранения (где
Figure 00000011
), k-й вход (где
Figure 00000012
) в составе группы входов данных от предыдущей строки
Figure 00000013
-го блока хранения (где
Figure 00000014
,
Figure 00000015
) подключен к k-му выходу данных для следующей строки
Figure 00000016
-го блока хранения, k-й вход (где
Figure 00000017
) в составе группы адресов строк записи блока коэффициентов матрицы подключен ко входу адресов строк записи
Figure 00000018
-го блока хранения (где
Figure 00000019
), k-й вход (где
Figure 00000020
) в составе группы адресов столбцов записи блока коэффициентов матрицы подключен ко входу адресов столбцов записи
Figure 00000021
-го блока хранения (где
Figure 00000022
), вход данных записи блока коэффициентов матрицы подключен ко входу данных записи каждого из
Figure 00000005
блоков хранения, k-й выход (где
Figure 00000023
) в составе группы выходов данных для следующей строки
Figure 00000024
-го блока хранения (где
Figure 00000025
) подключен к p-му входу k-го элемента группы элементов ИЛИ блока коэффициентов матрицы, выход k-го (где
Figure 00000026
) элемента группы элементов ИЛИ блока коэффициентов матрицы подключен к k-му выходу в составе группы выходов блока коэффициентов матрицы, первый вход элемента И блока хранения подключен ко входу адреса столбца записи блока хранения, синхросигнал поступает на второй вход элемента И блока хранения, третий вход элемента И блока хранения подключен ко входу адреса строки записи блока хранения, информационный вход триггера подключен ко входу данных записи блока хранения, а синхровход триггера – к выходу элемента И, вход сброса триггера подключен ко входу сброса блока хранения, выход триггера подключен к первому входу каждого из n элементов группы элементов И, выход каждого из n элементов группы элементов И подключен к первому входу каждого из n элементов группы элементов ИЛИ, второй вход каждого i-го элемента группы элементов ИЛИ подключен к i-му разряду входа данных от предыдущей строки блока хранения, а выход каждого i-го элемента группы элементов ИЛИ подключен к i-му разряду выхода данных для следующей строки блока хранения, второй вход каждого i-го элемента группы элементов И подключен к i-му разряду входа адреса строки чтения блока хранения, а третий вход каждого i-го элемента группы элементов И подключен к i-му разряду входа адреса столбца чтения блока хранения, дополнительно введены первый и второй инвертор, первый, второй и третий сдвиговые регистры, первый, второй и третий элементы задержки, первый, второй, третий и четвертой элементы И, первый, второй и третий коммутаторы; первый, второй и третий элемент ИЛИ, двухступенчатый триггер, вход сброса ячейки блока хранения, причем вход инициализации подключен ко входу первого инвертора, выход которого подключен к информационным входам первого и второго сдвиговых регистров, вход синхронизации подключен ко второму входу первого элемента И, выход которого подключен к синхровходу первого сдвигового регистра, выход первого элемента И подключен ко входу второго элемента задержки, выход которого подключен ко второму входу второго элемента И, первый вход которого подключен к выходу первого сдвигового регистра, выход второго элемента И подключен к синхровходу второго сдвигового регистра, а входы загрузки первого и второго сдвигового регистра подключены к выходу первого элемента задержки, ко входу которого подключен вход инициализации, выход первого сдвигового регистра подключен к первому входу первого коммутатора, выхода второго сдвигового регистра подключен к первому входу второго коммутатора, второй и третий вход первого и второго коммутатора подключен к первому входу устройства, четвертый вход первого коммутатора подключен ко входу адреса строки, четвертый вход второго коммутатора подключен ко входу адресу столбца, выход первого коммутатора подключен к первому, третьему и седьмому входам блока коэффициентов матрицы, выход второго коммутатора подключен ко второму, шестому и восьмому входам блока коэффициентов матрицы, на девятый вход блока коэффициентов матрицы подается единичное значение, одиннадцатый вход блока коэффициентов матрицы подключен ко входу инициализации устройства, ко входам четыре и пять блока коэффициентов матрицы подключен выход третьего сдвигового регистра, информационный вход которого подключен к выходу второго инвертора, вход которого подключен ко второму входу устройства, вход загрузки данных третьего сдвигового регистра подключен к выходу третьего элемента задержки, вход которого подключен ко второму входу устройства, синхровход третьего сдвигового регистра подключен к синхровходу устройства, первый выход блока коэффициентов матрицы подключен к первому входу третьего коммутатора, второй и третий вход которого подключены ко второму входу устройства, выход третьего коммутатора подключен к информационному входу двухступенчатого триггера, сихровход двухступенчатого триггера подключен к синхровходу устройства, выход двухступенчатого триггера подключен ко второму входу первого элемента ИЛИ, вход которого подключен к выходу третьего элемента И, первый вход которого подключен ко второму выходу блока коэффициентов матрицы, а второй вход– к третьему выходу блока коэффициентов матрицы, выход первого элемента ИЛИ подключен к четвертому входу третьего коммутатора, выход двухступенчатого триггера подключен ко второму входу четвертого элемента И, первый вход которого подключен к синхровходу, выход четвертого элемента И подключен к первому входу третьего элемента ИЛИ, первый вход которого подключен ко входу сброса устройства, выход третьего элемента ИЛИ подключен к десятому входу блока коэффициентов матрицы, выход двухступенчатого триггера подключен к первому входу второго элемента ИЛИ, второй вход которого подключен к выходу третьего сдвигового регистра, выход второго элемента ИЛИ подключен к первому входу первого элемента И, первый выход блока коэффициентов матрицы подключен к выходу устройства.
На фиг. 1 изображена функциональная схема устройства; на фиг. 2 – схема блоков хранения; на фиг. 3 – схема ячейки блоков хранения; на фиг. 4 – временные диаграммы этапа умножения i-ой строки на j-ый столбец (а – случай, когда
Figure 00000027
; б – случай, когда единичное значение
Figure 00000028
получено в результате умножения; в – случай, когда
Figure 00000029
после выполнения умножения; г – временные диаграммы вычисления всех произведений
Figure 00000030
).
Устройство для возведения бинарной матрицы в квадрат (фиг. 1) содержит элемент НЕ 1, первый 2, второй 3 и третий 9 сдвиговые регистры, элемент задержки 4, элемент И 5, элемент И 6, элемент задержки 7, элемент НЕ 8, блок коэффициентов матрицы 10, коммутатор 11, двухступенчатый триггер 12, элемент И 13, элемент ИЛИ 14, элемент И 15, элемент ИЛИ 16, элемент задержки 17, элемент ИЛИ 18, коммутатор 19, коммутатор 20, управляющий вход 21, вход 22 адреса строки, вход 23 адреса столбца, вход 24 синхронизации, управляющий вход 25, вход 26 синхронизации, вход 27 синхронизации, вход 28 инициализации, вход 29 сброса, выход 30 для выгрузки результатов, блок коэффициентов матрицы содержит группу входов 31 в качестве адресов строк при чтении из запоминающего устройства, группу входов 32 в качестве адресов столбцов при чтении из запоминающего устройства, одноименный вход 33 в качестве адреса строки при записи в ЗУ, одноименный вход 34 в качестве адреса столбца при записи в ЗУ, вход 35 данных записи ЗУ, вход 36 синхровход записи ЗУ, вход сброса 37, каждый блок коэффициентов матрицы 10 имеют однотипную структуру (фиг. 2), каждый из них включает своем составе
Figure 00000005
блоков хранения 52, каждый из которых (фиг. 3) содержит триггер 40, элемент И 39, блок элементов И 41, блок элементов ИЛИ 42, вход 48 синхронизации, вход 49 адреса строки записи,, вход 50 сброса, вход 45 адреса столбца записи, вход 47 данных записи, группу входов 46 адресов строк чтения, группу входов 44 адресов столбцов чтения, группу входов 43 данных от предыдущей строки, группу выходов 51 данных для следующей строки, в состав каждого из блоков коэффициентов матриц также входят группа входов 31 адресов строк чтения, группа входов 32 адресов столбцов чтения, вход 33 адреса строки записи, вход 34 адреса столбца записи, вход 35 данных записи, вход 36 синхронизации, вход 37 сброса, группа элементов ИЛИ 53, группа выходов 38, причем вход инициализации 28 подключен ко входу первого инвертора 1, выход которого подключен к информационным входам первого 2 и второго 3 сдвиговых регистров, вход синхронизации 26 подключен ко второму входу первого элемента И 5, выход которого подключен к синхровходу первого сдвигового регистра 2, выход первого элемента И 5 подключен ко входу второго элемента задержки 7, выход которого подключен ко второму входу второго элемента И 6, первый вход которого подключен к выходу первого сдвигового регистра 2, выход второго элемента И 6 подключен к синхровходу второго сдвигового регистра 3, а входы загрузки первого 2 и второго 3 сдвигового регистра подключены к выходу первого элемента задержки 4, ко входу которого подключен вход инициализации 28, выход первого сдвигового регистра 2 подключен к первому входу первого коммутатора 19, выхода второго сдвигового регистра 3 подключен к первому входу второго коммутатора 20, второй и третий вход первого 19 и второго 20 коммутатора подключен к первому входу 21 устройства, четвертый вход первого коммутатора 19 подключен ко входу адрес строки 22, четвертый вход второго коммутатора 20 подключен ко входу адресу столбца 23, выход первого коммутатора 19 подключен к первому 311, третьему 312 и седьмому 33 входам блока коэффициентов матрицы 10, выход второго коммутатора 20 подключен ко второму 321, шестому 323 и восьмому 34 входам блока коэффициентов матрицы 10, на девятый вход 35 блока коэффициентов матрицы 10 подается единичное значение, одиннадцатый вход 37 блока коэффициентов матрицы 10 подключен ко входу инициализации 28 устройства, ко входам четыре 322 и пять 313 блока коэффициентов матрицы 10 подключен выход третьего сдвигового регистра 9, информационный вход которого подключен к выходу второго инвертора 8, вход которого подключен ко второму входу устройства 25, вход загрузки данных третьего сдвигового регистра 9 подключен к выходу третьего элемента задержки 17, вход подключен ко второму входу устройства 25, синхровход третьего сдвигового регистра 9 подключен к синхровходу 27 устройства, первый выход 381 блока коэффициентов матрицы 10 подключен к первому входу третьего коммутатора 11, второй и третий вход которого подключены ко второму входу устройства 25, выход третьего коммутатора 11 подключен к информационному входу двухступенчатого триггера 12, синхровход двухступенчатого триггера подключен к синхровходу 24 устройства, выход двухступенчатого триггера 12 подключен ко второму входу первого элемента ИЛИ 14, вход которого подключен к выходу третьего элемента И 13, первый вход которого подключен ко второму выходу 382 блока коэффициентов матрицы 10, а второй вход – к третьему выходу 383 блока коэффициентов матрицы 10, выход первого элемента ИЛИ 14 подключен к четвертому входу третьего коммутатора 11, выход двухступенчатого триггера 12 подключен ко второму входу четвертого элемента И 15, первый вход которого подключен к синхровходу 27, выхода четвертого элемента И 15 подключен к первому входу третьего элемента ИЛИ 16, первый вход которого подключен ко входу сброса 29 устройства, выход третьего элемента ИЛИ подключен к десятому входу 36 блока коэффициентов матрицы 10, выход двухступенчатого триггера 12 подключен к первому входу второго элемента ИЛИ 18, второй вход которого подключен к выходу третьего сдвигового регистра 9, выход второго элемента ИЛИ 18 подключен к первому входу первого элемента И 5, первый выход 381 блока коэффициентов матрицы 10 подключен к выходу 30 устройства, синхровход блока коэффициентов матрицы 36 подключен к синхровходу 48 каждого из
Figure 00000005
блоков хранения 52, k-й вход (где
Figure 00000006
) в составе группы адресов строк чтения 31 блока коэффициентов матрицы подключен ко входу 46 адресов строк чтения
Figure 00000007
-го блока хранения (где
Figure 00000008
), k-й вход (где
Figure 00000009
) в составе группы адресов столбцов чтения 32 блока коэффициентов матрицы подключен ко входу 44 адресов столбцов чтения
Figure 00000010
-го блока хранения (где
Figure 00000011
), k-й вход (где
Figure 00000012
) в составе группы входов 43 данных от предыдущей строки
Figure 00000013
-го блока хранения (где
Figure 00000014
,
Figure 00000015
) подключен к k-му выходу данных 51 для следующей строки
Figure 00000016
-го блока хранения, k-й вход (где
Figure 00000017
) в составе группы адресов строк записи 33 блока коэффициентов матрицы подключен ко входу 49 адресов строк записи
Figure 00000018
-го блока хранения (где
Figure 00000019
), k-й вход (где
Figure 00000020
) в составе группы адресов столбцов записи 34 блока коэффициентов матрицы подключен ко входу 45 адресов столбцов записи
Figure 00000021
-го блока хранения (где
Figure 00000022
), вход 35 данных записи блока коэффициентов матрицы подключен ко входу 47 данных записи каждого из
Figure 00000005
блоков хранения, k-й выход (где
Figure 00000023
) в составе группы выходов 51 данных для следующей строки
Figure 00000024
-го блока хранения (где
Figure 00000025
) подключен к p-му входу k-го элемента группы элементов ИЛИ 53 блока коэффициентов матрицы, выход k-го (где
Figure 00000026
) элемента группы элементов ИЛИ 53 блока коэффициентов матрицы подключен к k-му выходу 38 в составе группы выходов блока коэффициентов матрицы, в составе каждого из блоков хранения первый вход элемента И 39 блока хранения подключен ко входу 45 адреса столбца записи блока хранения, синхросигнал 48 поступает на второй вход элемента И 39 блока хранения, третий вход элемента И 39 блока хранения подключен ко входу 49 адреса строки записи блока хранения, информационный вход триггера 40 подключен ко входу 47 данных записи блока хранения, а синхровход триггера 40 – к выходу элемента И 39, вход сброса триггера 40 подключен ко входу 50 сброса блока хранения, выход триггера 40 подключен к первому входу каждого из n элементов группы элементов И
Figure 00000031
, выход каждого из n элементов группы элементов И
Figure 00000031
подключен к первому входу каждого из n элементов группы элементов ИЛИ
Figure 00000032
, второй вход каждого i-го элемента группы элементов ИЛИ
Figure 00000032
подключен к i-му разряду входа
Figure 00000033
данных от предыдущей строки блока хранения, а выход каждого i-го элемента группы элементов ИЛИ
Figure 00000032
подключен к i-му разряду выхода
Figure 00000034
данных для следующей строки блока хранения, второй вход каждого i-го элемента группы элементов И
Figure 00000031
подключен к i-му разряду входа
Figure 00000035
адреса строки чтения блока хранения, а третий вход каждого i-го элемента группы элементов И
Figure 00000031
подключен к i-му разряду входа
Figure 00000036
адреса столбца чтения блока хранения.
Элемент НЕ 1 используется для формирования единичных значений «00…01» в регистрах 2 и 3 при инициализации схемы. Сдвиговые регистры 2 и 3 используются для хранения индексов i и j номеров строки и столбца матрицы соответственно. Элемент задержки 4 служит для задержки поступления сигнала 28 (L) на одноименные входы регистров 2 и 3, что позволяет избежать временных гонок и обеспечивает корректную запись начальных значений в регистры. Элемент И 5 закрывает синхровход регистра 2 от прохождения синхроимпульсов 26 до завершения работы схемы, предотвращая преждевременное изменение содержимого регистра 2. Элемент И 6 обеспечивает модификацию (сдвиг) содержимого регистра 3 по приходу синхросигнала 26 только при наличии единичного сигнала переноса из регистра 2. Элемент задержки 7 служит для задержки поступления сигнала на одноименные входы регистра 3, что позволяет избежать временных гонок и обеспечивает корректную запись начальных значений в регистр. Элемент НЕ 8 используется для формирования на информационном входе регистра 9 начального значения «00…01». Сдвиговый регистр 9 используется для хранения индекса k с целью обращения к элементам
Figure 00000037
и
Figure 00000038
матрицы. Блок коэффициентов матрицы 10 используется для хранения элементов
Figure 00000039
матрицы, содержит . Коммутатор 11 применяется для инициализации начального значения двухступенчатого триггера 12 значением
Figure 00000039
и его последующего изменения
Figure 00000040
. Двухступенчатый триггер 12 хранит текущее значение
Figure 00000039
, определяемое в ходе работы схемы. Элемент И 13 применяется для нахождения значения конъюнкции
Figure 00000041
. Элемент ИЛИ 14 предназначен для определения модифицированного значения
Figure 00000042
. Элемент И 15 управляет прохождением синхросигнала 27 на вход 36 запоминающего устройства 10, что обеспечивает запись единичного значения признака достижимости
Figure 00000043
. Элемент ИЛИ 16 используется для сброса значение, который ранятся в блоке коэффициентов матрицы на этапе инициализации. Элемент задержки 17 предназначен для задержки поступления единичного значения сигнала 25 на вход записи регистра 9 с целью избежания временных гонок при формировании на его информационном входе значения «00…01». Элемент ИЛИ 18 используется для формирования бинарного признака окончания работы схемы. Коммутатор 19 применяется для инициализации начального значения i ЗУ 10 и его последующего изменения. Коммутатор 20 применяется для переключения начального значения j ЗУ 10 и его последующего изменения. На вход 21 подается двоичный сигнал, переключающий коммутаторы 19 и 20 между режимами загрузки данных и режимом работы схемы. Вход 22 используется в качестве адреса строки единичного элемента матрицы при ее загрузке. Вход 23 используется в качестве адреса строки единичного элемента матрицы при ее загрузке. На вход 24 подается синхросигнал, поступающий на синхровход триггера 12. На вход 25 подается сигнал
Figure 00000044
, который устанавливается равным 1, при переключении в 0, закрывает коммутатор 11 для прохождения сигнала
Figure 00000039
с выхода 381 ЗУ 10 на D-вход триггера 12 и, соответственно, открывает коммутатор 11 для прохождения значения сигнала
Figure 00000045
с выхода элемента 14 на D-вход триггера 12, которое фиксируется в триггере 12 по приходу синхросигнала 24. На вход 26 подается синхроимпульс
Figure 00000046
, поступающий на элемент И 5. На вход 27 подается синхросигнал
Figure 00000047
. На вход 28 подается сигнал инициализации, который используется для задания начальных значений регистров 2 и 3. На вход 29 подается единичный импульс. Выход 30 используется для выгрузки результатов умножения (элементов матрицы). Группа входов 311, 312, 313 используется в качестве адресов строк при чтении из запоминающего устройства с использованием трех портов. Группа входов 321, 322, 323 используется в качестве адресов столбцов при чтении из запоминающего устройства с использованием трех портов. Одноименный вход 33 используется в качестве адреса строки при записи в ЗУ. Одноименный вход 34 используется в качестве адреса столбца при записи в ЗУ. Вход 35 используется в качестве входа данных записи блока коэффициентов матрицы. Вход 36 используется в качестве синхровхода записи блока коэффициентов матрицы 10. На вход 37 подается единичный импульс . Группа выходов 381, 382, 383 используются в качестве результатов чтения с использованием трех портов. Блоки хранения 52, объединенные в матрицу
Figure 00000005
, образуют собой блок коэффициентов матрицы. Триггер 40 используется для хранение элементов матрицы
Figure 00000043
. Элемент И 39 управляет прохождением синхросигнала 48 записи в ячейку с координатами
Figure 00000048
, определяемую соответствующими сигналами на входах 45 и 49. Блоки элементов И
Figure 00000049
управляют прохождением на входы соответствующих блоков элементов ИЛИ
Figure 00000050
группы из n значений с выходов триггеров 40, причем выбранные значения определяются координатами искомых строк и столбцов на входах
Figure 00000051
и
Figure 00000052
. Элементы ИЛИ
Figure 00000053
в составе блоков хранения 52 в совокупности с элементами ИЛИ
Figure 00000054
обеспечивают получение на выходах
Figure 00000055
блока коэффициентов матрицы очередной группы коэффициентов матрицы в соответствии с логикой работы матрицы, причем n пар адресов строк и столбцов искомых коэффициентов определяются значениями на входах
Figure 00000051
и
Figure 00000052
блоков хранения 52. Вход 48 синхронизации используется при записи начальных значений коэффициентов матриц в триггеры 40. Входы 49 и 45 адреса строки i и столбца j записи обеспечивают выбор ij-го блока хранения 52 в составе блока коэффициентов матрицы путем управления прохождением синхросигнала 48 через элемент И 39 при записи требуемого коэффициента со входа 47 в триггер 40 выбранного ij-го блока хранения 52. Вход 50 ячейки блока коэффициентов матрицы используется для сброса триггеров 40 в составе блоков хранения перед началом работы устройства. Вход 47 данных записи используется для приема блоком хранения 52 коэффициентов матриц с целью их записи в триггеры 40. Группа входов
Figure 00000051
адресов строк чтения в совокупности с группой входов
Figure 00000052
адресов столбцов чтения используются для управления прохождением значений группы из n коэффициентов матрицы из триггеров 40 блоков хранения 52 на выходы
Figure 00000055
блока коэффициентов матрицы. Группа входов
Figure 00000056
данных от предыдущей строки в совокупности с группой входов
Figure 00000057
данных для следующей строки используется для формирования искомых значений дизъюнкции группы выбранных значений коэффициентов матриц по столбцам блоков хранения 52, получаемой на выходах
Figure 00000057
блоков хранения 52 n-й строки блока коэффициентов матрицы. Вход 31 адресов строк чтения в совокупности со входом 32 адресов столбцов чтения используются для получения блоком коэффициентов матрицы адресов строк и столбцов требуемых элементов с целью их выборки из триггеров 40 и выдачи на выходы
Figure 00000055
. Вход 33 адреса строки записи в совокупности со входом 34 адреса столбца записи используются для получения блоком коэффициентов матрицы значений i-й строки и j-го столбца с целью последующей записи в выбранный ij-й операционный блок значения коэффициента, поданного на вход 35 данных записи. Вход 36 синхронизации используется для приема стробирующего сигнала записи данных со входа 35 блока коэффициентов матрицы в выбранный ij-й блок хранения 52. Вход 37 блока коэффициентов матрицы используется для сброса триггеров 40 в составе блоков хранения перед началом работы устройства. Группа элементов ИЛИ
Figure 00000054
используется для формирования на выходах
Figure 00000055
блока коэффициентов матрицы дизъюнкций значений с выходов
Figure 00000057
блоков хранения 52 блока коэффициентов матрицы с целью формирования группы из n искомых коэффициентов матрицы в соответствии с их адресами на входах 31 и 32. На выходах
Figure 00000055
блока коэффициентов матрицы производится формирование группы из n коэффициентов матрицы.
Устройство работает следующим образом. Перед началом работы устройства на вход 28 подается единичный импульс, который поступает на вход сброса 37 блока коэффициентов матрицы 10. Со входа сброса 37 блока коэффициентов матрицы 10 единичный импульс проходит на входы 50 всех блоков хранения
Figure 00000058
. Со входа 50 блока хранения 52 единичный импульс проходит на вход сброса триггера 40, что, с учетом нулевого значения на входе установки триггера 40, обеспечивает запись нулевого значения. В результате во всех блоках хранения
Figure 00000059
оказывается записано нулевое значение.
Также единичный импульс со входа 28 поступает на элемент НЕ 1 и формирует на информационных входах сдвиговых регистров 2 и 3 значения «00…01». Далее, проходя через элемент задержки 4, единичное значение сигнала со входа 28 поступает на входы загрузки данных сдвиговых регистров 2 и 3, обеспечивая тем самым фиксацию в них начальных значений «00…01».
На этапе загрузки исходных данных на вход 21 подается нулевое значение, которое переключает коммутаторы 19 и 20 для прохождения сигналов адреса записи строки и адреса записи столбца со входов 22 и 23 на одноименные входы 33 и 34 блока коэффициентов матрицы 10 соответственно. Далее, на входы 22 и 23 внешним устройством поочередно подаются адреса строк и столбцов элементов загружаемой матрицы, имеющих единичное значение. Запись каждого единичного значения производится путем подачи единичного импульса на вход 29, который проходит через элемент ИЛИ 16 на синхровход записи 36 блока коэффициентов матрицы 10.
Значение коэффициента со входа 35 блока коэффициентов матрицы поступает на входы 47 блоков хранения 52 и затем на информационный вход триггера 40 в каждом из блоков хранения. Значения адресов строки и столбца со входов 33 и 34 блока коэффициентов матрицы 10 поступают соответственно на входы 49 и 45 блоков хранения 52, причем i-й разряд со входа 33 подается на входы 49 блоков хранения 52 i-й строки блока коэффициентов матрицы, а j-й разряд со входа 34 подается на входы 45 блоков хранения 52 j-го столбца блока коэффициентов матрицы,
Figure 00000060
. Синхроимпульс со входа 36 блока коэффициентов матрицы 10 поступает на входы 48 блоков хранения 52 и далее на вход элемента И 39. Единичные значения со входов 49 и 45, соответствующие выбранному блоку хранения
Figure 00000061
, поступают на вход элемента И 39 блока хранения и открывают его для прохождения синхросигнала на синхровход триггера 40, обеспечивая запись очередного коэффициента. Во всех остальных блоках хранения 52 как минимум на одном из входов 49 или 45 присутствует нулевое значение, элементы И 39 закрыты для прохождения синхросигнала и запись значения в триггер 40 не происходит.
На этапе работы на вход 21 подается единичное значение, которое переключает коммутаторы 19 и 20 для прохождения значений
Figure 00000062
и
Figure 00000063
в унитарном коде с выходов сдвиговых регистров 2 и 3 на входы
Figure 00000064
и
Figure 00000065
блока коэффициентов матрицы 10 соответственно. Значения
Figure 00000062
и
Figure 00000063
на входах
Figure 00000066
обеспечивают чтение значения
Figure 00000067
, формируемого на выходе
Figure 00000068
блока коэффициентов матрицы 10.
Чтение информации из блока коэффициентов матрицы 10, имеющего матричную структуру из
Figure 00000069
блоков хранения
Figure 00000070
, происходит следующим образом. Блок коэффициентов матрицы 10 включает в своем составе три порта чтения, образованных входами адреса строки первого порта
Figure 00000071
, адреса столбца первого порта
Figure 00000072
, адреса строки второго порта
Figure 00000073
, адреса столбца второго порта
Figure 00000074
и адреса строки третьего порта
Figure 00000075
, адреса столбца третьего порта
Figure 00000076
. Чтение информации по каждому из портов происходит единообразно. Единичное значение i-го бита на входе 31 блока коэффициентов матрицы 10 обеспечивает выбор i-ой строки, а единичное значение j-го бита на входе 32 блока коэффициентов матрицы 10 – выбор j-го столбца. Указанные единичные значения со входов
Figure 00000071
и
Figure 00000072
блока хранения
Figure 00000070
открывают элемент И
Figure 00000077
для прохождения сигнала с выхода триггера 40 на первый вход элемента ИЛИ
Figure 00000078
. На выходах элементов И
Figure 00000077
всех остальных блоков хранения 52 сформировано нулевое значение ввиду того, что элементы И
Figure 00000077
закрыты для прохождения сигнала с триггеров 40 нулевым значением со входов
Figure 00000079
или
Figure 00000080
, что формирует нулевые значения на выходах 511. Значение
Figure 00000081
проходит через элементы И 411 и ИЛИ 421 и попадает на выход
Figure 00000082
блока хранения
Figure 00000083
. На входы
Figure 00000084
блоков хранения первой строки подаются нулевые значения. На входах
Figure 00000084
всех остальных блоков хранения, кроме
Figure 00000085
присутствуют нулевые значение. Значения
Figure 00000081
с выхода 511 проходит последовательно через элементы ИЛИ 421 блоков хранения
Figure 00000086
и элемент ИЛИ 531, попадая на выход 381.
На этапе умножения i-й строки на j-й столбец на вход 25 подается единичное значение.
Значение с выхода
Figure 00000068
блока коэффициентов матрицы 10 проходит через коммутатор 11, открытый единичным значением сигнала со входа 25, и попадает на информационный вход двухступенчатого триггера 12. По приходу синхросигнала со входа 24 прочитанное значение
Figure 00000067
сохраняется в двухступенчатом триггере 12. На выходе элемента ИЛИ 18 формируется единичное значение сигнала готовности.
Установленный в единицу сигнал со входа 25 приходит через инвертор 8 и формирует на информационном входе сдвигового регистра 9 значение «00…01» (единица в младшем нулевом разряде), что записывается в сдвиговый регистр 9 при прохождении соответствующего единичного значения сигнала со входа 25 на вход загрузки данных сдвигового регистра 9 через элемент задержки 17. Данное значение представляет собой номер индекса k, используемый для получения значений
Figure 00000087
и
Figure 00000088
матрицы. Значения i и k, поступающие на входы
Figure 00000089
и
Figure 00000090
блока коэффициентов матрицы 10, формируют на его выходе
Figure 00000091
значение
Figure 00000092
, а значения k и j, поступающие на входы
Figure 00000093
и
Figure 00000094
блока коэффициентов матрицы 10 – значение
Figure 00000095
на выходе
Figure 00000096
. Прочитанные значения подаются на входы элемента И 13, на выходе которого формируется конъюнкция
Figure 00000097
. Сформированное значение подается на первый вход элемента ИЛИ 14, на второй вход которого с выхода двухступенчатого триггера 12 подается сформированное на предыдущих шагах работы значение дизъюнкции
Figure 00000098
. На выходе элемента ИЛИ 14 формируется значение
Figure 00000099
, которое подается на второй вход коммутатора 11.
Далее сигнал со входа 25 переключается в ноль, что закрывает коммутатор 11 для прохождения значения сигнала
Figure 00000100
с выхода
Figure 00000101
блока коэффициентов матрицы 10 на информационный вход двухступенчатого триггера 12, и, соответственно, открывает коммутатор 11 для прохождения значения сигнала
Figure 00000102
с выхода элемента ИЛИ 14 на информационный вход двухступенчатого триггера 12, которое фиксируется в двухступенчатом триггере 12 по приходу синхросигнала со входа 24.
Далее синхросигнал со входа 27 устанавливается в единичное значение, которое производит сдвиг влево содержимого сдвигового регистра 9, что фактически эквивалентно инкременту текущего значения k в унитарном коде. Если на данной итерации в двухступенчатом триггере 12 хранится единичное значение, оно открывает элемент И 15 для прохождения синхросигнала со входа 27 через элемент ИЛИ 16 на синхровход записи 36 блока коэффициентов матрицы 10, что приводит к записи единичного значения в элемент
Figure 00000028
матрицы взамен предыдущего нулевого. В противном случае (двухступенчатый триггер 12 хранит нулевое значение) новое значение k обеспечивает чтение новых значений
Figure 00000103
и
Figure 00000104
матрицы из блока коэффициентов матрицы 10 – производится переход к новой итерации.
Если после обработки очередного k-го дизъюнкта двухступенчатый триггер 12 хранит единичное значение, на выходе элемента ИЛИ 18 аналогично рассмотренному выше формируется единичное значение признака окончания обработки.
Если после поступления n синхроимпульсов на вход 27 в двухступенчатом триггере 12 хранится нулевое значение, в старшем разряде сдвигового регистра 9 формируется единичное значение, которое поступает на второй вход элемента ИЛИ 18 и формирует на его выходе единичное значение.
После завершения умножения i-й строки на j-й столбец единичное значение с выхода элемента ИЛИ 18 открывает элемент И 5 для прохождения синхросигнала со входа 26 на синхровход регистра 2, обеспечивая сдвиг его содержимого в сторону старших разрядов ( инкремент значения i в унитарном коде). Далее процесс умножения повторяется для (i+1)-й строки и j-го столбца аналогично рассмотренному выше. После выполнения n итераций умножения единичное значение в составе сдвигового регистра 2 попадает в (n+1)-й разряд. С выхода сдвигового регистра 2 указанное значение открывает элемент И 6 для прохождения сихнросигнала со входа 26 через элементы И 5 и элемент задержки 7 на синхровход сдвигового регистра 3, обеспечивая инкремент номера j-го столбца в унитарном коде. Поступление n2 синхроимпульсов на вход 26 обеспечивает получение n2 результатов умножения
Figure 00000028
.
На этапе выгрузки на вход 21 подается нулевое значение, которое открывает коммутаторы 19 и 20 для прохождения сигналов адреса строки и столбца со входов 22 и 23 устройства на входы 311 и 321 блока коэффициентов матрицы 10 соответственно. На входы 22 и 23 устройства поочередно подаются адреса строк i и столбцов j читаемых элементов, которые поступают на входы 311 и 321 блока коэффициентов матрицы 10 соответственно, формируя на выходе 381 значение
Figure 00000028
, поступающее на выход 30 устройства.
Оценим преимущества предлагаемого устройства по сравнению с прототипом с точки зрения аппаратной сложности.
Оценку аппаратной сложности будем производить в эквивалентных вентилях (ЭВ), понимая под эквивалентным вентилем одно- или двухвходовой логический элемент, выполняющий элементарную логическую операцию.
Блок хранения 52 предлагаемого устройства (фиг. 3) включает в себя: элемент И 39 сложностью 2 эквивалентных вентиля; триггер 40 сложностью 4 эквивалентных вентиля; элемент И 41 сложностью 2 эквивалентных вентиля; элемент ИЛИ 42 сложностью 1 эквивалентный вентиль.
Совокупная аппаратная сложность блока хранения предлагаемого устройства определяется как
Figure 00000105
Аппаратная сложность блока коэффициентов матрицы предлагаемого устройства складывается из аппаратной сложности
Figure 00000106
блоков хранения и аппаратной сложности блока элементов 53:
Figure 00000107
Предлагаемое устройство содержит: элемент НЕ 1 сложностью 1 эквивалентный вентиль, сдвиговый регистр 2 сложностью
Figure 00000108
эквивалентных вентилей, сдвиговый регистр 3 сложностью
Figure 00000108
эквивалентных вентилей, элемент задержки 4 сложностью 2 эквивалентных вентиля, элемент И 5 сложностью 1 эквивалентный вентиль, элемент И 6 сложностью 1 эквивалентный вентиль, элемент задержки 7 сложностью 2 эквивалентных вентиля, элемент НЕ 8 сложностью 1 эквивалентный вентиль, сдвиговый регистр 9 сложностью
Figure 00000108
эквивалентных вентилей, блок коэффициентов матрицы 10 сложностью
Figure 00000109
коммутатор 11 сложностью 3 эквивалентных вентиля, двухступенчатый триггер 12 сложностью 8 эквивалентных вентилей, элемент И 13 сложностью 1 эквивалентный вентиль, элемент ИЛИ 14 сложностью 1 эквивалентный вентиль, элемент И 15 сложностью 1 эквивалентный вентиль, элемент ИЛИ 16 сложностью 1 эквивалентный вентиль, элемент задержки 17 сложностью 2 эквивалентных вентиля, элемент ИЛИ 18 сложностью 1 эквивалентный вентиль, коммутатор 19 сложностью 3n эквивалентных вентилей, коммутатор 20 сложностью 3n эквивалентных вентилей.
Совокупная аппаратная сложность предлагаемого устройства определяется как
Figure 00000110
Значения величины аппаратной сложности для прототипа приведены в Патенте РФ на полезную модель № 193927. Устройство для умножения бинарных матриц. заявл. 26.06.2019, опубл. 21.11.2019, бюл. № 33..
Значения величины аппаратной сложности предлагаемого устройства и прототипа, рассчитанные для различных n, приведены в таблице.
n Предлагаемое устройство, ЭВ Прототип,
ЭВ
Выигрыш,
раз
10 2,0×103 1,1×104 5,6
100 1,5×105 6,5×106 42,2
1000 1,5×107 6,1×109 402,3
Из представленных данных следует, что предлагаемое устройство обладает в 5,6 – 402,3 раз меньшей аппаратной сложностью по сравнению с прототипом в зависимости от размера матрицы n.

Claims (1)

  1. Устройство для возведения бинарной матрицы в квадрат, содержащее
    Figure 00000111
    блоков хранения и группу из n выходных элементов ИЛИ, каждый из блоков хранения содержит элемент И, группу элементов И, группу элементов ИЛИ, триггер, причем в составе каждого из блоков коэффициентов матриц синхровход блока коэффициентов матрицы подключен к синхровходам каждого из
    Figure 00000111
    блоков хранения, k-й вход (где
    Figure 00000112
    ) в составе группы адресов строк чтения блока коэффициентов матрицы подключен ко входу адресов строк чтения
    Figure 00000113
    -го блока хранения (где
    Figure 00000114
    ), k-й вход (где
    Figure 00000115
    ) в составе группы адресов столбцов чтения блока коэффициентов матрицы подключен ко входу адресов столбцов чтения
    Figure 00000116
    -го блока хранения (где
    Figure 00000117
    ), k-й вход (где
    Figure 00000118
    ) в составе группы входов данных от предыдущей строки
    Figure 00000119
    -го блока хранения (где
    Figure 00000120
    ,
    Figure 00000121
    ) подключен к k-му выходу данных для следующей строки
    Figure 00000122
    -го блока хранения, k-й вход (где
    Figure 00000123
    ) в составе группы адресов строк записи блока коэффициентов матрицы подключен ко входу адресов строк записи
    Figure 00000124
    -го блока хранения (где
    Figure 00000125
    ), k-й вход (где
    Figure 00000126
    ) в составе группы адресов столбцов записи блока коэффициентов матрицы подключен ко входу адресов столбцов записи
    Figure 00000127
    -го блока хранения (где
    Figure 00000128
    ), вход данных записи блока коэффициентов матрицы подключен ко входу данных записи каждого из
    Figure 00000111
    блоков хранения, k-й выход (где
    Figure 00000129
    ) в составе группы выходов данных для следующей строки
    Figure 00000130
    -го блока хранения (где
    Figure 00000131
    ) подключен к p-му входу k-го элемента группы элементов ИЛИ блока коэффициентов матрицы, выход k-го (где
    Figure 00000132
    ) элемента группы элементов ИЛИ блока коэффициентов матрицы подключен к k-му выходу в составе группы выходов блока коэффициентов матрицы, первый вход элемента И блока хранения подключен ко входу адреса столбца записи блока хранения, синхросигнал поступает на второй вход элемента И блока хранения, третий вход элемента И блока хранения подключен ко входу адреса строки записи блока хранения, информационный вход триггера подключен ко входу данных записи блока хранения, а синхровход триггера – к выходу элемента И, вход сброса триггера подключен ко входу сброса блока хранения, выход триггера подключен к первому входу каждого из n элементов группы элементов И, выход каждого из n элементов группы элементов И подключен к первому входу каждого из n элементов группы элементов ИЛИ, второй вход каждого i-го элемента группы элементов ИЛИ подключен к i-му разряду входа данных от предыдущей строки блока хранения, а выход каждого i-го элемента группы элементов ИЛИ подключен к i-му разряду выхода данных для следующей строки блока хранения, второй вход каждого i-го элемента группы элементов И подключен к i-му разряду входа адреса строки чтения блока хранения, а третий вход каждого i-го элемента группы элементов И подключен к i-му разряду входа адреса столбца чтения блока хранения, дополнительно введены первый и второй инверторы, первый, второй и третий сдвиговые регистры, первый, второй и третий элементы задержки, первый, второй, третий и четвертой элементы И, первый, второй и третий коммутаторы; первый, второй и третий элементы ИЛИ, двухступенчатый триггер, вход сброса ячейки блока хранения, причем вход инициализации подключен ко входу первого инвертора, выход которого подключен к информационным входам первого и второго сдвиговых регистров, вход синхронизации подключен ко второму входу первого элемента И, выход которого подключен к синхровходу первого сдвигового регистра, выход первого элемента И подключен ко входу второго элемента задержки, выход которого подключен ко второму входу второго элемента И, первый вход которого подключен к выходу первого сдвигового регистра, выход второго элемента И подключен к синхровходу второго сдвигового регистра, а входы загрузки первого и второго сдвиговоых регистров подключены к выходу первого элемента задержки, ко входу которого подключен вход инициализации, выход первого сдвигового регистра подключен к первому входу первого коммутатора, выход второго сдвигового регистра подключен к первому входу второго коммутатора, второй и третий входы первого и второго коммутаторов подключены к первому входу устройства, четвертый вход первого коммутатора подключен ко входу адреса строки, четвертый вход второго коммутатора подключен ко входу адреса столбца, выход первого коммутатора подключен к первому, третьему и седьмому входам блока коэффициентов матрицы, выход второго коммутатора подключен ко второму, шестому и восьмому входам блока коэффициентов матрицы, на девятый вход блока коэффициентов матрицы подается единичное значение, одиннадцатый вход блока коэффициентов матрицы подключен ко входу инициализации устройства, ко входам четыре и пять блока коэффициентов матрицы подключен выход третьего сдвигового регистра, информационный вход которого подключен к выходу второго инвертора, вход которого подключен ко второму входу устройства, вход загрузки данных третьего сдвигового регистра подключен к выходу третьего элемента задержки, вход которого подключен ко второму входу устройства, синхровход третьего сдвигового регистра подключен к синхровходу устройства, первый выход блока коэффициентов матрицы подключен к первому входу третьего коммутатора, второй и третий входы которого подключены ко второму входу устройства, выход третьего коммутатора подключен к информационному входу двухступенчатого триггера, сихровход двухступенчатого триггера подключен к синхровходу устройства, выход двухступенчатого триггера подключен ко второму входу первого элемента ИЛИ, вход которого подключен к выходу третьего элемента И, первый вход которого подключен ко второму выходу блока коэффициентов матрицы, а второй вход – к третьему выходу блока коэффициентов матрицы, выход первого элемента ИЛИ подключен к четвертому входу третьего коммутатора, выход двухступенчатого триггера подключен ко второму входу четвертого элемента И, первый вход которого подключен к синхровходу, выход четвертого элемента И подключен к первому входу третьего элемента ИЛИ, первый вход которого подключен ко входу сброса устройства, выход третьего элемента ИЛИ подключен к десятому входу блока коэффициентов матрицы, выход двухступенчатого триггера подключен к первому входу второго элемента ИЛИ, второй вход которого подключен к выходу третьего сдвигового регистра, выход второго элемента ИЛИ подключен к первому входу первого элемента И, первый выход блока коэффициентов матрицы подключен к выходу устройства.
RU2020122205A 2020-07-05 2020-07-05 Устройство для возведения бинарной матрицы в квадрат RU2744239C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2020122205A RU2744239C1 (ru) 2020-07-05 2020-07-05 Устройство для возведения бинарной матрицы в квадрат

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2020122205A RU2744239C1 (ru) 2020-07-05 2020-07-05 Устройство для возведения бинарной матрицы в квадрат

Publications (1)

Publication Number Publication Date
RU2744239C1 true RU2744239C1 (ru) 2021-03-04

Family

ID=74857756

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2020122205A RU2744239C1 (ru) 2020-07-05 2020-07-05 Устройство для возведения бинарной матрицы в квадрат

Country Status (1)

Country Link
RU (1) RU2744239C1 (ru)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3610906A (en) * 1968-11-07 1971-10-05 Burroughs Corp Binary multiplication utilizing squaring techniques
SU1111155A1 (ru) * 1983-04-01 1984-08-30 Voloshchenko Sergej A Матричное устройство дл возведени в квадрат и извлечени квадратного корн
SU1534471A1 (ru) * 1988-01-15 1990-01-07 Институт микроэлектроники АН СССР Устройство дл умножени ленточной матрицы на полную матрицу
SU1608653A1 (ru) * 1988-11-22 1990-11-23 Одесский Политехнический Институт Матричное устройство дл возведени в квадрат

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3610906A (en) * 1968-11-07 1971-10-05 Burroughs Corp Binary multiplication utilizing squaring techniques
SU1111155A1 (ru) * 1983-04-01 1984-08-30 Voloshchenko Sergej A Матричное устройство дл возведени в квадрат и извлечени квадратного корн
SU1534471A1 (ru) * 1988-01-15 1990-01-07 Институт микроэлектроники АН СССР Устройство дл умножени ленточной матрицы на полную матрицу
SU1608653A1 (ru) * 1988-11-22 1990-11-23 Одесский Политехнический Институт Матричное устройство дл возведени в квадрат

Similar Documents

Publication Publication Date Title
KR900007226B1 (ko) 반도체 메모리 장치
US3161763A (en) Electronic digital computer with word field selection
JPS63276795A (ja) 可変長シフトレジスタ
US9779803B1 (en) Memory circuit with write-bypass portion
US20060171239A1 (en) Dual Port Memory Unit Using a Single Port Memory Core
US12046324B2 (en) Modular memory architecture with gated sub-array operation dependent on stored data content
JPH0820967B2 (ja) 集積回路
US4138720A (en) Time-shared, multi-phase memory accessing system
Song et al. BRAHMS: Beyond conventional RRAM-based neural network accelerators using hybrid analog memory system
EP0048810A2 (en) Recirculating loop memory array with a shift register buffer
US3943347A (en) Data processor reorder random access memory
EP1012700B1 (en) Multiple parallel identical finite state machines which share combinatorial logic
JPH0391188A (ja) Fifoメモリ
RU2744239C1 (ru) Устройство для возведения бинарной матрицы в квадрат
US5369618A (en) Serial access memory
US3278904A (en) High speed serial arithmetic unit
US6463422B1 (en) Probabilistic computing methods and apparatus
JP3443689B2 (ja) アービタ回路
US3289174A (en) Memory sector selection circuit
KR19990088402A (ko) 반도체메모리장치및번인테스트방법
JP3581364B2 (ja) ランダムアクセス比較アレイ
JP3240067B2 (ja) 順次メモリ
JP3013800B2 (ja) 非同期fifo回路
RU157948U1 (ru) Устройство для умножения матриц
RU193927U1 (ru) Устройство для умножения бинарных матриц