This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Creating a usb storage devuce based on LP2148

Hi All.

I'm going to create some kind of usb storage device, and I'm planning to use LPC2148 microcontroller in it. I need some advices. Is this controller suitable for such task? Can external flash memory be mapped to the controllers adress space (to work with it like with internal controllers memory in the programm)? Which protocol is better to choose for this task (which one will be faster) to connect external memory chip and controller: I2C or something else?

Thanks for your answers!

Parents
  • "what protocol of connection between controller and memory can give me required speed"

    Q1: How fast is the required speed, in MByte/sec?

    Give us the figure. An approximate number will do.
    Your description is literary. We are engineers who are far from literature :-) Unfortunately, we can tell nothing until we see the figure.

    USB connection
    "Data will be handled using special application running on PC.... Amount of data will be 1 or 2 GBs."

    Seems a good application for High-Speed (HS, 480Mbps) bulk transfer.

    LPC2148 supports just Full-Speed (FS, 12Mbps). On FS, the transfer speed is about 1.2 Mbytes/sec at most. Then, the transfer of 1-2 GBytes data results 1000-2000 sec. On HS, practical transfer speed is 10-20 MBytes/sec. The 1-2 GBytes are transferred in 100-200 sec.

    HS ARM MCU: NXP LPC288x, Atmel AT91SAM9R64
    HS '51 MCU: Cypress EZ-USB FX2LP (CY7C68013A)
    HS Peripheral: NXP ISP1582, Cypress EZ-USB SX2 (CY7C68001)

    I recommend you to combine EZ-USB SX2 with your favorite MCU. It's a simple solution for USB beginner.

    On the other hand, I don't recommend LPC288x to you; read this Olimex fight with the chip.
    forum.sparkfun.com/viewtopic.php

    The problem for the device of generic bulk transfer is the device driver selection on the PC. It depends on the OS on the PC.

    Q2: What is the target OS on the PC? Windows?
    Then what is the Windows version(s) to be supported?

    Tsuneo

Reply
  • "what protocol of connection between controller and memory can give me required speed"

    Q1: How fast is the required speed, in MByte/sec?

    Give us the figure. An approximate number will do.
    Your description is literary. We are engineers who are far from literature :-) Unfortunately, we can tell nothing until we see the figure.

    USB connection
    "Data will be handled using special application running on PC.... Amount of data will be 1 or 2 GBs."

    Seems a good application for High-Speed (HS, 480Mbps) bulk transfer.

    LPC2148 supports just Full-Speed (FS, 12Mbps). On FS, the transfer speed is about 1.2 Mbytes/sec at most. Then, the transfer of 1-2 GBytes data results 1000-2000 sec. On HS, practical transfer speed is 10-20 MBytes/sec. The 1-2 GBytes are transferred in 100-200 sec.

    HS ARM MCU: NXP LPC288x, Atmel AT91SAM9R64
    HS '51 MCU: Cypress EZ-USB FX2LP (CY7C68013A)
    HS Peripheral: NXP ISP1582, Cypress EZ-USB SX2 (CY7C68001)

    I recommend you to combine EZ-USB SX2 with your favorite MCU. It's a simple solution for USB beginner.

    On the other hand, I don't recommend LPC288x to you; read this Olimex fight with the chip.
    forum.sparkfun.com/viewtopic.php

    The problem for the device of generic bulk transfer is the device driver selection on the PC. It depends on the OS on the PC.

    Q2: What is the target OS on the PC? Windows?
    Then what is the Windows version(s) to be supported?

    Tsuneo

Children