ОБЛАСТЬ ТЕХНИКИ
Изобретение относится к области вычислительной техники, в частности к устройствам обработки данных, и может быть использовано для построения функциональных узлов для анализа свойств генераторов псевдослучайных последовательностей двоичных чисел, для мониторинга, контроля и управления технологическими процессами.
Известно устройство для детектирования групп бит в бинарной последовательности количества (RU №2728957 С1, МПК G06F 7/74, H03K 21/00, заявлено 15.01.2020, опубликовано 03.08.2020, Бюл. №6) содержащее внешний вход данных DI, группу внешних выходов данных QO, группу внешних выходов количества групп QG, группу внешних выходов количества нулей QZ, группу внешних выходов количества единиц QU, группу внешних выходов «разность единиц и нулей» QZU, группы внешних выходов количества единиц в максимальной группе MU, количества нулей в максимальной группе MZ, номера группы максимальной группы единиц NGMU, номера группы максимальной группы нулей NGMZ, номера начала максимальной группы единичных бит NMU и номера начала максимальной группы нулевых бит NMZ, первый RS-триггер пуска-останова TSS 1, блок детектора единиц и нулей 2, третий D-триггер разрешения счета групп ТСЕ 7, третий элемент И 8, первый сумматор SMG 9, второй счетчик бит СВ 10, выходной буфер ОВ 11, четвертый 12, пятый 13 и шестой 14 элементы И, третий счетчик нулей CZ 15, четвертый счетчик единиц CU 16, пятый реверсивный счетчик нулей-единиц CZU 17 и блок преобразователя кода разности 18, первый счетчик CNB 22, первый регистр RNM 23, второй сумматор SNM 24, второй 25, третий 26, четвертый 27, пятый 28, шестой 29, седьмой 32 и восьмой 35 регистры, первый компаратор 30 сравнения количества единичных бит, седьмой элемент И 31, второй компаратор 33 сравнения количества нулевых бит, восьмой элемент И с одним инверсным входом 34, а также введены внешние флаги готовности результата FE, «Буфер заполнен» FF, «Буфер пуст» FZ и флаг «нулей больше единиц» F01.
Данное устройство осуществляет выявление максимальных групп единичных и нулевых бит и определение количества бит в максимальных группах, номеров групп и начала групп в бинарной последовательности. Недостатком данного устройства является отсутствие средств для вычисления кумулятивных сумм частичных подпоследовательностей.
Наиболее близким устройством того же назначения к заявленному изобретению по совокупности признаков является, принятое за прототип, устройство последовательного типа для детектирования групп нулевых и единичных бит и определение их количества (RU №2680759 С1, МПК G06F 7/74, заявлено 16.02.2018, опубликовано 26.02.2019, Бюл. №6), в котором для входных последовательностей данных размерностью N, поступающих на внешний вход данных DI, на соответствующих внешних выходах групп устройства формируются двоичные коды, соответствующие количеству групп QG, количеству нулевых бит QZ, количеству единичных бит QU, разности между количеством единичных и нулевых бит QZU, количество бит по группам QO с выходного буфера ОВ, при этом в четных адресах, начиная с нулевого адреса, указывается количество нулевых бит в группах, а в нечетных адресах, начиная с первого адреса, указывается количество единичных бит в группах, а также формируются флаг готовности FE, флаг «нулей больше единиц» F01, флаг «Буфер заполнен» FF и флаг «Буфер пуст» FZ.
Данное устройство выявляет группы единичных и нулевых бит, определяет общее количество и по группам единичных и нулевых бит, вычисляет разность между количеством единичных и нулевых бит во входной последовательности данных размерностью N. Недостатком данного устройства является вычисление общих сумм единичных и нулевых бит, и разности между ними, и отсутствие средств для вычисления кумулятивных сумм частичных подпоследовательностей.
ЗАДАЧА ИЗОБРЕТЕНИЯ
Задачей изобретения является разработка аппаратных средств для исследования свойств генераторов псевдослучайных последовательностей двоичных чисел, а также для систем принятия решений.
При анализе генераторов псевдослучайных последовательностей двоичных чисел устройство предназначено для вычисления кумулятивных сумм частичных подпоследовательностей и определения циклов отклонений от нуля.
В задачах принятия решений кумулятивные суммы используются для мониторинга, контроля, управления и ретроспективного анализа. При оценке технологических операций, параметров процессов и характеристик продукции входные данные представляются как последовательные количественные данные, измеряемые непрерывной шкалой или неколичественные данные вида «да»/«нет», «хорошо »/«плохо», «успех»/«отказ» или статистику.
Техническим результатом изобретения является обеспечение возможности вычисления кумулятивных сумм, детектирование и подсчет циклов отклонения сумм от нуля, а также определение соотношения между количеством единичных и нулевых бит во входной последовательности.
КРАТКОЕ ОПИСАНИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
Указанный технический результат при осуществлении изобретения достигается тем, что устройство для вычисления кумулятивных сумм в двоичной последовательности содержит внешний вход данных ID, группы внешних выходов количества циклов QC и параметров цикла QB, первый RS-триггер пуска-останова TSS 1, второй триггер задержки TZ 2, элемент И 3, элемент ИЛИ 4, первый реверсивный счетчик бит СТВ 5, элемент ИЛИ-НЕ 6, регистр флагов RF 7, третий триггер первого бита цикла TRB 8, второй счетчик количества циклов СТС 9, третий счетчик интервала CTI 10 и выходной буфер ОВ11,
а также введены внешние входы тактового сигнала IC, пуска устройства START и остановки устройства STOP, внутренние флаг F0 нулевого состояния счетчика бит СТВ, флаг FE конца цикла и флаг FW записи, внешняя шина управления обменом ЕО, внешние флаг FF «Буфер заполнен», флаг FZ «Буфер пуст» FZ, флаг FEQ «равенства нулевых и единичных бит» и флаг FG1 «единиц больше нулей»,
причем внешний тактовый вход устройства 1С соединен с входами синхронизации С первого RS-триггера пуска-останова TSS 1, второго триггера задержки TZ 2, первого реверсивного счетчика бит СТВ 5, регистра флагов RF 7, третьего триггера первого бита цикла TRB 8, второго счетчика количества циклов СТС 9, третьего счетчика интервала CTI 10 и выходного буфера OB 11,
внешний вход пуска устройства START соединен с входом S синхронной установки в единичное состояние первого RS-триггера пуска-останова TSS 1,
внешний вход остановки устройства STOP соединен с входами R синхронной установки в нулевое состояние первого RS-триггера пуска-останова TSS 1 и второго триггера задержки TZ 2, а также соединен со вторым входом элемента ИЛИ 4 и с входом СЕ разрешения работы регистра флагов RF 7,
причем прямой выход первого RS-триггера пуска-останова TSS 1 соединен с входами СЕ разрешения работы первого реверсивного счетчика бит СТВ 5 и третьего счетчика CTI 10, а также соединен со вторым входом элемента И 3 и с входом S синхронной установки в единичное состояние второго триггера задержки TZ 2, выход которого соединен с первым входом элемента И 3, выход которого является внутренним флагом FE конца цикла и соединен с первым входом элемента ИЛИ 4, выход которого является внутренним флагом FW записи и соединен с входами СЕ разрешения работы второго счетчика количества циклов СТС 9 и выходного буфера OB 11, а также соединен с входом L разрешения записи третьего счетчика интервала CTI 10,
внешний вход данных ID соединен с входом UP направления счета первого реверсивного счетчика бит СТВ 5 и с D-входом третьего триггера первого бита цикла TRB 8, выход которого соединен со вторым D-входом регистра флагов RF 7 и с первым D-входом выходного буфера OB 11,
кроме того, группа выходов первого реверсивного счетчика бит СТВ 5 соединена с соответствующими входами элемента ИЛИ-НЕ 6, выход которого является внутренним флагом F0 нулевого состояния счетчика бит СТВ и соединен с третьим входом элемента И 3, с первым D-входом регистра флагов RF 7 и с входом СЕ разрешения работы третьего триггера первого бита цикла TRB 8,
причем набор двоичного кода «1» задан на группу D-входов третьего счетчика интервала CTI 10, группа выходов которого соединена со второй группой D-входов выходного буфера ОВ 11, который также подключен к внешней шине ЕО управления обменом, а соответствующие выходы выходного буфера ОВ 11 являются группой внешних выходов параметров цикла ОВ и внешними флагами «Буфер заполнен» FF и «Буфер пуст» FZ,
кроме того, выходы регистра флагов RF 7 являются внешними флагами соответственно «равенства нулевых и единичных бит» FEQ и «единиц больше нулей» FG1, а группа выходов второго счетчика СТС 9 является группой внешних выходов количества циклов ОС.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
На фиг.1 приведена схема предлагаемого устройства.
На фиг.2 приведен график отклонений кумулятивных сумм.
На фиг.3 приведена временная диаграмма работы устройства.
На фиг.1-3 и в тексте приняты следующие обозначения:
AND - элемент И,
BUF - буфер с дисциплиной обслуживания FIFO,
С - тактовый вход,
СЕ - вход разрешения работы,
СТ - счетчик,
СТВ - реверсивный счетчик бит,
СТС - счетчик количества циклов,
CTI - счетчик интервала,
D - информационные входы,
ЕО - внешняя шина управления обменом,
F0 - внутренний флаг нулевого состояния счетчика бит СТВ,
FE - внутренний флаг конца цикла,
FW - внутренний флаг записи,
FEQ - внешний флаг «равенства нулевых и единичных бит»,
FG1 - внешний флаг «единиц больше нулей»,
FF - внешний флаг «Буфер заполнен»,
FZ - внешний флаг «Буфер пуст»,
ID - внешний вход данных,
IC - внешний тактовый вход,
L - вход разрешения записи,
N - размерность (длина) входной последовательности данных,
NOR - элемент ИЛИ-НЕ,
ОВ - выходной буфер,
QB - группа внешних выходов параметров цикла,
QC - группа внешних выходов количества циклов,
OR - элемент ИЛИ,
RG - регистр,
RF - регистр флагов,
R - вход синхронной установки в нулевое состояние,
S - вход синхронной установки в единичное состояние,
START - внешний вход пуска,
STOP - внешний вход останова,
Т - триггер,
TRB - триггер первого бита цикла,
TSS - триггер пуска-останова,
TZ - триггер задержки старта,
UP - вход направления счета,
1 - первый RS-триггер пуска-останова TSS,
2 - второй триггер задержки TZ,
3 -элемент И (AND),
4 - элемент ИЛИ (OR),
5 - первый реверсивный счетчик бит СТВ,
6 - элемент ИЛИ-НЕ (NOR),
7 - регистр флагов RF,
8 - третий триггер первого бита цикла TRB,
9 - второй счетчик количества циклов СТС,
10 - третий счетчик интервала CTI,
11 - выходной буфер ОВ.
Предлагаемое устройство содержит внешний вход данных ID, группы внешних выходов количества циклов QC и параметров цикла QB, первый RS-триггер пуска-останова TSS 1, второй триггер задержки TZ 2, элемент И 3, элемент ИЛИ 4, первый реверсивный счетчик бит СТВ 5, элемент ИЛИ-НЕ 6, регистр флагов RF 7, третий триггер первого бита цикла TRB 8, второй счетчик количества циклов СТС 9, третий счетчик интервала CTI 10 и выходной буфер ОВ 11.
В предлагаемое устройство также введены внешние входы тактового сигнала 1С, пуска устройства START и остановки устройства STOP, внутренние флаг F0 нулевого состояния счетчика бит СТВ, флаг FE конца цикла и флаг FW записи, внешняя шина управления обменом ЕО, внешние флаг FF «Буфер заполнен», флаг FZ «Буфер пуст» FZ, флаг FEQ «равенства нулевых и единичных бит» и флаг FG1 «единиц больше нулей».
Первый реверсивный счетчик бит СТВ 5 предназначен для вычислений текущих кумулятивных сумм последовательности. Второй счетчик количества циклов СТС 9 осуществляет общее количество циклов. Третий счетчик интервала CTI 10 осуществляет счет количества бит а цикле - определяет размерность цикла. Третий триггер TRB 8 предназначен для фиксации значения первого бита цикла, а регистр флагов RF 7 для фиксации флагов FEQ «равенства нулевых и единичных бит» и FG1 «единиц больше нулей» - соотношения между количеством единичных и нулевых бит во входной последовательности.
Внешний тактовый вход устройства IC соединен с входами синхронизации С первого RS-триггера пуска-останова TSS 1, второго триггера задержки TZ 2, первого реверсивного счетчика бит СТВ 5, регистра флагов RF 7, третьего триггера первого бита цикла TRB 8, второго счетчика количества циклов СТС 9, третьего счетчика интервала CTI 10 и выходного буфера ОВ 11.
Внешний вход пуска устройства START соединен с входом S синхронной установки в единичное состояние первого RS-триггера пуска-останова TSS 1.
Внешний вход остановки устройства STOP соединен с входами R синхронной установки в нулевое состояние первого RS-триггера пуска-останова TSS 1 и второго триггера задержки TZ 2, а также соединен со вторым входом элемента ИЛИ 4 и с входом СЕ разрешения работы регистра флагов RF 7.
Первый RS-триггер пуска-останова TSS 1 предназначен для выделения цикла работы предлагаемого устройства, между сигналами START и STOP, для входной последовательности данных ID размерности N. Причем прямой выход первого RS-триггера пуска-останова TSS 1 соединен с входами СЕ разрешения работы первого реверсивного счетчика бит СТВ 5 и третьего счетчика CTI 10, а также соединен со вторым входом элемента И 3 и с входом S синхронной установки в единичное состояние второго триггера задержки TZ 2, выход которого соединен с первым входом элемента И 3.
Выход второго триггера задержки TZ 2 является внутренним флагом FE конца цикла и соединен с первым входом элемента ИЛИ 4, выход которого является внутренним флагом FW записи и соединен с входами СЕ разрешения работы второго счетчика количества циклов СТС 9 и выходного буфера ОВ 11, а также соединен с входом L разрешения записи третьего счетчика интервала CTI 10.
Внешний вход данных ID соединен с входом UP направления счета первого реверсивного счетчика бит СТВ 5 и с D-входом третьего триггера первого бита цикла TRB 8, выход которого соединен со вторым D-входом регистра флагов RF 7 и с первым D-входом выходного буфера ОВ 11.
Группа выходов первого реверсивного счетчика бит СТВ 5 соединена с соответствующими входами элемента ИЛИ-НЕ 6, выход которого является внутренним флагом F0 нулевого состояния счетчика бит СТВ и соединен с третьим входом элемента И 3, с первым D-входом регистра флагов RF 7 и с входом СЕ разрешения работы третьего триггера первого бита цикла TRB 8.
Набор двоичного кода «1» задан на группу D-входов третьего счетчика интервала CTI 10, группа выходов которого соединена со второй группой D-входов выходного буфера ОВ 11, который также подключен к внешней шине ЕО управления обменом, а соответствующие выходы выходного буфера ОВ 11 являются группой внешних выходов параметров цикла ОВ и внешними флагами «Буфер заполнен» FF и «Буфер пуст» FZ,
Выходы регистра флагов RF 7 являются внешними флагами соответственно «равенства нулевых и единичных бит» FEQ и «единиц больше нулей» FG1, а группа выходов второго счетчика СТС 9 является группой внешних выходов количества циклов QC.
ПОДРОБНОЕ ОПИСАНИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
Принцип работы предлагаемого устройства состоит в следующем.
Предлагаемое устройство позволяет определять кумулятивные суммы подпоследовательностей (циклов) во входной N-разрядной двоичной последовательности. Кумулятивные суммы считаются для нормализованной последовательности, в которой нулевой бит исходной последовательности принимается за «-1», а каждый единичный бит - за «+1». На каждом такте вычисляется сумма всех предыдущих бит и определяется
отклонение текущей суммы от нуля. Количество бит между нулевыми значениями сумм делит входную N-разрядную последовательность на подпоследовательности (циклы). При этом в каждом цикле количество единичных бит равно количеству нулевых бит, кроме последнего цикла, на основании которого определяется общее соотношение между количеством единичных и нулевых бит во входной последовательности.
На фиг.2 приведен пример вычисления кумулятивных сумм для входной N=18 разрядной последовательности. Точки (биты) пересечения горизонтальной оси (когда текущая сумма равна нулю) делят последовательность на циклы. На графике на фиг.2 входная N=18 разрядная последовательность делится на четыре цикла. В предлагаемом устройстве проводится выявление циклов и определяется их размерность - количество бит в цикле. Кроме того, на третьем триггере TRB 8 фиксируется значение первого бита в цикле, который указывает на направление (наклон) пересечения горизонтальной оси (нулевая сумма) - при единичном бите TRB=1 цикл размещается в положительной области графика, а при нулевом TRB=0 - в отрицательной области.
В предлагаемом устройстве вычисление кумулятивной суммы осуществляется на первом реверсивном счетчике бит СТВ 5, счет числа бит в цикле осуществляется на третьем счетчике интервала CTI 10, а счет числа циклов осуществляется на втором счетчике СТС 9. Флаг F0 нулевого состояния первого реверсивного счетчика бит СТВ 5 (когда значение кумулятивной суммы равно нулю) формируется на выходе элемента ИЛИ-НЕ (NOR) 6. Значения числа бит в цикле с выхода счетчика интервала CTI 10 и с триггера первого бита в цикле TRB 8 последовательно записываются в выходной буфер ОВ 11 при единичном значении флага записи FW=1.
На внешний вход данных ID последовательно разряд за разрядом поступают биты входной последовательности данных размерностью N, которые далее передаются на вход UP направления счета первого счетчика бит СТВ 5. При единичном значении бита ID=1 осуществляется увеличение (инкремент, суммирование - UP=1) значения счетчика, а при нулевом значении бита ID=0 - уменьшение (декремент, вычитание - UP=0).
Перед началом работы в начальное нулевое состояние устанавливаются триггеры и счетчики, а также устанавливается начальный нулевой адрес в выходном буфере ОВ 11.
Устройство начинает работать после подачи единичного сигнала пуска START=1, по которому в единичное состояние устанавливается первый RS-триггер 1 пуска-останова TSS=1 и далее на втором такте устанавливается в единичное состояние второй триггер 2 TZ=1, на котором осуществляется задержка сигнала START=1 на один такт, для запрета на втором такте формирования внутреннего флага записи FW, запрещая работу счетчиков интервала CTI10 и количества циклов СТС 9 и запрет записи в выходной буфер ОВ 11.
На внешний вход данных ID биты начинают поступать на втором такте, после сигнала START=1, и далее поступают в каждом такте 1С.Данные с входа ID поступают на вход направления счета UP счетчика бит СТВ 5 и на D-вход триггера первого бита в цикле TRB 6. На следующих тактах осуществляется реверсивный счет на первом счетчике бит СТВ 5, в зависимости от значения входного бита ID, и счет бит на счетчике интервала CTI 10. После ввода последнего N-го разряда входного двоичного числа на следующем такте задается единичный сигнал остановки STOP=l.
При формировании единичного значения флага F0=1 нулевого состояния первого реверсивного счетчике бит СТВ 5 и единичных состояниях первого TSS=1 и второго TZ=1 триггеров формируется единичное значение флага записи FW=1 на выходе элемента И 3. При этом в счетчике интервала CTI 10 будет установлено значение количества бит в текущем цикле (интервале). По флагу записи FW=1 проводится увеличение (счет) циклов на втором счетчике СТС 9 и запись в выходной буфер ОВ 11 - значений с выхода счетчика интервала CTI 10 и триггера первого бита в цикле TRB 8. Одновременно по единичному значению флага записи FW=1 осуществляется загрузка кода «1» в третий счетчик интервала CTI10.
На следующих тактах осуществляется детектирование следующих циклов во входной последовательности и при их выявлении выполняется запись размерности циклов со счетчика интервала CTI10 и первого бита в цикле с триггера TRB 8 в выходной буфер ОВ 11. Если в последнем цикле кумулятивная сумма не равна нулю (количество единиц не равно количеству нулей), при этом установлено нулевое значение флага F0=0, то формирование единичного значения флага записи FW=1 на выходе элемента ИЛИ 4 осуществляется по единичному сигналу остановки STOP=l, по которому осуществляется запись в выходной буфер ОВ 11 значений для последнего цикла.
Кроме того, в устройстве осуществляется оценка соотношения между количеством единичных бит и количеством нулевых бит. Для этого в последнем цикле входной последовательности анализируются значения флага F0 нулевого состояния первого реверсивного счетчике бит СТВ 5 и третьего триггера первого бита в цикле TRB 6, которые по единичному сигналу остановки STOP=l записываются в регистр флага RF 7 и формируются соответствующие внешние флаги устройства - флаг FEQ «равенства нулевых и единичных бит» и флаг FG1 «единиц больше нулей». Соотношения между количеством единичных и нулевых бит, в зависимости от установленных флагов, следующие:
Предлагаемое устройство работает следующим образом.
На фиг.2 приведен график отклонений от нуля вычисляемых кумулятивных сумм для входной N=18 разрядной последовательности. На фиг.3 приведена временная диаграмма устройства.
Перед началом работы в начальное нулевое состояние устанавливаются - триггеры TSS 1, TZ 2 и TRB 8, счетчики СТВ 5, СТС 9 и CTI10, регистр RF 7, а также устанавливается начальный нулевой адрес в выходном буфере ОВ 11. При этом формируется единичное значение флага F0=1 нулевого состояния счетчика бит СТВ 5 на выходе элемента ИЛИ-НЕ 6.
Работа устройства для каждой входной последовательности начинается после подачи единичного сигнала START=1. При этом по фронту тактового сигнала 1С (такт 2 на фиг.2) в единичное состояние устанавливается первый RS-триггер 1 пуска-останова TSS=1, по которому на следующих тактах 1С разрешается работа реверсивного счетчика бит СТВ 5 и счетчика интервала CTI 10. В такте 3 в единичное состояние переключается второй 2 триггер задержки TZ=1, по которому на следующих тактах 1С разрешается формирование внутреннего флага конца цикла FE.
В такте 3 при единичном значении ID=1 (фиг.3) с входа данных, первого бита входной последовательности заданное в такте 2, осуществляется увеличение на единицу счетчиков бит СТВ=1 и интервала СТ1=1. Одновременно в такте 3, так как было установлено единичное значение флага F0=T нулевого состояния счетчика бит СТВ, при значении ID=1 также в единичное состояние устанавливается третий триггер 8 первого бита цикла TRB=1.
Далее в такте 4 при единичном значении ID=1, для второго входного бита, также осуществляется счет и в счетчиках устанавливаются коды: СТВ=2 и СТ1=2. При этом запрещен прием в третий триггер TRB 8, так как в такте 3 при значении счетчика СТВ=1 установился нулевой флаг F0=0 (такт 3). На графике фиг.2 для второго бита отмечено отклонение кумулятивной суммы на+2.
В такте 4 также поступает нулевое значение ID=0 третьего бита входной последовательности, по которому в такте 5 осуществляется вычитание (декремент) в счетчике бит СТВ=1 и увеличение счетчика интервала СТ1=3. Аналогично для четвертого бита задается нулевое значение ID=0, по которому в такте 6 устанавливаются коды: СТВ=0 и СТ1=4. Одновременно при нулевом состоянии счетчика бит СТВ=0 на выходе элемента ИЛИ-НЕ 6 формируется единичное значение внутреннего флага F0=1, которое соответствует нулевой текущей кумулятивной сумме - выявлен первый цикл размерностью четыре бита, значение которого установлено на счетчике 10 интервала СТ1=4.
Поэтому далее формируется единичный флаг конца цикла FE=1, по которому далее формируется единичный флаг записи FW=1, по которому разрешается работа выходного буфера ОВ 11, в который в такте 7 по нулевому адресу записывается код ОВ(0)=1_4 - единичное значение первого бита цикла с триггера TRB=1 и значение кода с выхода счетчика интервала СТ1=4. Одновременно по флагу FW=1 осуществляется увеличение кода в счетчике циклов СТС=1.
Одновременно в такте 6 поступает нулевое значение Ю=0 пятого бита входной последовательности, по которому в такте 7 осуществляется вычитание (декремент) в счетчике бит CTB=F (код 1111 для четырехразрядного счетчика или -1) и в нулевое состояние устанавливается третий триггер 8 первого бита цикла TRB=0, так как в такте 6 было установлено единичное значение флага F0=1.
Единичное значение флага F0=1 также поступает на вход L разрешения записи в счетчик интервала CTI, по которому в такте 7 осуществляется загрузка кода «1» в счетчик интервалов СТ1=1. На графике фиг.2 для пятого бита отмечено отклонение кумулятивной суммы на-1.
В такте 8 по входному единичному значению ID=1 для шестого бита входной последовательности осуществляется счет в счетчике интервала СТ1=2 и инкремент в счетчике бит СТВ 5 и устанавливается нулевое состояние СТВ=0 - нулевая кумулятивная сумма, т.е. выявлен второй цикл размерностью два бита и первый бит цикла нулевой TRB=0. Данные значения в такте 9 записываются в выходной буфер ОВ 11 по первому адресу ОВ(1)=0_2, а также увеличивается счетчик количества циклов СТС=2.
Следующий цикл выявлен на такте 12 для входных данных ID=0011 (седьмого -десятого входных бит) для которых в такте 13 в выходной буфер ОВ 11 по второму адресу записываются коды ОВ(2)=0_4 и увеличивается счетчик количества циклов СТС=3.
Далее для следующих восьми входных бит, с одиннадцатого до восемнадцатого бита, на внешний вход данных ID в тактах 12-19 последовательно поступает код ID=11011010. Отклонения кумулятивной суммы от нуля приведены в положительной области графика на фиг.2. Аналогично приведенному выше алгоритму осуществляется работа триггера первого бита цикла TRB 8 и счетчиков СТВ и CTI. Поэтому в такте 20 устанавливаются коды - TRB=1, СТВ=2 и СТ1=8, а также сформировано нулевое значение флага F0=0.
Одновременно в такте 20 поступает единичный сигнал останова STOP=1, по которому в нулевое состояние переключается RS-триггер 1 пуска-останова TSS=0 и второй 2 триггер задержки TZ=0. Кроме того, по единичному сигналу STOP=1 формируется единичный флаг записи FW=1, по которому разрешается работа выходного буфера ОВ 11, в который в такте 21 по третьему адресу записывается код ОВ(3)=1_8 - единичное значение для первого бита четвертого цикла с триггера TRB=1 и значение кода с выхода счетчика интервала СТ1=8. При этом четвертый цикл кумулятивных сумм не пересекает нулевое значение - общая сумма для N=18 разрядной входной последовательности равна значению 2. Одновременно по флагу FW=1 осуществляется увеличение кода в счетчике циклов СТС=4. Одновременно по единичному сигналу STOP=1 разрешается запись в регистр флагов RF 7 соответствующих значений флага нулевого состояния F0=0 и с выхода триггера первого бита цикла TRB=1. Поэтому формируются внешние флаги: нулевое значение флага равенства нулевых и единичных бит FEQ=0 и единичное значение флага «единиц больше нулей» FG1=1.
Таким образом, для входной N=18 разрядной входной последовательности данных, содержащей десять единичных бит и восемь нулевых бит, приведенной на фиг.2-3, выявлено четыре цикла QC=4, для которых соответствующие значения первых бит цикла и размерности циклов записаны в выходной буфер по четырем адресам ОВ(0), ОВ(3), определено соотношение - количество единиц (10) больше количества нулей (8), поэтому сформированы значения внешних флагов FEQ=0 и FG1=1.
Считывание результатов на группу внешних выходов параметров цикла QB из выходного буфера ОВ 11 выполняется под управлением по внешней шине управления обменом ЕО. При реализации выходного буфера ОВ 11 в виде двухпортовой памяти FIFO, обмен можно выполнять в процессе вычисления кумулятивных сумм с учетом значений соответствующих флагов «Буфер пуст» FZ и «Буфер заполнен» FF.
Предлагаемое устройство может быть применено для аппаратной реализации статистических тестов разработанных лабораторией информационных технологий Национального института стандартов и технологий (NIST, США), целью которых является определение меры случайности двоичных последовательностей порожденных генераторами случайных чисел. В частности предлагаемое устройство реализует тесты кумулятивных сумм и произвольных отклонений, в которых определяется сумма нормализованной последовательности и подсчет циклов, а также частотный побитовый тест, который заключается в определении соотношения между нулями и единицами во всей двоичной последовательности.
Вышеизложенные сведения позволяют сделать вывод, что предлагаемое устройство решает поставленную задачу и соответствует заявляемому техническому результату - реализация возможности вычисления кумулятивных сумм, детектирование и подсчет циклов отклонения сумм от нуля, а также определение соотношения между количеством единичных и нулевых бит во входной последовательности.
Изобретение относится к области вычислительной техники, в частности к устройствам обработки данных. Технический результат заключается в обеспечении возможности вычисления кумулятивных сумм, детектировании и подсчете циклов отклонения сумм от нуля, а также определении соотношения между количеством единичных и нулевых бит во входной последовательности. Технический результат достигается за счет того, что устройство содержит внешний вход данных, группы внешних выходов количества циклов и параметров цикла, первый RS-триггер пуска-останова, второй триггер задержки, элемент И, элемент ИЛИ, первый реверсивный счетчик бит, элемент ИЛИ-НЕ, регистр флагов, третий триггер первого бита цикла, второй счетчик количества циклов, третий счетчик интервала и выходной буфер, а также введены внешние входы тактового сигнала, пуска устройства START и остановки устройства STOP, внутренние флаг нулевого состояния счетчика бит, флаг конца цикла и флаг записи, внешняя шина управления обменом, внешние флаг «Буфер заполнен», флаг «Буфер пуст», флаг «равенства нулевых и единичных бит» и флаг «единиц больше нулей». 3 ил.
Устройство для вычисления кумулятивных сумм в двоичной последовательности содержит внешний вход данных ID, группы внешних выходов количества циклов QC и параметров цикла QB, первый RS-триггер пуска-останова TSS 1, второй триггер задержки TZ 2, элемент И 3, элемент ИЛИ 4, первый реверсивный счетчик бит СТВ 5, элемент ИЛИ-НЕ 6, регистр флагов RF 7, третий триггер первого бита цикла TRB 8, второй счетчик количества циклов СТС 9, третий счетчик интервала CTI 10 и выходной буфер ОВ 11,
а также введены внешние входы тактового сигнала IC, пуска устройства START и остановки устройства STOP, внутренние флаг F0 нулевого состояния счетчика бит СТВ, флаг FE конца цикла и флаг FW записи, внешняя шина управления обменом ЕО, внешние флаг FF «Буфер заполнен», флаг FZ «Буфер пуст» FZ, флаг FEQ «равенства нулевых и единичных бит» и флаг FG1 «единиц больше нулей»,
причем внешний тактовый вход устройства 1С соединен с входами синхронизации С первого RS-триггера пуска-останова TSS 1, второго триггера задержки TZ 2, первого реверсивного счетчика бит СТВ 5, регистра флагов RF 7, третьего триггера первого бита цикла TRB 8, второго счетчика количества циклов СТС 9, третьего счетчика интервала CTI 10 и выходного буфера OB 11,
внешний вход пуска устройства START соединен с входом S синхронной установки в единичное состояние первого RS-триггера пуска-останова TSS 1,
внешний вход остановки устройства STOP соединен с входами R синхронной установки в нулевое состояние первого RS-триггера пуска-останова TSS 1 и второго триггера задержки TZ 2, а также соединен со вторым входом элемента ИЛИ 4 и с входом СЕ разрешения работы регистра флагов RF 7,
причем прямой выход первого RS-триггера пуска-останова TSS 1 соединен с входами СЕ разрешения работы первого реверсивного счетчика бит СТВ 5 и третьего счетчика CTI 10, а также соединен со вторым входом элемента И 3 и с входом S синхронной установки в единичное состояние второго триггера задержки TZ 2, выход которого соединен с первым входом элемента И 3, выход которого является внутренним флагом FE конца цикла и соединен с первым входом элемента ИЛИ 4, выход которого является внутренним флагом FW записи и соединен с входами СЕ разрешения работы второго счетчика количества циклов СТС 9 и выходного буфера OB 11, а также соединен с входом L разрешения записи третьего счетчика интервала CTI 10,
внешний вход данных ID соединен с входом UP направления счета первого реверсивного счетчика бит СТВ 5 и с D-входом третьего триггера первого бита цикла TRB 8, выход которого соединен со вторым D-входом регистра флагов RF 7 и с первым D-входом выходного буфера ОВ 11,
кроме того, группа выходов первого реверсивного счетчика бит СТВ 5 соединена с соответствующими входами элемента ИЛИ-НЕ 6, выход которого является внутренним флагом F0 нулевого состояния счетчика бит СТВ и соединен с третьим входом элемента И 3, с первым D-входом регистра флагов RF 7 и с входом СЕ разрешения работы третьего триггера первого бита цикла TRB 8,
причем набор двоичного кода «1» задан на группу D-входов третьего счетчика интервала CTI 10, группа выходов которого соединена со второй группой D-входов выходного буфера ОВ 11, который также подключен к внешней шине ЕО управления обменом, а соответствующие выходы выходного буфера ОВ 11 являются группой внешних выходов параметров цикла QB и внешними флагами «Буфер заполнен» FF и «Буфер пуст» FZ,
кроме того, выходы регистра флагов RF 7 являются внешними флагами соответственно «равенства нулевых и единичных бит» FEQ и «единиц больше нулей» FG1, а группа выходов второго счетчика СТС 9 является группой внешних выходов количества циклов QC.
УСТРОЙСТВО ПОСЛЕДОВАТЕЛЬНОГО ТИПА ДЛЯ ДЕТЕКТИРОВАНИЯ ГРУПП НУЛЕВЫХ И ЕДИНИЧНЫХ БИТ И ОПРЕДЕЛЕНИЕ ИХ КОЛИЧЕСТВА | 2018 |
|
RU2680759C1 |
УСТРОЙСТВО ДЛЯ ДЕТЕКТИРОВАНИЯ ГРУПП БИТ В БИНАРНОЙ ПОСЛЕДОВАТЕЛЬНОСТИ | 2020 |
|
RU2728957C1 |
СЧЕТЧИК С СОХРАНЕНИЕМ КОЛИЧЕСТВА ЕДИНИЦ | 2020 |
|
RU2761135C1 |
Станок для изготовления деревянных ниточных катушек из цилиндрических, снабженных осевым отверстием, заготовок | 1923 |
|
SU2008A1 |
Способ приготовления мыла | 1923 |
|
SU2004A1 |
Авторы
Даты
2024-08-27—Публикация
2024-01-22—Подача