GSoC Final Report

Completed work : Quantizer module. Run Length EncoderĀ  Module. Huffman Module. Byte-Stuffer Module. Back-end Main module. Back-end module compatible with front-end. Input Buffer that can store three blocks form front-end. Completed software prototype for back-end module.   To-Do : Connecting front-end and back-end. Commit new back-end with new interfaces (front-end compatible). The back-end module which […]

Backend Top Module

The Back-end Top module connects quantizer, RLE, Huffman and Byte-Stuffer Modules. The back-end have a small FSM sitting inside which makes all the modules run parallely. i.e when Byte-Stuffer sends ready signal to Huffman, Huffman sends ready to RLE, RLE send ready signal to Quantizer. The Back-end have a input buffer attached which will take […]


The Byte Stuffer module checks for 0xFF bytes and appends 0x00 after it. The Byte Stuffer module is implemented and already merged in the main repo.

Huffman Module

I was stuck a bit while implementing the Huffman Module initially. I was thinking about implementing huffman tables on fly but soon realised it’s a very difficult task. Finally I changed my plan to build the tables using the JPEG Standards. I added all the huffman encoded values in a csv file and then built […]

Quantizer module

The Quantizer module: This module uses a divider placed in its core. The Quantizer ROM is build using standard JPEG values. Right Now, the quantizer rom has fixed values. In future we plan to implement some process so that Quantizer ROM that can be programmed by the user. The Quantizer module is added to the […]

GSoC Mid Term summary

This post concerns with the brief summary of my GSoC experience till now. I made a Run Length Encoder till my mid-term evaluation and Quantizer module is still under process. I have made a divider for quantizer module, I have to make a top level module to get finished with Quantizer module. I made a […]

GSoC Third week

I have been suffering from viral fever. So, the whole week I was not able to work properly. Through out the week I made the first version of Run Length Encoder. Things worth discussing : To convert a number to unsigned in Python(MyHDL). We have to do is: “` a = a and 0xFF “` […]