RU2526762C1 - Resource allocation controller - Google Patents
Resource allocation controller Download PDFInfo
- Publication number
- RU2526762C1 RU2526762C1 RU2013113309/08A RU2013113309A RU2526762C1 RU 2526762 C1 RU2526762 C1 RU 2526762C1 RU 2013113309/08 A RU2013113309/08 A RU 2013113309/08A RU 2013113309 A RU2013113309 A RU 2013113309A RU 2526762 C1 RU2526762 C1 RU 2526762C1
- Authority
- RU
- Russia
- Prior art keywords
- output
- input
- inputs
- group
- outputs
- Prior art date
Links
Images
Landscapes
- Multi Processors (AREA)
Abstract
Description
Изобретение относится к области вычислительной техники и может быть использовано в сетевых системах обеспечения управления объектами экономики, топливно-энергетического комплекса, транспорта, связи, энергетики, сельского хозяйства, промышленности, космонавтики и в других областях. Так, его применение в составе аппаратуры на объектах наземного комплекса управления космическими аппаратами (КА), в том числе и в центрах управления полетами КА, позволит сократить потери времени на ожидание выделения требуемых системных ресурсов, а также на фиксации и выдаче информации о нештатных ситуациях (тупиковых), что способствует повышению оперативности и устойчивости работы комплекса в целом.The invention relates to the field of computer technology and can be used in network systems for managing objects of the economy, fuel and energy complex, transport, communications, energy, agriculture, industry, space and in other fields. So, its use as part of the equipment at the objects of the ground-based spacecraft (SC) control complex, including in the spacecraft flight control centers, will reduce the time loss in waiting for the allocation of the required system resources, as well as in recording and issuing information about emergency situations ( dead ends), which helps to increase the efficiency and stability of the complex as a whole.
Из предшествующего уровня техники известны устройства для контроля и обслуживания распределения ресурсов: Устройство для обслуживания запросов, авторское свидетельство СССР, №972512, 1982 г., - (Д1); Устройство для контроля распределения ресурсов, авторское свидетельство СССР, №1215112, 1986 г., - (Д2); Устройство для контроля распределения ресурсов в вычислительных системах, авторское свидетельство СССР, №1269138, 1986 г., - (Д3); Устройство для обнаружения тупиковых ситуаций, авторское свидетельство СССР, №1320810, 1987 г., - (Д4); Устройство для контроля распределения ресурсов, авторское свидетельство СССР, №1297051, 1987 г., - (Д5); Устройство для контроля распределения ресурсов в вычислительной системе, авторское свидетельство СССР, №1312583, 1987 г., - (Д6); Устройство для контроля распределения ресурсов, авторское свидетельство СССР, №1341642, 1987 г., - (Д7).From the prior art, devices are known for monitoring and servicing the distribution of resources: Device for servicing requests, USSR copyright certificate, No. 972512, 1982, - (D1); Device for monitoring the distribution of resources, USSR copyright certificate, No. 1215112, 1986, - (D2); Device for controlling the distribution of resources in computer systems, USSR copyright certificate, No. 1269138, 1986, - (D3); Device for detecting deadlocks, USSR author's certificate, No. 1320810, 1987, - (D4); Device for controlling the distribution of resources, USSR copyright certificate, No. 1297051, 1987, - (D5); Device for controlling the distribution of resources in a computer system, USSR copyright certificate, No. 1312583, 1987, - (D6); Device for controlling the distribution of resources, USSR copyright certificate, No. 1341642, 1987, - (D7).
К основным недостаткам вышеприведенных устройств следует отнести невозможность непосредственного их использования в составе компьютеров или в сетях ввиду отсутствия у них так называемой стандартной интерфейсной части, а также возможные временные простои между окончанием приема устройствами входной информации и готовностью устройств к выполнению контрольных процедур, в том числе невозможность фиксации и выдачи информации о тупиковых ситуациях непосредственно в управляющий компьютер или в сеть.The main disadvantages of the above devices include the impossibility of their direct use in computers or networks due to the lack of the so-called standard interface part, as well as possible temporary downtime between the end of the device receiving input information and the readiness of the devices to perform control procedures, including the impossibility recording and issuing information about deadlocks directly to the control computer or network.
Из вышеприведенных известных устройств (Д1-Д7) наиболее близким по оперативности и функциональности является устройство, приведенное в (Д7), которому присуща совокупность признаков, наиболее близкая к совокупности существенных признаков заявляемого устройства, и поэтому оно выбрано в качестве прототипа. Однако, как показывает анализ аналогов и прототипа, в устройствах отсутствуют технические решения, обеспечивающие их высокую готовность и оперативность процессов контроля распределения системных ресурсов. Именно отсутствие стандартной интерфейсной части не позволяет обеспечить прямое подключение устройств к источнику информации (к управляющему компьютеру либо к адаптеру сети) и фиксацию моментов времени начала и окончания заполнения информацией входных регистров, после чего устройство, хотя и готово начать процедуру анализа и контроля распределения ресурсов, но простаивает ввиду отсутствия сигнала начала процедуры по причине отсутствия компонента, формирующего сигнал «Пуск». В дополнение к этому в данных устройствах отсутствует буферная память для записи и считывания информации об обнаруженных тупиковых ситуациях и выдачи ее в компьютер управления или в сеть.Of the above known devices (D1-D7), the closest in terms of efficiency and functionality is the device shown in (D7), which has an inherent set of features that is closest to the set of essential features of the claimed device, and therefore it is selected as a prototype. However, as the analysis of analogues and prototype shows, the devices lack technical solutions that ensure their high availability and efficiency of processes for controlling the distribution of system resources. It is the lack of a standard interface that does not allow direct connection of devices to an information source (to a control computer or to a network adapter) and fixation of the start and end time of filling information in input registers, after which the device, although it is ready to start the analysis and control of resource allocation, but it is idle due to the lack of a signal to start the procedure due to the lack of a component that forms the Start signal. In addition to this, in these devices there is no buffer memory for recording and reading information about detected deadlock situations and transmitting it to the control computer or to the network.
Задачей, на решение которой направлено заявленное техническое решение, является расширение арсенала технических средств, в которых возможно использование устройства контроля распределения ресурсов, а именно в составе управляющих компьютеров или в компьютерных сетях.The task to which the claimed technical solution is directed is to expand the arsenal of technical means in which it is possible to use a resource allocation control device, namely as part of control computers or in computer networks.
Сущность заявленного изобретения заключается в том, что в состав устройства введены интерфейсная часть, реализуемая на основе стандартных интерфейсов (СОМ-портов), а также буферная память со схемами управления, счетчиком и схемой И, что совместно с другими элементами цифровой техники обеспечивает расширение арсенала технических средств использования контроллера распределения ресурсов. При этом контроллер распределения ресурсов содержит две группы регистров, триггер режима, два триггера управления, триггеры анализа и тупика, три группы элементов И, элемент И-НЕ, распределитель импульсов, мультиплексор, первую схему сравнения, две группы ключей, семь элементов И, первый элемент ИЛИ и элемент ИЛИ-НЕ, третью группу ключей, второй элемент ИЛИ, (n-1) схему сравнения, причем информационный вход р-го регистра первой группы (р=1,…n, где n - число ресурсов в системе) соединен с выходом р-го ключа первой группы, информационный вход р-го регистра второй группы соединен с выходом р-го ключа второй группы, первый вход сброса р-го регистра первой группы подключен к выходу р-го элемента И третьей группы, второй вход сброса р-го регистра первой группы подключен к выходу р-го элемента И второй группы, вход сброса р-го регистра второй группы подключен к выходу р-го элемента И первой группы, выходы р-го регистра первой группы соединены с соответствующими инверсными входами р-го элемента И первой группы и с р-ми информационными входами мультиплексора, выходы р-го регистра второй группы соединены с соответствующими инверсными входами р-го элемента И второй группы, входы установки и сброса триггера режима соединены с входом пуска устройства и с выходом триггера анализа соответственно, инверсный выход триггера режима соединен с управляющими входами ключей первой и второй групп и с соответствующими инверсными входами элементов И первой и второй групп, входы установки и синхронизации первого триггера управления подключены к выходам первого элемента ИЛИ и второго элемента И соответственно, входы установки и сброса второго триггера управления соединены с выходом седьмого и четвертого элементов И соответственно, прямой и инверсный выходы второго триггера управления подключены к первым входам четвертого и пятого элементов И соответственно, выход пятого элемента И соединен с входом установки триггера анализа, вход сброса которого соединен с входом сброса триггера тупика и с входом пуска устройства, выход триггера анализа соединен с первым входом шестого элемента И, выход которого подключен к входу установки триггера тупика, выход которого соединен с выходом признака тупиковой ситуации устройства, выходы элементов И первой группы соединены с входами элемента И-НЕ, выход которого соединен с вторым входом шестого элемента И, тактовый вход распределителя импульсов подключен к выходу второго элемента И, выходы распределителя импульсов подключены к входам элемента ИЛИ-НЕ, к управляющим входам мультиплексора и к первым входам соответствующих элементов И третьей группы, выход признака окончания цикла распределителя импульсов соединен с вторыми входами четвертого и пятого элементов И, выходы мультиплексора соединены с первыми информационными входами первой схемы сравнения и с инверсными входами третьего элемента И, информационные входы ключей первой и второй групп образуют входы номеров процессов, соответственно владеющих и запрашивающих ресурсы устройства, вторые входы элементов И третьей группы соединены с выходом седьмого элемента И, первый и второй инверсные входы первого элемента И подключены к выходам третьего элемента И и элемента ИЛИ-НЕ соответственно, второй вход второго элемента И подключен к входу тактовых импульсов устройства, выход элемента ИЛИ-НЕ соединен с соответствующим инверсным входом третьего элемента И, выход которого подключен к первому входу первого элемента ИЛИ, выход четвертого элемента И соединен с вторым входом первого элемента ИЛИ, третий вход которого подключен к входу пуска устройства, информационные входы р-го ключа третьей группы объединены с соответствующими выходами р-го регистра второй группы, входы управления ключей третьей группы подключены к выходу первого элемента И, первые информационные входы с второй по n-ю схем сравнения соединены с выходом мультиплексора, выходы р-го ключа третьей группы подключены к соответствующим вторым информационным входам р-й схемы сравнения, выходы признака совпадения всех схем сравнения подключены к соответствующим входам второго элемента ИЛИ, выход которого соединен с четвертым входом первого элемента ИЛИ, выходы признаков несовпадения всех схем сравнения подключены к входам седьмого элемента И, выход которого соединен с пятым входом первого элемента ИЛИ, интерфейсную часть, содержащую два стандартных разъема СОМ-порта, две группы элементов И, два распределителя импульсов, три схемы И, два инвертора НЕ и два универсальных асинхронных приемопередатчика, причем первые входы первой и второй группы элементов И соединены с выходом первого и второго универсального асинхронного приемопередатчика, которые по входу соединены с разъемом первого и второго СОМ-порта соответственно, вторые входы первой и второй группы элементов И соединены с выходами первого и второго распределителя импульсов, выходы признака окончания цикла первого и второго распределителя импульсов заведены на входы первого и второго инвертора и третьей схемы И, выход которой соединен с единичным входом триггера режима, а выход первого и второго инвертора соединены со входом первого и второго СОМ-порта с шиной CTS «Вход - Устройство готово к работе», первые входы первой и второй схемы И соединены с выходом первого и второго СОМ-порта с шиной RTS «Выход - Готовность компьютера к передаче данных», вторые входы первой и второй схемы И соединены с инверсным выходом триггера режима, а также буферную память со схемами управления, схему И и счетчик, при этом буферная память со схемами управления содержит микросхемы памяти и схемы управления записью информации и считыванием, причем по первому входу схемы управления (запись) соединены с выходом счетчика, по второму входу схемы управления (считывание) - с инверсным выходом триггера режима, буферная память по входу соединена с выходом группы схем сравнения, а по выходу - со входом первого универсального асинхронного приемопередатчика, по входу счетчик соединен с выходом схемы И, первый вход которой соединен с выходом триггера тупика, второй вход - с тактовым генератором.The essence of the claimed invention lies in the fact that the device includes an interface part implemented on the basis of standard interfaces (COM ports), as well as a buffer memory with control circuits, a counter and an I circuit, which, together with other elements of digital technology, provides an extension of the arsenal of technical means of using the resource allocation controller. In this case, the resource allocation controller contains two groups of registers, a mode trigger, two control triggers, analysis and deadlock triggers, three groups of AND elements, an NAND element, a pulse distributor, a multiplexer, a first comparison circuit, two groups of keys, seven And elements, the first an OR element and an OR-NOT element, a third group of keys, a second OR element, (n-1) a comparison circuit, the information input of the rth register of the first group (p = 1, ... n, where n is the number of resources in the system) is connected with the output of the r-th key of the first group, the information input of the r-th reg Istra of the second group is connected to the output of the rth key of the second group, the first reset input of the rth register of the first group is connected to the output of the rth element And of the third group, the second input of the reset of the rth register of the first group is connected to the output of the rth element And of the second group, the reset input of the r-th register of the second group is connected to the output of the r-th element AND of the first group, the outputs of the r-th register of the first group are connected to the corresponding inverse inputs of the r-th element And of the first group and to the r-information inputs of the multiplexer, the outputs of the r-th register of the second group with are connected to the corresponding inverse inputs of the rth element AND of the second group, the inputs of the installation and reset of the mode trigger are connected to the start input of the device and to the output of the analysis trigger, respectively, the inverse output of the mode trigger is connected to the control inputs of the keys of the first and second groups and to the corresponding inverse inputs of the elements And the first and second groups, the installation and synchronization inputs of the first control trigger are connected to the outputs of the first OR element and the second AND element, respectively, the installation and reset inputs of the second the control trigger is connected to the output of the seventh and fourth elements And, respectively, the direct and inverse outputs of the second control trigger are connected to the first inputs of the fourth and fifth elements And, accordingly, the output of the fifth element And is connected to the installation input of the analysis trigger, the reset input of which is connected to the reset input of the deadlock trigger and with the start input of the device, the output of the analysis trigger is connected to the first input of the sixth AND element, the output of which is connected to the installation input of the dead end trigger, the output of which is connected to the output m sign of a deadlock situation of the device, the outputs of the AND elements of the first group are connected to the inputs of the AND-NOT element, the output of which is connected to the second input of the sixth AND element, the clock input of the pulse distributor is connected to the output of the second AND element, the outputs of the pulse distributor are connected to the inputs of the OR , to the control inputs of the multiplexer and to the first inputs of the corresponding elements of the third group, the output of the sign of the end of the cycle of the pulse distributor is connected to the second inputs of the fourth and fifth elements of And, the outputs of m the duplexer is connected to the first information inputs of the first comparison circuit and to the inverse inputs of the third AND element, the information inputs of the keys of the first and second groups form the inputs of the process numbers that respectively own and request the resources of the device, the second inputs of the And elements of the third group are connected to the output of the seventh element And, the first and the second inverse inputs of the first AND element are connected to the outputs of the third AND element and the OR-NOT element, respectively, the second input of the second AND element is connected to the input of the clock imp device, the output of the OR element is NOT connected to the corresponding inverse input of the third AND element, the output of which is connected to the first input of the first OR element, the output of the fourth element And is connected to the second input of the first OR element, the third input of which is connected to the device start input, information inputs of the r-th key of the third group are combined with the corresponding outputs of the r-th register of the second group, the control inputs of the keys of the third group are connected to the output of the first AND element, the first information inputs are from the second to the n-th circuits equalities are connected to the output of the multiplexer, the outputs of the rth key of the third group are connected to the corresponding second information inputs of the rth comparison circuit, the outputs of the sign of coincidence of all comparison circuits are connected to the corresponding inputs of the second OR element, the output of which is connected to the fourth input of the first OR element, the outputs signs of mismatch of all comparison circuits are connected to the inputs of the seventh AND element, the output of which is connected to the fifth input of the first OR element, an interface part containing two standard COM connectors unit, two groups of AND elements, two pulse distributors, three AND circuits, two inverters NOT and two universal asynchronous transceivers, the first inputs of the first and second groups of elements And connected to the output of the first and second universal asynchronous transceiver, which are connected to the first connector and the second COM port, respectively, the second inputs of the first and second groups of elements And are connected to the outputs of the first and second pulse distributor, outputs of the sign of the end of the cycle of the first and second distributor pulses are connected to the inputs of the first and second inverter and the third circuit And, the output of which is connected to a single input of the mode trigger, and the output of the first and second inverters are connected to the input of the first and second COM port with the CTS bus "Input - The device is ready for operation", the first the inputs of the first and second AND circuits are connected to the output of the first and second COM port with the RTS bus "Output - Computer readiness for data transfer", the second inputs of the first and second AND circuits are connected to the inverse output of the mode trigger, as well as a buffer memory with control circuits, schemes I and the counter, while the buffer memory with control circuits contains memory microcircuits and control circuits for recording information and reading, with the first input of the control circuit (writing) connected to the output of the counter, the second input of the control circuit (reading) with the inverse trigger output mode, the buffer memory at the input is connected to the output of the group of comparison circuits, and at the output it is connected to the input of the first universal asynchronous transceiver, at the input the counter is connected to the output of circuit I, the first input of which is connected to the output of the trigger a deadlock, the second input - to a clock generator.
Технический результат изобретения заключается в расширении арсенала технических средств, в которых возможно использование контроллера распределения ресурсов, и заключается в фиксации оборудованием интерфейсной части моментов времени начала и окончания заполнения информацией входных регистров, после чего устройство автоматически сформированным сигналом «Пуск» переводится в состояние готовности выполнения процедуры контроля, а также путем своевременного обнаружения и фиксации тупиковых ситуаций и оперативной передачи этой информации в управляющий компьютер или в сеть посредством задействования интерфейсной части устройства.The technical result of the invention is to expand the arsenal of technical means in which it is possible to use a resource allocation controller, and consists in fixing the interface part of the instants of the start and end time of filling the input registers with information, after which the device is automatically generated by the “Start” signal and is put into a ready state for the procedure control, as well as through the timely detection and fixing of deadlocks and the prompt transmission of this information ation in the control computer or to the network interface by operating the device.
Указанный технический результат достигается тем, что в известное устройство, выбранное в качестве прототипа, и содержащее две группы регистров, триггер режима, два триггера управления, триггеры анализа и тупика, три группы элементов И, элемент И-НЕ, распределитель импульсов, мультиплексор, первую схему сравнения, две группы ключей, семь элементов И, первый элемент ИЛИ и элемент ИЛИ-НЕ, третью группу ключей, второй элемент ИЛИ, (n-1) схему сравнения, причем информационный вход р-го регистра первой группы (р=1,…n, где n - число ресурсов в системе) соединен с выходом р-го ключа первой группы, информационный вход р-го регистра второй группы соединен с выходом р-го ключа второй группы, первый вход сброса р-го регистра первой группы подключен к выходу р-го элемента И третьей группы, второй вход сброса р-го регистра первой группы подключен к выходу р-го элемента И второй группы, вход сброса р-го- регистра второй группы подключен к выходу р-го элемента И первой группы, выходы р-го регистра первой группы соединены с соответствующими инверсными входами р-го элемента И первой группы и с р-ми информационными входами мультиплексора, выходы р-го регистра второй группы соединены с соответствующими инверсными входами р-го элемента И второй группы, входы установки и сброса триггера режима соединены с входом пуска устройства и с выходом триггера анализа соответственно, инверсный выход триггера режима соединен с управляющими входами ключей первой и второй групп и с соответствующими инверсными входами элементов И первой и второй групп, входы установки и синхронизации первого триггера управления подключены к выходам первого элемента ИЛИ и второго элемента И соответственно, входы установки и сброса второго триггера управления соединены с выходом седьмого и четвертого элементов И соответственно, прямой и инверсный выходы второго триггера управления подключены к первым входам четвертого и пятого элементов И соответственно, выход пятого элемента И соединен с входом установки триггера анализа, вход сброса которого соединен с входом сброса триггера тупика и с входом пуска устройства, выход триггера анализа соединен с первым входом шестого элемента И, выход которого подключен к входу установки триггера тупика, выход которого соединен с выходом признака тупиковой ситуации устройства, выходы элементов И первой группы соединены с входами элемента И-НЕ, выход которого соединен с вторым входом шестого элемента И, тактовый вход распределителя импульсов подключен к выходу второго элемента И, выходы распределителя импульсов подключены к входам элемента ИЛИ-НЕ, к управляющим входам мультиплексора и к первым входам соответствующих элементов И третьей группы, выход признака окончания цикла распределителя импульсов соединен с вторыми входами четвертого и пятого элементов И, выходы мультиплексора соединены с первыми информационными входами первой схемы сравнения и с инверсными входами третьего элемента И, информационные входы ключей первой и второй групп образуют входы номеров процессов, соответственно владеющих и запрашивающих ресурсы устройства, вторые входы элементов И третьей группы соединены с выходом седьмого элемента И, первый и второй инверсные входы первого элемента И подключены к выходам третьего элемента И и элемента ИЛИ-НЕ соответственно, второй вход второго элемента И подключен к входу тактовых импульсов устройства, выход элемента ИЛИ-НЕ соединен с соответствующим инверсным входом третьего элемента И, выход которого подключен к первому входу первого элемента ИЛИ, выход четвертого элемента И соединен с вторым входом первого элемента ИЛИ, третий вход которого подключен к входу пуска устройства, информационные входы р-го ключа третьей группы объединены с соответствующими выходами р-го регистра второй группы, входы управления ключей третьей группы подключены к выходу первого элемента И, первые информационные входы с второй по n-ю схем сравнения соединены с выходом мультиплексора, выходы р-го ключа третьей группы подключены к соответствующим вторым информационным входам р-й схемы сравнения, выходы признака совпадения всех схем сравнения подключены к соответствующим входам второго элемента ИЛИ, выход которого соединен с четвертым входом первого элемента ИЛИ, выходы признаков несовпадения всех схем сравнения подключены к входам седьмого элемента И, выход которого соединен с пятым входом первого элемента ИЛИ, дополнительно введены интерфейсная часть и буферная память со схемами управления, схемой И и счетчиком, при этом интерфейсная часть содержит два разъема СОМ-порта, две группы элементов И, два распределителя импульсов, три схемы И, два инвертора НЕ и два универсальных асинхронных приемопередатчика, причем первые входы первой и второй группы элементов И соединены с выходом первого и второго универсального асинхронного приемопередатчика, которые по входу соединены с разъемом первого и второго СОМ-порта соответственно, вторые входы первой и второй группы элементов И соединены с выходами первого и второго распределителя импульсов, выходы признака окончания цикла первого и второго распределителя импульсов заведены на входы первого и второго инвертора и третьей схемы И, выход которой соединен с единичным входом триггера режима, а выход первого и второго инвертора соединены со входом первого и второго СОМ-порта с шиной CTS «Вход - Устройство готово к работе», первые входы первой и второй схемы И соединены с выходом первого и второго СОМ-порта с шиной RTS «Выход - Готовность компьютера к передаче данных», вторые входы первой и второй схемы И соединены с инверсным выходом триггера режима, а буферная память со схемами управления содержит микросхемы памяти и схемы управления записью информации и считыванием, причем по первому входу схемы управления (запись) соединены с выходом счетчика, по второму входу схемы управления (считывание) соединены с инверсным выходом триггера режима, буферная память по входу соединена с выходом группы схем сравнения, а по выходу - со входом первого универсального асинхронного приемопередатчика, по входу счетчик соединен с выходом схемы И, первый вход которой соединен с выходом триггера тупика, второй вход - с тактовым генератором. При этом информационными входами контроллера распределения ресурсов являются входы универсальных асинхронных приемопередатчиков, а выходом - выход буферной памяти, соединенной с выходом первого универсального асинхронного приемопередатчика.The specified technical result is achieved by the fact that in the known device, selected as a prototype, and containing two groups of registers, a mode trigger, two control triggers, analysis and deadlock triggers, three groups of AND elements, AND element, pulse distributor, multiplexer, the first comparison scheme, two groups of keys, seven AND elements, the first OR element and the OR-NOT element, the third group of keys, the second OR element, (n-1) comparison scheme, the information input of the r-th register of the first group (p = 1, ... n, where n is the number of resources in the system) with is dined with the output of the rth key of the first group, the information input of the rth register of the second group is connected to the output of the rth key of the second group, the first reset input of the rth register of the first group is connected to the output of the rth element AND of the third group, the second input the reset of the rth register of the first group is connected to the output of the rth element AND of the second group, the reset input of the rth register of the second group is connected to the output of the rth element And of the first group, the outputs of the rth register of the first group are connected to the corresponding inverse inputs p-th element of the first group and with r-mi inform the multiplexer inputs, the outputs of the rth register of the second group are connected to the corresponding inverse inputs of the rth element AND of the second group, the inputs of the setting and reset of the mode trigger are connected to the input of the device start and the output of the analysis trigger, respectively, the inverse output of the mode trigger is connected to the control inputs keys of the first and second groups and with the corresponding inverse inputs of the elements And the first and second groups, the installation and synchronization inputs of the first control trigger are connected to the outputs of the first element OR and the second element And, respectively, the inputs of the installation and reset of the second control trigger are connected to the output of the seventh and fourth elements And, respectively, the direct and inverse outputs of the second trigger are connected to the first inputs of the fourth and fifth elements And, accordingly, the output of the fifth element And is connected to the input of the trigger setting analysis, the reset input of which is connected to the reset input of the deadlock trigger and to the start input of the device, the output of the analysis trigger is connected to the first input of the sixth AND element, the output of which is connected is connected to the installation input of the deadlock trigger, the output of which is connected to the output of the device deadlock sign, the outputs of the AND elements of the first group are connected to the inputs of the AND-NOT element, the output of which is connected to the second input of the sixth element AND, the clock input of the pulse distributor is connected to the output of the second element AND , the outputs of the pulse distributor are connected to the inputs of the OR-NOT element, to the control inputs of the multiplexer and to the first inputs of the corresponding elements AND of the third group, the output of the sign of the end of the cycle of the pulse distributor in connected to the second inputs of the fourth and fifth elements And, the outputs of the multiplexer are connected to the first information inputs of the first comparison circuit and with the inverse inputs of the third element And, the information inputs of the keys of the first and second groups form the inputs of the process numbers, respectively owning and requesting device resources, the second inputs elements And the third group are connected to the output of the seventh element And, the first and second inverse inputs of the first element And are connected to the outputs of the third element And and the element OR NOT Actually, the second input of the second AND element is connected to the input of the device's clock pulses, the output of the OR element is NOT connected to the corresponding inverse input of the third AND element, the output of which is connected to the first input of the first OR element, the output of the fourth AND element is connected to the second input of the first OR element, the third input of which is connected to the start input of the device, the information inputs of the rth key of the third group are combined with the corresponding outputs of the rth register of the second group, the control inputs of the keys of the third group are connected to the output the first element And, the first information inputs from the second to the n-th comparison circuits are connected to the output of the multiplexer, the outputs of the r-th key of the third group are connected to the corresponding second information inputs of the r-th comparison circuit, the outputs of the sign of coincidence of all comparison circuits are connected to the corresponding inputs the second OR element, the output of which is connected to the fourth input of the first OR element, the outputs of the signs of mismatch of all comparison circuits are connected to the inputs of the seventh AND element, the output of which is connected to the fifth input of the first ele OR, additionally an interface part and buffer memory with control circuits, an AND circuit and a counter are introduced, while the interface part contains two COM port connectors, two groups of AND elements, two pulse distributors, three AND circuits, two NOT inverters and two universal asynchronous transceiver, and the first inputs of the first and second groups of elements And are connected to the output of the first and second universal asynchronous transceiver, which are connected at the input to the connector of the first and second COM port, respectively, the second inputs The first and second groups of AND elements are connected to the outputs of the first and second pulse distributors, the outputs of the end of cycle sign of the first and second pulse distributors are connected to the inputs of the first and second inverters and the third AND circuit, the output of which is connected to a single input of the mode trigger, and the output of the first and the second inverter is connected to the input of the first and second COM port with the CTS bus "Input - The device is ready for operation", the first inputs of the first and second COM circuits are connected to the output of the first and second COM port with the RTS bus "Output - Ready “computer to data transmission”, the second inputs of the first and second circuits AND are connected to the inverse output of the mode trigger, and the buffer memory with control circuits contains memory microcircuits and control circuits for recording information and reading, and the first input of the control circuit (recording) is connected to the output counter, at the second input of the control circuit (reading) are connected to the inverse output of the mode trigger, the buffer memory at the input is connected to the output of the group of comparison circuits, and at the output, to the input of the first universal asynchronous reception of the transmitter, at the input, the counter is connected to the output of the And circuit, the first input of which is connected to the output of the deadlock trigger, the second input - to the clock generator. In this case, the information inputs of the resource allocation controller are the inputs of universal asynchronous transceivers, and the output is the output of the buffer memory connected to the output of the first universal asynchronous transceiver.
Описание изобретения поясняется следующими фигурами:The description of the invention is illustrated by the following figures:
- на фиг.1 представлена структурная схема прототипа - устройства для контроля распределения ресурсов;- figure 1 presents a structural diagram of a prototype device for controlling the distribution of resources;
- на фиг.2 и 3 приведена структурная схема изобретения - контроллера распределения ресурсов.- figure 2 and 3 shows the structural diagram of the invention is a resource allocation controller.
Контроллер распределения ресурсов содержит первую группу 1 регистров 1.1-1.n, вторую группу 2 регистров 2.1-2.n, триггер 3 режима, первый 4 и второй 5 триггеры управления, триггеры анализа 6 и тупика 7, первую группу элементов И 8.1-8.n и элемент И-НЕ 9, распределитель 10 импульсов, мультиплексор 11 с выходным регистром 12, группу 13 схем 13.1-13.n сравнения, первую 14, вторую 15 группы ключей, вторую 16, четвертую 17 и третью 18 группы элементов И, первый - седьмой элементы И 19-25, а также первый элемент ИЛИ 26, элемент ИЛИ-НЕ 27 и второй элемент ИЛИ 28, первую 29 и вторую 30 группы информационных входов, вход 31 пуска и тактовый вход 32, выход 33 признака тупиковой ситуации, а также интерфейсную часть, содержащую первый 43 и второй 44 стандартные разъемы СОМ-порта, первую группу элементов И 34.1-34.n и вторую группу элементов И 35.1-35.n, два распределителя импульсов 36 и 37, три схемы И 38,39, 40, два инвертора НЕ 41 и 42, первый 45 и второй 46 универсальный асинхронный приемопередатчик, буферную память 47, схемы управления 48, счетчик 49 и схему И 50. Следует отметить, что назначение и нумерация общих элементов прототипа и заявленного изобретения совпадают, кроме элементов интерфейсной части и буферной памяти и ее управления. Устройство работает следующим образом.The resource allocation controller contains the first group of 1 registers 1.1-1.n, the second group of 2 registers 2.1-2.n, the
В исходном состоянии все триггеры находятся в нулевом состоянии (входы начальной установки условно не показаны). Единичный сигнал с инверсного выхода триггера 3 разрешает прием информации через первую 14.1 - 14.n и вторую 15.1 - 15.n группы ключей в регистры 1 и 2 групп, а также закрывает группы элементов И 8 и 16, тем самым запрещается взаимная установка в нулевое состояние регистров первой 1 и второй 2 групп.In the initial state, all triggers are in the zero state (the inputs of the initial installation are conditionally not shown). A single signal from the inverted output of
Информацией, поступающей на входы 29 и 30 устройства, являются коды номеров процессов, которые владеют ресурсами или выдают запросы, причем на вход 29 информация в последовательном коде поступает с СОМ1-порта 43 через универсальный асинхронный приемопередатчик 45, на вход 30 - с СОМ2-порта 44 через универсальный асинхронный приемопередатчик 46. СОМ1 и COM2 - это стандартные порты компьютера или коммуникатора сети, с помощью которых возможно информационное взаимодействие данного устройства с внешними компонентами (управляющими компьютерами или локальной сетью) [Михаил Гук, Аппаратные средства IBM PC, Санкт-Петербург, изд. Питер, 1999, стр.669 - (Д8)]. Важным моментом является то, что согласно протоколу СОМ-порта (Д8), информационный обмен осуществляется последовательной передачей битов. Последовательный режим обеспечивает двусторонний обмен данными, последовательность обмена данными определяется специальным протоколом. Данные разделяются служебными посылками, такими как стартовый и стоп биты (start bit, stop bit), для контроля ошибок служит бит контроля четности (parity bit), соответствующий четности или нечетности суммы битов машинного «слова» (байта).The information received at the
Следует отметить, что входом устройства является интерфейсная часть в виде СОМ-портов типа RS-232 43 и 44, выполненных на универсальных асинхронных приемопередатчиках 45 и 46, которые, в свою очередь, построены на микросхемах UART (Universal Asynchronous Receiver/Transmitter). Как отмечается в (Д8), обычно используется микросхема UART 16550А. Она имеет 16-символьный буфер на прием и на передачу и, кроме того, может использовать несколько каналов прямого доступа в память DMA. При передаче микросхема UART преобразует параллельный код в последовательный и передает его побитно в линию, обрамляя исходную последовательность битами старта, останова и контроля. При приеме данных UART преобразует последовательный код в параллельный (разумеется, опуская служебные символы). Таким образом, с приемом универсальными асинхронными приемопередатчиками 45 и 46 первой информационной посылки на первые входы первой 38 и второй 39 схем И сигнал проходит на вход первого 36 и второго 37 распределителя импульсов, пока открыты вторые входы первой 38 и второй 39 схем И от инверсного выхода триггера режима 3. Первый 36 и второй 37 распределитель импульсов на выходе формируют и выбирают первые элементы И 34.1 и 35.1, остальные остаются невыбранными. Таким образом, информация проходит на входы блока ключей 14.1 и 15.1 соответственно.It should be noted that the input of the device is the interface part in the form of COM ports of the RS-232 type 43 and 44, made on universal asynchronous transceivers 45 and 46, which, in turn, are built on UART (Universal Asynchronous Receiver / Transmitter) microcircuits. As noted in (D8), the UART 16550A chip is usually used. It has a 16-character buffer for receiving and transmitting and, in addition, can use several channels of direct access to the DMA memory. During transmission, the UART chip converts the parallel code into serial and transfers it bit by bit into a line, framing the original sequence with start, stop, and control bits. When receiving data, the UART converts the serial code into parallel (of course, omitting service characters). Thus, with the reception by universal asynchronous transceivers 45 and 46 of the first information package to the first inputs of the first 38 and second 39 circuits And the signal passes to the input of the first 36 and second 37 pulse distributors, while the second inputs of the first 38 and second 39 circuits And from the inverse output are
С приемом универсальными асинхронными приемопередатчиками 45 и 46 второй информационной посылки распределителями 36 и 37 выбираются вторые элементы И 34.1 и 35.1, остальные остаются невыбранными, и принимаемая устройством информация поступает на входы вторых блоков ключей 14.2 и 15.2 соответственно. Такие циклы приема устройством информации повторяются до тех пор, пока на последних выходах распределителей импульсов 36 и 37 не появятся сигналы признака окончания циклов приема информации. С приходом этих сигналов на выходах инверторов 41 и 42 формируются сигналы, подаваемые на входы третьей схемы И 40 и на входы СОМ-портов 43 и 44 как сигналы неготовности устройства к приему информации от компьютера или от сетевого адаптера. С выхода третьей схемы И 40 сигнал подается на вход 31, запускающий цикл контроля распределения ресурсов (начала анализа). К этому моменту вся введенная информации находится в регистрах 1 и 2 групп, так как единичный сигнал с инверсного выхода триггера 3 разрешает прием информации через первую 14 и вторую 15 группы ключей.With the reception by universal asynchronous transceivers 45 and 46 of the second information message by the distributors 36 and 37, the second elements And 34.1 and 35.1 are selected, the rest remain unselected, and the information received by the device goes to the inputs of the second key blocks 14.2 and 15.2, respectively. Such cycles of receiving information by the device are repeated until at the last outputs of the pulse distributors 36 and 37 the signals indicating the end of the cycles of receiving information appear. With the arrival of these signals at the outputs of inverters 41 and 42, signals are generated that are fed to the inputs of the third circuit AND 40 and to the inputs of the COM ports 43 and 44 as signals that the device is not ready to receive information from a computer or from a network adapter. From the output of the third circuit And 40, the signal is fed to input 31, which starts the cycle of monitoring the distribution of resources (beginning of analysis). At this point, all the information entered is in the registers of
По сигналу пуска (начала анализа) на входе 31 устройства триггер 3 режима устанавливается в единичное состояние, тем самым блокируется прием информации в регистры. С помощью групп 8.n элементов И устанавливаются в нулевое состояние те регистры 2.1-2.n, которые хранят коды номеров процессов, запрашивающих свободные ресурсы. Для таких ресурсов соответствующие регистры 1 группы регистров хранят нулевой код. Таким же образом устанавливаются в нуль регистры 1 группы регистров, хранящих коды номеров процессов, владеющих ресурсами, для которых в регистрах 2 группы хранится нулевой код.According to the start signal (start of analysis) at the
Исключение из дальнейшего анализа некоторых процессов приводит к сокращению времени анализа. Удаленные процессы являются процессами, которые заведомо могут завершиться и не приведут к тупику.The exclusion of some processes from further analysis leads to a reduction in analysis time. Remote processes are processes that can certainly terminate and not lead to a dead end.
Далее производится выявление процессов, являющихся только владельцами некоторых ресурсов, но не запрашивающих ресурсы. Если такой процесс существует, то код его номера не должен быть записан в одном из регистров 2 блока. Этим же сигналом начала анализа (через элемент ИЛИ 26) триггер 4 устанавливается в единичное состояние и сигнал с его выхода открывает элемент 20 И при наличии на втором входе элемента тактового импульса с входа 32 устройства. Сигнал с выхода элемента И 20 поступает на вход распределителя 10 импульсов. Потенциалом с первого выхода распре- делителя 10 импульсов через мультиплексор 11 выходы регистра 1.1 подключаются к первым группам входов схем 13.1-13.n сравнения. По заднему фронту сигнала с выхода элемента 20 И триггер 4 устанавливается в нулевое состояние и блокирует последующие выдачи тактовых сигналов на вход распределителя 10 импульсов.Next, the processes that are only the owners of some resources, but not requesting resources, are identified. If such a process exists, then the code of its number should not be written in one of the registers of
Если код процесса оказывается нулевым, то элемент И 21 вырабатывает сигнал, разрешающий переход к проверке содержимого следующего «регистра 1 (р+1)». В противном случае элементы И-НЕ 27 и И 21 вырабатывают сигналы, открывающие элемент И 19, который выдает с выхода сигнал на входы элементов И блоков 17.1-17.n. Тем самым коды процессов, хранящиеся в регистрах 2.1-2.n, поступают на вторые группы входов схем 13.1-13.n сравнения.If the process code turns out to be zero, then the And 21 element generates a signal allowing the transition to checking the contents of the following “register 1 (p + 1)”. Otherwise, the elements AND-NOT 27 and AND 21 generate signals that open the element And 19, which gives the output signal to the inputs of the elements And blocks 17.1-17.n. Thus, the process codes stored in the registers 2.1-2.n are supplied to the second groups of inputs of the comparison circuits 13.1-13.n.
Если при параллельном сравнении происходит хотя бы одно совпадение, т.е. проверяемый процесс не только владеет, но и запрашивает ресурсы, то срабатывает элемент ИЛИ 28, с выхода которого выдается сигнал на вход элемента ИЛИ 26. Тем самым осуществляется переход на анализ следующего процесса, владеющего ресурсами. При таком исходе сравнения триггеры 5, 6 и 7 остаются в нулевом состоянии. Если при сравнении результат иной, т.е. совпадения кодов не зафиксировано, то срабатывает элемент И 25. Сигнал на его выходе свидетельствует о том, что проверяемый процесс не запрашивает ресурсы и может быть завершен, а следовательно, при анализе его можно вычеркнуть из списка.If at a parallel comparison at least one coincidence occurs, i.e. the process being checked not only owns, but also requests resources, then the
Для этого данный сигнал поступает на первые входы элементов И 18.1-18.n, с выходов которых единичный сигнал поступает на вход сброса в нуль регистра, в котором записан код процесса, выбранного для анализа. Изменение информации в данном регистре вызывает формирование на выходе одного из элементов И 8 потенциала, который поступает на вход сброса соответствующего регистра 2. Таким образом, осуществляется корректировка состояния распределения ресурсов после проведенного удаления. Одновременно с этим сигнал, сформированный на выходе элемента И 25, поступает на вход установки триггера 5 и на вход элемента ИЛИ 26. При этом начинается новая выборка кода процесса для анализа. Признаком окончания анализа в устройстве является формирование сигнала на последнем выходе распределителя 10 импульсов. Этот сигнал поступает на входы элементов И 22 и 23, выходные сигналы которых зависят от состояния триггера 5. Если триггер 5 находится в единичном состоянии, то срабатывает элемент И 22, с выхода которого сигнал поступает на вход установки в нуль триггера 5 и на вход элемента ИЛИ 26 для начала нового цикла анализа оставшихся процессов. Такие циклы выполняются до выработки сигнала на выходе устройства или пока все регистры обоих блоков не будут установлены в нуль.To do this, this signal is fed to the first inputs of the elements AND 18.1-18.n, from the outputs of which a single signal is fed to the reset input to zero of the register in which the code of the process selected for analysis is recorded. Changing the information in this register causes the output of one of the elements And 8 of the potential, which is fed to the reset input of the
Если же триггер 5 находится в нулевом состоянии, т.е. в процессе сравнения кодов всех владельцев с кодами процессов, которые выдали запросы на ресурсы, не произошло ни одного вычеркивания процессов из списков, то сигнал с выхода элемента И 23 устанавливает в единичное состояние триггер 6. Кроме того, в зависимости от сигнала, подаваемого с выхода элемента И-НЕ 9 на вход элемента И 24, триггер 7 устанавливается в соответствующее состояние (установка триггера 7 в единичное состояние означает, что система находится в тупике). Тем же сигналом с выхода триггера 6 устанавливается в нулевое состояние триггер 3. При этом схема И 50 по единичному сигналу триггера тупика 7 разрешает прохождение тактовых сигналов на вход счетчика 49, по которым в соответствии с его значениями, являющимися адресами данных в буферной памяти, схемами управления 48 осуществляется запись информации о тупиковой ситуации.If
На этом завершается процесс анализа и разрешается запись новой информации в регистры контроллера, во время которой с выхода буферной памяти 47 через вход приемопередатчика 45 проводится считывание информации о тупиковой ситуации, что является выходом устройства. На этом процедура контроля распределения ресурсов прекращается.This completes the analysis process and allows the recording of new information in the controller registers, during which the deadlock information is read from the output of the
Покажем возможность осуществления изобретения, то есть возможность его промышленного применения. Все используемые в устройстве элементы (счетчики, регистры, логические схемы И, НЕ, ИЛИ, И-НЕ, ИЛИ-НЕ, триггеры, распределители импульсов, мультиплексоры, микросхемы буферной памяти со схемами управления записью-считыванием, ключи, схемы сравнения) являются стандартными изделиями цифровой техники, и их назначение и характеристики описаны во многих справочниках, например в (Д8), а также в справочнике «Аналоговые и цифровые интегральные микросхемы». Справочник. Якубовский С.В., Кулешова В.И., Ниссельсон Л.И. и др., под ред. Якубовского С.В., М., Радио и связь, 495 стр. - (Д9). Используемые в интерфейсной части универсальные асинхронные приемопередатчиками построены на основе интегральных микросхем 16550 UART, разработанных корпорацией National Semiconductor (англ. universal asynchronous receiver/transmitter), для организации связи посредством реализации последовательного интерфейса. Информация об интегральных микросхемах помещена, например, на сайте http://ru.wikipedia.org/wiki/16550_UART - (Д10).We show the possibility of carrying out the invention, that is, the possibility of its industrial application. All elements used in the device (counters, registers, logical circuits AND, NOT, OR, AND-NOT, OR-NOT, triggers, pulse distributors, multiplexers, buffer memory chips with write-read control circuits, keys, comparison circuits) are standard products of digital technology, and their purpose and characteristics are described in many reference books, for example, in (D8), as well as in the reference book “Analog and digital integrated circuits”. Directory. Yakubovsky S.V., Kuleshova V.I., Nisselson L.I. et al., ed. Yakubovsky S.V., M., Radio and Communications, 495 pp. - (D9). The universal asynchronous transceivers used in the interface are based on 16550 UART integrated circuits developed by National Semiconductor Corporation (universal asynchronous receiver / transmitter) for organizing communication through the implementation of a serial interface. Information about integrated circuits is available, for example, on the website http://ru.wikipedia.org/wiki/16550_UART - (D10).
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2013113309/08A RU2526762C1 (en) | 2013-03-26 | 2013-03-26 | Resource allocation controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2013113309/08A RU2526762C1 (en) | 2013-03-26 | 2013-03-26 | Resource allocation controller |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2526762C1 true RU2526762C1 (en) | 2014-08-27 |
Family
ID=51456247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2013113309/08A RU2526762C1 (en) | 2013-03-26 | 2013-03-26 | Resource allocation controller |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2526762C1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU1215112A1 (en) * | 1984-08-27 | 1986-02-28 | Харьковское Высшее Военное Командно-Инженерное Училище Ракетных Войск Им.Маршала Советского Союза Крылова Н.И. | Device for checking resources distribution |
SU1297051A1 (en) * | 1985-10-16 | 1987-03-15 | Предприятие П/Я А-7160 | Device for checking resource allocation |
SU1341642A1 (en) * | 1986-05-15 | 1987-09-30 | Харьковское Высшее Военное Командно-Инженерное Училище Ракетных Войск Им.Маршала Советского Союза Крылова Н.И. | Device for checking distribution of resources |
US7337446B2 (en) * | 2000-05-02 | 2008-02-26 | Microsoft Corporation | Resource manager architecture |
-
2013
- 2013-03-26 RU RU2013113309/08A patent/RU2526762C1/en active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU1215112A1 (en) * | 1984-08-27 | 1986-02-28 | Харьковское Высшее Военное Командно-Инженерное Училище Ракетных Войск Им.Маршала Советского Союза Крылова Н.И. | Device for checking resources distribution |
SU1297051A1 (en) * | 1985-10-16 | 1987-03-15 | Предприятие П/Я А-7160 | Device for checking resource allocation |
SU1341642A1 (en) * | 1986-05-15 | 1987-09-30 | Харьковское Высшее Военное Командно-Инженерное Училище Ракетных Войск Им.Маршала Советского Союза Крылова Н.И. | Device for checking distribution of resources |
US7337446B2 (en) * | 2000-05-02 | 2008-02-26 | Microsoft Corporation | Resource manager architecture |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5799207A (en) | Non-blocking peripheral access architecture having a register configure to indicate a path selection for data transfer between a master, memory, and an I/O device | |
US9639409B2 (en) | Device and method for communicating between cores | |
US4864496A (en) | Bus adapter module for interconnecting busses in a multibus computer system | |
US3800287A (en) | Data processing system having automatic interrupt identification technique | |
US4979097A (en) | Method and apparatus for interconnecting busses in a multibus computer system | |
US3728693A (en) | Programmatically controlled interrupt system for controlling input/output operations in a digital computer | |
US3710351A (en) | Data transmitting apparatus in information exchange system using common bus | |
US3766526A (en) | Multi-microprogrammed input-output processor | |
JPS62189549A (en) | Multi-hierachical level multi-processor | |
US20070174509A1 (en) | System for asynchronous dma command completion notification | |
US20120331065A1 (en) | Messaging In A Parallel Computer Using Remote Direct Memory Access ('RDMA') | |
US10078568B1 (en) | Debugging a computing device | |
US20160098371A1 (en) | Serial peripheral interface daisy chain communication with an in-frame response | |
CN103077147B (en) | A kind of global function 1553B bus IP Core based on chained list | |
KR20200123260A (en) | Interface for cache and memory with multiple independent arrays | |
US20180032267A1 (en) | Extensible storage system controller | |
JP5904948B2 (en) | The system that allows direct data transfer between memories of several components of the system | |
US10095643B2 (en) | Direct memory access control device for at least one computing unit having a working memory | |
RU2526762C1 (en) | Resource allocation controller | |
US6694410B1 (en) | Method and apparatus for loading/storing multiple data sources to common memory unit | |
RU131884U1 (en) | RESOURCE ALLOCATION CONTROL DEVICE | |
US6058449A (en) | Fault tolerant serial arbitration system | |
EP2963550A1 (en) | Systems and methods for synchronizing microprocessors while ensuring cross-processor state and data integrity | |
US6345332B1 (en) | Bus interchange apparatus and dual system for accessing a fault information register without regard to buffer conditions | |
US20240202156A1 (en) | Device and method for adaptive bus protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PD4A | Correction of name of patent owner |