CHAPTER 17 COMPACTFLASH CONTROLLER (ECU)
User’s Manual U14272EJ3V0UM
352
17.6 Controlling Bus When CompactFlash Card Is Used
Access to the CompactFlash card is made via the ISA bridge. The address, data, and command signals operate
based on external ISA cycles. The operations of the signals that control the bus size and wait state (MEMCS16#,
IOCS16#, and IORDY) can be set in the ECU.
17.6.1 Controlling bus size
When the memory window is accessed, the data bus width is set in the DWIDTH bit of the MEMWIDn_REG
register (n = 0 to 4). This setting is output from the ECU to the ISA bridge as the source of the MEMCS16# signal.
When the I/O window is accessed, the source of the data width is selected from the CF_IOIS16# signal or IOnDSZ
bit (n = 0 or 1) via the IOn_CS16MD bit (n = 0 or 1) of the IOCTRL_REG register. If the CF_IOIS16# signal is
selected, its status is output from the ECU to the ISA bridge as the source of the IOCS16# signal. If the IOnDSZ bit
is selected, the inverted setting of the IOnDSZ bit is output.
17.6.2 Controlling wait
The number of wait states of the external ISA cycle can be selected from four types by using the MEMWS(1:0)
and IOWS(1:0) bits of the XISACTL register of the ISA bridge, regardless of whether the memory or I/O is accessed.
In addition, the ECU deasserts the IORDY signal and extends the bus cycle if the CF_WAIT# signal from the
CompactFlash card is asserted. Additional wait states can be controlled by ECU settings.
(1) Wait when memory window is accessed
The zero wait state can be enabled or disabled via the ZWSEN bit of the MEMWIDn_REG register (n = 0 to 4).
(a) If zero wait state is enabled
A wait state is not added regardless of the bus size. Therefore, wait states are inserted only during the period
set in the MEMWS(1:0) bits of the XISACTL register.
(b) If zero wait state is disabled
The number of wait states selected in the M16W(1:0) bits of the MEMSELn_REG register (n = 0 to 4) is added
in the 16-bit access mode.
In the 8-bit access mode, a 4 SYSCLK-cycle wait is added.
(2) Wait when I/O window is accessed
(a) 16-bit access
A 2 SYSCLK-cycle wait is added if the IOnWT bit of the IOCTRL_REG register (n = 0 or 1) is set to 1.
A 1 SYSCLK-cycle wait is added if the IOnWT bit of the IOCTRL_REG register (n = 0 or 1) is cleared to 0.
(b) 8-bit access
A 4 SYSCLK-cycle wait is added if the Wn_IOWS bit of the IOCTRL_REG register (n = 0 or 1) is set to 1.
A 3 SYSCLK-cycle wait is added if the Wn_IOWS bit of the IOCTRL_REG register (n = 0 or 1) is cleared to 0.