RU2058041C1 - Device for data exchange for two processors through shared memory - Google Patents
Device for data exchange for two processors through shared memory Download PDFInfo
- Publication number
- RU2058041C1 RU2058041C1 SU5044430A RU2058041C1 RU 2058041 C1 RU2058041 C1 RU 2058041C1 SU 5044430 A SU5044430 A SU 5044430A RU 2058041 C1 RU2058041 C1 RU 2058041C1
- Authority
- RU
- Russia
- Prior art keywords
- input
- output
- processor
- inputs
- control
- Prior art date
Links
Images
Landscapes
- Multi Processors (AREA)
Abstract
Description
Изобретение относится к вычислительной технике и может быть использовано при создании многопроцессорных управляющих систем реального времени с различными типами используемых процессоров. The invention relates to computer technology and can be used to create real-time multiprocessor control systems with various types of processors used.
Известно устройство, состоящее из нескольких процессоров, обмен между которыми осуществляется через общую память данных, часть которой становится "почтовым ящиком", в котором обменивающиеся данными процессоры располагают информацию [1] Процессор, получивший информацию, затем выполняет задание, определенное сообщением в "почтовом ящике". A device is known, consisting of several processors, the exchange between which is carried out through a common data memory, part of which becomes a “mailbox”, in which processors exchanging data have information [1] The processor that received the information then performs the task defined by the message in the “mailbox” "
Устройство содержит первый, второй и третий процессоры, общую память данных, контроллер общей памяти, содержащий логику чтения/записи, логику приоритетов и логику управления шиной общей памяти данных. Каждый процессор подключается к шине общей памяти посредством шинного формирователя адреса к памяти, шинного формирователя данных для записи в память и регистра-защелки для данных, поступающих при чтении из памяти. Указанные шинные формирователи и регистр-защелка управляются от логики управления шиной общей памяти данных контроллера общей памяти. Регистр-защелка данных при чтении необходим для дополнительного удержания во времени на входе данных микропроцессора считанной из общей памяти информации в соответствии с требованиями его временной диаграммы работы. The device comprises first, second and third processors, a shared data memory, a shared memory controller containing read / write logic, priority logic, and shared bus memory control logic. Each processor is connected to the shared memory bus via a bus memory driver, a bus driver for writing to memory, and a latch register for data coming in from memory. The indicated bus drivers and the latch register are controlled by the control logic of the shared data bus of the shared memory controller. A register-latch of data during reading is necessary for additional holding in time at the data input of the microprocessor of information read from the general memory in accordance with the requirements of its timing diagram.
Известно также устройство для сопряжения двух процессоров через общую память [2] содержащее блок оперативной памяти, мультиплексор адреса, первый шинный формирователь, триггер, второй шинный формирователь, мультиплексор управления и элемент НЕ. В указанном устройстве доступ к блоку оперативной памяти регламентируется асинхронным RS-триггером по мере поступления требований от того или иного процессоров на противофазные его входы. При поступлении требования на обмен данными с блоком оперативной памяти от одного из процессоров во время выполнения цикла обмена с этой же памятью другим процессором, первый процессор переводится в состояние ожидания завершения текущего цикла обмена данными другим процессором до тех пор, пока на его входе подтверждения запроса не появится сигнал логической "1". A device is also known for interfacing two processors through a common memory [2] comprising a random access memory block, an address multiplexer, a first bus driver, a trigger, a second bus driver, a control multiplexer, and an element NOT. In the specified device, access to the RAM block is regulated by an asynchronous RS-trigger as requests from one processor or another go to its antiphase inputs. When a request is received for data exchange with a RAM unit from one of the processors during the execution of an exchange cycle with the same processor by another processor, the first processor is put into a waiting state for the completion of the current data exchange cycle by another processor until at its input a request is confirmed a logical 1 signal will appear.
Общим недостатком указанных устройств является неизбежность некоторого снижения быстродействия процессоров в случаях, когда запрос на обслуживание общей памяти данных от одного процессора с любым приоритетом возникает в момент выполнения процедуры обслуживания этой памяти другим процессором. Указанный недостаток особенно нежелателен для систем управления реального масштаба времени, когда один из процессоров является исполнительным и управляет быстродействующими физическими объектами, например при управлении сервоприводом в прецизионных позиционирующих координатных системах. Основными требованиями в таких системах управления являются максимальное повышение качества регулирования за счет минимизации времени выполнения программного управляющего цикла исполнительного микропроцессора, а также строгая регламентация по времени выдачи управляющих воздействий на исполнительные устройства и механизмы, вследствие чего время выполнения программного цикла для такого управления также должно быть регламентированным. A common drawback of these devices is the inevitability of a certain decrease in processor speed in cases where a request for servicing a shared data memory from one processor with any priority occurs at the time the other processor serves this memory. This drawback is especially undesirable for real-time control systems, when one of the processors is executive and controls high-speed physical objects, for example, when controlling a servo drive in precision positioning coordinate systems. The main requirements in such control systems are to maximize the quality of regulation by minimizing the execution time of the program control cycle of the executive microprocessor, as well as strictly regulating the time for issuing control actions on actuators and mechanisms, as a result of which the execution time of the program cycle for such control should also be regulated .
Ближайшим прототипом изобретения является устройство для обмена данными двух процессоров через общую память [2] предназначенное для построения микропроцессорных быстродействующих управляющих систем. Устройство содержит триггер, блок оперативной памяти, блок памяти программ, мультиплексор адреса, два шинных формирователя, мультиплексор управления, два элемента И и элемент задержки, причем адресный вход и информационный выход блока памяти программ являются входом и выходом устройства для соединения соответственно с адресным выходом и информационным входом/выходом второго процессора, а вход выбора является входом устройства для соединения с выходом выбора памяти программ второго процессора, первый и второй информационные входы мультиплексора адреса являются входами устройства для соединения с адресными выходами соответственно первого и второго процессоров, выход мультиплексора адреса соединен с адресным входом блока оперативной памяти, первые информационные входы/выходы шинных формирователей соединены с информационным входом/выходом блока оперативной памяти, а вторые информационные входы/выходы шинных формирователей являются входами/выходами устройства для соединения соответственно с информационными входами/выходами первого и второго процессоров, первый и второй информационные входы первой группы мультиплексора управления являются входами устройства для соединения соответственно с выходами выбора блока оперативной памяти и управления чтением первого процессора, первый, второй и третий информационные входы второй группы мультиплексора управления являются входами устройства для соединения соответственно с выходами выбора блока оперативной памяти, управления чтением и управления записью второго процессора, первый, второй и третий выходы мультиплексора управления соединены соответственно с входами выбора, управления чтением и управления записью блока оперативной памяти, управляющие входы первого и второго шинных формирователей являются входами устройства для соединения соответственно с выходами управления чтением первого и второго процессоров, первый вход первого элемента И является входом устройства для соединения с выходом управления записью первого процессора, второй вход соединен с выходом элемента задержки, а выход с третьим информационным входом первой группы мультиплексора управления, выход второго элемента И соединен с входом элемента задержки, управляющими входами мультиплексоров адреса и управления, входом разрешения первого шинного формирователя и выходом устройства для подключения к входу подтверждения выбора блока оперативной памяти первого процессора, первый вход второго элемента И соединен с входом устройства для подключения к выходу выбора блока оперативной памяти первого процессора, второй вход соединен с входом устройства для подключения к выходу выбора блока памяти программ второго процессора, а третий вход соединен с выходом триггера, вход данных которого соединен с входом устройства для подключения к выходу выбора блока оперативной памяти первого процессора, а тактовый вход с входом устройства для подключения к выходу выбора блока памяти программ второго процессора, вход разрешения второго шинного формирователя является входом устройства для соединения с выходом выбора блока оперативной памяти второго процессора. The closest prototype of the invention is a device for exchanging data between two processors through a shared memory [2] designed to build microprocessor-based high-speed control systems. The device comprises a trigger, a RAM block, a program memory block, an address multiplexer, two bus drivers, a control multiplexer, two AND elements and a delay element, the address input and information output of the program memory block being the input and output of the device for connecting, respectively, with the address output and information input / output of the second processor, and the input of choice is the input of the device for connecting to the output of the choice of program memory of the second processor, the first and second information inputs are mule address types are inputs of the device for connecting to the address outputs of the first and second processors, the output of the address multiplexer is connected to the address input of the RAM block, the first information inputs / outputs of the bus drivers are connected to the information input / output of the RAM block, and the second information inputs / outputs bus formers are inputs / outputs of the device for connecting, respectively, with information inputs / outputs of the first and second processors, the first and the second information inputs of the first group of the control multiplexer are inputs of the device for connecting, respectively, with the outputs of the RAM block selection and reading control of the first processor, the first, second and third information inputs of the second group of the control multiplexer are inputs of the device for connecting, respectively, with the outputs of the RAM block selection, read control and write control of the second processor, the first, second and third outputs of the control multiplexer are connected respectively Actually, with the inputs for selecting, reading control, and writing control of the random access memory block, the control inputs of the first and second bus drivers are the inputs of the device for connecting, respectively, with the read control outputs of the first and second processors, the first input of the first element AND is the input of the device for connecting to the write control output the first processor, the second input is connected to the output of the delay element, and the output is from the third information input of the first group of the control multiplexer, the output of the second element And is connected to the input of the delay element, the control inputs of the address and control multiplexers, the input of the resolution of the first bus driver and the output of the device for connecting to the input of the selection confirmation block of the RAM of the first processor, the first input of the second element And is connected to the input of the device for connecting to the output of the block selection RAM of the first processor, the second input is connected to the input of the device for connecting to the output of the selection of the program memory block of the second processor, and the third input is connected with a trigger output, the data input of which is connected to the output of the choice of the RAM block of the first processor, and the clock input with the input of the device to connect to the output of the choice of the memory block of the second processor, the resolution input of the second bus driver is the input of the device for connecting to output selection block of RAM of the second processor.
В указанном устройстве доступ к блоку оперативной памяти предоставляется первому процессору только в промежутки времени, когда отсутствует обращение к этой памяти от второго (исполнительного) процессора, а именно, когда второй процессор обращается к своей памяти программ для считывания кода текущей команды, таким образом обеспечивая максимальное быстродействие при доступе к блоку оперативной памяти устройства от второго процессора. In the specified device, access to the RAM block is provided to the first processor only at intervals when there is no access to this memory from the second (executive) processor, namely, when the second processor accesses its program memory to read the code of the current command, thus ensuring maximum performance when accessing the device’s RAM block from the second processor.
Недостатком указанного устройства является жесткая зависимость временной диаграммы работы первого процессора от длительности сигнала выбора памяти программ второго процессора при обращении к блоку общей памяти устройства, в результате чего для сохранения нормального функционирования устройства в качестве первого процессора может быть использован только такой процессор, который с одной стороны при обращении к блоку общей памяти устройства в режиме считывания должен успеть завершить цикл считывания информации из памяти до момента снятия сигнала выбора памяти программ второго процессора (иначе считываемая первым процессором информация будет утеряна), а с другой стороны последующее обращение первого процессора к общей памяти устройства в режимах записи или считывания не должно появиться ранее момента снятия сигнала выбора памяти программ второго процессора, в течение действия которого уже было произведено обращение первого процессора к памяти программ устройства. Иными словами в качестве первого процессора к устройству может быть подключен такой микропроцессор, быстродействие которого не ниже и не выше пределов, определенных длительностью сигнала выбора памяти программ второго процессора. Микропроцессоры, не удовлетворяющие этим требованиям, не могут быть использованы для подключения к указанному устройству в качестве первого процессора. Например, при подключении к устройству в качестве второго процессора однокристальной микроЭВМ типа КР1816ВЕ31 (18031) при тактовой частоте 12 МГц длительность сигнала выбора памяти программ (PSEN) составляет 240 нс. При таких параметрах второго процессора к устройству в качестве первого процессора невозможно подключить, например, микропроцессор типа КР1810ВМ86 (18086), где время удержания сигнала считывания относительно установления сигнала подтверждения выбора на его соответствующем входе составляет до 540 нс. Это же относится, например, и к микропроцессору типа КР580ВМ80 (i8080), аналогичный временной параметр которого при номинальной тактовой частоте 2 МГц составляет 850 нс. И с другой стороны при подключении к такому устройству слишком быстрого микропроцессора, например типа i80286, время установления сигнала считывания которого относительно времени снятия им сигнала считывания при предыдущем обращении к памяти при тактовой частоте 16 МГц может составлять 80 нс, также будут наблюдаться сбои в работе устройства, связанные с возможным повторным обращением первого процессора к блоку общей памяти в течение времени действия одного цикла сигнала выбора памяти программ второго процессора. The disadvantage of this device is the strict dependence of the timing diagram of the first processor on the duration of the signal for selecting the program memory of the second processor when accessing the shared memory block of the device, as a result of which only such a processor can be used as the first processor, which on the one hand when accessing the shared memory block of the device in the reading mode, it should have time to complete the cycle of reading information from the memory until receiving the signal for selecting the program memory of the second processor (otherwise, the information read by the first processor will be lost), and on the other hand, the subsequent access of the first processor to the device’s shared memory in the write or read modes should not appear earlier than the moment the signal for selecting the program memory of the second processor was removed which has already been accessed by the first processor to the program memory of the device. In other words, such a microprocessor can be connected to the device as the first processor, the speed of which is not lower and not higher than the limits determined by the duration of the signal for selecting the program memory of the second processor. Microprocessors that do not meet these requirements cannot be used to connect to the specified device as the first processor. For example, when a single-chip microcomputer of the KR1816BE31 type (18031) is connected to the device as a second processor at a clock frequency of 12 MHz, the duration of the program memory select signal (PSEN) is 240 ns. With such parameters of the second processor, it is impossible to connect, for example, a microprocessor of the type КР1810ВМ86 (18086), where the hold time of the read signal relative to the establishment of the selection confirmation signal at its corresponding input is up to 540 ns. The same applies, for example, to a microprocessor of the type КР580ВМ80 (i8080), the similar time parameter of which at a nominal clock frequency of 2 MHz is 850 ns. And on the other hand, if a microprocessor is too fast connected to such a device, for example, type i80286, the read signal establishment time of which is relative to the time it took the read signal when the memory was accessed at a clock frequency of 16 MHz, it can be 80 ns, and the device will also malfunction associated with the possible re-access of the first processor to the shared memory block during the duration of one cycle of the signal for selecting the program memory of the second processor.
Устройство для обмена данными двух процессоров через общую память, содержащее блок оперативной памяти, блок памяти программ, адресный вход и информационный выход которого являются входом и выходом устройства для соединения соответственно с адресным выходом и информационным входом/выходом первого процессора, а вход выбора является входом устройства для соединения с выходом "выбора памяти программ" первого процессора, мультиплексор адреса, первый и второй информационные входы которого являются входами устройства для соединения с адресными выходами соответственно первого и второго процессоров, выход мультиплексора адреса соединен с адресным входом блока оперативной памяти, блок приемо-передачи данных и двунаправленный шинный формирователь, первые информационные входы/выходы которых соединены с информационным входом/выходом блока оперативной памяти, а вторые информационные входы/выходы являются входами/выходами устройства для соединения с информационными входами/выходами второго и первого процессоров соответственно, входы разрешения передачи и разрешения приема блока приемо-передачи данных соединены соответственно с входами устройства для соединения с выходами управления чтением и управления записью второго процессора, два элемента И, первый элемент задержки, выход которого соединен с первым входом первого элемента И, мультиплексор управления, первый и второй входы первой группы информационных входов которого являются входами устройства для соединения соответственно с выходами выбора блока оперативной памяти и управления чтением второго процессора, третий вход первой группы информационных входов мультиплексора управления соединен с выходом первого элемента И, первый, второй и третий входы второй группы информационных входов мультиплексора управления являются входами устройства для соединения соответственно с выходами выбора блока оперативной памяти, управления чтением и управления записью первого процессора, первый, второй и третий информационные выходы мультиплексора управления соединены соответственно с входами выбора, управления чтением и управления записью блока оперативной памяти, первый триггер, синхровход которого соединен с входом устройства для соединения с выходом выбора памяти программ первого процессора, управляющий вход и вход разрешения двунаправленного шинного формирователя соединены соответственно с входами устройства для соединения с выходами управления чтением и "выбора блока оперативной памяти" первого процессора, второй вход первого элемента И является входом устройства для соединения с выходом управления записью второго процессора, выход второго элемента И соединен с управляющими входами мультиплексоров адреса и управления, с входом первого элемента задержки и входом выбора блока приемо-передачи данных, второй триггер, элемент НЕ, третий и четвертый элементы И, элемент ИЛИ второй и третий элементы задержки, первые входы третьего и четвертого элементов И и вход второго элемента задержки соединены с входом устройства для соединения с выходом выбора блока оперативной памяти второго процессора, выход второго элемента задержки соединен с входом сброса первого триггера, вход элемента НЕ соединен с входом устройства для соединения с выходом выбора памяти программ первого процессора, выход элемента НЕ соединен с вторым входом третьего элемента И, инверсный выход первого триггера соединен с вторым входом четвертого элемента И, выходы третьего и четвертого элементов И соединены соответственно с первым и вторым входами элемента ИЛИ, выход которого соединен с синхровходом второго триггера, прямой выход первого триггера соединен с первым входом второго элемента И, информационным входом второго триггера и входом третьего элемента задержки, выход которого является выходом устройства для соединения с входом "подтверждения выбора блока оперативной памяти" второго процессора, инверсный выход второго триггера соединен с вторым входом второго элемента И, информационный вход первого триггера соединен с входом логической "1" устройства, сохраняя максимальное быстродействие при обслуживании доступа к блоку оперативной памяти устройства от второго процессора, обеспечивает подключение к нему различных типов процессоров с любым различным быстродействием их временных диаграмм работы, значительно расширяя таким образом область применения устройства. A device for exchanging data between two processors through a common memory containing a random access memory block, a program memory block, the address input and information output of which are the input and output of the device for connecting to the address output and the information input / output of the first processor, respectively, and the selection input is the device input for connecting to the output of the "choice of program memory" of the first processor, the address multiplexer, the first and second information inputs of which are inputs of the device for connecting to the address outputs of the first and second processors respectively, the output of the address multiplexer is connected to the address input of the random access memory block, the data reception and transmission unit and the bi-directional bus driver, the first information inputs / outputs of which are connected to the information input / output of the random access memory, and the second information inputs / the outputs are the inputs / outputs of the device for connecting to the information inputs / outputs of the second and first processors, respectively, the inputs enable transmission and allow reception and the data receiving and transmitting unit are connected respectively to the inputs of the device for connecting to the read control and recording control outputs of the second processor, two AND elements, a first delay element, the output of which is connected to the first input of the first AND element, the control multiplexer, the first and second inputs of the first group the information inputs of which are the inputs of the device for connecting, respectively, with the outputs of the choice of random access memory block and reading control of the second processor, the third input of the first group of information of the input inputs of the control multiplexer is connected to the output of the first element AND, the first, second and third inputs of the second group of information inputs of the control multiplexer are the inputs of the device for connecting, respectively, the outputs of the choice of random access memory block, read control and recording control of the first processor, the first, second and third information the outputs of the control multiplexer are connected respectively to the inputs of the selection, read control and write control of the RAM block, the first trigger, sync which is connected to the input of the device for connecting to the output of the program memory of the first processor, the control input and the enable input of the bi-directional bus driver are connected respectively to the inputs of the device for connecting to the read control outputs and the "selection of random access memory" of the first processor, the second input of the first element And is the input of the device for connecting to the recording control output of the second processor, the output of the second AND element is connected to the control inputs of the address and control multiplexers phenomena, with the input of the first delay element and the input of the selection of the data reception and transmission unit, the second trigger, the element NOT, the third and fourth elements AND, the OR element of the second and third delay elements, the first inputs of the third and fourth elements AND and the input of the second delay element are connected to the input of the device for connecting to the output of the choice of RAM block of the second processor, the output of the second delay element is connected to the reset input of the first trigger, the input of the element is NOT connected to the input of the device for connecting to the output of the memory selection of the first processor, the output of the element is NOT connected to the second input of the third element AND, the inverse output of the first trigger is connected to the second input of the fourth element AND, the outputs of the third and fourth elements AND are connected respectively to the first and second inputs of the OR element, the output of which is connected to the sync input of the second trigger , the direct output of the first trigger is connected to the first input of the second AND element, the information input of the second trigger and the input of the third delay element, the output of which is the output of the device for connecting connection with the input of the confirmation of the choice of random access memory block of the second processor, the inverse output of the second trigger is connected to the second input of the second element AND, the information input of the first trigger is connected to the input of logical "1" of the device, while maintaining maximum speed when servicing access to the memory of the device from the second processor, provides the connection to it of various types of processors with any different speed of their time diagrams of work, thus significantly expanding the scope of application features of the device.
На фиг. 1 представлена структурная схема предлагаемого устройства; на фиг. 2 структурная схема блока приемо-передачи данных; на фиг. 3 и 4 временные диаграммы циклов обращения к блоку оперативной памяти устройства от второго процессора соответственно в режимах считывания и записи для случаев, когда к устройству в качестве второго процессора подключен микропроцессор с малым быстродействием; на фиг. 5 временная диаграмма обращения к блоку оперативной памяти устройства от второго процессора в режиме считывания для случая, когда к устройству в количестве второго процессора подключен быстродействующий микропроцессор; на фиг. 6 граф микропрограммного автомата части устройства, обеспечивающий процедуру предоставления доступа к блоку оперативной памяти устройства от второго процессора. In FIG. 1 presents a structural diagram of the proposed device; in FIG. 2 is a structural diagram of a data receiving and transmitting unit; in FIG. 3 and 4 are timing diagrams of the cycles of accessing the device’s RAM block from the second processor, respectively, in read and write modes for cases when a microprocessor with a low speed is connected to the device as a second processor; in FIG. 5 is a timing diagram of accessing the device’s RAM block from the second processor in read mode for the case when a high-speed microprocessor is connected to the device in the amount of the second processor; in FIG. 6 graph of the firmware of a part of the device, providing the procedure for providing access to the unit of RAM of the device from the second processor.
Устройство содержит блок оперативной памяти 1, блок памяти программ 2, мультиплексор адреса 3, блок приемо-передачи данных 4, двунаправленный шинный формирователь 5, первый 6 и второй 7 элементы И, первый элемент задержки 8, мультиплексор управления 9, первый 10 и второй 11 триггеры, элемент НЕ 12, третий 13 и четвертый 14 элементы И, элемент ИЛИ 15, второй 16 и третий 17 элементы задержки, причем адресный вход и информационный выход блока памяти программ 2 являются входом и выходом устройства для соединения соответственно с адресным выходом и информационным входом/выходом первого процессора 18, а вход выбора является входом устройства для соединения с выходом "выбора памяти программ" первого процессора 18, первый и второй информационные входы мультиплексора адреса 3 являются входами устройства для соединения с адресными выходами соответственно второго 19 и первого 18 процессоров, выход мультиплексора адреса 3 соединен с адресным входом блока оперативной памяти 1, первые информационные входы/выходы блока приемо-передачи данных 4 и двунаправленного шинного формирователя 5 соединены с информационным входом/выходом блока оперативной памяти 1, а вторые информационные входы/выходы их являются входами/выходами устройства для соединения с информационными входами/выходами второго 19 и первого 18 процессоров соответственно, входы разрешения передачи и разрешения приема блока приемо-передачи данных 4 соединены соответственно с входами устройства для соединения с выходами управления чтением и управления записью второго процессора 19, выход первого элемента задержки 8 соединен с первым входом первого элемента И 6, первый и второй информационные входы первой группы мультиплексора управления 9 являются входами устройства для соединения соответственно с выходами выбора блока оперативной памяти и управления чтением второго процессора 19, третий информационный вход первой группы мультиплексора управления 9 соединен с выходом первого элемента И 6, первый, второй и третий информационные входы второй группы мультиплексора управления 9 являются входами устройства для соединения соответственно с выходами выбора блока оперативной памяти, управления чтением и управления записью первого процессора 18, первый, второй и третий информационные выходы мультиплексора управления 9 соединены соответственно с входами выбора, управления чтением и управления записью блока оперативной памяти, синхровход первого триггера 10 соединен с входом устройства для соединения с выходом выбора памяти программ первого процессора 18, управляющий вход и вход разрешения двунаправленного шинного формирователя 5 соединены соответственно с входами устройства для соединения с выходами управления чтением и выбора блока оперативной памяти первого процессора 18, второй вход первого элемента И 6 соединен с входом устройства для соединения с выходом управления записью второго процессора 19, выход второго элемента И 7 соединен с управляющими входами мультиплексоров адреса 3 и управления 9, с входом первого элемента задержки 8 и входом выбора блока приемо-передачи данных 4, первые входы третьего 13 и четвертого 14 элементов И и вход второго элемента задержки 16 соединены с входом устройства для соединения с выходом выбора блока оперативной памяти второго процессора 19, выход второго элемента задержки 16 соединен с входом сброса первого триггера 10, вход инвертора 12 соединен с входом устройства для соединения с выходом выбора памяти программ первого процессора 18, выход инвертора 12 соединен с вторым входом третьего элемента И 13, инверсный выход первого триггера 10 соединен с вторым входом четвертого элемента И 14, выходы третьего 13 и четвертого 14 элементов И соединены соответственно с первым и вторым входами элемента ИЛИ 15, выход которого соединен с синхровходом второго триггера 11, прямой выход первого триггера 10 соединен с первым входом второго элемента И 7, информационным входом второго триггера 11 и входом третьего элемента задержки 17, выход которого является выходом устройства для соединения с входом подтверждения выбора блока оперативной памяти второго процессора 19, инверсный выход второго триггера 11 соединен с вторым входом второго элемента И 7, а на информационный вход первого триггера 10 подано напряжение, соответствующее уровню логической "1". The device comprises a random access memory unit 1, a program memory unit 2, an address multiplexer 3, a data transmit-receive unit 4, a
Блок приемо-передачи данных 4 (см. фиг. 2) содержит однонаправленный шинный формирователь 20, регистр-защелку 21, пятый 22 и шестой 23 элементы И, информационный выход однонаправленного шинного формирователя 20 соединен с информационным входом регистра/защелки 21 и является первым информационным входом/выходом блока приемо-передачи данных, информационный выход регистра/защелки 21 соединен с информационным входом однонаправленного шинного формирователя 20 и является вторым информационным входом/выходом блока приемо-передачи данных, первый вход шестого элемента И 23 и соединен с входом разрешения выдачи информации регистра-защелки 21 и является входом разрешения передачи блока приемо-передачи данных, первый вход пятого элемента И 22 является входом разрешения приема блока приемо-передачи данных, а выходы пятого 22 и шестого 23 элементов И соединены с входом разрешения однонаправленного шинного формирователя 20 и с входом разрешения приема информации регистра-защелки 21. The data receiving and transmitting unit 4 (see FIG. 2) contains a
Устройство работает следующим образом. The device operates as follows.
При подаче электрического питания на схему и инициализации процессоров 18 и 19 сигналом сброса (не показан) на входах устройства для соединения с выходами выбора блока оперативной памяти, управления чтением и управления записью устанавливаются пассивные состояния сигналов уровня логического "0" с соответствующих выходов второго 19 и первого 18 процессоров. Первый триггер 10 сигналом лог. "0", поступающим на его вход сброса через второй элемент задержки 16 с выхода выбора блока оперативной памяти второго процессора 19 устанавливается в состояние лог. "0", а сигнал лог. "0" с выхода второго элемента И 7, на первом входе которого установлен сигнал лог. "0" с прямого выхода первого триггера 10, коммутирует мультиплексор адреса 3 на трансляцию сигналов с адресного выхода первого процессора 18 на адресный вход блока оперативной памяти 1, а мультиплексор управления 9 на трансляцию сигналов с выходов выбора блока оперативной памяти, управления чтением и управления записью первого процессора 18 на соответствующие входы блока оперативной памяти 1. Линии первого информационного входа/выхода блока приемо- передачи данных 4 установлены в отключенное состояние сигналом лог. "0", поступающим на его вход выбора с выхода второго элемента И 7, таким образом обеспечивая возможность беспрепятственного прохождения данных между информационным входом/выходом блока оперативной памяти 1 и первым информационным входом/выходом двунаправленного шинного формирователя 5. When electric power is supplied to the circuit and the processors 18 and 19 are initialized with a reset signal (not shown) at the inputs of the device for connecting to the outputs of the main memory block selection, reading control and writing control, passive states of the logic level signals “0” from the corresponding outputs of the second 19 and first 18 processors. The
При снятии сигнала сброса процессоры 18 и 19 запускаются на выполнение каждый своей программы, программа первого процессора 18 хранится в блоке памяти программ 2, программа второго процессора 19 хранится в блоке памяти программ второго процессора (не показан). При этом первый процессор 18 выставляет на своем адресном выходе адрес первой команды выполняемой им программы, затем он выставляет на своем выходе "выбора памяти программ" сигнал лог. "1", который, поступая на вход выбора блока памяти программ 2, инициализирует выборку последнего по адресу, установленному на его адресном входе с адресного выхода первого процессора 18, при этом двунаправленный шинный формирователь 5 заперт по входу выбора сигналом лог. "0", поступающим с выхода "выбора блока оперативной памяти" первого процессора 18. В результате на выходе блока памяти программ 2 появляется требуемая информация, которая беспрепятственно вводится первым процессором 18 через его информационный вход/выход. Далее по мере выполнения программы производятся последующие обращения первого процессора 18 к своему блоку памяти программ 2 по вышеописанной процедуре независимо от состояния остальных функциональных узлов устройства. When the reset signal is removed, the processors 18 and 19 are launched to execute each of their programs, the program of the first processor 18 is stored in the program memory 2, the program of the second processor 19 is stored in the program memory of the second processor (not shown). In this case, the first processor 18 sets at its address output the address of the first command of the program it executes, then it sets at its output a "program memory selection" signal log. "1", which, entering the input of the selection of the program memory block 2, initializes the selection of the latter at the address set at its address input from the address output of the first processor 18, while the
При необходимости обращения к блоку оперативной памяти 1 для обмена данными первый процессор 18 устанавливает на своем адресном выходе требуемый код адреса, затем устанавливает сигнал лог. "1" на своем выходе "выбора блока оперативной памяти" и далее сигнал лог. "1" на одном из своих выходов управления чтением или управления записью в зависимости от режима обращения, при этом выбирается двунаправленный шинный формирователь 5 по входу выбора, а на его управляющем входе, определяющем направление потока данных, устанавливается значение сигнала, которое имеет место на выходе управления чтением первого процессора 18. Например, при чтении блока оперативной памяти 1 на выходе управления чтением первого процессора 18, а следовательно, и на управляющем входе двунаправленного шинного формирователя 5 будет иметь место уровень лог. "1", что определяет направление потока информации через двунаправленный шинный формирователь 5 с информационного входа/выхода блока оперативной памяти 1 к информационному входу/выходу первого процессора 18. Так как мультиплексоры адреса 3 и управления 9 скоммутированы сигналом лог. "0" с выхода второго элемента И 7 на трансляцию сигналов адреса и управления с соответствующих выходов первого процессора 18 на соответствующие входы блока оперативной памяти 1, а первый информационный вход/выход блока приемо-передачи данных 4 отключен и обеспечивает беспрепятственное прохождение данных между информационным входом/выходом блока оперативной памяти 1 и первым информационным входом/выходом двунаправленного шинного формирователя 5, то первый процессор 18 беспрепятственно осуществляет обращение к блоку оперативной памяти 1 в режимах как чтения, так и записи, чем обеспечивается максимально возможное быстродействие доступа к блоку оперативной памяти 1 от первого процессора. If necessary, access to the RAM block 1 for data exchange, the first processor 18 sets the address code required on its address output, then sets the signal log. "1" at its output "selection block RAM" and then the signal log. "1" at one of its outputs for reading control or writing control depending on the mode of access, in this case, a
Процесс доступа к блоку оперативной памяти 1 устройства от второго процессора 19 иллюстрируется временными диаграммами на фиг. 3, 4 и 5. Для удобства рассмотрения временные диаграммы разграфлены вертикальными линиями (интервалами) через определенные промежутки времени. В исходном состоянии до начала обращения второго процессора 19 для обмена данными к блоку оперативной памяти 1 (интервал 0 на фиг. 3, 4 и 5) выходы выбора блока оперативной памяти, управления чтением и управления записью второго процессора 19 не активны и на них имеют место сигналы лог. "0", при этом первый триггер 10 установлен сигналом лог. "0" на его входе сброса в состояние лог. "0" и не реагирует на сигналы, поступающие на его синхровход, на выходе второго элемента И 7 имеет место сигнал лог. "0", на выходах третьего 13 и четвертого 14 элементов И, а следовательно, и на синхровходе второго триггера 11 имеет место сигнал лог. "0", состояние второго триггера 11 не определено и не влияет в данный момент на работоспособность устройства. Первый и второй информационные входы/выходы блока приемо-передачи данных 4 отключены сигналами лог. "0", поступающими соответственно на его вход выбора с выхода второго элемента И 7 и на его вход разрешения передачи с выхода управления чтением второго процессора 19. The process of accessing the device RAM 1 from the second processor 19 is illustrated by timing diagrams in FIG. 3, 4 and 5. For convenience, time diagrams are marked with vertical lines (intervals) at regular intervals. In the initial state, before the second processor 19 starts accessing to exchange data to the RAM block 1 (
При обращении к блоку оперативной памяти 1 для обмена данными второй процессор 19 устанавливает на своем адресном выходе значение адреса требуемой ячейки а на своем выходе выбора блока оперативной памяти сигнал лог. "1" (например, в интервале 2 на диаграмме фиг. 3 и в интервале 10 на диаграмме фиг. 4), затем второй процессор 19 устанавливает сигнал лог. "1" на своем выходе управления чтением при обращении к блоку оперативной памяти в режиме чтения (фиг. 3) или на своем выходе управления записью при обращении в режиме записи (фиг. 4). При обращении в режиме чтения, кроме того, второй процессор 19 сигналом лог. "1" со своего выхода управления чтением, подаваемым на вход разрешения передачи блока приемо-передачи данных 4, разрешает выдачу информации со второго информационного входа/выхода последнего на свой информационный вход/выход. Установление сигнала лог. "1" с выхода "выбора блока оперативной памяти" второго процессора 19 через временную задержку, определяемую вторым элементом задержки 16, на входе сброса первого триггера 10 разрешает в дальнейшем при поступлении на его синхровход положительного фронта сигнала переключение последнего в состояние, соответствующее уровню сигнала на его информационном входе. Кроме того, сигнал лог. "1" с выхода "выбора блока оперативной памяти" второго процессора 19 воздействует на первый вход четвертого элемента И 14, устанавливая сигнал лог. "1" на выходе последнего, который, в свою очередь, поступая на вход элемента ИЛИ 15, также переключает уровень сигнала на выходе последнего из состояния лог. "0" в состояние лог. "1". Таким образом, при поступлении на вход устройства для соединения с выходом "выбора блока оперативной памяти" второго процессора 19 сигнала лог. "1" независимо от момента его появления относительно сигнала на входе устройства для соединения с выходом выбора памяти программ первого процессора 18, на синхровходе второго триггера 11 с выхода элемента ИЛИ 15 имеет место переключение сигнала из состояния лог. "0" в состояние лог. "1", по фронту которого производится запись в указанный триггер состояния логического сигнала на его информационном входе, а именно уровня лог. "0" с прямого выхода первого триггера 10. When accessing the RAM unit 1 for data exchange, the second processor 19 sets the address of the desired cell on its address output, and a log signal at its output of the choice of the RAM block. "1" (for example, in interval 2 in the diagram of Fig. 3 and in
Затем при поступлении на синхровход первого триггера 10 положительного фронта логического сигнала с выхода выбора памяти программ первого процессора 18 (интервалы 11 на фиг. 3 и 4), первый триггер 10 устанавливается в состояние лог. "1", определенное на его информационном входе. При этом до появления положительного фронта сигнала на синхровходе первого триггера 10 на его входе сброса должен успеть установиться сигнал лог. "1" с выхода второго элемента задержки 16. В противном случае первый триггер 10 установился бы в состояние лог. "1" только при поступлении следующего положительного фронта сигнала на его синхровходе (т.е. в интервалах 21 на фиг. 3 и 4), однако в примерах на временных диаграммах фиг. 3 и 4 этого не произошло, так как сигнал лог. "1" на выходе выбора блока оперативной памяти второго процессора 19 установился раньше момента установки сигнала лог. "1" на выходе "выбора памяти программ" первого процессора 18 на время, превышающее время срабатывания второго элемента задержки 16. Таким образом обеспечивается задержка между моментом появления сигнала лог. "1" на входе устройства для соединения с выходом выбора блока оперативной памяти второго процессора 19 и установкой первого триггера 10 по его синхровходу в состояние лог. "1" не менее длительности, определяемой временем срабатывания второго элемента задержки 16, что гарантирует стабильную запись сигнала лог. "0" с прямого выхода первого триггера 10 во второй триггер 11 при установке сигнала лог. "1" на выходе выбора блока оперативной памяти второго процессора 19. Время срабатывания второго элемента задержки 16 для конкретного технического решения устройства выбирается исходя из паспортных временных характеристик четвертого элемента И 14, элемента ИЛИ 15 и триггеров 10 и 11 и составляет, например, для микросхем серии КР1533 20нс. Then, when a positive edge of the logical signal arrives at the sync input of the
При установке первого триггера 10 в состояние лог. "1" с прямого выхода последнего на первом входе второго элемента И 7 установится сигнал лог. "1", а, так как на втором входе второго элемента И 7 к этому моменту уже установлен сигнал лог. "1", то на его выходе установится сигнал лог. "1". Этот сигнал, поступая на управляющие входы мультиплексоров адреса 3 и управления 9, переключает адресный вход и входы управления блока оперативной памяти 1 на управление от соответствующих входов второго процессора 19. В этот момент информационный вход/выход второго процессора 19 подключается к информационному входу/выходу блока оперативной памяти 1. Это происходит следующим образом. Если текущее обращение второго процессора 19 к блоку оперативной памяти 1 производится в режиме чтения (фиг. 3), то на выходе управления чтением второго процессора 19 имеет место сигнал лог. "1" и сигнал лог. "1" с выхода второго элемента И 7 передается через шестой элемент И 23 (фиг. 2) блока приемо-передачи данных 4 на вход разрешения приема регистра-защелки 21, а так как на входе управления записью последнего также имеет место сигнал лог. "1", то информация с выхода блока оперативной памяти 1 передается через регистр-защелку 21 на информационный вход/выход второго процессора 19 и через некоторое время, определяемое быстродействием блока оперативной памяти 1, начиная с момента начала выборки блока оперативной памяти 1 (см. интервал 12 на фиг. 3) на информационном входе/выходе второго процессора 19 устанавливается достоверная информация, выбранная по требуемому адресу из соответствующей ячейки блока оперативной памяти 1. Эта информация далее при установке на выходе второго элемента И 7, а следовательно, и на входе разрешения приема регистра-защелки 21, сигнала лог. "0" (см. интервал 16 на фиг. 3) сохраняется (защелкивается) в последнем и продолжает передаваться с его выхода на информационный вход/выход второго процессора 19 до момента снятия последним сигнала лог. "1" на своем выходе управления чтением (см. интервал 26 на фиг. 3). When setting the
Если текущее обращение второго процессора 19 для обмена данными к блоку оперативной памяти производится в режиме записи (фиг. 4), то на выходе управления записью последнего имеет место сигнал лог. "1" и сигнал лог. "1" с выхода второго элемента И 7 через пятый элемент И 22 (фиг. 2) блока приемо-передачи данных 4 устанавливается на входе разрешения однонаправленного шинного формирователя 20, тем самым разрешая передачу информации с информационного входа/выхода второго процессора 19 через однонаправленный шинный формирователь 20 на информационный вход/выход блока оперативной памяти 1. При этом первый элемент задержки 8 совместно с первым элементом И 6 задерживают появление сигнала лог. "1" на входе управления записью блока оперативной памяти 1 (см. интервал 12 на фиг. 4) с целью установления к моменту его появления на адресном и информационном входах блока оперативной памяти 1 достоверных данных. Время срабатывания первого элемента задержки 8 выбирается при конкретной реализации технического решения устройства, исходя из требований конкретного типа применяемых для реализации блока оперативной памяти 1 элементов памяти и составляет, например, для микросхем памяти типа КР537РУ17 15нс. Информация для записи держится на входах блока оперативной памяти 1 до момента установления сигнала лог. "0" на выходе второго элемента И 7 (см. интервал 16 на фиг. 4), по которому мультиплексор управления 9 подключит сигналы лог. "0 с выходов выбора блока оперативной памяти, управления чтением и управления записью первого процессора 18 на соответствующие входы управления блока оперативной памяти 1, или до момента снятия вторым процессором 19 сигналов лог. "1" на своих выходах управления записью и выбора блока оперативной памяти. If the current call of the second processor 19 for data exchange to the RAM unit is in recording mode (Fig. 4), then a log signal occurs at the output of the recording control of the latter. "1" and the signal log. "1" from the output of the second element And 7 through the fifth element And 22 (Fig. 2) of the data receiving and transmitting unit 4 is installed at the enable input of the
Цикл обращения к блоку оперативной памяти 1 от второго процессора 19 завершается при установке в состояние лог. "0" сигнала на выходе "выбора памяти программ" первого процессора 18, при этом этот сигнал, проходя через инвертор 12, третий элемент И 13 и элемент ИЛИ 15, поступает на синхровход второго триггера 11 и переводит последний в состояние лог. "1" (см. интервалы 16 на фиг. 3 и 4), в результате чего сигнал на выходе второго элемента И 7 устанавливается в состояние лог. "0", коммутируя тем самым мультиплексоры адреса 3 и управления 9 на обмен информацией между блоком оперативной памяти 1 и первым процессором 18 и отключая через пятый 22 и шестой 23 элементы И (см. фиг. 2) однонаправленный шинный формирователь 20 и регистр-защелку 21 от информационного входа/выхода блока оперативной памяти 1. Последующие же поступления на синхровход второго триггера 11 сигналов с выхода выбора памяти программ первого процессора 18 через инвертор 12, третий элемент И 13 и элемент ИЛИ 15 не влияют на состояние второго триггера 11, так как состояние его информационного входа не изменяется до момента снятия сигнала лог. "1" на выходе выбора блока оперативной памяти второго процессора 19. The cycle of access to the block of RAM 1 from the second processor 19 is completed when set to the state log. "0" of the signal at the output of the "program memory selection" of the first processor 18, while this signal, passing through the inverter 12, the third element And 13 and the element OR 15, is fed to the clock input of the second trigger 11 and puts the latter into the state log. "1" (see intervals 16 in Figs. 3 and 4), as a result of which the signal at the output of the second element And 7 is set to the state log. "0", thereby switching the address 3 and control 9 multiplexers to exchange information between the RAM unit 1 and the first processor 18 and disconnecting the And elements (see FIG. 2) the
Снятие активных сигналов лог. "1" на управляющих выходах второго процессора 19 производится следующим образом. В связи с тем, что после установки первого триггера 10 в состояние лог. "1" (см. интервалы 11 на фиг. 3 и 4) на входе подтверждения выбора блока оперативной памяти второго процессора 19 через задержку на третьем элементе задержки 17 появится сигнал лог. "1", второй процессор 19 завершает цикл обращения к блоку оперативной памяти 1 снятием сигналов лог. "1" на своих выходах выбора блока оперативной памяти и управления чтением или управления записью (см. интервал 26 на фиг. 2 и интервал 27 на фиг. 4), при этом первый триггер 10 через задержку на втором элементе задержки 16 устанавливается в состояние лог. "0", после чего цикл обращения к блоку оперативной памяти 1 от второго процессора полностью завершается. Время срабатывания третьего элемента задержки 17 выбирается исходя из баланса быстродействия конкретных элементов памяти, составляющих блок оперативной памяти 1 и быстродействия конкретных элементов вычислительной техники, составляющих второй процессор 19 и определяющих время удержания сигналов на выходах выбора блока оперативной памяти, управления чтением и управления записью второго процессора относительно момента установления сигнала лог. "1" на его входе "подтверждения выбора блока оперативной памяти". Например, при использовании в качестве блока оперативной памяти 1 микросхем памяти типа КР537РУ17, максимальное время выборки которых составляет 130 нс, а в качестве второго процессора микропроцессора типа КР1810ВМ86 с тактовой частотой 5 МГц, в качестве третьего элемента задержки 17 может быть выбран элемент с любым минимальным временем срабатывания, а при применении в качестве второго процессора микропроцессора типа 80286 с тактовой частотой 16 МГц, время срабатывания третьего элемента задержки 17 должно быть не менее 70 нс. При конкретной реализации технического решения устройства в качестве третьего элемента задержки 17 может быть использован элемент задержки как с фиксированным значением времени срабатывания, так и с программируемым, например, путем коммутации перемычек или любым другим известным способом значением времени срабатывания. Removing active signals log. "1" at the control outputs of the second processor 19 is as follows. Due to the fact that after installing the
Работоспособность устройства при подключении к нему в качестве второго процессора 19 быстродействующего процессора, который способен в текущем цикле выборки памяти программ первого процессора 18 закончить одно и начать последующее обращение к блоку оперативной памяти 1 иллюстрируется на фиг. 5. Здесь процедура обращения к блоку оперативной памяти 1 от второго процессора 19 отличается от приведенных на фиг. 2 и 3 тем, что в интервале 14 второй процессор 19 снимает сигналы лог. "1" на своих выходах "выбора блока оперативной памяти" и управления чтением, а в интервале 15, когда еще не снят текущий сигнал лог. "1" на выходе "выбора памяти программ" первого процессора 18 осуществляет последующее обращение к блоку оперативной памяти 1, в котором снова устанавливает сигналы лог. "1" на своих выходах "выбора блока оперативной памяти" и управления чтением. При этом конфликта не происходит, а новый цикл обращения завершается при появлении последующего сигнала лог. "1" на выходе "выбора памяти программ" первого процессора 18. The operability of the device when connected to it as a second processor 19 is a high-speed processor that is capable of completing one and starting a subsequent access to the RAM block 1 in the current program memory sampling cycle of the first processor 18 is illustrated in FIG. 5. Here, the procedure for accessing the RAM block 1 from the second processor 19 differs from those shown in FIG. 2 and 3 in that in the interval 14, the second processor 19 removes the log signals. "1" at its outputs "selection of RAM block" and reading control, and in the
Математическая модель функционирования части устройства, выполненного на элементах 7, 10-17 (см. фиг. 1) и обеспечивающего определенную последовательность работы устройства в процессе предоставления доступа к блоку оперативной памяти 1 от второго процессора 19 может быть представлена в виде конечного детерминированного инициального асинхронного полностью определенного автомата Мура (см. С.И. Баранов, Синтез микропрограммных автоматов, Ленинград: Энергия, 1979, с. 14-16, 21; В.А. Скляров, Синтез автоматов на матричных БИС, Минск: Наука и техника, 1984, стр. 9), представленного графом на фиг. 5. При описании графа приняты следующие обозначения:
А0, А3 последовательность внутренних состояний автомата;
Х1 сигнал на входе устройства для соединения с выходом выбора блока оперативной памяти второго процессора 19;
Х11 сигнал на выходе второго элемента задержки 16;
Х2 сигнал на входе устройства для соединения с выходом "выбора памяти программ" первого процессора 18;
Q1, Q2 логические состояния соответственно первого 10 и второго 11 триггеров;
Y логический сигнал на выходе второго элемента И 7.The mathematical model of the functioning of the part of the device, made on the elements 7, 10-17 (see Fig. 1) and providing a certain sequence of operation of the device in the process of providing access to the RAM block 1 from the second processor 19, can be represented as a final deterministic initial asynchronous completely a certain Moore automaton (see S.I. Baranov, Synthesis of microprogrammed automata, Leningrad: Energia, 1979, pp. 14-16, 21; V.A. Sklyarov, Synthesis of automata on matrix LSIs, Minsk: Science and Technology, 1984, from p. 9) represented by the graph in FIG. 5. In the description of the graph, the following notation:
A0, A3 is a sequence of internal states of the automaton;
X1 signal at the input of the device for connection with the output of the selection of the block of RAM of the second processor 19;
X11 signal at the output of the second delay element 16;
X2 signal at the input of the device for connecting to the output of the "choice of program memory" of the first processor 18;
Q1, Q2 logical states of the first 10 and second 11 triggers, respectively;
Y logic signal at the output of the second element And 7.
По определению сигнал Х11 является производным от входного сигнала Х1 устройства и описывается выражением:
X11(t) X1(t dt) (1), где t текущий момент времени;
dt время срабатывания второго элемента задержки 16.By definition, the signal X11 is derived from the input signal X1 of the device and is described by the expression:
X11 (t) X1 (t dt) (1), where t is the current time;
dt response time of the second delay element 16.
Исходным состоянием автомата является состояние А0, в которое последний устанавливается после подачи электрического питания и сигнала Сброс на схему, а также после завершения каждого цикла обращения к устройству от второго процессора 19. Этому состоянию соответствуют интервалы 0, 1, 27-29 на временной диаграмме фиг. 3, интервалы 0, 1, 28, 29 на диаграмме фиг. 4 интервалы 0, 1, 14, 24-29 на диаграмме фиг. 4. В этом состоянии первый триггер 10 установлен в состояние лог. "0" (Q), состояние второго триггера 11 не определено, а на выходе второго элемента И 7 имеет место сигнал лог. "0" (Y). The initial state of the machine is state A0, in which the latter is established after applying electric power and a Reset signal to the circuit, and also after completing each cycle of accessing the device from the second processor 19. This state corresponds to
При появлении положительного фронта сигнала лог. "1" на выходе выбора блока оперативной памяти" второго процессора 19 (Х1) автомат переключается в состояние А1, которому соответствуют интервалы 2, 10 на временной диаграмме фиг. 3, интервал 10 на диаграмме фиг. 3, интервалы 2, 5, 15 на диаграмме фиг. 5. В этом состоянии первый 10 и второй 11 триггеры установлены в состояние лог. "0" (Q1, Q2), а на выходе второго элемента И 7 имеет место сигнал лог. "0" (Y). When a positive edge of the signal appears. "1" at the output of the choice of random access memory block "of the second processor 19 (X1), the machine switches to state A1, which corresponds to
При появлении на входе устройства для соединения с выходом "выбора памяти программ" первого процессора 18 положительного фронта сигнала Х2 при условии наличия в этот момент сигнала Х11 происходит переключение автомата в состояние А2, которому соответствуют интервалы 11, 15 на временных диаграммах фиг. 3 и 4, интервалы 11, 13 на диаграмме фиг. 5. В этом состоянии первый триггер 10 установлен в состояние лог. "1" (Q1), второй триггер 11 установлен в состояние лог. "0" (Q), а на выходе второго элемента И 7 имеет место сигнал лог. "1" (Y), в течение действия которого и осуществляется непосредственный доступ к блоку оперативной памяти 1 от второго процессора 19. When the first processor 18 of the positive edge of the signal X2 appears at the input of the device for selecting the program memory 18 and the signal X11 is present at that moment, the automaton switches to state A2, which corresponds to
Из состояния А2 автомат в зависимости от временных соотношений сигналов Х1 и Х2 переходит в состояние А3 или А0. Если сигнал Х11 лог. "1" на выходе второго элемента задержки 16 продолжает удерживаться после появления сигнала Х2 лог. "0" на выходе выбора памяти программ первого процессора 18, то автомат перейдет в состояние А3, которому соответствуют интервалы 16, 26 временной диаграммы на фиг. 3 и интервалы 16, 27 диаграммы на фиг. 4. В этом состоянии первый 10 и второй 11 триггеры установлены в состояние лог. "1" (Q1, Q2), а на выходе второго элемента И 7 имеет место сигнал лог. "0" (Y). Depending on the temporal relations of signals X1 and X2, the machine switches from state A2 to state A3 or A0. If the signal is X11 log. "1" at the output of the second delay element 16 continues to be held after the appearance of the signal X2 log. "0" at the output of the program memory selection of the first processor 18, the machine will go into state A3, which corresponds to the intervals 16, 26 of the time diagram in FIG. 3 and intervals 16, 27 of the diagram in FIG. 4. In this state, the first 10 and second 11 triggers are set to the state log. "1" (Q1, Q2), and at the output of the second element And 7 there is a signal log. "0" (Y).
Если же к устройству подключен быстродействующий процессор и сигнал Х11 лог. "0" на выходе второго элемента задержки 16 устанавливается раньше установления сигнала Х2 лог. "0" на выходе "выбора памяти программ" первого процессора 18, то автомат, минуя состояние А3, возвращается в исходное состояние А0. Этот случай описан на примере фиг. 5. If, however, a high-speed processor and an X11 signal are connected to the device. "0" at the output of the second delay element 16 is set before the establishment of the signal X2 log. "0" at the output of the "choice of program memory" of the first processor 18, then the machine, bypassing state A3, returns to its original state A0. This case is described in the example of FIG. 5.
Таким образом предлагаемое устройство позволяет подключать к своим входам в качестве второго процессора как любые "медленные" относительно быстродействия первого процессора процессоры, у которых время удержания сигнала выбора на выходе процессора относительно установления сигнала подтверджения выбора на их соответствующем входе может быть сколь угодно длительным, так и быстродействующие процессоры, которые способны в текущем цикле выборки памяти программ первым процессором закончить одно и начать последующее обращение к блоку оперативной памяти, что значительно расширяет область применения устройства. Thus, the proposed device allows you to connect to your inputs as a second processor as any "slow" relative to the speed of the first processor processors, in which the holding time of the selection signal at the output of the processor relative to the establishment of the confirmation signal at their respective input can be arbitrarily long, and high-speed processors that are capable of completing the first processor in the current program memory sampling cycle by the first processor and starting a subsequent call to the opera block ativnost memory, which greatly extends the range of application of the device.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU5044430 RU2058041C1 (en) | 1992-05-26 | 1992-05-26 | Device for data exchange for two processors through shared memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU5044430 RU2058041C1 (en) | 1992-05-26 | 1992-05-26 | Device for data exchange for two processors through shared memory |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2058041C1 true RU2058041C1 (en) | 1996-04-10 |
Family
ID=21605357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU5044430 RU2058041C1 (en) | 1992-05-26 | 1992-05-26 | Device for data exchange for two processors through shared memory |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2058041C1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2475818C2 (en) * | 2007-09-17 | 2013-02-20 | Дженерал Электрик Компани | Data exchange methods and systems |
RU2475816C1 (en) * | 2011-11-07 | 2013-02-20 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования Иркутский государственный университет путей сообщения (ФГБОУ ВПО ИрГУПС) | Automatic control machine |
-
1992
- 1992-05-26 RU SU5044430 patent/RU2058041C1/en active
Non-Patent Citations (3)
Title |
---|
1. Multiprocessing boosts microcomputer power dramatically, "Electronic design", March, 1978, p.72-75. * |
2. Авторское свидетельство СССР N 1515172, кл. G 06F 15/16, 1988. * |
3. Авторское свидетельство СССР N 1778759, кл. G 06F 13/00, 1989. * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2475818C2 (en) * | 2007-09-17 | 2013-02-20 | Дженерал Электрик Компани | Data exchange methods and systems |
RU2475816C1 (en) * | 2011-11-07 | 2013-02-20 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования Иркутский государственный университет путей сообщения (ФГБОУ ВПО ИрГУПС) | Automatic control machine |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4257095A (en) | System bus arbitration, circuitry and methodology | |
US4449183A (en) | Arbitration scheme for a multiported shared functional device for use in multiprocessing systems | |
CA2119174C (en) | Fully pipelined and highly concurrent memory controller | |
US5301279A (en) | Apparatus for conditioning priority arbitration | |
US4594657A (en) | Semaphore for memory shared by two asynchronous microcomputers | |
US5276842A (en) | Dual port memory | |
US4034347A (en) | Method and apparatus for controlling a multiprocessor system | |
CA1216366A (en) | Data processing system architecture | |
US5293491A (en) | Data processing system and memory controller for lock semaphore operations | |
CA2018503C (en) | Read/write random access memory with data prefetch | |
US6401176B1 (en) | Multiple agent use of a multi-ported shared memory | |
US5119480A (en) | Bus master interface circuit with transparent preemption of a data transfer operation | |
EP0318221A2 (en) | Controlling responding by users of an intercommunications bus | |
CA1158737A (en) | Shared synchronous memory multiprocessing arrangement | |
EP0409285B1 (en) | Method and apparatus for data transfer between processor elements | |
US5038276A (en) | Data processing system having dual arbiter for controlling access to a system bus | |
US5671393A (en) | Shared memory system and arbitration method and system | |
US5142682A (en) | Two-level priority arbiter generating a request to the second level before first-level arbitration is completed | |
JPH03131945A (en) | Staggered-access-memory | |
US6314499B1 (en) | Non-preemptive memory locking mechanism in a shared resource system | |
US4580213A (en) | Microprocessor capable of automatically performing multiple bus cycles | |
US5581732A (en) | Multiprocessor system with reflective memory data transfer device | |
US6504854B1 (en) | Multiple frequency communications | |
US6163831A (en) | Minimum refractory period in a multiple agent resource sharing environment | |
RU2058041C1 (en) | Device for data exchange for two processors through shared memory |