Compression / Decompression
Functionality:
- Compress input data before data into the ram
- Decompress ram data and putput to the LCD display
- Controlpath of the system (read, and store messae, etc)
Aware:
- compression engine to design base against text base data ( lower case)
- hand-shake signal cotnrol are rquired to avoid lost or misinterpret of data.
- different clock frequency use over keyboard, LCD display (ms scale), and
internal chip frequnecy.
Compress/Decompress engine:
- It is design to encode keyboard represenation (8 bit) with Preset Pattern
Matching technique.
- Compressed data are consisted of 5 bit as a group, with teh MSB '1' for the
compressed data, and '0' for the non-compressed data.
- 16 pattern (8 bit) is chosen to become preset patterna nd represent
bye 5 bit data with begin bit of '1'. The reset input (8bit) are separate
into two group of 5 bit data with first bit of '0' and store into the ram unit.
- Engine are constructed using state machine, and change of the state are contolled by
the handshake signal between the keyboard, and the ram unit.
Hand Shake Signal:
- The real "handshake" part are only ocnsist between compression engine and ram unit;
and the decompression engine.
Reson : It is because the keyboard and LCD are operating in ms frequency, and the
ram unit are operating in chip frequency.
Experiment:
- Actual compress ratio are tested using C++, the compression ratio at 70-90% depend on
the input content, with average approximate at 73%
|