English
Language : 

OXCFU950_07 Datasheet, PDF (63/74 Pages) Oxford Semiconductor – USB/UART multi-function 16-bit PC Card device
OXFORD SEMICONDUCTOR, INC.
OXCFU950 DATA SHEET
During the download period the READY# line is kept high to hold off the host from interrogating the card. This is required
because if normal interrogation was permitted during an EEPROM download, incorrect data may be read by the host causing
error in configuration or even a graceful rejection of the card by the host.
The EEPROM can be programmed from the CF/PC Card Interface. When the EEPROM has been programmed, a PCMCIA reset
or function reset must be performed to load in the new values and configure the CF950 to the required state.
If an invalid CIS is downloaded to the OXCFU950, the host may gracefully reject the card. This means that the card is no longer
accessible via the host, and the EEPROM can not be reprogrammed. However, by using the CIS_MODE pin to select the default
CIS, it is possible enumerate the card, and the EEPROM can be reprogrammed. To allow an EEPROM download to take place
the CIS_MODE pin must be held HIGH. To stop the EEPROM download taking place the CIS_MODE pin will be held LOW.
The zones included for the EEPROM download are described below. First of all a header 16 value is read in. If it is a valid value
then the EEPROM controller detects from this byte which zones are included in the download. It then reads in each zone of data
and passes it to the relevant area in the OXCFU950 (i.e. CIS memory, function or local registers). When all the zones have been
loaded into the relevant area, the download is complete.
10.1 Zone 0 : Zone Header
The zone header is the first value to be read and is at address 0 in the EEPROM. It has the following format:
Bits
Description
15:4
These bits should return 0xF87 to identify a valid program.
2
1—Zone 1 (CIS Configuration) data exists
0—Zone 1 does not exist
1
1—Zone 2 (USB Function Access) data exists
0—Zone 2 does not exist
0
1—Zone 3 (UART Function Access) data exists
0—Zone 3 does not exist
Table 26. Zone 0 format
The programming data for each zone follows the preceding zone if it exists. For example, a header value of 0xF877 indicates
that all zones exist and they follow one another, while 0xF876 indicates that only zone 1 and zone 2 exist.
10.2 Zone 1 : CIS Configuration Zone
This zone allows the user to provide custom tuple information for the card information structure, overriding the default hard-
coded tuple values found in the device. Downloading into this zone programs the internal RAM with the user’s tuple data and
automatically sets the source of the CIS to be this RAM.
Tuple data bytes are read until the specified number of type data-bytes have been collected in which case the EEPROM moves
over to the next zone if it exists, or the EEPROM download terminates if no other zones are present.
The zone contains data to be downloaded into the attribute memory (RAM address 0 to 255, attribute memory addresses 0 to
510, even locations only).
The first WORD in this zone describes how many bytes of data are present to be downloaded. The next words contain the tuple
data for the attribute memory.
DS-0023 February 2007
External—Free Release
Page 63 of 74