Patents Assigned to Silicon Motion, Inc. (TW)
-
Patent number: 12353327Abstract: A method for performing garbage collection (GC) management of a memory device with aid of block classification and associated apparatus are provided. The method may include: utilizing a memory controller to divide at least one portion of blocks among a plurality of blocks into multiple first blocks belonging to at least one first type in a first area and multiple second blocks belonging to at least one second type in a second area; utilizing the memory controller to receive a first command from a host device through a transmission interface circuit within the memory controller; and during writing data in response to the first command, performing a foreground GC procedure to control the memory device to perform GC before completing at least one writing operation corresponding to the first command, for controlling priority of releasing storage space of the second area to be higher than that of the first area.Type: GrantFiled: May 2, 2024Date of Patent: July 8, 2025Assignee: Silicon Motion, Inc.Inventor: Cheng-Yu Tsai
-
Patent number: 12353758Abstract: A method used in a flash memory controller includes: using an error correction code (ECC) circuit to perform an ECC operation upon data of a block of a flash memory chip/die of a flash memory device to generate an ECC result; when the ECC result indicates a failure, storing an access task corresponding to the block into a specific buffer; and, controlling a voltage generator of the flash memory device through a specific communication interface to control at least one address decoder of the flash memory device to access the block of the flash memory chip/die again according to at least one threshold voltage level of the voltage generator after the access task has been temporarily stored in the specific buffer for a specific default time.Type: GrantFiled: April 25, 2024Date of Patent: July 8, 2025Assignee: Silicon Motion, Inc.Inventor: Tzu-Yi Yang
-
Publication number: 20250217231Abstract: A decoding method includes: using a syndrome calculation check circuit to calculate a syndrome value of variable node Vi of a parity check matrix based on multiple input bits; rotating the syndrome value of variable node Vi into the direction of variable node Vi+1 to generate an estimated syndrome value of variable node Vi+1; rotating the syndrome value of variable node Vi?1 into the direction of variable node Vi?? to generate a rotated syndrome information; performing a weighted-sum calculation based on multiple rotated syndrome information to generate a flipping function value; and comparing the flipping function value with a flipping threshold to generate a flipping result; the syndrome calculation check circuit determines whether to modify/flip a specific bit according to the flipping result.Type: ApplicationFiled: November 11, 2024Publication date: July 3, 2025Applicant: Silicon Motion, Inc.Inventor: Shiuan-Hao Kuo
-
Patent number: 12348630Abstract: The invention introduces an apparatus for detecting errors during data encryption. The apparatus includes an encoding circuitry and an error detection circuitry. The encoding circuitry is arranged operably to realize an encryption algorithm including multiple rounds, in which of each round encodes plaintext or an intermediate encryption result with a round key. The error detection circuitry is arranged operably to: calculate redundant data corresponding to the intermediate encryption result; and output an error signal to a processing unit when finding that the intermediate encryption result does not match the redundant data at a check point during an encryption process.Type: GrantFiled: December 7, 2022Date of Patent: July 1, 2025Assignee: Silicon Motion, Inc.Inventors: Wun-Jhe Wu, Po-Hung Chen, Chiao-Wen Cheng, Jiun-Hung Yu, Chih-Wei Liu
-
Publication number: 20250211251Abstract: A flash memory storage management method includes: providing a flash memory module including single-level-cell (SLC) blocks and at least one multiple-level-cell block such as MLC block, TLC block, or QLC block; classifying data to be programmed into groups of data; respectively executing SLC programing and RAID-like error code encoding to generate corresponding parity check codes, to program the groups of data and corresponding parity check codes to the SLC blocks; when completing program of the SLC blocks, performing an internal copy to program the at least one multiple-level-cell block by sequentially reading and writing the groups of data and corresponding parity check codes from the SLC blocks to the multiple-level-cell block according to a storage order of the SLC blocks.Type: ApplicationFiled: March 17, 2025Publication date: June 26, 2025Applicant: Silicon Motion, Inc.Inventors: Tsung-Chieh Yang, Hong-Jung Hsu
-
Publication number: 20250200202Abstract: The invention introduces a method for programming and recovering protected data. Protected data instructed by a data write command is received from a host side in multiple batches. After an encoding algorithm is used to generate an intermediate calculation result according to a first portion of the protected data, and an authentication key, multiple authentication calculation operations for remaining portions of the protected data, and multiple data programming operations for all portions of the protected data are arranged to enable the authentication calculation operations to be performed in parallel to the data programming operations. Each data programming operation is performed to program a corresponding portion of the protected data and a metadata associated with the corresponding portion of the protected data into a current block of a flash module. The metadata comprises information about whether the protected data has passed an authentication.Type: ApplicationFiled: January 19, 2024Publication date: June 19, 2025Applicant: Silicon Motion, Inc.Inventors: Ching-Hung CHEN, Chiu-Han CHANG
-
Patent number: 12334168Abstract: A method for performing a test upon a flash memory module includes: performing data writing upon a plurality of first blocks of a first group in the flash memory module; reading the plurality of first blocks of the first group to determine whether there is any abnormal block in the plurality of first blocks and generating a first test result; after the plurality of first blocks are read, performing data writing upon a plurality of second blocks of a second group in the flash memory module; and reading the plurality of second blocks of the second group to determine whether there is any abnormal block in the plurality of second blocks and generating a second test result.Type: GrantFiled: August 22, 2023Date of Patent: June 17, 2025Assignee: Silicon Motion, Inc.Inventors: Chiu-Han Chang, Yu-Ting Chen
-
Patent number: 12333155Abstract: A flash memory controller and a data reading method are provided. The flash memory controller includes a control logic circuit and a processor. The control logic circuit is coupled to a first chip-enable-signal controlled area of a flash memory through a channel to transmit data and commands. The processor controls the control logic circuit to transmit a first command and a second command to the first chip-enable-signal controlled area through the channel. The first command is configured to instruct the first chip-enable-signal controlled area to read stored data and read operating temperature information. In response to the transmission of the second command, the processor controls the control logic circuit to receive at least one of the stored data and the operating temperature information from the first chip-enable-signal controlled area.Type: GrantFiled: February 5, 2024Date of Patent: June 17, 2025Assignee: Silicon Motion Inc.Inventors: Hsiao-chang Yen, Tsu-han Lu
-
Patent number: 12326808Abstract: The present invention provides a control method of a flash memory controller, which includes the steps of: setting a waiting time in an interrupt coalescing mechanism, and setting a timer, wherein a timeout value of the timer is equal to the waiting time; receiving multiple commands from a submission queue in a host device, generating multiple command responses after processing the multiple commands, and writing the multiple command responses to a completion queue in the host device; receiving a submission queue tail and a completion queue head from the host device; and when the timer reaches the timeout value, subtracting the completion queue head from the submission queue tail to obtain a queue depth of a command queue of the host device.Type: GrantFiled: April 1, 2024Date of Patent: June 10, 2025Assignee: Silicon Motion, Inc.Inventors: Kuo-Han Yuan, Cheng-Yu Tsai
-
Patent number: 12321297Abstract: A bridge device for bridging a host device and a data storage device includes a first controller and a second controller. The first controller includes a first transmission interface. The second controller is coupled to the first controller and includes a second transmission interface. The second transmission interface is coupled to the first transmission interface through a bus. The first transmission interface operates in a slave mode and the second transmission interface operates in a master mode. The first transmission interface and the second transmission interface generate multiple transfer data chunks in compliance with a common bridge transfer format to perform transfer operations in dual directions for respectively transferring a command and data between a host device and a data storage device.Type: GrantFiled: July 26, 2023Date of Patent: June 3, 2025Assignee: Silicon Motion, Inc.Inventors: Chen-Hao Chen, Shih-Hsiang Shen, Hui-Lin Liu
-
Publication number: 20250156093Abstract: A flash memory controller for controlling a flash memory module includes a communication interface for receiving a first data and a second data; and a processing circuit for dynamically controlling a data writing mode of the flash memory module according to an amount of stored data in the flash memory module. If the amount of stored data in the flash memory module is less than a first threshold when the communication interface receives the first data, the processing circuit controls the flash memory module so that the first data is written into the first data block under an one-bit-per-cell mode. If the amount of stored data in the flash memory module is greater than the first threshold when the communication interface receives the second data, the processing circuit controls the flash memory module so that the second data is written into the second data block under a two-bit-per-cell mode.Type: ApplicationFiled: January 16, 2025Publication date: May 15, 2025Applicant: Silicon Motion, Inc.Inventors: Tsung-Chieh Yang, Chun-Chieh Kuo, Ching-Hui Lin, Yang-Chih Shen
-
Patent number: 12292826Abstract: A method for managing a memory apparatus including a non-volatile (NV) memory element having a plurality of physical blocks includes: obtaining a first host address and first data from a first access command; obtaining a second host address and second data from a second access command; linking the first host address to a first page of the physical block and the second host address to a second page of the physical block; storing the first data and second data into the physical block; building a valid page position table and storing the valid page position table in the volatile memory; and building a global page address linking table and storing the global page address linking table in the volatile memory. The valid page position table and the global page address linking table are loaded from the volatile memory and stored to the NV memory element at predetermined time periods.Type: GrantFiled: May 14, 2024Date of Patent: May 6, 2025Assignee: Silicon Motion, Inc.Inventors: Tsai-Cheng Lin, Chun-Kun Lee
-
Patent number: 12287973Abstract: An interface circuit includes multiple signal processing devices and a monitor and calibration module. A process monitor monitors a current or a voltage of a test element to generate a process detection result. A temperature monitor monitors an environment temperature to generate a temperature monitored result. A calibration circuit performs calibration operation on a signal processing device according to a preferred reference value subset to adjust a characteristic value of the signal processing device. A compensation control mechanism operation logic selects the preferred reference value subset from multiple reference value subsets according to the process detection result and the temperature monitored result and generates a calibration control signal to control the calibration operation of the calibration circuit.Type: GrantFiled: July 24, 2023Date of Patent: April 29, 2025Assignee: Silicon Motion, Inc.Inventor: Fu-Jen Shih
-
Patent number: 12287988Abstract: A technique for accurate communication between a non-volatile memory and its controller. The controller accesses a storage area of the non-volatile memory through data lines, wherein the controller transmits a command through the data lines to access the storage area of the non-volatile memory. The command is further returned from the non-volatile memory to the controller through the data lines for comparison, to determine whether the command is correctly received by the non-volatile memory.Type: GrantFiled: August 3, 2023Date of Patent: April 29, 2025Assignee: SILICON MOTION, INC.Inventors: Hsu-Ping Ou, Chien-Hung Lee
-
Patent number: 12287975Abstract: A control method of a memory device includes: controlling a flash memory controller to transmit a command to a flash memory module; determining whether the flash memory controller is in an idle state; in response to the flash memory controller being in the idle state, determining whether an idle time of the idle state exceeds a threshold value, wherein the threshold value is less than a time required for the flash memory module to complete executing a write command or an erase command; and in response to the idle time exceeding the threshold value, controlling the flash memory controller to enter a power saving mode to turn off a part of components in the flash memory controller.Type: GrantFiled: July 10, 2023Date of Patent: April 29, 2025Assignee: Silicon Motion, Inc.Inventor: Wen-Sheng Lin
-
Patent number: 12282665Abstract: A memory operation method, comprising: when a first super block of a memory device is a open block (or in programming state), obtaining a first read count of one of a plurality of first memory blocks in the first super block, wherein the first read count is a number of times that data of one of the first memory blocks is read out; determining whether the first read count is larger than a first threshold; and when the first read count is larger than the first threshold, moving a part of the data in the first super block to a safe area in the memory device, wherein the part of the data comprises data in the first memory block.Type: GrantFiled: June 6, 2023Date of Patent: April 22, 2025Assignee: SILICON MOTION INC.Inventors: Po-Sheng Chou, Hsiang-Yu Huang, Yan-Wen Wang
-
Patent number: 12283971Abstract: A flash memory storage management method includes: providing a flash memory module including single-level-cell (SLC) blocks and at least one multiple-level-cell block such as MLC block, TLC block, or QLC block; classifying data to be programmed into groups of data; respectively executing SLC programing and RAID-like error code encoding to generate corresponding parity check codes, to program the groups of data and corresponding parity check codes to the SLC blocks; when completing program of the SLC blocks, performing an internal copy to program the at least one multiple-level-cell block by sequentially reading and writing the groups of data and corresponding parity check codes from the SLC blocks to the multiple-level-cell block according to a storage order of the SLC blocks.Type: GrantFiled: January 15, 2024Date of Patent: April 22, 2025Assignee: Silicon Motion, Inc.Inventors: Tsung-Chieh Yang, Hong-Jung Hsu
-
Patent number: 12277330Abstract: A data storage device includes a memory device and a memory controller. The memory device includes multiple memory blocks which include one or more spare memory blocks not written with data and one or more predetermined memory blocks that are configured as a buffer for receiving data from a host device. The memory controller obtains a total number of remaining erasable count of the memory blocks and determines a setting value of a number of said one or more predetermined memory blocks according to a number of currently remaining spare memory block(s), a number of the predetermined memory block(s) that has/have been written with data among said one or more predetermined memory blocks, a predetermined threshold and the total number of remaining erasable count of the memory blocks, and configures the number of the predetermined memory block(s) as the buffer according to the setting value.Type: GrantFiled: July 7, 2023Date of Patent: April 15, 2025Assignee: Silicon Motion, Inc.Inventor: Po-Lin Wu
-
Patent number: 12277288Abstract: An interface circuit includes multiple signal processing devices and a monitor and calibration module including multiple monitoring circuits, multiple calibration circuits and a compensation control mechanism operation logic. The monitoring circuits monitor a reception signal, a transmission signal, a power supplying voltage and a ground voltage to correspondingly generate monitored results. The calibration circuits perform a calibration operation on at least one signal processing device to adjust a characteristic value of the signal processing device.Type: GrantFiled: June 26, 2023Date of Patent: April 15, 2025Assignee: Silicon Motion, Inc.Inventor: Fu-Jen Shih
-
Patent number: 12277966Abstract: A method for performing memory access of a Flash cell of a Flash memory includes: performing a series of sensing operations respectively corresponding to a plurality of sensing voltages, wherein a sensing voltage of a specific sensing operation of the series of sensing operations has a sensing voltage determined according to a result of an initial sensing operation of the series of sensing operations; determining a threshold voltage of the Flash cell according to at least a digital value generated by the series of sensing operations; and using the determined threshold voltage to perform soft decoding of the Flash cell.Type: GrantFiled: November 28, 2023Date of Patent: April 15, 2025Assignee: Silicon Motion, Inc.Inventors: Tsung-Chieh Yang, Hsiao-Te Chang, Wen-Long Wang