Patents by Inventor Po-Jen Hsueh
Po-Jen Hsueh 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: 9223702Abstract: A flash controller receives a read request for reading a page of data from the flash memory from a host system, and identifies, in a cache tag table stored in the random access memory, a virtual unit address associated with the page of data. In response to identifying the virtual unit address in the cache tag table, controller determines whether a valid tag line for the page of data is associated with the virtual unit address in the cache tag table. In response to determining that the valid tag line is associated with the virtual unit address in the cache tag table, the controller reads the page of data from the random access memory in accordance with the read request and returns the read data to the host system.Type: GrantFiled: August 11, 2014Date of Patent: December 29, 2015Assignee: HGST Technologies Santa Ana, Inc.Inventors: Po-Jen Hsueh, Richard A. Mataya, Mark Moshayedi
-
Patent number: 9098416Abstract: A method for managing a flash storage device includes initiating a read request and reading requested data from a first storage block of a plurality of storage blocks in the flash storage device based on the read request. The method further includes incrementing a read count for the first storage block and moving the data in the first storage block to an available storage block of the plurality of storage blocks when the read count reaches a first threshold value.Type: GrantFiled: April 21, 2014Date of Patent: August 4, 2015Assignee: HGST Technologies Santa Ana, Inc.Inventors: Richard A. Mataya, Po-Jen Hsueh, Mark Moshayedi
-
Publication number: 20140351498Abstract: A flash controller receives a read request for reading a page of data from the flash memory from a host system, and identifies, in a cache tag table stored in the random access memory, a virtual unit address associated with the page of data. In response to identifying the virtual unit address in the cache tag table, controller determines whether a valid tag line for the page of data is associated with the virtual unit address in the cache tag table. In response to determining that the valid tag line is associated with the virtual unit address in the cache tag table, the controller reads the page of data from the random access memory in accordance with the read request and returns the read data to the host system.Type: ApplicationFiled: August 11, 2014Publication date: November 27, 2014Inventors: Po-Jen HSUEH, Richard A. Mataya, Mark Moshayedi
-
Patent number: 8806144Abstract: A flash storage device includes a first memory, a flash memory comprising a plurality of physical blocks, each of the plurality of physical blocks comprising a plurality of physical pages, and a controller. The controller is configured to store, in the first memory, copies of data read from the flash memory, map a logical address in a read request received from a host system to a virtual unit address and a virtual page address, and check a virtual unit cache tag table stored in the first memory based on the virtual unit address. If a hit is found in the virtual unit cache tag table, a virtual page cache tag sub-table stored in the first memory is checked based on the virtual page address, wherein the virtual page cache tag sub-table is associated with the virtual unit address. If a hit is found in the virtual page cache tag sub-table, data stored in the first memory mapped to the hit in the virtual page cache tag sub-table is read in response to the read request received from the host system.Type: GrantFiled: May 12, 2010Date of Patent: August 12, 2014Assignee: STEC, Inc.Inventors: Po-Jen Hsueh, Richard A. Mataya, Mark Moshayedi
-
Publication number: 20140223244Abstract: A method for managing a flash storage device includes initiating a read request and reading requested data from a first storage block of a plurality of storage blocks in the flash storage device based on the read request. The method further includes incrementing a read count for the first storage block and moving the data in the first storage block to an available storage block of the plurality of storage blocks when the read count reaches a first threshold value.Type: ApplicationFiled: April 21, 2014Publication date: August 7, 2014Applicant: STEC, Inc.Inventors: Richard A. MATAYA, Po-Jen HSUEH, Mark MOSHAYEDI
-
Patent number: 8719652Abstract: A method for managing a flash storage device includes initiating a read request and reading requested data from a first storage block of a plurality of storage blocks in the flash storage device based on the read request. The method further includes incrementing a read count for the first storage block and moving the data in the first storage block to an available storage block of the plurality of storage blocks when the read count reaches a first threshold value.Type: GrantFiled: May 12, 2010Date of Patent: May 6, 2014Assignee: STEC, Inc.Inventors: Richard A. Mataya, Po-Jen Hsueh, Mark Moshayedi
-
Patent number: 8635399Abstract: The disclosed subject matter includes a memory system with a flash memory and a flash memory controller. The flash memory controller is configured to divide the flash memory into virtual segments, each segment including blocks of flash memory cells. The controller is also configured to receive a write request to a location designated by a memory identifier and to map the memory identifier to a segment. When the segment matches an open segment and an open block can store the data, the controller is configured to retrieve the open segment and the open block from a collection tracking open blocks and to write the data to the open block. When the segment is different from the open segment, the controller is configured to close the open block, to write the data to a block in the segment, and to update the collection with the block in the segment.Type: GrantFiled: September 12, 2012Date of Patent: January 21, 2014Assignee: STEC, Inc.Inventors: Cheng-fan Lee, Hung-min Chang, Po-jen Hsueh
-
Publication number: 20130097365Abstract: The disclosed subject matter includes a memory system with a flash memory and a flash memory controller. The flash memory controller is configured to divide the flash memory into virtual segments, each segment including blocks of flash memory cells. The controller is also configured to receive a write request to a location designated by a memory identifier and to map the memory identifier to a segment. When the segment matches an open segment and an open block can store the data, the controller is configured to retrieve the open segment and the open block from a collection tracking open blocks and to write the data to the open block. When the segment is different from the open segment, the controller is configured to close the open block, to write the data to a block in the segment, and to update the collection with the block in the segment.Type: ApplicationFiled: September 12, 2012Publication date: April 18, 2013Applicant: STEC, Inc.Inventors: Cheng-Fan Lee, Hung-Min Chang, Po-Jen Hsueh
-
Publication number: 20130054880Abstract: The disclosed subject matter includes a memory system with a flash memory and a flash memory controller. The flash memory has a plurality of blocks, where each block is configured to store data. The flash memory controller is configured to maintain a queue having a plurality of slots, where each of the plurality of slots is configured to maintain an identifier of an open block in the flash memory. The controller is also configured to store data to a target block in the flash memory. Furthermore, the controller is configured to remove an identifier of one of the open blocks from the queue and to add an identifier of the target block to the queue.Type: ApplicationFiled: August 17, 2012Publication date: February 28, 2013Applicant: STEC, Inc.Inventors: Hung-Min CHANG, Cheng-Fan LEE, Po-Jen HSUEH
-
Publication number: 20120239990Abstract: A method for managing a flash storage device includes initiating a read request and reading requested data from a first storage block of a plurality of storage blocks in the flash storage device based on the read request. The method further includes incrementing a read count for the first storage block and moving the data in the first storage block to an available storage block of the plurality of storage blocks when the read count reaches a first threshold value.Type: ApplicationFiled: May 12, 2010Publication date: September 20, 2012Applicant: STEC, INC.Inventors: Richard A. MATAYA, Po-Jen HSUEH, Mark MOSHAYEDI
-
Publication number: 20120239854Abstract: A flash storage device includes a first memory, a flash memory comprising a plurality of physical blocks, each of the plurality of physical blocks comprising a plurality of physical pages, and a controller. The controller is configured to store, in the first memory, copies of data read from the flash memory, map a logical address in a read request received from a host system to a virtual unit address and a virtual page address, and check a virtual unit cache tag table stored in the first memory based on the virtual unit address. If a hit is found in the virtual unit cache tag table, a virtual page cache tag sub-table stored in the first memory is checked based on the virtual page address, wherein the virtual page cache tag sub-table is associated with the virtual unit address. If a hit is found in the virtual page cache tag sub-table, data stored in the first memory mapped to the hit in the virtual page cache tag sub-table is read in response to the read request received from the host system.Type: ApplicationFiled: May 12, 2010Publication date: September 20, 2012Applicant: STEC., INC.Inventors: Po-Jen HSUEH, Richard A. MATAYA, Mark MOSHAYEDI
-
Publication number: 20060200911Abstract: An air cell provided for a mattress has two independent air chambers that are manufactured by die-casting at a same time. One of the independent air chambers is an adjustable air chamber, in which air can be alternately inputted and outputted through a pneumatic member to have the effect of promoting blood circulation of a person. The other independent air chamber is a supporting air chamber, which can support the body of the person with permanent air therein whenever the adjustable air chamber loses its function.Type: ApplicationFiled: March 9, 2005Publication date: September 14, 2006Applicant: APEX MEDICAL CORP.Inventor: Po-Jen Hsueh
-
Patent number: 6926311Abstract: A quick connector connects a pump and a fluid container is disclosed. The quick connector includes an upper component, a lower component, at least a telescopic tube, a connector body, and a soft cover. The upper component includes a first groove and a first buckle on one side thereof. The lower component has a second grove and a second buckle at locations corresponding to the first buckle and the first groove of the upper component, so that the upper component can be fitted to the lower component with the buckles and grooves. The telescopic tube is fitted between the upper component and the lower component to fasten the two components, and is connected to the fluid container at one end. The connector body includes an inner tube corresponding to the telescopic tube, and at least a movable board. The inner tube is partially overlaid inside telescopic tube, and is connected to the pump at one end. The movable board is fitted to the connector body with a turning shaft, and is rotary.Type: GrantFiled: September 3, 2003Date of Patent: August 9, 2005Assignee: Apex Medical Corp.Inventors: Kai-Hsiang Chang, Po-Jen Hsueh
-
Publication number: 20050046184Abstract: A quick connector for connecting a pump and a fluid container is disclosed. The quick connector includes an upper component, a lower component, at least a telescopic tube, a connector body, and a soft cover. The upper component includes a first groove and a first buckle on one side thereof. The lower component has a second grove and a second buckle at locations corresponding to the first buckle and the first groove of the upper component, so that the upper component can be fitted to the lower component with the buckles and grooves. The telescopic tube is fitted between the upper component and the lower component to fasten the two components, and is connected to the fluid container at one end. The connector body includes an inner tube corresponding to the telescopic tube, and at least a movable board. The inner tube is partially overlaid inside telescopic tube, and is connected to the pump at one end. The movable board is fitted to the connector body with a turning shaft, and is rotary.Type: ApplicationFiled: September 3, 2003Publication date: March 3, 2005Inventors: Kai-Hsiang Chang, Po-Jen Hsueh
-
Patent number: 6764017Abstract: A multi-function electronic card has a host interface, a multi-functional controller and a plurality of function devices. Each function device is connected to the host via the host interface by issuing an interrupt request to the multi-functional controller. The multi-functional controller has an interrupt queue and an interrupt status register, each bit of the interrupt status register corresponding to a function device. When a function device issues an interrupt request, an identification number of the function device is stored into the interrupt queue, and only when all the bits in the interrupt status register are zeros, a corresponding bit in the interrupt status register is set as 1 for issuing an interrupt request to the host. When the host has serviced the function device, the interrupt queue is updated and the interrupt status register is cleared.Type: GrantFiled: May 22, 2002Date of Patent: July 20, 2004Assignees: C-One Technology Corp., Pretec Electronics Corp.Inventors: Jui-Chung Chen, Po-Jen Hsueh, Sidney Young, Ping-Chang Liu
-
Publication number: 20030218071Abstract: A multi-function electronic card has a host interface, a multi-functional controller and a plurality of function devices. Each function device is connected to the host via the host interface by issuing an interrupt request to the multi-functional controller. The multi-functional controller has an interrupt queue and an interrupt status register, each bit of the interrupt status register corresponding to a function device. When a function device issues an interrupt request, an identification number of the function device is stored into the interrupt queue, and only when all the bits in the interrupt status register are zeros, a corresponding bit in the interrupt status register is set as 1 for issuing an interrupt request to the host. When the host has serviced the function device, the interrupt queue is updated and the interrupt status register is cleared.Type: ApplicationFiled: May 22, 2002Publication date: November 27, 2003Applicant: C-One Technology Corp, Taiwan and Pretec Eelectronics Corp,Inventors: Jui-Chung Chen, Po-Jen Hsueh, Sidney Young, Ping-Chang Liu