|
Functional Description
The
xSil258B is designed to connect an IDE/ATAPI device or Flash media to USB. It contains the following:
-
100-pin 16mm x 16mm QFP package
-
Single chip with integrated USB 2.0 PHY
-
Serial EEPROM port
-
Supports up to 25 types of media. (Application notes available.)
-
IDE/ ATAPI/ MMC™/ SD™/ Memory Stick™ / SmartMedia™/ xD™/ CF™ interface
-
Supports for High Speed operation of MMC/SD, Memory Stick and SmartMedia Cards
-
Supports for MS PRO™, HS (4-bit mode)
-
Supports SmartMedia ROM, Memory Stick ROM media
-
Supports for xD media, up to 2GB.
-
Supports for xD M series & H series media
-
Supports On-board NAND as a storage device
-
Firmware enhancements can be stored on On-board NAND when populated
-
Serial port
-
Two General Purpose Timers -
Watchdog Timer -
16 bit Processor -
Internal RAM for supporting enhancements -
ROM with BIOS and Application code -
Programmable Read and Write widths
-
Optimum hardware controlled transfer for speed and scalability
MultiMediaCards/ Secure Digital Cards
-
Supports SD Card High Speed mode (48MHz clock)
-
Supports miniSD, MicroSD, TransFlash
-
Supports MMC media with 1-bit, 4-bit and 8-bit modes (48MHz clock)
-
Supports MMCPlus, MMC Micro, RS MMC media
CompactFlash / Microdrive
-
Supports CompactFlash UDMA Modes 0..4, MDMA Modes 0..2, PIO Modes 0..6
-
Supports IDE / ATAPI devices up to PIO Mode 4
-
Supports IBM, Seagate, Hitachi and MagicStor Hard disk based CF media
xD/ SmartMedia/ NAND flash
-
Supports SmartMedia ROM, Memory Stick ROM media
-
Supports for xD media, up to 2GB.
-
Supports for xD M series media – V1.2 xD Picture Card Specification compliant.
-
Supports for xD H series media -
Supports On-board NAND as a storage device, 8-bit and 16-bit -
1-bit error correction and 2-bit error detection for SM and xD based on ECC. -
FEC Error detection and Correction, which can correct up to 4-bytes of error per sector with Parity data included. -
Firmware enhancements can be stored on On-board NAND when populated. Does not require first NAND block to be good.
Memory Stick/ Memory Stick PRO
-
Supports Memory Stick Classic and Memory Stick High Speed
-
Supports MS PRO™, HS (4-bit mode)
-
Supports MS Duo, MS PRO Duo
-
Support for Memory Stick ROM
Packaging
The
xSil258B is a 100-pin QFP package.
USB
Engine
The xSil258B meets the Universal Serial Bus (USB) specification V2.0 and V1.1.
Serial EEPROM Port
The xSil258B provides a serial interface to access
external EEPROM's. The interface is implemented using General Purpose I/O signals and can support a
variety of serial EEPROM formats.
IDE/ ATAPI
The xSil258B processor can be designed to interface to an IDE or ATAPI device. It supports PIO mode of data transfer.
Support for CF, MMC/ SD, Memory Stick, xD and SmartMedia Cards
The MultiMediaCard (MMC), Secure Digital Card (SD Card) and Memory Stick are serial
access devices. They also require in-bound / out-bound data to be appended with CRC
information. The xSil258B processor provides support in hardware to generate the CRC
and to convert Serial to Parallel and Parallel to Serial bit streams. A programmable
clock speed is provided to set the clock speed based on the media’s capabilities.
The xSil258B also provides Hardware ECC generation and checking for SmartMedia and XD.
CF cards may be connected directly as an IDE device.
Serial port
Supports 7200 to 115.2K baud. It can be used as a debug port to communicate with V3 debugger and to load the monitor program.
General Purpose Timers
Two general-purpose timers, Timer0 and Timer1 are provided to allow firmware programmers to
keep track of timeouts as well as to generate delays.
Watchdog Timer
A Watchdog Timer is provided to enable catastrophic events to interrupt the processor.
The Watchdog Timer overflow causes an internal processor reset. The Processor
can read the WT bit after exiting reset to determine if the WT bit is set. If it is set,
a watchdog timeout occurred. The timeout is selectable to any of the following values:
2 second, 8 seconds, 16 seconds or 32 seconds.
xSil 258B Processor
The xSil 258B Processor has a built-in 16-bit processor along with a BIOS ROM.
The processor operates with a specialized instruction set optimized for Mass Storage
applications and USB transaction processing. The startup code for the 16-bit processor
resides in a masked ROM.
RAM
Interface
The xSil258B chip comes with Internal RAM that can be used to enhance the firmware resident in the ROM.
Masked ROM
The Masked ROM consists of the xSil258B processor start-up code and the functions listed below:
-
Power On Initialization
-
USB packet transaction management
-
USB Power Management (S0..S3 modes)
-
USB Enumeration Management
-
API support for USB transactions, EEPROM Interface, Memory Management etc.
-
Built-in Library functions for IDE/ ATAPI and Flash devices
The firmware is easily extended / expanded by using External Serial EEPROM. The BIOS provides
several services to facilitate this expansion code. At boot-up time, the scan services
of the BIOS search for the expansion signature in the Serial EEPROM as well as via
the UART and USB. For more information, refer to Applications section of this manual.
The BIOS API functions are designed as Software Interrupts, making it easy
for enhancements. Any Interrupt can be enhanced / modified by inserting the
user defined function in the interrupt placeholder. When this interrupt is
called by the BIOS, the user defined function is called first to enhance the
behavior before passing it on to the standard BIOS function’s call or return without passing it on.
Programmable Read and Write cycles
The external cycles to flash using the D[15:0], and SM[7:0] bus are software configurable. |