Functional Description (Continued)
BUFFER CONTROL MODE FIELD
The transfer of Data from the memory sub-system to the
i960 bus occurs through buffers controlled by the
NSBMC096. Two of the signals (LEA, LEB) provide transparent latch controls for use during write cycles. LEA and
LEB have variable timing but fixed interpretation. The other
two signals, TXA and TXB, change in both timing and function according to programmed mode. Table II presents
these signals using names that are based on the function
performed.
Signals containing TX are transmit controls for buffers that
have output enables (transmit from the memory system).
Buffers such as ’245s or ’646s, which have direction and
enable pins, are controlled by CE (chip enable) in modes 1
and 3. Signals ending with A or B are specific to one or the
other of the two leaves of memory controlled by the
NSBMC096. Signals without suffixes apply to both leaves.
The signal LeafB/*A, required in some configurations, indicates which memory leaf will be selected on the next clock
cycle.
TABLE II. Interpretation of the Buffer Control
Signals for Various Control Modes
Mode Signal 1 Signal 2
0 TXA TXB
1 CEA CEB
2 TX LeafB/*A
3 CE LeafB/*A
Table III presents some of the possible configurations with
the corresponding mode settings. For a comprehensive discussion of the selection of a buffer strategy, refer to the
NSBMC096 Application Guide.
TABLE III. Possible NSBMC096
Memory/Buffer Configurations
Buffer DRAM Write Read Buffer
Type Type Access Access Mode
74FCT245 Nibble 2-4-4-4* 2-0-0-0 Mode 3
74FCT245 Bit 2-4-4-4* 2-0-0-0 Mode 1
74FCT646 Nibble 1-0-0-0 2-0-0-0 Mode 3
74FCT543 Bit 1-0-0-0 2-0-0-0 Mode 0
Am29C983 Bit 1-0-0-0 2-0-0-0 Mode 2
None Nibble 2-4-4-4* 2-0-0-0 Mode 2, 3
*These configurations have burst writes disabled.
DRAM SIZE FIELD
This three bit field, bits 12 – 14, selects the DRAM device
address size, and consequently, memory block size. Note
that the memory in both leaves of a bank are required to be
of the same size and organization for correct operation. Table IV lists the size codes and the corresponding device
sizes.
TABLE IV. Size Code Settings, DRAM
Density and Address Range Size
Memory Memory Max Memory
Size Code Block Size Banks Types
000 2MB 1 256kx1
001 8MB 1 1MBx1
010 32MB 1 4MBx1
011 128MB 1 16MBx1
100 2MB 4* 64kx4
101 8MB 4* 256k x 4
1 1 0 32 MB 4* 1MBx4
1 1 1 128 MB 4* 4MBx4
*Note that banks are sequentially addressed within a block.
REFRESH RATE FIELD
The system clock frequency is used to derive the period of
DRAM refresh cycles. The refresh rate is calculated as
(PCLK clock frequency) / (16 x (programmed value
a
1)).
If, for example, the system clock is 25 MHz and the programmed value is 24 (0x18), the NSBMC096 will execute
the 256 refresh cycles for a 256k DRAM in 4.096 ms.
The algorithm employed by the NSBMC096 guarantees the
time for complete device refresh, however, individual row
refresh may be delayed so as not to pre-empt bursts in
progress. Since the maximum burst is 6 clock cycles in
length, this delay in no way endangers data integrity. Access to devices other than NSBMC096 controlled memory
are not delayed by refresh, access to memory while refresh
is in progress are completed once the refresh cycle is complete.
TIMER CONTROL FIELD
The 24-bit timer is a counter which scales PCLK by a programmable amount and automatically reloads when terminal count is reached. The contents of the timer cannot be
read directly, however, the counter will generate an interrupt
when terminal count is reached. The timer is disabled following a RESET and the Timer Reload value (Configuration
Bytes 4–6) must be programmed before the timer is enabled.
The terminal count interrupt can be generated to comply
with either edge triggered or level sense interrupt controllers. Edge triggered mode generates a pulse that is low for
two cycles when terminal count is reached. In Level sense
mode, the output is asserted low when terminal count is
reached and the output remains low until the Acknowledge
Timer Interrupt op-code is written to configuration byte 0.
See the section on Operation Control for further detail concerning timer interrupt control.
BUS WATCH TIMER CONTROL FIELD
The NSBMC096 contains circuitry that monitors all bus access requests regardless of the target address. Access
made to a region configured for external ready can hang the
processor if for some reason READY is not returned to terminate the access. The NSBMC096 can detect such a condition and if the bus watch feature is enabled, will return
READY and BERR.
8