Изобретение относится к электронике и вычислительной технике и может быть использовано в устройствах цифровой обработки сигналов для реализации цифровых фильтров, в системах цифровой связи для кодирования и декодирования данных и построения многоканальных синтезаторов частот, а также для ускорения вычислений в высокопроизводительных цифровых вычислительных системах.
Уровень техники
Из существующего уровня техники известно техническое решение однородной вычислительной структуры для выполнения операций по заданному модулю, которая содержит полные сумматоры, элементы И, элементов ИЛИ, информационные и управляющие входы, информационные выходы [1], предназначенное для выполнения арифметических операций по заданному модулю. Технической проблемой, которая не может быть решена при использовании данного технического решения, является низкая производительность арифметических операций по произвольным модулям, так как основной арифметической операции при работе устройства предшествует дополнительный режим коммутации, который определяет структуру устройства в зависимости от выбранного модуля.
Из существующего уровня техники также известно устройство для конвейерных арифметических вычислений по заданному модулю, содержащее однородную вычислительную среду, три таблицы подстановок, информационные входы и информационные выходы, тактовый вход, позволяющее выполнять суммирование чисел по произвольным простым модулям [2]. Технической проблемой, которая не может быть решена при использовании данного технического решения при конвейерной обработке информации, является ограниченность функциональных возможностей устройства, так как устройство позволяет выполнять операции суммирования чисел только по модулям простых чисел. Кроме того, использование таблиц подстановки требует при каждой смене модуля изменять содержимое таблиц подстановки, что не позволяет оперативно менять модуль при организации конвейерных вычислений.
Наиболее близким к заявленному техническому решению по технической сущности и достигаемому техническому результату является устройство для конвейерного суммирования чисел по произвольному модулю, выбранное в качестве прототипа, содержащее группу полных одноразрядных сумматоров, первую однородную вычислительную среду разрядности n, где n – разрядность обрабатываемых чисел, вторую однородную вычислительную среду разрядности (n+1), мультиплексор разрядности n, три информационных входа, тактовый вход и информационные выходы с соответствующими связями, позволяющее выполнять суммирование чисел по модулю в конвейерном режиме [3]. Технической проблемой, которая не может быть решена при использовании данного технического решения, является ограниченность функциональных возможностей устройства, так как устройство не позволяет осуществлять накапливающее суммирование чисел по модулю в многоканальном режиме. Одноканальная архитектура не позволяет эффективно распределять вычислительные задачи между несколькими потоками, что ведет к снижению скорости обработки данных и уменьшению пропускной способности системы.
Техническим результатом, обеспечиваемым приведенной совокупностью признаков, является расширение функциональных возможностей устройства за счет реализации операции накапливающего суммирования в многоканальном режиме.
Раскрытие сущности изобретения
Указанный технический результат при осуществлении изобретения достигается тем, что в многоканальный накапливающий сумматор по произвольным модулям, содержащий первую однородную вычислительную среду разрядности n, вторую однородную вычислительную среду разрядности (n+1), где n – разрядность обрабатываемых чисел, группу полных одноразрядных сумматоров и двухвходовый мультиплексор, тактовый вход, который соединен со входом синхронизации первой и второй однородных вычислительных сред, первые информационные выходы группы полных одноразрядных сумматоров соединены с младшими n разрядами первых информационных входов второй однородной вычислительной среды, а вторые информационные выходы соединены со вторыми информационными входами второй однородной вычислительной среды со сдвигом на один разряд в сторону старшего, на (n+1)-й разряд первых информационных входов и на первый разряд вторых информационных входов второй вычислительной среды подается сигнал логической единицы, младшие n разрядов информационных выходов второй однородной вычислительной среды соединены со вторыми информационными входами двухвходового мультиплексора, а выход разряда переноса соединен с управляющим входом двухвходового мультиплексора, первые информационные входы которого соединены с информационными выходами первой однородной вычислительной среды, введены k входных информационных каналов устройства и k выходных информационных каналов устройства, причем входные информационные каналы являются 2n-разрядными, а выходные информационные каналы являются n-разрядными, k-канальный мультиплексор, причем каждый канал является 2n-разрядным, счётчик и k-канальный демультиплексор, причём каждый выход является n-разрядным, тактовый вход устройства соединён с входом счётчика, информационные выходы которого соединены с управляющими входами k-канального демультиплексора и k-канального мультиплексора, младшие n разрядов каждого входного информационного канала устройства соединены с младшими разрядами соответствующих входных информационных каналов k-канального мультиплексора, а старшие n разрядов соединены со старшими разрядами соответствующих входных информационных каналов k-канального мультиплексора, старшие n разрядов информационных выходов которого соединены с первыми информационными входами первой однородной вычислительной среды и с первыми информационными входами группы полных одноразрядных сумматоров, вторые информационные входы которой соединены с младшими n разрядами информационных выходов k-канального мультиплексора, информационные выходы двухвходового мультиплексора соединены со вторыми информационными входами первой однородной вычислительной среды, с третьими информационными входами группы полных одноразрядных сумматоров и с информационными входами k-канального демультиплексора, выходные информационные каналы которого соединены с соответствующими выходными информационными каналами устройства.
Сущность изобретения заключается в реализации следующего способа многоканального накапливающего суммирования чисел Ak i по модулям Pk, где (i=1, 2, 3, …) – такты работы устройства, k – номер канала суммирования.
На каждый входной информационный канал многоканального накапливающего сумматора по произвольным модулям поступают пары целых неотрицательных чисел Ak,i (0 ≤ Ak,i < Pk), и Pk, где Ak,i – суммируемые числа, Pk – модуль, по которому совершается накапливающее суммирование. Числа Ak,i потактово суммируются по k-му модулю в одноименных каналах с числами, записанными в его памяти на предыдущих тактах, образуя в k независимых выходных каналах последовательности чисел Sk,i, причем 0 ≤ Sk,i < Pk. При этом
Sk , i ≡(∑ Ak,(i−k+1)) mod Pk, i=1, 2, 3,… , (1)
где Ak,(i−k+1)=0 при (i−k+1) ≤ 0.
Многоканальное накапливающее суммирование может быть реализовано рекуррентным способом, тогда выражение (1) может быть записано в следующем виде:
Sk , i ≡(Sk,(i−k)+Ak,(i−k+1)) mod Pk, i=1, 2, 3,… , (2)
при этом считаем, что Sk,(i−k)=0 при (i−k) ≤ (k−1), а Sk,i=0 при i ≤ (k−1).
В качестве канального сумматора в накапливающем режиме суммирования может выступать однородная вычислительная среда.
Выполняя с помощью одной однородной вычислительной среды операцию суммирования (Sk,(i−k)+Ak,(i−k+1)), а с помощью второй однородной вычислительной среды операцию (Sk,(i−k)+Ak,(i−k+1))−Pk, можно по результатам вычисления второй однородной вычислительной среды выбирать корректное значение в выражении (2) для суммы Sk,i. Подключение входных и выходных информационных каналов к канальному сумматору осуществляется с помощью многоканальных мультиплексора и демультиплексора, управляемых счётчиком по модулю k.
Краткое описание чертежей
На фиг. 1 представлена схема многоканального накапливающего сумматора по произвольным модулям. Многоканальный накапливающий сумматор по произвольным модулям содержит k-канальный мультиплексор 1, причем каждый его канал является 2n-разрядным, где k – количество каналов устройства, а n – разрядность обрабатываемых чисел, счётчик 2, группу полных одноразрядных сумматоров 3, первую однородную вычислительную среду 4.1 разрядности n, вторую однородную вычислительную среду 4.2 разрядности (n+1), двухвходовый мультиплексор 5 и k-канальный демультиплексор 6, причём каждый его канал является n-разрядным, k входных информационных каналов устройства 7, тактовый вход устройства 8 и k выходных информационных каналов устройства 9, причем входные информационные каналы устройства 7 являются 2n-разрядными, а выходные информационные каналы устройства 9 являются n-разрядными. Тактовый вход устройства 8 соединен со входами синхронизации первой и второй однородных вычислительных сред 4.1, 4.2 и с тактовым входом счётчика 2. Младшие n разрядов каждого входного информационного канала устройства 7 соединены с младшими разрядами соответствующих входных информационных каналов k-канального мультиплексора 1, а старшие n разрядов соединены со старшими разрядами соответствующих входных информационных каналов k-канального мультиплексора 1, старшие n разрядов информационных выходов которого соединены с первыми информационными входами первой однородной вычислительной среды 4.1 и с первыми информационными входами группы полных одноразрядных сумматоров 3, вторые информационные входы которой соединены с младшими n разрядами информационных выходов k-канального мультиплексора 1. Первые информационные выходы группы полных одноразрядных сумматоров 3 соединены с младшими n разрядами первых информационных входов второй однородной вычислительной среды 4.2, а вторые информационные выходы соединены со вторыми информационными входами второй однородной вычислительной среды 4.2 со сдвигом на один разряд в сторону старшего, на (n+1)-й разряд первых информационных входов и на первый разряд вторых информационных входов второй вычислительной среды 4.2 подается сигнал логической единицы, младшие n разрядов информационных выходов второй однородной вычислительной среды 4.2 соединены со вторыми информационными входами двухвходового мультиплексора 5, а выход разряда переноса соединен с управляющим входом двухвходового мультиплексора 5, первые информационные входы которого соединены с информационными выходами первой однородной вычислительной среды 4.1. Информационные выходы двухвходового мультиплексора 5 соединены со вторыми информационными входами первой однородной вычислительной среды 4.1, с третьими информационными входами группы полных одноразрядных сумматоров 3 и с информационными входами k-канального демультиплексора 6, выходные информационные каналы которого соединены с соответствующими выходными информационными каналами устройства 9. На старшие n разрядов каждого входного информационного канала подаются входные потоки чисел соответствующего канала Ak,i, где – номер такта, i=1, 2, 3, …, а на младшие n разрядов подаются инверсные коды соответствующих модулей
. С информационных выходных каналов устройства 9 снимаются коды суммы Sk,i чисел Ak,i по модулю Pk.
Осуществление изобретения
Многоканальный накапливающий сумматор по произвольным модулям работает следующим образом (см. Фиг. 1).
В исходном состоянии счетчик 2 и все ячейки первой 4.1 и второй 4.2 однородной вычислительной среды обнулены.
На тактовый вход устройства 8 поступают тактовые импульсы i=1, 2, 3, …, . На каждый входной информационный канал с каждым тактовым импульсом подаются коды чисел Ak,i и инверсные коды модулей Pk, для которых необходимо вычислить сумму Sk,i по k каналу. Причем коды модулей Pk подаются на младшие n разрядов канала, а коды чисел Ak,i подаются на старшие n разрядов канала. С каждым тактовым импульсом с информационных выходов k-канального мультиплексора 1 снимается пара чисел Ak,i и Pk. Сумма Sk,i по модулю Pk чисел Ak,i снимается с соответствующих выходных информационных каналов.
Длина конвейера k определяет его латентный период работы и зависит от структуры однородных вычислительных сред 4.1 и 4.2.
На управляющий вход k-канального мультиплексора 1 с информационных выходов счётчика 2 на каждом такте в порядке возрастания поступает номер выбираемого канала. Так на первом такте под воздействием управляющего сигнала на старшие n разрядов информационных выходов мультиплексора 1 скоммутируется код числа A1,1, а на младшие n разрядов скоммутируется инверсный код модуля P1. Далее код числа A1,1 поступит на первые информационные входы первой однородной вычислительной среды 4.1, а на вторые информационные входы с информационных выходов двухвходового мультиплексора 5 поступит значение S1,0=0. В первый столбец однородной вычислительной среды 4.1 запишется вектор значений, зависящий от структуры построения однородной вычислительной среды 4.1 и значений чисел A1,1 и S1,0, который можно определить, как первую частичную сумму A1,1 и S1,0. Полная сумма этих чисел появится на информационных выходах однородной вычислительной среды 4.1 через k тактов работы устройства. Одновременно число A1,1 поступает на первые информационные входы группы полных одноразрядных сумматоров 3, на вторые информационные входы которых с младших n разрядов информационных выходов k-канального мультиплексора 1 подаётся инверсный код значения модуля P1, а на третьи информационные входы с выхода двухвходового мультиплексора 5 подаётся нулевое значение S1,0. На первых и вторых информационных выходах группы полных одноразрядных сумматоров 1 будут формироваться числа Xi и Yi соответственно. При этом в соответствии с правилами сложения разряды чисел Xi и Yi будут вычислены как:
xj , i =aj,i⊕bj,i⊕pj,i, (3)
yj , i =aj,ibj,i∨bj,ipj,i∨aj,ipj,i, (4)
где j=0, 1, 2, 3 – номер разряда в двоичном представлении чисел;
i=1, 2, 3, …, – номер такта работы устройства;
xj , i – j-й разряд i-го числа Xi,
yj , i – j-й разряд i-го числа Yi;
aj , i – j-й разряд i-го числа Ak,i;
bj , i – j-й разряд i-го числа Sk,i;
pj , i – j-й разряд числа Pk на i-м такте;
символ ⊕ означает суммирование по модулю два;
символ ∨ означает логическую дизъюнкцию.
Тогда вычисление значения ((Sk,(i−k)+Ak,(i−k+1))−Pk), состоящего из трех операндов может быть сведено к вычислению значения (2n+1+Xj+2Yj+1), состоящего из двух операндов и двух констант, с увеличением на одну единицу разрядности вычислителя.
Числа X1 и Y1 поступают на первые и вторые информационные входы второй однородной вычислительной среды 4.2. В первый столбец второй однородной вычислительной среды 4.2 по окончании первого тактового импульса запишется вектор значений, зависящий от структуры построения однородной вычислительной среды 4.2 и значений чисел X1 и Y1. Полное значение выражения ((A1,1+S1,0)–P1) появится на информационных выходах однородной вычислительной среды 4.2 через k тактов работы устройства.
В общем случае, если (Sk,(i−k)+Ak,(i−k+1)) ≥ Pk, то на выходе переноса второй однородной вычислительной среды 4.2 образуется сигнал переноса, который поступит на управляющий вход мультиплексора 5 и скоммутирует вторые информационные входы на информационные выходы и на информационных выходах двухвходового мультиплексора 5 появится разность (Sk,(i−k)+Ak,(i−k+1))–Pk, а иначе на его информационных выходах появится сумма (Sk,(i−k)+Ak,(i−k+1)). Результат Sk,i поступит на информационные входы k-канального демультиплексора 6, на вторые информационные входы первой вычислительной среды 4.1 и на третьи информационные входы группы полных одноразрядных сумматоров 3. На управляющий вход k-канального демультиплексора 6 поступает сигнал с выхода счетчика 2, под воздействием которого осуществляется коммутация его информационных входов на соответствующий выходной информационный канал, с выхода которого значение соответствующей суммы поступает на выходной информационный канал устройства 9. Таким образом, на выходных информационных каналах 9 устройства в соответствии с выражением (2) на каждом такте работы устройства будут появляться значения соответствующей накапливающей суммы Sk,i. На следующих тактах работа устройства продолжится аналогичным образом.
Изобретение позволяет расширить функциональные возможности прототипа за счет реализации операции накапливающего суммирования в многоканальном режиме. Это позволит одновременно обрабатывать данные по нескольким независимым каналам с использованием одних и тех же канальных вычислителей, что значительно уменьшает количество оборудования для реализации многоканального режима накапливающего суммирования.
Источники информации
1. Патент на изобретение RU 2310223 С1. МПК G06F 7/72 (2006.01). Однородная вычислительная структура для выполнения операций по заданному модулю. Опубл. 10.11.2007. Бюл. № 31.
2. Патент на изобретение RU 2477513 С1. МПК G06F 7/72 (2006.01). Ячейка однородной вычислительной среды, однородная вычислительная среда и устройство для конвейерных арифметических вычислений по заданному модулю. Опубл. 10.03.2013. Бюл. № 7.
3. Патент на изобретение RU 2805939 С1. МПК G06F 7/72 (2006.01). Устройство для конвейерного суммирования чисел по произвольному модулю. Опубл. 24.10.2023. Бюл. № 30.
название | год | авторы | номер документа |
---|---|---|---|
КОНВЕЙЕРНЫЙ НАКАПЛИВАЮЩИЙ СУММАТОР ПО ПРОИЗВОЛЬНЫМ МОДУЛЯМ | 2024 |
|
RU2823911C1 |
ДВУХКАНАЛЬНЫЙ НАКАПЛИВАЮЩИЙ СУММАТОР ПО МОДУЛЮ | 2024 |
|
RU2823898C1 |
НАКАПЛИВАЮЩИЙ СУММАТОР ГРУППОВОЙ СТРУКТУРЫ ПО ПРОИЗВОЛЬНОМУ МОДУЛЮ С ПОСЛЕДОВАТЕЛЬНЫМ ПЕРЕНОСОМ | 2024 |
|
RU2833212C1 |
АРИФМЕТИКО-ЛОГИЧЕСКОЕ УСТРОЙСТВО ДЛЯ СЛОЖЕНИЯ, ВЫЧИТАНИЯ И УМНОЖЕНИЯ ЧИСЕЛ ПО МОДУЛЮ | 2019 |
|
RU2711051C1 |
УСТРОЙСТВО ДЛЯ КОНВЕЙЕРНОГО СУММИРОВАНИЯ ЧИСЕЛ ПО ПРОИЗВОЛЬНОМУ МОДУЛЮ | 2023 |
|
RU2805939C1 |
Устройство для деления чисел | 1990 |
|
SU1795456A1 |
АРИФМЕТИКО-ЛОГИЧЕСКОЕ УСТРОЙСТВО ДЛЯ ФОРМИРОВАНИЯ ОСТАТКА ПО ПРОИЗВОЛЬНОМУ МОДУЛЮ ОТ ЧИСЛА | 2018 |
|
RU2696223C1 |
Арифметико-логическое устройство для умножения чисел по модулю | 2017 |
|
RU2653263C1 |
Накапливающий сумматор | 2017 |
|
RU2642366C1 |
УМНОЖИТЕЛЬ ПО МОДУЛЮ | 2024 |
|
RU2829089C1 |
Изобретение относится к электронике и вычислительной технике. Технический результат заключается в расширении функциональных возможностей устройства за счет реализации операции накапливающего суммирования в многоканальном режиме. Многоканальный накапливающий сумматор по произвольным модулям содержит k-канальный мультиплексор, причем каждый его канал является 2n-разрядным, где k – количество каналов устройства, а n – разрядность обрабатываемых чисел, счётчик, группу полных одноразрядных сумматоров, первую однородную вычислительную среду разрядности n, вторую однородную вычислительную среду разрядности (n+1), двухвходовый мультиплексор и k-канальный демультиплексор, причём каждый его канал является n-разрядным, k входных информационных каналов устройства, тактовый вход устройства и k выходных информационных каналов устройства, причём входные информационные каналы устройства являются 2n-разрядными, а выходные информационные каналы устройства являются n-разрядными. 1 ил.
Многоканальный накапливающий сумматор по произвольным модулям, содержащий первую однородную вычислительную среду разрядности n, вторую однородную вычислительную среду разрядности (n+1), где n – разрядность обрабатываемых чисел, группу полных одноразрядных сумматоров и двухвходовый мультиплексор, тактовый вход, который соединен со входом синхронизации первой и второй однородных вычислительных сред, первые информационные выходы группы полных одноразрядных сумматоров соединены с младшими n разрядами первых информационных входов второй однородной вычислительной среды, а вторые информационные выходы соединены со вторыми информационными входами второй однородной вычислительной среды со сдвигом на один разряд в сторону старшего, на (n+1)-й разряд первых информационных входов и на первый разряд вторых информационных входов второй вычислительной среды подается сигнал логической единицы, младшие n разрядов информационных выходов второй однородной вычислительной среды соединены со вторыми информационными входами двухвходового мультиплексора, а выход разряда переноса соединен с управляющим входом двухвходового мультиплексора, первые информационные входы которого соединены с информационными выходами первой однородной вычислительной среды, отличающийся тем, что в него введены k входных информационных каналов устройства и k выходных информационных каналов устройства, причем входные информационные каналы являются 2n-разрядными, а выходные информационные каналы являются n-разрядными, k-канальный мультиплексор, причем каждый канал является 2n-разрядным, счётчик и k-канальный демультиплексор, причём каждый выход является n-разрядным, тактовый вход устройства соединён с входом счётчика, информационные выходы которого соединены с управляющими входами k-канального демультиплексора и k-канального мультиплексора, младшие n разрядов каждого входного информационного канала устройства соединены с младшими разрядами соответствующих входных информационных каналов k-канального мультиплексора, а старшие n разрядов соединены со старшими разрядами соответствующих входных информационных каналов k-канального мультиплексора, старшие n разрядов информационных выходов которого соединены с первыми информационными входами первой однородной вычислительной среды и с первыми информационными входами группы полных одноразрядных сумматоров, вторые информационные входы которой соединены с младшими n разрядами информационных выходов k-канального мультиплексора, информационные выходы двухвходового мультиплексора соединены со вторыми информационными входами первой однородной вычислительной среды, с третьими информационными входами группы полных одноразрядных сумматоров и с информационными входами k-канального демультиплексора, выходные информационные каналы которого соединены с соответствующими выходными информационными каналами устройства.
ОДНОРОДНАЯ ВЫЧИСЛИТЕЛЬНАЯ СТРУКТУРА ДЛЯ ВЫПОЛНЕНИЯ ОПЕРАЦИЙ ПО ЗАДАННОМУ МОДУЛЮ | 2005 |
|
RU2310223C2 |
БЫСТРОДЕЙСТВУЮЩИЙ НАКАПЛИВАЮЩИЙ СУММАТОР ПО МОДУЛЮ ПРОИЗВОЛЬНОГО НАТУРАЛЬНОГО ЧИСЛА | 2020 |
|
RU2754122C1 |
Приспособление к мотальным машинам для выключения катушки, затормаживания мотовила и улавливания конца нити при обрыве последней | 1933 |
|
SU36249A1 |
US 7007059 B1, 28.02.2006 | |||
US 3814924, 04.06.1974. |
Авторы
Даты
2025-04-02—Публикация
2024-09-05—Подача