Patents by Inventor Boris A. Babaian
Boris A. Babaian has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 8261250Abstract: A single-chip multiprocessor system and operation method of this system based on a static macro-scheduling of parallel streams for multiprocessor parallel execution. The single-chip multiprocessor system has buses for direct exchange between the processor register files and access to their store addresses and data. Each explicit parallelism architecture processor of this system has an interprocessor interface providing the synchronization signals exchange, data exchange at the register file level and access to store addresses and data of other processors. The single-chip multiprocessor system uses ILP to increase the performance. Synchronization of the streams parallel execution is ensured using special operations setting a sequence of streams and stream fragments execution prescribed by the program algorithm.Type: GrantFiled: January 10, 2011Date of Patent: September 4, 2012Assignee: Elbrus InternationalInventors: Boris A. Babaian, Yuli Kh. Sakhin, Vladimir Yu. Volkonskiy, Sergey A. Rozhkov, Vladimir V. Tikhorsky, Feodor A. Gruzdov, Leonid N. Nazarov, Mikhail L. Chudakov
-
Publication number: 20110107067Abstract: A single-chip multiprocessor system and operation method of this system based on a static macro-scheduling of parallel streams for multiprocessor parallel execution. The single-chip multiprocessor system has buses for direct exchange between the processor register files and access to their store addresses and data. Each explicit parallelism architecture processor of this system has an interprocessor interface providing the synchronization signals exchange, data exchange at the register file level and access to store addresses and data of other processors. The single-chip multiprocessor system uses ILP to increase the performance. Synchronization of the streams parallel execution is ensured using special operations setting a sequence of streams and stream fragments execution prescribed by the program algorithm.Type: ApplicationFiled: January 10, 2011Publication date: May 5, 2011Applicant: Elbrus InternationalInventors: Boris A. Babaian, Yuli Kh. Sakhin, Vladimir Yu. Volkonskiy, Sergey A. Rozhkov, Vladimir V. Tikhorsky, Feodor A. Gruzdov, Leonid N. Nazarov, Mikhail L. Chudakov
-
Patent number: 7895587Abstract: A single-chip multiprocessor system and operation method of this system based on a static macro-scheduling of parallel streams for multiprocessor parallel execution. The single-chip multiprocessor system has buses for direct exchange between the processor register files and access to their store addresses and data. Each explicit parallelism architecture processor of this system has an interprocessor interface providing the synchronization signals exchange, data exchange at the register file level and access to store addresses and data of other processors. The single-chip multiprocessor system uses ILP to increase the performance. Synchronization of the streams parallel execution is ensured using special operations setting a sequence of streams and stream fragments execution prescribed by the program algorithm.Type: GrantFiled: September 8, 2006Date of Patent: February 22, 2011Assignee: Elbrus InternationalInventors: Boris A. Babaian, Yuli Kh. Sakhin, Vladimir Yu. Volkonskiy, Sergey A. Rozhkov, Vladimir V. Tikhorsky, Feodor A. Gruzdov, Leonid N. Nazarov, Mikhail L. Chudakov
-
Publication number: 20070006193Abstract: A single-chip multiprocessor system and operation method of this system based on a static macro-scheduling of parallel streams for multiprocessor parallel execution. The single-chip multiprocessor system has buses for direct exchange between the processor register files and access to their store addresses and data. Each explicit parallelism architecture processor of this system has an interprocessor interface providing the synchronization signals exchange, data exchange at the register file level and access to store addresses and data of other processors. The single-chip multiprocessor system uses ILP to increase the performance. Synchronization of the streams parallel execution is ensured using special operations setting a sequence of streams and stream fragments execution prescribed by the program algorithm.Type: ApplicationFiled: September 8, 2006Publication date: January 4, 2007Applicant: Elbrus InternationalInventors: Boris Babaian, Yuli Sakhin, Vladimir Volkonskiy, Sergey Rozhkov, Vladimir Tikhorsky, Feodor Gruzdov, Leonid Nazarov, Mikhail Chudakov
-
Patent number: 7143401Abstract: A single-chip multiprocessor system and operation method of this system based on a static macro-scheduling of parallel streams for multiprocessor parallel execution. The single-chip multiprocessor system has buses for direct exchange between the processor register files and access to their store addresses and data. Each explicit parallelism architecture processor of this system has an interprocessor interface providing the synchronization signals exchange, data exchange at the register file level and access to store addresses and data of other processors. The single-chip multiprocessor system uses ILP to increase the performance. Synchronization of the streams parallel execution is ensured using special operations setting a sequence of streams and stream fragments execution prescribed by the program algorithm.Type: GrantFiled: February 20, 2001Date of Patent: November 28, 2006Assignee: Elbrus InternationalInventors: Boris A. Babaian, Yuli Kh. Sakhin, Vladimir Yu. Volkonskiy, Sergey A. Rozhkov, Vladimir V. Tikhorsky, Feodor A. Gruzdov, Leonid N. Nazarov, Mikhail L. Chudakov
-
Patent number: 7069412Abstract: A plurality of virtual memory spaces is implemented in a computer system designed to be binary-compatible with one or a plurality of foreign architectures. A single primary virtual memory space, designated as the native VM space, contains native codes directly executable by the host microprocessor, such as the binary translated codes and the binary translation process/system itself. One or a plurality of secondary virtual memory spaces, designated as the foreign VM space(s), contain foreign data and codes (to be translated into binary translated codes in the primary VM space) only, hence encompassing no native code executable by the host microprocessor directly. In one embodiment, each foreign architecture supported by the host microprocessor through the binary translation process is provided its own secondary VM space; hence the number of the secondary VM spaces supported equals the number of the foreign architectures supported.Type: GrantFiled: June 2, 2003Date of Patent: June 27, 2006Assignee: Elbrus InternationalInventors: Boris A. Babaian, Roman A. Khvatov, Alexander V. Ermolovich
-
Patent number: 7065750Abstract: Precise exceptions handling in the optimized binary translated code is achieved by transitioning execution to the non-optimized step-by-step foreign code execution means in accordance with one of the several coherent foreign states designated during the optimized translation of the foreign code. A method to improve the operation by avoiding complete foreign state updates in the optimized code, an apparatus to track the switching between the states and a method to recompute the complete foreign state in accordance to the current state identification, execution context and additional documentation provided during the translation time are proposed.Type: GrantFiled: April 18, 2001Date of Patent: June 20, 2006Assignee: Elbrus InternationalInventors: Boris A. Babaian, Andrew V. Yakushev, Sergey A. Rozhkov, Vladimir M. Gushchin
-
Patent number: 7003650Abstract: A method and apparatus for solving the output dependence problem in an explicit parallelism architecture microprocessor with consideration for implementation of the precise exception. In case of an output dependence hazard, the issue into bypass of a result of the earlier issued operation having an output hazard is cancelled. Latencies of short instructions are aligned by including additional stages on the way of writing the results into the register file in shorter executive units, which allows to save the issue order while writing the results into the register file. For long and unpredictable latencies of the instructions, writing of the result of the earlier issued operation having an output dependence hazard into the register file is cancelled after checking for no precise exception condition. All additional stages are connected to the bypass not to increase the result access time in case of this result use in the following operations.Type: GrantFiled: December 11, 2001Date of Patent: February 21, 2006Assignee: Elbrus InternationalInventors: Boris A. Babaian, Valeri G. Gorokhov, Feodor A. Gruzdov, Yuli K. Sakhin, Vladimir V. Rudometov, Valdimir Y. Volkonsky
-
Patent number: 6820255Abstract: The present invention increases efficiency of a binary translation process by correlating selected foreign code to previously translated binary host code. This approach eliminates repetitive translation of foreign code when the foreign code is executed on a host computer system. During the translation process, a database of translated foreign code is populated and thereafter a software layer checks for correspondence between the foreign code and binary code stored in the database. If the database contains corresponding code, that code is transferred to system memory for execution and there is no need to retranslate the foreign code. Minimizing the time spent translating the foreign code results in improved execution speed on the host computer system. The software layer creates an index into the database by hashing the foreign code or by using the storage location of the foreign code. By way of example, the sector of a disk drive where the foreign code is stored determines the index into the database.Type: GrantFiled: April 18, 2001Date of Patent: November 16, 2004Assignee: Elbrus InternationalInventors: Boris A. Babaian, Andrew V. Yakushev, Roman A. Khvatov, Sergey Y. Petrovsky
-
Patent number: 6732220Abstract: The present invention relates to a computer system adapted to efficiently execute binary translated code. In accordance with the present invention, foreign code is stored in a foreign virtual memory space, translated to acquire binary translated code, which is stored in a host virtual memory space and then executed. The host computer system isolates each virtual memory configuration into separate processes referred to as a virtual machine while enabling multiple virtual machines to exist simultaneously. Execution may switch from one virtual machine to another merely by switching to a new page table, where each page table describes the memory configuration of a virtual machine. Common system level resources are shared by the virtual machines under the control of a virtual memory manager.Type: GrantFiled: April 18, 2001Date of Patent: May 4, 2004Assignee: Elbrus InternationalInventors: Boris A. Babaian, Roman A. Khvatov
-
Publication number: 20040024953Abstract: A plurality of virtual memory spaces is implemented in a computer system designed to be binary-compatible with one or a plurality of foreign architectures. A single primary virtual memory space, designated as the native VM space, contains native codes directly executable by the host microprocessor, such as the binary translated codes and the binary translation process/system itself. One or a plurality of secondary virtual memory spaces, designated as the foreign VM space(s), contain foreign data and codes (to be translated into binary translated codes in the primary VM space) only, hence encompassing no native code executable by the host microprocessor directly. In one embodiment, each foreign architecture supported by the host microprocessor through the binary translation process is provided its own secondary VM space; hence the number of the secondary VM spaces supported equals the number of the foreign architectures supported.Type: ApplicationFiled: June 2, 2003Publication date: February 5, 2004Applicant: Elbrus InternationalInventors: Boris A. Babaian, Roman A. Khvatov, Alexander V. Ermolovich
-
Patent number: 6584611Abstract: A method, implemented in a compiler, of balancing the workload between blocks in a control flow to reduce the overall execution time of control block includes steps for identifying “hard” blocks the consume excess resources, selecting hard block to unload, and unloading critical operations from a hard block to a control flow predecessor.Type: GrantFiled: January 25, 2001Date of Patent: June 24, 2003Assignee: Elbrus International LimitedInventors: Boris A. Babaian, Sergey K. Okunev, Vladimir Y. Volkonsky
-
Patent number: 6564372Abstract: A method and apparatus for optimizing scheduling of a block of program instructions to remove a condition resolving instruction from the critical path where the resolution of a condition controls the selection between input results, generated by predecessor operations, by a merge operation which passes the selected result to a successor operation. In a preferred embodiment, the successor operation is “unzipped” by duplicating the successor operations, providing predecessor results directly to the, duplicated successor operations, and scheduling the duplicated successor operations prior to the merge.Type: GrantFiled: February 15, 2000Date of Patent: May 13, 2003Assignee: Elbrus International LimitedInventors: Boris A. Babaian, Sergey K. Okunev, Vladimir Y. Volkonsky
-
Patent number: 6560775Abstract: A method and system for preparing branch instruction of a computer program, for compiling and execution in a computer system, in which each transfer instruction is split into two instructions: a control transfer preparation instruction and a control transfer instruction, wherein the control transfer preparation instruction contains the transfer address and is placed by the compiler several instructions ahead of the control transfer instruction, so that the number of clock cycles in the pipeline between transfer condition generation and transfer itself would be reduced.Type: GrantFiled: December 24, 1998Date of Patent: May 6, 2003Assignee: Elbrus International LimitedInventors: Alexander M. Artymov, Boris A. Babaian, Feodor A. Gruzdov, Alexey P. Lizorkin, Yuli K. Sakhin, Evgeny Z. Stolyarsky
-
Patent number: 6549903Abstract: A method and computer apparatus are presented for providing a secure data architecture for computer memory of a processor. The apparatus comprises a memory unit and a processing unit. Data are stored in the memory unit and manipulated by the processing unit, which is programmed to implement the data architecture. Tagged single data words are formed by concatenating a tag to each of the single data words. Each of the tags takes a value that corresponds to the data type of the single data word to which it is concatenated. A data multiword is creating by concatenating tagged single data words having the same data type. The data multiword is stored within a location in the computer memory, the location selected to ensure alignment of the data multiword in accordance with its length. An effective tag value is constructed for the data multiword by concatenating all of its single word tags.Type: GrantFiled: February 17, 2000Date of Patent: April 15, 2003Assignee: Elbrus International LimitedInventors: Boris A. Babaian, Feodor A. Gruzdov, Vladimir Y. Volkonsky, Yuli K. Sakhin
-
Patent number: 6526573Abstract: A compiler optimization method for optimizing a scheduled block of instructions inserts a conditional branch instruction in place of a merge instruction to select between alternative paths when a condition is resolved.Type: GrantFiled: February 17, 2000Date of Patent: February 25, 2003Assignee: Elbrus International LimitedInventors: Boris A. Babaian, Sergey K. Okunev, Vladimir Y. Volkonsky
-
Patent number: 6516463Abstract: A method, implemented by a compiler, for removing a store-load dependency from a critical path utilizes a compare address operation to determine at run time whether dependency actual exists. The operand to be stored is held in a temporary register and provided directly to the operations, using load operation result, in dependence on the value of the compare address operation result, so that the dependency is removed.Type: GrantFiled: January 25, 2001Date of Patent: February 4, 2003Assignee: Elbrus International LimitedInventors: Boris A. Babaian, Sergey K. Okunev, Vladimir Y. Volkonsky
-
Publication number: 20020169944Abstract: A method and apparatus for solving the output dependence problem in an explicit parallelism architecture microprocessor with consideration for implementation of the precise exception. In case of an output dependence hazard, the issue into bypass of a result of the earlier issued operation having an output hazard is cancelled. Latencies of short instructions are aligned by including additional stages on the way of writing the results into the register file in shorter executive units, which allows to save the issue order while writing the results into the register file. For long and unpredictable latencies of the instructions, writing of the result of the earlier issued operation having an output dependence hazard into the register file is cancelled after checking for no precise exception condition. All additional stages are connected to the bypass not to increase the result access time in case of this result use in the following operations.Type: ApplicationFiled: December 11, 2001Publication date: November 14, 2002Applicant: Elbrus InternationalInventors: Boris A. Babaian, Valeri G. Gorokhov, Feodor A. Gruzdov, Vladimir V. Rudometov, Yuli K. Sakhin, Vladimir Y. Volkonsky
-
Publication number: 20020092002Abstract: The present invention provides a system and method for determining the cause of an exception and for reliably handling precise exceptions in a computer system that executes a plurality of operations in parallel. Binary compilation techniques are used to port code from a foreign architecture to a host architecture but in order to exploit the parallelism of the host processor architecture in binary translated code, the code must optimized by extracting the inherent parallelism of the foreign code while maintaining precise exceptions. Because the optimization process violates precise exception order, the host computer system uses a speculative mode of execution whereby the host computer system puts a speculative value into the destination register. To denote that a speculative value is stored in the register, an additional bit is associated with every host register to indicate that the operand is speculative.Type: ApplicationFiled: April 18, 2001Publication date: July 11, 2002Inventors: Boris A. Babaian, Andrew V. Yakushev, Sergey A. Rozhkov, Vladimir M. Gushchin
-
Publication number: 20020066090Abstract: A method, implemented by a compiler, for removing a store-load dependency from a critical path utilizes a compare address operation to determine at run time whether dependency actual exists. The operand to be stored is held in a temporary register and provided directly to the operations, using load operation result, in dependence on the value of the compare address operation result, so that the dependency is removed.Type: ApplicationFiled: January 25, 2001Publication date: May 30, 2002Inventors: Boris A. Babaian, Sergey K. Okunev, Vladimir Y. Volkonsky