Цифровой генератор функций
Иллюстрации
Показать всеРеферат
Изобретение относится к автоматике и вычислительной технике и предназначено для воспроизведения слолшых функциональных зависимостей . Целью изобретения является повышение эффективности использования устройств памяти, увеличение числа воспроизводимых сплайнов при заданном объеме памяти и расширение класса генерируемых при. заданном множестве аппроксиьшрующих сплайнов. Введение цифрового генератора функций, двух коммутаторов h элемента НЕ позволило увеличить число получаемых сплайнов при заданном объеме памяти, расширить класс воспроизводимых функций при зада1п-1ом наперед ffloжecтвe сплайнов. З стройство содержит генератор импульсов, делитель частоты, два блока памяти, дра коммутатора, счетчик, два реверсивных счетчика, два элемента И, элемент НЕ. 4 ил. го со (
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИН ц11 4 G 06 F 1/02
ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 3791184/24-24 (22) 14.09.84 (46) 23,06.86. Бюл. № 23. (71) Куйбышевский ордена Трудового
Красного Знамени политехнический институт им. В.В.Куйбышева (72) С.А.Никищенков, А.О.Тимофеев и А.С.Брятов (53) 681.328 (088.8) (56) Авторское свидетельство СССР № 798893, кл. G 06 F 7/26, 1981, Авторское свидетельство СССР № 1108426, кл. G 06 F 1/02, 1983. (54) ЦИФРОВОЙ ГЕНЕРАТОР ФУНКЦИЙ (57) Изобретение относится к авто— матике и вычислительной технике и предназначено для воспроизведения сложных функциональных зависимосÄÄSUÄÄ 1239704 тей. Целью изобретения является повышение эффективности использования устройств памяти, увеличение числа воспроизводимых сплайнов при заданном объеме памяти и рас— ширение класса генерируемых при заданном множестве аппроксимирующих сплайнов. Введение цифрового генератора функций, двух коммутаторов и элемента НЕ позволило увеличить число получаемых сплайнов при заданном объеме памяти, расширить класс воспроизводимых функций при заданном наперед множестве сплайнов. Устройство содержит генератор импульсов, делитель частоты, два блока памяти, два коммутатора, счет .ик, два реверсивных счетчика, два элемента И, эле— мент НЕ. 4 ил.
9704 2
Устройство работает следующим об- разом.
На каждом шаге i программы с шестого и седьмого выхода блока 4 памяти соответственно на управляющий вход коммутатора 13, соединенный с вхо-, дом управления счетчика.7, и управ— ляющий вход коммутатора 14 поступа-, от соответственно логический уровень г1 и логический уровень u . .При заl дании на всех шагах х значения ц г = 1 состояние первого входа элемента И 9, соединенного с входом счетчика 3, повторяет состояние выхода переполнения (переноса) счетчика
7, a состояние второго входа элемента И 8 повторяет состояние выхода блока 10 памяти. При этом, если на шаге
i выбрана строка, содержащая функциональную последовательность нулей и -1 единиц s, то на выходе ЦГФ воспроизводится либо сплайн з (р„= l ), либо
s (р„ =О), причем последовательность
-;1 я поступает на второй вход элемен1 123
Изобретение относится к автоматике и вычислительной технике и предназначено для воспроизведения слож-. ных функциональных .зависимостей.
Цель изобретения — увеличение чис-. ла воспроизводимых сплайнов при заданном объема памяти.
На фиг.l показана блок-схема предлагаемого устройства; на фиг.2 семейство сплайнов, получаемых при использовании одной и той же строки блока памяти, и соответствующие им кодовые последовательности, на фиг.3 — пример формирования сплайнов сложной формы при использовании одной и той же строки блока памяти (имеется в виду отрока с заранее записанной в ней информацией); на фиг.4 — пример воспроизводимой кусочно-аппроксимированной зависимости при использовании только одной строки блока памяти (с заранее записанной в ней информацией) .
Цифровой генератор функций (ЦГФ) содержит генератор 1 импульсов, делитель 2 частоты, счетчик 3, блок 4 памяти, реверсивный счетчик 5, цифроаналоговый преобразователь 6, ревер .сивный счетчик 7,. элементы И. 8 и 9, блок 1О памяти, цифровой выход генератора 11, аналоговый выход генератора 12, коммутаторы 13 и 14, элемент
НЕ 15.
ЗО
4О
55 та И, 8, начиная с крайнего левого бита и кончая крайним правым битом.
При значениях r„- 0 и u„ 1 на шаге программы i счетчик 7 работает в режиме вычитания (на его входе управления присутствует уровень нуля), последовательно адресуя столбцы выбранной строки блока 10 памяти с последнего по нулевой, причем переход на следующий шаг программы происходит по поступлению на второй информационный вход коммутатора 13 и, соответ— ственно, на вход счетчика 3 импульса с выхода обнуления (заема) счетчика 7.
На второй вход элемента И 8 по2 ступает последовательность s . (фиг.2) полученная из последовательности s путем изменения направления считыва-. ния и начала ее считывания (не с 0-го бита по Зl-й, а с 31-го по 0- й) . На выходе ЦГФ воспроизводится сплайн
s /s (при р„==О), симметричный сплай— ну s относительно точки Ц (фиг.2), причем НЦ = ЦК., отрезок АК равен числу единиц в s" (в s ), à AB — числу — 1 бит в последовательности s . Если на на i-и шаге воспроизводился s, а на (1.4-1)-м — s (фиг.2, причем коэффициент деления делителя 2 К = K ), то они симметричны относительно точки К. Вид s зависит от вида s причем однозначно, например если s представляет правую положительную ветвь кубической параболы (фиг.2), то s — левую (отрицательную) ветвь кубической параболы. В общем случае
s представляет собой отрезок функции, 2 отрицательной по отношению к функции, отрезком которой является s . Существует такое взаимно однозначное соответствие, что для каждого s4 находится в, начало и конец которого совпадают с началом и концом з, а точки, принадлежащие s,,симметричны точкам, принадлежащим s относительно центра. отрезка, стягивающего начало: и конец s" (s ) (фиг.2 и 3)> сплайны s и з ., где изображены сплайны более сложной формы, чем отрезок кубической параболы, — отрезки полиномов шестой степени, а под тактом j понимается число импульсов, пришедшее на счетный вход счетчика 7 . с момента начала данного шага i программы.
На шагах программы i с г„=1 переход на шаг i+1 происходит по приходу
04 4 б выполняются .для любого Су, где
О (C„ < С, т.е. любого момента вре— мени t (любого такта j, фиг.3) в течение участка аппроксимации (шага программы) i (фиг.2), Для сплайна S {и для любого сплай" на, определенного последовательностью нулей и единиц, число единиц в соответствующей ему последовательности 5 определяет приращение ординаты за участок (АК, фиг.2 и 3), -1 а число нулей в S определяет ВК=АВАК, где А — приращение ординаты для сплайна, у которого в определяющей последовательности все единицы. Оче° . видно, что для каждого на участке (т.е. для каждой вертикали, восстановленной из этой точки) разность ординат точки на s" и на линии НА равна числу единиц, а разность ординат точки на линии НВ и точки íà s — числу нулей в той части последовательности s которая считана от момента начала учас а ка 1. То же справедливо идля s ..Для вертикали АВ выполняются равенства: л е +и =е +н
=н» =е5
У
АВ ВК . А — АК .
АВ
ВК
С
АК
ПК
Аналогично для вертикали, восстановленной из произвольной точки отрезка НА (для любого t), разность ординат точки на s» и точки на НП равна разности ординат той же точки на НП и точки íà s где
НП вЂ” отрезок, соединяющий начало сплайна s" (совпадает с началом сплайна s ) и середину вертикали, восстановленной из точки, ордината которой равна ординате начала сплайна, а абсцисса — абсциссе конца сплайна, причем длина вертикали равна С (числу бит в последовательности, определяющей s").
+н"=е +н =С;
В еЪ е»
45 где е" и н» со о тв е тс твенно число единиц и нулей в по» следовательности s соответственно число единиц и нулей в по-Ф следовательности s — число бит в последовательности (столбцов в строке блока 10). что равенства е1 +н„=С„ ; н =е4
Отсюда вывод: .для любого сплайна з4,.определенного последовательностью нулей и единиц s существует однозначно определенный сплайн s, "3 определяющая последовательность s которого получена путем инвертирования состояния каждого бита в последовательности s,,причем s и s свя4 4 Ь заны соотношением и н
50
Оче е"
3 е » видно, + н.
»
С 4
2
3 12397 на вход счетчика 3 импульса с выхода переполнения счетчика 7 (при этом в блоке 10 памяти адресован последний столбец), а на шагах i с rg=0 переход на шаг i+1 осуществляется по приходу на вход счетчика 3 импульса с выхода обнуления счетчика 7 (при этом в блоке 10 памяти адресован нулевой столбец 1, что обеспечивается работой коммутатора 13, который подключает к 10 входу счетчика 3 либо выход переполнения счетчика 7 (при r, =1), либо выход обнуления счетчика 7 (при г =О)
В ходе воспроизведения сложной зависимости (фиг.4) при изменении г„ с
1 на О последовательность номеров ад— ресованных столбцов блока 10 памяти следующая (например при числе столбцов C=32 :, 30,31,30..., а при изменении r с О на 1 — ...1,0 1 20
Если на соседних шагах программы г„- =0, то последовательность номеров адресованных столбцов блока 10 памяти следующая: ....2,1,0,21,30.... Таким образом, сплайн s может быть 25 а воспроизведен на любом шаге программы независимо от значения r„ на предыдущих шагах.
При г„ =1 и и 0 на второй вход элемента И 8 поступает последователь- З0
-3 ность s полученная инвертированием состояния каждого бита в последо» вательности s,,так как при u„=Î состояние выхода элемента НЕ 15 и состояние выхода коммутатора 14 одинаковы (состояние выхода коммутатора 14 повторяет состояние выхода элемента НЕ 15). При этом воспроизводится сплайн s, отличный от s и я (фиг.2). Вид сплайна s может 40 .быть определен следующим образом. Для .s и s выполняются равенства
1239704 где s — функция от, определенная
s и значениями р„, К;;
С вЂ” число бит в последователь— « ности s 5 время, начиная с момента начала шага
При г„. =0 и и;=0 предлагаемыи ЦГФ воспроизводит сплайн s" (фиг.2), у ко— торого определяющая последовательность 10 я " получена из последовательности я путем инвертирования состояния ее
Ф каждого бита, либо (что то же само е)
-з из последовательности s путем изме — . нения начала и направления ее считы- 15 вания (т.е. реверса последовательности), потому что существует взаимно .« однозначное соответствие между s
-2 — 3
s, s u s (и, следовательно, I между s,,s, s s «, определен- 20 ными этими по следовательно стями) .
При р,.=0 каждому из сплайнов s, s, s и s«соответствует симметричный относительно линии НЛ сплайн„ соответственно я,. яя, я и я8 (фиг.2) который определен той же последовательностью нулей и единиц, но на этом ша"e программы выходной реверсивный, c «- ò÷T«ê 5 работает в режиме вычита «Нр
Па фиг.5 более детально показано 30 л формирование четырех сплайнов s„, s,,«« я и s на основе хранящеися в блоке
10 памяти одной строки с последовательностью s,Я".
Таким образом, на любом шаге программы при выбранной по номеру N, строке блока )О с заранее занесен ной з нее последовательностью нулей и единиц (например, s ) предпагаемый ЦГФ способен воспроизводить
Q один из восьми слпайнов, который апредслен набором r, в„ и р (таблица на фиг.2). изобретения
crормула
Цифровой генератор функций, содерх:ащий генератор импульсов, делитель частоты, счетчик, два реверсивных счетчика, два блока памяти, два элемента И, причем выход генератора импульсов подключен к информационному входу делителя частоты, выход которого подключен к информационному входу первого реверсивного счетчи55 ка и первому входу первого элемента И, выход которого подключен к счетному входу второго реверсивного счетчика, тактовый вход которого подключен к выходу второго элемента И, выходы разрядов первого реверсивного счетчика подключены к группе старших разрядов адресного входа первого блока памяти,к группе младших разря= дов адресного входа- которого подключены выходы разрядов поля адреса перезаписи второго блока памяти, выход разряда поля коэффициента деления которого подключен к управляющему входу делителя частоты, выход второго
-,ýåâeðñûâíîã0 счетчика. подключен к ад— ресному входу второго блока памяти, выход поля данных которого подключен . к информационному входу второго реверсивного счетчика, вход управления реверсом которого .подключен к выходу разряда поля управления приращением функции второго блока памяти, выход .разряда поля управления записью второго реверсивного счетчика которо-о по ",.=;лючен к первому входу второго элемен..а И, выход второго реверсивного счетчика подключен к выходу генератора, отличающийся тем, что, с целью увеличения числа воспроизводимых сплайнов при заданном объеме памяти,в него- введены два коммутатора и элемент НЕ, причем первый и второй информационный входы первого коммутатора подключены к выходу переполнения и выходу обнуления первого счетчика соответственно, вы— ход. перво î коммутатора подключен к, первому входу второго элемента И и информационному входу второго реверсивного счетчика, выход разряда поля управления адресацией второго блока памяти подключен к входу управления направлением счета первого реверсивного счетчика и управляющим входам первого коммутатора, выход первого реверсивного блока памяти подключен к первому информационному и через элемент HE к второму информационному входам второго коммутатора, управляющий вход которого подключен к выходу разряда поля управления полярностью сигнала второго блока памяти> выход второго коммутатора подключен о к второму входу первого элемента И.
1239704 с1
< . ОООООООО10011011 01 t t t t r t (t t t t t r t
- Р: 11111t 11111 11ПОЮт 01100100000000.
g>: 1t 11 f 1 t 1911001001000000000000000
ООООООООООООЮО1001601101 f f f f f f f ,. Фиай
1239704 (гакт1
01 f! t 060000000006 6600 t0 f f0
0 0 6 0 6 0 O 6 0 6 6 0 0 6 0 t 1 1 1 6 1 0 0 000
106661111111ff f f f f ft 101001
111 1 t11 11 » t 11: 1161611111 .. Фи@.J з ;60 06 6 f
Ф01 f 010
Р:111 f10 й,:100» t
z 9 5 б 71 8I
Р О О (1 g O 1 0
О 1 С В g б 1 1 i 0 О 1 t О.O
Ф .9
Составител" С Курош
Техред Л. Олейник
Редактор Е.Папп
Корректор О. Луговая
Заказ 3397/49 Тираж 671
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113835, Москва, Ж-35, Раушская наб., д. 4/5
Подпи сно е
Производственно-полиграфическое предприятие, г.ужгород,,ул.Проектная,, 4