CN1181703C - Switching device and method thereof - Google Patents
Switching device and method thereof Download PDFInfo
- Publication number
- CN1181703C CN1181703C CNB961967978A CN96196797A CN1181703C CN 1181703 C CN1181703 C CN 1181703C CN B961967978 A CNB961967978 A CN B961967978A CN 96196797 A CN96196797 A CN 96196797A CN 1181703 C CN1181703 C CN 1181703C
- Authority
- CN
- China
- Prior art keywords
- mentioned
- switch
- output
- equipment
- useful
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
技术领域technical field
本发明涉及一个用于固定长度数据分组,尤其是ATM分组的交换装置。更具体地,它涉及一个带有几个输入端口和几个输出端口的交换装置,被确定用于依据输入分组的头把它们传送到一个或更多指定的输出端口。进一步,本发明涉及一种用于把固定长度分组从几个输入端口传送到几个输出端口的方法,尤其是对于ATM分组。本发明也涉及一个包含几个交换装置的交换设备。The invention relates to a switching arrangement for fixed length data packets, especially ATM packets. More specifically, it concerns a switching device with several input ports and several output ports, determined to transfer incoming packets to one or more designated output ports according to their headers. Further, the invention relates to a method for transferring fixed length packets from several input ports to several output ports, especially for ATM packets. The invention also relates to a switching arrangement comprising several switching devices.
背景技术Background technique
信息,即对模拟信号或字母数字混合数据的采样,其快速交换是通信网络的一项重要任务。网络节点通常是传输中延迟的造成原因,节点中来自不同方向的线路或传输链路互连在一起用于彼此间交换信息。如果很多业务量集中在一个节点内,尤其是如果大部分业务量只经由链路中的某几个,则经常会遇到增大的延迟或者甚至丢失信息。因此最理想的是拥有允许快速寻找路由并且至少部分无阻塞的节点。The rapid exchange of information, i.e. samples of analogue signals or mixed alphanumeric data, is an important task of communication networks. Network nodes are often responsible for delays in transmission, where lines or transmission links from different directions are interconnected to exchange information between each other. Increased delays or even loss of information are often encountered if a lot of traffic is concentrated in one node, especially if most of the traffic goes through only some of the links. It is therefore ideal to have nodes that allow fast route finding and are at least partially non-blocking.
在EP312628中描述了一个交换设备,它用于互连通信网络的多个输入和输出传输链路,或者用于在输入和输出计算机和工作站连接链路之间交换数据。更进一步描述了已知的分组格式。In EP312628 a switching device is described for interconnecting a plurality of incoming and outgoing transmission links of a communication network, or for exchanging data between incoming and outgoing computer and workstation connection links. Known packet formats are further described.
对当前交换技术的概述在互连网网页WWW.Zurich.ibm.com/Technology/ATM/.SWOCPWP中给出,其中阐明了对PRIIMA芯片的介绍。有关本题目的另一个信息来源是在计算机网络和ISDN系统(0169-7552194)上由W.E.Denzel,A.P.J.Engbersen,I.Iliadis发表的文章“一个在Gbit/s速率用于ATM的灵活的缓冲共享交换机”,Elsevier Science B.V.,第27卷第4号611-624页。An overview of current switching technology is given at the Internet page WWW.Zurich.ibm.com/Technology/ATM/.SWOCPWP, where the introduction to the PRIIMA chip is set forth. Another source of information on this topic is the article "A Flexible Buffer Shared Switch for ATM at Gbit/s Rates" by W.E.Denzel, A.P.J.Engbersen, I.Iliadis on Computer Networks and ISDN Systems (0169-7552194) ", Elsevier Science B.V., Vol. 27, No. 4, pp. 611-624.
PRIZMA芯片具有提供端口速率为300-400Mbit/s的16个输入端口和16个输出端口。交换原理是首先经由一个完全并行的输入/输出路由树把输入分组发送出去,然后把发送出的分组在一个输出缓冲区中排队。除此以外芯片应用了数据(有效负载)和控制(头)流的分隔。只有有效负载被存储在动态共享的输出缓冲存储器中。用这种结构避免了线路头排队。PRIZMA芯片具有可扩展的结构,因此提供多种扩展能力,由此端口速率,端口数量和数据吞吐量能够被增加。这些扩展可基于模块化应用PRIZMA来实现。同样单级或多级交换结构能够以模块化方式被构造。The PRIZMA chip has 16 input ports and 16 output ports providing a port rate of 300-400Mbit/s. The switching principle is to first send the input packets through a completely parallel input/output routing tree, and then queue the outgoing packets in an output buffer. Otherwise the chip applies a separation of data (payload) and control (header) streams. Only the payload is stored in the dynamically shared output buffer memory. Head-of-line queuing is avoided with this structure. The PRIZMA chip has a scalable structure, thus providing various expansion capabilities, whereby the port rate, the number of ports and the data throughput can be increased. These extensions can be realized based on the modular application PRIZMA. Likewise single-level or multi-level switching fabrics can be constructed in a modular manner.
PRIZMA芯片特别适合于基于ATM,即异步转移模式的宽带电信。但是,这个概念不只局限于面向ATM的结构环境。ATM基于短的,固定长度的分组,通常被称为信元,它被假定在将来的公共宽带综合业务数字网(BISON)中做为综合交换和发送标准被应用。PRIZMA用于解决竞争的拓扑结构和排队配置应用了高层次的并行理论。路由功能在硬件级以分布方式完成,被称为自我寻找路由。ATM分组被划分为几个分组类型,特别是具有不同有效负载长度的分组类型,而PRIZMA芯片被专用于处理具有多达64字节有效负载的分组。但是,具有12,16,32或48字节有效负载的分组通常也被传送。The PRIZMA chip is particularly suitable for broadband telecommunications based on ATM, or Asynchronous Transfer Mode. However, this concept is not limited to ATM-oriented fabric environments. ATM is based on short, fixed-length packets, often called cells, which are assumed to be used as the integrated switching and delivery standard in the future public Broadband Integrated Services Digital Network (BISON). PRIZMA applies high-level parallel theory to the topology and queuing configurations used to resolve contention. The routing function is done in a distributed manner at the hardware level and is known as self-discovery routing. ATM packets are divided into several packet types, in particular those with different payload lengths, while the PRIZMA chip is dedicated to handling packets with payloads of up to 64 bytes. However, packets with payloads of 12, 16, 32 or 48 bytes are usually also transmitted.
在PRIZMA中共享存储部分的典型尺寸包括128个存储单元,单元长度是64字节,用于存储最多128个分组,且与分组的长度无关。当PRIZMA芯片被以速率扩展模式应用,其中4个芯片并行操作而每个芯片接收四分之一的有效负载时,更小的有效负载自动产生,这意味着相当多数量的存储区没被使用。The typical size of the shared storage part in PRIZMA includes 128 storage units, and the unit length is 64 bytes, which is used to store up to 128 packets, and has nothing to do with the length of the packets. When the PRIZMA chips are applied in rate-extended mode, where 4 chips operate in parallel and each chip receives a quarter of the payload, smaller payloads are automatically generated, which means that a considerable amount of memory is not used .
更进一步,在存储区中有效负载的写和读过程是同步的,这意味着异步到达的分组必须等待直到所有存储单元共同的写指针为所有存储单元传递第一个字节。这会导致多达63个时钟周期的附加延迟。Furthermore, the writing and reading process of payloads in the memory area is synchronous, which means that packets arriving asynchronously must wait until the write pointer common to all memory cells delivers the first byte for all memory cells. This results in an additional delay of up to 63 clock cycles.
发明内容Contents of the invention
因此本发明的一个目标是提供一个交换装置,用于把输入的固定长度数据分组从多个输入端口传送到多个输出端口,它提供很高的分组吞吐量。It is therefore an object of the present invention to provide a switching arrangement for transferring incoming fixed length data packets from a plurality of input ports to a plurality of output ports which provides a very high packet throughput.
依据独立权利要求1的装置表明优点为,交换机提供了相对很高的性能,并且同时应用了只有相对很小尺寸的结构化组成,特殊地输入设备带有数量减少的输出,更特殊地带有比存储设备拥有的存储单元更少的输出。The arrangement according to
权利要求1的附属权利要求给出不同量度,它表明对权利要求1中所声明的发明更有利的提高和改善。The dependent claims of
依据权利要求2的装置表明优点为,在具有最小可能尺寸的分组类型情况下,浪费最小的存储空间,然而仍保留存储很大尺寸分组类型的可能性。因此交换装置能够被编程要处理哪种分组类型,从而通过这个为不同的分组类型提供最佳的存储应用。The arrangement according to claim 2 demonstrates the advantage that, in the case of packet types with the smallest possible size, a minimum of storage space is wasted, while still retaining the possibility of storing very large packet types. The switching device can thus be programmed which packet type to handle, thereby providing optimal storage usage for the different packet types through this.
当连到一个交换设备的存储单元的数目被选定,从而它们的存储单元的尺寸总和足以存储要用上述交换装置处理的一预定最大尺寸分组类型的一个分组的整个有效负载时,在任意的分组类型情况下,连到上述交换设备的存储单元足以完全存储一个分组有效负载。因此只有一个带有专用存储单元的交换设备需要为存储一个分组有效负载被编址。由于当存储设备被分为这样的存储单元组时,每个组能够独立于另一组被写入,这种确定尺寸的规则也是很有好处的。When the number of storage units connected to a switching device is selected so that the sum of the sizes of their storage units is sufficient to store the entire payload of a packet of a predetermined maximum size packet type to be processed by the switching means, at any In the case of the packet type, the storage unit connected to the above-mentioned switching device is sufficient to completely store a packet payload. Therefore only one switching device with a dedicated memory location needs to be addressed for storing a packet payload. This sizing rule is also beneficial because when a memory device is divided into groups of memory cells, each group can be written to independently of the other.
只有一组输出控制设备被指定给包含多个存储单元的单个存储组这一事实是有好处的,因为利用几个输出端口想同时访问同一存储组的可能性非常小这一事实,能够保持很少数量的硬件和软件。对相同存储组同时访问的可能性很低,是因为在平均的业务量时通常出现分组突发,即连续的分组到达相同的输出端口。由于突发,通常整个存储组包含到达同一输出端口的数据。性能恶化可能性很小的第二个原因是,在一个时间点,并非所有的输出端口都忙且存储组通常没有全部填满的事实,及最后存储组远多于输出端口的事实。The fact that only one set of output control devices is assigned to a single memory bank containing multiple memory cells is advantageous because it can be kept very small by taking advantage of the fact that several output ports want to access the same memory bank at the same time. Small amount of hardware and software. The probability of simultaneous access to the same memory bank is low because packet bursts, ie consecutive packets arriving at the same output port, usually occur during average traffic. Due to bursting, usually the entire bank contains data arriving at the same output port. The second reason why performance degradation is less likely is the fact that not all output ports are busy at a point in time and the banks are usually not all filled, and in the end there are far more memory banks than output ports.
为每个输出端口提供一个单独的输出队列简化了为存储的有效负载寻找路由从而到达它们的目的地的方法。另外这是一种处理多信道广播分组的非常简单的方法。Providing a separate output queue for each output port simplifies the method of routing stored payloads to their destinations. Also this is a very simple way of handling multicast packets.
一个交换控制设备提供了便利,因为用这样的设备,在哪个存储单元中存有有效负载的信息可很容易地被取得,并且进一步这个设备可对不同的分组类型,相应的分组因素进行编程。A switch control device provides convenience, because with such a device the information in which memory location the payload is stored can be easily retrieved, and further this device can be programmed for different packet types, corresponding packet factors.
一种用于产生数据模式,尤其是为每个分组产生比特表的翻译设备,代表一个用于从分组头中很容易地提取出路由信息的设施。另外,这对多信道广播分组注明为有效。A translation device for generating data patterns, in particular bitmaps for each packet, represents a facility for easily extracting routing information from packet headers. Additionally, this is noted as valid for multicast packets.
通过从队列控制设备中接收指定的数据模式并用它做为启动功能把各个有效负载地址存储在输出队列中在分组头中的路由信息被最好地利用。在这里有效负载地址被定义为属于接收各个有效负载的存储组的存储组地址和有效负载被存储于其中的存储单元号码的组合。在有效负载占据着几个连续的存储单元的情况下,存储单元号可被选定为例如包含着有效负载第一个字节的存储单元。这又为达到快速容易地把有效负载送到它们的目的地提供了一个有效的设备。The routing information in the packet header is best utilized by receiving the specified data pattern from the queue control device and using it as an enable function to store the individual payload addresses in the output queue. The payload address is defined here as a combination of the bank address belonging to the bank receiving the respective payload and the memory unit number in which the payload is stored. In the case where the payload occupies several consecutive memory locations, the memory location number may be selected as, for example, the memory location containing the first byte of the payload. This in turn provides an efficient means for quickly and easily delivering payloads to their destination.
由于有效负载的存储过程,尤其是具有小数目字节的有效负载的存储非常快,当有关哪个存储单元存储哪个有效负载的信息对几个输入端口被并行处理时,背压可被更好地避免。背压可以在例如,当有效负载的写处理比对关于哪个存储单元存储哪个有效负载的信息片的管理更快时产生,这是因为存储设备会被完全填满从而再不能存储更多的输入分组有效负载。Since the storage process of payloads, especially with small numbers of bytes, is very fast, backpressure can be better optimized when the information about which memory cell stores which payload is processed in parallel for several input ports. avoid. Backpressure can arise, for example, when the write processing of the payload is faster than the management of the piece of information about which storage unit stores which payload, because the storage device will be completely filled and no more input can be stored Packet payload.
当计数设备为每个存储组计算每个多信道广播分组的读出处理数目时,有效负载只需被存储一次并且丢失分组或没有为所有输出端口提供它们的多信道广播分组拷贝的危险性减小。另外,如果为每个存储组只提供一个计数设备,这仍足以为多信道广播分组保持上述的低危险性,并且同时为整个交换装置减少了必须的计数器数目。When the counting device counts the number of read transactions per multicast packet for each memory group, the payload need only be stored once and the risk of losing packets or not providing all output ports with their copies of multicast packets is reduced. Small. Furthermore, if only one counting device is provided for each memory group, this is still sufficient to maintain the above-mentioned low risk for multicast packets and at the same time reduce the necessary number of counters for the entire switching arrangement.
除了它的使动功能外,把数据模式用于计数目的是对信息非常有效的应用,它减少了用到的硬件和软件。In addition to its enabling function, the use of data patterns for counting purposes is a very efficient application of information, which reduces the use of hardware and software.
当计数设备被分割为两个计数器时,实现的计数器只需要单方向计数,这不那么复杂。另外,两个计数器可以同时并互相独立地操作,这降低了硬件复杂度。When the counting device is split into two counters, the implemented counter only needs to count in one direction, which is less complicated. In addition, the two counters can operate simultaneously and independently of each other, which reduces hardware complexity.
对自由存储组地址的簿计管理提供了对非占据存储组地址的非常快速的访问,并降低了存储组地址在它们的全部内容被读出前被再用的可能性。Bookkeeping of free storage group addresses provides very fast access to non-occupied storage group addresses and reduces the likelihood that storage group addresses will be reused before their entire contents have been read.
本发明的另一个目标是提供一种方法,用于通过在存储设备中存储分组有效负载把输入的固定长度数据分组从多个输入端口传送到多个输出端口,使用交换设备在连续的存储单元之间进行交换。Another object of the present invention is to provide a method for transferring an input fixed-length data packet from a plurality of input ports to a plurality of output ports by storing the packet payload in a storage device, using a switching device in consecutive storage units exchange between.
本发明的进一步目标是提供一个包含几个上述交换装置的交换设备。这样一个设备提供更好的性能,比如更高的端口速率,更高的吞吐量或更多的输入和输出端口。A further object of the present invention is to provide a switching arrangement comprising several switching means as described above. Such a device provides better performance, such as higher port speed, higher throughput or more input and output ports.
当交换装置包含纠正由于交换装置的相同设计,如在相同的印制电路板上,造成的错误目的/输出对的端口映象设备时,交换设备可由相同的交换装置搭建起来,更特殊地由相同的印制电路板(PCB’S)搭建。Switching devices may be built from identical switching devices, more specifically by The same printed circuit boards (PCB's) build.
当每个交换装置被和一个仲裁设备和上述选择设备之一做为可按比例缩放的模块组合到一起时,产品成本可被降低,因为相同模块可被用作一个单独的交换装置或者用在一个带有几个交换装置的交换设备中。When each switching device is combined with an arbitration device and one of the above selection devices as a scalable module, product cost can be reduced because the same module can be used as a single switching device or in In a switching device with several switching devices.
如在权利要求32中声明的主/从配置是有好处的,因为有了它可达到更高的吞吐量。A master/slave configuration as claimed in
在所发明的交换装置中,通过一个交换设备,存储单元被组合在一起。通过这样做,存储单元的尺寸可被如此设定,从而小长度的分组有效负载可放入一个存储单元中而有效负载长度大一些的分组使用几个连续的存储单元。In the inventive switching arrangement, the storage units are grouped together by means of a switching device. By doing so, the storage unit can be sized such that a packet payload of a small length fits in one storage unit while a packet with a larger payload length uses several consecutive storage units.
根据本发明的一个方面,把进入的包含一个目的头和有效负载形式的信息的固定长度数据分组从多个输入端口(101-108)传送到多个输出端口(501-508)的交换装置,包括用于把上述进入分组的上述有效负载送到包含有多个存储单元(6001-6128)的存储设备(87)的输入设备(86),以及包括用于读出上述存储的有效负载并把它们送入从上述输出端口(501-508)中选出的一个的输出设备,该选项由上述目的头预先确定,其特征在于,至少一个交换设备(3401-3432)被提供,它包括的每个被连到上述存储单元(6001-6128)之一的开关输出(291-294)多于上述有效负载从上述输入设备(121-128,4001-4256,1301-1332)到达该处的开关输入(85),和上述开关输出(291-294)中至少两个专用于同一个上述开关输入(85),以及上述交换设备(3401-3432)能够在以一预定的次序在上述专用的开关输出(291-294)之间切换的同时,把上述有效负载从上述开关输入(85)导向它专用的开关输出(291-294)。According to one aspect of the present invention, a switching device for transferring incoming fixed-length data packets comprising a destination header and information in the form of payload from a plurality of input ports (101-108) to a plurality of output ports (501-508), comprising an input device (86) for sending said payload of said incoming packet to a storage device (87) comprising a plurality of storage units (6001-6128), and comprising a device for reading said stored payload and sending They are sent to an output device selected from the above-mentioned output ports (501-508), the option is predetermined by the above-mentioned destination header, characterized in that at least one switching device (3401-3432) is provided, and each A switch output (291-294) connected to one of said storage units (6001-6128) is more than said payload from said input device (121-128, 4001-4256, 1301-1332) to a switch input thereto (85), and at least two of said switching outputs (291-294) are dedicated to the same said switching input (85), and said switching devices (3401-3432) are able to switch between said dedicated switching outputs in a predetermined order While switching between (291-294), the above-mentioned useful load is directed to its dedicated switch output (291-294) from the above-mentioned switch input (85).
本发明的一个实施例提供翻译设备,用于把上述头翻译成一个数据模式,该模式包含关于上述进入分组要被发送到哪个上述输出端口(501-508)的信息。An embodiment of the invention provides a translation device for translating said header into a data schema containing information about to which said output port (501-508) said incoming packet is to be sent.
根据本发明的另一个方面,把进入的包含一个目的头和有效负载形式的信息的固定长度数据分组从多个输入端口(101-108)送到多个输出端口(501-508)的方法,包括一个把上述进入分组的上述有效负载送到包含有多个存储单元(6001-6128)的存储设备(1401-1432)的步骤,和把上述存储的有效负载读出并把它们送到从上述输出端口(501-508)中选出的一个的步骤,该选择由上述目的头预先确定,其特征在于上述有效负载经由交换设备(3401-3432)从上述开关输入(85)送到上述专用的开关输出(291-294),同时以一预定的次序在上述专用的开关输出(291-294)之间切换,该交换设施包含的每个被连到上述存储单元(6001-6128)之一的开关输出(291-294)多于上述有效负载从上述输入设备(121-128,4001-4256,1301-1332)到达该处的开关输入(85),上述开关输出(291-294)中至少两个专用于同一个开关输入(85)。According to another aspect of the present invention, a method of sending incoming fixed-length data packets comprising a destination header and information in the form of a payload from a plurality of input ports (101-108) to a plurality of output ports (501-508), including a step of sending said payload of said incoming packet to a storage device (1401-1432) comprising a plurality of storage units (6001-6128), and reading said stored payload and sending them to said The step of selecting one of the output ports (501-508), the selection is predetermined by the above-mentioned destination header, characterized in that the above-mentioned payload is sent from the above-mentioned switch input (85) to the above-mentioned dedicated switch outputs (291-294), while switching in a predetermined sequence between said dedicated switch outputs (291-294), each of which is connected to one of said storage units (6001-6128) included in the switching facility The switch outputs (291-294) are more than the switch inputs (85) where the above-mentioned effective loads arrive there from the above-mentioned input devices (121-128, 4001-4256, 1301-1332), and at least two of the above-mentioned switch outputs (291-294) one dedicated to the same switch input (85).
附图说明Description of drawings
本发明的例子在图示中给予说明,并借助于举例在下面给出详细描述。它在下面给出:Examples of the invention are illustrated in the drawings and the detailed description given below, by way of illustration. It is given below:
图1a:一个交换机实施例功能模块图的第一部分,Figure 1a: the first part of the functional block diagram of a switch embodiment,
图1b:一个交换机实施例功能模块图的第二部分,Fig. 1b: the second part of the functional block diagram of a switch embodiment,
图2:一个具有4个小尺寸长度分组有效负载的存储组的例子,Figure 2: An example of a storage group with 4 small size length packet payloads,
图3a:一个具有两个中等长度分组有效负载的存储组的例子,Figure 3a: An example of a storage group with two medium-length packet payloads,
图3b:一个具有一个大长度分组有效负载的存储组的例子,Figure 3b: An example of a storage group with a large length packet payload,
图4:一个具有4个交换装置的端口扩展装置,Figure 4: A port expansion unit with 4 switching units,
图5:一个具有4个印制电路板的端口扩展装置,Figure 5: A port expansion unit with 4 printed circuit boards,
图6:一个具有端口映象型交换装置的端口扩展装置,Figure 6: A port expansion device with a port-mapping switch device,
图7:一个速率扩展装置。Figure 7: A rate extension device.
具体实施例的详细描述Detailed description of specific embodiments
本发明在下面各种实施例中被予以说明。所选定的装置和端口的数目只用于说明例子,它可被改变而并不离开本发明的范畴。为清楚起见在图1到图3b中许多相同部分被并行安置,只有这些部分的第一个和最后一个代表被画出,但在描述中所有的部分都被参照。The invention is illustrated in the following various examples. The number of devices and ports chosen is for illustrative example only and can be changed without departing from the scope of the invention. For clarity in Figures 1 to 3b many identical parts are arranged side by side, only the first and last representations of these parts are drawn, but all parts are referred to in the description.
在图1a,b和2中给出的设备包含8个输入端口101-108,它们被连到具有翻译设备的功能的8个输入控制器111-118上。上述输入控制器111-118中的每一个被连到8个随后的输入路由器121-128中相应的一个。每个输入路由器121-128经由256条路由连接线路4001-4256中的一条被连到32个输入选择器1301-1332中的每一个。输入路由器121-128,路由器连接线路4001-4256和输入选择器1301-1332一起组成一个输入设备86。32个输入选择器中的每一个经由32个单元选择器开关3401-3432中的一个被连接到32个存储组1401-1432中对应的一个。单元选择器开关3401-3432起到交换设备的作用。存储组1401-1432中的每一个做为开关控制设备拥有它的指定的组输入控制器1501-1532以及做为组输出控制设备拥有它的指定的组输出控制器1601-1632。每个组输入控制器1501-1532经由八个双向线路521-528中之一被连到每个输入控制器111-118。每个存储组1401-1432包括这样一个四个存储单元6001-6128的组并有四个对应的存储输出。因此有128个存储单元6001-6128,被分为四组。每个单元选择器开关3401-3432有一个连到输入设备86的开关输入85,并有4个开关输出291,292,293,294,它们中的每一个连到存储组1401-1432中之一的存储单元6001-6128中的一个。存储组1401-1432一起组成一个存储设备87。每个存储组1401-1432的每个输出被连到八个在一起被定义为输出设备的输出路由器171-178中的每一个。八个输出路由器171-178中的每一个被正确地连到八个输出控制器201-208中的一个。The device shown in Figures 1a, b and 2 comprises 8 input ports 101-108 which are connected to 8 input controllers 111-118 which function as translation devices. Each of the aforementioned input controllers 111-118 is connected to a corresponding one of eight subsequent input routers 121-128. Each input router 121-128 is connected to each of the 32 input selectors 1301-1332 via one of the 256 routing connection lines 4001-4256. Input routers 121-128, router connection lines 4001-4256 and input selectors 1301-1332 together form an input device 86. Each of the 32 input selectors is connected via one of the 32 unit selector switches 3401-3432 to a corresponding one of the 32 storage groups 1401-1432. Unit selector switches 3401-3432 function as switching devices. Each of the memory banks 1401-1432 has its assigned bank input controller 1501-1532 as a switch control device and its assigned bank output controller 1601-1632 as a bank output control device. Each group input controller 1501-1532 is connected to each input controller 111-118 via one of eight bidirectional lines 521-528. Each memory bank 1401-1432 includes such a bank of four memory cells 6001-6128 and has four corresponding memory outputs. There are thus 128 memory cells 6001-6128, divided into four groups. Each cell selector switch 3401-3432 has a switch input 85 connected to an input device 86 and has four switch outputs 291,292,293,294, each of which is connected to one of the memory banks 1401-1432 One of the storage units 6001-6128. Storage groups 1401-1432 together form a storage device 87. Each output of each storage group 1401-1432 is connected to each of eight output routers 171-178 which together are defined as output devices. Each of the eight output routers 171-178 is properly connected to one of the eight output controllers 201-208.
以地址管理器71为形式的簿计管理设备包括一个地址查寻表72,该表包含一个32行3列78,79,80的存储矩阵。第一列78包含比较器,专用于存储组1401-1432的存储组地址。第二列79包含一个第一计数器,而第三列80包含一个第二计数器。地址管理器71进一步包含一个递增部分74和一个递减部分73。地址查寻表72,递增部分74和递减部分73一起组成一个计数设备。递增部分74被连到全部八个输入控制器111-118和全部八个输入路由器121-128。递减少部分73也有八个输入,经由八条递减器输入线路541-548被连到八个输出控制器201-208和八个输出路由器171-178。在递减少部分和输出路由器171-178,输出控制器201-208之间的八条递减器输入线路541-548也被连接到32个组输出控制器1601-1632中的每一个。递减部分73和递增部分74被连到地址查寻表72,该表本身被连到具有32个队列位置的一个地址队列75。地址队列75有一个连到每个输入控制器111-118的输出。一个以输出队列访问管理器18为形式的队列控制设备有八个输入,它们被分别连到八个输入控制器121-128。八个输入被分为每组四个输入的两个输入组281,282。每个输入组281,282被连到一个组选择开关19,该开关有四个输出线路组合在一起作为一个输出组30。输出队列访问管理器18进一步包括一个开关控制器77,该控制器控制组选择开关19并具有八个来自输入控制器111-118的输入。八个输出队列261-268中每一个有四个并行连到四条输出线路的输入。每个输出队列261-268是专用的,经由八个队列输出线路531-538中之一链接到输出控制器201-208中的一个。每个输出控制器201-208的数据输出直接连到八个输出端口501到508中的一个。每个组输出控制器1601-1632提供一个读指针,该指针专为对应于存储组1401-1432中的所有四个存储单元600-628所共用。存储单元6001-6128都有相同的尺寸,即长度为16字节。由该装置处理的分组可有几种尺寸,被称为分组类型,即一个小分组有12字节的有效负载长度,一个中等分组有32字节以及一个大分组有64字节的有效负载长度。Bookkeeping equipment in the form of an address manager 71 includes an address look-up table 72 comprising a memory matrix of 32 rows and 3 columns 78,79,80. The first column 78 contains comparators dedicated to the bank addresses of memory banks 1401-1432. The second column 79 contains a first counter and the third column 80 contains a second counter. The address manager 71 further includes an incrementing section 74 and a decrementing section 73 . The address look-up table 72, incrementing section 74 and decrementing section 73 together form a counting device. Incremental section 74 is connected to all eight input controllers 111-118 and to all eight input routers 121-128. Decrement section 73 also has eight inputs, which are connected to eight output controllers 201-208 and eight output routers 171-178 via eight decrementer input lines 541-548. In the decrement section and output routers 171-178, the eight decrementer input lines 541-548 between the output controllers 201-208 are also connected to each of the 32 group output controllers 1601-1632. The decrementing section 73 and incrementing section 74 are connected to an address look-up table 72 which itself is connected to an address queue 75 having 32 queue positions. Address queue 75 has an output connected to each input controller 111-118. A queue control device in the form of an output queue access manager 18 has eight inputs which are respectively connected to eight input controllers 121-128. The eight inputs are divided into two input groups 281, 282 of four inputs each. Each input group 281, 282 is connected to a group selection switch 19 which has four output lines grouped together as an output group 30. The output queue access manager 18 further includes a switch controller 77 which controls the bank select switch 19 and has eight inputs from the input controllers 111-118. Each of the eight output queues 261-268 has four inputs connected in parallel to four output lines. Each output queue 261-268 is dedicated, linked to one of the output controllers 201-208 via one of eight queue output lines 531-538. The data output of each output controller 201-208 is directly connected to one of the eight output ports 501-508. Each bank output controller 1601-1632 provides a read pointer dedicated to all four memory cells 600-628 in the corresponding memory bank 1401-1432. The storage units 6001-6128 all have the same size, that is, the length is 16 bytes. Packets handled by the device can be of several sizes, known as packet types, i.e. a small packet has a payload length of 12 bytes, a medium packet has a payload length of 32 bytes and a large packet has a payload length of 64 bytes .
如在下面给出的详细解释,在应用中这个装置被确定通过对单元选择开关3401-3432进行相应动作的编程,只接收一种类型分组。但是,编程可对不同应用进行改变。As explained in detail below, in applications the device is determined to receive only one type of packet by programming the cell selection switches 3401-3432 to act accordingly. However, the programming can be changed for different applications.
例如,一个输入固定长度分组,如ATM分组到达一个输入端口111并正进入相应的输入控制器121。分组包含有由头和有效负载组成的信息。头中包含有关于该分组将被送到哪个输出端口501-508的目的信息。目的信息在分组头中被加密为一个数码。相应的输入控制器121充当翻译设备,因此包含一个数码列表和一个相应的数据模式列表,即比特图。输入目的信息的数码被与存储的数码列表相比较,直到一个匹配的数码被找到。相应的比特图被从列表中读出并指定给接收到的分组。于是通过这个过程目的信息被翻译为专用的比特图。该比特图有8个比特,每个输出端口501-508一个。所包含的比特以二进制形式表明是否各个输出端口501-508应该接收这个分组。在该比特图中的每个逻辑1意味着相应的输出端口501-508应该接收分组的一个拷贝。因此通过这个比特图确定了输出端口501-508的选择。如将在下面解释的,这是一个处理多模分组的复杂方法。指定的比特图被送到输出队列访问管理器18的开关控制器77。输入分组的有效负载被送到对应的输入路由器121。For example, an incoming fixed-length packet, such as an ATM packet, arrives at an input port 111 and is entering a corresponding input controller 121 . A packet contains information consisting of a header and a payload. The header contains destination information as to which output port 501-508 the packet is to be sent to. The destination information is encrypted as a number in the packet header. The corresponding input controller 121 acts as a translation device and thus contains a list of digits and a corresponding list of data patterns, ie bitmaps. The code of the input destination information is compared with the stored code list until a matching code is found. The corresponding bitmap is read from the list and assigned to the received packet. The purpose information is then translated into a dedicated bitmap through this process. The bitmap has 8 bits, one for each output port 501-508. The bits included indicate in binary form whether the respective output port 501-508 should receive the packet. Each logical 1 in the bitmap means that the corresponding output port 501-508 should receive a copy of the packet. The selection of output ports 501-508 is thus determined by this bitmap. As will be explained below, this is a complex method of handling multimodal packets. The specified bitmap is sent to the switch controller 77 of the output queue access manager 18. The payload of the incoming packet is sent to the corresponding incoming router 121 .
地址管理器的地址队列75给每个输入控制器111-118指定一个空闲存储组地址的号码,即一个没有被未交付分组有效负载占据的存储组1041-1432的地址。一个空闲存储组地址被地址队列75交给每个输入控制器111-118并同时从队列中被删除。为了达到高性能,每个输入控制器111-118在分组到达前已经得到一个存储组地址。The address queue 75 of the address manager assigns each input controller 111-118 the number of a free bank address, ie, the address of a bank 1041-1432 not occupied by undelivered packet payloads. A free bank address is given to each input controller 111-118 by the address queue 75 and simultaneously removed from the queue. In order to achieve high performance, each input controller 111-118 has been given a bank address before the packet arrives.
接收输入控制器111把收到的存储组地址送到对应的输入路由器121,并且也送到输出队列访问管理器18中对应的输入组282。The receive input controller 111 sends the received storage group address to the corresponding input router 121 and also to the corresponding input group 282 in the output queue access manager 18 .
接收输入控制器111进一步把指定的比特图送到递增部分74。在递增部分74中,计算出接收到比特图中的逻辑1的总和并送到地址查寻表72。在那里,相应的存储组地址的第一个计数器79被设定为接收到的值。The reception input controller 111 further sends the designated bitmap to the incrementing section 74 . In the incrementing section 74, the sum of the logic 1s in the received bitmap is calculated and sent to the address look-up table 72. There, the first counter 79 of the corresponding bank address is set to the received value.
当在分组到达之前存储组地址已被指定给输入控制器111-118时,有可能把相应的计数器设定为已在该存储组1401-1432中的存储单元6001-6128的值,如4,因此只有在多信道广播分组的情况下,需要增加部分74的一个增加步骤。这带来的好处是不需要对这个等待存储组1401-1432增加硬件复杂度,对计数器位置的比较得到不相等的结果,该结果防止存储组地址被错误地重用。When the storage group address has been assigned to the input controller 111-118 before the packet arrives, it is possible to set the corresponding counter to the value of the storage location 6001-6128 already in the storage group 1401-1432, such as 4, An additional step of adding section 74 is therefore required only in the case of multicast packets. This has the advantage that without adding hardware complexity to this waiting bank 1401-1432, the comparison of the counter positions yields an unequal result which prevents bank addresses from being incorrectly reused.
接收输入路由器121已经建立起到达它已收到存储组地址的存储组1432的相应输入选择器1332的连接。输入选择器1332已自动把输入连接接通到对应的存储组1432。为了取得高性能,当一个分组到达时,到输入选择器1301-1332的连接已都被建立起来。The receiving input router 121 has established a connection to the corresponding input selector 1332 of the storage group 1432 for which it has received the storage group address. The input selector 1332 has automatically switched the input connection to the corresponding memory bank 1432 . For high performance, connections to input selectors 1301-1332 are all established when a packet arrives.
控制带有接收输入控制器111已收到的存储组地址的相应存储组1432的相应组输入控制器1532,从接收输入控制器111收到一个表明该存储组1432将被写的信号。The corresponding bank input controller 1532 controlling the corresponding bank 1432 with the bank address received by the receive input controller 111 receives a signal from the receive input controller 111 indicating that the bank 1432 is to be written.
接收存储组1432的组输入控制器控制着相应的单元选择器开关3432,并另外用作写指针。由于已编址的存储组1432包含四个存储单元6125,6126,6127,6128,存储四个小长度分组类型的分组有效负载是可以的。对于第一个要写入的分组有效负载,已编址的单元选择器开关3432被指向第一个存储单元6125,而写指针被指向第一个字节。分组有效负载被插入已编址存储组1432的第一个存储单元6125,同时写指针被逐字节递增。这个过程之后,单元选择器开关3432被增加到下一个存储单元6126,写指针被复位到第一字节以接收下一个进入分组的下一个有效负载。当把有效负载写入编址存储单元6125时,相应的组输入控制器1532把由信元选择器开关3432确定的实际存储单元6125的号发送给接收输入控制器111,其中该存储单元号被进一步发送给输出队列访问管理器18的输入组282,从那儿发送到输出组30,再从那儿到指定的输出队列261-268。The bank input controller receiving the memory bank 1432 controls the corresponding cell selector switch 3432 and additionally serves as a write pointer. Since the addressed memory bank 1432 contains four memory locations 6125, 6126, 6127, 6128, it is possible to store four packet payloads of the small length packet type. For the first packet payload to be written, the addressed cell selector switch 3432 is pointed to the first memory cell 6125 and the write pointer is pointed to the first byte. The packet payload is inserted into the first memory location 6125 of the addressed memory bank 1432 while the write pointer is incremented byte by byte. After this process, the cell selector switch 3432 is incremented to the next memory cell 6126 and the write pointer is reset to the first byte to receive the next payload of the next incoming packet. When a payload is written to an addressed memory location 6125, the corresponding bank input controller 1532 sends to the receive input controller 111 the number of the actual memory location 6125 determined by the cell selector switch 3432, where the memory location number is It is further sent to the input group 282 of the output queue access manager 18, from there to the output group 30, and from there to the designated output queues 261-268.
输出队列访问管理器18把输入组281,282一个接一个地连接到输出组30,从而连到所有的输出队列261-268。这由控制着组选择器开关19的开关过程的开关控制器77完成。然后由收到的存储单元号和收到的存储组地址组成的有效负载地址就与开关控制器77收到的比特图一起被写入输出队列261-268。只有输出队列261-268中特定的几个,即在比特图中有逻辑1的几个,接收有效负载地址。有效负载地址被存储在必须接收一个进入分组拷贝的每个输出端口501-508对应的输出队列261-268中。The output queue access manager 18 connects the input groups 281, 282 to the output group 30 one after the other to all the output queues 261-268. This is done by the switch controller 77 which controls the switching process of the group selector switch 19 . The payload address consisting of the received bank number and the received bank address is then written to the output queues 261-268 along with the bitmap received by the switch controller 77. Only certain ones of the output queues 261-268, ie, those with
于是应用上述装置,各种方法,一个分组的有效负载被存储在存储单元6125中,它的目的地被如下确定,即指定给特定的输出端口501-508的输出队列261-268在相应的输出队列261-268中含有有效负载地址的记录。Then using the above-mentioned means, various methods, the payload of a packet is stored in the storage unit 6125, and its destination is determined as follows, that is, the output queue 261-268 assigned to a particular output port 501-508 is in the corresponding output port 501-508 Queues 261-268 contain records for payload addresses.
编址存储组1432保持激活直到全部四个存储单元6125,6126,6127,6128都已被使用。这意味着下个进入的有效负载被自动存储在存储单元6126中,后面的存在存储单元6127中等。从而存储的有效负载不必一定到达相同的输出端口501-508。当单元选择器开关3432已经完成对一个存储组1432内的四个存储单元6125,6126,6127,6128中每一个的选择时,一个新的存储组1401-1431从地址队列75中被选择出来用于存储下面四个分组有效负载。一个存储组1432内的存储过程通常被顺序地完成。单元选择器开关3432被编程以预定的次序在存储单元6125,6126,6127,6128之间切换。Addressed bank 1432 remains active until all four memory cells 6125, 6126, 6127, 6128 have been used. This means that the next incoming payload is automatically stored in storage unit 6126, the next in storage unit 6127 and so on. Thus stored payloads do not necessarily have to go to the same output port 501-508. When the cell selector switch 3432 has finished selecting each of the four memory cells 6125, 6126, 6127, 6128 in a memory bank 1432, a new memory bank 1401-1431 is selected from the address queue 75 for to store the following four packet payloads. Stored procedures within a storegroup 1432 are typically completed sequentially. Cell selector switch 3432 is programmed to switch between memory cells 6125, 6126, 6127, 6128 in a predetermined order.
要从一个存储单元6001-6128中读出一个分组有效负载并把它送到指定的输出端口501-508中的一个,每个输出控制器201-208从它相应的输出队列261-268中接收下一个有效负载地址,该地址包括在相应的存储组1432的地址和存储该输出端口508的下一个有效负载的相应存储单元6125的号。接收输出控制器508用收到的存储组地址,通知包含存储单元6125的存储组1432的组输出控制器1632,它必须准备好发送存储的分组有效负载。输出控制器208从输出队列268中以存储组1432和存储组1432内存储单元6125的形式接收有效负载地址。相应的输出路由器178也从输出控制器208中接收有效负载地址,并在具有相应存储单元号的存储单元6125和输出控制器208之间建立连接。然后组输出控制器1632也提供一个读指针,复位该读指针到第一字节并同时把存储组1432中的全部分组发送到它的存储输出。做为本例中举例的情况,对于从存储组1432中读出,当只有一个存储单元6125被连到一个输出控制器208时,只有该存储单元6125的内容被读出。但是,由于在读过程中只做了拷贝,被称为非破坏性读出,同一存储组1432中的其它分组有效负载没有丢失,而是在后面的读出过程中被读出。当收到分组有效负载时,输出控制器208向递减部分73发一个信号。于是第二个计数器80被减1。To read a packet payload from a storage unit 6001-6128 and send it to one of the designated output ports 501-508, each output controller 201-208 receives from its corresponding output queue 261-268 The next payload address, which includes the address in the corresponding memory bank 1432 and the number of the corresponding memory location 6125 that stores the next payload for the output port 508. The receive output controller 508 uses the received memory group address to notify the group output controller 1632 of the memory group 1432 containing the memory unit 6125 that it must be ready to send the stored packet payload. The output controller 208 receives the payload address from the output queue 268 in the form of a storage group 1432 and a storage location 6125 within the storage group 1432 . The corresponding output router 178 also receives the payload address from the output controller 208 and establishes a connection between the storage unit 6125 with the corresponding storage unit number and the output controller 208 . The bank output controller 1632 then also provides a read pointer, resets the read pointer to the first byte and simultaneously sends all packets in the store bank 1432 to its store output. As an example in this example, for reading from the storage group 1432, when only one storage unit 6125 is connected to one output controller 208, only the content of the storage unit 6125 is read. However, since only copying is done during the read process, which is called non-destructive read, other packet payloads in the same storage group 1432 are not lost, but are read during the subsequent read process. The output controller 208 sends a signal to the decrement section 73 when the packet payload is received. The second counter 80 is then decremented by one.
当第一个计数器79和第二个计数器80二者具有相等值时,比较器78意识到相应的存储组1432的存储组地址再次被放入地址队列75。When both the first counter 79 and the second counter 80 have equal values, the comparator 78 realizes that the bank address of the corresponding bank 1432 is put into the address queue 75 again.
所有的存储组1401-1432都是独立的,可以独立地、从而异步地接收分组有效负载。但是,同时只可有一个有效负载被写入一个存储组1401-1432。All storage groups 1401-1432 are independent and can receive packet payloads independently and thus asynchronously. However, only one payload can be written to a memory bank 1401-1432 at a time.
输入设备86也可由32乘8到1路由器,各自为8到1的复用器的装置替代。The input device 86 could also be replaced by a 32 by 8-to-1 router, each an 8-to-1 multiplexer arrangement.
上述装置可在每个存储组1401-1432内部实现对所包含存储单元6001-6128的同步读出。这意味着想从同一个存储组1401-1432中读出一个分组有效负载的第二个输出控制器201-207必须等待,直到当前正被读的分组有效负载被完全读出,即读指针再次到达存储单元6001-6128的第一字节。这个情况可做为确定存储组1401-1432尺寸大小的标准。在一个存储组1402-1432中组合小数目的存储单元6001-6128意味着几个输出端口501-508同时请求从同一存储组1401-1432接收分组有效负载的可能性很低。另一方面,一个存储组1401-1432中有大数目的存储单元6001-6128意味着在硬件上的花费减小是事实,硬件即为输入路由器121-128和输入选择器1301-1332,因为一个存储组1401-1432只有一个开关输入85。The above-mentioned device can realize synchronous reading of the included memory cells 6001-6128 within each memory group 1401-1432. This means that a second output controller 201-207 that wants to read a packet payload from the same memory bank 1401-1432 must wait until the packet payload currently being read is completely read, i.e. the read pointer reaches First byte of memory locations 6001-6128. This situation can be used as a standard for determining the size of the storage groups 1401-1432. Combining a small number of memory cells 6001-6128 in one memory bank 1402-1432 means that the likelihood of several output ports 501-508 simultaneously requesting to receive packet payloads from the same memory bank 1401-1432 is low. On the other hand, it is a fact that a large number of storage units 6001-6128 in a storage group 1401-1432 means that the expenditure on hardware is reduced, namely the input routers 121-128 and input selectors 1301-1332, because a Banks 1401-1432 have only one switch input 85 .
为了保持被阻塞输出端口501-508的等待时间很低,一个存储组1401-1432内的存储单元6001-6128应都被同等程度填充。于是,在读出过程中,组输出控制器1601-1632的读指针在已到达全部存储单元6001-6128最后占据的字节后立即被复位到存储单元6001-6128的第一个字节,这比等待读指针到达存储单元6001-6128的最后字节要快得多。一般地读出过程和存储过程是相互独立的。因此,一特定分组有效负载的读出过程可在它的第一字节已被存储时已被启动。To keep the latency of blocked output ports 501-508 low, the memory cells 6001-6128 within a memory bank 1401-1432 should all be equally filled. Thus, during the read process, the read pointers of the group output controllers 1601-1632 are reset to the first byte of memory cells 6001-6128 immediately after having reached the last occupied byte of all memory cells 6001-6128, which Much faster than waiting for the read pointer to reach the last byte of memory location 6001-6128. Generally, the read process and the store process are independent of each other. Thus, the readout process of a particular packet payload can already be initiated when its first byte has been stored.
上述配置已被示范性地描述为用于四个小尺寸的分组,其中分组尺寸和存储组尺寸的关系在这里被叫做组合因子4(分组每组)。但是这个装置也适合于处理中等尺寸的分组类型,即尺寸超出单个存储单元6001-6128的长度但小于两个存储单元6001-6128的分组类型。交换装置可被以如下方式编程,即这样一个分组的有效负载被分为两个有效负载段,每段被存在单独的、连续的存储单元6001-6128中。The above configuration has been exemplarily described for four small-sized groups, where the relationship between group size and storage group size is referred to herein as a combination factor of 4 (group per group). But this arrangement is also suitable for handling medium-sized packet types, ie packet types whose size exceeds the length of a single memory location 6001-6128 but is smaller than two memory locations 6001-6128. The switch can be programmed in such a way that the payload of such a packet is divided into two payload segments, each segment being stored in a separate, contiguous memory location 6001-6128.
这个解决方法在图3a中画出。第一个分组被分为第一个有效负载段P1aPD501(即第1个分组,段a,分组目的输出端口501)和二个有效负载段P1bpp501(即第1个分组,段b,分组目的输出端口501)。第一个有效负载段被存储于存储单元6001中,第二个有效负载段被存储于随后的存储单元6002中。对被分为第一有效负载段P2apo503和第二有效负载段P2bpo503的第二个分组进行相同的操作。于是在存储组1401中,两个中等尺寸的分组被存储。这种分组尺寸和存储组尺寸之间的关系在这里被叫做组合因子2(分组每组)。就带有设置的交换装置的整个硬件配置而言,和组合因子4的唯一差异在于对单元选择器开关3401-3432的开关动作的不同编程,和由此对组输入控制器1501-1532的不同编程,以及不同的组输出控制器1601-1632的读过程。This solution is drawn in Figure 3a. The first packet is divided into the first payload segment P1aPD501 (ie the first packet, segment a, packet destination output port 501) and two payload segments P1bpp501 (ie the first packet, segment b, packet destination output port 501). The first payload segment is stored in
在所有情况下,单元选择器开关3401-3432在连续的存储单元6001-6128之间实现精确的切换。每个存储组1401-1432只通过一条输入线路,即在开关输入85,被连接到输入设备86。这造成对输入设备86所要求尺寸的限制。和一个已知的交换装置相比,在上面的情况中,输入设备86的输出数被除4。地址队列75包括所有空闲存储组地址的池,其中每个存储组地址包括四个物理地址(存储单元号)。对一个存储组地址的每次访问意味着对整个存储组1401-1432的一次访问,而只有当这个特定存储组1401-1432中的所有四个存储单元6001-6128都已被读出时,一个存储组1401-1432才可以被追加到空闲存储组地址的池中。In all cases, cell selector switches 3401-3432 enable precise switching between consecutive memory cells 6001-6128. Each memory bank 1401-1432 is connected to input device 86 by only one input line, namely at switch input 85 . This places a limit on the required size of the input device 86 . In the above case the output number of the input device 86 is divided by four compared to a known switching arrangement. Address queue 75 includes a pool of all free bank addresses, where each bank address includes four physical addresses (memory unit numbers). Each access to a bank address means an access to the entire bank 1401-1432, and only when all four memory cells 6001-6128 in this particular bank 1401-1432 have been read, a Only storage groups 1401-1432 can be appended to the pool of free storage group addresses.
通过只存储一次它们的有效负载和把相应的有效负载地址放入几个输出队列261-268中实现多信道广播分组。对输出队列261-268的选择由比特图决定。计数设备72,73,74提供如下控制,相应的存储单元6001-6128和相应的存储组1401-1432直到其中存储的多信道广播模分组的最后一个拷贝已被读出时才被再用。Multicast packets are implemented by storing their payloads only once and putting the corresponding payload addresses into several output queues 261-268. The selection of output queues 261-268 is determined by the bitmap. The counting devices 72, 73, 74 provide control that the respective storage unit 6001-6128 and the respective storage bank 1401-1432 are not reused until the last copy of the multicast module packet stored therein has been read out.
在这种装置中,存储组1401-1432有最小的存储区实体,具有一个写指针和四个开关输出291-294。四个开关输出291-294由单元选择器开关3401-3432组合在一起。因此一个存储组1401-1432有一个通用输入,即开关输入85和一个写指针。由于在某一特定时间点只有一个分组有效负载可被写入存储组1401-1432,并且到达一个存储组1401-1432的全部分组有效负载来自于同一输入端口101-108,将不会有分组有效负载必须等待被存储。因此所有的存储组1401-1432都彼此独立,这意味着它们中的每一个都可以独立于其它存储组1401-1432开始接收一个分组有效负载。所以,输入端口101-108可以彼此独立地接收进入的分组。因此不再需要用来同步输入端口101-108的弹性缓冲区或者消除延迟逻辑。In this arrangement, memory banks 1401-1432 have the smallest memory bank entity with a write pointer and four switch outputs 291-294. The four switch outputs 291-294 are grouped together by cell selector switches 3401-3432. Thus a bank 1401-1432 has a common input, switch input 85, and a write pointer. Since only one packet payload can be written to a memory bank 1401-1432 at a particular point in time, and all packet payloads arriving at a memory bank 1401-1432 come from the same input port 101-108, there will be no packet payloads The load must wait to be stored. All storage groups 1401-1432 are thus independent of each other, which means that each of them can start receiving a packet payload independently of the other storage groups 1401-1432. Therefore, input ports 101-108 can receive incoming packets independently of each other. There is thus no need for elastic buffers or delay removal logic to synchronize the input ports 101-108.
关于在一个存储组中对分组有效负载的同步读出,可以想象的情形是分组到达时间的细小差别导致了同步读出过程中很大的时延。尽管如此,由于对于正在不同输出队列261-268中排队的异步到达的分组,当这样一个队列的第一个分组在被阻塞的同时已被排队等待一段时间时已产生了自动同步,这个问题被最小化了。With respect to synchronous readout of packet payloads within a storage group, it is conceivable that small differences in packet arrival times lead to large delays in the synchronous readout process. However, since for asynchronously arriving packets that are being queued in different output queues 261-268, automatic synchronization has occurred when the first packet of such a queue has been queued for a period of time while being blocked, this problem is addressed. minimized.
在图3b中画出分组尺寸和存储组尺寸之间被叫做组合因子1的第三种关系,即对大尺寸分组类型的一个分组的存储,该分组由此被分为四个有效负载段P1aPD505,P1bPD505,P1cPD505,P1dPD505,它们被存储在一个存储组1401-1432的四个存储单元6001-6128中。如在图中所示,分组有效负载段P1aPD505,P1bPD505,P1cPD505,P1dPD505都比一个存储单元6001-6004的长度短,但因此所有段具有相等的长度。如上面解释的,这对于一个更快的读出过程证明为更好。在这样一个大尺寸分组的读出过程中,输出路由器171-178被顺序连接到四个存储单元6001-6004中的每一个。A third relationship between packet size and storage group size called
组合因子定义的可能性使得交换装置对于不同应用成为一个通用装置。不管分组类型的尺寸大小,芯片存储区通常被最大程度应用到。The possibility of combining factor definitions makes the switching device a universal device for different applications. Regardless of the size of the packet type, on-chip memory is usually maximized.
输出队列261-268可被分割为具有不同优先级的区域,这使得更高优先级的有效负载地址可绕过那些低优先级的,这最终意味着这些有效负载更容易被读出。The output queues 261-268 can be split into regions with different priorities, which allows higher priority payload addresses to bypass those of lower priority, which ultimately means that these payloads are easier to read.
从各种存储组1401-1432中读出有效负载可被异步也可被同步实现。在同步发送模式,所有的存储组1401-1432为读操作被同步。这意味着,由于等待同步点在同步发送模式中有附加延迟,这里同步点被定义为当写指针指向它相应的存储组1402-1432中所有相应的存储单元6001-6128的第一字节时那一时刻。但是,依赖于组合因子,有定义的多个同步点。对于组合因子1,在一个分组的读时间内有四个同步点。对于组合因子2,由于一个分组比一个存储单元长,有两个同步点。对于组合因子4,只有一个同步点。就绝对时间长度而言,最大延迟通常是一样的,即存储单元的长度,如这里为16字节。如果存储单元6001-6128的字节没有全部被存储的有效负载的数据填满,这个时间当然会减小。随后,读指针在最后有效负载字节后被立即复位到第一个字节,例如12个字节之后。Reading payloads from the various memory banks 1401-1432 can be performed asynchronously or synchronously. In synchronous send mode, all memory banks 1401-1432 are synchronized for read operations. This means that there is an additional delay in synchronous send mode due to waiting for the synchronization point, here the synchronization point is defined as when the write pointer points to the first byte of all corresponding memory cells 6001-6128 in its corresponding memory group 1402-1432 that moment. However, depending on the combination factor, there are multiple synchronization points defined. For a combination factor of 1, there are four synchronization points within the read time of a packet. For combination factor 2, since a packet is longer than a storage unit, there are two synchronization points. For
输出路由器171-178可被实现为一个阻塞输出路由器。这意味着输出路由器171-178在从一所选存储组1401-1432中进行有效负载的读出时,阻止其它输出路由器171-178对同一存储组1401-1432的任何访问。然后通过在每个存储组1401-1432之后安置带有一个输出和四个输入的一个复用装置,可以减小输出路由器171-178的规模,该输出被连到每个输出路由器171-178,输入被连到相应的存储组1401-1432的输出。则这个复用装置起到象是单元选择器开关3401-3432逆反形式的作用,在某一时刻只允许访问存储组1401-1432的一个存储单元6001-6128。因此看上去对被阻塞输出端口501-508的更长时间访问更为可能。但是,如已经解释的,对同一存储组1401-1432的几个输出端口501-508偶尔同时访问的低可能性是事实,该低可能性将保持延迟小到可以接受。Output routers 171-178 may be implemented as a blocking output router. This means that output routers 171-178, while reading payloads from a selected storage group 1401-1432, block any access to the same storage group 1401-1432 by other output routers 171-178. The output routers 171-178 can then be reduced in size by placing a multiplexer with one output and four inputs after each storage group 1401-1432, the output being connected to each output router 171-178, The inputs are connected to the outputs of the corresponding memory banks 1401-1432. The multiplexing means then acts like the inverse of the cell selector switches 3401-3432, allowing access to only one memory cell 6001-6128 of a memory bank 1401-1432 at a time. Thus longer accesses to blocked output ports 501-508 appear more likely. However, as already explained, the low probability of occasional simultaneous access to several output ports 501-508 of the same bank 1401-1432 is a fact that will keep the latency acceptably small.
在输出队列访问管理器18中,几个数据模式,相应的各个比特图可以被并行处理,对应的接收到的有效负载地址也可以被并行处理。下面的数字举例说明背景。当假设时钟周期为8ns和处理速度为每个时钟周期一字节时,具有12字节大小的分组有效负载的存储过程要用总共96毫微秒。这是最大可接受的时间,在此期间所有输入端口101-108的存储组地址排队过程必须被完成。当有32个输入端口101-108和相等数目的输出端口501-508和输出队列261-268,输入端口101-108被分为四个一组且每组在一个时钟周期内被处理时,把有效负载地址送入输出队列261-268用掉8个时钟周期,因此为64ns,明显比96ns小。所以,在这里,四个同时处理的有效负载地址的并行是满足必要的及时进行有效负载地址排队的最低限。In the output queue access manager 18, several data patterns, corresponding bitmaps can be processed in parallel, and corresponding received payload addresses can also be processed in parallel. The figures below illustrate the background. When assuming a clock cycle of 8 ns and a processing speed of one byte per clock cycle, the store procedure with a packet payload of
交换装置的结构化原理适合于对尺寸的任意选择,它也被叫做可伸缩性。这意味着通过改变尺寸,可以选择交换装置的一些或全部部分,需要数目的输入端口101-108输出端口501-508和/或存储单元6001-6128,相对应的存储组1401-1432。The structural principle of the switching device is suitable for any choice of size, which is also called scalability. This means that by varying the dimensions, some or all parts of the switching device can be selected, a desired number of input ports 101-108 output ports 501-508 and/or storage units 6001-6128, corresponding to storage banks 1401-1432.
上述的硬件装置可被放变但仍保留本发明的基本原理。例如递增部分74不必要连到输入控制器111-118。它们也可以被连接到输出组30的输出,然后只接收在当时当地被处理的输入端口101-108取自比特图的增加值。另外,比特图不必由开关控制器77接收,也可以由输入组281,282接收。则对比特图的内容的翻译可在输出组30中进行。通常,被画为由相同线路被连接的带有几个成份的互连也可以被实现为总线连接或分隔线路。The hardware devices described above can be altered while still retaining the basic principles of the invention. For example, increment section 74 need not be connected to input controllers 111-118. They can also be connected to the outputs of the output group 30 and then only receive the added values taken from the bitmap at the input ports 101-108 which are processed locally at that time. In addition, the bitmap does not have to be received by the switch controller 77, but can also be received by the input groups 281,282. The translation of the content of the bitmap can then take place in the output group 30 . In general, an interconnection with several components drawn as being connected by the same line may also be implemented as a bus connection or as separate lines.
在随后章节中,将描述包含几个上述交换装置的装置。为清晰起见,所有的交换装置被画成只有两个输入端口和两个输出端口,但是当然带有更多数目输入端口和输出端口的例子都一样地工作。In the following sections, a device comprising several of the switching devices described above will be described. For clarity, all switches are drawn with only two input ports and two output ports, but of course examples with a greater number of input and output ports work equally well.
交换装置最好适合于被按比例扩展从而增强它的性能。因此做为一个可缩放的模块它对一个可扩展的系统是可用的。这里存在着不同模式的扩展:尺寸扩展,即端口数目的增加,存储区扩展以取得更高的数据通过量和速率扩展以取得更高的端口速率。The switching device is preferably adapted to be scaled up to enhance its performance. So as a scalable module it is available for a scalable system. There are different modes of expansion: size expansion, that is, an increase in the number of ports, storage area expansion for higher data throughput and rate expansion for higher port rates.
对于尺寸扩展,单级和多级配置是可能的。单级版本在图4中画出。这个设计具有比多级网络更小的延时,交换装置的数目按n2增长、n是输入端口扩展的复用因子。For size expansion, single-stage and multi-stage configurations are possible. The single-stage version is drawn in Figure 4. This design has less delay than a multi-stage network, and the number of switching devices grows by n2, where n is the multiplexing factor for the expansion of the input ports.
在图4中,4个交换装置11,12,13,14被组合在一起。第一个交换装置11有两个输入端口21,22和两个输出端口31,32。第二个交换装置12有两个输入端口23,24和两个输出端口33,34。第三个交换装置13有两个输入端口25,26和两个输出端口35,36。第四个交换装置14有两个输入端口27,28和两个输出端口37,38。第一个系统输入51被连到带有两个输出的第一个选择器设备41,一个输出被连到输入端口21,一个输出被连到输入端口23。第二个系统输入52被连到带有两个输出的第二个选择器设备42,一个输出被连到输入端口22,一个被连到输入端口24。第三个系统输入53被连到带有两个输出的第三个选择器设备43,一个输出被连到输入端口25,一个被连到输入端口27。第四个系统输入54被连到带有两个输出的第四个选择器设备44,一个输出被连到输入端口26,一个被连到输入端口28。第一个仲裁器45有做为第一个输入的输出端口31和做为第二个输入的输出端口35。它的输出被定义为第一个系统输出55。第二个仲裁器46有做为第一个输入的输出端口32和做为第二个输入的输出端口36。它的输出被定义为第二个系统输出56。第三个仲裁器47有做为第一个输入的输出端口33和做为第二个输入的输出端口37。它的输出被定义为第三个系统输出57。第四个仲裁器48有做为第一个输入的输出端口34和做为第二个输入的输出端口38。它的输出被定义为第四个系统输出58。In FIG. 4, four
现在整个装置有四个输入端口,而不是两个即系统输入51-54,也有四个输出端口,即系统输出端口55-58,但提供所有输入端口和输出端口之间的完全连接。选择器41,42,43,44充当地址过滤器。这样一个地址过滤器的目的是选择要把进入的分组送以交换装置11,12,13,14中的哪一个。这通过使用进入分组的头来完成。例如整个分组可被复制并送到每个交换装置11,12,13,14的过滤器单元,从而只有一个过滤器允许该分组通过。这样的过滤器单元也可以位于交换装置11-14中。在多信道广播分组的情况下,可能有必要在几个交换装置11-14中存储有效负载,尤其在这是在不多于两个装置中。另外,仲裁器45,46,47,48选择交换装置11,12,13,14中的哪一个有权力把它的分组从它的输出端口31-38送给系统输出55,56,57,58中的一个。带有这个装置的目的控制主要受限于直接使用分组头中目的信息的自动性。对于一个具有两个输入和两个输出的例子,两个比特的二进制编码被画出。系统输出55有二进制编码60。系统输出56有二进制编码01。系统输出57有二进制编码10。系统输出58有二进制编码11。另外,交换装置已被指定一个二进制数字,即交换装置11是数字0,交换装置12数字1,交换装置13数字0以及交换装置14数字1。每个交换装置11-14进一步具有一个每个输出端口31-38的编码。奇数的输出端口为0和偶数的为1。在头中带有一特定系统输出55-58的目的码到达系统任意输入51-54的分组,将自动地到达这个系统输出55-58。例如,目的码的第一个比特被选择器用作交换装置11-14的标识。第二个比特标识要选择已标出的交换装置11-14的哪个输出端口。目的“10”则表示到达系统输入53,选择交换装置14的输出37的一个分组。这对所有的系统输入/系统输出组合都适用。当然如果使用了更多数量的输入端口21-28和输出端口31-38和/或系统输入51-54及系统输出55-58,编码将不同。The entire arrangement now has four input ports instead of two, system inputs 51-54, and four output ports, system outputs 55-58, but provides full connectivity between all input and output ports. The
带有上述装置使用对不同交换装置11-14和/或输出端口的编码数值处理分组,也可以用比特图管理,如它们已用于多信道广播分组那样。这意味着所有分组被做为多信道广播分组处理而因此被指定一个比特图,以及分组在选择器41-44中被简单复合并送到几个交换装置11-14。于是比特图只要适宜于交换装置11-14的配置,即一个到达交换装置11-14但并不要被存储的分组被指定一个只由逻辑“0”组成的比特图,而对于正确的交换装置11-14,比特图画出要把分组送到的正确的输出端口31-38。用这样一个比特图,通过移动比特图对交换装置11-14的输出端口31-38编码的适应也能很容易地被处理,例如移动它的比特数的一半。当整个装置已被设计出要用于多信道广播分组时,这种方法注明为最佳。Packets processed with the means described above using coded values for the different switching means 11-14 and/or output ports can also be managed with bitmaps, as they have been for multicast packets. This means that all packets are handled as multicast packets and thus assigned a bitmap, and the packets are simply multiplexed in selectors 41-44 and sent to several switching means 11-14. Then the bitmap is only suitable for the configuration of the switching device 11-14, that is, a packet arriving at the switching device 11-14 but not to be stored is assigned a bitmap consisting only of logic "0", and for the correct switching device 11 -14, the bitmap draws the correct output port 31-38 to send the packet to. With such a bitmap, the adaptation of the encoding of the output ports 31-38 of the switching means 11-14 can also be easily handled by shifting the bitmap, for example by half its number of bits. This method is noted as the best when the whole device has been designed to be used for multicast packets.
为了保持交换装置11,12,13,14的模块化概念,有可能改变配置,即把仲裁器45,46,47,48和选择器41,42,43,44在一块通用电路板上对称地和交换装置11,12,13,14集成在一起。这被叫做在板仲裁,它节省了硬件花费。In order to maintain the modular concept of switching
在图5中画出了一个包含在板仲裁设计的配置。只要是被考虑的相同元素,就保留了和图4中相同的排号。现在每个交换装置11-12被安置在单独的印制电路板(PCB)59,60,61,62上。选择器41-44被精确按照图4中的选择器41-44安置,只是现在被均匀分布,从而在每个PCB59-62上安置一个选择器41-44。但是在交换装置11-14的另一侧,为了得到相同构造的PCB59-62,必须重新配置仲裁器45-48和交换装置11-14之间的连接。第一个仲裁器45现在有做为第一输入的输出端口31和做为第二输入的输出端口36。它的输出被定义为第一系统输出55。第二个仲裁器现在有做为第一输入的输出端口32和做为第二输入的输出端口35。它的输出被定义为第二系统输出56。第三个仲裁器现在有做为第一输入的输出端口34和做为第二输入的输出端口37。它的输出被定义为第三系统输出57。第四个仲裁器现在有做为第一输入的输出端口33和做为和二输入的输出端口38。它的输出被定义为第四系统输出58。事实上,现在所有的PCB59-62都一样了,这简化了产品。In Figure 5 is drawn a configuration that includes arbitration in the board design. As long as the same elements are considered, the same numbering as in Figure 4 is retained. Each switching device 11 - 12 is now mounted on a separate printed circuit board (PCB) 59 , 60 , 61 , 62 . The selectors 41-44 are positioned exactly as the selectors 41-44 in Figure 4, only now evenly spaced so that one selector 41-44 is positioned on each PCB 59-62. But on the other side of the switching device 11-14, in order to obtain the same configuration of the PCBs 59-62, the connection between the arbiters 45-48 and the switching device 11-14 must be reconfigured. The
但是,对于此硬件装置,目的控制必须通过分组的重定向来管理。然而交换装置11和12不需要任何重定向,交换装置13和14给出第二比特的相反动作,这意味着例如目的为01的分组其实被送到目的00。这个困难可例如通过在发送分组的适配器中实现一个映射功能予以解决。由于因此交换系统结构对于适配器不再为透明从两系统中的一个变化会导致计多适配器中的许多变化。另一个解决方法是给选择器41-44增加一个重定向设备,它辨别这种问题性组合,把纠正的编码指定给该分组。这加大了硬件结构的复杂度。However, for this hardware device, destination control must be managed through redirection of packets. Whereas the switching means 11 and 12 do not require any redirection, the switching means 13 and 14 give the opposite action of the second bit, which means that eg a packet with
此问题的另一种解决方法是在交换装置11-14中实现端口映射设备。这在图6中给出。再次保留了相同元素和前面的图一样的排号。Another solution to this problem is to implement a port mapping device in the switching device 11-14. This is given in Figure 6. Again the numbering of the same elements as in the previous figure is retained.
每个交换装置11-14现在包括一个按照交换装置11-14的应用被编程的端口映射设备。为了说明那个,在图中每个交换装置11-14已被指定一个放大的标识。交换装置11现在有放大的标识0P0。交换装置12现在有放大的标识1P0。交换装置13现在有放大的标识0P1。交换装置14现在有放大的标识1P1。于是每个交换装置11-14的端口映射信息被包含在“P0”或“P1”符号中。“p0”表示各个交换装置11-14的输出端口31-38的二进制编码保持不变。“P1”表示为了正确发送分组,各个交换装置的输出端口的比特数值比须被反转。通过对端口映射设备的简单编程,所有印制电路板59-62的整个硬件可被相同地加工,它的结果是更便宜的产品价格。对于有更多端口的配置,反转比特可由端口标识的交换来替代,即通过移动端口标识约端口数的一半。端口映射设备可以包括一个简单的其内容被依据系统结构编程的查寻表或者甚至多个相应于系统结构被选择的查寻表。第二个解决方法更容易被编程。对于多信道广播分组,在输出队列访问管理器18内放置端口映射设备表明是最好的,从而比特图可在进行端口映射之前被用于确定指定的输出端口31-38。Each switching device 11-14 now includes a port mapping device programmed according to the application of the switching device 11-14. To illustrate that, each switching device 11-14 has been assigned an enlarged designation in the figure.
速率扩展可通过链路并行或一个主/从装置实现。在图7中给出一个主/从配置。Rate scaling can be achieved through link parallelism or a master/slave unit. In Figure 7 a master/slave configuration is given.
第一个交换装置90和第二个交换装置被并行安置。第一个系统输入92被第一个分割设备131分成两个输入端口97,98。第二个系统输入93被第二个分割设备132分成两个输入端口96,99。输入端口96,99属于第一个交换装置90,输入端口98,99属于第二个交换装置91。第一个交换装置90有第一输出109和第二输出110。第二个交换装置91有第一输出119和第二输出120。输出109和120被第一组合设备133组合成第一系统输出94,输出119和110被第二组合设备134组合成第二系统输出95。The
输入端口96-99被分割设备131,132分开,从而一个进入分组的一个字节的进入比特的一半被送到第一个交换装置90,另一半被送到第二个交换装置91。第一个交换装置90被叫做主装置,第二个交换装置91被叫做从装置。主/从装置使用两个交换装置90,91的存储部分(存储设备,输入设备,输出设施)和路由器,但只用主装置91的控制部分(排列控制设备,输出队列,簿记设备)。从装置90中的寻找路由过程和主装置91中的相同。由此,使用一个不包含任何控制部分的芯片做为从装置90,大体上是可能的。另外,使用没有任何存储部分的芯片做为主装置91是可能的。The input ports 96-99 are divided by splitting
由于通过这样对数据的分割,分组有效负载的长度减小了,每个交换装置90,91需要用更少的存储空间来存储整个分组有效负载。通过这个分组长度的减小,路由时间也被大大减小。此外,在交换装置90,91中更多的存储单元被用于存储有效负载,这通过减小了背压的可能性增强了性能,背压即从一个或多个交换装置向前一个交换装置或一个分组发送装置发送信号的过程,表明相应的分组由于存储区满或输出队列满而不能被接收到。组合设备133,134简单地把从主装置91和从装置90收到的比特组放到一起,它们归在一起重新得到整个分组。Since the length of the packet payload is reduced by such partitioning of the data, each switching
对于存储扩展、相应的性能扩展,几个交换装置可被并行连接。每个交换装置并行工作,但考虑到一个输出端口,通常一个时刻只有一个交换装置是激活状态。这由一个输入仲裁装置控制。每个交换装置对于每个输出队列接收一预定最小数量的分组,直到输入仲裁装置切换到另一个交换装置中同一输出端口的另一个输出队列。然后输入仲裁装置发信号给下一个交换装置告知该装置被请求负责接收该输出端口的分组。这可以循环进行。每个输出端口分组的次序通过使用标记信息进行维持,该信息告诉输出仲裁装置哪个交换装置包含着含有把分组送到一特定输出端口的下个有效负载地址的输出队列。该标记信息可例如,在下个分组被存储于一个不同的交换装置前被加到最后的分组中。For storage expansion, correspondingly for performance expansion, several switching devices can be connected in parallel. Each switching device works in parallel, but considering an output port, usually only one switching device is active at a time. This is controlled by an input arbitration device. Each switching device receives a predetermined minimum number of packets for each output queue until the input arbitration device switches to another output queue for the same output port in another switching device. The input arbitration device then signals to the next switching device that it is requested to be responsible for receiving packets for that output port. This can be done in a loop. The order of the packets per output port is maintained by using tag information which tells the output arbitrator which switch contains the output queue containing the next payload address to send the packet to a particular output port. The marking information may, for example, be added to the last packet before the next packet is stored in a different switching device.
所有的扩展装置可被彼此组合在一起而带来更高的性能。All expansion units can be combined with each other to bring higher performance.
交换装置最适合于基于ATM的宽带通信。但是用适合的适配器,这个概念也可应用于非ATM的结构化环境。单级或多级结构可用模块化方式构建。通过链接多个交换装置,共享的存储区也可以被扩展。Switching devices are best suited for ATM-based broadband communications. But with suitable adapters, the concept can also be applied in non-ATM structured environments. Single-stage or multi-stage structures can be constructed in a modular manner. Shared memory areas can also be expanded by linking multiple switching devices.
应当注意,以上描述的功能并不必要由所述元素的确切配置来实现。例如,存储单元号不必由组输入控制器1501-1532发送给输出队列访问管理器18,而可以不同的方法到达那里。显而易见地,唯一重要的事实是该存储单元号应被存储在对应的输出队列261-268中以使有效负载地址完整。同样,选择器41-44的功能不必集中于选择器41-44中,但可以被分布以及甚至可以和印制电路板59-62上的选择器41-44的相应部分集成在一起或集成在交换装置11-14内部。It should be noted that the functions described above are not necessarily realized by the exact configuration of the elements. For example, the storage unit number does not have to be sent by the group input controllers 1501-1532 to the output queue access manager 18, but can get there in a different way. Obviously, the only important fact is that the bank number should be stored in the corresponding output queue 261-268 to complete the payload address. Likewise, the functions of the selectors 41-44 do not have to be centralized in the selectors 41-44, but can be distributed and even integrated with corresponding parts of the selectors 41-44 on the printed circuit boards 59-62 or integrated in Inside the switching device 11-14.
Claims (32)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CNB961967978A CN1181703C (en) | 1996-07-09 | 1996-07-09 | Switching device and method thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CNB961967978A CN1181703C (en) | 1996-07-09 | 1996-07-09 | Switching device and method thereof |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN1196158A CN1196158A (en) | 1998-10-14 |
| CN1181703C true CN1181703C (en) | 2004-12-22 |
Family
ID=5129151
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CNB961967978A Expired - Lifetime CN1181703C (en) | 1996-07-09 | 1996-07-09 | Switching device and method thereof |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN1181703C (en) |
-
1996
- 1996-07-09 CN CNB961967978A patent/CN1181703C/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| CN1196158A (en) | 1998-10-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3072649B2 (en) | Switching devices and equipment | |
| TWI390913B (en) | Apparatus, method, and machine-readable storage medium for transferring data between data modules using a buffered crossbar switch system | |
| CN1151639C (en) | networking system | |
| US5327127A (en) | Message encoding which utilizes control codes and data codes | |
| US5684797A (en) | ATM cell multicasting method and apparatus | |
| US7023841B2 (en) | Three-stage switch fabric with buffered crossbar devices | |
| JP3577188B2 (en) | Buffering of multicast cells in multistage networks | |
| US7161906B2 (en) | Three-stage switch fabric with input device features | |
| EP0405990B1 (en) | Message routing | |
| US7145873B2 (en) | Switching arrangement and method with separated output buffers | |
| JP3443264B2 (en) | Improved multicast routing in multistage networks | |
| CN1057653C (en) | Method to provide link grouping in a packet switch | |
| WO1992014319A1 (en) | Packet switch with broadcasting capability for atm networks | |
| CN1214168A (en) | Efficient output-request packet switch and method | |
| IL134222A (en) | Multi-port internally cached drams | |
| US5422881A (en) | Message encoding | |
| CN1187077A (en) | LAN switch architecture | |
| CN1543733A (en) | In-Band Message Synchronization for Distributed Shared Memory Packet Switches | |
| US6735212B1 (en) | Short and long term fair shuffling for crossbar switch arbiter | |
| CN1332554A (en) | Cell processing method and apparatus in asynchronous transmission mode switchboard | |
| CN1181703C (en) | Switching device and method thereof | |
| US20020089981A1 (en) | Expandable self-route multi-memory packet switch with a configurable multicast mechanism | |
| EP1198098A2 (en) | Switching arrangement and method with separated output buffers | |
| Park | Design and analysis of large-capacity multicast packet switches | |
| WO2000042745A1 (en) | Switching arrangement |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C14 | Grant of patent or utility model | ||
| GR01 | Patent grant | ||
| CX01 | Expiry of patent term |
Granted publication date: 20041222 |
|
| EXPY | Termination of patent right or utility model |