![](http://datasheet.mmic.net.cn/Freescale-Semiconductor/MC68HC16Z1VEH16_datasheet_98737/MC68HC16Z1VEH16_51.png)
After the double bus fault occurs, the MCU drives the HALT line low and can only be restarted by a re-
set. When the HALT line is driven low internally, the double bus fault monitor will immediately cause a
reset if it is enabled. If the double bus fault monitor has been disabled by clearing the HME bit in the
system protection control register (SYPCR), the MCU will remain halted indefinitely and must be reset
externally.
5.2.8 Problem: A Chip-Select Generates the Wrong Number of Wait States
1. Either DSACK1 or DSACK0 has floated low. These signals should be tied high via a pull-up re-
sistor or be configured as I/O pins. The DSACK pins, along with other bus control signals, are
configured as I/O pins by driving DATA8 low during reset or by programming the appropriate CS-
PAR bits.
2. Multiple chip-selects with different wait states are responding to the same address (it does not
matter whether the chip-select pins are connected to anything). Whether or not multiple chip-se-
lects respond to the same address is determined by both the base address and the block size in
the associated chip-select base address register (CSBAR).
3. The MCU sees only base addresses that lie on a word boundary of the block size. It will interpret
each base address as an address that is on a word boundary. This will cause an incorrectly pro-
grammed chip-select circuit to match on an unexpected address. An example of how to deter-
mine if chip-select circuits are programmed correctly is shown below.
A. On a sheet of paper, make a table with four columns as shown in Table 8. Initialize the base
address and option registers, then look at all of the base address and option registers. Fill in
the appropriate cell in the table with the value in the corresponding option register and base
address register. In addition, fill in the BLKSZ cell with the block size indicated by the last three
bits of the base address register. Table 9 shows block size values.
B. Compare the base address register values to see if any overlap. In addition to checking the
actual values in the registers, check the block sizes and thus the number of address lines com-
pared. Since the MCU does not look at all 24 address lines when it compares for a match, two
chip-select circuits can respond to the same base address, even though the base address reg-
isters contain different values.
Table 8 Sample Chip-Select Values
CS
CSBARx
CSORx
BLKSZ
CSBOOT
$0003
$68B0
64K
CS0
$0504
$58FE
128K
CS1
$F800
$5830
16K
.
CS10
$0400
$4F3E
2K
Table 9 Block Size Encodings for Chip-Selects
BLKSZ[2:0]
Block Size
Address Lines Compared
000
2 Kbyte
ADDR[23:11]
001
8 Kbyte
ADDR[23:13]
010
16 Kbyte
ADDR[23:14]
011
64 Kbyte
ADDR[23:16]
100
128 Kbyte
ADDR[23:17]
101
256 Kbyte
ADDR[23:18]
F
re
e
sc
a
le
S
e
m
ic
o
n
d
u
c
to
r,
I
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
c
..
.