Адаптивное телеметрическое устройство
Иллюстрации
Показать всеРеферат
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (19) (11) (51)5 С 08 С 19/28
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
М А BTOPCHOMV СВИДЕТЕЛЬСТВУ
f .:э
ГОСУДАРСТ8ЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ
ПРИ ГКНТ СССР (21) 4677220/24 (22) 22.03.88 (46) 15.03.91. Бюл . № 10 (71) Московский институт инженеров гражданской авиации (72) С.Ж. Кищенский, В. Э.Игнатьев, А.Я.Крекер и В.А.Решетников (53) 621.398 (088.8) (56) Авторское свидетельство СССР № 1492361, кл. С 08 С 19/28, 1987, (54) АДАПТИВНОЕ ТЕЛЕМЕТРИЧЕС КОЕ УСТРОЙСТВО (57) Изобретение относится к телеметрии и вычислительной технике и может быть использовано для обработки сжатых сообщений. Целью изобретения является повышение быстродействия путем подстройки параметров устройства к статистике входной информации. Устройство содержит блок 1 ввода коэффициентов, блок 2 буферной памяти, счетчик 3, элемент ИЛИ 4, программновременной блок 5, первый и второй блоки 6 и 10 сравнения кодов, блок 8 памяти коэффициентов и блок 9 памяти номеров коэффициентов, регистр 11 адреса, кодер 12, блок 13 ключей, формирователь 14 модуля числа, сумматор
15 и блок 16 сравнения, первый и второй коммутаторы 7 и 19, первый и второй блоки 17 и 18 памяти, триггер 21 и делитель 20. 2 ил.
1635206
Изобретение относится к телеметрии и вычислительной технике и может быть использовано для передачи и обработки сжатых сообщений. 5
Целью изобретения является повышение быстродействия путем подстройн ки параметров устройства к статистике входной информации.
На фиг. 1 приведена структурная 10 схема адаптивного телеметрического устройства, на фиг.2 — структурная схема программно-временного блока.
Адаптивное телеметрическое устройство (фиг ° 1) содержит блок 1 вво- 15 да коэффициентов, блок 2 буферной памяти, счетчик 3, элемент ИЛИ 4, программно-временной блок 5, первый блок 6 сравнения кодов, первый коммутатор 7, блок 8 памяти коэффи- 20 циентов, блок 9 памяти адресов коэффициентов, второй блок 10 сравнения кодов, регистр 11 адреса, кодер 12, блок 13 ключей, формирователь 14 модуля числа, сумматор 15, блок 16 25 сравнения, первый и второй блоки 17 и 18 оперативной памяти, второй коммутатор 19, делитель 20 частоты, Т-триггер 21, информационные входы
22, вход 23 начальной установки, ин- 30 формационные выходы 24, шину 25 сигнала допуска.
Программно-временный блок (фиг.2) содержит генератор 26 тактовых импульсов, первый и второй элементы И
27 и 28, элемент ИЛИ 29, триггер 30, третий элемент ИЛИ 31, второй триггер 32, четвертый элемент ИЛИ 33, регистр 34, второй счетчик 35, пятый элемент ИЛИ 36, первый элемент 37 40 сравнения, третий счетчик 38, второй элемент 39 сравнения, шестой элемент
ИЛИ 40, четвертый счетчик 4 1, дешифратор 42, седьмой элемент ИЛИ 43, восьмой и девятый элементы ИЛИ 44 и 45, Устройство работает следующим образом.
Процесс упорядочения коэффициентов разбивается на две ступени. На первой ступени производится сортиров. ка коэффициентов на ряд (М) неперекрывающихся групп по величине, причем каждый коэффициент сохраняет свой номер в общей последовательности, На второй ступени происходит упо— рядочение коэффициентов внутри каждой группы (последовательно для каждой группы реализуются первая и вторая ступени упорядочения, начиная с группы, в которой "собираются" коэффициенты с наибольшими значениями и так далее по мере убываний значений коэффициентов и в соответствующих группах), Такой порядок упорядочения коэффициентов внутри групп позволяет эффективно упорядочить коэффициенты всего массива в целом.
Разбиение массы коэффициентов на группы осуществляется путем сравнения их с рядом так называемых "кодовых окон". В зависимости от значений выбранных "кодовых окон" находятся размеры групп коэффициентов, В выборе значений кодовых окон таким образом, чтобы достичь максимально возможного равенства числа коэффициентов во всех группах, и состоит основное отличие предлагаемого устройства от прототипа. Максимальное быстродействие достигается при организации ln групп по п коэффициентов в каждой (т.е. En = N), где п - количество коэффициентов в общем массиве данных при разложении.
При упорядочении массива коэффициентов разложения сначала происходит сравнение всего массива коэффициентов с первым (максимальным по значению) "кодовым окном". Коэффициенты разложения, значения которых больше значения первого "кодового окна", составляют первую группу. После выделения этой группы из массива коэффициентов производится упорядочение коэффициентов внутри группы и вывод их получателю в порядке убывания. Затеи производится сравнение оставшихся коэффициентов со значением следующего (второго по величине) "кодового окна" и выделяется вторая группа, обрабатываемая аналогично первой, и т.д.
Прекращение очередного цикла работы устройства происходит в двух случаях: при выводе всех коэффициентов массива на выход декодера, при срабатывании блока сравнения, фиксирующего факт достижения требуемой точности преобразования.
Исходное состояние устройства задается либо сигналом начальной установки по входу 23, либо по окончании работы в очередном цикле сигналов с блока 16. Эти сигналы поступают яа элемент 44 блока 5 и устанавливяю1
1635206 6 в начальное < ocтояние триггер 30 (через элемент 29), триггер 32 (через элемент 31), счетчик 35 и 38 (со ответственно через элементы 36 и 40) н счетчик 41 Этим сигналом с четвертого выхода блока 5 устанавливается в исходное состояние счетчик 3, а сигналом, прошедшим через элемент
45 на седьмой выход блока 5, — регистр 12 адреса. При начальной установке также устанавливаются в исходное состояние первый и второй блоки памяти, в них записываются исходные значения "кодовых окон" по выбору пользователя . Совокупности исходных значений кодовых окон, записываемые в первый и второй блоки памяти (они предназначены для хранения этих значений: сначала исходных, а затем текущих) идентичны. Триггер 21 может находиться в любом исходном с ос тоянии, он определяет, какой из блоков 17 и 18 памяти подключается коммутатором к блоку 6, при этом в данном цикле преобразования этот блок является источником значений кодовых окон", а второй блок в это время записывает значения "кодовых окон", которые будут использованы в следующем цикле.
Триггер 30 определяет режим работы устройства в интервале времени, когда этот триггер находится в нулевом состоянии, в устройстве происходит запись массива коэффициентов через блок 1 в блок 2 ° При единичном coc— тоянии триггера 30 устройство работает в режиме упорядочения массива коэффициентов. Триггер 32 определяет текущую ступень упорядочения: когда он находится в единичном состоянии,реализуется первая ступень упорядочения — выделение из массива группы коэффициентов посредством сравнения их с текущим "кодовым окном", а когда в нулевом — вторая ступень упорядочения коэффициентов внутри группы и выдача их получателю. В предлагаемом устройстве по сравнению с прототипом дополнительно во время второй ступени упорядочения осуществляется определение текущих значений "коцовых окон, которые используются в следующем цикле преобразования.
После приведения схемы в исходное состояние сигнал с триггера 30 (с инверсного входа) по пятому выходу блока 5 поступает в блок 1 и разрешает прохождение коэффициентов разложения (всего массива) в блок 2. Одновременно с формированием очередного коэффициента блок 1 формирует импульс, который через элемент ИЛИ 4
5 поступает на счетный вход счетчика 3 и задает очередной (начиная с нулевого) многоразрядный адрес, по которому в блок 2 записывается значение соответствующего коэффициента. Этот адрес является номером данного коэффициента разложения (в общем массиве), который будет в дальнейшем сопровождать этот коэффициент вплоть до выдачи его получателю. Емкость счетчика 3 равна количеству формируемых коэффициентов (их число для всех циклов работы устройства постоянно и равно п, как правило, это
20 число представляет собой степень двух).
Одновременно с записью коэф мщиен" тов в блок 2 осуществляются их сравнение с первым (максимальным) зна25 чением кодового окна и вьщеление первой группы коэффициентов с наибольшими значениями, т.е. просеивание .массива коэффициентов через первое
"кодовое окно", в том случае когда значение очередного коэффициента больше значения данного кодового окна (сравнение осуществляется в блоке 6 причем значение очередного коэффициента поступает с блока 2, а значение
"кодового окна" — с одного из блоков памяти 17 и 18 через первый коммутатор 7, что задается сигналами с триггера 21), блок 6 выдает сигнал, который
40 поступая в блок 8 памяти коэффициентов, разрешает запись в него данного коэффициента, с поступая в блок памяти номеров коэффициентов, разрешает запись в не45 го номера данного коэффициента в общем массиве, поступая в блок 2, обнуляет значение данного коэффициента (с целью исключения дальнейшего участия данного коэффициента в процессе упорядочения массива), поступая в блок 5 по первому входу через элемент ИЛИ 33, увеличивает на единицу содержимое счетчика 35.
Счетчик 35 формирует адрес, по которому в блоки 8 и 9 записываются соответственно текущий коэффициент группы и его номер (по первому выходу блока 5) .
1635206
После записи в блок 2 всего массива коэффициентов (и) и одновременного выделения их первой группы (размером п ) счетчик 3 выдает сигнал на блок 5 по четвертому выходу и устанавливает триггер 30 в единичное состояние", триггер 32 — в нулевое состояние, а также выдает разрешающий сигнал для записи числа ni<, сформированного к этому моменту в счетчике 35, в запоминающий регистр 34, после чего тем же сигналом через элемент ИЛИ 36 обнуляет счетчик 35.
Число п, записанное в регистре 34, 15 представляет собой количество элементов первой группы коэффициентов разложения и определяет дальнейший порядок упорядочения на второй сту20 пени.
На второй ступени упорядочение коэффициентов внутри выделенной группы осуществляется почти аналогично ус тройс тву-прототипу. Сигнал с шес того выхода блока 5 разрешает выполне- 25 ние второй с тупени процедуры упорядочения, функционирование блоков 37 и 39, подачу тактовых импульсов с генератора 26 через элементы И 28 и ИЛИ 33 на счетчик 35, выдачу соот- 30 ветствующих кодов с блока 8 на блок
10, переключение второго коммутатора из режима подключения первых выходов с. выхода блока 5 в режим подключения выходов регистра адресов на вход бло- 35 ка 8 памяти номеров коэффициентов.
Блок 8 может быть выполнен, например (как и в прототипе), в виде спаренного блока памяти, обе половины которого идентичны и содержат те же 40 значения коэффициентов разложения.
Одна половина на второй ступени упорядочения выдает по адресному сигналу с первых выходов блока 5 двоичный код текущего коэффициента на выходы 45 счетчика 3, а другая половина — код наибольшего к данному моменту упорядочения коэффициента в группе на выходы по адресу> определяемому состоянием регистра 11 адреса, В первый момент (регистр адреса находится в нулевом состоянии) при первом такте работы счетчика 35 на входы второго блока 10 сравнения кодов поступают идентичные коды первого коэффициента группы, записанного по первому адресу (необхоцимо различать номер коэффициента, определяющий его положение в общем массиве и коэффициентов, и адрес коэффициента, определяющий его положение в группе и„ элементов).
Блок 10 выдает сигнал в том случае, когда значение кода на выходах блока 2 больше значения на выходах коммутатора 7, Таким образом, в первом такте работы на второй ступени блок
1О не выдает сигнала, а на втором такте сравниваются второй коэффициент группы и первый коэффициент. С каждым тактом работы счетчика 35 адрес коэффициента на входах блока 2 увеличивается на ециницу. При отсутствии сигнала с выходов блока 10 адрес, записанный в регистре 11, остается неизменным, а при срабатывании блока 10, которое вызывается превышением значения текущего коэффициента над значением сравниваемого коэффициента, в регистр адреса записывается адрес текущего коэффициента (соответствующий состоянию счетчика 35). Таким образом, к концу процесса перебора всех п,1 коэффициентов группы на выходах коммутатора 7 присутствует значение наибольшего коэффициента в группе, на выходах блоков 11 и 9 — его адрес, а на выходах блока 9 — его номер.
Когда сравнение по всем коэффициентам группы закончено, коды в счетчике 35 и регистре 34 совпадают, что Фиксируется блоком 37 сравнения (элемент
37 сравнения представляет собой набор схем совпадения, входы каждой из которых соединены с одноименными выходами счетчика 35 и регистра 34, аналогично реализован и элемент 39 сравнения. Элемент 37 выдает сигнал, по которому через элемент ИЛИ 36 c÷åòчик 35 устанавливается в нулевое состояние. Содержимое счетчика 38 увеличивается на единицу. С второго блока 5 поступает разрешающий сигнал на кодер 12 и блок 13 ключей, по которому на вход 24 устройства подается с блока 9 через кодер 12 номер максимального коэффициента в группе,а с блока 8 — значение этого коэффициента. Значение максимального коэффициента поступает также через блок 13 ключей и формирователь 14 модуля числа на сумматор 15 и далее на блок 16 сравнения. Сигнал с второго выхоца блока 5 поступает также на блок 8 и обнуляет содержимое этого блока по адресу максимального коэффициента с целью исключения его участия с даль— 6352
30 нейшем упорядочении внутри группы.
Этот же сигнал поступает на вход делителя 20, который может быть реализован, например, в виде счетчика и предназначен дпя выдачи импульса на выходе после поступления на его вход числа импульсов, соответствую— щих его коэффициенту деления.
Сигнал с второго выхода, пройдя через элемент ИЛИ 45 с седьмого выхода блока 5 обнуляет также содержимое регистра 11 адреса.
Таким образом, в результате первого сравнения коэффициентов первой группы выделяется максимальный коэффициент в ней. Далее процесс повторяется. В результате последовательного прохождения п раз процесса второй ступени упорядочения все ко- 20 эффициенты в порядке убывания передаются получателю (с соответствующими номерами) с выхода кодера 12. Для полного упорядочения и< коэффициентов необходимо и п = и, тактов работы 25 устройства. Счетчик 35 обеспечивает однократное прохождение всех коэффициентов и выделение максимального из оставшихся. Счетчик 38 обеспечивает п -кратное прохождение всех коэффициентов для их полного вывода получателю. После осуществления всех циклов содержимое счетчика 38 совпадает с содержимым регистра 34, в результате чего с выхода элемента 39 сравнения формируется сигнал, сбрасывающий счетчик 38 и увеличивающий на единицу содержимое счетчика 4 1. Счетчик 4 1 определяет номер "кодового окна", значение которого (окна) записано по данному адресу в блоке памяти (17 или 18). Изменение содержимого счетчика 4 1 задает новый адрес в блоки памяти, и из одного из них (рабочего в данном цикле разложения) поступает на первый блок 6 сравнения кодов новое значение "кодового окна . Одновременно сигналом с элемента 39 сравнения через третий элемент ИЛИ 31 устанавливается в еди-. ничное состояние триггер 32. Устройство переходит снова к первой ступени упорядочения. С генератора тактовых импульсов по разрешающему сигналу с триггера 32 через элемент И 27 на третий выход блока 5 и далее через элемент ИЛИ 4 на счетчик 3 начинают поступать тактовые импульсы и происходит вновь перебор элемент
06 10 массива и просеивание" их через новое, меньшее по значению в сравнении с предыдущим "кодовое окно . После выделения второй группы коэффициентов происходит упорядочение коэффициентов в ней и т.д. Так, поочередно на выход устройства (кодера 12) поступают коэффициенты разложения, упорядоченные по величине. Окончание общего цикла упорядочения происходит в двух случаях, В первом случае сумма коэффициентов, выделяемая на сумматоре 15, соответствует требуемой точности преобразования, задаваемой сигналом с шины 25 до окончания перебора всех элементов массива. При этом с выхода блока 16 сравнения на второй вход блока 5 (на элемент ИЛИ 44) поступает сигнал, переводящий устройство в исходное состояние (за исключением содержимого блоков 17 и 18 памяти, которые устанавливаются только один раз в начале работы устройства). Во втором случае после перебора всех коэффициентов (элементов массива) срабатывает дешифратор 42, по сигналу с которого устройство также устанавливается в исходное состояние. После этого процесс упорядочения повторяется для нового массива коэффициентов.
Счетчики 35 и 38 имеют емкость и гарантируя произвольное количество коэффициентов в любой группе массива коэффициентов. Счетчик 44 имеет емкость N, соответствующую количеству кодовых окон.
Рассмотрим процедуру формирования значений "кодовых окон", являющуюся основным отличием предлагаемого устройства от прототипа. Как указывалось ранее, прп начальной установке устройства в блоки памяти записываются некоторые исходные значения "кодовых окон". Один из блоков памяти выдает сигнал на блок 6 сравнения кодов для реализации процесса упоряцочения коэффициентов в данном цикле, Какой из блоков делает это, т.е. является рабочим, определяется сигналом с триггера 21. Если на один из блоков памяти поступает сигнал 1 с триггера, то на другой — сигнал
"0", что обеспечивает режим считывания с одного из блоков в режим записи в другой блок памяти. Подключение одного из блоков (того, кото ь и находится в данный момент в пе35206 l2 дояых окон" (это обеспечивается иесравнения, т.е. в тот момент, когда произошел прогон упорядочения и выделяется очередной коэффициент в упорядоченном ряду. Таким образом, количество импульсов, поданное на вход делителя, соответствует количеству выделенных коэффициентов. Когда на вход делителя поступает N-й импульс, его порядковый номер в общем случае
N,, где i = 1, 2, 3... (выходной сигнал с делителя разрешает запись в соответствующий блок памяти, в тот, который в данном цикле находится в режиме записи, значения соответствующего коэффициента разложения с второго выхода блока 8).
По окончании цикла преобразования в блоке памяти оказываются записанными
n,,коэффициентов (их значений) с порядковыми номерами N;, эти коэффициенты служат в следующем цикле преобразования "кодовыми окнами". В следующем цикле преобразования данный блок памяти является источником "ко40
ll 16 жиме считыв ния) к блоку 6 осуществляется коммутатором по сигналу с того же триггера 21.
Главным процессом подстройки устройства к статистике коэффициентов разложения и является запись соответствующих значений в соответствующий блок памяти. Оптимальное быстродействие устройства достигается при разбиении общего массива коэффициентов в и штук на И групп по и, коэффициентов, где и, = N = n,. Количество кодовых окон" N, где N = - п, можно выбрать, зная заранее число и. Значе-. ния "кодовых окон", определяющие количества элементов разложения, попадающих в группы, зависят от статистики распределения значений этих коэффициентов, и их заранее выбрать невозможно. Однако можно осуществить текущую подстройку значений "кодовых окан под статистику коэффициентов разложения, что и реализуется в предлагаемом устройстве, Для такой подстройки на текущем цикле преобразования массива коэффициентов используется делитель 20.
Его коэффициент деления равен 1й, т.е. с его выхода снимается импульс при поступлении на его вход -Pn входных импульсов, Его информационный вход подключен к второму выходу блока 5, с которого поступают импульсы в моменты срабатывания элемента 37
35 реключением в конце каждого цикла преобразования триггера 21 сигналом с четвертого выхода блока 5), а дру- гой блок памяти работает в режиме записи новых значений "кодовых окон" для следующего цикла. Таким образом, блоки 17 и 18 памяти работают в качестве источников "кодовых окон" попеременно, меняясь в каждом цикле преобразования.
При неизменной статистике коэффициентов разложения после первого же цикла преобразования за счет выбора соответствующих значений "кодовых окон" дальнейшие циклы проводятся с максимальным быстродействием, поскольку все группы коэффициентов гю содержат по n = «1п коэффициентов.
Некоторые отклонения в реальных случаях от оптимального быстродействия имеют место иэ-за изменения во времени статистики значений коэффициентов разложения, но, поскольку значения коэффициентов от цикла к циклу коррелируют, эти отклонения незначительны и постоянно отрабатываются посредством записи в блоки памяти текущих значений N;-x коэффициентов, которые и используются в последующих циклах в качестве "кодовых окон", Таким образом, постоянно подстраиваясь под статистику совокупности коэффициентов разложения, предлагаемое устройство позволяет осуществить оптимальное по быстродействию преобразование. формул а изобретения
Адаптивное телеметрнчес кое устройство, содержащее блок ввода коэффициентов, первые входы которого являются информационными входами устройства, первый и второй выходы блока ввода коэффициентов соединены соответственно с первыми входами блока буферной памяти и первым входом элемента ИЛИ, выход которого соединен с первым входом счетчика, первые выходы которого соединены с первыми входами блока памяти адресов коэффициентов и вторыми входами блока буферной памяти, выходы которого соединены с первыми входами блока памяти коэффициентов и первого блока,сравнения кодов, выход первого блока сравнения кодов соединен с вторыми
35206 14
13 16 входами блока памяти коэффициентов
1 и блока памяти адресов коэффициентов, третьим входом блока буферной памяти и первым входом программно-временного блока, первые выходы которого соединены с третьими входами блока памяти коэффициентов и первыми входами регистра адреса, выходы которого соединены с четвертыми входами памяти блока коэффициеитов, первые и вторые выходы блока памяти коэффициентов соединены соответственно с первыми входами второго блока сравнения кодов и первыми входами блока ключей и кодера и вторыми входами второго блока сравнения кодов, выход которого соединен с вторым входом регистра адреса, выход блока памяти адресов коэффициентов соединен с вторым входом кодера, выходы которого являются информационными выходами устройства, второй выход программно-временного блока. соединен с третьим входом ко— дера, пятым входом блока памяти коэффициентов и вторым входом блока ключей, выходы которого через последовательно соединенные формирователь модуля числа и сумматор соединены с первыми входами блока сравнения, вторые входы которого переключены к шине сигналов допуска, выход блока сравнения соединен с вторым входом программно-временного блока, третий вход которого является входом начальной установки, третий и четвертый выходы программно-временного блока соединены соответственно с вторым входом элемента ИЛИ и вторым входом счетчика, второй выход которого соединен с четвертым входом программно-временного блока, пятый, 5
40 шестой и седьмой выходы которого соединены соответственно с вторым входом блока ввода коэффициентов, шестым входом блока ввода памяти коэффициентов и третьим входом регистра адреса, о т л и ч а ю щ е е с я тем, что, с целью повышения быстродействия устройства, в него введены коммутаторы, блоки оперативной памяти, делитель частоты, триггер, инверсный и прямой выходы которого соединены соответственно с первым входом первого блока оперативной памяти и первыми входами второго блока оперативной памяти и первого коммутатора, выходы которого соединены с вторыми входами первого блока сравнения кодов, вторые и тре тьи входы блока оперативной памяти соответственно объединены и подключены к входу начальной установки устройства и второму выходу блока памяти коэффициентов, восьмые выходы программно-временного блока соединены с четвертыми входами первого и второго блоков оперативной памяти, выходы которых соединены соответственно с вторыми и третьими входами первого коммутатора, первый, вторые и третьи входы второго коммутатора подключены соответственно к шестому и первым выходам программно-временного блока и выходу регистра адреса, первый вход делителя частоты подключен к второму выходу программно-временного блока, второй вход делителя частоты объединен с входом триггера и подключен к четвертому выходу йрограммно-временного блока, выход делителя частоты соединен с четвертыми входами блоков оперативной памяти.
1635206
Составитель H.Áo÷àðoâà
Редактор А,Лежнина Техред M.дидик Корректор М,Самборская
Заказ 758
Тираж 327
ПодписHoe
ВНИИПО Государстве. <ного комитета по изобретениям и открьггиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-издательский комбинат Патент", г, Ужгород, ул, Гагарина, 101