Abstract
A waveform is a set of signals that helps drive and control different parts of digital designs. To create a waveform a waveform generator is needed. This generator can be implemented in many different ways depending on the needs of the digital design. However it is common that the waveform has little room for change once the design is made. In this work we aim to add customizability to the waveform generator. In this way future waveform generators do not need to be changed when designing new devices. This reasearch is therefore focused on small compact solutions that can be customized. In previous work some theoretical solutions were proposed, and will now be implemented.
The memory can be reprogrammed to achieve the customizability, but to save area there were proposed 5 solutions how to reduce the memory size needed. The first solution is to save all the bits of the waveform in the memory, the second solution is to save the position where each signal toggles, the third solution is to save which bit is changed, the fourth solution is to save the toggle position of which bit that changes and the last is a solution that saves waveform blocks.
The design that can sustain the fastest clock frequency is the solution that saves all the bits of the waveform in memory since no extra assembly is needed. The slowest solution is the change position solution. The design that uses the least amount of space in memory is the Waveform block solution, while the all bit solution uses the most space in memory. The solution with the least overall area is the waveform block solution while the solution with the most overall area is the toggle bit solution