Patents Assigned to Skymedi Corporation
-
Publication number: 20110072191Abstract: A uniform coding system for a flash memory is disclosed. A statistic decision unit determines a coding word according to a plurality of inputs. An inverse unit controllably inverts input data to be encoded. The input data are then encoded into encoded data according to a statistic determined by the statistic decision unit.Type: ApplicationFiled: September 21, 2009Publication date: March 24, 2011Applicant: SKYMEDI CORPORATIONInventors: Han-Lung Huang, Chien-Fu Huang, Ming-Hung Chou, Shih-Keng Cho
-
Patent number: 7911840Abstract: A flash memory system includes a path selector to determine to write to a non-volatile memory, a volatile memory or both the non-volatile memory and the volatile memory when the flash memory system is to write data. A record is stored in the non-volatile memory which is updated the status of the non-volatile memory after each one or more writing operations. When the flash memory system is powered on after a power loss, it could be recovered to a command executed prior to the power loss or to any checkpoint prior to the power loss by using the record.Type: GrantFiled: January 12, 2009Date of Patent: March 22, 2011Assignee: Skymedi CorporationInventors: Hsin-Hsien Wu, Yu-Mao Kao, Yung-Li Ji, Chih-Nan Yen, Fu-Ja Shone
-
Patent number: 7907445Abstract: A method and system for obtaining a reference block on which reference voltages may be found for a MLC flash memory are disclosed. A first block and a second block are provided in the flash memory. A memory controller alternatively controls one of the first and the second blocks to act as the reference block and the other one as a cycle block in a respective period, during which the reference block stays idle and the cycle block is subjected to program/erase cycles.Type: GrantFiled: June 17, 2009Date of Patent: March 15, 2011Assignee: Skymedi CorporationInventors: Chien-Fu Huang, Ming-Hung Chou, Han-Lung Huang, Shih-Keng Cho
-
Publication number: 20110055659Abstract: A method of dynamic data storage for error correction in a memory device is disclosed. Data for storage is received, and the received data is then encoded and associated error correction code (ECC) is generated. The encoded data is stored in a portion of a data partition of the memory device, wherein percentage of the stored data in the data partition is determined according to an amount of corrected errors associated with the data partition or is predetermined.Type: ApplicationFiled: August 26, 2009Publication date: March 3, 2011Applicant: SKYMEDI CORPORATIONInventors: Chih-Cheng Tu, Yan-Wun Huang, Han-Lung Huang, Ming-Hung Chou, Chien-Fu Huang, Chih-Hwa Chang
-
Publication number: 20110038205Abstract: A method of reducing coupling effect in a flash memory is disclosed. A neighboring page is read, and a flag is set active if the neighboring page is an interfering page. Data are read from the neighboring page at least two more times using at least two distinct read voltages respectively. The threshold-voltage distributions associated with an original page and the neighboring page are transferred according to the read data and the flag.Type: ApplicationFiled: August 17, 2009Publication date: February 17, 2011Applicant: SKYMEDI CORPORATIONInventors: Ming-Hung Chou, Chien-Fu Huang, Han-Lung Huang, Shih-Keng Cho
-
Method and System for Adaptively Finding Reference Voltages for Reading Data from a MLC Flash Memory
Publication number: 20110038209Abstract: A method and system for adaptively finding reference voltages for reading data from a multi-level cell (MLC) flash memory is disclosed. According to one embodiment, a first total number of cells of the flash memory above a first threshold voltage in a shifted threshold voltage distribution is provided. Search to find a second threshold voltage such that a second total number of the cells above the second threshold voltage is approximate to the first total number. An initial reference voltage or voltages of the initial threshold voltage distribution are shifted with an amount approximate to a voltage difference between the second threshold voltage and the first threshold voltage, thereby resulting in a new reference voltage or voltages for reading the data from the MLC flash memory.Type: ApplicationFiled: October 29, 2010Publication date: February 17, 2011Applicant: SKYMEDI CORPORATIONInventors: Chien-Fu Huang, Ming-Hung Chou, Han-Lung Huang, Shih-Keng Cho -
Publication number: 20110041040Abstract: An error correction method for a memory device is disclosed. A base reading of a memory device is performed, and an error correction code (ECC) decoding is performed on the data read out of the memory device. The memory device is further read when the result of the ECC decoding is not strongly determined, wherein extra information acquired in the further reading of the memory device is used in the ECC decoding.Type: ApplicationFiled: August 15, 2009Publication date: February 17, 2011Applicant: SKYMEDI CORPORATIONInventors: Chin-Jung Su, Chuang Cheng
-
Publication number: 20100321997Abstract: A method and system for obtaining a reference block on which reference voltages may be found for a MLC flash memory are disclosed. A first block and a second block are provided in the flash memory. A memory controller alternatively controls one of the first and the second blocks to act as the reference block and the other one as a cycle block in a respective period, during which the reference block stays idle and the cycle block is subjected to program/erase cycles.Type: ApplicationFiled: June 17, 2009Publication date: December 23, 2010Applicant: SKYMEDI CORPORATIONInventors: Chien-Fu Huang, Ming-Hung Chou, Han-Lung Huang, Shih-Keng Cho
-
Method and system for adaptively finding reference voltages for reading data from a MLC flash memory
Patent number: 7848152Abstract: A method and system for adaptively finding reference voltages for reading data from a multi-level cell (MLC) flash memory is disclosed. According to one embodiment, information about an initial threshold voltage distribution is firstly provided. A first threshold voltage in the initial threshold voltage distribution is then associated with a second threshold voltage in a shifted threshold voltage distribution to be determined, such that the information corresponding to the first threshold voltage is approximate to the information corresponding to the second threshold voltage. Accordingly, initial reference voltage or voltages of the initial threshold voltage distribution are shifted with an amount approximate to difference between the first threshold voltage and the second threshold voltage, thereby resulting in new reference voltage or voltages for reading the data from the MLC flash memory.Type: GrantFiled: May 12, 2009Date of Patent: December 7, 2010Assignee: Skymedi CorporationInventors: Chien-Fu Huang, Ming-Hung Chou, Han-Lung Huang, Shih-Keng Cho -
Patent number: 7839684Abstract: The block groups of a multiple data channel flash memory storage device are detected for defective blocks. The block group containing any defective blocks is divided into subgroups, each of which contains only defective blocks or only good blocks. The subgroups containing only good blocks are selected to establish a new block group having the same amount of blocks as that of the original block groups.Type: GrantFiled: March 11, 2009Date of Patent: November 23, 2010Assignee: Skymedi CorporationInventors: Yu-Mao Kao, Yung-Li Ji, Chih-Nan Yen, Fu-Ja Shone
-
Patent number: 7752383Abstract: A method and related system for programming connections between a NAND flash memory controller and a plurality of NAND flash memory modules includes the NAND flash memory controller generating a switch signal and a swap signal according to a condition of one of the plurality of NAND flash memory modules, a remap module selectively coupling the plurality of NAND flash memory modules to the NAND flash memory controller according to the switch signal, and a swap module selectively coupling the plurality of NAND flash memory modules to the NAND flash memory controller according to the swap signal.Type: GrantFiled: May 25, 2007Date of Patent: July 6, 2010Assignee: Skymedi CorporationInventors: Chuang Cheng, Ching-Chang Chen, Satoshi Sugawa, Wen-Lin Chang, Kai-Hsun Lin, Fuja Shone
-
Patent number: 7745872Abstract: An operation method for a non-volatile memory structure formed between two doping regions serving as bit lines in a semiconductor substrate, the non-volatile memory structure comprising a first conductive line serving as a select gate and being formed above the semiconductor substrate, two conductive blocks serving as floating gates and being formed at the two sides of the first conductive line and insulated from the first conductive line with two first dielectric spacers therebetween, a first dielectric layer formed on the two second conductive blocks, a second conductive line serving as a word line and being formed on the first dielectric layer and substantially perpendicular to the two doping regions.Type: GrantFiled: September 7, 2006Date of Patent: June 29, 2010Assignee: Skymedi CorporationInventor: Fuja Shone
-
Patent number: 7721166Abstract: A method for managing defect blocks in a non-volatile memory essentially comprises the steps of detecting defect blocks in the non-volatile memory, storing addresses of the defect blocks in a table block of the non-volatile memory, and setting the non-volatile memory to be read-only if the quantity of defect blocks in the non-volatile memory exceeds a threshold and no free blocks remain in the non-volatile memory. In a preferred embodiment, the free pages in the defect block continue to be programmed before setting the non-volatile memory to be read-only.Type: GrantFiled: March 27, 2008Date of Patent: May 18, 2010Assignee: Skymedi CorporationInventors: Szu I Yeh, Hsin Jen Huang, Chien Cheng Lin, Chia Hao Lee, Chih Nan Yen, Fuja Shone
-
Publication number: 20100115213Abstract: A method of memory management for an apparatus having a non-volatile memory and a volatile memory includes the steps of forming a tree structure of entries in the volatile memory, in which the tree structure has a left branch and a right branch, and a difference of heights of the left branch and the right branch is equal to or less than one; and accessing an entry in the volatile memory through the tree structure.Type: ApplicationFiled: November 6, 2008Publication date: May 6, 2010Applicant: SKYMEDI CORPORATIONInventors: HSIN HSIEN WU, YUNG LI JI, CHIH NAN YEN, FUJA SHONE
-
Publication number: 20100088458Abstract: An operation method of a memory includes the steps of calculating an offset of sequential write commands and the beginning of pages of a block of a non-volatile memory; shifting the block by the offset; and directly writing data from a host to the pages except the first and last pages of the block by the sequential write commands. In an embodiment, the pages are logical pages providing optimal writing efficiency and are determined before calculating the offset. The step of shifting the block by the offset is to increase corresponding logical block addresses (LBA) in the pages by the offset.Type: ApplicationFiled: October 3, 2008Publication date: April 8, 2010Applicant: SKYMEDI CORPORATIONInventors: YU MAO KAO, YUNG LI JI, CHIH NAN YEN, FUJA SHONE
-
Publication number: 20100030933Abstract: A non-volatile memory storage device has a non-volatile memory, e.g., a flash memory, and a controller coupled to the non-volatile memory. The controller comprises a plurality of control circuits and an arbitration circuit. Each control circuit is configured to generate a request to update the chip-enable (CE) signals for non-volatile memory, and the arbitration circuit is configured to determine when the requests are acknowledged. The arbitration circuit generates acknowledge signals to the control circuits when all of the requests of the control circuits have been received by the arbitration circuit. The CE signals for non-volatile memory are updated when requests are acknowledged.Type: ApplicationFiled: July 31, 2008Publication date: February 4, 2010Applicant: SKYMEDI CORPORATIONInventors: Chih Wei Tsai, Chuang Cheng, Yung Li Ji, Shih Chieh Tai, Chih Cheng Tu, Fuja Shone
-
Publication number: 20090287893Abstract: A method is employed to manage a memory, e.g., a flash memory, including a plurality of paired pages. Each paired page includes a page and a respective risk zone. For each write command, at least one unwritten page is selected for writing new data. For each unwritten page whose risk zone includes at least one written page, each written page is copied or backed up, and the new data is written to the unwritten page. For each unwritten page whose risk zone lacks a written page, the new data is written to the unwritten page. In an embodiment, the written page is copied only if the unwritten page and the written page are operated by different write commands.Type: ApplicationFiled: May 16, 2008Publication date: November 19, 2009Applicant: SKYMEDI CORPORATIONInventors: CHUANG CHENG, SHIH CHIEH TAI, MING HUI LIN, CHIH NAN YEN, FUJA SHONE
-
Publication number: 20090259819Abstract: A method of wear leveling for a non-volatile memory is performed as follows. First, the non-volatile memory is divided into a plurality of zones including at least a first zone and a second zone. The first zone is written and/or erased in which one or more logical blocks have higher writing hit rate, and therefore the corresponding physical blocks in the first zone will be written more often. The next step is to find one or more free physical blocks in second zone. The physical blocks of the first zone are replaced by the physical blocks of the second zone if the number of write and/or erase to the first zone exceeds a threshold number. The replacement of physical blocks in the first zone by the physical blocks in the second zone may include the steps of copying data from the physical blocks in the first zone to the physical block in the second zone, and changing the pointer of logical blocks to point to the physical blocks in the second zone.Type: ApplicationFiled: April 9, 2008Publication date: October 15, 2009Applicant: SKYMEDI CORPORATIONInventors: YEN MING CHEN, SHIH CHIEH TAI, YUNG LI JI, CHIH NAN YEN, FUJA SHONE
-
Publication number: 20090254729Abstract: According to the method of wear leveling for a non-volatile memory of the present invention, the non-volatile memory is divided into a plurality of windows, and a mapping table is built in which the logical block addresses having frequently accessed data are allocated equally to the plurality of windows. The logical block addresses may store a File Allocation Table (FAT) or a directory table; therefore the windows they locate will be written or erased more frequently. In an embodiment, the logical block addresses having frequently accessed data are allocated on a one-to-one basis to the plurality of windows. For example, the plurality of windows may comprise Windows 0, 1, 2 and 3, the logical block addresses comprise logical block addresses 0, 1, 2 and 3, and logical block addresses 0, 1, 2 and 3 point to Windows 0, 1, 2 and 3, respectively.Type: ApplicationFiled: April 7, 2008Publication date: October 8, 2009Applicant: SKYMEDI CORPORATIONInventors: CHIEN CHENG LIN, HSIN JEN HUANG, SHIH CHIEH TAI, CHIH NAN YEN, FUJA SHONE
-
Publication number: 20090249140Abstract: A method for managing defect blocks in a non-volatile memory essentially comprises the steps of detecting defect blocks in the non-volatile memory, storing addresses of the defect blocks in a table block of the non-volatile memory, and setting the non-volatile memory to be read-only if the quantity of defect blocks in the non-volatile memory exceeds a threshold and no free blocks remain in the non-volatile memory. In a preferred embodiment, the free pages in the defect block continue to be programmed before setting the non-volatile memory to be read-only.Type: ApplicationFiled: March 27, 2008Publication date: October 1, 2009Applicant: SKYMEDI CORPORATIONInventors: Szu I. Yeh, Hsin Jen Huang, Chien Cheng Lin, Chia Hao Lee, Chih Nan Yen, Fuja Shone