Формирователь адреса

 

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

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

РЕСПУБЛИК (19) (11) 3(511 G .06...F. 9/36.

ОПИСАНИЕ ИЗОБРЕТЕНИЯ;

Х АВТОРСХОМУ СВИДЕТЕЛЬСТВУ (21) .3470504/18-24 (22) 24. 06.82 (46 ) 23. 12. 83. Бюл. Р 47 (72) A.Т. Клышбаев (53) 681.325(088.8) - ГОСУДАРСТВЕННЬЙ КОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (56) 1 ° Авторское свидетельство СССР

9 548863, кл. G 06 F 15/34, 1976.

2 ° Авторское свидетельство СССР по заявке Р 3370103/18-24, кл. G 06 F 9/36, 1981 (прототип). (54)(57) ФОРМИРОВАТЕЛЬ -АДРЕСА, содержащий счетчик адреса, счетчик итерации, два коммутатора и блок элементов "Исключающее ИЛИ", первый вход которого подсоединен к первому выходу счетчика адреса, первый и вто; рой выходы которого подсоединены к информационному входу первого коммутатора, адресный вход которого под:соединен к выходу счетчика итера,ции, а его выход подсоединен к управляющему входу второго коммутатора, входы и выходы которого являются соответственно входами и выходами данных. формирователя, .о тл и ч а ю шийся тем, что, с целью расширения функциональных возможностей за счет. осуществления муль ,типлексирования адресов, он допол-. нительно содержит постоянное запоминающее устройство, два коммутатора, два элемента ИЛИ, формирователь импульсов, демультинлексор и дополнительный счетчик, причем первый и второй выходы;счетчика адраса соединены с первым и вторым входами первого дополнительного коммутатора, выход которого является первым выхо дом старших разрядов адреса формиро вателя и соединен с вторым входом блока элементов "Исключающее ИЛИ"„ первый выход которого является вторым выходом старших разрядов адреса

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

ИЛИ заведен на счетный вход дополнительного счетчика и на информационный вход второго дополнительного коммутатора, выход которого соединен со счетным входом счетчика адреса, выход переполнения которого соединен с первым входом демультиплексора, второй вход которого соединен с третьим входом режима формирователя, первый и второй выходы демультиплексора соединены соответственно с инкрементным и декрементным входами счетчика итерации, первый вход вто1062703 рого элемента ИЛИ соединен с первым разрядом группы выходов дополнительно счетчика, второй вход второго элемента ИЛИ вЂ” с вторым входом режима формирователя, а выход соединен

Изобретение относится к вычислительной технике, в частности к специализированным вычислительным сред- ствам, которые предназначены для спектрального анализа. 5

Известен блок формирования адресов для устройства, реализующего быстрое преобразование Фурье, содержащий счетчик для формирования адреса верхнего ряда и узел выдачи адресов $1) .

Недостатком этого устройства является отсутствие средств для мульти плексирования адресов, что существенно ограничивает выбор элементной базы ОЗУ устройств, на которые работает это устройство.

Наиболее близким по технической сущности к изобретению является устройство для формирования адресов, содержащее счетчик адреса, счетчик итерации (счетчик шага преобразования), группу элементов "Исключающее

ИЛИ", первый коммутатор„ второй коммутатор, причем адресный вход первого коммутатора соединен с выходом 25 счетчика итерации, а информационный вход коммутатора соединен с выходом счетчика. Выход первого коммутатора соединен с адресным входом второго коммутатора. Кроме того, выхо- 30 ды счетчика адреса и группы элементов Исключающее ИЛИ являются выходами устройства (2) .

Недостатком известного устройства является то, что оно не позволя- 35 ет формирование адресов в случае работы блока на память с мультиплекси руемым адресом, т.е. когда полный адрес состоит из двух равных частей и они подаются на память по одним и тем же адресным шинам последовательно один за другим. Кроме того, блок этот не применим и в том случае, когда необходимо формировать адреса для одного блока памяти, т.е. когда и верхние и нижние адреса не- 45 обходимо формировать на одной адрес-. ной шине, Цель изобретения - расширение

ФункциОналъных воэмОжнОстей устрой ства за счет осуществления мульти - 50 плексирования адресов.

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

"Исключающее ИЛИ", первый и второй выходы блока элементов "Исключающее

HJIH" соединены с первым и вторым входами данных счетчика адреса, третий и четвертый входы блока элементов "Исключающее ИЛИ" соединены с соответствующими выходами постоянного. запоминающего -устройства, вход итераций которого соединен с выходом счетчика итераций, группа управляющих входов IIocTQHHHGI0 запоминающего устройства соединена с группой выходов дополнительного счетчика и с группой информационных вхо.— дов второго дополнительного коммутатора, первый и второй адресные входы которого соединены соответственно с первым и вторым входами режима формирователя и с первым и вторым адресными входами постоянного запоминающего устройства, первый вход режима формирователя соединен с первым входом формирователя импульсов, второй вход которого соединен с вы1062703 мультиплексированием, генерирование адресов на два адресных выхода (18 и 19), (20 и 21) без мультиплексирования, генерирование адресов на. два адресных выхода (19 и 21) с муль типлексированием. При этом сначала расмотрим устройство .для генериро1 вания адресов для прямого преобразования, затем для цифроинверсного варианта (фиг. 3) .

О При выполнении первой функции на входах 15 — 17 должны быть установлены единицы. Единица на входе

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

Единица на 16 входе открывает формирователь 11 импульса и совместно с единицей на 17 входе открывает чет.вертый канал коммутатора 13. Кроме того, единица на входе 17 блокирует элемент ИЛИ .8, т.е. на выходе этого элемента всегда "1", которая в коммутаторе 7 держит в открытом положении второй канал, что обеспечивает подачу на второй вход вто-рой половины элементов "Исключающее

ИЛИ" 6 значения старшей половины счетчика 1, а значение младшей половины счетчика непосредственно подано на второй вход первой половины элементов "Исключающее ИЛИ". Следо— вательно, адрес на выходах 18 и 19 зависит от того, что подано на пер- „ вые входы элементов "Исключающее ИЛИ.

При подаче на первый вход этих элементов нулей на их выходе установится адрес верхнего ряда, а если подать унитарный код номера итерации, то на выходах 18 и 19 сформируется адрес нижнего ряда. Именно на этом основании возможно генерирование адресов верхнего и нижнего ряда на одном адресном выходе. "Прошивка" ПЗУ 5 составлена так, что при единицах на входах 16 и 17 выбор нулевых содержимых или унитарного кода текущей итерации управляется выходом счетчика 3 °

Рассмотрим в динамике генерацию .адресов для одной базовой итерации.

Пусть это для определенности будет вторая базовая операция на третьей итерации. Тогда двоичное представление цифры "2" с выхода счетчика 1 подается на элементы "Исключающее

ИЛИ", так как при этом счетчик 3 имеет нулевое значение. То из ПЗУ 5 выбирается содержимое ячейки по адресу 101100.

В таблице приведена "Прошивка"ПЗУ. из таблицы находим, что содерб5 ходом первого коммутатора, а выход подсоединен к входу установки счетчика адреса и к первому входу первого элемента ИЛИ, второй вход которого подсоединен к тактирующему входу формирователя, выход первого элемента ИЛИ заведен на счетный вход

-pohozHHTeax Horo счетчика и на информационный вход второго дополнительного коммутатора, выход которого соединен со счетным входом счетчика адреса, выход переполнения которого соединен с первым .входом демультиплексора, второй вход которого соединен с третьим входом режима формирователя, первый и второй выходы 15 демультиплексора соединены соответственно с инкрементным и декрементным входами счетчика итерации, первый вход второго элемента ИЛИ соединен с первым разрядом группы выходов дополнительного счетчика, второй вход второго элемента ИЛИ вЂ” с вторым входом режима формирователя, а выход соединен с третьим входом первого дополнительного коммутато- ра, первый выход счетчика адреса Р является адресным выходом формирователя.

На фиг. 1 приведена блок †схе устройства, на фиг. 2 — прямой граф алгоритма быстрого преобразования Уолша, на фиг. 3 — цифроинверсный граф этого алгоритма, на фиг. 4 — элементарная (базовая) or ерация преобразования, на фиг. 5 временная диаграмма управляющего 35 сигнала, снимаемого с формирователя импульсов," на фиг. 6 - приведен граф алгоритма преобразования Уолша при параллельном генерирования адресов. 40

Формирователь адреса содержит счетчик 1 адреса, счетчик 2 итера,ции, дополнительный счетчик 3, демультиплексор 4, постоянное запоминающее устройство (ПЗУ) 5, блок 6 45 элементов "Исключающее ИЛИ", первый дополнительный коммутатор 7., второй элемент ИЛИ 8, первый коммутатор 9, второй коммутатор 10, формирователь

11 импульсов, первый элемент ИЛИ 12, 50 второй дополнительный коммутатор 13, тактирующий вход 14 устройства, вход 15 режима (признака варианта), входы 16 и 17 режима (признаков функции) устройства, выходы 18-21 выдачи адресов, входы 22 и 23 потока данных, выходы 24 и 25 потока данных.

Работу устройства рассмотрим в следующей последовательности, генерибО рование адресов верхнего и нижнего ряда на один адресный выход (18 и 19) беэ мультиплексирования, генерирование адресов верхнего и нижнего ряда в один адресный выход (19) с жимое равно 000, следовательно верхний адрес равен 0010. IIo следующему такту по входу 14 сигнал через элемент ИЛИ 12 поступает на счет1062703 ный вход счетчика и наращивает на единицу. A это в свою очередь влечет изменение адреса ячейки ПЗУ 5 которое будет 101101. Содержимое

100, а следовательно адрес нижнего ряда будет 1000» 010 = 110.

Как видно иэ графа фиг. 2, именно такой адрес у операнда нижнего .ряда.

При следующих двух тактовых импульсах по входу 14 легко увидеть, что адреса повторяются. Это необходимо для загрузки результатов базовой оцерации ОЗУ по тем же адресам, по которым осуществляется выбор операн дов. На следуняцем такте второй разряд счетчика 3 инвертируется, задний 15 фронт этого сигнала через коммутатор

13 наращивает счетчик -1 на едийицу, а это соответствует переходу на следующую базовую операцию, и начинается генерация адресов для этой операции.

Если посмотреть на граф на фиг. 2, то можно увидеть, что содержимое счетчика 1 изменяется кусочно-линейно, причем линейная группа адресов т ° е. адреса, которые отлиотличаются от предыдущего на единицу) постоянна на итерации и возрастает в два раза на последующей итерации.

Счетчик 1 необходимо перестраивать на начальный адрес линейной группЫ.

Это осуществляется коммутатором 9.

Из графа видно, что такую перестройку надо производить каждый раз при появлении единицы в разряде счетчика 1, соответствующем номеру ите- 35 рации. Поэтому в силу соединения коммутатора 9 со счетчика 1 и 2 единица на выходе. коммутатора 9 появляется именно в момент перестройки счетчика 1. A суть перестройки 4р заключается в том, что в счетчик 1 заносится адрес нижнего ряда текущей базовой операции и наращивается на "Единицу". Сигнал записи в счетчик 1 по переднему фрбнту еди- 45 ницы на выходе коммутатора 9 формиру ется формирователем 11 импульса, задним фронтом которого через элемент ИЛИ 12 счетчик 1 наращивается на единицу. Дальше устройство работает как описывалось. Признаком конца итерации является сигнал переполнения счетчика 1, который увеличивает на единицу номер итерации на счетчике 2 через демультиплексор 4, а сам обнуляется и возвращается к 55 нулевому адресу следующей итерации.

Рассмотрим вторую фуйкцию устройства, при которой на входе 17 уста" новлено нулевое состояние. Это состояние открывает элемент ИЛИ 8 для 6Q прохождения сигналов по его первому входу, т.е. в зависимости от первого разряда счетчика 3 коммутатор 9 открывает первый или второй канал. У коммутатора 13 открыт третий Канал т.е. счетчик 1 наращивается по пере- полнению третьего разряда счетчика 3. В этой функции ПЗУ 5 при 000 на счетчике 3, как видно из таблицы выставляет на выходе нули, а коммутатор 7 коммутирует первый канал, т.е. на второй вход элементов "Исключающее ИЛИ" 6 подает содержимое младшей половины, следовательно на выходе 19 имеет младшую половину адреса верхнего ряда. Это же состояние у ПЗУ 5 и при 001, а коммутатор

7 коммутирует на вход элементов б старшую половину счетчика 1. Следовательно, на выходе 19 появляется старшая половина адреса верхнего ряда. Но при следующей комбинации

010 ПЗУ 5 выставляет на втором выходе младшую половину унитарного кода и так как с выхода коммутатора снимается младшая половина счетчика

1 ("0" в первом радряде счетчика 3) на выходе 19 формируется младшая половина адреса нижнего ряда и при следующей комбинации 011 — старшая половина, а по первому выходу ПЗУ 5 выставляет младшую половину унитарного кода номера итерации, так же как в предыдущей функции. Следовательно на выходе 18 будут младшие разряды адреса нижнего ряда, а на выходе 19 поочередно появляются младшие и старшие разряды адресов верхнего и нижнего ряда, причем при старших разрядах адреса нижнего ряда на выходе 19 на выходе 18 формируются младшие разряды, что весьма важно. при переустановке счетчика 1.

В остальном работа устройства совпадает с работой при первой функции. устройство выполняет третью фунК цию, когда на входе 16 установлен "О,"

При этом формирователь 11 импульса оказывается заблокированным потому, что при генерировании адресов верхнего и нижнего ряда не возникает необходимости переустановки счетчика

1. У коммутатора 13 открыт первый канал, тактирующие импульсы с входа

14 одновременно подаются на счетчики 1 и 3, сигналом единичного уровня элемент ИЛИ 8 заблокирован так же, как и в первом случае. Поэтому на выходах 20 и 21 в этом случае всегда содержимое счетчика является адресом верхнего ряда„ а адрес нижнего ряда снимается с выходов

18 и 19, причем с выхода 18 - младшие разряды, а с выхода 19 — старшие разряды адреса нижнего ряда.

ПЗУ 5 дешифрирует;номер итерации как 2 -1, где k — номер итерак ции. Отсюда адрес нижнего ряда на элементах б формируется как сумма по Rod 2 текущего адреса верхнего адреса и комбинации 2" -1. Граф для этого случая приведен на фиг.4.

В прямоугольниках, которые располо1062703

Продолжение таблицы

00 01

00 10

01 00

10 00

00 00

01

Х1

11

01

Г

11

00.

00 00

00 ОО

00 00

10

01 . 00

01

10 00

00 00

00 00

00 М

00 10

01 00

10

01

11

10 00

00 01

00 11

01 11

10

11 l1

01 00

11

11 00

11 00

11 00

00

00

00 00 00

01 00 00

10 01 00

11 11 00

01

01

00 ао

00 65

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

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

Поэтому не достаточно только формирования адреса нижнего ряда в виде суммы по op 2 текущего значения адреса верхнего ряда и комбина- 20 ции 2 -1, но еще необходимо управление потоком данных, которое обеспечивается коммутатором 10 управляемым коммутатором 9. Отметим, что в этой функции пРедлагаемое устройст- во работает абсолютно идентично известному.

И наконец, рассмотрим последнюю функцию, которая во многом совпадает с вторым случаем. Различия только в том, что адреса верхнего ряда .снимаются с выхода 21, а нижнего, ряда — с выхода 19. Счетчик 1 адреса наращивает свое содержимое по переполнению счетчика 3. Коммутатор 9 и

10 работают так же, как в третьей 35 функции.

Для цифроинверсных, вариантов (фиг. 3) на входе 15 установлен "О", При этом счетчик 2 работает B декрементном счете (реверсивном). Ñëe- 40 довательно в исходном состоянии в этом варианте счетчик 2 имеет максимальное значения, т.е. 11...1 °

Поэтому генерирование адресов начинается относительно прямого вариан- 45 та с последней итерации, а при переходе на следующую итерацию из счетчика 2 вычитается единица. В остальном нет никаких различий в работе устройства.

Данный формирователь адреса обладает широкими функциональными возможностями, использование его обеспечивает широкий выбор вариантов реа лиэации устройств для быстрого оРтогонального преобразования. 55

106?703

Фиг. 1

1062703

Составитель Г. Пономарева

Редактор Н. Лазаренко Техред Т.Иаточка Корректор В. Бутяга

Заказ 10219/50 Тираж 706 Подлисное

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

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

Филиал ППП "Патент", г. Ужгород, ул. Проектная, 4

Формирователь адреса Формирователь адреса Формирователь адреса Формирователь адреса Формирователь адреса Формирователь адреса Формирователь адреса 

 

Похожие патенты:

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

Изобретение относится к области цифровой вычислительной техники и предназначено для обработки двух или больше компьютерных команд параллельно

Изобретение относится к цифровым компьютерным системам и предназначено для обработки двух и более команд параллельно

Изобретение относится к области сельского хозяйства и предназначено для автоматизации полива

Изобретение относится к информационно-рекламным системам на основе больших экранов (панно), предназначенных для воспроизведения графических, цифровых или видеотелевизионных изображений

Изобретение относится к рекламному делу и может быть использовано в системах визуального воспроизведения дистанционно изменяемой информации преимущественно рекламного характера

Изобретение относится к рекламному делу и может быть использовано в системе визуального воспроизведения дистанционно изменяемой информации преимущественно рекламного характера

Изобретение относится к устройству обработки данных и способу выполнения инструкции по обработке данных

Изобретение относится к вычислительной технике

Изобретение относится к вычислительной технике и может быть использовано в устройствах цифровых вычислительных машин, ориентированных на применение сложных языков программирования
Наверх