Patents by Inventor Kenneth ChengHao Lin
Kenneth ChengHao Lin 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).
-
Publication number: 20160217079Abstract: A high performance instruction cache method for facilitating operation of a processor core coupled to a first memory containing executable instructions, and a second memory with a faster speed than the first memory is provided. The method includes examining instructions from the first memory filled into the second memory and extracting instruction information containing at least branch information. The method also includes creating a plurality of tracks based on the extracted instruction information. Further, the method includes filling at least one or more instructions that are possibly executed by the processor core from the first memory into the second memory based on one or more tracks from a plurality of instruction tracks.Type: ApplicationFiled: August 22, 2014Publication date: July 28, 2016Applicant: SHANGHAI XINHAO MICROELECTRONICS CO., LTD.Inventor: KENNETH CHENGHAO LIN
-
Publication number: 20160210154Abstract: This invention provides a high performance processor system and a method based on a common general purpose unit, it may be configured into a variety of different processor architectures; before the processor executes instructions, the instruction is filled into the instruction read buffer, which is directly accessed by the processor core, then instruction read buffer actively provides instructions to processor core to execute, achieving a high cache hit rate.Type: ApplicationFiled: August 18, 2014Publication date: July 21, 2016Inventor: KENNETH CHENGHAO LIN
-
Publication number: 20160202985Abstract: A variable length instruction processor system and method is provided. Before a processor core executes an instruction, the system and method applied in a processor field convert the instruction into micro-operation(s) and the micro-operation(s) can be filled into a cache system that can be directly accessed by a processor core, reducing the depth of a pipeline and improving efficiency of the pipeline.Type: ApplicationFiled: August 15, 2014Publication date: July 14, 2016Applicant: Shanghai XinHao Microelectronics Co. Ltd.Inventor: KENNETH CHENGHAO LIN
-
Publication number: 20160202983Abstract: This invention provides a cache system and method based on instruction read buffer (IRB). When applied to the field of processor, it is capable of filling instructions to the instruction read buffer which can be directly accessed by processor core and the processor core outputs instruction to the processor core for execution autonomously and achieve a high cache hit rate.Type: ApplicationFiled: August 18, 2014Publication date: July 14, 2016Applicant: Shanghai Xinhao Microelectronics Co., Ltd.Inventor: KENNETH CHENGHAO LIN
-
Patent number: 9361110Abstract: A method is provided for controlling a pipeline operation of a processor. The processor is coupled to a memory containing executable computer instructions. The method includes determining a branch instruction to be executed by the processor, and providing both an address of a branch target instruction of the branch instruction and an address of a next instruction following the branch instruction in a program sequence. The method also includes determining a branch decision with respect to the branch instruction based on at least the address of the branch target instruction provided, and selecting at least one of the branch target instruction and the next instruction as a proper instruction to be executed by an execution unit of the processor, based on the branch decision and before the branch instruction is executed by the execution unit, such that the pipeline operation is not stalled whether or not a branch is taken with respect to the branch instruction.Type: GrantFiled: December 31, 2010Date of Patent: June 7, 2016Inventor: Kenneth Chenghao Lin
-
Patent number: 9299448Abstract: A memory device includes a first memory array, a first read port, a second read port, and a control input port. The first memory array contains a plurality of memory cells arranged in an array configuration. The first read port is configured to read first data from a single memory cell during a single read cycle, and the second read port is configured to read second data from a group of memory cells controlled by a common word line. Further, the control input is configured to receive a mode signal indicating a functional mode for the memory device including a first read mode and a second read mode. When the mode signal indicates the first read mode, the first read port is used to read the first data. When the mode signal indicates the second read mode, the first read port is used to read out the first data and the second read port is used to read the second data.Type: GrantFiled: December 28, 2010Date of Patent: March 29, 2016Assignee: SHANGHAI XIN HAO MICRO ELECTRONICS CO. LTD.Inventors: Kenneth Chenghao Lin, Bingchun Zhang
-
Patent number: 9262164Abstract: A digital system is provided. The digital system includes an execution unit, a level-zero (L0) memory, and an address generation unit. The execution unit is coupled to a data memory containing data to be used in operations of the execution unit. The L0 memory is coupled between the execution unit and the data memory and configured to receive a part of the data in the data memory. The address generation unit is configured to generate address information for addressing the L0 memory. Further, the L0 memory provides at least two operands of a single instruction from the part of the data to the execution unit directly, without loading the at least two operands into one or more registers, using the address information from the address generation unit.Type: GrantFiled: May 1, 2015Date of Patent: February 16, 2016Assignee: SHANGHAI XIN HAO MICRO ELECTRONICS CO. LTD.Inventors: Kenneth Chenghao Lin, Haoqi Ren
-
Publication number: 20160034281Abstract: An instruction processing system is provided. The system includes a central processing unit (CPU), a memory system and an instruction control unit. The CPU is configured to execute one or more instructions of the executable instructions. The memory system is configured to store the instructions. The instruction control unit is configured to, based on location of a branch instruction stored in a track table, control the memory system to provide the instructions to be executed for the CPU. Further, the instruction control unit is also configured to, based on branch prediction of the branch instruction stored in the track table, control the memory system to output one of a fall-through instruction and a target instruction of the branch instruction.Type: ApplicationFiled: January 29, 2014Publication date: February 4, 2016Inventor: KENNETH CHENGHAO LIN
-
Publication number: 20160026469Abstract: A data cache system is provided. The system includes a central processing unit (CPU), a memory system, an instruction track table, a tracker and a data engine. The CPU is configured to execute instructions and read data. The memory system is configured to store the instructions and the data. The instruction track table is configured to store corresponding information of branch instructions stored in the memory system. The tracker is configured to point to a first data read instruction after an instruction currently being executed by the CPU. The data engine is configured to calculate a data address in advance before the CPU executes the data read instruction pointed to by the tracker. Further, the data engine is also configured to control the memory system to provide the corresponding data for the CPU based on the data address.Type: ApplicationFiled: March 14, 2014Publication date: January 28, 2016Inventor: KENNETH CHENGHAO LIN
-
Publication number: 20160004538Abstract: A multiple issue instruction processing system is provided. The system includes a central processing unit (CPU), a memory system and an instruction control unit. The CPU is configured to execute one or more instructions of the executable instructions at the same time. The memory system is configured to store the instructions. The instruction control unit is configured to, based on location of a branch instruction stored in a track table, control the memory system to output the instructions likely to be executed to the CPU.Type: ApplicationFiled: January 29, 2014Publication date: January 7, 2016Inventor: KENNETH CHENGHAO LIN
-
Publication number: 20150378935Abstract: A storage table replacement method uses an index table, a storage table containing multiple rows of storage cells, and a correlation table. The method includes storing information in one or more rows of storage cells in the storage table; and storing track addresses of the storage cells in the storage table in the index table. Every track address includes a row address and a column address. The method further includes recording, in every row in the correlation table, a total number of index rows/index table memory cells that use the row as an index target in the index table and addresses of a certain number of index rows/index table memory cells, where the correlation table and the storage table have a same number of rows; and, when a row of new information is generated, based on the correlation table, selecting and replacing a row in the storage table.Type: ApplicationFiled: January 29, 2014Publication date: December 31, 2015Inventor: KENNETH CHENGHAO LIN
-
Publication number: 20150370569Abstract: An instruction processing system is provided. The system includes a central processing unit (CPU), an m number of memory devices and an instruction control unit. The CPU is capable of being coupled to the m number of memory devices. Further, the CPU is configured to execute one or more instructions of the executable instructions. The m number of memory devices with different access speeds are configured to store the instructions, where m is a natural number greater than 1. The instruction control unit is configured to, based on a track address of a target instruction of a branch instruction stored in a track table, control a memory with a lower speed to provide the instruction for a memory with a higher speed.Type: ApplicationFiled: January 29, 2014Publication date: December 24, 2015Inventor: KENNETH CHENGHAO LIN
-
Publication number: 20150370817Abstract: A storage processing structure, a method of information storage, retrieving, and addressing are provided. The storage processing structure, the method of information storage, retrieving, and addressing employ a first storage table, a second storage table and comparators. Each line of the first storage table stores information in compressed sequential order to reduce the storage space requirement; the corresponding memory elements of the second storage table stores a representative value, this value can then be used to retrieve or address the information from the first storage table, to improve the speed of information retrieving and addressing.Type: ApplicationFiled: January 29, 2014Publication date: December 24, 2015Inventor: KENNETH CHENGHAO LIN
-
Publication number: 20150356025Abstract: A digital system including a processor core and a cache control unit is disclosed. The processor core is capable of being coupled to a first memory containing data and a second memory with a faster speed than the first memory, and is configured to execute a segment of instructions having at least one instruction accessing the data from the second memory using a base register. The cache control unit is configured to be coupled to the first memory, the second memory, and the processor core to fill the data from the first memory to the second memory before the processor core executes the instruction accessing the data. Further, the cache control unit is further configured to examine the segment of instructions to extract instruction information containing at least data access instruction information and last register updating instruction information and to create a track corresponding to the segment of instructions based on the extracted instruction information.Type: ApplicationFiled: August 18, 2015Publication date: December 10, 2015Inventors: KENNETH CHENGHAO LIN, HAOQI REN
-
Publication number: 20150339125Abstract: A method for branch processing is provided. The method includes determining an instruction type of an instruction written into a cache memory and recording the instruction type. The method also includes calculating a branch target instruction address of the branch instruction and recording target address information corresponding to the branch target instruction address when the instruction is a branch instruction, where the target address information corresponds to one instruction segment containing at least the branch target instruction.Type: ApplicationFiled: November 22, 2013Publication date: November 26, 2015Inventor: KENNETH CHENGHAO LIN
-
Patent number: 9141388Abstract: A digital system includes a processor core and a cache control unit. The processor core can be coupled to a first memory containing data and a second memory with a faster speed than the first memory, and is configured to execute a segment of instructions having at least one instruction accessing the data from the second memory using a base register. The cache control unit is configured to be coupled to the first memory, the second memory, and the processor core to fill the data from the first memory to the second memory before the processor core executes the instruction accessing the data, and is further configured to examine the segment of instructions to extract instruction information containing at least data access instruction information and last register updating instruction information and to create a track corresponding to the segment of instructions based on the extracted instruction information.Type: GrantFiled: July 13, 2012Date of Patent: September 22, 2015Assignee: SHANGHAI XIN HAO MICRO ELECTRONICS CO., LTD.Inventors: Kenneth Chenghao Lin, Haoqi Ren
-
Patent number: 9141553Abstract: A digital system is provided for high-performance cache systems. The digital system includes a processor core and a cache control unit. The processor core is capable of being coupled to a first memory containing executable instructions and a second memory with a faster speed than the first memory. Further, the processor core is configured to execute one or more instructions of the executable instructions from the second memory. The cache control unit is configured to be couple to the first memory, the second memory, and the processor core to fill at least the one or more instructions from the first memory to the second memory before the processor core executes the one or more instructions.Type: GrantFiled: July 29, 2014Date of Patent: September 22, 2015Assignee: SHANGHAI XIN HAO MICRO ELECTRONICS CO. LTD.Inventors: Kenneth Chenghao Lin, Haoqi Ren
-
Publication number: 20150234660Abstract: A digital system is provided. The digital system includes an execution unit, a level-zero (L0) memory, and an address generation unit. The execution unit is coupled to a data memory containing data to be used in operations of the execution unit. The L0 memory is coupled between the execution unit and the data memory and configured to receive a part of the data in the data memory. The address generation unit is configured to generate address information for addressing the L0 memory. Further, the L0 memory provides at least two operands of a single instruction from the part of the data to the execution unit directly, without loading the at least two operands into one or more registers, using the address information from the address generation unit.Type: ApplicationFiled: May 1, 2015Publication date: August 20, 2015Inventors: KENNETH CHENGHAO LIN, HAOQI REN
-
Patent number: 9047193Abstract: A digital system is provided. The digital system includes an execution unit, a level-zero (L0) memory, and an address generation unit. The execution unit is coupled to a data memory containing data to be used in operations of the execution unit. The L0 memory is coupled between the execution unit and the data memory and configured to receive a part of the data in the data memory. The address generation unit is configured to generate address information for addressing the L0 memory. Further, the L0 memory provides at least two operands of a single instruction from the part of the data to the execution unit directly, without loading the at least two operands into one or more registers, using the address information from the address generation unit.Type: GrantFiled: January 28, 2011Date of Patent: June 2, 2015Assignee: SHANGHAI XIN HAO MICRO ELECTRONICS CO. LTD.Inventors: Kenneth Chenghao Lin, Haoqi Ren
-
Publication number: 20140337582Abstract: A digital system is provided for high-performance cache systems. The digital system includes a processor core and a cache control unit. The processor core is capable of being coupled to a first memory containing executable instructions and a second memory with a faster speed than the first memory. Further, the processor core is configured to execute one or more instructions of the executable instructions from the second memory. The cache control unit is configured to be couple to the first memory, the second memory, and the processor core to fill at least the one or more instructions from the first memory to the second memory before the processor core executes the one or more instructions.Type: ApplicationFiled: July 29, 2014Publication date: November 13, 2014Inventors: KENNETH CHENGHAO LIN, HAOQI REN