SU741269A1 - Микропрограммный процессор - Google Patents

Микропрограммный процессор Download PDF

Info

Publication number
SU741269A1
SU741269A1 SU782566799A SU2566799A SU741269A1 SU 741269 A1 SU741269 A1 SU 741269A1 SU 782566799 A SU782566799 A SU 782566799A SU 2566799 A SU2566799 A SU 2566799A SU 741269 A1 SU741269 A1 SU 741269A1
Authority
SU
USSR - Soviet Union
Prior art keywords
input
memory
output
data
processor
Prior art date
Application number
SU782566799A
Other languages
English (en)
Inventor
Бронисловас-Пятрас Брониславович Беляускас
Регина Ионовна Валаткайте
Гинтаутас Бернардович Жинтелис
Олег Моисеевич Ланцман
Даля Казимеровна Лукшене
Антанас Миколович Неме Немейкшис
Казимерас-Римвидас Стасевич Светиас
Original Assignee
Специальное Конструкторское Бюро Вычислительных Машин
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Специальное Конструкторское Бюро Вычислительных Машин filed Critical Специальное Конструкторское Бюро Вычислительных Машин
Priority to SU782566799A priority Critical patent/SU741269A1/ru
Application granted granted Critical
Publication of SU741269A1 publication Critical patent/SU741269A1/ru

Links

Landscapes

  • Complex Calculations (AREA)

Description

Изобретение относитс  к вычислительной технике и может бЕГгь использовано в ЦВМ.
Известно устройство, осуществл - 5 ющее асинхронную св зь между более медленной оперативной пам тью и более быстродействующим процессором 1 .
Недостатком данного устройства 10  вл етс  то, что после обращени  процесса к оперативной пам ти его . действие блокируетс  на врем ,равное времени выборки данных из пам ти, т.е. одновременна  параллельна  5 работа Оперативной пам ти и процессора возможна только во второй половине цикла оперативной пам ти.
Наиболее близким по технической сущности  вл етс  микропрогргмкшый 20 процессор, содержащий оперативную пам ть, местную пам ть, схему дл  выполнени  арифметических операций, аппаратуру дл  формировани  адресов, аппаратуру дл  обмена данными и блок 25 микропрограммного управлени . В данном процессоре дл  увеличени  быстродействи  также организована асинхронна  работа оперативной пам ти и процессора 2,Недостатком данного процессора,  вл етс  также блокирование его работы на врем , равное времени выборки данных из. пам ти.
Цель изобретени  - увеличение быстродействи  процессора.
Эта цель достигаетс  тем, что в процессор, содержащий буферную пам ть, арифметическо-логическое устройст;во, регистр слова па№1 ти, регистр данных, ксдаилутатор данных, блок выборки элементов И, элемент задержки, блок пам ти, пам ть микропрограмм , дешифратор (микрокоманд, регистр текущего цикла, блок блокировки процессора, восемь элементов И, причем вход-выход арифметическо-логического устройства соединен с выходом-входом буферной пам ти,выход дешифратора микрокоманд соединен с первыми входами первого, второго, третьего, четвертого, п того шестого , седьмого элементов И, первым входом буферной пам ти и первым входом арифметическо-логического устройства, первый выход блока пам ти соединен с первым входом восьмого элемента И, выход которого подключен к первому входу регистра данных.
выход которого соединен с первым входом блока пам ти и первым входом коммутатора данных, выход которого .подключен ко второму входу буферной пам ти и второму входу арифметическо-логического устройства, второ выход блока пам ти соединен со вторым входом восьмого элемента И и первым входом блока блокировки процсора , выход которого подключен к певому входу дешифратора микрокоманд и первоглу входу регистра текущего цикла, выход которого соединен со входом пам ти микропрограмм, выход которой соединен со вторым входом дешифратора микрокоманд и вторым вхдом регистра текущего цикла, первый выход арифметическо-логического устройства соединен со вторым входо первого элемента И, выход которого подключен ко второму аходу регистра данных, выходы п того, шестого и седьмого элементов И подключены ко входам регистра слова пам ти, выход которого соединен со вторым входом блока пам ти, выход элемента задержки соединен со входом блока вборки элементов И, выход которого подключен к третьему входу первого элемента И, введены счетчик текущего .адреса, блок проверки логических условий, п счетчиков и п регисров , формирователь сигналов блокировки , при этом первые выходы п счетчиков подключены ко вторым входам соответственно п того, ш.естого и седьмого элементов И, первые выходы п регистров подключены ко вторым входам соответственно второго , третьего и четвертого элементов И, вторые выходы п счетчиков и п регистров соединены с соответствующими входаг«1И арифметическо-лотического устройства, второй выход которого соединен с первым входом блока проверки логических условий, выход которогоподключен к третьим входс1м п того, шестого и седьмого элементов И, первый выход арифметическо-логическо .го устройства соединен со входагли -п счетчиков и первыми входами п регистров, выходы второго, третьего и четвертого элементов И подключены ко входам счетчика текущего адреса, выход которог подключен ко второму входу блока проверки логических условий, входу элемента задержки, второму входу коммутатора данных и вторым входам п регистров, причем выход регистра текущего цикла подключен ко входу формировател  сигналов.блокировки, выход которого соединен со вторым входом блока блокировки процессора.
На чертеже приведена схема микроnporpatviMHoro процессора.
Схема микропрограммного процессора состоит из блока 1 пам ти, арифметико-логического устройства 2,
блока 3 обмена данными, адресного блока 4, буферной пам ти данных 5 и блока 6 микропрограммного управлени . Оперативна  пам ть 1 св зана с блоком 3 обмена данными входными информационными шинами 7, выходными информационными шинами 8, шинами 9 управл ющего слова пам ти и шинами
10контрол  состо ни  пам ти, а
с блоком 6 микропрограммного управлени  шинами 10 контрол  состо ни  пам ти . Блок 3 обмена, данными содержит регистр 11 данных, регистр 12 слова пам ти, счетчик 13 текущего адреса, св занный с коммутатором 14 данных и через элемент 15 задержки и блок выборки элементов 16 И с Входными элементами 17 И регистра
11данных, а также содержит блок 18 определени  момента обращени  к оперативной пам ти (блок проверки логических условий), св занный по входу 36 .с арифметико-логическим устройством 2 и счетчиком 13 текущего адреса, а по выходу с входными элементами И .регистра 12 слова пам ти . Блок 3 обмена данными св зан с арифметико-логическим устройством 2 и буферной пам тью данных 5 выходHfcJMH .информационными-ашнами 19 и входными информационными шинами 20, Адресный блок 4 содержит счетчик
21 адреса команды и счетчики 22 и 23 адресов операндов (п сч-етчиков) , св занные по выходу с арифметикологическим устройством 2, а также содержит регистры 24, 25 и 26, номера байта (п регистров), относ щиес  соответственно к адресу команды и адресам операндов..Буферна  пам ть д-анных 5 св зана с арифметико-логическим устройством 2 входными и вЕлходными информационными шинами . Блок 6 микропрограммного упралени  содержит .стр 27 текущего цикла, пам ть микропрограмм 28, дешифратор 29 микрокоманд, формирователь 30 сигналов блокировки и блок 31 блокировки пpoцeccopa -элементы 32, 33, 34, 35, 17, 37, 38, 39 И.
Микропрограммный процессор предназначен дл  выполнени  арифметических и логических операций над данными, расположенными в виде пбле посто нной или переменной длины в --теративной пам .ти 1. Обычный процесс выполнени -операции в микропрограммном процессоре включает выборку из оперативной пам ти данных по адресу одного или по адресам двух операндов, выполнение нужной операции в арифметико-логическом устройстве и размещение -результата в оперативной пам ти по адресу одного из операндов, наименьшей адресуемой единидей данных  вл етс  байт. Предусмотренный набор операци выполн етс  арифметико-логическим устройством 2, причем обработка
полей происходит побайтно, а их длина определ етс  командой. За один цикл процессора может выполн тьс  рдна операци  обработки данных, имеЬщих длину 1 байт.
Цикл оперативной пам ти можно условно разделить на четыре равные части, отличающиес  между собой процессами , которые происход т в пам ти т.е. на части, соответствующие различным состо ни м пам ти. В состо нии О в оперативной пам ти принимаетс  управл ющее слово, определ ющее адрес данных и характер операции . В состо нии 1 работа пам ти определ етс  операцией: в операции чтени  происходит выборка данных, в операции записи прием данных, подлежащих хранению в пам ти. Состо ни  2 и 3 определ ют регенерацию считанной информации или запись информации, прин той в состо нии 1. Таким образом, данные дл  записи должны быть подготовлены процессором до того, как пам ть достигнет состо ни  1, а в операции чтени  . данные могут быть использованы процессором не ранее, чем пам ть достигнет состо ни  2, т.е. по истечении времени выборки Tg. Длительность цикла оперативной пам ти в предлагаемом микропрограммном процессоре составл ет 2,5 мкс, длительность цикла процессора 0,625 мкс, т.е. одну четвертую часть цикла оперативной пам ти.
В микропрограммном процессоре предусмотрена аппаратура, позвол юща  частично или полностью совместит циклы обработки данных процессором с циклами оперативной пам ти, что приводит к увеличению быстродействи  процессора. Совмещение достигаетс  за счет того, что в процессоре организуетс  выборка и размещение данных в пам ти группами при байтовой обработке, что позвол ет при обработке данных текущей выборки заранее организовать обращение к оперативной пам ти с целью чтени  или записи данных,которые потребуютс  по окончании обработки данных текущей выборки. Обмен между оперативной пам тью и остальной частью микропрограммного процессора происходит 8-байтовыми словами.
Основной дл  организации такого обмена  вл етс  разделение текущего адреса байта данных или текущего адреса команды на две части: физический адрес слова пам ти и номер байта в слове пам ти, причем физическим адресом слова  вл ютс  старшие разр ды адреса байта, а номерами байта в слове - млгшшие разр ды ешреса байта. Физический- адрес слова и номер байта в процессе обработки могут измен тьс  независимо друг От друга.
Обмен данными с оперативной пам тью и обработка происход т в предлагаемом микропрограммном процессоре следующим образом. При необходи1 « )сти чтени  или записи данных в регистре 12 слова формирует-с  управл ющее слово, содержащее физический адрес 8-байтового слова пам ти,запрос обращени  к оперативной пам ти,
o код операции пам ти и другие данные, и передаютс  в блок 1 пам ти через шины 9 управл ющего слова. В операции чтени  по окончании времени выборки Тд, что соответствует состо 5 нию пам ти 2, сигналы контрол  состо ни  пам ти 10 разрешают запись 8-байтового слова с информационных шин 8 пам ти в регистр 11 данных через элементы 32 И. Если в управл ющем
0 слове указана операци  записи, то после приема управл ющего слова,что соответствует состо нию пам ти 1, оперативна  пам ть принимает через входные информационные шины 7-8-гбай5 товое слово, сформированное заранее в регистре 11 данных.
Текущие адреса команды и операндов хран тс  в адресном блоке 4 таким образом, что физический адрес
0 слова пам ти, которому принадлежат байты Команды или операндов, содержитс  Е счетчиках 21, 22, 23 соответственно, а номера байтов - в регистрах 24, 25 и 26. Если в регистр 11 данных выбрано слово, соот5 ветствующее физическому адресу в счетчиках 21, 22 или 23, значение номера байта переписываетс  под управлением микрокоманд из регистра 24, 25 или 26 через элементы 33, 34
0 или 35 И в счетчик 13 текущего адреса; нужный байт по вл етс  на выходе коммутатора 14 данных и может быть использован арифметико-логическим устройством 2.Последовательное изме5 нение физического адреса осуществл етс  под управлением микрокоманд непосредственно в счетчиках 21 и 22 или 23, а переход к непоследовательно расположенным словам осуществл етс 
0 путем измерени  адресов в арифметикологическом устройстве 2, дл  чего выходы счетчиков 21, 22, 23 и регистров 24, 25 и 26 соединены со входами арифметико-логического устрой5 ства 2. а выходы счетчиков с выходными шинами 20 арифметико-логического устройства 2.
Текуща  адресаци  данных внутри слова осуществл етс  е помощью счетчика 13 текущего адреса, содержимое
0 которого может последовательно измен тьс  под управлением микрокоманд в сторону увеличени  или уменьшени . После выборки нужного количества байтов данных текущее значение счет5 чика 13 может быть возвращено под -управлением микрокоманд в регистр 24, 25 или 26 номера байта При обработке после одного из операндов обычно размещаетс  частич но ига частично или полностью в буферной пам ти данных 5. При этом осуществл етс  требуемое количество обращений к оперативной пам ти и последовательна  пересьллка байтов данных через шины 19 с кому1утатора 14 данных в буферную 5, Таким образом создаетс  достаточный запас данных дл  обработки без обращений к оперативной пам ти по адресу этого операнда. Далее таким же способом происходит выборка данных из пол , другого операнда в пам ти, но данные побайтно пересылаютс  через шины 19 на вход арифметико-логического устройства 2. Одновременно происходи побайтна  выборка другого операнда из буферной пам ти 5 и формирование байта результата. Результат как правило должен быть размещен в оперативной пам ти. Накопление результат происходит в регистре 11 данныхна месте использованных байтов исходных данных под управлением счетчика13 текущего адреса следующим образом. Значение счетчика 13, в соответстви с которым сформирован выход коммута тора 14 данных, поступает черезэлеменТ 15 задержки на блок 16 выборки элементов И. Элемент 15 задержки обеспечивает запаздывание счетчика 13 текущего адреса на один цикл процессора. Таким образом,когд новым значением счетчика 13 выбираетс  очередной байт исходных данньч.х на блоке 16 выборки элементов И име етс  предьщущее значение номера бай а на выходных шинах арифметико-логи ческого устройства 2 имеетс  резуль тат обработки предыдущего байта. Этот результат и записываетс  под управлением микрокоманд в регистр 11 данных через элементы 17 И на место, определ емое блоком 18 выборки элементов И, который дешифрует задержанное значение номера байта. Текущее значение номера байта в счетчике 13 используетс  также дл  определени  момента формировани управл ющего слова пам ти, что озна чает и момент обращени  к пам ти,та как управл ющее слово содерлсит запрос; на выполнение операции пам ти Еслипри обработке пол  данных спра ва нгшево текущее значение номера байта в счетчике 13 НБ О или при обработке пол  данных слева направо НБ 1, происходит обработка по леднего байта в слове, и дл  продол жени  операции без приостанова в сл дующем цикле процессора необходимо, ч:тобы в регистр 11 данных были прин ты новые данные, или чтобы регистр 11 данных к началу следующего цикла был освобожден от результата. Дл  этого необходимо сформировать запрос обращени  к оперативной пам ти раньше, чем процессор закончит обработку последнего байта в слове. Если поле данных заканчиваетс  в пределах данного слова пам ти, то нозое обращение дл  выборки данных не требуетс , т,е, момент формировани  запроса на выполнение .операции пам ти зависит и от текущей длины обрабатываеглого пол . Формирование управл ющего слова определ етс  схемой 18 определени  момента обращени  к оперативной пам ти,формирующей управл нлдиё сигналы как функции текущего значени  номера байта НБ и текущего значени  длины пол  Л, Текущее значение длины пол , указывающее в каждый момент времени количество байтов данных,,подлежащих обработке в данной операции, формируетс  в процессе обработки в арифметико-логическом устройстве 2 и передаетс  в схему 18 определени  .момента обращени  к оперативной пам ти через шины 36 текущей длины пол . Схема 18 можетпровер ть несколько различных соотношений номера байта и длины в зависимости от выполн емой операции. Например, при обработке байтов пол  слева направо может щэрвер тьс  соотношение типа (НВ 5). () + (НБ 6).- () + f (НБ 7), где знак + указывает логическое сложение. Если схема 18 сформировала управл ющий сигнал, то в регистра 12 слова пам ти формируетс  требуемое управл ющее слово, причем физический адрес очередного слова пам ти записываетс  лод управлением микрокоманд через элементы 37, 38 или 39 и из нужного счетчика (21, 22 или 23).После этого операци  пам ти считаетс  инициированной, а содержимое счетчиков 21, 22 или 23 может- измен тьс  процессором с целью подготовки следующего обращени , Из приведенного соотношени  между номером байта и текущей длиной пол  видно, что за рос на йыполнение .. операции пам ти в этом случае может формироватьс  во .врем  обработки процессором байта 5, байта 6 или байта 7 текущего слова данных. Если запрос на выполнение операции пам ти формируетс  во врем  обработки байта 5, то лерва  половина цикла пам ти (Tg) используетс  процессором дл  обработки байтов 6 и 7, а после выборки и приема в регистр 11 данных нового слова пам ти при состо нии пам ти 2 начинаетс  обработка байта О следуютдего слова без приостановки действи  процессора, В этом случае
процессор работает одновременно и параллельно с блоком пам ти в тече ие всего цикла -пам ти, т.е. осуществл етс  полное перекрытие цикла оперативной пам ти циклами процессора . Обращение к блоку пам ти во врем  обработки процессором байта 6 или байта 7 возможно тогда, когда обработка заданного пол  начинаетс  с этих байтов. Однако в этих случа х возможно только частичное перекрытие цикла пам ти циклами процессора так как процессор не имеет запаса текущих данных на два цикла процессора , соответствующих времени выборки оперативной пам ти (Tg), и его действие должно блокироватьс  до получени  нового слова данных из пам ти, т.е. до достижени  пам тью состо ни  2.
Блокирование действи  процессора производитс  в блоке б микропрограммного управлени .
Блок 6 микропрограммного управлени  содержит посто нную пам ть 28 дл хранени  микропрограмм, согласно которым выполн ютс  операции процессора . Номер Текущего цикла процессор хранитс  в регистре 27 текущего цикла и представл ет собой одновременно и адрес посто нной пам ти 28, по которому находитс  слово микрокоманды данного цикла. Извлеченное из .пам ти 28 слово дешифруетс  на дешифраторах 29 микрокоманд, на выходах которых формируютс  сигналгл управлени  вентил ми микроопераций. Схема 30 определени  ж мeнтa блокировки формирует сигнал при по влении в регистре текущего цикла процессора 27 номеров таких циклов, в которых требуетс  результат очередной операции оперативной пам ти. Блок 31 блокировки процессора при наличии сигнала с Формировател  30 анализирует состо ние оперативной пам ти по сигналам, поступающим по шинам 10 контрол  состо ни  пам ти . Если пам ть находитс  в состо нии 2, которое означает, что в оперативной пам ти завершаетс  запись предьадущего 8-байтового слова результата , либо вьгерано новое 8-байтовое слово ДАННЫХ, действие процессора не блокируетс , т.е. микропрограшла процессора продолжаетс  без задержки Если пам ть не достигла состо ни  2, схема блокировани  вырабатьшает сигналы , блокирующие выход микрокоманд и изменение номера цикла. Таким образом, процессор оказываетс  в состо нии ожидани  до тех пор, пока устанавливаетс  состо ние 2 оперативной пам ти.
Изобретение применимо в вычислительных машинах, имеющих быстродействующие арифметико-логические устройства и оперативную пам ть низкого быстродействи .
В предлагаемом микропрограммном процессоре при его реализации может модифицироватьс  величина порции данных дл  обмена с оперативной пам тью и соотношение между длительностью цикла оперативной пам ти длительного процессора, что приведет к изменению разр дности счетчика 13 и регистров 24, 25, 26, к изменению разр дности регистра 11 данных,блока 16 выборки, а также к выбору другого объема буферной пам ти данных 5.
Уменьшение времени выполнени  операций находитс  в пределах от 1,6 до 2 раз дл  различных операций .
20

Claims (1)

  1. Формула изобретени 
    Микропрограммный процессор, содержащий буферную пам ть, арифметико5 логическое устройство, регистр слова пам ти, регистр данных, коммутатор данных, блок выборки элементов И, элемент задержки, блок пам ти, пам ть микропрограмм, де0 шифратор микрокоманд, регистр текущего цикла, блок блокировки процессора , BocisMb элементов И, причем вход-выход арифметическо-логического устройства соединен с выходом-входом буферной пам ти, выход дешифратора
    5 микрокоманд соединен с первыми входами первого, второго, третьего, четвертого, п того, шестого, седьмого элементов И, первым входом буферной пам ти и первым входом арифмети0 ческо-логического устройства,первый выход блока пам ти соединен с первым входом восьмого элемента И, выход которого подключен к первому входу регистра данных, выход которого
    5 соединен с первым входом блока пам ти и первым входом коммутатора данных, которого подключен ко второму входу буферной пам ти и второму входу арифметическо-логического уст0 ройства, второй выход блока пам ти соединен со вторым входом восьмого элемента И и первым входом блока блокировки процессора, выход которого подключен к первому входу дешиф5 ратора микрокоманд и первому входу регистра текущего цикла, выход которого соединен со входом пам ти микропрограмм, выход которой соединен со вторьвл входом дешифратора
    0 микрокоманд и вторым входом регистра т:екущего цикла, первый выход арифметическо-логического устройства соединен со вторым входом первого элемента И, выход которого подключен ко
    5 второму входу регистра данных, выхо-(
SU782566799A 1978-01-04 1978-01-04 Микропрограммный процессор SU741269A1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU782566799A SU741269A1 (ru) 1978-01-04 1978-01-04 Микропрограммный процессор

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU782566799A SU741269A1 (ru) 1978-01-04 1978-01-04 Микропрограммный процессор

Publications (1)

Publication Number Publication Date
SU741269A1 true SU741269A1 (ru) 1980-06-15

Family

ID=20743266

Family Applications (1)

Application Number Title Priority Date Filing Date
SU782566799A SU741269A1 (ru) 1978-01-04 1978-01-04 Микропрограммный процессор

Country Status (1)

Country Link
SU (1) SU741269A1 (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998006040A1 (en) * 1996-08-07 1998-02-12 Sun Microsystems, Inc. Architectural support for software pipelining of nested loops
WO1998006039A1 (en) * 1996-08-07 1998-02-12 Sun Microsystems, Inc. Disambiguation memory circuit and operating method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998006040A1 (en) * 1996-08-07 1998-02-12 Sun Microsystems, Inc. Architectural support for software pipelining of nested loops
WO1998006039A1 (en) * 1996-08-07 1998-02-12 Sun Microsystems, Inc. Disambiguation memory circuit and operating method

Similar Documents

Publication Publication Date Title
SU676193A3 (ru) Устройство дл адресации блоков пам ти
US4040034A (en) Data security system employing automatic time stamping mechanism
US4323968A (en) Multilevel storage system having unitary control of data transfers
GB1274830A (en) Data processing system
US4188662A (en) Address converter in a data processing apparatus
US4040030A (en) Computer instruction control apparatus and method
US4047245A (en) Indirect memory addressing
US3949376A (en) Data processing apparatus having high speed slave store and multi-word instruction buffer
SU741269A1 (ru) Микропрограммный процессор
EP0057096A2 (en) Information processing unit
US3480917A (en) Arrangement for transferring between program sequences in a data processor
US3673575A (en) Microprogrammed common control unit with double format control words
US3337851A (en) Memory organization for reducing access time of program repetitions
US4034345A (en) Microprogrammable computer data transfer architecture
KR900005420B1 (ko) 버퍼메모리 제어시스템
SU613402A1 (ru) Запоминающее устройство
KR860003554A (ko) 공유식 주메모리 및 디스크 제어기 메모리 어드레스 레지스터
ES438259A1 (es) Perfeccionamientos introducidos en un sistema de telecomuni-cacion.
SU1049914A1 (ru) Устройство дл отладки программ
SU652615A1 (ru) Устройство дл обращени к блокам оперативной пам ти
JPS6074038A (ja) 情報処理装置
SU1111150A1 (ru) Устройство дл сопр жени двух вычислительных машин
SU1149257A1 (ru) Устройство дл выборки команд
JPH0232649B2 (ru)
SU664222A1 (ru) Логическое запоминающее устройство