SU741269A1 - Microprogramme processor - Google Patents

Microprogramme processor 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
Russian (ru)
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/en
Application granted granted Critical
Publication of SU741269A1 publication Critical patent/SU741269A1/en

Links

Landscapes

  • Complex Calculations (AREA)

Description

Изобретение относитс  к вычислительной технике и может бЕГгь использовано в ЦВМ.The invention relates to computing and can be used in digital computers.

Известно устройство, осуществл - 5 ющее асинхронную св зь между более медленной оперативной пам тью и более быстродействующим процессором 1 .A device is known that implements an asynchronous connection between a slower RAM and a faster processor 1.

Недостатком данного устройства 10  вл етс  то, что после обращени  процесса к оперативной пам ти его . действие блокируетс  на врем ,равное времени выборки данных из пам ти, т.е. одновременна  параллельна  5 работа Оперативной пам ти и процессора возможна только во второй половине цикла оперативной пам ти.The disadvantage of this device 10 is that after the process accesses its RAM. the action is blocked for the time equal to the time for retrieving data from the memory, i.e. Simultaneous parallel 5 operation of the RAM and the processor is possible only in the second half of the RAM cycle.

Наиболее близким по технической сущности  вл етс  микропрогргмкшый 20 процессор, содержащий оперативную пам ть, местную пам ть, схему дл  выполнени  арифметических операций, аппаратуру дл  формировани  адресов, аппаратуру дл  обмена данными и блок 25 микропрограммного управлени . В данном процессоре дл  увеличени  быстродействи  также организована асинхронна  работа оперативной пам ти и процессора 2,Недостатком данного процессора,  вл етс  также блокирование его работы на врем , равное времени выборки данных из. пам ти.The closest in technical essence is a microcryptal 20 processor comprising an operational memory, local memory, a circuit for performing arithmetic operations, an apparatus for generating addresses, an apparatus for exchanging data, and a microprogram control unit 25. In this processor, in order to increase the speed, asynchronous operation of the RAM and processor 2 is also organized. The disadvantage of this processor is also the blocking of its operation for a time equal to the time of data sampling from. memory

Цель изобретени  - увеличение быстродействи  процессора.The purpose of the invention is to increase the speed of the processor.

Эта цель достигаетс  тем, что в процессор, содержащий буферную пам ть, арифметическо-логическое устройст;во, регистр слова па№1 ти, регистр данных, ксдаилутатор данных, блок выборки элементов И, элемент задержки, блок пам ти, пам ть микропрограмм , дешифратор (микрокоманд, регистр текущего цикла, блок блокировки процессора, восемь элементов И, причем вход-выход арифметическо-логического устройства соединен с выходом-входом буферной пам ти,выход дешифратора микрокоманд соединен с первыми входами первого, второго, третьего, четвертого, п того шестого , седьмого элементов И, первым входом буферной пам ти и первым входом арифметическо-логического устройства, первый выход блока пам ти соединен с первым входом восьмого элемента И, выход которого подключен к первому входу регистра данных.This goal is achieved by the fact that the processor containing the buffer memory, the arithmetic logic unit; in, the register word number 1, the data register, the data dir, the element sampler, the delay element, the memory block, the microprogram memory, the decoder (microinstructions, register of the current cycle, processor blocking block, eight elements And, the arithmetic-logic device input-output is connected to the output-input of the buffer memory, the output of the micro-instructions decoder is connected to the first inputs of the first, second, third, fourth, of the sixth, seventh And elements, the first input of the buffer memory and the first input of the arithmetic logic unit, the first output of the memory block is connected to the first input of the eighth And element, the output of which is connected to the first input of the data register.

выход которого соединен с первым входом блока пам ти и первым входом коммутатора данных, выход которого .подключен ко второму входу буферной пам ти и второму входу арифметическо-логического устройства, второ выход блока пам ти соединен со вторым входом восьмого элемента И и первым входом блока блокировки процсора , выход которого подключен к певому входу дешифратора микрокоманд и первоглу входу регистра текущего цикла, выход которого соединен со входом пам ти микропрограмм, выход которой соединен со вторым входом дешифратора микрокоманд и вторым вхдом регистра текущего цикла, первый выход арифметическо-логического устройства соединен со вторым входо первого элемента И, выход которого подключен ко второму аходу регистра данных, выходы п того, шестого и седьмого элементов И подключены ко входам регистра слова пам ти, выход которого соединен со вторым входом блока пам ти, выход элемента задержки соединен со входом блока вборки элементов И, выход которого подключен к третьему входу первого элемента И, введены счетчик текущего .адреса, блок проверки логических условий, п счетчиков и п регисров , формирователь сигналов блокировки , при этом первые выходы п счетчиков подключены ко вторым входам соответственно п того, ш.естого и седьмого элементов И, первые выходы п регистров подключены ко вторым входам соответственно второго , третьего и четвертого элементов И, вторые выходы п счетчиков и п регистров соединены с соответствующими входаг«1И арифметическо-лотического устройства, второй выход которого соединен с первым входом блока проверки логических условий, выход которогоподключен к третьим входс1м п того, шестого и седьмого элементов И, первый выход арифметическо-логическо .го устройства соединен со входагли -п счетчиков и первыми входами п регистров, выходы второго, третьего и четвертого элементов И подключены ко входам счетчика текущего адреса, выход которог подключен ко второму входу блока проверки логических условий, входу элемента задержки, второму входу коммутатора данных и вторым входам п регистров, причем выход регистра текущего цикла подключен ко входу формировател  сигналов.блокировки, выход которого соединен со вторым входом блока блокировки процессора.the output of which is connected to the first input of the memory unit and the first input of the data switch, whose output is connected to the second input of the buffer memory and the second input of the arithmetic logic unit, the second output of the memory unit is connected to the second input of the eighth And element and the first input of the blocking block a processor, whose output is connected to the microinstructor decoder's input and a first cycle register input for the current cycle, the output of which is connected to the microprogram memory input, the output of which is connected to the second input of the microrogram decoder The command and the second register of the current cycle, the first output of the arithmetic logic unit is connected to the second input of the first element AND whose output is connected to the second data register, the outputs of the fifth, sixth and seventh AND elements are connected to the inputs of the memory word register, the output of which connected to the second input of the memory block, the output of the delay element is connected to the input of the block for the collection of elements And, the output of which is connected to the third input of the first element And, the current address address counter is entered, the logical conditions check block s, n counters and n registers, the blocking signal shaper, with the first outputs n of the meters connected to the second inputs of the fifth, seventh and seventh elements of the And, respectively, the first outputs of the n registers connected to the second inputs of the second, third and fourth elements respectively The second outputs of the n counters and the n registers are connected to the corresponding input “1 and the arithmetic-lotus device, the second output of which is connected to the first input of the logical conditions check unit whose output is connected to the third inputs 1 In addition, the sixth and seventh elements And, the first output of the arithmetic-logical device is connected to the input and counter counters and the first inputs and registers; the outputs of the second, third and fourth elements And are connected to the inputs of the current address counter, the output of which is connected to the second input the logical condition checker, the input of the delay element, the second input of the data switch and the second inputs n of the registers, and the output of the register of the current cycle is connected to the input of the blocking signal generator, the output of which is connected to the second th processor input blocking unit.

На чертеже приведена схема микроnporpatviMHoro процессора.The drawing is a diagram of the microporpatviMHoro processor.

Схема микропрограммного процессора состоит из блока 1 пам ти, арифметико-логического устройства 2,The microprogram processor circuit consists of memory block 1, arithmetic logic unit 2,

блока 3 обмена данными, адресного блока 4, буферной пам ти данных 5 и блока 6 микропрограммного управлени . Оперативна  пам ть 1 св зана с блоком 3 обмена данными входными информационными шинами 7, выходными информационными шинами 8, шинами 9 управл ющего слова пам ти и шинамиdata exchange unit 3, address unit 4, buffer data storage 5, and firmware control unit 6. The operational memory 1 is connected with the data communication unit 3 by input information buses 7, output information buses 8, memory control word buses 9 and tires

10контрол  состо ни  пам ти, а10 control of memory, and

с блоком 6 микропрограммного управлени  шинами 10 контрол  состо ни  пам ти . Блок 3 обмена, данными содержит регистр 11 данных, регистр 12 слова пам ти, счетчик 13 текущего адреса, св занный с коммутатором 14 данных и через элемент 15 задержки и блок выборки элементов 16 И с Входными элементами 17 И регистраwith block 6 of firmware control of memory monitoring buses 10. The data exchange unit 3 contains a data register 11, a memory word register 12, a current address counter 13 connected to the data switch 14 and through delay element 15 and the element selection block 16 AND to the input elements 17 AND of the register

11данных, а также содержит блок 18 определени  момента обращени  к оперативной пам ти (блок проверки логических условий), св занный по входу 36 .с арифметико-логическим устройством 2 и счетчиком 13 текущего адреса, а по выходу с входными элементами И .регистра 12 слова пам ти . Блок 3 обмена данными св зан с арифметико-логическим устройством 2 и буферной пам тью данных 5 выходHfcJMH .информационными-ашнами 19 и входными информационными шинами 20, Адресный блок 4 содержит счетчик11 data, and also contains a block 18 for determining the moment of accessing the RAM (logical conditions check unit) associated with input 36. With an arithmetic logic unit 2 and a current address counter 13, and with output with input elements AND. memory The data exchange unit 3 is connected with an arithmetic logic unit 2 and data buffer memory 5, output HfcJMH. Information-ashes 19 and input information buses 20, Address unit 4 contains a counter

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 И.21 command addresses and counters 22 and 23 of the addresses of the operands (p-tchikov) associated with the output of the arithmetic unit 2, and also contains registers 24, 25 and 26, byte numbers (n registers), respectively, to the address of the command and the addresses of the operands. The buffer memory of the d-5 data is connected with the arithmetic logic unit 2 input and radar information buses. Firmware management block 6 contains .page 27 of the current cycle, firmware memory 28, decoder 29 microcommands, blocker 30 of the blocking signals and block 31 of the processor block — elements 32, 33, 34, 35, 17, 37, 38, 39 I.

Микропрограммный процессор предназначен дл  выполнени  арифметических и логических операций над данными, расположенными в виде пбле посто нной или переменной длины в --теративной пам .ти 1. Обычный процесс выполнени -операции в микропрограммном процессоре включает выборку из оперативной пам ти данных по адресу одного или по адресам двух операндов, выполнение нужной операции в арифметико-логическом устройстве и размещение -результата в оперативной пам ти по адресу одного из операндов, наименьшей адресуемой единидей данных  вл етс  байт. Предусмотренный набор операци выполн етс  арифметико-логическим устройством 2, причем обработкаThe microprocessor processor is designed to perform arithmetic and logical operations on data located as a fixed or variable length in a -teratival memory 1. The usual process of performing an operation in a microprogrammed processor involves selecting a memory from a single address or the addresses of the two operands, the execution of the desired operation in the arithmetic logic unit and the placement of the result in the RAM to the address of one of the operands, the smallest addressable data unit is Bytes The prescribed set operation is performed by the arithmetic logic unit 2, and the processing

полей происходит побайтно, а их длина определ етс  командой. За один цикл процессора может выполн тьс  рдна операци  обработки данных, имеЬщих длину 1 байт.fields are byte-byte, and their length is determined by the command. In one processor cycle, a single data processing operation can be performed having a length of 1 byte.

Цикл оперативной пам ти можно условно разделить на четыре равные части, отличающиес  между собой процессами , которые происход т в пам ти т.е. на части, соответствующие различным состо ни м пам ти. В состо нии О в оперативной пам ти принимаетс  управл ющее слово, определ ющее адрес данных и характер операции . В состо нии 1 работа пам ти определ етс  операцией: в операции чтени  происходит выборка данных, в операции записи прием данных, подлежащих хранению в пам ти. Состо ни  2 и 3 определ ют регенерацию считанной информации или запись информации, прин той в состо нии 1. Таким образом, данные дл  записи должны быть подготовлены процессором до того, как пам ть достигнет состо ни  1, а в операции чтени  . данные могут быть использованы процессором не ранее, чем пам ть достигнет состо ни  2, т.е. по истечении времени выборки Tg. Длительность цикла оперативной пам ти в предлагаемом микропрограммном процессоре составл ет 2,5 мкс, длительность цикла процессора 0,625 мкс, т.е. одну четвертую часть цикла оперативной пам ти.The RAM cycle can be conditionally divided into four equal parts, which differ in the processes that occur in the memory, i.e. into parts corresponding to different states of memory. In the state O, a control word is taken in RAM that defines the data address and the nature of the operation. In state 1, the memory operation is determined by the operation: in a read operation, data is sampled, in a write operation, the data to be stored in the memory is received. State 2 and 3 determine the regeneration of the read information or the recording of the information received in state 1. Thus, the data to be written must be prepared by the processor before the memory reaches state 1 and in the read operation. the data can be used by the processor no earlier than the memory reaches state 2, i.e. after the sampling time Tg. The duration of the RAM cycle in the proposed firmware processor is 2.5 µs, the processor cycle time is 0.625 µs, i.e. one-fourth of the RAM cycle.

В микропрограммном процессоре предусмотрена аппаратура, позвол юща  частично или полностью совместит циклы обработки данных процессором с циклами оперативной пам ти, что приводит к увеличению быстродействи  процессора. Совмещение достигаетс  за счет того, что в процессоре организуетс  выборка и размещение данных в пам ти группами при байтовой обработке, что позвол ет при обработке данных текущей выборки заранее организовать обращение к оперативной пам ти с целью чтени  или записи данных,которые потребуютс  по окончании обработки данных текущей выборки. Обмен между оперативной пам тью и остальной частью микропрограммного процессора происходит 8-байтовыми словами.Hardware is provided in the firmware program, which allows partially or fully combining the data processing cycles of the processor with the RAM cycles, which leads to an increase in processor speed. The combination is achieved due to the fact that the processor organizes the selection and placement of data in the memory by groups during byte processing, which allows the processing of the current sample to organize in advance the access to the main memory in order to read or write data that will be required after the processing is completed. current sample. The exchange between the RAM and the rest of the firmware processor takes place in 8-byte words.

Основной дл  организации такого обмена  вл етс  разделение текущего адреса байта данных или текущего адреса команды на две части: физический адрес слова пам ти и номер байта в слове пам ти, причем физическим адресом слова  вл ютс  старшие разр ды адреса байта, а номерами байта в слове - млгшшие разр ды ешреса байта. Физический- адрес слова и номер байта в процессе обработки могут измен тьс  независимо друг От друга.The main organization of this exchange is the division of the current address of the data byte or the current address of the command into two parts: the physical address of the memory word and the number of the byte in the memory word, the physical address of the word being the high-order bits of the byte address, and the byte numbers in the word - The minor bits of the byte esrres. The physical address of the word and the number of the byte can be changed independently of each other during processing.

Обмен данными с оперативной пам тью и обработка происход т в предлагаемом микропрограммном процессоре следующим образом. При необходи1 « )сти чтени  или записи данных в регистре 12 слова формирует-с  управл ющее слово, содержащее физический адрес 8-байтового слова пам ти,запрос обращени  к оперативной пам ти, Data exchange with RAM and processing takes place in the proposed microprogram processor as follows. If you need to ") read or write data in register 12, the word forms a control word containing the physical address of the 8-byte memory word, the request for accessing the main memory,

o код операции пам ти и другие данные, и передаютс  в блок 1 пам ти через шины 9 управл ющего слова. В операции чтени  по окончании времени выборки Тд, что соответствует состо 5 нию пам ти 2, сигналы контрол  состо ни  пам ти 10 разрешают запись 8-байтового слова с информационных шин 8 пам ти в регистр 11 данных через элементы 32 И. Если в управл ющем o Memory operation code and other data, and transmitted to memory block 1 via bus 9 control words. In a read operation, at the end of the sampling time Td, which corresponds to state 5 of memory 2, memory monitoring signals 10 allow writing an 8-byte word from the information bus 8 of memory to data register 11 via elements 32 I. If in the control

0 слове указана операци  записи, то после приема управл ющего слова,что соответствует состо нию пам ти 1, оперативна  пам ть принимает через входные информационные шины 7-8-гбай5 товое слово, сформированное заранее в регистре 11 данных.If the word 0 indicates the write operation, after receiving the control word, which corresponds to the state of memory 1, the operational memory receives through the input information buses a 7–8 GB word generated in advance in the data register 11.

Текущие адреса команды и операндов хран тс  в адресном блоке 4 таким образом, что физический адрес The current addresses of the instruction and operands are stored in the address block 4 in such a way that the physical address

0 слова пам ти, которому принадлежат байты Команды или операндов, содержитс  Е счетчиках 21, 22, 23 соответственно, а номера байтов - в регистрах 24, 25 и 26. Если в регистр 11 данных выбрано слово, соот5 ветствующее физическому адресу в счетчиках 21, 22 или 23, значение номера байта переписываетс  под управлением микрокоманд из регистра 24, 25 или 26 через элементы 33, 34 The 0 words of the memory to which the bytes of the instruction or operands belong, contain E counters 21, 22, 23, respectively, and the byte numbers are in registers 24, 25 and 26. If a word corresponding to the physical address in the counters 21 is selected in data register 11, 22 or 23, the value of the byte number is rewritten under the control of microinstructions from the register 24, 25 or 26 through the elements 33, 34

0 или 35 И в счетчик 13 текущего адреса; нужный байт по вл етс  на выходе коммутатора 14 данных и может быть использован арифметико-логическим устройством 2.Последовательное изме5 нение физического адреса осуществл етс  под управлением микрокоманд непосредственно в счетчиках 21 и 22 или 23, а переход к непоследовательно расположенным словам осуществл етс  0 or 35 And in the counter 13 of the current address; the desired byte appears at the output of the data switch 14 and can be used by the arithmetic logic unit 2. A sequential change of the physical address is performed under the control of microcommands directly in the counters 21 and 22 or 23, and the transition to non-consecutive words is carried out

0 путем измерени  адресов в арифметикологическом устройстве 2, дл  чего выходы счетчиков 21, 22, 23 и регистров 24, 25 и 26 соединены со входами арифметико-логического устрой5 ства 2. а выходы счетчиков с выходными шинами 20 арифметико-логического устройства 2.0 by measuring addresses in the arithmetic unit 2, for which the outputs of counters 21, 22, 23 and registers 24, 25 and 26 are connected to the inputs of arithmetic logic unit 2. And the outputs of counters with output buses 20 arithmetic logic unit 2.

Текуща  адресаци  данных внутри слова осуществл етс  е помощью счетчика 13 текущего адреса, содержимое The current addressing of data within a word is performed by the counter 13 of the current address, the contents

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 начинаетс  обработка байта О следуютдего слова без приостановки действи  процессора, В этом случаеWhich can be sequentially changed under the control of micro-commands in the direction of increase or decrease. After sampling the required number of data bytes, the current value of the counter 13 can be returned under the microcommand control to the register 24, 25 or 26 byte numbers. Processing after one of the operands is usually placed partially or fully in the buffer data memory 5. At the same time the required number of memory accesses is performed and sequential swapping of data bytes via bus 19 from data coder 14 to buffer 5. Thus, a sufficient stock of data is created for processing without accessing operations memory of this operand. Next, data from the field, another operand is stored in the same way, but the data is transferred by byte through bus 19 to the input of arithmetic logic unit 2. At the same time, byte-by-byte sampling of another operand from the buffer memory 5 and formation of the result byte takes place. The result should normally be placed in RAM. The accumulation of the result occurs in the data register 11 at the location of the used bytes of the source data under the control of the current address counter13 as follows. The value of the counter 13, in accordance with which the output of the data switch 14 is formed, enters through the delay element 15 to the block 16 of sampling elements I. The delay element 15 ensures the delay of the counter 13 of the current address by one processor cycle. Thus, when the new value of the counter 13 is selected, the next byte of the initial data on the block 16 of the sample of elements is And the previous value of the byte number on the output buses of the arithmetic logic unit 2 has the result of processing the previous byte. This result is recorded under the control of micro-instructions in the data register 11 via the elements 17 And to the place determined by the AND sample selector 18, which decrypts the delayed value of the byte number. The current value of the byte number in the counter 13 is also used to determine the moment of the formation of the control word of the memory, which means the moment of accessing the memory, as the control word contains the request; to perform a memory operation If the current value of the byte number in the 13 NB counter is processed in the right-hand data field, or when the data field is processed from left to right in the NB 1, the last byte in the word is processed, and to continue the operation without pausing in the next cycle the processor needs to: in the data register 11, new data is received, or the data register 11 is released from the result by the beginning of the next cycle. To do this, it is necessary to form a request for accessing the RAM before the processor finishes processing the last byte in the word. If the data field ends within a given memory word, then the no address for retrieving data is not required, i.e., the time when a request to execute a memory operation is formed depends on the current length of the processed field. The formation of the control word is determined by the circuit 18 for determining the moment of accessing the RAM, which generates control signals as a function of the current value of the byte number NB and the current value of the length of the field L, The current value of the length of the field indicating at each time the number of data bytes processing in this operation, is formed during processing in the arithmetic logic unit 2 and is transmitted to the circuit 18 for determining the moment of accessing the RAM through the bus 36 of the current field length. Scheme 18 can test several different ratios of the byte number and length, depending on the operation to be performed. For example, when processing the bytes of the field from left to right, the ratio of type (HB 5) may be broken. () + (NB 6) .- () + f (NB 7), where the + sign indicates a logical addition. If the circuit 18 has generated a control signal, then the required control word is formed in the memory word register 12, and the physical address of the next memory word is written by the control command of microcommands through elements 37, 38 or 39 and from the required counter (21, 22 or 23) Thereafter, the memory operation is considered initiated, and the contents of the counters 21, 22, or 23 can be changed by the processor to prepare the next call. From the above relation between the byte number and the current floor length, it is clear that the order has increased. Memory operation In this case, it can be generated during processor processing byte 5, byte 6 or byte 7 of the current data word. If a request to perform a memory operation is made during processing of byte 5, then the first half of the memory cycle (Tg) is used by the processor to process bytes 6 and 7, and after sampling and receiving data from the new memory word in register 11 during memory status 2, the processing of byte O begins, followed by words without stopping the processor, In this case

процессор работает одновременно и параллельно с блоком пам ти в тече ие всего цикла -пам ти, т.е. осуществл етс  полное перекрытие цикла оперативной пам ти циклами процессора . Обращение к блоку пам ти во врем  обработки процессором байта 6 или байта 7 возможно тогда, когда обработка заданного пол  начинаетс  с этих байтов. Однако в этих случа х возможно только частичное перекрытие цикла пам ти циклами процессора так как процессор не имеет запаса текущих данных на два цикла процессора , соответствующих времени выборки оперативной пам ти (Tg), и его действие должно блокироватьс  до получени  нового слова данных из пам ти, т.е. до достижени  пам тью состо ни  2.the processor operates simultaneously and in parallel with the memory block during the entire cycle — i.e. a complete overlap of the RAM cycle by the processor cycles. Accessing the memory block during processing by the processor byte 6 or byte 7 is possible when the processing of the specified field begins with these bytes. However, in these cases, it is only possible to partially overlap the memory cycle with the processor cycles, since the processor does not have a current data supply for two processor cycles corresponding to the random access memory sampling time (Tg), and its operation must be blocked until a new data word is received from the memory. i.e. until memory reaches state 2.

Блокирование действи  процессора производитс  в блоке б микропрограммного управлени .The blocking of the action of the processor is performed in the block B of the firmware control.

Блок 6 микропрограммного управлени  содержит посто нную пам ть 28 дл хранени  микропрограмм, согласно которым выполн ютс  операции процессора . Номер Текущего цикла процессор хранитс  в регистре 27 текущего цикла и представл ет собой одновременно и адрес посто нной пам ти 28, по которому находитс  слово микрокоманды данного цикла. Извлеченное из .пам ти 28 слово дешифруетс  на дешифраторах 29 микрокоманд, на выходах которых формируютс  сигналгл управлени  вентил ми микроопераций. Схема 30 определени  ж мeнтa блокировки формирует сигнал при по влении в регистре текущего цикла процессора 27 номеров таких циклов, в которых требуетс  результат очередной операции оперативной пам ти. Блок 31 блокировки процессора при наличии сигнала с Формировател  30 анализирует состо ние оперативной пам ти по сигналам, поступающим по шинам 10 контрол  состо ни  пам ти . Если пам ть находитс  в состо нии 2, которое означает, что в оперативной пам ти завершаетс  запись предьадущего 8-байтового слова результата , либо вьгерано новое 8-байтовое слово ДАННЫХ, действие процессора не блокируетс , т.е. микропрограшла процессора продолжаетс  без задержки Если пам ть не достигла состо ни  2, схема блокировани  вырабатьшает сигналы , блокирующие выход микрокоманд и изменение номера цикла. Таким образом, процессор оказываетс  в состо нии ожидани  до тех пор, пока устанавливаетс  состо ние 2 оперативной пам ти.Firmware control unit 6 contains a permanent memory 28 for storing firmware, according to which processor operations are performed. The current cycle number of the processor is stored in the register 27 of the current cycle and is at the same time the address of the permanent memory 28, which is the word microcommand of this cycle. The word extracted from pam 28 is decrypted on the decoders of 29 microinstructions, the outputs of which form the signal to control the microoperations gates. The lock block determination circuit 30 generates a signal when 27 numbers of such cycles appear in the current processor cycle register, in which the result of the next operational memory operation is required. The processor blocking unit 31, in the presence of a signal from the Shaper 30, analyzes the state of the RAM by signals received via the memory monitoring buses 10. If the memory is in state 2, which means that the previous 8-byte result word is being completed in RAM, or the new 8-byte DATA word is terminated, the processor's action is not blocked, i.e. the microprogram of the processor continues without delay. If the memory has not reached state 2, the blocking circuit generates signals that block the output of micro-commands and the change of the cycle number. Thus, the processor is in the idle state as long as the state 2 of the RAM is set.

Изобретение применимо в вычислительных машинах, имеющих быстродействующие арифметико-логические устройства и оперативную пам ть низкого быстродействи .The invention is applicable to computers having high-speed arithmetic logic devices and low-speed RAM.

В предлагаемом микропрограммном процессоре при его реализации может модифицироватьс  величина порции данных дл  обмена с оперативной пам тью и соотношение между длительностью цикла оперативной пам ти длительного процессора, что приведет к изменению разр дности счетчика 13 и регистров 24, 25, 26, к изменению разр дности регистра 11 данных,блока 16 выборки, а также к выбору другого объема буферной пам ти данных 5.In the proposed microprocessor processor, during its implementation, the size of the data portion for exchanging with the RAM and the ratio between the duration of the RAM cycle of the long processor can be modified, which will lead to a change in the size of the counter 13 and registers 24, 25, 26, and a change in the register size 11 data, block 16 of the sample, as well as to the choice of another volume of buffer data memory 5.

Уменьшение времени выполнени  операций находитс  в пределах от 1,6 до 2 раз дл  различных операций .The reduction in the execution time of the operations is in the range of 1.6 to 2 times for various operations.

2020

Claims (1)

Формула изобретени Invention Formula Микропрограммный процессор, содержащий буферную пам ть, арифметико5 логическое устройство, регистр слова пам ти, регистр данных, коммутатор данных, блок выборки элементов И, элемент задержки, блок пам ти, пам ть микропрограмм, де0 шифратор микрокоманд, регистр текущего цикла, блок блокировки процессора , BocisMb элементов И, причем вход-выход арифметическо-логического устройства соединен с выходом-входом буферной пам ти, выход дешифратора Firmware processor containing buffer memory, arithmetic logic unit, memory word register, data register, data switch, AND blocker, delay element, memory block, microprogram memory, de0 microcoder encoder, current cycle register, processor lock block , BocisMb elements And, with the input-output of the arithmetic-logical device connected to the output-input of the buffer memory, the output of the decoder 5 микрокоманд соединен с первыми входами первого, второго, третьего, четвертого, п того, шестого, седьмого элементов И, первым входом буферной пам ти и первым входом арифмети0 ческо-логического устройства,первый выход блока пам ти соединен с первым входом восьмого элемента И, выход которого подключен к первому входу регистра данных, выход которого 5 microinstructions are connected to the first inputs of the first, second, third, fourth, fifth, sixth, seventh And elements, the first input of the buffer memory and the first input of the arithmetic logic unit, the first output of the memory block is connected to the first input of the eighth element And, the output of which is connected to the first input of the data register, the output of which 5 соединен с первым входом блока пам ти и первым входом коммутатора данных, которого подключен ко второму входу буферной пам ти и второму входу арифметическо-логического уст0 ройства, второй выход блока пам ти соединен со вторым входом восьмого элемента И и первым входом блока блокировки процессора, выход которого подключен к первому входу дешиф5 ратора микрокоманд и первому входу регистра текущего цикла, выход которого соединен со входом пам ти микропрограмм, выход которой соединен со вторьвл входом дешифратора 5 is connected to the first input of the memory block and the first input of the data switch, which is connected to the second input of the buffer memory and the second input of the arithmetic logic unit, the second output of the memory block is connected to the second input of the eighth And element and the first input of the processor lock block, the output of which is connected to the first input of the decryption of the microinstructor racer and the first input of the register of the current cycle, the output of which is connected to the memory input of the microprograms, the output of which is connected to the second input of the decoder 0 микрокоманд и вторым входом регистра т:екущего цикла, первый выход арифметическо-логического устройства соединен со вторым входом первого элемента И, выход которого подключен ко 0 microinstructions and the second input register: current cycle, the first output of the arithmetic-logic device is connected to the second input of the first element And, the output of which is connected to 5 второму входу регистра данных, выхо-(5 second input of the data register, output- (
SU782566799A 1978-01-04 1978-01-04 Microprogramme processor SU741269A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU782566799A SU741269A1 (en) 1978-01-04 1978-01-04 Microprogramme processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU782566799A SU741269A1 (en) 1978-01-04 1978-01-04 Microprogramme processor

Publications (1)

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

Family

ID=20743266

Family Applications (1)

Application Number Title Priority Date Filing Date
SU782566799A SU741269A1 (en) 1978-01-04 1978-01-04 Microprogramme processor

Country Status (1)

Country Link
SU (1) SU741269A1 (en)

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 (en) Device for addressing memory units
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 (en) Microprogramme processor
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
SU613402A1 (en) Storage
KR860003554A (en) Shared Main Memory and Disk Controller Memory Address Registers
ES438259A1 (en) Telecommunication system controlled by stored program instructions
JPH0795269B2 (en) Instruction code decoding device
SU1049914A1 (en) Device for debugging program
SU652615A1 (en) Device for accessing rapid-access storage
JPS6074038A (en) Information processor
SU1111150A1 (en) Interface for linking two computers
SU1149257A1 (en) Instruction access driver
JPH0232649B2 (en)
SU664222A1 (en) Logic storage
SU1485255A1 (en) Buffer memory addressing unit