The ZipChip Decompressor handles memory transferences of program blocks from off-chip compressed memory to a fast on-chip memory. It is designed for systems that require large amounts of external non-volatile program memory and have processor and a volatile program memory on chip. The ZipChip Decompressor fetches a block of encrypted/compressed program from the external memory, dechyphers and decompresses it using a Zip-based algorithm, and stores the decompressed block into the on-chip memory. ZipChip works like a DMA Controller and is fully compatible with the Intel 8237A DMA Controller. The resulting compressed program in external memory is 30%-40% the size of the original program.
- Compression is performed by the user using WinZip
- Substantial reduction of the program memory (30%-40% of the original size)
- Enables program decryption during decompression
- Delivered as a VHDL soft core
- Fully compatible with the Intel 8237 DMA Controller
Signal name |
Mode |
Function |
RESET |
Input |
Reset input from the system. |
CLK |
Input |
Clock input. |
READY |
Input |
Enables extended memory read/write cycles. |
CS |
Input |
Chip select. Active LOW. Enables read or write operations of the control registers. |
AB[15:0] |
I/O |
Micropreocessor address bus. Enables access to the internal control registers and provides the address for the memory transfer operations. |
MEMRD |
Output |
Active LOW three-state output used to control data read operations during decompression. |
MEMWR |
Output |
Active LOW three-state output used to control data write operations during decompression. |
DB[15:0] |
I/O |
Microprocessor data bus. Allows the data transfer from external compressed memory to the internal program memory. |
HQR |
Output |
Hold Request to the CPU. Used to request control of the bus. |
HLDA |
Input |
Hold Acknowledged from the CPU indicates that it has relinquished control of the system bus. |
- HDL RTL description
- Testbench
- Synthesis script
- Data-sheet and programming instructions