1. A convolution accelerator, comprising: a transformation crossbar array programmed to calculate a Fourier Transformation of a first vector with a transformation matrix and a Fourier Transformation of a second vector with the transformation matrix; a circuit to multiply the Fourier Transformation of the first vector with the Fourier Transformation of the second vector to calculate a product vector; and an inverse transformation crossbar array programmed to calculate an Inverse Fourier Transformation of the product vector according to an inverse transformation matrix, wherein the transformation crossbar array comprises a plurality of row lines, a plurality of column lines, and a memory cell coupled between each unique combination of one row line and one column line, wherein the memory cells are programmed according to the transformation matrix; and the inverse transformation crossbar array comprises a plurality of row lines, a plurality of column lines, and a memory cell coupled between each unique combination of one row line and one column line, wherein the memory cells are programmed according to the inverse transformation matrix.