ОБЛАСТЬ ТЕХНИКИ
Изобретение относится к области вычислительной техники и автоматики, предназначено для генерации многовыходных кодовых комбинаций и может быть использовано в задачах криптографии, минимизации с помощью аппарата линейного программирования и автоматизации физических экспериментов.
ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
Известен счетчик с произвольным коэффициентом счета (SU №1750055 А1, МПК H03K 23/40, заявлен 02.09.1989, опубликован 23.07.1992), содержащий элемент ИЛИ-НЕ, первую, вторую и третью группы элементов ИЛИ-НЕ, группу элементов И-ИЛИ-НЕ, тактовый вход, группы прямых и инверсных выходов счетчика и выход сигнала переноса счетчика.
Недостатком данного устройства является то, что настройка коэффициента счета задается за счет изменения связей между элементами.
Известны функциональные счетчики, например, в управлении технологическими процессами, в которых возникает проблема определения некоторых математических функций в зависимости от числа полученных счетных импульсов. Известен генератор последовательности чисел Фибоначчи (Оберман Р.М.М. Счет и счетчики. Пер. с англ. - М.: Радио и Связь, 1984. - 176 с, рис. 8.12, с. 163-165), содержащий сумматор и два регистра, выходы которых соединены с соответствующими входами сумматора, выход которого соединен с входами второго регистра, выходы которого соединены с входами первого регистра, выходы которого являются выходами генератора. Работа генератора основана на суммировании текущего и предпоследнего состояний счетчика.
Недостатком данного устройства является формирование последовательности чисел Фибоначчи, которые не сохраняют количество единичных бит.
Известен счетчик с переменным модулем счета (Схемотехника ЭВМ. Сборник задач: учебное пособие. - М.: НИЯУ МИФИ, 2012. - 240 с., рис. 72, с. 79-81), содержащий счетчик, схему сравнения и элемент ИЛИ, причем выходы счетчика соединены с первой группой входов схемы сравнения, вторая группа входов которой соединена с внешними входами задания модуля счета, а выход схемы сравнения соединен с первым входом элемента ИЛИ, второй вход которого подключен к внешнему входу начальной установки, а выход элемента ИЛИ соединен с входом синхронной установки счетчика в нулевое состояние. Данный счетчик позволяет оперативно изменять (программировать) модуль пересчета.
Недостатком данного устройства является формирование последовательных двоичных наборов, которые не сохраняют количество единичных бит.
Известен счетчик групповой структуры с переменным модулем (RU №2617329 С1, МПК H03K 23/40, G06F 17/00, заявлен 21.03.2016, публикован 24.04.2017, Бюл. №12) содержащий группу из N счетчиков 11, 12, …, 1N, первую группу из N схем сравнения 21, 22, …, 2N, группу из N-1 сумматоров 31, 32, …, 3N-1, вторую группу из N схем сравнения 41, 42, …, 4N, первую группу из N элементов ИЛИ 51, 52, …, 5N, вторую группу из N элементов ИЛИ 61, 62, …, 6N, дешифратор 7, мультиплексор 8, группу из N внешних входов задания модулей счета 91, 92, …, 9N, внешние входы задания суммарного модуля счета 10, внешние входы задания количества счетчиков 11, внешний вход синхронизации 12, внешний вход сброса 13, внешний вход разрешения работы 14, группу из N внешних выходов 151, 152, …, 15N, внешний выход переноса счетчика 16. Алгоритм работы счетчика основан на установке в нулевое состояние младших групп счетчика при достижении в текущей группе значения суммарного модуля МА.
Недостатком данного устройства является формирование последовательных двоичных наборов, которые не сохраняют количество единичных бит.
Наиболее близким устройством, того же назначения к заявленному изобретению по совокупности признаков, является принятый за прототип, генератор m-разрядных двоичных последовательностей с неубывающим числом единиц (описан в Устройстве для решения комбинаторных задач SU №1672466 А1, МПК G06F 15/20, заявлено 31.05.1989, опубликовано 23.08.1991, Бюл. №31 и в Устройстве для вычисления комбинаторных функций RU №2006934 С1, МПК G06F 15/20, заявлено 01.07.1991, опубликовано 30.01.1994), содержащий группу из m загрузочных триггеров с прямыми и инверсными выходами и начальной установкой в начальное состояние, треугольную матрицу (из m столбцов и m строк) разрядных триггеров с начальной установкой в нулевое состояние, группы элементов И и элементов ИЛИ, которые также образуют треугольные матрицы, и группу выходных элементов ИЛИ, объединяющие прямые выходы триггеров в разрядных столбцах треугольной матрицы.
Недостатком данного устройства являются большие аппаратные затраты и низкое быстродействие, что связано с последовательным формированием следующего состояния последовательности.
ЗАДАЧА ИЗОБРЕТЕНИЯ
Задачей изобретения является разработка аппаратных средств, которые сохраняют количество единиц в последовательных состояниях счетчика.
В задачах криптографии при формировании блочных шифров устройство предназначено для реализации операций рассеивания и перемешивания в наборах раундовых функций при одновременной параллельной обработке нескольких групп данных по различным графам переходов.
В комбинаторных задачах и задачах целочисленного линейного программирования устройство предназначено для генерации перестановок без повторов.
В задачах автоматизации физических экспериментов устройство предназначено для реализации блоков управления.
Техническим результатом изобретения является уменьшение аппаратных затрат, увеличение быстродействия устройства и расширение функциональных возможностей в части возможности сохранения заданного количества единиц в наборах последовательных состояний счетчика.
КРАТКОЕ ОПИСАНИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
Указанный технический результат при осуществлении изобретения достигается тем, что счетчик групповой структуры с сохранением количества единиц в группах содержит внешнюю входную N разрядную шину данных DI, внешнюю выходную N разрядную шину QO, группу из G групповых счетчиков 11, 12, …, 1G, первую группу из G элементов И 21, 22, …, 2G, группу из G элементов ИЛИ 31, 32, …, 3G, блок межгрупповых переносов 4, внешний вход синхронизации CLK, внешние входные G разрядные шины разрешения загрузки в группы EL, параллельного счета групп ЕР и последовательного счета групп ЕС, внешний выход переноса СО,
при этом каждый из групповых счетчиков 1i (где i=1, …, G) состоит (Ki) разрядов (где N=К1+К2+…+КG) и содержит (Ki) D-триггеров 51, 52, …, 5(Ki), формирователь переноса 6, группу из (Ki) формирователей кода с сохранением количества единиц 71, 72, …, 7(Ki), группу из (Ki) мультиплексоров MX 81, 82, …, 8(Ki), элемент ИЛИ 9 и внутреннюю (Ki) разрядную шину QT выходов триггеров,
а блок межгрупповых переносов 4 содержит вторую группу из (G-1) элементов И 101, 102,10(G-1),
причем внешний вход синхронизации CLK соединен с входами С синхронизации групповых счетчиков 11, 12, …, 1G, внешняя входная N разрядная шина данных DI группами по (Ki) разрядов соединена с информационными D-входами соответствующих одноименных групповых счетчиков 11, 12, …, 1G, разряды внешней входной G разрядной шины разрешения загрузки в группы EL соединены с соответствующими одноименными входами разрешения загрузки L групповых счетчиков 11, 12, …, 1G, разряды внешней входной G разрядной шины последовательного счета групп ЕС соединены со вторыми входами соответствующих одноименных элементов И из первой группы из G элементов И 21, 22, …, 2G, выходы которых соединены с первыми входами соответствующих одноименных элементов ИЛИ группы из G элементов ИЛИ 31, 32, …, 3G, вторые входы которых соединены с одноименными разрядами внешней входной G разрядной шины параллельного счета групп ЕР, выходы элементов ИЛИ группы из G элементов ИЛИ 31, 32, …, 3G соединены с входами СЕ разрешения работы одноименных групповых счетчиков 11, 12, …, 1G, у которых первые группы выходов Q по Ki разрядов являются соответствующими разрядами внешней выходной N разрядной шины QO, а вторые выходы переносов CR групповых счетчиков 11, 12, …, 1G соединены с одноименными входами блока межгрупповых переносов 4, у которого первые (G-1) выходов, начиная с первого выхода до (G-1) выхода, соединены с первыми входами соответствующих элементов И из первой группы из G элементов И, начиная со второго элемента И 22 до G-го элемента И 2G, а на первый вход первого элемента И 21 подана логическая единица, последний G-й выход блока межгрупповых переносов 4 является внешним выходом переноса СО,
кроме того в каждом из групповых счетчиков 1i синхровход С соединен с входами С синхронизации D-триггеров 51, 52, …, 5(Ki), (Ki) разрядов группы информационных D входов поразрядно соединены со вторыми входами одноименных (Ki) мультиплексоров MX 81, 82, …, 8(Ki), первые входы которых соединены с выходами одноименных (Ki) формирователей кода с сохранением количества единиц 71, 72, …, 7(Ki), а адресные S входы всех (Ki) мультиплексоров MX 81, 82, …, 8(Ki) соединены между собой, а также соединены с входом L разрешения загрузки группового счетчика 1i и соединены с первым входом элемента ИЛИ 9, второй вход которого соединен с входом СЕ разрешения работы группового счетчика 1i, а выход элемента ИЛИ 9 соединен с входами СЕ разрешения работы всех (Ki) D-триггеров 51, 52, …, 5(Ki), выходы (Ki) мультиплексоров MX 81, 82, …, 8(Ki) соединены с информационными D-входами одноименных (Ki) D-триггеров 51, 52, …, 5(Ki), выходы которых являются соответствующими (Ki) разрядами внутренней шины QT выходов триггеров, которая является первой (Ki) разрядной группой выходов Q группового счетчика 1i, а также соединена с группами входов всех (Ki) формирователей кода с сохранением количества единиц 71, 72, …, 7(Ki) и с группой входов формирователя переноса 6, выход которого является вторым выходом переноса CR группового счетчика 1i,
кроме того в блоке межгрупповых переносов 4 первый вход блока соединен с одноименным первым выходом блока межгрупповых переносов 4, а группа входов каждого j-го элемента И 10j, из второй группы из (G-1) элементов И 101, 102, …, 10(G-1) (где j=1, …, (G-1)), соединена соответственно с входами блока переносов 4 начиная с первого входа до (j+1)-го входа, при этом выходы второй группы элементов И 101, 102, …, 10(G-1) являются выходами блока межгрупповых переносов 4, начиная со второго выхода до G выхода.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
На фиг. 1 приведена схема предлагаемого счетчика групповой структуры с сохранением количества единиц в группах. На фиг. 2 приведена функциональная схема группового счетчика 1i разрядности Ki. На фиг. 3 приведены графы переходов для четырехразрядного счетчика Ki=4. В таблице 1 приведены переходы между состояниями для четырехразрядного группового счетчика Ki=4, функции возбуждения F1, F2, …, F(Ki) для D-триггеров разрядов и функция для формирования сигнала переноса CR.
На фиг. 1-3 и в тексте приняты следующие обозначения:
N - количество разрядов входных и выходных данных,
DI - внешняя входная N разрядная шина данных,
QO - внешняя выходная N разрядная шина,
EL - внешняя входная G разрядная шина разрешения загрузки в группы,
ЕР - внешняя входная G разрядная шина параллельного счета групп,
ЕС - внешняя входная G разрядная шина последовательного счета групп,
CLK - внешний вход синхронизации,
СО - внешний выход переноса,
G - количество групп,
U - количество единиц в группе,
СТ - групповой счетчик,
Т - триггер,
С - синхровходы счетчиков СТ и триггеров Т,
СЕ - входы разрешения работы,
D - информационные входы счетчиков и триггеров,
L - вход разрешения загрузки,
К1, К2, …, КG - разрядности групповых счетчиков,
Q - выходы группового счетчика,
QT - внутренняя (Ki) разрядная шина выходов триггеров,
CR - выход переноса группового счетчика,
MX - мультиплексор,
S - адресный вход мультиплексора,
F - формирователь,
i, j - счетные переменные,
11, 12, …, 1G - группа из G групповых счетчиков,
21, 22, …, 2G - первая группа из G элементов И,
31, 32, …, 3G - группа из G элементов ИЛИ,
4 - блок межгрупповых переносов,
51, 52, …, 5(Ki) - группа из (Ki) синхронных D-триггеров с входом СЕ разрешения работы группового счетчика 1i,
6 - формирователь переноса группового счетчика 1i,
71, 72, …, 7(Ki) - группа из (Ki) формирователей кода с сохранением количества единиц группового счетчика 1i,
81, 82, …, 8(Ki) - группа из (Ki) мультиплексоров MX группового счетчика 1i,
9 - элемент ИЛИ группового счетчика 1i,
101, 102, …, 10(G-1) - вторая группа из (G-1) элементов И блока межгрупповых переносов 4.
Счетчик групповой структуры с сохранением количества единиц в группах содержит внешнюю входную N разрядную шину данных DI, внешнюю выходную N разрядную шину QO, группу из G групповых счетчиков 11, 12, …, 1G, первую группу из G элементов И 21, 22, …, 2G, группу из G элементов ИЛИ 31, 32, …, 3G, блок межгрупповых переносов 4, внешний вход синхронизации CLK, внешние входные G разрядные шины разрешения загрузки в группы EL, параллельного счета групп ЕР и последовательного счета групп ЕС, внешний выход переноса СО.
Каждый из групповых счетчиков 1i (где i=1, …, G) состоит (Ki) разрядов (где N=К1+К2+…+КG) и содержит (Ki) D-триггеров 51, 52, …, 5(Ki), формирователь переноса 6, группу из (Ki) формирователей кода с сохранением количества единиц 71, 72, …, 7(Ki), группу из (Ki) мультиплексоров MX 81, 82, …, 8(Ki), элемент ИЛИ 9 и внутреннюю (Ki) разрядную шину QT выходов триггеров.
Блок межгрупповых переносов 4 содержит вторую группу из (G-1) элементов И 101, 102, …, 10(G-1).
Внешний вход синхронизации CLK соединен с входами С синхронизации групповых счетчиков 11, 12, …, 1G.
Внешняя входная N разрядная шина данных DI группами по (Ki) разрядов соединена с информационными D-входами соответствующих одноименных групповых счетчиков 11, 12, …, 1G. Разряды внешней входной G разрядной шины разрешения загрузки в группы EL соединены с соответствующими одноименными входами разрешения загрузки L групповых счетчиков 11, 12, …, 1G. Разряды внешней входной G разрядной шины последовательного счета групп ЕС соединены со вторыми входами соответствующих одноименных элементов И из первой группы из G элементов И 21, 22, …, 2G.
Выходы элементов И из первой группы из G элементов И 21, 22, …, 2G соединены с первыми входами соответствующих одноименных элементов ИЛИ группы из G элементов ИЛИ 31, 32, …, 3G, вторые входы которых соединены с одноименными разрядами внешней входной G разрядной шины параллельного счета групп ЕР. Выходы элементов ИЛИ группы из G элементов ИЛИ 31, 32, …, 3G соединены с входами СЕ разрешения работы одноименных групповых счетчиков 11, 12, …, 1G.
В групповых счетчиках 11, 12, …, 1G первые группы выходов Q по Ki разрядов являются соответствующими разрядами внешней выходной N разрядной шины QO, а вторые выходы переносов CR групповых счетчиков 11, 12, …, 1G соединены с одноименными входами блока межгрупповых переносов 4.
В блоке межгрупповых переносов 4 первые (G-1) выходов, начиная с первого выхода до (G-1) выхода, соединены с первыми входами соответствующих элементов И из первой группы из G элементов И, начиная со второго элемента И 22 до G-го элемента И 2G, а на первый вход первого элемента И 21 подана логическая единица. Последний G-й выход блока межгрупповых переносов 4 является внешним выходом переноса СО.
В каждом из групповых счетчиков 1i синхровход С соединен с входами С синхронизации D-триггеров 51, 52, …, 5(Ki). (Ki) разрядов группы информационных D входов поразрядно соединены со вторыми входами одноименных (Ki) мультиплексоров MX 81, 82, …, 8(Ki), первые входы которых соединены с выходами одноименных (Ki) формирователей кода с сохранением количества единиц 71, 72, …, 7(Ki).
Адресные S входы всех (Ki) мультиплексоров MX 81, 82, …, 8(Ki) соединены между собой, а также соединены с входом L разрешения загрузки группового счетчика 1i и соединены с первым входом элемента ИЛИ 9, второй вход которого соединен с входом СЕ разрешения работы группового счетчика 1i. Выход элемента ИЛИ 9 соединен с входами СЕ разрешения работы всех (Ki) D-триггеров 51, 52, …, 5(Ki).
Выходы (Ki) мультиплексоров MX 81, 82, …, 8(Ki), соединены с информационными D-входами одноименных (Ki) D-триггеров 51, 52, …, 5(Ki), выходы которых являются соответствующими (Ki) разрядами внутренней шины QT выходов триггеров, которая является первой (Ki) разрядной группой выходов Q группового счетчика 1i, а также соединена с группами входов всех (Ki) формирователей кода с сохранением количества единиц 71, 72, …, 7(Ki) и с группой входов формирователя переноса 6, выход которого является вторым выходом переноса CR группового счетчика 1i.
В блоке межгрупповых переносов 4 первый вход блока соединен с одноименным первым выходом блока межгрупповых переносов 4, а группа входов каждого j-го элемента И 10j, из второй группы из (G-1) элементов И 101, 102, …, 10(G-1) (где j=1, …, (G-1)), соединена соответственно с входами блока переносов 4 начиная с первого входа до (j+1)-го входа. При этом выходы второй группы элементов И 101, 102, …, 10(G-1) являются выходами блока межгрупповых переносов 4, начиная со второго выхода до G выхода.
Формирователь переноса группового счетчика 6 и группа из (Ki) формирователей кода 71, 72, …, 7(Ki) с сохранением количества единиц групповых счетчиков 11, 12, …, 1G предназначены для формирования сигнала переноса CR и функций возбуждения F1, F2, …, F(Ki) для D-входов разрядов триггеров 51, 52, …, 5(Ki). Формирователи 6 и 71, 72, …, 7(Ki) могут быть реализованы как логические функции с применением аппарата минимизации в заданном базисе или как генераторы логических функций в виде таблиц, в которые записываются значения из соответствующих таблиц переходов (табл. 1).
ПОДРОБНОЕ ОПИСАНИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
Принцип работы предлагаемого устройства состоит в следующем.
Предлагаемый счетчик групповой структуры с переменным модулем позволяет генерировать на внешних выходах QO счетчика N разрядные многовыходные кодовые комбинации, состоящие из G групп, в каждой из которых сохраняется заданное количество единиц Ui. При этом в устройстве можно задавать (программировать) для каждого группового счетчика 11, 12, …, 1G группы из G счетчиков заданное количества единиц Ui на внешней N разрядной входной шине данных DI в соответствующих Ki разрядах, где i=1, …, G, причем N=К1+К2+…+КG. При этом количество разрядов Ki в каждой группе можно задавать в диапазоне от 1 разряда до N разрядов (при одной группе - i=G=1), причем все состояния в каждом групповом счетчике 1i сохраняют заданное количество единиц Ui во всех состояниях. Состояния каждого группового счетчика 1i в соответствии с заданными графами состояний (фиг. 3) или таблицами переходов (табл. 1) реализуются блоками генераторов функций 71, 72, …, 7(Ki) для Ki разрядов. При достижении каждым групповым счетчиком 1i значения последнего состояния формируется единичный сигнал переноса CR (табл. 1).
Функциональная схема группового счетчика 1i приведена на фиг. 2, графы переходов для четырехразрядного счетчика Ki=4 приведены на фиг. 3, а в таблице 1 приведены переходы между состояниями, функции F1, F2, …, F(Ki) возбуждения для триггеров разрядов и функция для формирования сигнала переноса CR. Модуль (количество состояний) групповых счетчиков 1i определяется количеством сочетаний по U единиц из Ki разрядов (где ! - факториал). Для четырех разрядного счетчика Ki=4 количество сочетаний: при количестве единиц , при , при , при .
В устройстве реализуются следующие режимы работы.
Режим загрузки. В данном режиме заданные значения первых состояний с внешней шины данных DI поступают в соответствующие группы разрядов Ki групповых счетчиков 1i, которые при соответствующих сигналах загрузки ELi передаются на соответствующие триггеры 5 разрядов групповых счетчиков 1i, запись в которые осуществляется по синхросигналу CLK.
Режим параллельного счета. В данном режиме каждый групповой счетчик 1i осуществляет независимые переходы по синхросигналам CLK в соответствии с заданными графами (таблицами перехода). Данный режим работает при единичном значении всех сигналов загрузки ЕР1, ЕР2, …, EPG на внешней шине ЕР параллельного счета.
Режим раздельного счета групповых счетчиков 1i. В данном режиме отдельные групповые счетчики 1i осуществляют переходы при единичном значении соответствующего сигнала EPi на внешней шине ЕР параллельного счета.
Режим последовательного счета. В данном режиме для повышения быстродействия в блоке межгрупповых переносов 4 реализован ускоренный параллельный перенос сигналов CR между группами, за счет объединения сигналов переносов CR от предыдущих групповых счетчиков на элементах И второй группы 101, 102, …, 10(G-1) (фиг. 1). При формировании единичного значения на соответствующем элементе И 10 и при единичном значении управляющего сигнала в соответствующем разряде на внешней шине ЕС последовательного счета формируется единичное значение на выходе соответствующего элемента ИЛИ 3, по которому разрешается работа соответствующего группового счетчика 1. При достижении всеми групповыми счетчиками 11, 12, …, 1G последнего состояния формируется единичное значение на выходе последнего элемента И 10G-1, которое передается на внешний выход переноса СО.
Предлагаемый счетчик групповой структуры работает следующим образом.
Алгоритм работы счетчика заключается в следующем.
Перед началом работы, в режиме загрузки, на внешней входной N разрядной шине DI задаются начальные значения Ki разрядных кодов с заданным количеством единиц Ui для каждого группового счетчика 11, 12, …, 1G, а также единичные значения устанавливаются в разрядах внешней шины EL разрешения загрузки в группы, которые поступают соответственно на информационные D-входы и на входы L разрешения загрузки групповых счетчиков 11, 12, …, 1G. Далее начальные значения кодов через группу из (Ki) мультиплексоров MX 81, 82, …, 8(Ki), при единичном значении на адресных входах S, передаются на информационные входы D-триггеров 51, 52, …, 5(Ki). При этом также единичное значение устанавливается на выходах соответствующих элементов ИЛИ 9 групповых счетчиков 11, 12, …, 1G и по синхросигналу CLK осуществляется запись начальных кодов DI в группы из (Ki) синхронных D-триггеров 51, 52, …, 5(Ki).
В режиме параллельного счета всех групп устанавливаются единичные значения во всех разрядах внешней входной G разрядной шины ЕР, при этом также единичные значения устанавливаются на выходах группы из G элементов ИЛИ 31, 32, …, 3G, которые далее поступают на входы разрешения работы СЕ групповых счетчиков 11, 12, …, 1G, в которых передаются на выходы элементов ИЛИ 9 и поступают на входы разрешения работы СЕ групп из (Ki) синхронных D-триггеров. Одновременно группы из (Ki) формирователей кода 71, 72, …, 7(Ki) с сохранением количества единиц Ui групповых счетчиков 1i формируют коды функций F1, F2, …, F(Ki) следующих состояний, которые при нулевом значении на адресных входах S мультиплексоров MX 81, 82, …, 8(Ki) передаются на информационные входы D соответствующих групп триггеров 51, 52, …, 5(Ki), в которые проводится запись по синхросигналу CLK. Далее переходы в следующие состояния в групповых счетчиках 11, 12, …, 1G проводятся по следующим синхросигналам CLK. При достижении групповыми счетчиками 11, 12, …, 1G последнего состояния формирователями 6 формируются единичные значения переносов CRi, но данные сигналы не влияют на работу последующих групповых счетчиков 11, 12, …, 1G, так как у них на входах СЕ разрешения счета установлены единичные значения с выходов элементов группы ИЛИ 31, 32, …, 3G. В таблице переходов 1 для четырехразрядного группового счетчика в соответствии с графом переходов на фиг. 3 единичный сигнал переноса CR формируется на наборах: 0, 8, 12, 14, 15.
В режиме раздельного счета групповых счетчиков 11, 12, …, 1G единичные значения устанавливаются в соответствующих разрядах EPi внешней входной G разрядной шины ЕР. Далее счет осуществляется аналогично как в режиме параллельного счета только в заданных групповых счетчиках. При этом сигналы переносов CRi не поступают на входы разрешения СЕ групповых счетчиков, так как нулевые значения установлены во всех разрядах внешней входной G разрядной шины последовательного счета групп ЕС, которые поступают на входы первой группы из G элементов И 21, 22, …, 2G.
В режиме последовательного счета возможна реализация последовательного счета всех групповых счетчиков 11, 12, …, 1G или только задаваемых групп. Для этого нулевые значения устанавливаются во всех разрядах внешней входной G разрядной шины ЕР параллельного счета групп и единичные значения устанавливаются в соответствующих разрядах внешней входной G разрядной шины последовательного счета групп ЕС, которые поступают на вторые входы первой группы из G элементов И 21, 22, …, 2G. На первые входы первой группы из G элементов И 21, 22, …, 2G поступают значения переносов CR с предыдущих групповых счетчиков 1 и далее на входы разрешения СЕ следующих групповых счетчиков, счет в которых осуществляется при единичном значении переноса CR от предыдущего группового счетчика.
В режиме последовательного счета в блоке переносов 4 реализован ускоренный параллельный перенос сигналов CR между групповыми счетчиками 11, 12, …, 1G. Единичные значения переносов CR предыдущих групповых счетчиков 1 объединяются на соответствующих элементах И второй группы 10 и через соответствующие элементы И 2 и ИЛИ 3, при единичном значении соответствующего управляющего сигнала ЕС, поступают на вход СЕ разрешения работы соответствующего текущего группового счетчика 1. Выход последнего (G-1)-го элемента из второй группы элементов И 10G-1 является внешним выходом переноса СО счетчика.
Выходы Q групповых счетчиков 11, 12, …, 1G являются соответствующими группами К1, К2, …, КG выходов внешней выходной N разрядной шины QO.
Вышеизложенные сведения позволяют сделать вывод, что предлагаемый счетчик групповой структуры реализует генерацию многовыходных кодовых комбинаций с сохранением количества единиц в группе обладает регулярностью узлов и связей и соответствует заявляемому техническому результату - сокращение аппаратных затрат, повышение быстродействия и расширение функциональных возможностей в части возможности сохранения заданного количества единиц в наборах последовательных состояний счетчика.
Изобретение относится к области вычислительной техники. Технический результат - уменьшение аппаратных затрат, увеличение быстродействия и обеспечение возможности сохранения заданного количества единиц в наборах последовательных состояний счетчика. Он достигается за счет того, что счетчик групповой структуры с сохранением количества единиц в группах содержит внешнюю входную N разрядную шину данных DI, внешнюю выходную N разрядную шину QO, группу из G групповых счетчиков 11, 12, …, 1G, первую группу из G элементов И 21, 22, …, 2G, группу из G элементов ИЛИ 31, 32, …, 3G, блок межгрупповых переносов 4, внешний вход синхронизации CLK, внешние входные G разрядные шины разрешения загрузки в группы EL, параллельного счета групп ЕР и последовательного счета групп ЕС, внешний выход переноса СО. Каждый из групповых счетчиков 1i (где i=1, …, G) состоит из (Ki) разрядов (где N=K1+K2+…+KG) и содержит (Ki) D-триггеров 51, 52, …, 5(Ki), формирователь переноса 6, группу из (Ki) формирователей кода с сохранением количества единиц 71, 12, …, 7(Ki), группу из (Ki) мультиплексоров MX 81, 82, …, 8(Ki), элемент ИЛИ 9 и внутреннюю (Ki) разрядную шину QT выходов триггеров. 1 табл., 3 ил.
Счетчик групповой структуры с сохранением количества единиц в группах содержит;
внешнюю входную N разрядную шину данных DI, внешнюю выходную N разрядную шину QO, группу из G групповых счетчиков 11, 12, …, 1G, первую группу из G элементов И 21, 22, …, 2G, группу из G элементов ИЛИ 31, 32, …, 3G, блок межгрупповых переносов 4, внешний вход синхронизации CLK, внешние входные G разрядные шины разрешения загрузки в группы EL, параллельного счета групп ЕР и последовательного счета групп ЕС, внешний выход переноса СО,
при этом каждый из групповых счетчиков 1i (где i=1, …, G) состоит из (Ki) разрядов (где N=K1+K2+…+KG) и содержит (Ki) D-триггеров 51, 52, …, 5(Ki), формирователь переноса 6, группу из (Ki) формирователей кода с сохранением количества единиц 71, 72, …, 7(Ki), группу из (Ki) мультиплексоров MX 81, 82, …, 8(Ki), элемент ИЛИ 9 и внутреннюю (Ki) разрядную шину QT выходов триггеров,
а блок межгрупповых переносов 4 содержит вторую группу из (G-1) элементов И 101, 102, …, 10(G-1),
причем внешний вход синхронизации CLK соединен с входами С синхронизации групповых счетчиков 11, 12, …, 1G, внешняя входная N разрядная шина данных DI группами по (Ki) разрядов соединена с информационными D-входами соответствующих одноименных групповых счетчиков 11, 12, …, 1G, разряды внешней входной G разрядной шины разрешения загрузки в группы EL соединены с соответствующими одноименными входами разрешения загрузки L групповых счетчиков 11, 12, …, 1G, разряды внешней входной G разрядной шины последовательного счета групп ЕС соединены со вторыми входами соответствующих одноименных элементов И из первой группы из G элементов И 21, 22, …, 2G, выходы которых соединены с первыми входами соответствующих одноименных элементов ИЛИ группы из G элементов ИЛИ 31, 32, …, 3G, вторые входы которых соединены с одноименными разрядами внешней входной G разрядной шины параллельного счета групп ЕР, выходы элементов ИЛИ группы из G элементов ИЛИ 31, 32, …, 3G соединены с входами СЕ разрешения работы одноименных групповых счетчиков 11, 12, …, 1G, у которых первые группы выходов Q по Ki разрядов являются соответствующими разрядами внешней выходной N разрядной шины QO, а вторые выходы переносов CR групповых счетчиков 11, 12, …, 1G соединены с одноименными входами блока межгрупповых переносов 4, у которого первые (G-1) выходов, начиная с первого выхода до (G-1) выхода, соединены с первыми входами соответствующих элементов И из первой группы из G элементов И, начиная со второго элемента И 22 до G-го элемента И 2G, а на первый вход первого элемента И 21 подана логическая единица, последний G-й выход блока межгрупповых переносов 4 является внешним выходом переноса СО,
кроме того, в каждом из групповых счетчиков 1i синхровход С соединен с входами С синхронизации D-триггеров 51, 52, …, 5(Ki), (Ki) разрядов группы информационных D входов поразрядно соединены со вторыми входами одноименных (Ki) мультиплексоров MX 81, 82, …, 8(Ki), первые входы которых соединены с выходами одноименных (Ki) формирователей кода с сохранением количества единиц 71, 72, …, 7(Ki), а адресные S входы всех (Ki) мультиплексоров MX 81, 82, …, 8(Ki) соединены между собой, а также соединены с входом L разрешения загрузки группового счетчика 1i и соединены с первым входом элемента ИЛИ 9, второй вход которого соединен с входом СЕ разрешения работы группового счетчика 1i, а выход элемента ИЛИ 9 соединен с входами СЕ разрешения работы всех (Ki) D-триггеров 51, 52, …, 5(Ki), выходы (Ki) мультиплексоров MX 81, 82, …, 8(Ki) соединены с информационными D-входами одноименных (Ki) D-триггеров 51, 52, …, 5(Ki), выходы которых являются соответствующими (Ki) разрядами внутренней шины QT выходов триггеров, которая является первой (Ki) разрядной группой выходов Q группового счетчика 1i, а также соединена с группами входов всех (Ki) формирователей кода с сохранением количества единиц 71, 72, …, 7(Ki) и с группой входов формирователя переноса 6, выход которого является вторым выходом переноса CR группового счетчика 1i,
кроме того, в блоке межгрупповых переносов 4 первый вход блока соединен с одноименным первым выходом блока межгрупповых переносов 4, а группа входов каждого j-го элемента И 10j, из второй группы из (G-1) элементов И 101, 102, …, 10(G-1) (где j=1, (G-1)), соединена соответственно с входами блока переносов 4, начиная с первого входа до (j+1)-го входа, при этом выходы второй группы элементов И 101, 102, …, 10(G-1) являются выходами блока межгрупповых переносов 4, начиная со второго выхода до G выхода.
УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ КОМБИНАТОРНЫХ ФУНКЦИЙ | 1991 |
|
RU2006934C1 |
СЧЕТЧИК ГРУППОВОЙ СТРУКТУРЫ С ПЕРЕМЕННЫМ МОДУЛЕМ | 2016 |
|
RU2617329C1 |
Устройство для решения комбинаторных задач | 1989 |
|
SU1672466A1 |
US 9455717 B2, 27.09.2016. |
Авторы
Даты
2020-11-19—Публикация
2020-03-17—Подача