Data Sheet LIST-XL Family APPLICA TION BENEFITS APPLICATION DISTINCTIVE CHARACTERISTICS Accelerate table search and data translation operations such as those found in: ● LAN Address processing ● Cache tag buffers ● Hash collision resolution ● Branch tables ● Data decoders ● Other processes or algorithms that require table searches ● 256 word and 512 word by 64-bit contentaddressable 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; 32-Pin LQFP; 3.3 volt operation D A T A (64) MUX D Q (15–0) (16 ) I/O B U F F ERS D A T A (16) VC C G ND D EM U X D A T A (16) D A T A (64) C O M M A N D S & ST A T U S (16 ) C O M PA R A N D SO U R C E A N D D EST IN A T IO N SEG M EN T C O U N T ER S M A SK 1 M A SK 2 /W C O N TR O L /C M /R ESE T A D D R E SS A D D R E SS N N EXT F R EE A D D R ESS (R /O ) C O N TR O L SEG M EN T C O N T R O L ST A T U S (15–0 ) (R /O )* ST A T U S (3 1–16) (R / O ) M A T C H A D D R , /M F /M M , /F F CAM ARRAY 2N W O R D S X 64 B IT S PR IO R IT Y EN C O D ER A D D R ESS D EC O D ER IN ST R U C T IO N (W /O )* 2N x 2 VA L ID IT Y B IT S /M F /E /M M /FF N +1 2 R EG IST ER S ET Block Diagram LANCAM, the MUSIC logo, and the phrase “MUSIC Semiconductors” are registered trademarks of MUSIC Semiconductors. MUSIC is a trademark of MUSIC Semiconductors. Certain features of this device are patented under US Patent 5,383,146. 13 June 2001 Rev Rev.. 2 LIST-XL GENERAL DESCRIPTION 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. 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. 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. OPERA TIONAL OVER VIEW OPERATIONAL OVERVIEW 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 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. 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 triggers / FF G ND /C M 25 26 27 Cycle T ype Type Command Write Cycle Data Write Cycle Command Read Cycle Data Read Cycle V CC D Q0 24 2 23 /MM /MF V CC 3 22 V CC G ND 4 21 G ND G ND 5 20 /R E SE T D Q6 6 7 19 18 17 V CC D Q7 NC 32-pin 3 2 -pLQFP in (T op V iew) (Top View) 8 D Q 15 D Q 14 D Q 13 D Q 12 D Q 11 D Q 10 D Q9 Table 2: I/O Cycles Rev Rev.. 2 1 D Q5 D Q8 /CM LOW HIGH LOW HIGH D Q4 16 15 14 13 12 11 10 9 /W LOW LOW HIGH HIGH 28 29 30 31 32 Table 1: V alidity Bits vs. V alidity T ypes Validity Validity Types D Q1 Validity T ype Type Valid Empty Skip RAM D Q2 Empty Bit 0 1 0 1 D Q3 Skip Bit 0 0 1 1 Pinout Diagram 2 /E /W LIST-XL 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. /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. /FF (Full Flag, Output, TTL) The /FF output goes LOW when no empty memory locations exist within the device. /RESET (Reset, Input, TTL) /RESET must be driven LOW to place the device in a known 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 timeout. /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 Supply,, Ground) These pins are the power supply connections to the LISTXL. 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. 3 Rev Rev.. 2 LIST-XL FUNCTIONAL DESCRIPTION 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). 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. 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 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. 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 preloaded with values useful for comparing input data, often called filtering, while the background set would be preloaded 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. 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. 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 Rev Rev.. 2 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 4 LIST-XL FUNCTIONAL DESCRIPTION Continued 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. 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. 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. 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. OPERA TIONAL CHARACTERISTICS OPERATIONAL 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). 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 resources on the 64-bit bus: Comparand register, Mask Register 1, Mask Register 2, and the Memory array. THE CONTROL BUS The default destination for Command Write cycles is the Instruction decoder, while the default source for Command Read cycles is the Status register. 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. 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. 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. 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 5 Rev Rev.. 2 LIST-XL OPERA TIONAL CHARACTERISTICS Continued OPERATIONAL THE REGISTER SET 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. 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. 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. 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. 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. 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. 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. 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 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. 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. 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 MOV aaaH, 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. 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. Rev Rev.. 2 6 LIST-XL OPERA TIONAL CHARACTERISTICS Continued OPERATIONAL Cycle T ype /E Type Cmd Write L Cmd Read L Data Write L Data Read L H /CM /W I/O Status SPS SPD TCO Operation Notes L IN L Load Instruction decoder 1 IN 2,3 ✓ Load Address register 3 IN ✓ Load Control register 3 IN Load Segment Control register ✓ 3 H OUT L Read Next Free Address register ✓ OUT 3 ✓ Read Address register OUT Read Status Register bits 15–0 4 OUT Read Status Register bits 31–16 5 3 OUT ✓ Read Control register 3 OUT ✓ Read Segment Control register 3,10 OUT Read Current Persistent Source or Destination ✓ L H IN Load Comparand register ✓ 6,9 IN Load Mask Register 1 ✓ 7,9 IN Load Mask Register 2 7,9 ✓ 7,9 IN Write Memory Array at address ✓ 7,9 IN Write Memory Array at Next Free address ✓ 7,9 IN Write Memory Array at Highest-Priority match ✓ H H OUT Read Comparand register ✓ 6, 9 OUT Read Mask Register 1 ✓ 8, 9 OUT Read Mask Register 2 ✓ 8, 9 8, 9 OUT Read Memory Array at address ✓ 7, 8 OUT Read Memory Array at Highest-Priority match ✓ X X HIGH-Z Deselected Notes: 1. Default Command Write cycle destination (does not require a TCO instruction). 2. 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. 3. Loaded or read on the Command Write of Read cycle immediately following a TCO instruction. Active for one Command Write or Read cycle only. NFA register cannot be loaded this way. 4. Default Command Read cycle source (does not require a TCO instruction). 5. 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 will access the Status Register Bits 15–0. 6. 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. 7. Selected by executing a Select Persistent Destination instruction. 8. Selected by executing a Select Persistent Source instruction. 9. Access may require multiple 16-bit Read or Write cycles. The Segment Control register is used to control the selection of the desired 16-bit segment(s) by establishing the Segment counters’ start and end limits and count values. 10. A Command Read cycle after a TCO PS or TCO PD reads back the Instruction decoder bits that were last set to select a persistant source or destination. The TCO PS instruction will also read back the Device ID. Table 3: Input/Output Operations 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. selected, and only the active Address register will be written to or read from. 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 7 Rev Rev.. 2 LIST-XL OPERA TIONAL CHARACTERISTICS Continued OPERATIONAL CAM Status Validity bits at all memory locations CAM/RAM Partitioning Comparison Masking Address register auto-increment or -decrement Source and Destination Segment counters count ranges Address register and Next Free Address register 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 /RESET Condition Skip = 0, Empty = 1 (empty) 64 bits CAM, 0 bits RAM Disabled Disabled 00B to 11B; loaded with 00B Contains all 0s Contains 0008H Instruction decoder Status register Comparand register Foreground Table 4: Device Control State after Reset 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. 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. 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 MEMOR Y ARRA Y MEMORY ARRAY 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. Rev Rev.. 2 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 8 LIST-XL OPERA TIONAL CHARACTERISTICS Continued OPERATIONAL 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. 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. COMP ARE OPERA TIONS COMPARE OPERATIONS 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. 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. 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. Automatic compares perform a compare of the contents of the Comparand register against Memory locations that are tagged as “Valid,” and occur whenever the following happens: ● 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 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 LIST-XL supports four basic I/O cycles: Data Read, Data Write, Command Read, and Command Write. 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. 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 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. 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. 9 Rev Rev.. 2 LIST-XL OPERA TIONAL CHARACTERISTICS Continued OPERATIONAL /E /W /CM DQ15–0 DATA OUT Figure 1: Read Cycle /E /W /C M DQ 1 5 – 0 Figure 2: Write Cycle CO M P AR AN D W RITE S TA TU S RE AD A S S O C IA T ED D A T A CY C L E CY C L E RE A D C Y CL E /E /C M /W DQ 1 5 – 0 /M F DA TA DA TA /M F A N D / M M F L A GS U P D A T ED Figure 3: Cycle to Cycle Timing Example Rev Rev.. 2 DA TA 10 LIST-XL OPERA TIONAL CHARACTERISTICS Continued OPERATIONAL Cycle T ype Type Comments Control Bus Op-Code /E /CM Notes /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 Clears power-up anomalies Target Control register for reset Causes reset Target Control register for initial values Control register value Target Segment Counter Control register Set Segment Counters to write to Segment 1, 2, and 3 and read from Segment 0. Command write SPS M@HM L L L Set Data Reads from Segment 0 of the Highest-priority match 1 2 Notes: 1. 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. 2. 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. Table 5: Example Initialization Routine INSTRUCTION SET DESCRIPTIONS* 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. 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. Instruction: Temporary Command Override (TCO) Binary Op-Code: 0000 0010 00dd d000 ddd Register selected as source or destination for only the next Command Read or Write cycle The 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 f Address Field flag† mm Mask Register select ddd Selected destination vvv 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 11 Rev Rev.. 2 LIST-XL INSTRUCTION SET DESCRIPTIONS* Continued Instruction: Data Move (MOV) Binary Op-Code: 0000 f01 1 mmdd dsss or f011 0000 f01 1 mmdd dvss f011 f Address Field flag† mm Mask Register select ddd Destination of data sss Source of data v 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). Instruction: Special Instructions Binary Op-Code: 0000 01 10 00dd drrr 0110 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. Instruction: V alidity Bit Control (VBC) Validity Binary Op-Code: 0000 f100 00dd dvvv 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, 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. 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. 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. Rev Rev.. 2 12 LIST-XL INSTRUCTION SET SUMMAR Y SUMMARY MNEMONIC FORMA T FORMAT INS dst,src[msk],val Instruction: Select Persistent Destination Cont. Operation Mnemonic Op-Code 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 Source Operation Mnemonic Comparand Register Mask Register 1 Mask Register 2 Memory Array at Addr. Reg. Memory Array at Address Mem. at Highest-Prio. Match Op-Code SPS CR SPS MR1 SPS MR2 SPS M@[AR] SPS M@aaaH SPS M@HM 0000H 0001H 0002H 0004H 0804H 0005H Instruction: Select Persistent Destination Operation Mnemonic Op-Code Comparand Register Masked by MR1 Masked by MR2 SPD CR SPD CR[MR1] SPD CR[MR2] 0100H 0140H 0180H Mask Register 1 Mask Register 2 Mem. at Addr. Reg. set Valid Masked by MR1 Masked by MR2 SPD MR1 SPD MR2 SPD M@[AR],V SPD M@[AR][MR1],V SPD M@[AR][MR2],V 0108H 0110H 0124H 0164H 01A4H Mem. at Addr. Reg. set Empty Masked by MR1 Masked by MR2 SPD M@[AR],E SPD M@[AR][MR1],E SPD M@[AR][MR2],E 0125H 0165H 01A5H Mem. at Addr. Reg. set Skip Masked by MR1 Masked by MR2 SPD M@[AR],S SPD M@[AR][MR1],S SPD M@[AR][MR2],S 0126H 0166H 01A6H Mem. at Addr. Reg. set Random SPD M@[AR],R Masked by MR1 SPD M@[AR][MR1],R Masked by MR2 SPD M@[AR][MR2],R 0127H 0167H 01A7H Memory at Address set Valid Masked by MR1 Masked by MR2 SPD M@aaaH,V SPD M@aaaH[MR1],V SPD M@aaaH[MR2],V 0924H 0964H 09A4H Memory at Addr. set Empty Masked by MR1 Masked by MR2 SPD M@aaaH,E SPD M@aaaH[MR1],E SPD M@aaaH[MR2],E 0925H 0965H 09A5H Memory at Address set Skip Masked by MR1 Masked by MR2 SPD M@aaaH,S SPD M@aaaH[MR1],S SPD M@aaaH[MR2],S 0926H 0966H 09A6H Mem. at Address set Random Masked by MR1 Masked by MR2 SPD M@aaaH,R SPD M@aaaH[MR1],R SPD M@aaaH[MR2],R 0927H 0967H 09A7H Mem. at Highest-Prio. Match, Valid SPD M@HM,V Masked by MR1 SPD M@HM[MR1],V Masked by MR2 SPD M@HM[MR2],V Mem. at Highest-Prio. Match, Emp. SPD M@HM,E Masked by MR1 SPD M@HM[MR1],E Masked by MR2 SPD M@HM[MR2],E 012DH 016DH 01ADH Mem. at Highest-Prio. Match, Skip SPD M@HM,S Masked by MR1 SPD M@HM[MR1],S Masked by MR2 SPD M@HM[MR2],S 012EH 016EH 01AEH Mem. at High.-Prio. Match, Random SPD M@HM,R Masked by MR1 SPD M@HM[MR1],R Masked by MR2 SPD M@HM[MR2],R 012FH 016FH 01AFH Mem. at Next Free Addr., Valid SPD M@NF,V Masked by MR1 SPD M@NF[MR1],V Masked by MR2 SPD M@NF[MR2],V 0134H 0174H 01B4H Mem. at Next Free Addr., Empty SPD M@NF,E Masked by MR1 SPD M@NF[MR1],E Masked by MR2 SPD M@NF[MR2],E 0135H 0175H 01B5H Mem. at Next Free Addr., Skip Masked by MR1 Masked by MR2 SPD M@NF,S SPD M@NF[MR1],S SPD M@NF[MR2],S 0136H 0176H 01B6H Mem. at Next Free Addr., Random SPD M@NF,R Masked by MR1 SPD M@NF[MR1],R Masked by MR2 SPD M@NF[MR2],R 0137H 0177H 01B7H Instruction: T emporary Command Override Temporary Operation Mnemonic Op-Code Control Register Segment Control Register Read Next Free Address Address Register Read Persistent Source Read Persistent Destination TCO CT TCO SC TCO NF TCO AR TCO PS TCO PD Instruction: Data Move Operation Mnemonic Comparand Register from: No Operation Mask Register 1 Mask Register 2 Memory at Address Reg. Masked by MR1 Masked by MR2 NOP MOV CR,MR1 MOV CR,MR2 MOV CR,[AR] MOV CR,[AR][MR1] MOV CR,[AR][MR2] 0300H 0301H 0302H 0304H 0344H 0384H MOV CR,aaaH MOV CR,aaaH[MR1] MOV CR,aaaH[MR2] 0B04H 0B44H 0B84H Memory at Address Masked by MR1 Masked by MR2 Mem. at Highest-Prio. Match MOV CR,HM Masked by MR1 MOV CR,HM[MR1] Masked by MR2 MOV CR,HM[MR2] 0200H 0210H 0218H 0220H 0230H 0238H Op-Code 0305H 0345H 0385H 012CH 016CH 01ACH 13 Rev Rev.. 2 LIST-XL INSTRUCTION SET SUMMAR Y Continued SUMMARY Instruction: Data Move Continued Operation Mnemonic Op-Code Mask Register 1 from: Comparand Register No Operation Mask Register 2 Memory at Address Reg. Memory at Address Mem. at Highest-Prio. Match MOV MR1,CR NOP MOV MR1,MR2 MOV MR1,[AR] MOV MR1,aaaH MOV MR1,HM 0308H 0309H 030AH 030CH 0B0CH 030DH Mask Register 2 from: Comparand Register Mask Register 1 No Operation Memory at Address Reg. Memory at Address Mem. at Highest-Prio. Match MOV MR2,CR MOV MR2,MR1 NOP MOV MR2,[AR] MOV MR2,aaaH MOV MR2,HM 0310H 0311H 0312H 0314H 0B14H 0315H 0324H 0364H 03A4H 0325H 0326H Memory at Address, No Change to Validity bits, from: Comparand Register MOV aaaH,CR Masked by MR1 MOV aaaH,CR[MR1] Masked by MR2 MOV aaaH,CR[MR2] Mask Register 1 MOV aaaH,MR1 Mask Register 2 MOV aaaH,MR2 0B20H 0B60H 0BA0H 0B21H 0B22H Memory at Address, Location set Valid, from: Comparand Register MOV aaaH,CR,V Masked by MR1 MOV aaaH,CR[MR1],V Masked by MR2 MOV aaaH,CR[MR2],V Mask Register 1 MOV aaaH,MR1,V Mask Register 2 MOV aaaH,MR2,V 0B24H 0B64H 0BA4H 0B25H 0B26H Memory at Highest-Priority Match, No Change to Validity bits,from: Comparand Register MOV HM,CR 0328H Masked by MR1 MOV HM,CR[MR1] 0368H Masked by MR2 MOV HM,CR[MR2] 03A8H Mask Register 1 MOV HM,MR1 0329H Mask Register 2 MOV HM,MR2 032AH Memory at Next Free Address, Comparand Register Masked by MR1 Masked by MR2 Mask Register 1 Mask Register 2 Location set Valid, from: MOV NF,CR,V MOV NF,CR[MR1],V MOV NF,CR[MR2],V MOV NF,MR1,V MOV NF,MR2,V Op-Code 0424H 0425H 0426H 0427H Set Validity bits at Address Set Valid Set Empty Set Skip Set Random Access 0C24H 0C25H 0C26H 0C27H VBC aaaH,V VBC aaaH,E VBC aaaH,S VBC aaaH,R Set Validity bits at Highest-Priority Match Set Valid VBC HM,V Set Empty VBC HM,E Set Skip VBC HM,S Set Random Access VBC HM,R 042CH 042DH 042EH 042FH Set Validity bits at All Matching Set Valid Set Empty Set Skip Set Random Access Locations VBC ALM,V VBC ALM,E VBC ALM,S VBC ALM,R 043CH 043DH 043EH 043FH Instruction: Compare Operation Mnemonic Compare Valid Locations Compare Empty Locations Compare Skipped Locations Comp. Random Access Locations CMP V CMP E CMP S CMP R Shift Comparand Right Shift Comparand Left Shift Mask Register 2 Right Shift Mask Register 2 Left Select Foreground Registers Select Background Registers Reset Seg. Cont. Reg. to Initial Val. 14 0334H 0374H 03B4H 0335H 0336H Set Validity bits at Address Register Set Valid VBC [AR],V Set Empty VBC [AR],E Set Skip VBC [AR],S Set Random Access VBC [AR],R Instruction: Special Instructions Operation Mnemonic 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 Rev Rev.. 2 No Change to Validity bits, from: MOV NF,CR 0330H MOV NF,CR[MR1] 0370H MOV NF,CR[MR2] 03B0H MOV NF,MR1 0331H MOV NF,MR2 0332H Instruction: V alidity Bit Control Validity Operation Mnemonic 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 Mask Register 2 MOV [AR],MR2 0322H Memory at Address Register, Location set Valid, from: Comparand Register MOV [AR],CR,V Masked by MR1 MOV [AR],CR[MR1],V Masked by MR2 MOV [AR],CR[MR2],V Mask Register 1 MOV [AR],MR1,V Mask Register 2 MOV [AR],MR2,V Memory at Next Free Address, Comparand Register Masked by MR1 Masked by MR2 Mask Register 1 Mask Register 2 SFT CR, R SFT CR, L SFT M2, R SFT M2, L SFR SBR RSC Op-Code 0504H 0505H 0506H 0507H Op-Code 0600H 0601H 0610H 0611H 0618H 0619H 061AH LIST-XL INSTRUCTION SET SUMMAR Y Continued SUMMARY CYCLE TYPE CYCLE LENGTH Short Medium Long Command Write Command Read Data Write 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 Read Comparand register (not last segment) Mask register (not last segment) Status register or 16-bit register 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 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 will be the length given. Table 6: Instruction Cycle Lengths REGISTER BIT ASSIGNMENTS 15 RST R E S E T = 0 14 13 12 11 Reserved Must be Set = 000000 10 9 8 7 6 CAM/RAM Part. 64 CAM/0 RAM = 000 48 CAM/16 RAM = 001 32 CAM/32 RAM = 010 16 CAM/48 RAM = 011 48 RAM/16 CAM = 100 32 RAM/32 CAM = 101 16 RAM/48 CAM = 110 No Change = 111 5 4 3 2 Comp. Mask AR Inc/Dec None = 00 MR1 = 01 MR2 = 10 No Change = 11 Increment = 00 Decrement = 01 Disable = 10 No Change = 11 1 0 Reserved Must be set = 00 Note: D15 reads back as 0. Table 7: Control Register Bit Assignments 15 Rev Rev.. 2 LIST-XL REGISTER BIT ASSIGNMENTS Continued 15 14 13 12 11 10 9 8 SDL DCSL DCEL SSL SCSL Set Dest. Seg. Limits =0 No Chng. =1 Destination Count Start Limit =00–11 Destination Count End Limit =00–11 Set Source Seg. Limits =0 No Chng. =1 Source Count Start Limit =00–11 Note: D15, D10, D5, and D2 read back as 0s. 7 6 5 SCEL LDC Source Count End Limit =00–11 Load Dest. Seg. Count =0 No Chng. =1 4 3 2 1 LSC DSCV SSCV Load Src. Seg. Count =0 No Chng. =1 Destination Seg. Count Value =00–11 0 Source Seg. Count Value =00–11 Table 8: Segment Control Register Bit Assignments 13 0 9 8 7 0 11 0 10 3640L 14 0 12 0 0 0 0 Next Free Address, NF7–0 5640L 0 0 0 0 0 0 0 15 6 5 4 3 2 1 0 Next Free Address, NF8–0 Note: The Next Free Address register is read only, and is accessed by performing a Command Read cycle immediately following a TCO NF instruction. Table 9: Next Free Address Register Bit Assignments 31 30 /FL /MM 29 15 14 13 3640L 0 0 5640L 0 0 28 27 26 25 24 23 22 21 20 19 18 17 16 0 0 0 0 0 0 0 0 0 0 0 0 12 11 10 9 8 7 6 5 4 3 2 1 0 0 0 0 0 0 0 0 0 0 Skip Empty Match Address, AM7–AM0 /MF Match Address, AM8–AM0 /MF Note: The Status register is read only, and is accessed by performing Command Read cycles. On the first cycle, bits 15–0 will be output, and if a second Command Read cycle is issued immediately after the first Command Read cycle, bits 31–16 will be output. Table 10: Status Register Bit Assignments 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 3640L Device ID = 341H PS 5640L Device ID = 541H PS Note: The Persistent Source register is read only, and is accessed by performing a Command Read cycle immediately following a TCO PS instruction. Table 1 1: Persistent Source Register Bit Assignments 11: Rev Rev.. 2 16 0 LIST-XL OPERA TIONAL CHARACTERISTICS OPERATIONAL ABSOLUTE MAXIMUM RA TINGS RATINGS Supply Voltage Voltage on all other pins Stresses exceeding those listed under Absolute Maximum Ratings may include failure. Exposure to absolute maximum ratings for extended periods may reduce reliability. Functionality at or above these conditions is not implied. -0.5 to 4.6 Volts -0.5 to VCC +0.5 Volts (-2 Volts for 10 ns, measured at the 50% point) -55°C to 125°C -55°C to 125°C 20 mA (per output, one at a time, one second duration. Temperature under bias Storage Temperature DC Output Current All voltages referenced to GND. OPERA TING CONDITIONS (voltages referenced to GND at the device pin) OPERATING Symbol Parameter Min Typical Units 3.6 Volts VCC VIH Operating Supply Voltage Input Voltage Logic 1 2.0 Input Voltage Logic 0 -0.5 VCC + 0.5 0.8 Volts VIL TA 0 70 °C -40 85 °C Ambient Operating Temperature 3.3 Max 3.0 Commercial Industrial Volts Notes 1, 2 Still Air DC ELECTRICAL CHARACTERISTICS Symbol Parameter ICC Min Typical Average Power Supply Current 20 Max Units 30 mA tELEL= tELEL(min); 9 ICC(SB) Stand-by Power Supply Current VOH VOL Output Voltage Logic 1 IIZ Input Leakage Current I OZ 2 2.4 Output Voltage Logic 0 Output Leakage Current 0.4 Others -2 /RESET 6 +2 9 -10 12 10 Notes mA /E = HIGH Volts IOH = -2.0mA Volts IOL = 4.0mA µA VSS ≤ VIN ≤ VCC Kohms VIN = 0 V µA VSS ≤ VOUT ≤ VCC; DQN = High Impedance CAP ACIT ANCE CAPACIT ACITANCE Symbol Parameter CIN COUT Max Units Input Capacitance 6 pF Output Capacitance 7 pF Notes f = 1 MHz, VIN = 0 V f = 1 MHz, VOUT = 0 V AC TEST CONDITIONS Input Signal Transitions Input Signal Rise Time Input Signal Fall Time Input Timing Reference Level Output Timing Reference Level 17 0.0 Volts to 3.0 Volts < 3 ns < 3 ns 1.5 Volts 1.5 Volts Rev Rev.. 2 LIST-XL SWITCHING TEST FIGURES Vc c In p u t R1 W a ve fo rm T o D e v ic e U nder T est 0V V IL ( MIN ) C1 R2 5 0 % A m p li t u d e P o in t 1 0 ns Figure 5: Input Signal Waveform Figure 4: AC T est Load Test SWITCHING TEST FIGURES COMPONENT V ALUES VALUES Component VCC R1 R2 C1 (includes jig) V alue Value 3.3 635 702 30 5 Test Load A Test Load B Units Volts Ohms Ohms pF pF SWITCHING CHARACTERISTICS (see note 3) Cycle Time -90 -70 Min Min Chip Enable Compare Cycle Time 70 90 2 tELEH Chip Enable LOW Pulse Width Short Cycle: 15 25 4 Medium Cycle: 35 50 4 Long Cycle: 55 75 4 Max 3 tEHEL Chip Enable HIGH Pulse Width 15 15 4 tCVEL tELCX Control Input to Chip Enable LOW Set-up Time 2 2 5 5 6 7 Control Input from Chip Enable LOW Hold Time 10 10 5 tELQX tELQV Chip Enable LOW to Outputs Active 3 3 6 tEHQZ tDVEL Chip Enable HIGH to Outputs High-Z Chip Enable LOW to Outputs Valid 30 52 8 3 10 3 Data to Chip Enable LOW Set-up Time 2 2 tELDX tELFFV Data from Chip Enable LOW Hold Time 10 10 Chip Enable HIGH to /MF, /MM Invalid 13 tEHMFX tEHMFV 14 tRLRH Reset LOW Pulse Width 9 10 11 12 Chip Enable LOW to Full Flag Valid 75 4,6 15 7 25 18 100 18 4,6 0 0 Chip Enable HIGH to /MF, /MM Valid 50 75 50 Notes: 1. -1.0V for a duration of 10 ns measured at the 50% amplitude points for Input-only lines (Figure 5). 2. Common I/O lines are clamped, so that signal transients cannot fall below -0.5V. 3. At 0 – 70°C and Vcc(min) to Vcc(max). 4. See Table 6. 5. Control signals are /W and /CM. 6. With load specified in Figure 4, Test Load A. 7. With load specified in Figure 4, Test Load B. 8. /E must be HIGH during this period to ensure accurate default values in the configuration registers. 9. With output and I/O pins unloaded. Rev Rev.. 2 Max Notes Symbol tELEL Parameter (all times in nanoseconds) 1 No 100 8 LIST-XL TIMING DIAGRAMS WRITE CYCLE READ CYCLE 2 3 /E 2 3 4 5 4 5 9 10 /E /W 4 5 /W /C M 4 5 /CM 7 8 DQ15–0 D Q1 5 – 0 11 6 /FF COMP ARE CYCLE COMPARE 1 2 3 /E 4 5 4 5 /W /C M V AL I D 13 /M F , /M M 12 19 Rev Rev.. 2 LIST-XL ORDERING INFORMA TION INFORMATION Organization Part Number MU9C3640L - 90TZC MU9C3640L - 70TZC MU9C3640L - 90TZI MU9C5640L - 90TZC MU9C5640L - 70TZC MU9C5640L - 90TZI Package Temperature Voltage 32-PIN LQFP 32-PIN LQFP 32-PIN LQFP 32-PIN LQFP 32-PIN LQFP 32-PIN LQFP 0-70° C 0-70° C -40–85° C 0-70° C 0-70° C -40–85° C 3.3 ± 0.3 3.3 ± 0.3 3.3 ± 0.3 3.3 ± 0.3 3.3 ± 0.3 3.3 ± 0.3 Cycle Time 256x64 256x64 256x64 512x64 512x64 512x64 90ns 70ns 90ns 90ns 70ns 90ns PACKAGE OUTLINE A2 He A1 E D Hd L1 e b L C Dimensions are in mm. Dim A1 A2 b c D E e Hd He L1 L Min .05 1.35 .30 .09 7.00 7.00 .80 9.00 9.00 1.00 .45 1.45 .45 .02 nom .75 Max .15 nom MUSIC Semiconductors Agent or Distributor: http://www.musicsemi.com email: [email protected] Rev Rev.. 2 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 infringement 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 2001, MUSIC Semiconductors USA Headquarters MUSIC Semiconductors 1521 California Circle Milpitas, CA 95035 USA Tel: 408 869-4600 Fax: 408 942-0837 USA Only: 800/933-1550 Tech. Support 888/226-6874 Product Info. 20 Asian Sales Office MUSIC Semiconductors Special Export Processing Zone Carmelray Industrial Park Canlubang, Calamba, Laguna Philippines Tel: +63 49 549-1480 Fax: +63 49 549-1024 Sales Tel/Fax: +632 723-62 15 European Sales Office MUSIC Semiconductors Saville Court, Saville Place Clifton, Bristol BS8 4EJ UK Tel: (44) 117-973-4444 Fax: (44) 117-923-7598