
144
Agere Systems Inc.
Data Sheet
May 2001
and Packet Payload Engine
Ambassador T8110 PCI-Based H.100/H.110 Switch
14
Connection Control—Standard and Virtual Channel
(continued)
14.1.2.2 Microprocessor Virtual Channel Memory Programming
Because the microprocessor interface only allows word or byte accesses, multiple write accesses must occur. The
microprocessor virtual channel memory access mimics the 32-bit PCI access by using a combination of the lower
two address bits [1:0] and holding registers. For byte access, there are a total of three byte-wide holding registers.
For word access, there is one word-wide holding register. The user must load the holding registers with the proper
information first, and then write to the upper byte (or upper word) to actually move data into the virtual channel
memory; refer to Table 111.
The virtual channel memory is divided into two regions: the static portion and the scratchpad portion. The static
portion contains two read/write fields, defining a particular virtual channel’s base address and depth. The scratch-
pad portion contains one read/write field (depth) and one read-only field (current offset). On any write to the virtual
channel memory, the scratchpad current offset is reset to zero. Virtual channel memory commands are as follows:
n
The WRITE command is presented as a microprocessor write cycle (see Figure 46 on page 145).
n
The READ STATIC command is presented as a microprocessor read cycle (see Figure 47 on page 145).
n
The READ SCRATCHPAD command is presented as a microprocessor read cycle (see Figure 48 on page 146).
Note:
Accessing the virtual channel memory is for diagnostic purpose only when the microprocessor interface is
selected.
Note:
Data byte n required information is shown in Figure 46—Figure 48.
Table 111. Virtual Channel Memory Access
Word/Byte
(MB_CS5)
Byte
A[1:0]
D[15:8]
D[7:0]
Access Description
00
X
Data byte 0 Write data byte 0 to a holding register, or read data
byte 0 information.
Data byte 1 Write data byte 1 to a holding register, or read data
byte 1 information.
Data byte 2 Write data byte 2 to a holding register, or read data
byte 2 information.
Data byte 3 Write data byte 3 plus the holding register data to a
virtual channel memory, or read data byte 3 infor-
mation.
Data byte 0 Write data bytes 1 and 0 to a holding register, or
read data bytes 1 and 0 information.
Data byte 2 Write data bytes 3 and 2 plus the holding register
data to a virtual channel memory, or read data
bytes 3 and 2 information.
Byte
01
X
Byte
10
X
Byte
11
X
Word
0X
Data byte 1
Word
1X
Data byte 3