MUSIC MU9C5640L

Data Sheet
LIST-XL Family
APPLICATION BENEFITS
•
•
256 word and 512 word by 64-bit content addressable
memory (CAM)
•
Compare any data with all the entries stored in the
memory array in a single 70 ns cycle
•
Add or delete data in the CAM in a single cycle
•
Match and Multiple match signals
•
Immediate access to associated data translations,
attributes or pointers
•
Flexible patented CAM/RAM partitioning
•
Two selectable mask registers with bit by bit
capability
•
Powerful and flexible instruction set
•
Proximate match capability
•
16-bit I/O; 32Pin LQFP; 3.3 volt operation
LAN Address processing
•
Cache tag buffers
•
Hash collision resolution
•
Branch tables
•
Data decoders
•
DISTINCTIVE CHARACTERISTICS
Other processes or algorithms that require table
searches
(Also available in lead-free package)
GND
/RESET
COMPARAND
MASK 1
N
CONTROL
2N WORDS
X 64 BITS
PRIORITY ENCODER
NEXT FREE ADDRESS (R/O)
CAM ARRAY
2N X 2 VALIDITY BITS
MASK 2
ADDRESS
CONTROL
DATA (64)
SOURCE AND
DESTINATION
SEGMENT
COUNTERS
INSTRUCTION (W/O)
/W
/CM
DEMUX
DATA (16)
COMMANDS &
STATUS (16)
/E
VCC
ADDRESS DECODER
(16)
I/O BUFFERS
DQ (15—0)
DATA (64)
MUX
DATA (16)
/MA
/MM
/MF
SEGMENT CONTROL
STATUS (15-0) (R/O)
STATUS (31-16) (R/O)
MATCH ADDR, /MF
N+1
/MM, /FF
2
REGISTER SET
Block Diagram
MUSIC Semiconductors, the MUSIC logo, and the phrase "MUSIC Semiconductors" are
Registered trademarks of MUSIC Semiconductors. MUSIC is a trademark of
MUSIC Semiconductors.
May 3, 2005 Rev. 3.1
LIST-XL Family
General Description
GENERAL DESCRIPTION
the database. The ability to search data words up to 64 bits
wide allows large address spaces to be searched rapidly and
efficiently. A patented architecture links each CAM entry to
associated data and makes this data available for use after a
successful compare operation.
The MUSIC LIST-XL family consists of 256 word and 512
word by 64-bit content-addressable memory (CAM), ideal for
time critical applications requiring intensive list processing
where space and cost are important.
Content-addressable memories, also known as associative
memories, operate in the converse way to random access
memories (RAM). In a RAM, the input to the device is an
address and the output is the data stored at that address. In a
CAM, the input is a data sample and the output is a flag to
indicate a match and the address of the matching data. As a
result, a CAM searches large databases for matching data in
a short, constant time period, no matter how many entries are in
The MUSIC LIST-XL is an inexpensive powerful solution for
any application having to retrieve or translate data in a fast,
time deterministic manner. It is well suited to handle and speed
up functions usually done in software, such as data caches,
branch tables, LAN address processing, data translations,
high speed data filters, and algorithms having to search,
recognize, and make decisions on data or a data subset.
OPERATIONAL OVERVIEW
triggers a compare. Compares may also be initiated by a
command to the device. Associated RAM data is available
immediately after a successful compare operation. The
Status register reports the results of compares including all
flags and addresses. Two Mask registers are available and can
be used in two different ways, to mask comparisons or to
mask data writes. The random access validity type (see Table
1) allows additional masks to be stored in the CAM array
where they may be retrieved rapidly.
To use the LIST-XL, the user loads the data into the
Comparand register, which is automatically compared to all
valid CAM locations. The device then indicates whether or
not one or more of the valid CAM locations contains data
that matches the target data. Two validity bits at each
memory location determines the status of each CAM
location. The two bits are encoded to render four validity
conditions: Valid, Skip, Empty, and Random Access, as
shown in Table 1. The memory can be partitioned into
CAM and associated RAM segments on 16-bit boundaries,
but by using one of the two available mask registers, the
CAM/RAM partitioning can be set at any arbitrary size
between zero and 64 bits.
A simple three-wire control interface and commands loaded
into the Instruction decoder control the device. A powerful
instruction set increases the control flexibility and minimizes
software overhead. These and other features make the
LIST-XL a powerful associative memory that drastically
reduces search delays.
The LIST-XL's internal data path is 64 bits wide for rapid
internal comparison and data movement. Loading data to the
Control, Comparand, and Mask registers automatically
0
Validity Type
Valid
0
0
Empty
1
0
Skip
1
1
RAM
25
26
27
28
29
30
31
32
Empty Bit
0
/FF
GND
/CM
VCC
DQ0
DQ1
DQ2
DQ3
Skip Bit
Table 1: Validity Bits vs Validity Types
/CW
/CM
LOW
LOW
Command Write Cycle
Cycle Type
Command Read Cycle
HIGH
HIGH
Data Read Cycle
4
5
6
7
8
32-pin LQFP
(top view)
24
23
22
/MM
/MF
VCC
21
20
19
18
17
GND
/RESET
VCC
/E
/W
DQ15
DQ14
Data Write Cycle
LOW
GND
GND
DQ6
DQ7
NC
DQ13
DQ12
DQ11
DQ10
DQ9
DQ8
HIGH
1
2
3
16
15
14
13
12
11
10
9
LOW
HIGH
DQ4
DQ5
VCC
Table 2: I/O Cycles
2
Rev. 3.1
Pin Descriptions
LIST-XL Family
PIN DESCRIPTIONS
All signals are implemented in CMOS technology with TTL levels. Signal names that start with a slash (“/”) are active LOW.
Inputs should never be left floating. The CAM architecture draws large currents during compare operations, mandating the
use of good layout and bypassing techniques. Refer to the Electrical Characteristics section for more information.
/FF (Full Flag, Output, TTL)
The /FF output goes LOW when no empty memory locations
exist within the device.
/E (Chip Enable, Input, TTL)
The /E input enables the device while LOW. The falling edge
registers the control signals /W and /CM. The rising edge turns
off the DQ pins and clocks the Destination and Source
Segment counters. The four cycle types enabled by /E are
shown in Table 2 on page 2.
/RESET (Reset, Input, TTL)
/RESET must be driven LOW to place the device in aknown
state before operation, which will reset the device to the
conditions shown in Table 4 on page 8. The /RESET pin should
be driven by TTL levels, not directly by an RC time-out. /E
must be kept HIGH during /RESET.
/W (Write Enable, Input, TTL)
The /W input selects the direction of data flow during a device
cycle. /W LOW selects a Write cycle and /W HIGH selects
a Read cycle.
VCC, GND (positive Power Supply, Ground)
These pins are the power supply connections to the LIST XL.
VCC must meet the voltage supply requirements in the
Operating Conditions section relative to the GND pins, which
are at 0 Volts (system reference potential), for correct
operation of the device. All the ground and power pins must
be connected to their respective planes with adequate bulk and
high frequency bypassing capacitors in close proximity to the
device.
/CM (DATA/Command Select, Input, TTL)
The /CM input selects whether the input signals on DQ15-0
are data or commands. /CM LOW selects Command cycles
and /CM HIGH selects Data cycles.
/DQ15-0 (Data Bus, I/O, TTL)
The DQ15-0 lines convey data, commands, and status to and
from the LIST-XL. /W and /CM controls the direction and
nature of the information that flows to or from the
device.When /E is HIGH, DQ15-0 go to Hi-Z.
/MF (Match Flag, Output, TTL)
The /MF output goes LOW when one or more valid matches
occur during the current or most recent compare cycle. /MF
is HIGH if there is no match. /MF will be reset when the active
configuration register set is changed.
/MM (Device Multiple Match Flag, Output, TTL)
The /MM output is LOW when more than one valid match
occurs during the current or the most recent compare cycle.
/MM will be reset when the active register set is changed.
Rev. 3.1
3
LIST-XL Family
Functional Description
FUNCTIONAL DESCRIPTION
Data Movement (Read/Write)
Data can be moved from one of the data registers (CR, MR1,
or MR2) to a memory location that is based on the results of
the last comparison (Highest-Priority Match or Next Free),
or to an absolute address, or to the location pointed to by the
active Address register. Data also can be written directly to
the memory from the DQ bus using any of the above
addressing modes. The Address register may be directly
loaded and may be set to increment or decrement, allowing
DMA-type reading or writing from memory.
The LIST-XL is a content-addressable memory (CAM) with
16-bit I/O for network address filtering and translation, virtual
memory, data compression, caching, and table lookup
applications. The memory consists of static CAM, organized
in 64-bit data fields. Each data field can be partitioned into
a CAM and a RAM subfield on 16-bit boundaries. The
contents of the memory can be randomly accessed or
associatively accessed by the use of a compare. During
automatic comparison cycles, data in the Comparand register
is automatically compared with the "Valid" entries in the
memory array. The Device ID can be read using a TCO PS
instruction (see Table 11 on page 16).
Configuration Register Sets
Two sets of configuration registers (Control, Segment
Control, Address, Mask Register 1, and Persistent Source and
Destination) are provided to permit rapid context switching
between foreground and background activities. Writes, reads,
moves, and compares are controlled by the currently active
set of configuration registers. The foreground set would
typically be pre-loaded with values useful for comparing input
data, often called filtering, while the background set would
be pre-loaded with values useful for housekeeping activities
such as purging old entries. Moving from the foreground task
of filtering to the background task of purging can be done by
issuing a single instruction to change the current set of
configuration registers. The match condition of the device is
reset whenever the active register set is changed.
Data Input and Output Characteristics
The data inputs and outputs of the LIST-XL are multiplexed
for data and instructions over a 16-bit I/O bus. Internally, data
is handled on a 64-bit basis, since the Comparand register, the
mask registers, and each memory entry are 64 bits wide.
Memory entries are globally configurable into CAM and
RAM segments on 16-bit boundaries, as described in US
Patent 5,383,146 assigned to MUSIC Semiconductors. Seven
different CAM/RAM splits are possible, with the CAM width
going from one to four segments, and the remaining RAM
width going from three to zero segments. Finer resolution on
compare width is possible by invoking a mask register during
a compare, which does global masking on a bit basis. The
CAM subfield contains the associative data, which enters into
compares, while the RAM subfield contains the associated
data, which is not compared. In LAN bridges, the RAM
subfield could hold, for example, port-address and aging
information related to the destination or source address
information held in the CAM subfield of a given location. In
a translation application, the CAM field could hold the
dictionary entries, while the RAM field holds the translations,
with almost instantaneous response.
Control Register
The active Control register determines the operating
conditions within the device. Conditions set by this register's
contents are reset, CAM/RAM partitioning, disable or select
masking conditions, and disable or select auto-incrementing
or -decrementing the Address register. The active Segment
Control register contains separate counters to control the
writing of 16-bit data segments to the selected persistent
destination, and to control the reading of 16-bit data segments
from the selected persistent source.
Validity Bits
Each entry has two validity bits (known as Skip bit and Empty
bit) associated with it to define its particular type: empty, valid,
skip, or RAM. When data is written to the active Comparand
register, and the active Segment Control register reaches its
terminal count, the contents of the Comparand register are
automatically compared with the CAM portion of all the valid
entries in the memory array. For added versatility, the
Comparand register can be barrel-shifted right or left one bit
at a time. A Compare instruction can then be used to force
another compare between the Comparand register and the
CAM portion of memory entries of any one of the four validity
types. After a Read or Move from Memory operation, the
validity bits of the location read or moved will be copied into
the Status register, where they can be read from the Status
register using Command Read cycles.
4
Rev. 3.1
Operational Characteristics
LIST-XL Family
Input Control Signals and Commands
Three input control signals and commands loaded into an
instruction decoder control the LIST-XL. Two of the three
input control signals determine the cycle type. The control
signals tell the device whether the data on the I/O bus
represents data or a command, and is input or output.
Commands are decoded by instruction logic and control
moves, forced compares, validity bit manipulations, and the
data path within the device. Registers (Control, Segment
Control, Address, Next Free Address, etc.) are accessed using
Temporary Command Override instructions. The data path
from the DQ bus to/from data resources (comparand, masks,
and memory) within the device are set until changed by Select
Persistent Source and Destination instructions.
Mask Registers
There are two active mask registers at any one time, which
can be selected to mask comparisons or data writes. Mask
Register 1 has both a foreground and background mode to
support rapid context switching. Mask Register 2 does not
have this mode, but can be shifted left or right one bit at a time.
For masking comparisons, data stored in the active selected
mask register determines which bits of the comparand are
compared against the valid contents of the memory. If a bit
is set HIGH in the mask register, the same bit position in the
Comparand register becomes a "don't care" for the purpose
of the comparison with all the memory locations. During a
Data Write cycle or a MOV instruction, data in the specified
active mask register can also determine which bits in the
destination will be updated. If a bit is HIGH in the mask
register, the corresponding bit of the destination is unchanged.
After a Compare cycle (caused by either a data write to the
Comparand or mask registers, a write to the Control register,
or a forced compare), the Status register contains the address
of the Highest-Priority Matching location, along with flags
indicating match, multiple match, and full. The /MF, /MM,
and /FF flags also are available directly on output pins.
Highest Priority/Multiple Match
The match line associated with each memory address is fed
into a priority encoder where multiple responses are resolved,
and the address of the highest-priority responder (the lowest
numerical match address) is generated. In LAN applications,
a multiple response might indicate an error. In other
applications the existence of multiple responders may be
valid.
OPERATIONAL CHARACTERISTICS
Note: Throughout the following, “aaaH” represents a three-digit hexadecimal number “aaa,” while “bbB” represents a two-digit
binary number “bb.” All memory locations are written to or read from in 16-bit segments. Segment 0 corresponds to the lowest order
bits (bits 15–0) and Segment 3 corresponds to the highest order bits (bits 63–48).
Control Bus
Refer to the Block Diagram on page 1 for the following
discussion. The inputs Chip Enable (/E), Write Enable (/W),
and Command Enable (/CM) are the primary control
mechanism for the LIST-XL. Instructions are the secondary
control mechanism. Logical combinations of the Control Bus
inputs, coupled with the execution of Select Persistent Source
(SPS), Select Persistent Destination (SPD), and Temporary
Command Override (TCO) instructions allow the I/O
operations to and from the DQ15-0 lines to the internal
resources, as shown in Table 3 on page 7.
resources on the 64-bit bus: Comparand register, Mask
Register 1, Mask Register 2, and the Memory array.
The Comparand register is the default source and destination
for Data Read and Write cycles. This default state can be
overridden independently by executing a Select Persistent
Source or Select Persistent Destination instruction, selecting
a different source or destination for data. Subsequent Data
Read or Data Write cycles will access that source or
destination until another SPS or SPD instruction is executed.
The currently selected persistent source or destination can be
read back through a TCO PS or PD instruction. The sources
and destinations available for persistent access are those
The data and control interfaces to the LIST-XL are
synchronous. During a Write cycle, the Control and Data
inputs are registered by the falling edge of /E. When writing
to the persistently selected data destination, the Destination
Segment counter is clocked by the rising edge of /E. During
a Read cycle, the Control inputs are registered by the falling
edge of /E, and the Data outputs are enabled while /E is LOW.
When reading from the persistently selected data source, the
Source Segment counter is clocked by the rising edge of /E.
Rev. 3.1
The default destination for Command Write cycles is the
Instruction decoder, while the default source for Command
Read cycles is the Status register.
Temporary Command Override (TCO) instructions provide
access to the Control register, the Segment Control register,
the Address register, and the Next Free Address register. TCO
instructions are active only for one Command Read or Write
cycle after being loaded into the Instruction decoder.
5
LIST-XL Family
Operational Characteristics
Segment Control Register (SC)
The Segment Control register, as shown in Table 8 on page
16, is accessed using a TCO SC instruction. On read cycles,
D15, D10, D5, and D2 will always read back as 0s. Either the
Foreground or Background Segment Control register will be
active, depending on which register set has been selected, and
only the active Segment Control register will be written to or
read from.
The Register Set
The Control, Segment Control, Address, Mask Register 1, and
the Persistent Source and Destination registers are duplicated,
with one set termed the Foreground set, and the other the
Background set. The active set is chosen by issuing Select
Foreground Registers or Select Background Registers
instructions. By default, the Foreground set is active after a
reset. Having two alternate sets of registers that determine the
device configuration allows for a rapid return to a foreground
network filtering task from a background housekeeping task.
The Segment Control register contains dual independent
incrementing counters with limits, one for data reads and one
for data writes. These counters control which 16-bit segment
of the 64-bit internal resource is accessed during a particular
data cycle on the 16-bit data bus. The actual destination for
data writes and source for data reads (called the persistent
destination and source) are set independently with SPD and
SPS instructions, respectively.
Writing a value to the Control register or writing data to the
last segment of the Comparand or either mask register will
cause an automatic comparison to occur between the contents
of the Comparand register and the words in the CAM segments
of the memory marked valid, masked by MR1 or MR2 if
selected in the Control register.
Each of the two counters consists of a start limit, an end limit,
and the current count value which points to the segment to be
accessed on the next data cycle. The current count value can
be set to any segment, even if it is outside the range set by the
start and end limits. The counters count up from the current
count value to the end limit and then jump back to the start
limit. If the current count is greater than the end limit, the
current count value will increment to 3, then roll over to 0 and
continue incrementing until the end limit is reached; it then
jumps back to the start limit.
Instruction Decoder
The Instruction decoder is the write-only decode logic for
instructions and is the default destination for Command Write
cycles. If an instruction's Address Field flag (bit 11) is set to
a 1, it is a two-cycle instruction that is not executed
immediately. For the next cycle only, the data from a
Command Write cycle is loaded into the Address register and
the instruction then completes at that address. The Address
register will then increment, decrement, or stay at the same
value depending on the setting of Control Register bits CT3
and CT2. If the Address Field flag is not set, the memory access
occurs at the address currently contained in the Address
register.
If a sequence of data writes or reads is interrupted, the Segment
Control register can be reset to its initial start limit values by
using an RSC instruction. After the LIST-XL is reset, both
Source and Destination counters are set to count from
Segment 0 to Segment 3 with an initial value of 0.
Control Register (CT)
The Control register is composed of a number of switches that
configure the LIST-XL, as shown in Table 7 on page
Address Register (AR)
The Address register points to the CAM memory location to
be operated upon when M@[AR] or M@aaaH is part of the
instruction. It can be loaded directly by using a TCO AR
instruction or indirectly by using an instruction requiring an
absolute address, such as MOVaaaH, CR,V.After being
loaded, the Address register value will then be used for the
next memory access referencing the Address register. A reset
sets the Address register to zero.
15. It is written or read using a TCO CT instruction. If bit 15
of the value written during a TCO CT is a 0, the device is reset
(and all other bits are ignored). See Table 4 for the Reset states.
Bit 15 always reads back as a 0. A write to the Control register
causes an automatic compare to occur (except in the case of
a reset). Either the Foreground or Background Control
register will be active, depending on which register set has
been selected, and only the active Control register will be
written to or read from.
Control Register bits 8-6 control the CAM/RAM partitioning.
The CAM portion of each word may be sized from a full 64
bits down to 16 bits in 16-bit increments. The RAM portion
can be at either end of the 64-bit word.
Compare masks may be selected by bits 5 and 4. Mask Register
1, Mask Register 2, or neither may be selected to mask
compare operations. The address register behavior is
controlled by bits 3 and 2, and may be set to increment,
decrement, or neither after a memory access.
6
Rev. 3.1
Operational Characteristics
LIST-XL Family
Cycle Type
/E
/CM
/W
I/O Status
Cmd Write
L
L
L
IN
IN
IN
IN
Cmd Read
L
L
H
SPS
SPD
3
3
3
OUT
OUT
OUT
OUT
OUT
OUT
OUT
Data Write
L
H
L
IN
IN
IN
IN
IN
IN
Data Read
L
H
H
OUT
OUT
OUT
OUT
OUT
H
X
X
HIGH-Z
TCO
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
Operation
Notes
Load Instruction decoder
Load Address register
Load Control register
Load Segment Control register
1
2,3
3
3
Read Next Free Address register
Read Address register
Read Status Register bits 15–0
Read Status Register bits 31–16
Read Control register
Read Segment Control register
Read Current Persistent Source or Destination
3
3
4
5
3
3
3,10
Load Comparand register
Load Mask Register 1
Load Mask Register 2
Write Memory Array at address
Write Memory Array at Next Free address
Write Memory Array at Highest-Priority match
6,9
7,9
7,9
7,9
7,9
7,9
Read Comparand register
Read Mask Register 1
Read Mask Register 2
Read Memory Array at address
Read Memory Array at Highest-Priority match
6, 9
8, 9
8, 9
8, 9
7, 8
Deselected
Table 3: Input/Output Operations
Notes:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Default Command Write cycle destination (does not require a TCO instruction).
Default Command Write cycle destination (no TCO instruction required) if Address Field flag was set in bit 11 of the instruction loaded in the
previous cycle.
Loaded or read on the Command Write or Read cycle immediately following a TCO instruction. Active for one Command Write or Read cycle only.
NFA register can not be loaded this way.
Default Command Read cycle source (does not require a TCO instruction).
Default Command Read cycle source (does not require a TCO instruction) if the previous cycle was a Command Read of Status Register Bits 15–0.
If next cycle is not a Command Read cycle, any subsequent Command Read cycle accesses the Status Register Bits 15–0.
Default persistent source and destination on power-up and after Reset. If other resources were sources or destinations, SPD CR or SPS CR restores
the Comparand register as the destination or source.
Selected by executing a Select Persistent Destination instruction.
Selected by executing a Select Persistent Source instruction.
Access may require multiple 16-bit Read or Write cycles. The Segment Control register controls the selection of the desired 16-bit segment(s) by
establishing the Segment counters’ start and end limits and count values.
A Command Read cycle after a TCO PS or TCO PD reads back the Instruction decoder bits that were last set to select a persistent source or
destination. The TCO PS instruction also reads back the Device ID.
and only the active Address register will be written to or read
from.
Control Register Bits CT3 and CT2 set the Address register
to automatically increment or decrement (or not change)
during sequences of Command or Data cycles. The Address
register will change after executing an instruction that
includes M@[AR] or M@aaaH, or after a data access to the
end limit segment (as set in the Segment Control register)
when the persistent source or destination is M@[AR] or
M@aaaH.
Next Free Address Register (NF)
The LIST-XL automatically stores the address of the first
empty memory location in the Next Free Address register,
which is then used as a memory address pointer for M@NF
operations. The Next Free Address register, shown in Table
9 on page 16, can be read using a TCO NF instruction. After
a reset, the Next Free Address register is set to zero.
Either the Foreground or Background Address register will
be active, depending on which register set has been selected,
Rev. 3.1
7
LIST-XL Family
Operational Characteristics
CAM Status
/RESET Condition
Validity bits at all memory locations
CAM/RAM Partitioning
Comparison Masking
Address register auto-increment or auto-decrement
Source and Destination Segment counters count ranges
Address register and Next Free Address register
Page Address and Device Select registers
Control register after reset (including CT15)
Persistent Destination for Command writes
Persistent Source for Command reads
Persistent Source and Destination for Data reads and writes
Configuration Register set
Skip = 0, Empty = 1 (empty)
64 bits CAM, 0 bits RAM
Disabled
Disabled
00B to 11B; loaded with 00B
Contain all 0s
Contain all 0s (no change on software reset)
Contains 0008H
Instruction decoder
Status register
Comparand register
Foreground
Table 4: Device Control State After Reset
Mask Registers (MR1, MR2)
The Mask registers can be used in two different ways, either
to mask compares or to mask data writes and moves. Either
mask register can be selected in the Control register to mask
every compare, or selected by instructions to participate in
data writes or moves to and from Memory. If a bit in the selected
mask register is set to a 0, the corresponding bit in the
Comparand register will enter into a masked compare
operation. If a Mask bit is a 1, the corresponding bit in the
Comparand register will not enter into a masked compare
operation. Bits set to 0 in the mask register cause
corresponding bits in the destination register or memory
location to be updated when masking data writes or moves,
while a bit set to 1 will prevent that bit in the destination from
being changed.
Status Register
The 32-bit Status register, as shown in Table 10 on page 16,
is the default source for Command Read cycles. Bit 31 is the
internal Full flag, which will go LOW if there are no empty
memory locations. Bit 30 is the internal Multiple Match flag,
which will go LOW if a Multiple match was detected. Bits
29 and 28 are the Skip and Empty Validity bits, which reflect
the validity of the last memory location read. After a reset,
the Skip and Empty bits will read 11 until a read or move from
memory has occurred. The rest of the Status register down to
bit 1 contains the address of the Highest-Priority match. After
a reset or a no-match condition, the match address bits will
be all 1s. Bit 0 is the internal Match flag, which will go LOW
if a match was found.
Comparand Register (CR)
The 64-bit Comparand register is the default destination for
data writes and reads, using the Segment Control register to
select which 16-bit segment of the Comparand register is to
be loaded or read out. The persistent source and destination
for data writes and reads can be changed to the mask registers
or memory by SPS and SPD instructions. During an automatic
or forced compare, the Comparand register is simultaneously
compared against the CAM portion of all memory locations
with the correct validity condition. Automatic compares
always compare against valid memory locations, while forced
compares, using CMP instructions, can compare against
memory locations tagged with any specific validity condition.
Either the Foreground or Background MR1 can be set active,
but after a reset, the Foreground MR1 is active by default. MR2
incorporates a sliding mask, where the data can be replicated
one bit at a time to the right or left with no wrap-around by
issuing a Shift Right or Shift Left instruction. The right and
left limits are determined by the CAM/RAM partitioning set
in the Control register. For a Shift Right the upper limit bit
is replicated to the next lower bit, while for a Shift Left the
lower limit bit is replicated to the next higher bit.
The Comparand register may be shifted one bit at a time to
the right or left by issuing a Shift Right or Shift Left instruction,
with the right and left limits for the wrap-around determined
by the CAM/RAM partitioning set in the Control register.
During shift rights, bits shifted off the LSB of the CAM
partition will reappear at the MSB of the CAM partition.
Likewise, bits shifted off the MSB of the CAM partition will
reappear at the LSB during shift lefts.
8
Rev. 3.1
Operational Characteristics
LIST-XL Family
The Memory Array
occurs during Data writes to the Comparand or mask registers
when the destination segment counter reaches the end count
set in the Segment Control register. If there was a match, the
second cycle reads status or associated data, depending on the
state of /CM. The minimum timings for the /E control signal
are given in the Switching Characteristics section on page 18.
Note that at minimum timings the /E signal is
non-symmetrical, and that different cycle types have different
timing requirements, as given in Table 6 on page 15.
Memory Organization
The Memory array is organized into 64-bit words with each
word having an additional two validity bits (Skip and Empty).
By default, all words are configured to be 64 CAM cells.
However, bits 8-6 of the Control register can divide each word
into a CAM field and a RAM field. The RAM field can be
assigned to the least-significant or most-significant portion
of each entry. The CAM/RAM partitioning is allowed on
16-bit boundaries, permitting selection of the configuration
shown in Table 7 on page 15, bits 8-6 (e.g., "001" sets the 48
MSBs to CAM and the 16 LSBs to RAM). Memory Array bits
designated as RAM can be used to store and retrieve data
associated with the CAM content at the same memory
location.
Compare Operations
During a Compare operation, the data in the Comparand
register is compared to all locations in the Memory array
simultaneously. Any mask register used during compares
must be selected beforehand in the Control register. There are
two ways compares are initiated: Automatic and Forced
compares.
Memory Access
There are two general ways to get data into and out of the
memory array: directly or by moving the data through the
Comparand or mask registers.
Automatic compares perform acompare of the contents of the
Comparand register against Memory locations that are tagged
as "Valid," and occur whenever the following happens:
The first way, through direct reads or writes, is set up by issuing
a Set Persistent Destination (SPD) or Set Persistent Source
(SPS) command. The addresses for the direct access can be
directly supplied; supplied from the Address register,
supplied from the Next Free Address register, or supplied as
the Highest-Priority Match address.Additionally, all the
direct writes can be masked by either mask register.
The Destination Segment counter in the Segment
Control register reaches its end limit during writes to
the Comparand or mask registers.
•
After a command write of a TCO CT is executed
(except for a software reset), so that a compare is
executed with the new settings of the Control register.
Forced compares are initiated by CMP instructions using one
of the four validity conditions, V, R, S, and E. The forced
compare against "Empty" locations automatically masks all
64 bits of data to find all locations with the validity bits set
to "Empty," while the other forced compares are masked only
as selected in the Control register.
The second way is to move data via the Comparand or mask
registers. This is accomplished by issuing Data Move
commands (MOV). Moves using the Comparand register can
also be masked by either of the mask registers.
I/O Cycles
The LIST-XL supports four basic I/O cycles: Data Read, Data
Write, Command Read, and CommandWrite.The type of
cycle is determined by the states of the /W and /CM control
inputs. These signals are registered at the beginning of a cycle
by the falling edge of /E. Table 2 on page 2 shows how the
/W and /CM lines select the cycle type.
INITIALIZING THE LIST-XL
Initialization of the LIST-XL is required to configure the
various registers on the device. Since a Control register reset
establishes the operating conditions shown in Table 4 on page
8, restoration of operating conditions better suited for the
application may be required after a reset, whether using the
Control Register reset or the /RESET pin. When the device
powers up, the memory and registers are in an unknown state,
so the /RESET pin must be asserted to place the device in a
known state.
During Read cycles, the DQ15-0 outputs are enabled after
/E goes LOW. During Write cycles, the data or command to
be written is captured from DQ15-0 at the beginning of the
cycle by the falling edge of /E. Figures 1 and 2 on page 10 show
Read and Write cycles respectively. Figure 3 on page 10 shows
typical cycle-to-cycle timing with the Match flag valid at the
end of the Comparand Write cycle. Data writes and reads to
the comparand, mask registers, or memory occur in one to four
16-bit cycles, depending on the settings in the Segment
Control register. The Compare operation automatically
Rev. 3.1
•
9
LIST-XL Family
Operational Characteristics
/E
/W
/CM
DQ15-0
DATA OUT
Figure 1: Read Cycle
/E
/W
/CM
DQ15–0
Figure 2: Write Cycle
COMPARAND WRITE
C YC L E
STATUS READ
C YC L E
/E
ASSOCIATED DATA
READ CYCLE
/CM
/W
DQ15–0
DATA
DATA
/MF, /MM
DATA
/MF AND /MM FLAGS UPDATED
Figure 3: Cycle-to-Cycle Timing Example
Cycle Type
Op-Code
on DQ Bus
Control Bus
/E
/CM
/W
Command read
Command write
Command write
Command write
Command write
Command write
Command write
TCO CT
0000H
TCO CT
8040H
TCO SC
3808H
L
L
L
L
L
L
L
L
L
L
L
L
L
L
H
L
L
L
L
L
L
Command write
SPS M@HM
L
L
L
Comments
Notes
Clear power-up anomalies
Target Control register for reset.
Causes Reset.
Target Control register for initial values.
Control register value.
Target Segment Count Control register
Set both Segment counters to write to Segment 1, 2, and 3, and
read from Segment 0.
Set Data reads from Segment 0 of the Highest-Priority match
1
2
Table 5: Initialization Routine Example
Notes:
1.
2.
A software reset using a TCO CT followed by 0000H puts the device in a known state. Good programming practice dictates a software reset for
initialization to account for all possible conditions.
A typical LIST-XL control environment: 48 CAM bits, 16 RAM bits; Disable comparison masking; and Enable address increment. See Table 7 for
Control Register bit assignments.
10
Rev. 3.1
Instruction Set Descriptions
LIST-XL Family
INSTRUCTION SET DESCRIPTIONS
Instruction: Temporary Command Override (TCO)
Binary Op-Code: 0000 0010 00dd d000
Instruction: Select Persistent Source (SPS)
Binary Op-Code: 0000 f000 0000 0sss
f
Address Field flag
sss
Selected source
This instruction selects a persistent source for data reads, until
another SPS instruction changes it or a reset occurs. The
default source after reset for Data Read cycles is the
Comparand register. Setting the persistent source to M@aaaH
loads the Address register with "aaaH" and the first access to
that persistent source will be at aaaH, after which the AR value
increments or decrements as set in the Control register.The
SPS M@[AR]instruction does the same except the current
Address Register value is used.
ddd
Register selected as source or
destination for only the next
Command Read or Write cycle
TCO instruction selects a register as the source or destination
for only the next Command Read or Write cycle, so a value
can be loaded or read out of the register. Subsequent Command
Read or Write Cycles revert to reading the Status register and
writing to the Instruction decoder.All registers but the NF, PS,
and PD can be written to, and all can be read from. The Status
register is only available via non-TCO Command Read
cycles. Reading the PS register also outputs the Device ID on
bits 15-4 as shown in Table 11 on page 16.
Instruction: Select Persistent Destination (SPD)
Binary Op-Code: 0000 f001 mmdd dvvv
Instruction: Data Move (MOV)
Binary Op-Code: 0000 f011 mmdd dsss or
0000 f011 mmdd dvss
f
mm
ddd
vvv
Address Field flag
Mask Register select
Selected destination
Validity setting for Memory Location
destinations
This instruction selects a persistent destination for data writes,
which remains until another SPD instruction changes it or a
reset occurs. The default destination for Data Write cycles is
the Comparand register after a reset. When the destination is
the Comparand register or the memory array, the data written
may be masked by either Mask Register 1 or Mask Register
2, so that only destination bits corresponding to bits in the mask
register set to 0 will be modified. An automatic compare will
occur after writing the last segment of the Comparand or mask
registers, but not after writing to memory. Setting the
persistent destination to M@aaaH loads the Address register
with "aaaH," and the first access to that persistent destination
will be at aaaH, after which the AR value increments or
decrements as set in the Control register. The SPD M@[AR]
instruction does the same except the current Address Register
value is used.
Rev. 3.1
f
mm
ddd
sss
v
Address Field flag
Mask Register select
Destination of data
Source of data
Validity setting if destination is a
Memory location
The MOV instruction performs a 64-bit move of the data in
the selected source to the selected destination. If the source
or destination is aaaH, the Address register is set to "aaaH."
For MOV instructions to or from aaaH or [AR], the Address
register will increment or decrement from that value after the
move completes, as set in the Control register. Data transfers
between the Memory array and the Comparand register may
be masked by either Mask Register 1 or Mask Register 2, in
which case, only those bits in the destination which
correspond to bits in the selected mask register set to 0 will
be changed. A Memory location used as a destination for a
MOV instruction may be set to Valid or left unchanged. If the
source and destination are the same register, no net change
occurs (a NOP).
11
LIST-XL Family
Instruction Set Descriptions
Instruction: Validity Bit Control (VBC)
Binary Op-Code: 0000 f100 00dd dvvv
Instruction: Special Instructions
Binary Op-Code: 0000 0110 00dd drrr
f
Address Field flag
ddd
Destination of data
vvv
Validity setting for Memory location
The VBC instruction sets the Validity bits at the selected
memory locations to the selected state. This feature can be
used to find all valid entries by using a repetitive sequence
of CMP V through a mask of all 1s followed by a VBC HM,
ddd
Target resource
rrr
Operation
Two alternate sets of configuration registers can be selected
by using the Select Foreground and Select Background
Registers instructions. These registers are the Control,
Segment Control, Address, Mask Register 1, and the PS and
PD registers. An RSC instruction resets the Segment Control
register count values for both the Destination and Source
counters to the original Start limits. The Shift instructions shift
the designated register one bit right or left. The right and left
limits for shifting are determined by the CAM/RAM
partitioning set in the Control register. The Comparand
register is a barrel-shifter, and for the example of a device set
to 64 bits of CAM executing a Shift Comparand Right
instruction, bit 0 is moved to bit 63, bit 1 is moved to bit 0,
and bit 63 is moved to bit 62. For a Shift Comparand Left
instruction, bit 63 is moved to bit 0, bit 0 is moved to bit 1,
and bit 62 is moved to bit 63. MR2 acts as a sliding mask, where
for a Shift Right instruction bit 1 is moved to bit 0, while bit
0 "falls off the end," and bit 63 is replicated to bit 62. For a
Shift Mask Left instruction, bit 0 is replicated to bit 1, bit 62
is moved to bit 63, and bit 63 "falls off the end." With shorter
width CAM fields, the bit limits on the right or left move to
match the width of CAM field.
S. If the VBC target is aaaH, the Address register is set to
"aaaH." For VBC instructions to or from aaaH or [AR], the
Address register will increment or decrement from that value
after the operation completes, as set in the Control register.
Instruction: Compare (CMP)
Binary Op-Code: 0000 0101 0000 0vvv
vvv
Validity condition
A CMP V, S, or R instruction forces a Comparison of Valid,
Skipped, or Random entries against the Comparand register
through a mask register, if one is selected. During a CMP E
instruction, the compare is only done on the Validity bits and
all data bits are automatically masked.
Notes:
* Instruction cycle lengths given in Table 6 on page 15.
† If f=1, the instruction requires an absolute address to be supplied on the following cycle as Command write. The value
supplied on the second cycle will update the address register. After operations involving M@[AR] or M@aaaH, the
Address register will be incremented or decremented depending on the setting in the Control register.
12
Rev. 3.1
Instruction Set Summary
LIST-XL Family
INSTRUCTION SET SUMMARY
Mnemonic Format: INS dst, src[msk], val
INS: Instruction mnemonic
dst: Destination of the data
src: Source of the data
msk: Mask register used
val: Validity condition set at the location written
Instruction: Select Persistent Destination (continOperation
Masked by MR1
Masked by MR2
Mem. at High.-Prio. Match, Random
Instruction: Select Persistent Source
Operation
Mnemonic
Comparand Register
SPS CR
0000H
Mask Register 1
SPS MR1
0001H
Mask Register 2
SPS MR2
0002H
Memory Array at Addr. Reg.
SPS M@[AR]
0004H
Memory Array at Address
SPS M@aaaH
0804H
Mem. at Highest-Priority Match
SPS M@HM
0005H
Op-Code
Mnemonic
Comparand Register
SPD CR
0100H
Masked by MR1
SPD CR[MR1]
0140H
Masked by MR2
SPD CR[MR2]
0180H
Mask Register 1
SPD MR
0108H
Mask Register 2
SPD MR2
0110H
Mem. at Addr. Reg. set Valid
SPD M@[AR],V
0124H
Masked by MR1
SPD M@[AR][MR1],V
0164H
Masked by MR2
SPD M@[AR][MR2],V
01A4H
SPD M@[AR],E
0125H
Masked by MR1
SPD M@[AR][MR1],E
0165H
Masked by MR2
SPD M@[AR][MR2],E
01A5H
SPD M@[AR],S
0126H
Mem. at Addr. Reg. set Skip
01AEH
012FH
016FH
SPD M@HM[MR2],R
01AFH
Masked by MR2
Mem. at Next Free Addr., Empty
SPD M@NF,V
0134H
SPD M@NF[MR1],V
0174H
SPD M@NF[MR2],V
01B4H
SPD M@NF,E
0135H
MaskedbyMR1
SPD M@NF[MR1],E
0175H
MaskedbyMR2
SPD M@NF[MR2],E
01B5H
Mem. at Next Free Addr., Skip
SPD M@NF,S
0136H
Masked by MR1
SPD M@NF[MR1],S
0176H
Masked by MR2
SPD M@NF[MR2],S
01B6H
0137H
Masked by MR1
SPD M@NF[MR1],R
0177H
Masked by MR2
SPD M@NF[MR2],R
01B7H
Instruction: Temporary Command Override
Operation
Mnemonic
Control Register
TCO CT
0200H
Segment Control Register
TCO SC
0210H
Read Next Free Address
TCO NF
0218H
Address Register
TCO AR
0220H
Read Persistent Source
TCO PS
0230H
Read Persistent Destination
TCO PD
0238H
SPD M@[AR][MR1],S
0166H
Masked by MR2
SPD M@[AR][MR2],S
01A6H
SPD M@[AR],R
0127H
Operation
SPD M@[AR][MR1],R
0167H
Comparand Register from:
Masked by MR1
SPD M@HM[MR2],S
SPD M@HM,R
Masked by MR2
Masked by MR1
Mem. at Addr.Reg. set Random
016EH
SPD M@HM[MR1],R
Masked by MR1
Op-Code
012EH
SPD M@HM[MR1],S
Mem. at Next Free Addr., Random SPD M@NF,R
Operation
Op-Code
Masked by MR1
Mem. at Next Free Addr., Valid
Instruction: Select Persistent Destination
Mem. at Addr. Reg. set Empty
Mnemonic
Mem. at Highest-Prio. Match, Skip SPD M@HM,S
Op-Code
Instruction: Data Move
Mnemonic
Op-Code
SPD M@[AR][MR2],R
01A7H
No Operation
NOP
0300H
SPD M@aaaH,V
0924H
Mask Register 1
MOV CR,MR1
0301H
Masked by MR1
SPD M@aaaH[MR1],V
0964H
Mask Register 2
MOV CR,MR2
0302H
Masked by MR2
SPD M@aaaH[MR2],V
09A4H
Memory at Address Reg.
MOV CR,[AR]
0304H
MOV CR,[AR][MR1]
0344H
MOV CR,[AR][MR2]
0384H
MOV CR,aaaH
0B04H
Masked by MR2
Memory at Address set Valid
SPD M@aaaH,E
0925H
Masked by MR1
Masked by MR1
SPD M@aaaH[MR1],E
0965H
Masked by MR2
Masked by MR2
SPD M@aaaH[MR2],E
09A5H
SPD M@aaaH,S
0926H
Masked by MR1
MOV CR,aaaH[MR1]
0B44H
Masked by MR2
MOV CR,aaaH[MR2]
0B84H
MOV CR,HM
0305H
Memory at Address set Empty
Memory at Address set Skip
Memory at Address
Masked by MR1
SPD M@aaaH[MR1],S
0966H
Masked by MR2
SPD M@aaaH[MR2],S
09A6H
SPD M@aaaH,R
0927H
MaskedbyMR1
MOV CR,HM[MR1]
0345H
SPD M@aaaH[MR1],R
0967H
MaskedbyMR2
MOV CR,HM[MR2]
0385H
0308H
Memory at Address set Random
Masked by MR1
Masked by MR2
SPD M@aaaH[MR2],R
Mem. at Highest-Prio. Match
Mask Register 1 from:
09A7H
Comparand Register
MOV MR1,CR
Masked by MR1
SPD M@HM[MR1],V
016CH
No Operation
NOP
0309H
Masked by MR2
SPD M@HM[MR2],V
01ACH
Mask Register 2
MOV MR1,MR2
030AH
Mem. at Highest-Prio. Match, Valid SPD M@HM,V
012CH
012DH
Memory at Address Reg.
MOV MR1,[AR]
030CH
Masked by MR1
SPD M@HM[MR1],E
016DH
Memory at Address
MOV MR1,aaaH
0B0CH
Masked by MR2
SPD M@HM[MR2],E
01ADH
Mem. at Highest-Prio. Match
MOV MR1,HM
030DH
Mem. at Highest-Prio. Match, Emp. SPD M@HM,E
Rev. 3.1
13
LIST-XL Family
Instruction Set Summary
Instruction: Data Move (continued)
Operation
Mnemonic
Instruction: Validity Bit Control
Op-Code
Operation
Mask Register 2 from:
Mnemonic
Op-Code
Set Validity bits at Address Register
Comparand Register
MOV MR2,CR
0310H
Set Valid
VBC [AR],V
0424H
Mask Register 1
MOV MR2,MR1
0311H
Set Empty
VBC [AR],E
0425H
No Operation
NOP
0312H
Set Skip
VBC [AR],S
0426H
Memory at Address Reg.
MOV MR2,[AR]
0314H
Set Random Access
VBC [AR],R
0427H
Memory at Address
MOV MR2,aaaH
0B14H
Mem. at Highest-Prio. Match
MOV MR2,HM
0315H
Set Valid
VBC aaaH,V
0C24H
Set Empty
VBC aaaH,E
0C25H
Set Skip
VBC aaaH,S
0C26H
Set Random Access
VBC aaaH,R
0C27H
Set Validity bits at Address
Memory at Address Register, No Change to Validity bits, from:
Comparand Register
MOV [AR],CR
0320H
Masked by MR1
MOV [AR],CR[MR1]
0360H
Masked by MR2
MOV [AR],CR[MR2]
03A0H
Mask Register 1
MOV [AR],MR1
0321H
Set Valid
VBC HM,V
042CH
Mask Register 2
MOV [AR],MR2
0322H
Set Empty
VBC HM,E
042DH
Set Skip
VBC HM,S
042EH
Set Random Access
VBC HM,R
042FH
Set Validity bits at Highest-Priority Match
Memory at Address Register, Location set Valid, from:
Comparand Register
Masked by MR1
Masked by MR2
MOV [AR],CR,V
0324H
MOV [AR],CR[MR1],V
0364H
Set Validity bits at All Matching Locations
MOV [AR],CR[MR2],V
03A4H
Set Valid
VBC ALM,V
043CH
Mask Register 1
MOV [AR],MR1,V
0325H
Set Empty
VBC ALM,E
043DH
Mask Register 2
MOV [AR],MR2,V
0326H
Set Skip
VBC ALM,S
043EH
Set Random Access
VBC ALM,R
043FH
Operation
Mnemonic
Op-Code
Compare Valid Locations
CMP V
0504H
Compare Empty Locations
CMP E
0505H
Compare Skipped Locations
CMP S
0506H
Comp. Random Access Locations CMP R
0507H
Memory at Address, No Change to Validity bits, from:
Comparand Register
MOV aaaH0,CR
0B20H
Masked by MR1
MOV aaaH,CR[MR1]
0B60H
Masked by MR2
MOV aaaH,CR[MR2]
0BA0H
Mask Register 1
MOV aaaH,MR1
0B21H
Mask Register 2
MOV aaaH,MR2
0B22H
Instruction: Compare
Memory at Address, Location set Valid, from:
Comparand Register
MOV aaaH,CR,V
0B24H
Masked by MR1
MOV aaaH,CR[MR1],V
0B64H
Masked by MR2
MOV aaaH,CR[MR2],V
0BA4H
Mask Register 1
MOV aaaH,MR1,V
0B25H
Mask Register 2
MOV aaaH,MR2,V
0B26H
Instruction: Special Instructions
Memory at Highest-Priority Match, No Change to Validity bits, from:
Comparand Register
Masked by MR1
Masked by MR2
MOV HM,CR
MOV HM,CR[MR1]
MOV HM,CR[MR2]
0328H
0368H
03A8H
Mask Register 1
MOV HM,MR1
0329H
Mask Register 2
MOV HM,MR2
032AH
Memory at Highest-Priority Match, Location set Valid, from:
Comparand Register
MOV HM,CR,V
032CH
Masked by MR1
MOV HM,CR[MR1],V
036CH
Masked by MR2
MOV HM,CR[MR2],V
03ACH
Mask Register 1
MOV HM,MR1,V
032DH
Mask Register 2
MOV HM,MR2,V
032EH
Operation
Mnemonic
Shift Comparand Right
SFT CR, R
Op-Code
0600H
Shift Comparand Left
SFT CR, L
0601H
Shift Mask Register 2 Right
SFT M2, R
0610H
Shift Mask Register 2 Left
SFT M2, L
0611H
Select Foreground Registers
SFR
0618H
Select Background Registers
SBR
0619H
Reset Seg. Cont. Reg. to Initial Val.
RSC
061AH
Memory at Next Free Address, No Change to Validity bits, from:
Comparand Register
MOV NF,CR
0330H
Masked by MR1
MOV NF,CR[MR1]
0370H
Masked by MR2
MOV NF,CR[MR2]
03B0H
Mask Register 1
MOV NF,MR1
0331H
Mask Register 2
MOV NF,MR2
0332H
Memory at Next Free Address, Location set Valid, from:
Comparand Register
MOV NF,CR,V
0334H
Masked by MR1
MOV NF,CR[MR1],V
0374H
Masked by MR2
MOV NF,CR[MR2],V
03B4H
Mask Register 1
MOV NF,MR1,V
0335H
Mask Register 2
MOV NF,MR2,V
0336H
14
Rev. 3.1
Instruction Set Summary
LIST-XL Family
Instruction Cycle Lengths
Cycle
Length
Short
Medium
Long
Cycle Type
Command Write
Command Read
Data Read
Comparand register
(not last segment)
Mask register
(not last segment)
MOV reg, reg
TCO reg (except CT)
TCO CT (non-reset, HMA invalid)
SPS, SPD, SFR
SBR, RSC, NOP
MOV reg, mem
TCO CT (reset)
VBC (NFA invalid)
Data Write
Status register or
16-bit register Sheets
MOV mem, reg
TCO CT (non-reset, HMA valid)
CMP
VBC (NFA valid)
Memory array
(NFA invalid)
Comparand register
Mask register
Memory array
(NFA valid)
Comparand register
(last segment)
Mask register
(last segment)
Memory array
Table 6: Instruction Cycle Lengths
Note: The specific timing requirements for Short, Medium, and Long cycles are given in the Switching Characteristics section under the
tELEH parameter. For two cycle Command Writes (TCO reg or any instruction with “aaaH” as the source or destination), the first
cycle is short, and the second cycle is the length given.
Rev. 3.1
15
LIST-XL Family
Register Bit Assignments
REGISTER BIT ASSIGNMENTS
Device
Bit(s)
15
Name
Description
RST
0 = Reset
14:9
0
Reserved
8:6
CAM/RAM Part
000 = 64 CAM/0 RAM
001 = 48 CAM/16 RAM
010 = 32 CAM/32 RAM
011 = 16 CAM/48 RAM
100 = 48 RAM/16 CAM
101 = 32 RAM/32 CAM
110 = 16 RAM/48 CAM
111 = No Change
5:4
Comp. Mask
00 = None
01 = MR1
10 = MR2
11 = No Change
3:2
AR Inc/Dec
00 = Increment
01 = Decrement
10 = Disable
11 = No Change
1:0
0
Reserved
All
Table 7: Control Register Bits
Note: D15 reads back as 0
Device
Bit(s)
15
All
Name
Description
SDL
0 = Set Destination Segment Limits
1 = No Change
14:13
DCSL
00–11 = Destination Count Start Limit
12:11
DCEL
00–11 = Destination Count End Limit
10
SSL
0 = Set Source Segment Limits
1 = No Change
9:8
SCSL
00–11 = Source Count Start Limit
7:6
SCEL
00–11 = Source Count End Limit
LDC
0 = Load Destination Segment Count
1 = No Change
5
4:3
2
1:0
DSCV
00–11 = Destination Seg. Count Value
LSC
0 = Load Source Segment Count
1 = No Change
SSCV
00–11 = Source Segment Count Value
Table 8: Segment Control Register Bits
Note: D15, D10, D5, and D2 are read back as 0s.
Device
3640L(F)
5640L(F)
Bit(s)
15:8
Name
Description
Reserved
All 0’s
7:0
NF7-0
Next Free Address
15:9
Reserved
All 0’s
8:0
NF8-0
Next Free Address
Table 9: Next Free Address Bits
Note: The Next Free Address register is read only, and is accessed by performing a Command Read cycle immediately following a TCO
NF Instruction.
16
Rev. 3.1
Register Bit Assignments
Device
Bit(s)
31
30
All
3640L(F)
5640L(F)
All
LIST-XL Family
Name
Description
/FL
0 = Internal CAM Full
/MM
0 = Internal Multiple Match
29:28
VB1-0
00 = Valid
01 = Empty
10 = Skip
11 = RAM
27:9
0
Reserved
AM7–0
Match Address
0
Reserved
8:1
27:10
9:1
0
AM8–0
Match Address
/MF
Match Flag
Table 10: Status Register Bits
Note: The Status register is read only, and is accessed by performing Command Read cycles. On the first cycle, bits 15–0 are output,
and if a second Command Read cycle is issued immediately after the first Command Read cycle, bits 31–16 are output.
Device
Bit(s)
Name
Description
3640L(F)
15:4
DEVID
Device ID = 341H
5640L(F)
15:4
DEVID
Device ID = 541H
All
3:0
PS
Persistent Source Setting
Table 11: Persistent Source Register Bits
Note: The Persistent Source register is read only, and is accessed by performing a Command Read cycle immediately following a TCO
PS instruction.
Rev. 3.1
17
LIST-XL Family
Electrical
ELECTRICAL
Absolute Maximum Ratings
Supply Voltage
-0.5 to 4.6 Volts
Voltage on all other pins
-0.5 to VCC +0.5 Volts
(-2 Volts for 10 ns, measured at the 50% point)
Temperature under bias
-55° C to 125° C
Storage Temperature
-55° C to 125° C
DC Output Current
20 mA (per output, one at a time, one second
duration)
Symbol
Parameter
Stresses exceeding those listed under Absolute
Maximum Ratings may induce failure. Exposure to
absolute maximum ratings for extended periods may
reduce reliability. Functionality at or above these
conditions is not implied.
All voltages referenced to GND.
Min.
Typical
Max.
Units
3.0
3.3
3.6
Volts
VCC
Operating supply voltage
VIH
Input voltage logic 1
2.0
VCC + 0.5
Volts
VIL
Input voltage logic 0
-0.5
0.8
Volts
TA
Ambient operating temperature
Commercial
0
70
°C
Industrial
-40
85
°C
Notes
1, 2
Still air
Table 12: Operating Conditions (Voltages referenced to GND at the device pin)
Notes:
1.
2.
1.0 Volts for a duration of 10 ns measured at the 50% amplitude points for Input-only lines (see Figure 5 on page 19).
Common I/O lines are clamped, so that signal transients can not fall below -0.5 Volts
.
Symbol
Parameter
Min.
ICC
Average Power Supply Current
ICC(SB)
Stand-by Power Supply Current
VOH
Output voltage logic 1
VOL
Output voltage logic 0
IIZ
Input leakage current
IOZ
Output leakage current
Typical
Max.
Units
20
30
mA
2
mA
2.4
0.4
Others
-2
/RESET
6
9
-10
Notes
tELEL = tELEL(min);9
/E = HIGH
Volts
IOH = -2.0 mA
Volts
IOL = 4.0 mA
+2
μA
12
Kohms
10
μA
VSS ≤ VIN ≤ VCC
VIN = 0 V
VSS ≤ VOUT ≤ VCC
DQN = High Impedance
Table 13: DC Electrical Characteristics
Symbol
CIN
COUT
Parameter
Max.
Units
Notes
Input capacitance
6
pF
f = 1 MHz, VIN = 0V
Output capacitance
7
pF
f = 1 MHz, VOUT = 0V
Table 14: Capacitance
Input Signal Transitions
0.0 Volts to 3.0 Volts
Input Signal Rise Time
< 3 ns
Input Signal Fall Time
< 3 ns
Input Timing Reference Level
1.5 Volts
Output Timing Reference Level 1.5 Volts
Table 15: AC Test Conditions
18
Rev. 3.1
Switching
LIST-XL Family
SWITCHING
Switching Test Figures
Vcc
R1
Input
Waveform
Device
Under Test
0V
V IL ( MIN)
C1
50% Amplitude
Point
R2
10ns
Figure 4: AC Test Load
Parameter
Figure 5: Input Signal Waveform.
All Devices
Units
VCC
3.3
Volts
R1
635
Ohms
R2
702
Ohms
Test Load A
30
pF
Test Load B
5
pF
C1 (includes jig)
Table 16: Switching Test Figures Component Values
Rev. 3.1
19
LIST-XL Family
SWITCHING CHARACTERISTICS (see note 3)
SWITCHING CHARACTERISTICS (SEE NOTE 3)
Cycle Time
No.
Symbol
1
tELEL
2
tELEH
Parameter
-70
Min.
Chip Enable Compare Cycle Time
Chip Enable LOW Pulse Width
-90
Max.
Min.
Max
Notes
70
90
Short Cycle
15
25
4
Medium Cycle
35
50
4
Long Cycle
55
75
4
3
tEHEL
Chip Enable HIGH Pulse Width
15
15
4
tCVEL
Control Input to Chip Enable LOW Setup Time
2
2
5
5
tELCX
Control Input from Chip Enable LOW Hold Time
10
10
5
6
tELQX
Chip Enable LOW to Outputs Active
3
3
6
7
tELQV
Chip Enable LOW to Outputs Valid
8
tEHQZ
Chip Enable HIGH to Outputs HIGH-Z
3
9
tDVEL
Data to Chip Enable LOW Setup Time
2
2
10
tELDX
Data from Chip Enable LOW Hold Time
10
10
11
tELFFV
Chip Enable LOW to Full Flag Valid
12
tEHMFX
Chip Enable HIGH to /MF, /MM Invalid
13
tEHMFV
Chip Enable HIGH to /MF, /MMValid
14
tRLRH
Register Read
30
50
4,6
Memory Read
52
75
4,6
15
7
10
3
50
0
75
0
18
Reset LOW Pulse Width
100
25
100
8
Table 17: Switching Characteristics
Notes:
1.
2.
3.
4.
5.
6.
7.
8.
9.
-1.0 Volts for a duration of 10 ns measured at the 50% amplitude points for Input-only lines (see Figure 5 on page 19).
Common I/O lines are clamped, so that signal transients can not fall below -0.5 Volts.
Over ambient operating temperature range and Vcc(min.) to Vcc(max.).
See Table 6 on page 15.
Control signals are /W, and /CM.
With load specified in Figure 4 on page 19, Test Load A.
With load specified in Figure 4 on page 19, Test Load B.
/E must be HIGH during this period to ensure accurate default values in the configuration registers.
With output and I/O pins unloaded.
20
Rev. 3.1
Timing Diagrams
LIST-XL Family
TIMING DIAGRAMS
2
2
3
/E
/E
4
5
4
5
4
5
9
10
/W
/W
4
/CM
5
/CM
DQ15 - 0
7
8
11
DQ15 - 0
/FF
6
Figure 7: Write Cycle
Figure 6: Read Cycle
1
2
3
/E
4
5
4
5
/W
/CM
V AL ID
13
/M F, /M M
12
Figure 8: Compare Cycle
Rev. 3.1
21
3
LIST-XL Family
PACKAGE OUTLINE
PACKAGE OUTLINE
Hd
He
A2
E
A1
D
L
1
Pin 1
e
L
c
b
Figure 9: 32-Pin LQFP Package
Dim. A1
Dim. A2
Dim. b
Dim. c
Dim. D
Dim. E
Dim. e
Dim. Hd
Dim. He
Dim. L1
Min.
0.05
1.35
0.30
0.09
7.00
7.00
0.80
9.00
9.00
1.00
0.45
Max.
0.15
1.45
0.45
0.02
nom
0.75
nom
Dim. L
Table 18: 32-Pin LQFP Dimensions (dimensions are in mm)
ORDERING INFORMATION
Part Number
Cycle Time
Package
Temperature
Voltage
MU9C3640L-70TZC
MU9C3640L-90TZC
70 ns
90 ns
32-Pin LQFP
32-Pin LQFP
0–70° C
0–70° C
3.3 ± 0.3
3.3 ± 0.3
MU9C3640L-90TZI
90 ns
32-Pin LQFP
-40–85° C
3.3 ± 0.3
MU9C5640L-70TZC
MU9C5640L-90TZC
70 ns
90 ns
32-Pin LQFP
32-Pin LQFP
0–70° C
0–70° C
3.3 ± 0.3
3.3 ± 0.3
MU9C5640L-90TZI
90 ns
32-Pin LQFP
-40–85° C
3.3 ± 0.3
ORDERING INFORMATION FOR LEAD-FREE PRODUCTS:
For ordering Lead-Free products please add an "F" directly after the product name (in front of the speed grade).
Example: MU9C5640LF-90TZC
MUSIC Semiconductors’ agent or distributor:
Worldwide Headquarters
MUSIC Semiconductors
5850 T.G. Lee Blvd, Suite 330
Orlando, FL 32822
USA
Tel: 407 850-1035
Fax: 407 850-1063
MUSIC Semiconductors reserves the right to make changes to its products and specifications at
any time in order to improve on performance, manufacturability or reliability. Information
furnished by MUSIC is believed to be accurate, but no responsibility is assumed by MUSIC
Semiconductors for the use of said information, nor for any infringements of patents or of other
third-party rights which may result from said use. No license is granted by implication or
otherwise under any patent or patent rights of any MUSIC company.
© Copyright 2000 and 2002, MUSIC Semiconductors
North American Sales
MUSIC Semiconductors
121 Union Ave. , Suite 1
Middlesex, NJ 08846
USA
Tel: 732 469-1886
Fax: 732 469-2397
Asian Headquarters
MUSIC Semiconductors
110 Excellence Ave., SEPZ 1
Carmelray Industrial Park
Canlubang, Laguna
Philippines 4028
Tel: +63 49 549-1480
Fax: +63 49 549-1024
Sales Tel/Fax: +632 723-6215
http: //www.musicsemi.com
European Headquarters
MUSIC Semiconductors
Raadhuisplein 10
6436 BW Amstenrade
The Netherlands
Tel: +31 43 455-2675
Fax: +31 43 455-1573
email: [email protected]
22
Rev. 3.1