Abstract
This work presents the development of a custom convolutional neural network (CNN) architecture for image classification, efficiently implemented on a hardware platform such as the Raspberry Pi and ported to ASIC design using Cadence tools. The project adopts a two-stream approach: one dedicated to the Python-based modelling framework and the other focused on the ASIC design of the neural network. Key parameters such as including network weights and biases, are extracted from the Python model and converted to a fixed-point format for seamless integration into a unified hardware module with well-defined inputs and outputs. The CNN model was extensively validated on the Raspberry Pi hardware, while the hardware module was rigorously tested on Vivado using comprehensive test cases. The results were analyzed to ensure the correctness and robustness of the design. Additionally, the Python model’s interface timing is evaluated on different software (CPU, GPU) and hardware (Raspberry Pi) platforms to assess the Python model performance.