Tengo un sistema integrado que no es rentable para rodar una PCB personalizada, por lo que mi acceso a ciertos buses es limitado. Tuve la idea de conectar mi FPGA al puerto NAND no utilizado del sistema para comunicaciones de alta velocidad. Necesitaría escribir un controlador personalizado basado en el controlador MTD de Linux, pero permitiría el acceso de mmap al FPGA.
El reloj periférico flash NAND en este sistema integrado específico está configurado a 33MHz en el kernel de Linux y el periférico SPI es 33MHz con un reloj máximo de 30MHz. Si bien el SPI sería más lento debido a su salida en serie, ¿tiene alguna complejidad subyacente al bus NAND que lo haría más lento que el SPI?
Todas mis comunicaciones son comandos de 8 bits seguidos de datos de 16 bits.