METHOD AND UNIT FOR THE RECONSTRUCTION OF THE CORRECT SEQUENCE OF ATM CELLS

Abstract: Method and unit for the reconstruction of the initial order of the sequence of the flow of the cells pertaining to the same virtual channel (VC) or path (VP) at the output of the ATM switching network with high priority cell control. The method is based upon the maximum delay equalization for the scheduling of the cells to transfer at the output, by using lists addressed by pointers and a shared queues approach for the management of the contentions by more cells for the same output time slot, so to obtain a significant saving of the memory space. The resequencing unit includes memories the dimensions of which depend upon the maximum number of cells being actually present in the resequencing unit.

Description: METHOD AND UNIT FOR THE RECONSTRUCTION OF THE CORRECT SEQUENCE OF ATM CELL This invention relates to a method and a unit for the reconstruction or resequencing of the initial order of the sequence of a cell flow in telecommunication systems using a special numerical technique called ATM (Asynchronous Transfer Mode), for the transmission and/or switching of the vocal signals, video signals and data. In the ATM technique the information relating to the various users and services are organized as time contiguous units with a fixed length of approx. 400 bits called cells. The cell bits are subdivided into a field containing the information to be exchanged (payload) and into a heading field (header) containing the information requested to route the cell through the switching network and other service information. The ATM technique is considered as the more profitable solution for the multiplexing and switching into the evolution of the public communication networks towards the future wide band numerical network integrated in the services (B-ISDN), as this technique allows a very great flexibility compared to the previous systems. On an ATM link, in the same time, a certain number of connections can be active, they are called virtual channels (VC) and virtual paths (VP). A virtual channel is a logic association between the end points of a link that enables the unidirectional transfer of cells over that link, while a virtual path is a logic association of virtual channels between the end points of a link that enables the unidirectional transfer of cells belonging to a set of virtual channels to take place over that link (CCIT Rec. 1.113). At the ATM level the integrity of the cell sequence inside every VC/VP has to be preserved, i. e. the ATM network must be able to supply at the output the cells belonging to th same VC/VP in the same sequence order with which they ar sent to the network. The keeping of the sequencing order is automaticall assured if all the cells in the same VC/VP follow the sam path inside the ATM network. However, in the ATM switching nodes to perform th switching operation it should be suitable to free ourselve of the need to make the cells of a same VC/VP pass throug the same path. In particular, in the ATM technique, a switching nod consists (Fig. 1) of a switching " network (SN) and of certain number of exchange terminations (ET) to which th ATM links are connected. In the case under examination all the cells that belong t the same VC/VP are allowed to follow different paths insid the SN and as the cells suffer different delays followin different paths inside the SN, as the latter introduces variable delay, the cells of a same VC/VP may reach th output of the SN with a different order in respect with th one they had at the inlet. As the integrity of the sequenc is no longer assured automatically, it is necessary to perform a resequencing operation of the initial sequence for each VC/VP, before sending the cells on the output link from the ATM node. This operation, hereinafter referred to as "resequencing", is conceptually simple in that it consists in receiving an inlet disordered cell sequence and, on the base of an information contained in the header of the cell in the proprietary format internal to the node, to determine, for each VC/VP, the correct position of the cell in the output sequence so to supply the cells of each VC/VP in the same order they had entered the network. The practical performing of the resequencing operation at ATM level is mainly complicated by the speeds involved and by the number of the virtual channels which may be activated at the same time on the same ATM link. In fact, this number may be very high (even two thousand and more on an ATM link at about 150 Mbit/s) and moreover each VC may need at least 24 bits to be completely identified (to this purpose, see the CCITT 1.361 Recommendation). Therefore, the implementation of the resequencing operation based on VCI/VPI (VC/VP identifier), in addition to be complex in itself, requires even the utilization of a considerable memory size. Moreover, within the ATM technique, it has been proposed to operate according to the maximum delay equalization: the sequencing order at the inlet of the network is then kept at the output if all the cells pass the same period of time inside the network, before entering the output link. To avoid with certainty a skip, before sending the cell to the output link, it is necessary to wait that, from the moment in which the cell enters the network, a period of time equal to the maximum delay introduced by that has elapsed. In practice, it is sufficient to assure that the skips occur with a sufficiently low probability (for instance 10- 10) , comparable with the probability of other errors similar to a skip (for instance, wrong routing due to header transmission errors, etc.). Then, the value of 10-10 quantile of the maximum delay (DM) introduced by SN as a value of the time which must pass from the moment in which the cell enters the SN, before it is sent on the output link, may be used. The resequencing operation shall then be based on the comparison between DM and the time actually elapsed by the cell inside the network, without that it was necessary to take into consideration the pertinent VC/VP. The cell is then let to wait for the remaining time, given by the above mentioned comparison, so to emulate its exit from SN network after a period of time not less than DM. The time elapsed by the cell inside the SN network is obtained from the time stamp (TS) which is stored in the internal header of the cell when it is in the inlet ET, before its sendin to SN network. In principle, this solution is satisfactory, nevertheles in the practical implementation in the form of a integrated device, it involves some difficulties due to th fact that the structure becomes complex and involve significant memory sizes and often with "bulky" dimension since they are not-standard. It is one of the purposes of this invention, to realize resequencing method and unit, that is able to efficientl perform the above mentioned .operation, in terms o utilization of the memory in which the cells are stored and of complexity of the control relating to the managemen of such memory for the performing of the resequencin operation. These purposes are attained through the inventio consisting of a method for the reconstruction of th initial order of the flow sequence of the cells pertainin to a same virtual circuit entering the switching network o an ATM telecommunication system, including the phases of: - counter marking each cell entering the switchin network with a temporal label and of storing the cell a the output of the switching network in a cell memory; - determining the time elapsed by the single cell inside the switching network and of forming pre-settin queues for the output in each time slot of the outpu channel, with the cells for which a foreseen number of cel times has elapsed, between the moment of entering th network and the one foreseen for the transmission in th time slot; such method being characterized by the phases of: - forming a first list consisting of the values representing the cell memory locations, such list bein addressed by three pointers, respectively a first pointer identifying the input time slot in which the cell is received, a second pointer identifying the output time slot for which the output of the received cell is foreseen and a third pointer, or virtual pointer, identifying the output time slot in which more than one cell should be supplied; - forming a second list, such list being linked and addressed by values contained in the said first list, in which queues with some elements are formed, each of which addresses the cell in the previous position of the same queue: - forming a third list consisting of the pointers pointing at the subsequent queues, comprehended between the first and the third pointer and active, i.e. containing at least one not empty element; - transmitting, in a given output time slot, the last cell of the queue, if any, relating to the said time slot and in the subsequent time slots the other cells of the same queue in the reverse order in respect with the one according to which they have been introduced in the queue. Moreover, the invention consists of a unit for the reconstruction of the initial order of the flow sequence of the cells pertaining to the same virtual channel, entering the switching network of an ATM telecommunication system, such unit being positioned between the output of the switching network and a heading processor and including: - an input block and an output block between which an intermediate storage is interposed and a controller connected to the said blocks and to the said intermediate storage which allows the transferring of the cells to the output after a minimum fixed time from the moment of the input of the cells in the said switching network. The said unit being characterized by the fact that the intermediate storage includes a cell memory in the locations of which the output cells from the switching network are stored and by the fact that the controller includes: - a first storage containing the pointers at the locations of the said cell memory, - a second storage in which some queues are formed, with elements each of those addresses the cell in the previous position of the same queue; - a third storage containing the pointers that point at the queues containing at least one not empty element, consisting of the cells for which the said fixed minimum time period has already elapsed. Further favourable characteristics will result from the depending claims. The invention will be described with reference to a preferred embodiment, without any restriction to it, which is shown with reference to the figures enclosed, where: Figure 1, already mentioned, shows schematically the ATM switching network and the exchange terminations connected to it; Figure 2 schematically shows the structure of an ETi exchange termination with a resequencing unit of the initial order of the cell sequence for each VC according to the invention; Figure 3 shows the more detailed block diagram of the resequencing unit according to the invention; Figure 4 shows a data structure used in an embodiment of the invention to perform the resequencing operation. According to the invention a shared queues approach is used, so to obtain a significant saving in the dimensions of the storage which is sized on the base of the maximum number of cells actually present in the resequencing unit. With reference to Fig. 1, an ATM switching node includes a switching network (SN) to which several exchange terminations ETI, ET2,.... ETn are connected, that receive the flows of the input cells IN/F and emitting flows of output cells OUT/F, correctly routed in the SN network. These input and output flows may occur through an ATM link for instance with a capacity of about 150 Mbit/s. On this link a certain number of virtual channels (VC) and virtual paths (V ), may be active. An ET structure, downstream side (i.e. after the SN network) is shown more in detail in Fig. 2. It includes a CHP (Cell Header Processor) block which receives the output cell flow from SN, processes the cells at ATM level and performs the translation of the cells from the proprietary format internal to the node to an ATM standard format, before these are passed to the physical level (PL) for the transmission on the output link. Before the cells reach the CHP, the resequencing operation is performed by a resequencing unit (RU) which is also present in the exchange termination, which has the specific duty to analyze a TS (Time Stamp) of the internal header of the cell and to make the cell wait for the time necessary to avoid skips among cells of a same VC, unless a sufficiently low probability exists, for instance equal to 10-10. The block diagram of the resequencing unit RU is shown in Fig. 3. With reference to that figure, the behaviour of the unit in question may be summarized as follows: it receives a cell flow from the input channel IC, by means of an input block IN, and stores the data in a RESBUF buffer according to the indications of the RESCTRL controller. The RU unit, always according to the indications of the RESCTRL controller, draws from the RESBUF the cell to be transmitted, if any, so to supply a cell flow to the output channel OC, to which the RU unit is connected by means of the output block OUT. Moreover, by means of the mP/INT, the RU is able to carry on a dialogue with the microprocessor present on the ET for the necessary co-ordination. The cells received and transmitted by the RU have a fixed length in the proprietary format internal to the node (for instance, 64 bytes) and the input IC and output OC channels are considered subdivided into temporal intervals having a width equal to the cell time Tc at the channel speed, indicated with IS and OS, respectively. The resequencing unit RU performs the following operations: - it receives the k-th cell occupying the i-th tim slot of the input channels IC, indicated with IS(i); - it determines the time (in units of cell times which has elapsed from the moment in which the cell ha entered the network, indicated with TD(k), according to th information contained in the internal header of the k-t cell (TS); - it computes the difference between DM and TD(k) indicated with Z(k) ; - it pre-sets the transmission of the k-th cell in th J-th time slot of the output channels OC, indicated wit °S(j) r "where J = i + Z(k); - if there is any cell which has to engage the outpu channel OC, in correspondence with 0S(i), it transmits this latter output cell. Some contention conditions of the OC may occur, in that i may happen that more than one cell has to enter the OC i the same temporal interval OS. The RU controls th contention conditions by putting the contending cells into queues. During the receiving phase of the k-th cell, at the moment of the pre-setting or scheduling of the transmission in the OS(j), two situations might occur: 1. the OS(j) is free, that is, it has not been assigned to any cell; then, RU creates in RESBUF the queue associated to the OS(j), thus containing first only the cell just received; 2. the OS(j) has already been assigned to at least one cell, in general to m cells, for which a contention condition of the OS(j) exists: the RU places the k-th cell into the second one, or more generally, into the (m+l)-th position of the queue associated to the OS( ) ; with m the number of cells already present in the queue, the transmission of which has thus already been scheduled in the OS(j), has been indicated. During the transmission phase, the RU enters the queue t be supplied during the transmission: 1. if the queue is empty, no cell is transmitted i correspondence with the actual OS, indicated with OS(i) ; 2. if at least one position of the queue is full, th cell present in the position to be supplied is transmitte in correspondence with the OS(i). As only one cell may engage the contested OS tempora interval a situation in which one or more cells ar transmitted in an OS following to the one for which thei transmission was scheduled, arises. The OS temporal interval actually engaged differs then fro the one for which the cell transmission has been schedule at the moment of its receiving by RU, and this not only i the OS temporal interval in question is under contention, but even if a contention condition arose in previous OS and its effects have spread out up to the OS in question. Therefore, at the output of RU a residual delay jitter however exists, and then RU realize an equalization to th maximum delay unless a delay jitters due to the unavoidabl contentions of the OSs does occur. The result of thes contentions cannot be determined in advance, because i depends on the delays suffered by the cells in th switching network SN, therefore, in general, it i impossible to guarantee previously the engagement o certain OSs by the specified cells. According to an embodiment of the invention, it is foresee that some cells (or some services) may have a null dela jitters. To this purpose, in the RU the possibility t guarantee the engagement of the OS at a specified cell, an this for each OS temporal interval, so that a null dela jitters may result for the links those cell are pertainin to, has been introduced . According to this embodiment, the RU manages a priorit information (for instance, a bit or a word in a give field, associated with the TS), contained in the interna header and according to this information it organizes the cells into a high priority queue. Such queue provides a position in correspondence with each OS, in which a high priority cell (and only one) may be stored. During the receiving phase if the cell is - not a high priority one, the RU assigns the position in the queue as previously indicated; if, on the contrary, the cell requires a null delay jitters, the RU determines the OS value it has to engage and schedules its transmission by placing it in the high priority queue corresponding to that OS. During the transmission, the RU verifies if a cell is present in the high priority queue, in correspondence with the actual OS, in which case it transmits the cell; if no cell exists in that position, the RU manages the queues of the cells which admit a not-null delay jitters, as previously indicated. As the RU operation principle is based on the equalization at the maximum delay, the dimensioning of the whole data structure essentially depends on the difference between 10- 10-quantile of the maximum delay (DM) and the SN network crossing minimum delay (Dm) . In practice, reference is made to 10-10-quantile of the variable component of the SN speed delay, called MJD (Maximum Jitters Delay) : MJD = (DM - Dm) (1) expressed in number of cell times Tc or time slots. The transmission speed of the input channels IC and the output channels OC are the same, therefore, a time slot can accept only one input cell and one only output cell can be transmitted from the RU if a cell exists that has passed a period of time equal to DM from the moment of its entering the network. Except for the unavoidable contentions, a cell is transmitted on the OC at the latest after (DM - Dm) time slots from its entering the resequencing unit RU, but however, after (DM - Dm) time slots a position makes itself free inside the RU. If all the cells suffer a Dm delay in the SN network (empty network) , in the RU the maximum number of accumulate cells is equal to : (DM - Dm) (cells) (2) apart from the number of queues present in the. RU. With reference to Fig. 4 now a preferred executive form of the invention is shown. According to the invention, the pre-setting or scheduling of the transmission of the output cells from RU is obtained by managing the slot IS and OS by means of a list addressed by pointers. A first pointer, called PZOS (Pointer Zero Output Slot) is used for the management of the global time, therefore it is increased at each cell time Tc. This pointer identifies the input slot IS in which the cell is received as well as the output slot OS, contemporaneous to it, so it corresponds to the index appearing in the previous relations. This pointer identifies inter alia the output slot OS for which is scheduled the transmission of the cells that no longer need to wait (a part from the contentions) before being transmitted on the output channel, because they have already passed DM cell times in the network (so having Z equal to zero) as well as because they have exhausted their remaining waiting period in the RU. A second pointer, called PSOS (Pointer Scheduled Output Slot) is used during the receiving phase and identifies the OS for which the transmission of the cell actually receiving has been scheduled. PSOS then corresponds to the already mentioned j index and identifies the queue in which the receiving cell is inserted. PSOS may coincide with PZOS: this happens for the cells that have passed in the network a time equal to the maximum admittable (for which therefore the result is Z = 0) . If no OS contention would exist, the two pointer PZOS and PSOS will be enough to manage the events (receiving of one cell) on the input channel IC and (transmission of on cell) on the output channel OC; PZOS would identify th queue (or, better, the cell) supplied in the transmissio and PSOS the one supplied in the receiving. In order to manage the contentions a third, pointer i provided, called PVOS (Pointer Virtual .Output Slot) identifying the output slot OS which would be "virtually engaged by all the cells contending for it, if thei contemporaneous transmission to the contended OS wer possible. This pointer is used during the transmission phase t address the queue supplied in the transmission, an therefore, it is increased only when such queue is empty, so to address the following queue containing the cells t be transmitted; if no cell to be transmitted exists in the following OS, PVOS is set as PZOS. Because of the restrictions to the dimensions of the pointers, the input slot IS and the output slot OS may only be addressed in a temporal window subdivided into slots having a Tc width, that has to be wide enough to allow the scheduling of the transmission of the cells placed at (DM - Dm) time slot from PZOS, without the occurring of any skip. At most, a queue can contain (DM - Dm) cells: this occurs when all the cells present in the RU have contemporaneously entered the SN network-. Then, at most PZOS and PVOS may differ for (DM - Dm) positions, and therefore, the number of the OS that may be addressed and, consequently, the size of the window has to be equal or greater than: 2 • (DM - Dm) + 1 (time slot) (3) The management of the time slots is implemented through the TSlotList (Time Slot List), appearing in Fig. 4, addressed by the PZOS, PSOS and PVOS pointers, which represents the part of the temporal axis to which the slots may be addressed. Each record of this list, that is, each location of the storage the list consists of, is then assimilable at a time slot, so that the number of the records of the TSlotList is defined by Eq.3. As already said, the cells are stored in the RU until the time they passed in the SN network plus the one they passed in the RU is equal to DM and to solve the contention conditions on the OSs, the contending cells are organized in queues; so that they have, at most, some cells stored in: - (DM - Dm) queues of 1 cell; - a queue of (DM - Dm) cells; - any intermediate situation whatsoever between the two extreme preceding situations. With a conventional, separated queues type approach, to each OS output slot a queue should be associated, sized on the maximum number of cells it can contain. The number of the OS slots is equal to 2 • (DM - Dm) + 1 and each queue should contain up to (DM - Dm) cells, so that to store the cells in the RU by means of this kind of approach, an area should be reserved, equal to : 2 • (DM -Dm)2 + (DM -Dm) (cells) (4) However, the number of the queues contemporaneously active is equal to the number of OSs for which the transmission of at least one cell has been scheduled, so that, at most, you may have a maximum of (DM - Dm) queues (see relation 2). But, according to the invention, in the RU a shared queues approach is used, so to obtain a significant saving in the dimensions of the storage which is sized on the maximum number of the cells actually present in the RU. The RU stores the cells into a CellMem (Cell Memory) associated to the RESBUF block of Fig. 3, which is shared among the various queues, the dimensions of which is then equal to: (DM - Dm) + 1 (cells) (5) and this because the memory in which the cells are stored is not traffic sized, so that the probability of an additional loss, due to a buffer overflow in the RU, is equal to zero. According to the invention, the elements o each queue are organized in stacks; in fact, the queue are supplied with LIFO approach (Last In First Out) i order to facilitate their management, as in this way it i sufficient to know the position of the last .cell of th queue and the link to the cell engaging the preceden position, while a FIFO (First In First Out) managemen needs some information relating to the first as well as t the last cell of the queue. To manage the queues, in each TSlotList .record, a pointe called PLC (Pointer Last Cell) which addresses the las cell of the queue is stored. An empty queue from a CAP value associated with PLC acting as terminator an indicating the end of the queue is identified. Mor generally, the queues of the lists are separated by empt elements consisting of terminators in the form o univocally recognizable codes. The information necessary to manage the CellMem memory ar stored in lists and to each active queue a list i associated. According to the invention a linked lis architecture is used, so that even the memory reserved t the lists, called LListMem (Linked List Memory) is share among the various queues and has the same depth of th CellMem, that is: (DM - Dm)+ 1 (record) (6) This memory is used also to store the list of the fre cells locations (Free Cell List) , the first of which i pointed by FlpHead (Free cell List Pointer Head), which is contained in a proper register. To manage the stacks, with each element of the queue pointer called PPC (Pointer Previous Cell) which addresses the cell to the preceding position of the same queue, is associated. The first cell of each queue is identified by a CAPl value associated with a PPC acting as a terminator, as this cell is not preceded by any other cell. In order to allow PVOS to address the queue to be supplie in correspondence with the next OS, once exhausted th actual queue, at each active queue comprehended betwee PVOS and PZOS, a pointer PNQ (Pointer Next Queue) pointin at the next active queue, is associated. If no active queu comprehended between PZOS and PVOS in addition to the on actually addressed by PVOS (that is, supplied i transmission) exists, then PNQ is equal to PZOS. By means of PNQ, a linked list structure, in which th elements of each list consist of the queues "validated" b PZOS, where this term indicates the active queues (that is the ones containing at least one cell) to which the cell that have exhausted their time in the RU pertain, is the implemented. In practice, the "validated" queues are al the active queues already addressed by PZOS and not yet b PVOS. The separating element among the queues has bee indicated with CAP2 as, for addressing reasons, it consist of one bit more than the preceding separators. In Fig. 4 the NxtQList (Next Queue List) memory block i which the list of the PNQ pointers to the queues to b supplied subsequently to the actual one (that is, pointe by PVOS) is stored, and the PLQ pointer (Pointer Las Queue) which addresses the last active queue which has bee validated by PZOS, are shown. As, at most (DM - Dm) queues there should be between PVO and PZOS, the NxtQList has the same depth of LListMem, tha is, (DM - Dm + 1) record. The cells identified as high priority cells, which the require a null delay jitters, are stored into a separat queue, dedicated to them. To manage this queue, a lis stored in the PrioList (Priority List) memory bloc appearing in Fig. 4, in which the addresses of the hig priority cells PCP (Pointer Cell with Priority) ar contained, is used. Since the priority cell contemporaneously present in the RU may be at most (DM Dm), the PrioList foresees (DM - Dm + 1) positions. The PrioList is addressed by two pointers PPZOS (Pointe Priority Zero Output Slot) PPSOS (Pointer Priorit Scheduled Output Slot), having the same meaning, for th high priority cells, of the PZOS and PSOS. pointers, use for the low priority cells, but having a different size i that they must address a deep memory (DM - Dm + 1) instea of 2 • (DM - Dm) + 1. As the above mentioned validated queues, may be at most (D - Dm), these pointers may be advantageously used even to address the NxtQList. The presence of the queue with high priority cells then involves an increase of the complexity of the RESCTRL block, but does not involve an increase of the dimensions of the Cellmem and then of the RESBUF, in that such cells share the same memory area with the low priority cells. In the RU the possibility not to further delay, unless some contentions on the OSs are present, the cells pertaining to the flows that do not require to be reordered, in that they run a unique path inside the SN network and do not require the equalization at the maximum delay, has also been provided. At the moment of the receiving of the cell so identified by means of an information contained in the internal header, the RU fixes equal to DM the value of the delay suffered by the cell in the network, a part from the value of TS; in this way, the cell is placed in the queue pointed by PZOS and therefore it may be immediately transmitted at the output, if no cell exists to be transmitted, the transmission of which has been scheduled for preceding OSs and if no high priority cell exists which must engage the same OS. Therefore, while a particular embodiment of the present invention has been shown and described, it should be understood that the present invention is not limited thereto since other embodiments may be made by those skilled in the art without departing from the true spirit and scope of the present invention. It is thus contemplated that the present invention encompasses any and all embodiments covered by the following claims.

Claims: C A I M S 1. Method for the reconstruction of the initial orde (resequencing) of the sequence of the flow of the cell pertaining to a same virtual, channel (VC) or path (VP entering the switching network of an ATM telecommunicatio system, consisting of the following phases : - to counter mark each cell entering the switchin network with a temporal stamp (TS) and to storage th output cells of the switching network (SN) in a cell memor (CellMem) : - to determine the time elapsed by the single cell inside the switching network (SN) and to create pre-settin queues for the output in each time slot (OS(j)) of th output channel (OC), with the cells for which a fixe number of cell times between the moment of entering th network (SN) and the one foreseen for the transmission i the time slot (OS(j)) has elapsed; such method being characterized by the following phases: - to create a first list (TslotList) consisting of the values (PLC) representing the cell memory (CellMem) locations, such list being addressed by three pointers, respectively, a first pointer (PZOS) identifying the input time slot (IS) in which a cell is received, a second pointer (PSOS) identifying the output time slot (OS) for which the output supplying of the cell received is foreseen, and a third pointer or virtual pointer (PVOS) identifying the output time slot (OS) in which more than one cell should be supplied; - to create a second list (LListMem) , such list being linked and addressed by the values contained in the first said list (TslotList), in which some queues with (PPC) elements each of those addresses the cell in the preceding position of the same queue are formed; - to create a third list (NxtQList) consisting of (PNQ) pointers that point at the next queues, comprehended between the said first (PZOS) and third (PVOS) pointer and active, that is, containing at least a not-empty element; - to transmit, in a given output time slot (OS(j)), the last cell of the queue relating to the said time slot (OS(j)), if any, and in the next time slots the other cells of the same queue in the reverse order in respect with the one according to which they were entered in the queue. 2. Method according to claim 1, characterized by the fact that the length of the said first list (TslotList) is equal to 2 • (DM-Dm) +1, where Dm is the minimum number of the cell times necessary to cross the- (SN) network. 3. Method according to claim 2, characterized by the fact that the length of the said second (LListMem) and third (NxtQList) list is equal to (DM - Dm +1). 4. Method according to claim 2 or 3, characterized by the fact that the queues of the said second (LListMem) and third (NxtQList) list are separated by empty elements consisting of terminators in the form of univocally recognizable codes (CAPl, CAP2) . 5. Method according to claim 4, characterized by the fact to form an additional priority list (PrioList) for the managing of the cells qualified as high priority ones, consisting of (DM - Dm +1) positions and addressed by two additional pointers (PPZOS, PPSOS) having functions similar to the ones of the said first and second pointer (PZOS, PSOS) and by the fact that for each time slot (OS(j)) the high priority cell is transmitted, unless the corresponding element of the priority list (PrioList) is empty. 6. Method according to claim 5, characterized by the fact to foresee an additional pointer(PLQ) associated to the said third list (NxtQList) that addresses the last active queue which has been validated by the said first pointer (PZOS). 7. Unit for the resequencing of the flow of the cells pertaining to a same virtual channel (VC) or path (VP), entering the switching network (SN) of an ATM telecommunication system, such unit being positione between the output of the switching network (SN) and heading processor (CHP) and including: - an input block (IN) and an output block (OUT between which an intermediate storage (RESBUF) i interposed and a controller connected to the said block (IN, OUT) and to the said intermediate storage (RESBUF) which allows the transferring of the cells to the outpu after a minimum fixed time from the moment of the input o the cells in the said switching network (SN); the said unit being -characterized by the .fact that th intermediate storage (RESBUF) includes a cell memor (CellMem) in the locations of which the output cells fro the switching network (SN) are stored and by the fact that the controller (RESCTRL) includes: - a first storage (TslotList) containing the pointers (PLC) at the locations of the said cell memory (CellMem) , - a second storage (LListMem) in which some queues are formed, with elements (PPC) each of those addresses the cell in the previous position of the same queue; - a third storage containing the pointers (PNQ) that point at the queues containing at least one not empty element, consisting of the cells for those the said fixed minimum time period has already elapsed. 8. Unit according to claim 7, characterized by the fact to comprehend three registers containing the same number of pointers, respectively, the first pointer (PZOS) identifying the input time slot (IS) in which a cell is received, a second pointer PSOS identifying the output time slot (OS) for which the output of the received cell is foreseen and a third pointer or virtual pointer (PVOS) identifying the output time slot (OS) in which more than one cell should be supplied. 9. Unit according to claim 7, characterized by the fact that the locations of the said second memory (LListMem) are addressed by the pointers (PLC) contained in the said first memory (TslotList), similarly to what happens for the addressing of the said cell memory (CellMem) . 10. Unit according to claim 7, characterized by the fact that the lengths of the said second (LListMem) and third (NxtQList) memory are equal to (DM-Dm+1), where, (DM- Dm) is the maximum floating delay with which the cells may present themselves at the output of the switching network (SN). 11. Unit according to claim 10, characterized by the fact that the said maximum floating delay (DM-Dm) is fixed equal to 10-10 quantile of the variable component of the said delay. 12. Unit according to any claim from 7 to 11, characterized by the fact to comprehend an additional memory (PrioList) to manage the cells qualified as high priority cells, such memory having a length equal to (DM- Dm+1) . 13. Unit according to any claim from 7 to 11, characterized by the fact to comprehend an additional register containing a pointer (FlpHead) indicating the first free location of the cell in the said cell memory (CellMem) and the corresponding location of the said second memory (LListMem) .

Inventors: COLLIVIGNARELLI MARCO, COLLIVIGNARELLI, MARCO
Applicants: ITALTEL SPA, ITALTEL SOCIETA' ITALIANA TELECOMUNICAZIONI S.P.A.
Application year: 1992
Main classification: H04L12
IPC codes: H04L12, H04Q11