Устройство подсчета кодов

Иллюстрации

Показать все

Реферат

 

Изобретение относится к вычислительной технике и может быть использовано в устройствах сбора, подсчета и сортировки информации. Цель изобретения - расширение области применения за счет возможности подсчета кодов в различных множествах входных данных. Устройство содержит узел 1 формирования адреса, блоки 2 и 3 памяти, счетчик 4 импульсов, счетчик 5 страниц, счетчик 6 групп и счетчик 7 подмассивов. Коды для подсчета поступают по входу 8 в узел 1, и в соответствующей ячейке блока 2 памяти содержимое увеличивается на единицу. Выбор ячейки блока 2 памяти зависит от вида распределения входной информации. 6 ил.

СОЮЗ СОВЕТСКИХ

СОЦИАЛИСТ ИЕСКИХ

РЕСПУБЛИН (51) 5 G 06 F 7/06, 15/74

ОДИОДНИЕ ИЗОБРЕТЕНИЯ

Н ABTOPCHOMV СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ КОМИТЕТ

ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ

ПРИ ГКНТ СССР! (21) 4352198/24-24 (22) 30. 12. 87 (46) 07.01.90. Бюл. М 1 (71) Киевский завод электронных вычислительных и управляющих машин— головное предприятие Киевского производственного объединения "Электронмаш" им. В.И.Ленина (72) Н.Т.Пшеничный (53) 681 ° 325 (088.8) (56) Горн Л.С. и др. Микропроцессоры в приборах для радиационных измерений. — М.: Атомиздат, 1979, с,82-85, рис.20.

Авторское свидетельство СССР и 1304015, кл. 5 06 C 7/06, 1985.

Карасев В.М. и др. Адаптивный алгоритм организации двухуровневой памяти для накопления спектрометрической информации. - Материалы XII

Международного симпозиума по ядерной электронике. Дубна, 1985, с. 245-249, рис.3.

„.,SU„„ 4457 А1

2 (54) УСТРОЙСТВО ПОДСЧЕТА КОДОВ (57) Изобретение относится к вычислительной технике и может быть использовано в устройствах сбора, подсчета и сортировки информации, Цель изобретения — расширение области применения за счет возможности подсчета кодов в различных множествах входных данных.

Устройство содержит узел 1 формирова" ния адреса, блоки 2 и 3 памяти, счетчик 4 импульсов, счетчик 5 страниц, счетчик 6 групп и счетчик 7 подмассивов. Коды для подсчета поступают по входу 8 в узел 1, и в соответствующей, ячейке блока 2 памяти содержимое увеличивается на единицу. Выбор ячейки а блока 2 памяти зависит от вида распределения входной информации. 6 ил.

1534457

Изобретение относится к вычислительной технике и может быть использовано в различных устройствах, предназначенных для подсчета числа кодов, содержащихся в некотором множестве блоков данных (подмассивов) > а также в устройствах сортировки информации, Цель изобретения — расширение области применения путем обеспечения возможности подсчета кодов в различных множествах входных данных.

На фиг.l представлена функциональная схема устройства; на фиг,2— функциональная схема узла формирования адреса; на фиг.3 - пример реализации первого блока памяти; на фиг.4 — пример реализации второго блока памяти; на фиг.5 — пример реализации счетчика импульсов; на фиг.б основные способы подачи кодов пр« подсчете.

Устройство содержйт узел 1 формирования адреса, первый и второй блоки

2 и 3 памяти, счетчик 4 импульсов, 25 счетчик 5 страниц, счетчик б групп, счетчик 7 подмассивов, информационные вход 8 и выход 9, адресный вход 10, счетные входы 11-14, вход 15 записи, вход 16 управления, вход 17 записи, вход 18 чтения-записи, входы 19-21 записи, шину 22 данных, выход 23 конца обработки, выход 24 требования загрузки и выход 25 конца обработки.

Узел 1 (фиг.2) содержит регистр 26 адреса, мультиплексор 27, вход 28 за35 писи и вход 29 управления, Регистр 2Ь предназначен для временного хранения данных, принятых с входа 8. Мультиплексор преобразует

Ь„-разрядный код данных в группу 1-к/g разрядов (g — число групп, на которое делится код), которую передает на вход младших разрядов адресного входа блока 2, Счетный вход используется для чтения результатов подсчета.

Блок 2 памяти (фиг.3) предназначен для записи, хранения и считывания ре- . зультатов подсчета. Результаты подсчета в каждом наборе одноименных кодов сохраняются в одной иэ страниц блока 2, число которых определяется разрядностью счетчика 5. Число ячеек внутри страницы N =2 " определяется к рвзрядностью кода. Адрес ячейки определяется величиной кода на выходе уэйа 1.

Выходы элементов 30 памяти (фиг.3) обьединены по монтажному ИЛИ и образуют первый разряд блока 2 памяти.

Аналогично элементы 31 и 32 памяти образуют второй и L-й разряды блока 2 памяти соответственно.

Блок 3 памяти (фиг.4) предназначен для хранения служебной информации: адрес начальной (первой заданной) страницы, число групп разрядов (кодов) в любом из подмассивов, число подмассивов в обрабатываемом массиве.

Разрядность блока 3 определяется максимальной разрядностью в любом из счетчиков 5 — 7. Каждый элемент 33 памяти может представлять один или несколько разрядов.

Счетчик 4 импульсов (фиг.5) предназначен для приема содержимого блока 2 памяти, увеличения его на единицу и передачи на информационный вход блока 2 при подсчете либо для передачи содержимого блока 2 памяти на информационный выход 9 при считываний результатов. Счетчик 4 импульсов может быть реализован на элементах 34 счетного типа,, содержащих один или несколько разрядов.

Счетчики 5 - 7 предназначены для приема, хранения и модификации на единицу адреса начальной страницы, числа групп разрядов (кодов) и числа подмассивов соответственно. Эта служебная информация поступает с блока

3 памяти по шине 22 данных.

В зависимости от способа подачи кодов несколько изменяется последо" вательность подачи управляющих сигналов. Каждый импульс (фиг.б) идентифицирует код произвольной величины в диапазоне от нуля до 2 -1. На фиг.ба ьк коды 11, 12,...,1G образуют первый подмассив, коды 21, 22,...,2G - второи подмассив, коды Р1, Р2,...,PGP-й подмассив из G кодов. Таким обра» зом, первые цифры указывают порядко" вый номер подмассива, вторые - число кодов в подмассиве. На фиг.бб последовательность цифр в обозначении кодов та же, но из последовательности кодов видно: вначале подается набор иэ всех первых кодов каждого подмассива, затем набор иэ всех вторых кодов и последним набор из всех С"х кодов. Таким образом, число наборов одноименных кодов равно числу кодов в одном подмассиве.

1534

Для надежной работы необходимо выдерживать следующие требования: I< mi ЧА< Cg<<2< л

< тя и Нт < - «;+< р<.<

rn и

5 где <. — время между подачей соседних кодов в одном подмассиве; с „ — время между соседними подмассивами; 10

Л время между соседними наборами одноименных кодов;

A время задержки кодов в узле

1 адреса; ьп ePeмЯ ОпеРации Чтение мОдификация-запись" в блоке 2 и счетчик 4;

Л. время загрузки счетчиков

5 - 7 с блока 3 памяти.

Работу устройства вначале рассмот- п рим на примере подсчета кодов в падмассивах, поступающих последовательно в соответствии с фиг,ба.

В исходном состоянии все страницы блока 2 памяти, которые будут исполь- 25 зоваться при обработке конкретного массива, обнулены. В определенные ячейки блока 3 памяти (задаваемые на адресном входе 10) дс<лжны быть записаны: адрес начальной страницы, число групп разрядов (кодов) в подмассиве и число подмассивов в обрабатываемом массиве. Запись осуществляется с входа 8 по сигналу записи на входе

18. Затем эта служебная информация

35 переписывается в счетчики 5 — 7 по сигналам записи на входах 19-21 соответственно. Если содержимое счетчиков

6 и 7 задано в дополнительном коде, то счетные входы должны выполнять

"+1", если в прямом коде, - то "-1".

Первый код первого подмассива ве" личиной i принимается с входа 8 в узел 1 по сигналу записи на входе 15.

Код данных, принятый в узел 1, посту- 45 пает на младшие разряды адресного входа блока 2 памяти, становится та" ким образом адресом ячейки i Старшая часть адреса, указывающая первую эаДанную страницу, ПОступает В блОк

2 памяти из счетчика 5. При наличии разрешения чтения на управляющем входе 16 содержимое ячейки « (первый раз равное нулю) начальной страницы считывается с блока 2 и записывается в счетчик 4 по сигналу записи на входе 17. В счетчике 4 содержимое ячейки i увеличивается на единицу по счетному входу 11, а затем новое

457 6 значение записывается в ту же ячейку

1<, блока 2 памяти, так как ни адрес, ни страница не изменились. Обработка принятого кода может быть выполнена операцией Чтение-модификация-запись".

После этого содержимое счетчика 5 увеличивается на единицу и адресует следующую страницу, а содержимое счетчика 6 уменьшается на единицу и показывает число необработанных кодов первого подмассива. Если при этом на выходе счетчика 6 не появился заем (переполнение), то устройство готово к приему и обработке следующего:кода.

Второй код первого подмассива величинОЙ 1, принятыЙ в узел 1 ° становится адресом ячейки < . Ho так как содержимое счетчика 5 увеличено, то ячейка i будет читаться из следующей страницы, а ее содержимое (первый раз равное нулю) принимается в счетчик 4, увеличивается на единицу и записывается в ячейку i« считанной страницы. После этого содержимое советчика 5 увеличивается на единицу, а содержимое счетчика 6 уменьшается на единицу.

Третий, четвертый, ..., С-й коды первого подмассива обрабатываются аналогично. Каждый новый код первого подмассива увеличивает на единицу содержимое ячейки, равное по величине поступившему коду данных, но каждый раз в новой странице. После обработки последнего С-го кода первого подмассива на выходе счетчика 6 появляется сигнал переполнения. Он вызывает уменьшение содержимого счетчика 7 на единицу и инициирует через выход

24 последовательность управляющих сигналов по загрузке адреса начальной страницы в счетчик 5 и число наборов одноименных кодов (число групп в пбдмассиве) в счетчик 6 из ячеек блока

3 памяти. Для этого на адресном входе

10 задаются адреса хранения соответ" ствующих кодов. По сигналам "Чтение" на входе 18 и "Запись" на входах 19 и 20 с блока 3 памяти записывается в счетчики 5 и 6 необходимая информация.

Первый код второго подмассива se- . личиной i4 принимается с входа 8 в узел 1. Так как в счетчике 5 снова находится адрес первой заданной (начальной) страницы, то код i <адресует ячейку в той же странице, что и код

Обрабатывается он аналогично к< »34457 дам первого подмассива. Если 1„=1<,=1, то содержимое ячейки 1 становится равным двум. Если 1„ф1я, то содержимое некоторых двух ячеек становится

5 равным единице. После учета кода в ячейке i, начальной страницы блока

2 содержимое счетчика 5 увеличивается, а счетчика 6 уменьшается на единицу. Второй, третий,...,G-тые коды второго подмассива обрабатываются аналогично. Каждый код подмассива учитывается в ячейке блока 2 памяти своей страницы благодаря модификации счетчика 5 в каждом цикле обработки очередного кода. После обработки последнего G-го кода второго подмассива на выходе счетчика 6 появляется сигнал переноса„ что вызывает уменьшение содержимого счетчика 7 на единицу и перезагрузку содержимого счетчиков

5 и 6. После обработки последнего кода последнего подмассива импульс переполнения появляется на выходе 25 счетчика 7, который информирует о 25 конце обработки всего массива данных.

К этому моменту в начальной странице блока 2 памяти будут результаты подсчета кодов в наборе,,образованном первыми кодами каждого подмассива, во второй странице — результаты подсчета в наборе, образованном вторыми кодами каждого подмассива,, а в Г-й странице — результаты подсчета в наборе, образованном G-ми кодами каждо35 го подмассива. При этом в ячейке 0 каждой страницы указано число величиной 0 в первом наборе, в ячейке 1 число кодов величиной 1, в ячейке 2 число кодов величиной 2, а в ячейке к

2„-1 записано число кодов величинои

2 "-1.

Работа устройства при обработке кодов, поступающих в соответствии с фиг.бб, осуществляется следующим 4 образом.

Перед началом работы в блоке 2 памяти должны быть обнулены G страниц, начиная с первой заданной, и в определенные ячейки блока 3 памяти должна быть записана служебная информация: адрес начальной страницы, число кодов в подмассиве и число подмассивов в обрабатываемом массиве. Затем адрес начальной страницы загружается в

55 счетчик 5, как и в первом примере, число кодов в подмассиве загружается

s счетчик 7, а число подмассивов в счетчик 6. Таким образом, при иэменении порядка следования кодов необходимо поменять и информацию, загружаемую в счетчики 6 и 7.

Первый код первого подмассива обрабатывается так же, как и в первом примере, т.е. принимается в узел 1 и становится младшей частью адреса блока 2.

Старшая часть адреса поступает из счетчика 5. Содержимое ячейки i начальной страницы считывается, увеличивается на единицу в счетчике 4, и новое значение записывается в ту же ячейку начальной страницы, Так как коды, поступающие в счетчик кодов, являются первыми кодами (первым набором) иэ каждого подмассива, то после учета первого кода содержимое счетчика 5 не изменяется и следующий код величиной i адресует ячейку s той же начальной странице. Содержимое счетчика 6 уменьшается на единицу и указывает, что в первом наборе осталось обработать Р-1 код. Аналогично после обработки третьего, четвертого, P-го кодов содержимое счетчика 5 не изменяется и величина всех Р кодов учитывается в начальной странице. В счетчике 6 после обработки последнего

P-го кода первого набора возникает импульс переполнения, который уменьшает содержимое счетчика 7 на единицу, увеличивает содержимое счетчика

5 на единицу.

После обработки последнего С-ro набора одноименных кодов на выходе счетчика 7 появляется импульс заема, который информирует о конце обработки всего массива данных.

Узел 1 формирования адреса (фиг.2) работает следующим образом.

Если возникает переполнение на выходе 23, то это служит сигналом прекращения операций подсчета. При приеме кода данных с входа 8 через вход 15 на вход 28 записи регистра

26 адреса подается строб записи, а на вход управления мультиплексора 27 подаются сигнал разрешения передачи и код выбора направления.

Предложенная реализация узла 1 позволяет значительно уменьшить объ» ем используемой памяти, если коды на входе 8 многоразрядные (8-32 и более разрядов), а составные части кодов независимы (например, 4-8-разрядные цифры, буквы, символы и так далее). В этом случае для подсчета в том же массиве требуется g (2 - 1)

Ьк(15344

9 ячеек вместо 2""-1 ячеек, где g коэфФициент мультиплексирования; разрядность кода на входе 8.

Упорядоченные по величине кода

5 результаты подсчета в одном, нескольких или во всех наборах одноименных кодов могут быть считаны и переданы в память другого устройства или ЭВМ.

Формула изобретения

Устройство подсчета кодов, содержащее узел Формирования адреса, первый и второй блоки памяти и счетчик импульсов, информационный выход счетчика импульсов является информационным выходом устройства и соединен с информационным входом первого блока памяти, Выход KQToporo соединен с ин- 20 формационным входом счетчика импульсов, информационный вход устройства соединен с информационными входами узла формирования адреса и второго блока памяти, первый и второй счетные 25 входы устройства соединены со счетными входами счетчика импульсов и узла формирования адреса соответственно, разряды выхода которого соединены с младшими разрядами адресного входа gp первого блока памяти, адресный вход второго блока памяти соединен с адресным входом устройства, о т л ич а ю щ е е с я тем, что, с целью

10 расширения области применения путем обеспечения возможности подсчета кодов в различных множествах входных данных, в него введены счетчик страниц, счетчик групп и счетчик подмассивов, причем выход второго блока памяти соединен с информационными входами счет .ика групп, счетчика страниц и счетчика подмассивов, вход чтениязаписи второго блока памяти является входом чтения-записи устройства, входы асинхронной загрузки узла формирования адреса, счетчика импульсов, счетчика страниц, счетчика групп и счетчика подмассивов являются с первого по пятый входами записи устройства соответственно, выход счетчика страниц соединен со старшими разрядами адресного входа первого блока памяти, счетные входы счетчика страниц и счетчика групп являются третьим и четвертым счетными входами устройства соответственно, выход переполнения счетчика групп соединен со счетным входом счетчика подмассивов, управляющий вход первого блока памяти является входом управления устройства, выход переполнения счетчика групп является выходом требования загрузки устройства, выходы переполнения счетчика импульсов и счетчика подмассивов являются первым и вторым выходами конца обработки устройства.

L!

s о р 6 з е р 6 а

1534457 (Р . 5

9орЫкодыи нокер када 8 лЮюссиЮг

1-и подиасси6

Поря8кадыб ною,п подипсси8а

Р-О /7ад йуссид

Я рИюйв нмеа кабо 8 айиуссиге

1Г... б-тый набор одноименньа каВ8

8се ипй одноаа ла &псп4а(пссЮа) Риг.б

Составитель В.Бородин редактор О.Юрковецкая Техред И.Дидык Корректор И.Иаксимишинец

Заказ 42 Тираж 555 Подписное

ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР

113035, Москва, 8-35, Раушская наб., д. 4/5

Производственно-издательский комбинат Патент, г. Ужгород, ул. Гагарина,101