Algunas placas de desarrollo tienen múltiples chips DDR4. ¿Implica que tales tableros tienen múltiples controladores DDR y se puede acceder a la memoria en paralelo?
Por ejemplo, este foro: enlace tiene 4 chips DDR4.
Gracias
Es poco probable.
La especificación para eso muestra el fragmento DDR4 de 64 bits de ancho. Cada uno de esos cuatro chips tendrá un ancho de 16 bits, y los cuatro conectados en paralelo ofrecen 64 bits.
Con toda probabilidad (puede consultar con los esquemas), cada uno de los cuatro chips DDR4 compartirá las mismas líneas de dirección física, evitando así su uso individual.
Desde las especificaciones en la página a la que te vinculas:
Memoria
Memoria de componente DDR4 de 2GB (cuatro [256 Mb x 16] dispositivos) a 1200MHz / 2400Mbpsps
Note los "cuatro [256 Mb x 16]" - cuatro dispositivos de 16 bits. Luego, desde el diagrama se muestra 64bit DDR4. Por lo tanto, deben conectarse en paralelo para obtener el ancho completo de los datos.
Sí y no. Los cuatro chips (256Mb 16 bit) están conectados de manera que se parecen a un solo chip de memoria de 64 bits de ancho y la placa usa un solo controlador de memoria para los cuatro chips. Solo puede acceder a una dirección a la vez, pero puede transferir hasta 64 bits de datos por acceso.
Puede encontrar esta información en guía del usuario , capítulo "Memoria de componentes DDR4". En la lista de pines para los chips de memoria, encontrarás 64 pines de datos y solo un conjunto de pines de dirección que están conectados a los cuatro chips de memoria.
En términos generales, el número de chips no implica el número de controladores.
Como usted dice, los chips a bordo son 256Mx16, lo que significa que tienen un bus de dirección de 24 bits, 16 bits de datos en entrada, 16 bits de datos en salida. Además, por supuesto, todas las señales necesarias para que funcione un chip DRAM.
Ahora, si desea usarlos en paralelo, es decir, como un solo banco de 256x (16x4), necesitará que las líneas de datos lleguen por separado al FPGA, y luego en el FPGA usted crea una instancia del controlador apropiado.
Si en paralelo significa que desea poder acceder a los cuatro bancos de forma independiente, entonces también se debe separar el bus de direcciones. Esto agrega hasta 24x4 (dirección) + 16x4 (entrada de datos) + 16x4 (salida de datos) = 224 pines. Parece bastante, sospecho que los diseñadores de la junta no permitieron un uso tan grande de los pines FPGA.
La respuesta a la pregunta es entonces: si las señales se enrutan en consecuencia, puede instanciar hasta cuatro controladores, si lo desea y tiene espacio para ello, y usar los chips como desee.