Monthly Archives: February 2022

Command Processor

With the display engine, frame buffer, and line drawing algorithm implemented, next a command processor was designed to parse instructions and send data to their proper places. This processor takes a 71-bit input data stream and outputs the data to other modules depending on the opcode provided.

Bresenham’s Line Drawing Algorithm

The next objective of this project was to implement a module that functioned as a Bresenham’s Line Drawing State Machine. Given any two input coordinates, the module would output discrete coordinates for each point along the line to be inserted into the frame buffer, with high efficiency. Due to our single clock domain system, we reached a near-perfect efficiency of 1 pixel write per clock cycle, wasting only a single cycle at the beginning of each line drawn.