Справочник Пользователя для SDI Technologies SDIO Card

Скачать
Страница из 73
 
 
 
©Copyright 2000-2007 SD Card Association  
SDIO Simplified Specification Version 2.00 
 33 
Field 
Type 
Description 
FSx 
R/W 
Select Function bits 3:0 These four bits are used to select a function number (0-7) or 
the memory of a combo card (8) for Suspend/Resume. There are 2 means to write 
the value of FSx. First, an I/O writes to the register in the CCCR and second, a new 
I/O command causes the FSx to be set to the function number in that command. The 
value of FSx shall remain until overwritten. If a function or memory is currently 
suspended, the writing of it’s number to FSx shall re-start (resume) the data transfer 
operation When reading FSx, the value returned shall be the number of the currently 
addressed function. Note that when reading FSx, if the Bus Status is 0 (BS=0), the 
FSx value is undefined. The FSx bits are coded as follows: 
 
 
FSx Current 
Transaction 
 0000 
Transaction of function 0 (CIA) 
 
0001-0111 
Transaction to functions 1-7 
 1000 
Transaction of memory in combo card 
 
1001-1111 
Not defined, reserved for future use 
If SBS=0 these bits shall be R/O. 
DF 
R/O 
Resume Data Flag: A data transaction is resumed by writing its number to FSx. Once 
the transaction is resumed, the DF indicates if more data will be transferred. If DF is 
cleared to 0, then no additional data will be transferred after the function or memory is 
resumed. If DF is set to 1, then there is more data to transfer that will begin after the 
function or memory in resumed. The DF flag can be used to control the interrupt cycle 
in 4-bit mode. If DF=1, there is more data to transfer after restoring the function. In 
this case, the interrupt cycle should be disabled. If DF=0, the function or memory was 
suspended at end of data transfer (during busy). In this case, no data transfer shall 
begin after resume so the host can detect a start interrupt cycle after restore. When 
resuming, if the suspended function cannot continue data transfer the card shall 
return DF=0 to abort the transfer. 
EXx 
R/O 
Execution Flag bits 7:0 These bits are used by the host to determine the current 
execution status of all functions (1-7) and memory (0). The bit is set to 1 for each 
function or memory that is currently executing a command. The EXx bits tell the host 
that a function or memory is currently executing a command so no additional 
command should be issued to that function/memory. These bits are only defined if 
SBS=1. This bit is set if the function is active (either currently executing or 
suspended). If SBS=0 these bits shall be read as zero. 
RFx 
R/O 
Ready Flag bits 7:0 These bits tell the host the read or write busy status for functions 
(1-7) and memory (0). If a function or memory is executing a write transaction, an RFx 
bit cleared to 0 indicates the function/memory is busy and not ready to accept more 
data. If the RFx bit is set to 1, then the function/memory can accept write data. If a 
function/memory is executing a read command, if the RFx bit is cleared to 0, it 
indicates that read data is NOT available. If the bit is set to 1, it indicates that read 
data is ready to be transferred. These bits are only defined if SBS=1. Setting a bit to 1 
indicates the function is ready to accept the resume command. There are two 
conditions where the function will set the bit to 1. One is when the function (executing 
or suspended) is ready to continue data transfer. The other is when the suspended 
function cannot continue data transfer.  If SBS=0 these bits shall be read as zero. 
FN0 Block 
Size 
R/W 
This 16-bit register sets the block size for I/O block operations for Function 0 only. If 
this card does not support I/O block operations (SMB=0), then this register becomes 
read-only and shall always read 0x0000. The maximum block size is 2048 (0x0800) 
and the minimum is 1. At power-up or reset, this register shall be initially loaded with a 
value of 0x0000. The host is responsible for setting the appropriate value for the 
block size supported by function 0. This pointer is stored in little-endian format (LSB 
first).