Hay varias formas de responder esto. No puedo responder cómo hacerlo de una manera, es decir, tener dos dispositivos en paralelo que accedan al ram. Esa es una cuestión de varias cosas en sí mismas. Existe la E.E. de esto, DDR3 usa pares diferenciales y opera a altas velocidades, de modo que la capacitancia, la interferencia y la impedancia deben abordarse agregando otra rama a cualquier par diferencial. Muy bien podría ser que duplicar la longitud de las trazas al tener 2 dispositivos puede aumentar la capacitancia más allá del límite establecido por la especificación DDR3, un requisito para su alta velocidad.
Luego está la cuestión de si los controladores de memoria fija pueden trabajar con él. Es posible que no tenga mucho espacio para la personalización y, como dijo un mentor, es posible que tenga que correr a tasas excesivamente bajas para permitirlo. Básicamente, la velocidad del reloj para el bus DDR3 tendría que ser el doble de la velocidad de acceso de los dos dispositivos para que puedan intercalar su acceso sin interferir entre sí. Además, la velocidad a la que realmente tarda en realizarse una transacción es menor, por lo que operan en un "búfer" para mantener ese rendimiento. La latencia también puede introducir condiciones de carrera que el software debería tener en cuenta.
La otra solución que se me ocurre es tener un dispositivo pci con FPGA, luego la CPU tendrá algo de RAM como DMA para el FPGA. El FPGA simplemente necesita acceder al ram a través del bus PCI que es común.