Si imagina una detección de movimiento básica en la que tiene dos cuadros almacenados en la memoria: un cuadro anterior de 640x480 y el cuadro actual de 640x480, ¿qué tipo de memoria (SRAM, DRAM, SDRAM, DDR SDRAM, etc.) permitiría la lectura/escritura más paralela ? operaciones por ciclo de reloj ? Por ejemplo, la solución perfecta permitiría la lectura simultánea de dos fotogramas (307.200 x 2 píxeles) en un ciclo de reloj. ¿Cuál es la mejor memoria para esto, la SRAM integrada en la FPGA o un chip externo como DDR SDRAM? (En el panorama general, estaría buscando una placa de desarrollo FPGA que tenga el menor costo y tamaño con la mayor capacidad de lectura/escritura en paralelo).
La RAM de bloque de puerto dual y la RAM LUT son prácticamente imposibles de superar, ya que están en la matriz FPGA y acceder a ella no requiere el uso de pines de E/S. Si no tiene suficiente capacidad en el bloque de RAM, entonces puede arrojar memoria externa al problema. QDR SRAM tiene dos puertos y, por lo tanto, tiene el doble de ancho de banda que SDRAM, esto puede ser útil para algunas aplicaciones, aunque es muy costoso. DDR3 SDRAM es probablemente la opción más económica, pero incluso esto es relativamente lento en comparación con lo que puede hacer con LUT RAM y Block RAM.
Creo que estás haciendo tu diseño de la manera incorrecta. Además, si necesita realizar un procesamiento real en tantas entradas, la lógica por sí sola consumiría una cantidad de área absolutamente gigantesca y es posible que no encaje en los FPGA más grandes disponibles en la actualidad. En lo que sobresalen los FPGA son en las operaciones de procesamiento canalizado de muy alta velocidad. Lo que debe hacer es averiguar cuántos píxeles por segundo necesita procesar (640x480xfps) y luego averiguar cómo implementar su algoritmo de procesamiento de imágenes para obtener ese nivel de rendimiento. En general, la idea es leer una pequeña cantidad de píxeles por ciclo de reloj y luego procesarlos de manera ordenada.
tom carpintero
tom carpintero
Paebbels
Jonathan Drolet
pjc50