Цифровой генератор функций
Изобретение относится к вычислительной технике и предназначено для формирования кода нормирующей функции и кодов синуса, косинуса и арктангенса. Цель изобретения - повышение быстродействия цифрового генератора функций. Цифровой генератор функций содержит первый 1 и второй 2 сумматоры, умножитель 3, первый блок 4 памяти, блок 5 элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, элемент НЕ 6, первый управляющий вход 7, кодовый вход 8 адреса задания константы, первый коммутатор 9, первый элемент И 11 и входы первого 19 и второго 20 разрядов кода операций, вход - выход 10 данных, элементы И 12 - 15, второй блок 16 памяти, второй 17 и третий 18 коммутаторы, первый 21 и второй 22 элементы ИСКЛЮЧАЮЩЕЕ ИЛИ, регистр 23, элемент ИЛИ 24, блок 25 элементов ИЛИ, второй управляющий вход 26 и тактовый вход 27. Цель достигается за счет введения элементов И 12 - 15, блока 16 памяти, коммутаторов 17 и 18, элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 21 и 22, регистра 23, элемента ИЛИ 24, блока 25 элементов ИЛИ. 2 ил.
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (я)5 G 06 F 1/02
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ
ПРИ ГКНТ СССР
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4687559/24 (22) 21.03.89 (46) 15.07.91, Бюл. ¹ 26 (72) Е.Ф.Киселев (53) 681.325 (088.8) (56) Авторское свидетельство СССР
¹ 1337895, кл, G 06 F t/02, 1986.
Авторское свидетельство СССР № 1374964, кл. G 06 F 1/02, 1986.!
Ж,, 1663607 A l (54) ЦИФРОВОЙ ГЕНЕРАТОР ФУНКЦИЙ (57) Изобретение относится к вычислительной технике и предназначено для формирования када нормирующей функции и кодов синуса, косинуса и арктангенса. Цель изобретения — повышение быстродействия цифрового генератора функций. Цифровой генератор функций содержит первый 1 и
1663607
45 второй 2 сумматоры, умножитель 3, первый блок 4 памяти, блок 5 элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, элемент НЕ 6, первый управляющий вход 7, кодовый вход 8 адреса задания константы, первый коммутатор 9, первый элемент И 11 и входы первого 19 и второго 20 разрядов кода операций, вход— выход 10 данных, элементы И 12 — 15, второй блок 16 памяти, второй 17 и третий 18
Изобретение относится к вычислительной технике и предназначено для формирования (2+и)-разрядного кода нормирующей функции по коду адреса, (1+и)-разрядного прямого кода синуса или косинуса по (2+n)разрядному коду угла, изменяющегося от 0 до 2 л (1-2 ") радиан, и и-разрядного кода арктангенса по и-разрядному коду аргумента E (0, (1-2 ")), где n — разрядность приведенного кода угла или аргумента арктангенса, и может быть использовано при построении специализированного микропроцессорного вычислителя (CMB), например, для устройства отображения информации метеорадиолокатора, Цель изобретения — повышение быстродействия и сокращение аппаратурных затрат цифрового генератора фукнций, На фиг. 1 приведена структурная схема цифрового генератора функций; на фиг.2— временные диаграммы сигналов на тактовом входе, на втором управляющем входе, на первом управляющем входе генератора и на выходе элемента ИЛИ.
Генерато (фиг, 1) содержит первый 1 и второй 2 сумматоры, умножитель 3, первый блок4 памяти, блок5 элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, элемент НЕ 6, первый управляющий вход 7, адресный кодовый вход 8 задания константы, первый коммутатор 9, кодовый вход-выход 10, первый 11, второй
12, третий 13, четвертый 14 и пятый 15 элементы И, второй блок 16 памяти, второй 17 и третий 18 коммутаторы, вход 19 первого и вход 20 второго разрядов кода операции, первый 21 и второй 22 элементы ИСКЛЮЧАЮЩЕЕ ИЛИ, регистр 23, элемент ИЛИ 24, блок 25 элементов ИЛИ, второй управляющий вход 26, тактовый вход 27, кодовые выходы 28 и 29, образованные разрядными выходами старших и младших разрядов сумматора 2 соответственно, и кодовый выход 30, первый 31, второй 32 и третий 33 выходы регистра 23.
Обозначим на входах и выходах генератора и его узлов через П, Ф и Й соответсткоммутаторы, первый 21 и второй 22 элементы ИСКЛЮЧАЮЩЕЕ ИЛИ, регистр 23, элемент ИЛИ 24, блок 25 элементов ИЛИ, второй управляющий вход 26 и тактовый вход 27. Цель достигается за счет введения элементов И 12-15, блока 16 памяти, коммутаторов 17 и 18, элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 21 и 22, регистра 23, элемента
ИЛИ 24 и блока 25 элементов ИЛИ. 2 ил. венно потенциальные сигналы, коды и инверсные импульсы так, что после каждой из этих букв стоит номер входа генератора, например П7, Ф8 и И27 означают сигнал "О" или "1" на входе 7, код на входе 8 и инверсные импульсы на входе 27 соответственно, или номер узла генератора, например П1, Ф9 и И24 означают потенциальные сигналы на выходе переполнения сумматора 1, код на кодовом выходе коммутатора 9 и инверсный импульс на выходе элемента 24 соответственно, Кроме того, обозначим через Ф28 =
П19Ф28 код на втором кодовом входе коммутатора 9 и первом кодовом входе коммутатора 17, Ф17 = П13Ф17- код на адресном кодовом входе блока 16 памяти, Ф30"=
П13Ф30 — код на адресном кодовом входе блока 4 памяти, Фнф = Ф4Ф16 код нормирующей функции на первом кодовом входе коммутатора 18 (где Ф16 "означает код, образованный соответствующими двумя разрядами кода Ф16), Фтф = П322П32Ф1 — код, тригонометрической функции на втором кодовом входе коммутатора 18, (Р1) и (Р2)— содержимое (код) первого и второго регистров Р1 и Р2 сомножителей ИС 1802ВРЗ умножителя 3, а инверсный код произведения на выходе умножителя 3 обозначим через
ФЗ = Ф.„((P 1 3 . (Р 2 ) ) {1) где Фокр — оператор операции усечения с округлением до восьми разрядов 16-разрядного кода ((Р1) (Р2)).
Загрузка регистра 23 и регистров Р1 и
Р2 умножителя 3 осуществляется по положительному фронту каждого И24, а временные программы поступления на генератор управляющих сигналов П7, П19, П20 (Фоп =.
П19П20 — код операции), П26 и й27 определяют функционирование генератора во времени так, что в его работе можно выделить следующие три режима (фиг, 2):
1. Режим хранения при П7 = П26 = 1 длительностью Т1 = К1 Т, где К1 = О, 1, 2, 1663607 л
Л
50 а=(к/2) .а=(ж/2) .g а 2
1= — 1
Л пр =,, й2
} =1
55 (3) n <.л одоп =. пр
15 П 14 =
Опри П 19 =1, П 15 =
О при П 19 =1, 25
30 (6) 35 где So и Со — разрядные цифры знаковых разрядов прямых кодов синуса и косинуса
40 угла а соответственно;
Ф10* — код, образованный п младшими разрядами кода Ф10.
При П11 = О код Ф2 является кодом аргумента арктангенса
Ф2 =щф=(Щф)уп+
Р) Ф 10 = так что связь между кодом 8 и углом а 45 характеризуется выражениями:
3, ...; Тп — длительность периода частоты следования тактовых импульсов И27;
2. Режим загрузки при П7 = 1, П26 = О длительностью Т2 = Тти, 3, Режим выдачи результата при П7 = О, П26 = 1 длительностью T3 = K3 Тт, где КЗ =
1,2,3, ..., Чередование режимов работы генератора (т.е. взаимосинхронизация его входных сигналов и кодов и выдача результата на вход-выход 10) обеспечивается микропроцессором и схемой синхронизации и начальной установки СМВ, в котором данный генератор используется, Принципы чередования режимов работы генератора заключаются в том, что после режима загрузки может следовать режим выдачи результата или режим хранения, после режима хранения может следовать режим загрузки или режим выдачи результата, а после режима выдачи результата может следовать любой из режимов (фиг, 2), Генератор работает следующим образом.
B течение Т1 П7 = П26 = 1 в памяти генератора (т.е. в регистре 23 и регистрах Р1 и Р2 ИС 1802 B Ð3 умножителя 3) содержится информация, обусловленная предысторией его работы, кодовый выход коммутатора 18 находится в третьем состоянии при П701, коммутатор 17 вырабатывает код Ф17 = ФЗО при П26 = 1, а на адресном кодовом входе 8 (шине адреса) и кодовом входе-выходе 10 (шинеданных) формируются коды в соответствии с программами функционирования
СМ В.
В течение Т2 П7 = 1, П26 = О кодовый выход коммутатора 18 находится в третьем состоянии, по отрицательному фронту сигнала П26 = О на входах 19 и 20 устанавливаются сигналы кода Фоп = П19П20, элемент
11 вырабатывает сигнал П11 = П19 П20, при
П11 = 1 на входе 8 устанавливается код Ф8 адреса задания константы, а при П11 = О на входе-выходе 10 устанавливается код Ф10 аргумента тригонометрической функции (синуса и ри П19 = О, П20 = О, косинуса и ри
П19 = О, П20 = О, арктангенса при П19 = 1, П20 = О) в соответствии с выражением и — 14
О <а «<(4 — 2 при Я 19 =O; м
О tg j9 «» (1 — 2 ) при П 19 = 1, П 20 = О (2) где а i- разуядная цифра (О или 1) 1-го разряда кода а и ри i = -1,0,1,2,..., и; и а пр — код, образованный и младшими л разрядами кода а и определяющий прямой приведенный угол а пр = (л/2 ) апр, а доп — код, определяющий дополнительной до к/2 приведенный угол адоп, т,е. апр + адо„—— л /2;
I — (2+и)-разрядный код единицы в модифицированном дополнительном коде.
В такте Т2 по окончании переходных процессов элемент 13 вырабатывает сигнал
П13 = П26 П31 = О, элементы 14 и 15— сигналы: ао при П 19 = О, П 20 = О; ао при П 19 = О, П 20 = 1; (4) S, =а-1при П19 =О, П20 =О;. (5)
Со = а-1 + а, при П 19 = О, П 2О =1; а сумматор 2, блок 5 и коммутаторы 9 и 17 вырабатывают коды:
Ф 2 = Ф 5 + 0... ОП 14 = П2Ф28Ф29;
Ф 5 = П 14 Ф 10* П 14 е 10 *;
Ф9=П11 Ф28 ЧП11 Ф8;
Ф 17 =Ф28
+ (19P) ап = Ф 28 + Ф 29, 1663607
r л
=7yn +) ап (8) ФЗОтз = Ф9т2;
П31тз = П11т2;
П32тз = П15т2;
ПЗЗтз = П2т2, 10 (13) а при П19 = Π— кодом приведенного угла л л,1
Ф 2 = П 14 Qnp v П 14 Qpon = } = при переполнении которого вырабатывается сигнал П2 = 1, а при П2 = О }7уп = Ф28,) ап
= Ф29 (индексы уп и ап указывают на управляющую и аппроксимирующую части кодов л л аргументов ig j9 и у соответственно), В течение Т2 генератор активизируется при П11 = 1 на воспроизведение кода Фнф нормирующей функции, а при П11 = Π— на воспроизведение тригонометрической функции
Фф — — П19 (П20 sin a (9) чП 20 сов а) П 19 агс tgp, Вычисление кода (9) осуществляется методом, кусочно-линей ной а и и рокси ма ции так, что при П19 = О аппроксимация производится по синусной функции в угле от О до X/2 радиан, а при П19 = 1 — по функции арктангенса в области изменения аргумента от О до 1, причем в каждом случае число .участников аппроксимации равно 2, вели7 чина каждого участка равна
Ф
Л=(П19.л/2 П 19) 2, (10) а угловая точка выбрана в начале каждого участка аппроксимации. Поэтому по окончании переходного процесса на входах умножителя 3 вырабатываются (при П11 = 0) код аппроксимирующей части аргумента
Ф 29 = П 19 ап П 19 (tg P ) ап (11) и код приращения функции на участке аппроксимации
Ф 16 = П 19 (sin pn + Л) — sin уп ) (12) vfl 19 . ((щ ф) yn — (tg P) уп ), где (ig *P ) yn — ф 28 + 2 — значение аргумента в конце участка аппроксимации арктангенса.
По окончании переходных процессов на генератор приходит И27 и формируется И24
= П26 И27 = О, по положительному фронту которого в регистры Р1 и Р2 умножителя 3 заносятся коды Ф16 и Ф29, а в регистр 23код Ф9 и сигналы П11, П15 и П2 (при П2 = 1 отмечается вычисление кода синуса для у =,7г/2 ) . На этом режим загрузки заканчивается и начинается режим выдачи.
В течение ТЗ через время задержки Tzs
= 30 нс регистра 23 на выходах регистра 23 формируется код ФЗО и сигналы в соответствии с выражениями: где в правых частях стоят код Ф9 и сигналы
П11, П15 и П2 с индексом Т2. т.е, сформированные в режиме загрузки.
С помощью сигналов и кода элемент 13 вырабатывает сигнал П13 = П31, блок 25— код
Ф25 = ll33 ФЗ ПЗЗ (1.„1), (14) блок 4 при П13 = Π— код значения тригонометрической функции в узле аппроксимации, сумматор 1 при П13 = Π— код модуля тригонометрической функции (знак этой функции определен сигналом П32, выработанным в Т3 по сигналу(5) периода Т2), а при
П13 = 1 блоки 4 и 16 вырабатывают код Фнф
30 нормирующей функции, При П13 = 0 и ПЗЗ =- 1 сумматор 1 вырабатывает код Ф1 =- 1-2, соответствующий
-14 синусу угла я/2
В Т3 по окончании переходных процес- ., 35 сов на генератор поступает очередной И 27> по которому (т,е, по П27 П7 = О) результат функционирования генератора
Ф10 = Ф18 = П13 Фтф П13 Фнф, (15) выдаваемый (при П7 = О) коммутатором 18
40 на вход-выход 10, может быть загружен в память любого устройства СМВ. В дальнейшем работа генератора во времени определяется также программой функционирования СМВ.
Формула изобретения
Цифровой генератор функций, содержащий два сумматора, умножитель, блок памяти, блок элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, . элемент НЕ, первый коммутатор, элемент И, причем вход переноса первого сумматора и вход первого слагаемого второго сумматора подключены к входу логического нуля генератора, вход второго слагаемого которого подключен к выходу блока элементов ИСК55 ЛЮЧАЮЩЕЕ ИЛИ, первый информационный вход первого коммутатора подключен к входу адреса задания константы генератора, отличающийся тем, что, с целью повышения быстродействия, в него введены
1663607
10 четыре элемента И, блок памяти, два коммутатора, два элемента ИСКЛЮЧАЮЩЕЕ
ИЛИ, регистр, элемент ИЛИ, причем тактовых вход генератора подключен к первому входу элемента ИЛИ, выход которого под- 5 ключен к входам синхронизации регистра и умножителя, вход первого разряда кода операции генератора подключен к входу элемента НЕ, первому входу первого элемента И и к старшим разрядам второго вхо- 10 да первого и первого входа второго коммутаторов, вход второго разряда кода операции генератора подключен к первым входам второго элемента И, первого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ и второму 15 входу первого элемента И, выходы старших разрядов второго сумматора подключены к младшим разрядам второго входа первого и младшим разрядам первого входа второго коммутаторов, первый управляющий вход 20 генератора подключен к входу выбора третьего коммутатора, выход которого подключен к информационному входу-выходу генератора, первый и второй старшие разряды которого подключены к первому входу 25 второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ и к вторым входам второго элемента И и первого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соответственно, младшие разряды информационного входа-выхода генератора подклю- 30 чены к разрядному входу блока элементов
ИСКЛЮЧАЮЩЕЕ ИЛИ, второй управляющий вход генератора подключен к управляющему входу, второго коммутатора, второму входу элемента ИЛИ и первому входу треть- 35
его элемента И, выход которого подключен к старшим разрядам входов адреса первого и второго блоков памяти, выходы первого и второго элементов ИСКЛЮЧАЮЩЕЕ ИЛИ подключены к первым входам четвертого и 40 пятого элементов И соответственно, вторые входы которых подключены к выходу элемента НЕ, выход четвертого элемента И подключен к входу переноса второго сумматора и управляющим входам блока элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, выход первого коммутатора подключен к информецинному входу регистра, выход которого подключен к второму входу второго регистра и к младшим разрядам входа адреса первого блока памяти, выход первого элемента И подключен к управляющему входу первого коммутатора и через регистр к второму входу третьего элемента И и управляющему входу третьего коммутатора, выход второго коммутатора подключен к младшим разрядам входа адреса второго блока памяти, выход первого блока памяти подключен к первому входу третьего коммутатора и входу первого слагаемого первого сумматора, выход второго блока памяти подключен к входу первого сомножителя умножителя и к соответствующим разрядам первого входа третьего коммутатора, выход пятого элемента И через регистр подключен к двум старшим разрядам второго входа третьего коммутатора, младшие разряды которого подключены к выходу первого сумматора, выход переполнения второго сумматора через регистр подключен к старшим разрядам входа второго слагаемого первого сумматора и управляющему входу блока элементов
ИЛИ, выход которого подключен к младшим разрядам второго слагаемого первого сумматора, вход блока элементов ИЛИ подключен к выходу умножителя, вход второго сомножителя — к выходу младших разрядов второго сумматора, выход второго элемента
И вЂ” к второму входу второго элемента ИСКЛЮЧАЮЩЕЕ ИЛИ.
1663607
9рО6ЕНЬ ЛОГИЧЕСКОГО "О" г ЧрОВЕНЬ ЛОГИЧЕС Ой
I !
ИЕ7 па&
Т3
ТР
Т3 тз
Т тг
Фт. 2
Редактор А.Лежнина
Корректор Э Лончакова
Заказ 2266 Тираж 394 Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ. СССР
113035, Москва, Ж-35, Раушская наб„4/5
Производственно-издательский комбинат "Патент", г, Ужгород, ул.Гагарина, 101
1 Тти
1
Составитель С.Курош
Техред M.Ìoðãåíòàë
I





