Efficient FIR filtering with Bit Layer Multiply Accumulator
About
Bit Layer Multiplier Accumulator (BLMAC) is an efficient method to perform dot products without multiplications that exploits the bit level sparsity of the weights. A total of 1,980,000 low, high, band pass and band stop type I FIR filters were generated by systematically sweeping through the cut off frequencies and by varying the number of taps from 55 to 255. After their coefficients were quantized to 16 bits, applying the filter using a BLMAC required, on average, from ~123.3 to ~513.6 additions, depending on the number of taps. A BLMAC dot product machine, specialised for 127 taps FIR filters, was designed for AMD FPGAs. The design footprint is ~110 LUTs, including coefficient and sample storage and is able to apply the filter in ~232 clock cycles on average. This implies a filtering rate of 1.4-3.4 Msamples/s, depending on the FPGA family.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| 3D Anomaly Detection | Real3D-AD | Average O-AUROC0.749 | 33 | |
| 3D Anomaly Detection | Eyecandies | O-AUROC69.3 | 10 | |
| 3D Anomaly Detection | ShapeNet Anomaly | O-AUROC78.7 | 10 | |
| 3D Anomaly Detection | MVTec3D-AD | O-AUROC81.3 | 6 | |
| 3D Anomaly Detection | Eyecandies (test) | Object Recall78.2 | 5 | |
| 3D Anomaly Detection | MVTec3D-AD (test) | Object Recall (O-R)85.7 | 5 |