Flash memory is used for storage in mobile multimedia and embedded systems such as mobile phones, digital cameras, and MP3
players because of its small size, light weight, nonvolatile operation, vibration resistance, high capacity, and low power
consumption. Data compression is one effective method for increasing capacity and reducing data transfer, however real-time
performance is necessary for mobile multimedia device applications. We propose a mechanism that uses contiguous packing and
a read/write ping-pong buffer along with the X-match and run-length compression/decompression algorithm to create a real-time
compression layer. Compared to the internal packing scheme and best-fit method of Yim et al., our mechanism increases the
compression ratio, improves the write response time by 60%, and stabilizes the read response time to make it suitable for
real-time applications.
Keywords embedded systems - flash memory - real-time compression layer - mobile multimedia device