6×6DPCNN: a programmable mixed analogue-digital chip for cellular neural networks