Abstract:
A wear leveling apparatus uniformly distributes wear over a nonvolatile memory containing a plurality of memory blocks. The wear leveling apparatus includes a memory unit for storing a record of cold block candidates in the nonvolatile memory and a control unit configured to update the memory unit and release the cold block candidates under a threshold condition. The control unit selects a new memory block to replace one cold block candidate in the memory unit when the cold block candidate is matched with a written address in a write command for the nonvolatile memory. The cold block candidates remained in the memory unit are identified as cold blocks when the nonvolatile memory has been written more than a predetermined write count threshold. The memory blocks with infrequent erasure can be identified and released to uniformly distribute wear over the nonvolatile memory.
Abstract:
An apparatus for controlling a flash memory and the method thereof are disclosed. The flash memory includes a plurality of blocks which are divided into a plurality of storage blocks and a plurality of spare blocks. The apparatus includes a bad block mapping table and a controller. When a data is to be accessed based on an accessed block address, the controller determines whether the block corresponding to the accessed block address is a damaged block. When the controller determines that the block corresponding to the accessed block address is a damaged block, the controller searches the bad block mapping table based on the accessed block address to find the address of the corresponding spare block for replacing the accessed block address.
Abstract:
A programmable control device includes an input unit, a memory unit, an execution unit, a monitor unit and an output unit. The input unit has at least one input terminal for receiving an input signal. The memory unit defines plural feature tables for corresponding functional units, the feature table defining a state of the functional unit and an event to be executed according to an input signal corresponding to the state. The execution unit executes an event corresponding to the functional unit triggered by an input signal, and thus produces a driving signal and/or an output signal. The monitor unit monitors the execution unit to trigger a corresponding functional unit and to use the driving signal as an input signal for the functional unit to execute a corresponding event. The output unit has at least one terminal to output the output signal.