This iCE40 UltraPlus reference design uses artificial intelligence (AI) to implement a human detection algorithm. AI is when technology is used for traditional tasks typically performed by humans because machines can more efficiently and quickly process and compute enormous amounts of data. FPGAs, by design, have the ability to process data in parallel making them more efficient at such tasks compared to a microprocessor.
A neural network model is used in this application. Training is done on a powerful GPU by passing 100,000 human faces through the untrained model to calculate weights and activation and create a trained model. Weights and activation are then transported onto the iCE40 UltraPlus device where an object can be passed through the trained model and the model will infer if it’s a human face or not.
Bringing AI to the network edge is challenging but it also offers tremendous opportunity. Building AI into iCE40 UltraPlus FPGA instead of cloud-based resources can dramatically cut power consumption while accelerating response time. By building AI into the device, designers gain always-on intelligence even when the network is turned off to save power. Security is also improved by keeping the processing local.