|Publication number||US7266128 B1|
|Application number||US 10/314,032|
|Publication date||Sep 4, 2007|
|Filing date||Dec 6, 2002|
|Priority date||Dec 6, 2002|
|Also published as||US7260093|
|Publication number||10314032, 314032, US 7266128 B1, US 7266128B1, US-B1-7266128, US7266128 B1, US7266128B1|
|Inventors||Alexander P. Goldhammer, Angus David Starr MacAdam|
|Original Assignee||Integrated Device Technology, Inc.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (31), Non-Patent Citations (16), Referenced by (6), Classifications (8), Legal Events (3)|
|External Links: USPTO, USPTO Assignment, Espacenet|
The present invention relates to integrated circuit devices and methods of operating same, and more particularly to integrated circuit switches that receive and transmit serial data streams and methods of operating same.
Conventional time-slot interchange (TSI) switches utilize both data and connection memories to control routing of a plurality of input and output data streams. As illustrated by
TSI switches typically enable users to perform manual microprocessor-based programming of individual connection memory entries with data memory addresses and switching mode data. Such manual operations may be time consuming and require substantial microprocessor bandwidth. The performance of conventional test and debugging operations on downstream elements in a communication path may also be complicated by the presence of a TSI switch in the path. In particular, to enable test and debugging operations to be performed on downstream elements, it may be necessary to set the TSI switch into a one-to-one RX-to-TX routing mode with constant delay. Unfortunately, this routing mode inherently results in multiple frames of delay through the TSI switch during debugging.
Thus, notwithstanding these TSI switches, there continues to be a need for switches that can be programmed more efficiently and facilitate more efficient testing and debugging operations.
Time-slot interchange (TSI) switches according to embodiments of the present invention include a data memory having first entries therein that contain serial data received by the switch and a connection memory having second entries therein. When programmed, these second entries contain addresses of a plurality of the first entries in the data memory and switching modes that have been assigned to the plurality of the first entries. These switching modes may be defined by two bits that specify one of four switching modes (a variable delay mode, a constant delay mode, a processor mode and an output high impedance mode). A control circuit is also provided. This control circuit is configured to automatically program a block of the second entries in the connection memory with updated switching modes during an efficient burst program mode of operation. This burst program mode of operation may be commenced by setting a block program enable bit within a control circuit storage element when the switch is actively processing serial input streams.
The control circuit may include a first programmable register that retains a starting address of the block of the second entries and a second programmable register that retains an ending address of the block of the second entries. These registers are accessed by command logic upon commencement of the burst program mode of operation. The starting address may include a group address (e.g., Group 0-7), a starting stream address (e.g., Stream 0-7) and a starting channel address (Channel 0-511) and the ending address may include an ending stream address and an ending channel address within the group identified by the group address. In alternative embodiments, a block spanning multiple groups and/or multiple blocks may be automatically programmed during a burst program mode of operation that is commenced while the switch is active.
The control circuit may include a control register that retains, among other things, the updated switching modes used by the control circuit during the burst program mode of operation. In particular, a two-bit switching mode designation may be read from the control register and automatically programmed into each entry within the designated block. The control circuit may also include command logic and a block program address comparator and address counter that perform many of the operations during the burst program mode.
TSI switches according to other embodiments of the present invention include an input buffer that is configured to receive a plurality of streams of serial input data and a data memory having a plurality of first entries therein that retain the received input data. A serial-to-parallel (S-to-P) converter is also provided to convert the serial input data received by the input buffer into parallel data that is loaded into the data memory. A connection memory is provided having second entries therein that are configured to retain addresses of the plurality of the first entries in the data memory and switching modes assigned to the plurality of the first entries. These switching modes establish per-channel modes, such as the variable delay mode, the constant delay mode, the processor mode and the output high impedance mode. If three of more mode bits are used, then additional modes, such as a pseudo-random bit sequence mode, may be designated during block programming. A parallel-to-serial (P-to-S) converter is also provided. This P-to-S converter is configured to convert parallel data read from the data memory into serial output data that is provided to an output buffer/driver that generates the serial output streams. A control circuit is provided to automatically program a block of the second entries in the connection memory with updated switching modes during a burst program mode of operation. The control circuit may also be configured to reset connection memory entries (e.g., bits 0-14) during the burst program mode of operation.
Still further embodiments of the present invention include a TSI switch that is configured to internally support burst programming of connection memory and serial input-to-output bypass of data memory when disposed in a burst program mode of operation and a bypass mode of operation, respectively. In these embodiments, an input multiplexer may be provided that can direct serial input data provided by an input buffer to an internal serial bypass bus, in response to an active bypass control signal. An output multiplexer may also be provided that can direct the serial input data on the internal serial bypass bus to the output buffer, in response to the active bypass control signal. This bypass control signal may be responsive to a bypass bit (BYP) stored within a control register.
Embodiments of the present invention may also include methods of operating a TSI switch. These methods may include burst-programming a block of connection memory entries with equivalent switching modes selected from the group consisting of a variable delay mode, a constant delay mode, a processor mode and an output high impedance mode. The methods may also include internally bypassing data memory in the switch by routing serial data received by an internal input buffer directly to an internal output buffer/driver, without performing a serial-to-parallel conversion (or data memory storage) operation on the serial data.
The present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which preferred embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Signal lines and signal pins and signals thereon may be referred to by the same reference characters. Like numbers refer to like elements throughout. Signals may also be synchronized and/or undergo minor boolean operations (e.g., inversion) without being considered different signals. The suffix B (or prefix symbol “/”) to a signal name may also denote a complementary data or information signal or an active low control signal, for example. Numeric and size values for various components of the preferred embodiments are also provided for purposes of illustration only and should not be used to limit the scope of the illustrated embodiments or claims.
Referring now to
A microprocessor interface circuit 24 is also provided. A plurality of pins are provided to enable connection between the interface circuit 24 and an external data processing unit. This data processing unit may constitute a microprocessor, program logic device (PLD) or field programmable gate array (FPGA), for example (see, e.g.,
The TSI switch 10 is illustrated as receiving 64 serial input data streams (shown as RX0-RX63) and generating 64 serial output data streams (shown as TX0-TX63). When an output enable indication (OEI) function is selected for a given odd group of output lines (i.e., TX8-5/OEI0-7, TX24-31/OEI6-23, TX40-47/OEI32-39 or TX56-63/OEI48-55), then the selected odd group of output lines will reflect the active or high-impedance status for its corresponding even group of output lines (i.e., TX0-7, TX16-23, TX32-39 and TX48-55). The serial input data streams are received by an input buffer 26, which may be of conventional design. The input buffer 26 is configured to pass the received input data to a serial-to-parallel converter 32. This serial-to-parallel converter 32 provides a data memory 22 with parallel data (e.g., 8 bits of data corresponding to each channel of data received on each of the serial input data streams RX0-RX63). The input buffer 26 and converter 32 may be configured to perform automatic frame alignment, as described more fully described in commonly assigned U.S. application Ser. No. 09/858,410, filed May 16, 2001, the disclosure of which is hereby incorporated herein by reference.
According to a preferred aspect of the illustrated TSI switch 10, an input multiplexer 30 (MUX1) is provided between the input buffer 26 and the serial-to-parallel converter 32. The input multiplexer 30 is configured to direct serial input data from the input buffer 26 to a serial bypass bus 52 when the TSI switch 10 is operating in a bypass mode of operation. This bypass mode of operation facilitates testing and debugging of downstream elements in a communications path by making the TSI switch 10 essentially transparent during testing/debugging. This serial bypass bus 52 may have a width that is equivalent to the number of input data streams (e.g., 64) received by the input buffer 26. The input multiplexer 30 is responsive to a bypass control signal 54 generated by a control circuit 12. This control circuit may be configured to include a storage element that retains a bypass bit (BYP). As illustrated by
The serial bypass bus 52 is connected to an input of an output multiplexer 36. The output multiplexer 36 (MUX3) is responsive to the bypass control signal 54 generated by the control circuit 12. When the bypass control signal 54 is active, the output multiplexer 36 operates to pass serial data from the serial bypass bus 52 to an output buffer/driver 28 that generates the serial output data streams TX0-TX63. The output buffer/driver 28 is responsive to an output drive enable signal (ODE). When the ODE signal is low and the output standby (OSB) bit of a control register 48 (see,
The data memory 22 is configured to provide data directly to a microprocessor interface circuit 24 and an input of a multiplexer/state machine 34 (MUX2). This multiplexer/state machine 34, which may be similar in design to those in conventional TSI switches, performs state machine and time-division multiplexing functions. These functions of providing data to the microprocessor interface circuit 24 and the multiplexer/state machine 34 are conventional within TSI switches and need not be described further herein. The data memory 22 may be configured to include multiple banks of memory (e.g., banks A, B and C), with each bank having 215 (i.e., 32K) 8-bit entries. Each entry is addressable by row addresses (CM<0:14>) that are provided by the connection memory 20. Address compare logic (not shown) is also provided for bank selection. Techniques to generate data memory addresses in TSI switches are more fully described in commonly assigned U.S. application Ser. No. 10/205,177, filed Jun. 25, 2002, the disclosure of which is hereby incorporated herein by reference.
Switching mode bits, which can be read from bit locations CM<15:16> within the connection memory 20, are provided to control terminals of the multiplexer/state machine 34. The connection memory 20 may also provide 2-bits of data (CM<15:16>) that operate to select between banks A, B and C when the data memory 22 is being read. A plurality of connection memory bits, shown as CM<0:7> are also provided as inputs to the multiplexer/state machine 34. During a processor mode of operation, these connection memory bits CM<0:7> represent processor data originally written from the microprocessor interface 24 into the connection memory 20 (see, e.g., processor mode data (PMD) in the highlighted row of connection illustrated in
The connection memory 20 is coupled by a bidirectional data bus to the microprocessor interface circuit 24 so that processor-based read and write operations may be performed on the connection memory 20. The connection memory 20 operates under control of the control circuit 12. Components of the control circuit 12 that are relevant to its burst program and bypass modes of operation will now be described in detail. The control circuit 12 may also include devices, elements and programmed logic that perform additional functions associated with conventional TSI switches.
The illustrated control circuit 12 comprises internal storage elements and devices, which may take the form of internal registers 14. These registers 14 include registers that support a bypass mode of operation and facilitate “group” block programming of the connection memory 20 when the control circuit 12 is operating in a burst program mode of operation. This burst program mode of operation refers to a mode of operation that occurs when the switch 10 is actively processing serial data streams.
The internal registers are illustrated as a control register 48 (CNTL-REG), a block programming starting address register 46 (BPSA-REG) and a block programming ending address register 44 (BPEA-REG). The contents of these registers are more fully illustrated by
As illustrated by
In some embodiments, the connection memory 20 of
The control register 48 of
Bit position 4 (BPE) within the control register 48 establishes whether block programming is enabled or not. In particular, when the command logic 16 detects a low-to-high transition of this bit position (and FBP=0), the control circuit 12 enters a burst program mode of operation which causes a designated block of connection memory 20 (as delimited by the starting and ending addresses within a group) to be automatically programmed. The BPE bit may be set high in response to microprocessor control provided through the microprocessor interface 24. After block programming has been completed, then bit position 4 is reset by the command logic to indicate completion of the burst programming mode of operation. In the illustrated embodiment, bit positions 15 and 16 in the designated block within the connection memory 20 of
Bit position 7 (FBP) within the control register 48 identifies a conventional full block programming mode of operation, which is active when the switch 10 is not actively processing serial data streams (e.g., upon start-up) and the entire connection memory space is being programmed. In particular, when FBP=1 and BPE switches low-to-high, the starting and ending address values within registers 46 and 44 are ignored and the full connection memory space (i.e., all 32K entries) is programmed with equivalent mode bits. When FBP=0, the starting and ending address values specify the extent of a block within a designated group that is automatically programmed during a group block programming.
Bit positions 8-11 of the control register 48 are unused in the illustrated embodiment. When bit position 12 (AOE) is set high for all output enable mode, all output stream pins TX0-TX63 become OEI to allow for a two-chip solution for larger switching matrices with OEI (output enable indication) pins. Bit position 13 (OEPOL) designates an output enable polarity mode. When OEPOL=1, then a high on an OEI pin denotes an active state on the output data stream and a low on an OEI pin denotes a high-impedance state. When OEPOL=0, then a high on an OEI pin denotes a high-impedance state and a low on an OEI pin denotes an active state. Bit position 14 (BYP) controls the bypass mode, as described more fully above. When BYP=1, all RX input streams received by the input buffer 26 are “shorted” by the serial bypass bus 52 to corresponding TX output streams. However, when BYP=0, normal mode is present and the serial bypass bus 52 is inactive. Bit position 15 (SRS) provides software reset capability. When SRS=1, the TSI switch 10 will be reset in the same manner achieved by driving the pin /RESET low.
Accordingly, TSI switches according to embodiments of the present invention include control circuitry therein that is configured to operate in user selectable burst program and bypass modes of operation to improve programming and testing/debugging efficiency. During the burst program mode of operation, a block of entries within a group of the connection memory is automatically programmed with equivalent switching modes. In alternative embodiments, multiple blocks may be programmed with equivalent or different switching modes. The burst program mode of operation may also include full block programming when the switch is not actively processing serial data streams and operations to reset the addresses retained by connection memory (e.g., when RCML=1 at the time BPE switches low-to-high). These reset operations may occur during both group block programming when the switch is active and during full block programming when the switch is inactive.
In the drawings and specification, there have been disclosed typical preferred embodiments of the invention and, although specific terms are employed, they are used in a generic and descriptive sense only and not for purposes of limitation, the scope of the invention being set forth in the following claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US4093827||Feb 14, 1977||Jun 6, 1978||Thomson-Csf||Symmetrical time division matrix and a network equipped with this kind of matrix|
|US4160127 *||Jun 27, 1978||Jul 3, 1979||Bell Telephone Laboratories, Incorporated||Time-slot interchange with protection switching|
|US4510597||Dec 3, 1981||Apr 9, 1985||Mitel Corporation||Time division switching matrix|
|US4679191 *||May 17, 1984||Jul 7, 1987||Cxc Corporation||Variable bandwidth switching system|
|US4759010||Jan 27, 1987||Jul 19, 1988||Nec Corporation||Time switch with a dual memory structure-type control memory|
|US4759012||Mar 6, 1986||Jul 19, 1988||Nippon Telegraph And Telephone Corporation||Time division switching system|
|US4805172||Apr 10, 1987||Feb 14, 1989||Redeom Laboratories, Inc.||Time division multiplex (TDM) switching system especially for pulse code modulated (PCM) telephony signals|
|US4860281||Feb 29, 1988||Aug 22, 1989||Motorola, Inc.||Individual subchannel loopback in the PCM interfaces of a digital telephone exchange with control of the outbound path|
|US4905226||Apr 28, 1988||Feb 27, 1990||Nec Corporation||Double-buffered time division switching system|
|US5014268 *||Jan 11, 1989||May 7, 1991||Alcatel Na, Inc.||Parallel time slot interchanger matrix and switch block module for use therewith|
|US5060227||Jul 26, 1989||Oct 22, 1991||Motorola, Inc.||Digital telephone switch with simultaneous dual PCM format compatibility|
|US5381406||Aug 31, 1992||Jan 10, 1995||Nec Corporation||Time switching circuit|
|US5521928||May 11, 1995||May 28, 1996||National Semiconductor Corporation||Time slot exchanger mechanism in a network for data communication having isochronous capability|
|US5559796 *||Feb 28, 1995||Sep 24, 1996||National Semiconductor Corporation||Delay control for frame-based transmission of data|
|US5621720||Feb 14, 1996||Apr 15, 1997||Applied Digital Access, Inc.||Multichannel alignment system and method|
|US5841771||Jul 3, 1996||Nov 24, 1998||Northern Telecom Limited||Telecommunications switch apparatus and method for time switching|
|US5867496 *||Nov 18, 1994||Feb 2, 1999||Mitel Corporation||Interface device|
|US6049540 *||May 15, 1997||Apr 11, 2000||Lucent Technologies Inc.||Enhanced telecommunications switching unit|
|US6067296||Mar 28, 1997||May 23, 2000||Adtran, Inc.||Parallel backplane architecture providing asymmetric bus time slot cross-connect capability|
|US6160807||Dec 15, 1997||Dec 12, 2000||Rockwell International||Timeslot interchange network|
|US6178184||Dec 11, 1998||Jan 23, 2001||Avaya Technology Corp.||Arrangement for synchronization of multiple streams of synchronous traffic delivered by an asynchronous medium|
|US6226288||Sep 10, 1997||May 1, 2001||Excel Switching Corporation||Sub-rate switching telecommunications switch|
|US6259703||Jul 27, 1999||Jul 10, 2001||Mitel Corporation||Time slot assigner for communication system|
|US6324176||Jun 5, 1998||Nov 27, 2001||Lucent Technologies Inc.||Switching internet traffic through digital switches having a time slot interchange network|
|US6870831||May 1, 2001||Mar 22, 2005||Pmc-Sierra, Inc.||Flexible, self-aligning time and space switch fabrics|
|US6879603||Jan 28, 2000||Apr 12, 2005||Carrier Access Corporation||Processor-based voice and data time slot interchange system|
|US6931022||May 28, 1999||Aug 16, 2005||Cisco Technology, Inc.||Background test system for time division multiplexing switching systems|
|US20010038613||Jul 10, 2001||Nov 8, 2001||Mitel Corporation||Time slot assigner for communication system|
|US20020001305||May 1, 2001||Jan 3, 2002||Hughes Andrew Milton||Flexible, self-aligning time and space switch fabrics|
|US20040017697||Jul 25, 2002||Jan 29, 2004||Frank Matthews||Data memory address generation for time-slot interchange switches|
|US20040047367||Sep 5, 2002||Mar 11, 2004||Litchfield Communications, Inc.||Method and system for optimizing the size of a variable buffer|
|1||Agere Systems, TSI-8 Time-Slot Interchanger, Hardware Design Guide, May 2002, 25 pages.|
|2||Agere Systems, TSI-8 Time-Slot Interchanger, Jul. 2002, 2 pages.|
|3||Agere Systems, TSI-8 Time-Slot Interchanger, Product Description, May 2002, 7 pages.|
|4||Agere Systems, TSI-8 Time-Slot Interchanger, Register Description, May 2002, 33 pages.|
|5||IDT 3.3 Volt Time Slot Interchange, Digital Switch, 16,384 x 16,384, IDT72V71660, Aug. 2002, 30 pages (Admitted Prior Art).|
|6||IDT 3.3 Volt Time Slot Interchange, Digital Switch, 16,384 x16,384, IDT72V73260, Aug. 2002, 27 pages (Admitted Prior Art).|
|7||IDT 3.3 Volt Time Slot Interchange, Digital Switch, 8,192 x8,192, IDT72V71650, Aug. 2002, 27 pages (Admitted Prior Art).|
|8||IDT 3.3 Volt Time Slot Interchange, Digital Switch, 8,192 x8,192, IDT72V73250, Aug. 2002, 23 pages (Admitted Prior Art).|
|9||IDT Data Sheet, 3.3 Volt Time Slot Interchange Digital Switch, 128 x128, Aug. 2001, 20 pages.|
|10||IDT Data Sheet, 3.3 volt Time Slot Interchange Digital Switch, 128 x128, Jan. 2001, 11 pages.|
|11||IDT Data Sheet, 3.3 Volt Time Slot Interchange Digital Switch, 4,096 x4,096, Jan. 2002, 21 pages (Admitted Prior Art).|
|12||IDT Data Sheet, 3.3 Volt Time Slot Interchange Digital Switch, 512 x512, Aug. 2001, 24 pages.|
|13||IDT Data Sheet, Time Slot Interchange Digital Switch, 2,048 x2,048, Jul. 2001, 27 pages.|
|14||Zarlink Semiconductor, Application Note MSAN-123, The MT8980 and the MT8981 Digital Crosspoint Switches, Issue 1, Jun. 1986, pp. A-105 through A-114.|
|15||Zarlink Semiconductor, Application Note MSAN-129, Time Space Switching 8,16 or 32 kbps, Channels suing the MT8980, Issue 1, Apr. 1987, pp. 1-4.|
|16||Zarlink Semiconductor. TDM to Packet Processors, Data Sheet, Issue 1, Oct. 2002, pp. 1-85.|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US7492760 *||Mar 31, 2004||Feb 17, 2009||Pmc-Sierra, Inc.||Memory egress self selection architecture|
|US7492778 *||Jun 9, 2004||Feb 17, 2009||Zarlink Semiconductor Inc.||Data memory extension for use in double buffered TDM switches|
|US20060198384 *||Jun 9, 2004||Sep 7, 2006||Zarlink Semiconductor Inc.||Data memory extension for use in double buffered TDM switches|
|US20100195657 *||Dec 29, 2007||Aug 5, 2010||Jing Wang||Method and system for self-routing in synchronous digital cross-connection|
|CN101394335B||Sep 20, 2007||Jan 19, 2011||中兴通讯股份有限公司||Synchronous digital cross connecting self-routing method and system|
|WO2009036638A1 *||Dec 29, 2007||Mar 26, 2009||Chunsong Deng||A method and system for self-route in synchronous digital cross-connection|
|U.S. Classification||370/419, 370/412, 709/250, 370/369|
|Cooperative Classification||H04Q11/06, H04Q2213/13393|
|Dec 6, 2002||AS||Assignment|
Owner name: INTEGRATED DEVICE TECHNOLOGY, INC., CALIFORNIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GOLDHAMMER, ALEXANDER P.;MACADAM, ANGUS DAVID STARR;REEL/FRAME:013562/0258;SIGNING DATES FROM 20021202 TO 20021203
|Mar 4, 2011||FPAY||Fee payment|
Year of fee payment: 4
|Feb 18, 2015||FPAY||Fee payment|
Year of fee payment: 8