Exponga la SDRAM como un dispositivo de almacenamiento masivo USB 3

4

Desafío: Cree un dispositivo que pueda albergar uno o más SDRAM (por ejemplo, DDR2, DDR3) y expóngalos como un dispositivo de almacenamiento masivo USB 3 (esclavo).

Objetivo: Permita que un host USB 3 monte el dispositivo y permita tasas de transferencia cercanas a 5 Gbit.

Intento 1 : Use una PC para construir el dispositivo - falla - la PC no viene con el hardware necesario para usar USB en modo esclavo.

Intento 2 : Utilice un microcontrolador, como PIC o ARM. SAM9 es compatible con DDR2, pero carece de soporte para USB 3. Tal vez haya otros microcontroladores que sean adecuados.

¿Qué otras configuraciones puedes pensar que podrían ayudar a resolver el desafío?

Nota: Ignore el hecho de que SDRAM es volátil y algo inadecuado para el almacenamiento. Además, soy consciente de la existencia de i-RAM o HyperDrive, que básicamente hace lo mismo pero conectado a través de PCI.

    
pregunta Mika

1 respuesta

9

Ok, puedo ignorar la cordura de este proyecto. Es una locura, por cierto, con poco o ningún valor práctico más allá de "hacerlo", pero eso nunca me detuvo antes y no debería detenerte.

En mi opinión, necesitas varias cosas: una CPU, una FPGA, algo de SDRAM y una interfaz USB. Cypress hace el EX USB FX3 que hace 2 de las 4 cosas. Tiene una CPU ARM 9 y una interfaz USB 3.0. Lo que no tiene es una interfaz SDRAM, por lo que quiere un FPGA. El FPGA realiza tanto la interfaz SDRAM como la interfaz de datos de alta velocidad a la lógica USB3.

Lo que absolutamente NO desea es que la CPU realice la mayor parte de la transferencia de datos. Un ARM 9 de 100 MHz no podrá manejar ese tipo de rendimiento de datos. De hecho, casi cualquier CPU de 2 GHz tampoco será capaz de manejar esa cantidad de datos. El ARM9 está justo allí para la limpieza, mientras que el FPGA hace el trabajo pesado.

El FPGA ideal para este proyecto es un Xilinx Spartan-6. Tiene un costo relativamente bajo, es fácil de programar y tiene núcleos incorporados para la interfaz SDRAM DDR2.

    
respondido por el user3624

Lea otras preguntas en las etiquetas