Контроллер памяти команд

 

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

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

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

РЕСПУБЛИК

А1

„„SU„„161744 (51) 5 G 06 Р 9/34, 9/22

ОПИСАНИЕ 8306PETEHHR

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ фф

С>

Амза загруз

Признаки

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

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

ПРИ ГКНТ СССР (21) 4615325/24 (22) 01. 12. 88 (46) 30 12.90. Бюл. Ф 48 (71) Московский институт электронной техники (72) В.А.Верстаков, И.А.Лапинский и О.Б.Малежин (53) 68 1.32 (088.8) (56) Авторское свидетельство СССР

11 1129613, кл. G 06 F 9/36, 1983.

Авторское свидетельство СССР

1206781, кл. С 06 Р 8/22, 1984. (54) КОНТРОЛЛЕР ПАМЯТИ КОМАНД (57) Устройство относится к вычислительной технике и может быть использовано в вь сокопроизводительных процессорах. Цель изобретения — по2 вышение быстродействия. Контроллер памяти команд состоит иэ блока памя ти 1, регистра данных 2, регистра адреса 3, ариАметико-логического блока 4, регистра 5, мультиплексора б, а также блока управления, содержащего сдвиговый регистр 7, программируемую логическую матрицу 8, триг гера 9 и 10, элемент задержки 11.

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

161 7440

25

45

55

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

Функциями контроллера памяти команд в процессоре являются выборка команды, часть декодирования, изменение содержимого расположенного в контроллере памяти программного счетчика и некоторые другие.

Цель изобретения — повьппение быстродействия.

На фиг.1 приведена функциональная схема контроллера; на фиг.2 и 3— временные диаграммы его работы.

KoHTpoJIJIep IIQMHTH команд сОстОит из блока 1 памяти команд (М), регистра 2 данных (РД), регистра 3 адреса (РА), арифметико-логического блока (АЛБ) 4, регистра (РГ) 5, мультиплексора (MS) 6, а также блока управления, содержащего сдвиговый регистр (РС) 7. программируемую логическую матрицу (ПЛМ) 8, триггеры

9 и 10 н элемент 11 задержки. Вхо дами устройства являются шины начальной загрузки, пуска, синхронизации (С), многоразрядная шина признаков, которые подаются на блок управления, а также шина адреса, соединенная с четвертыми входами мультиплексора 6.

Выходами контроллера являются многоразрядные шины команды, программного счетчика и синхронизации, подключенные к выходам регистра данных 2, регистра адреса 3, блока управления .соответственно. Выходы блока управления соединены с управляющими входами АЛБ 4, регистра 2 данных, регистра 3 адреса, регистра 5 и адресными входами мультиплексора 6. Все выходы блока управления являются различными выходами ПЛМ 8, при этом сигнал на регистр 2 данных проходит в блоке управления с выхода ПЛМ 8 через эле- мент 11 задержки. Выходы мультиплексора 6 соединены с входами регистра

3 адреса, выходы которого соединены с первыми входами АПБ 4 и с адресными входами блока 1 памяти. Выходы блока 1 памяти соединены с входами регистра 2 данных, выходы которого разделены на поля кода операции, перехода и команды, подключенные соответственно к входам ПЛМ 8 в блоке управления, вторым входам АЛБ 4, первым входам мультиплексора 6 и выходам команды устройства. Выходы

АЛБ 4 соединены с входами регистра

5 и вторыми входами мультиплексора 6, третьи входы которого соединены с вью одами регистра 5. В блоке управления сигнал синхронизации подается на тактовый вход сдвигового регистра 7, сигнал пуска — на входы сброса триггеров 9 и 10 и на вход IIJIM 8, на другие входы ПЛМ 8 поступают сигналы с выходов триггеров 9 и 10, сигнал н«нальной загрузки, а также сигналы выходов сдвигового регистра 7 и шины признаков. В блоке управления различные выходы IIJIM 8 соединены с входом сброса сдвигового регистра 7, так. товыми входами триггеров 9 и 10, информационные входы сдвигового регистра 7 и триггера 9 подключены к уровню "1".

Устройство работает следующим образом.

Начальный адрес выполняемой программы подается йа шину "Адрес" и записывается в регистр адреса 3 сигналом "Начальная загрузка", поступающим на вход IIJIM 8, при этом обеспечивается наличие на адресном входе муль" ,м типлексора 6 адреса, соответствующего шине "Адрес". При подаче на устройство статического сигнала "Пуск" на рыходе IIJIM 8, поступающем на вход сброса сдвигового регистра 7„ появляется разрешающий уровень и сдвиговый регистр 7 начинает выдавать периодическую псследовательность сигналов (фиг.2,3, сигналы РС1-.РС4).

Период этой последовательности определяется временем считывания из блока 1 памяти. Периодический сброс сдвигового регистра осуществляется от одного из его разрядов, определяемого сигналами на входе ПЛМ 8, например, кодом операции, таким образом период сигналов сдвигового регистра может быть переменным, что позволяет менять Iåìï выдачи команд на внешнее устройство. На фиг.2, 3 испсльзованы обозначения:С.PA - сигнал записи в регистр 3 адреса; PA— выходы регистра адреса 3; M — выходы блока памяти 1; С.РД вЂ” сигнал за- писи в регистр 2 данных; РД вЂ” выходы регистра 2 данных; MK.ËËÁ — микрокоманда АЛБ 4; ТГ1 — выход триггера

9; ТГ2 — выход триггера 10; М$— выходы мультиплексора 6; Т.А-Д— время выборки из блока 1 памяти от

5 16 момента попачи адреса до появления данных; Т.PA — время срабатывания регистра 3 адреса; Т.РД вЂ” время срабатывания регистра 2 данных; Т.3 время распространения сигнала через элемент 11 задержки; Т.АЛБ — время срабатывания АЛУ 4; Т HS — время срабатывания мультиплексора 6 от адресных входов до информационных выходов; Т.РС вЂ” время срабатывания сдвигового регистра 7, Т.IIJIM— время распространения сигнала через

ПЛИ 8.

Все управляющие сигналы в устройстве образуются в ПЛИ 8 как комбинация входных сигналов, сигналы с выходов сдвигового регистра 7 используются для стробирования внутри ПГК

8 конъюнкций прямых или инверсных значений всех или части входных сигналов (на фиг.2,3 сдвиг влево на Т.ПЛМ сигналов С,РГ1-РГ4 относительно остальных сигналов не показан).

Пусть счет циклов сдвигового ре-, гистра 7 и команд начинается с нуля.

Во время нулевого цикла, заканчивающегося выдачей нулевой команды, происходит инициализация конвейера. Отличие выполнения этого цикла от остальных заключается в том, что адрес следующей команды выбирается из регистра 5, что обеспечивается сигналом с выхода триггера9,который предварительно сброшен сигналом "Пуск" и взводится по окончании нулевого цикла сдвигов ro регистра 7. На фиг.2 рассмотрен нулевой цикл сдвигового регистра, на фиг.3 — - первый.

Во время выполнения любого цикла

АЛБ 4 выполняет сначала операцию сложения кода на входе, соединенном с выходом регистра 3 адреса, с единицей, затем сигналом со сдвигового регистра 7 (пропущенным через ПЛМ 8 для достижения синфазности) происходит переключение микрокоманды

АЛБ 4 на сложение данных на его входах. Фиксация увеличенного на единицу значения адреса происходит в регистре 5 по фронту сигнала MK,АЛБ

При выполнении первого цикла происходит следующее: на выходе устройства присутствует команда О, происходит выборка из блока 1 памяти команды, при этом "Адрес 1" есть увеличенный на единицу "Адрес О"„ последовательно вычисляются в АЛБ 4

17440 6

5 !

О !

"Адрес 1+1", "Адрес 1 + смещение, где код смещения содержится в поле команд переходов, увелйченное на единиц; значение адреса фиксируется в регистре 5. Сигналы, образующие поле кода операции .в команде, содержащейся в РД2, поступают на входы

ПЛМ 8, дешифрируются за время Т.ПЛМ, после чего на выходах ПЛМ появляются сигналы, переключающие мультиплексор

6. При этом, если код операции соответствует условному переходу, про-. исходит также дешифрация внешних признаков "Условие" (например, выходов регистра состояния центрального процессора). Возможны переходы на коианду со следующим адресом на адрес, передаваемый по внешней шине "Адрес", на команду, смещенную относительно сссодержимого регистра адреса 3 (программного счетчика) или на адрес, заданный в команде. Если переход выполняемый, то из ПЛМ 8 на мультиплексор

6 выдается адрес канала, в котором установлен адрес перехода, запрещается выдача сигнала С.РД, предварительно выбранная команда М1 оказывается ненужной и теряется, сигналом

С.PA в регистре адреса 3 устанавливается адрес перехода, по тому же фронту сигналом из ПЛМ 8 взводится триггер 10. Последнее обеспечивает завершение операции перехода в следующем цикле, а именно: на мул типлексор выдается адрес канала С, к которому подключен регистр 5, таким образом из памяти пс ле команды, на которую совершается переход, начнет предварительно выбираться следующая по порядку команда; разрешается прохождение сигнала С.РД, записывающего команду, на которую совершен переход в РД2, по фронту сбрасывается триггер 10, сигналом С.PA устанавливается новый адрес. При последовательном выполнении расположенных одна за другой команд процессы выборки команды из памяти и подготовки следующего адреса в устройстве происходят параллельно, темп выдачи таких команд Т.К приближается к времени выборки.из памяти Т.А-Д: если

Т.PA <<Т.А-Д, что выполняется, например, при использовании широко распространенных регистра серии 530 и памяти серии 537, то защелкивание считанной команды спедует произво-. дить по тому же фронту управляющего

1617440 сигнала, что и смену содержимого регистра 3 адреса, однако время Т.PA может не входить в Т.К, тогда сигнал С.PA выдается до смены инфор5 мации на выходе блока 1 памяти, точная установка сигнала С.РД, эащелкивающего команду в регистр 2 данных, осуществляется элементом 11 задержки.

11ри этом следует учитывать технологический разброс Т.А-Д, влияние на него температуры окружающей среды, напряжения питания, емкости нагрузки и т.п. Как видно из фиг.3, необходимым условием реализуемости цик- 15 ла такой длительности являются неравенства:

Т.А вЂ,Д 2Т AJIS+T;MS;

Т.А — Д) Т.IUIM+Te MS

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

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

1информационными входами регистра

55 что выполняется дпя распространенных микросхем ТТЛ-серий и основных видов памяти. При операции перехода предварительная подготовка команды, адрес которой содержится в команде перехода, невозможна, поэтому при выполняемом переходе действия совершаются последовательно: выборка команды — дешифрация — подготовка адреса — считывание следующей комайды, и выполняются в устройстве за два цикла Т.К.

В рассмотренном примере триггер 9 представляет собой D-триггер со сбросом, а триггер 10 — Т-триггер со сбросом, сдвиговый регистр 7 имеет 35 синхровход, вход последовательного ввода информации и вход сброса, регистры 2, 3 и 5 имеют параллельные информационные входы и управляющий вход, срабатывание этих регистров .происходит по фронту сигнала на управляющем входе. Мультиплексор 6 асинх ронно коммутирует на выход сигналы с одного из четырех входов А, В, С, D в зависимости от кода на адрес45 ных входах. данных, выход первой группы разрядов которого соединен с входом кода опера— ции блока управления, выход второй группы разрядов регистра данных соединен с первым информационным входом мультиплексора, выход третьей группы разрядов регистра данных является выходом команды контроллера памяти команд, выход арифметико-логического блока соединен с информационным входом регистра, тактовый вход, вход начальной загрузки и вход пуска контроллера памяти команд соединены соответственно с тактовым, начальной загрузки и пуска входами блока управ— ления, первый, второй и третий выходы которого соединены соответственно с входами записи регистра, регистра адреса, регистра данных, четвертый выход блока управления соединен с первым адресным входом мультиплексора, отличающийся тем, что, с целью повышения быстродействия, выход регистра адреса соединен с первым входом операнда арифметикологического блока и является выходом адреса контроллера памяти команд, выход второй группы разрядов регистра данных соединен с вторым входом операнда арифметико-логического блока, выход которого соединен с вторым информационным входом мультиплексора, с третьим информационным входом которого соединен выход регистра, вход адреса контроллера памяти команд соединен с четвертым информационным входом мультиплексора, выход которого соединен с информационным входом регистра адреса, вход признаков контроллера . памяти команд соединен с входом признаков блока управления, пятый выход которого является выходом синхронизации контроллера памяти команд, шестой выход блока управления соединен с входом кода операнда арифметикологического блока, седьмой выход блока управления соединен с вторым адресным входом мультиплексора, вход синхронизации контроллера соединен с входом синхронизации блока управления.

2. Контроллер по п.1, о т л и— ч а ю шийся тем, что, блок управления содержит программируемую логическую матрицу, сдвиговый регистр, первый и второй триггеры и элемент задержки, причем вход синхронизации блока соединен с входом синх9 161 ронизации сдвигового регистра, информационный вход которого подключен к шине логической единицы, выход сдвигового регистра соединен с первым входом программируемой логической матрицы, информационный вход первого триггера подключен к шине логической единицы, вход пуска блока соединен с входами сброса первого и второго триггеров и вторым входом программируемой логической матрицы, выход первого триггера соединен с третьим входом программируемой логической матрицы, четвертый вход которой соединен с выходом второго триггера, пятый вход программируемой логической матрицы соединен с входом IIa IanIной загрузки блока, шестой вход прог7440 0 раммируемой логической матрицы соединен с входом признаков блока, седьмой вход программируемой логической матрицы соединен с входом кода операции блока, первый, второй и с четвертого по седьмой выходы программируемой логической матрицы соединены с одно— именными выходами блока, восьмой и девятый выходы программируемой логической матрицы соединены соответст-: венно с тактовым входом первого триггера и с тактовым входом второго триггера, третий выход программируемоц логической матрицы соединен с входом элемента задержки, выход которого соединен с третьим выходом блока управления.

PA а

HE

Составитель А.Сошкин

Редактор Л.Пчолинская Техред Л. Олийнык Корректор С,Шевкун

Заказ 4119 Тираж 575 Подписное

ВНИИПИ Го

НИИПИ осударственного комитета по изобретениям и открытиям при ГКНТ СССР .113035, Москва, Ж-35, Раушская наб., д. 4/5

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

Контроллер памяти команд Контроллер памяти команд Контроллер памяти команд Контроллер памяти команд Контроллер памяти команд Контроллер памяти команд 

 

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

Изобретение относится к вычислительной технике и может быть использовано в составе процессора БПФ

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

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

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

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

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

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

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

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

Изобретение относится к автоматике и вычислительной технике и может быть использовано в АСУ ТП для управления динамическими процессами

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

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

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

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

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

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

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

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