SE516746C2 - Förfarande och anordning för att minska buffertfördröjning - Google Patents

Förfarande och anordning för att minska buffertfördröjning

Info

Publication number
SE516746C2
SE516746C2 SE9901606A SE9901606A SE516746C2 SE 516746 C2 SE516746 C2 SE 516746C2 SE 9901606 A SE9901606 A SE 9901606A SE 9901606 A SE9901606 A SE 9901606A SE 516746 C2 SE516746 C2 SE 516746C2
Authority
SE
Sweden
Prior art keywords
frame
frame buffer
pointer
time slot
reading
Prior art date
Application number
SE9901606A
Other languages
English (en)
Other versions
SE9901606L (sv
SE9901606D0 (sv
Inventor
Joachim Roos
Original Assignee
Net Insight Ab
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Net Insight Ab filed Critical Net Insight Ab
Priority to SE9901606A priority Critical patent/SE516746C2/sv
Publication of SE9901606D0 publication Critical patent/SE9901606D0/sv
Priority to PCT/SE2000/000848 priority patent/WO2000067518A1/en
Priority to AU44473/00A priority patent/AU4447300A/en
Publication of SE9901606L publication Critical patent/SE9901606L/sv
Publication of SE516746C2 publication Critical patent/SE516746C2/sv

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13103Memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13292Time division multiplexing, TDM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1336Synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13361Synchronous systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13393Time slot switching, T-stage, time slot interchanging, TSI

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

20 25 30 35 a i; i. -- .= :e i; s. : :1 :n r ve o I ~ .l ~, | »r 1- n-~ ~ . f :ffs »fxu 1 1 n i n - x V. No 2 en gemensam ramsynkroniseringssignal. Om det exempelvis finns en fasskillnad mellan ramsynkroniseringssignalen för de komponenter som läser data från bufferten och ramsynkroniseringssignalen för de komponenter som skriver data i bufferten, blir emellertid uppgiften att synkronisera skriv- och läsoperationerna i förhållande till bufferten mer komplicerade. Ett annat problem med rambuffring är att ju större marginal som läggs till mellan skrivningen av data i en rambuffert och läsningen av data från nämnda rambuffert för tillförsäkrande av buffertkonsistens desto större kommer fördröjningen genom växeln att vara. Buffring vid högre buffertkonsistensmarginaler kommer således typiskt att medföra en negativ effekt i form av ökad fördröjning.
Ett syfte med föreliggande uppfinning är att åstadkomma ett enkelt och effektivt sätt att synkronisera drift i förhållande till en rambuffert när data växlas mellan en in- och en utport, och i synnerhet när data växlas mellan en eller flera inportar och en eller flera utportar när både tids- och rumsväxling erfordras, samtidigt som fördröjningen hålls låg.
Detta och andra syften åstadkommes av uppfinningen såsom den definieras i de åtföljande patentkraven.
Uppfinningen använder ett förfarande med flera buffertar, varvid tre eller flera rambuffertar, där tre är det föredragna alternativet, tillhandahålls för varje inport. Uppfinningen använder således så kallad inportsbuffring, dvs ramar som tas emot via inporten skrivs in från ramens början till ramens slut i nämnda tre eller flera rambuffertar. Skriv- och läspekare tillhandahålls för angivande av vilken bestämd rambuffert som för närvarande används för skrivning av data respektive vilken bestämd rambuffert som för närvarande används för läsning av data, och dessa pekare. Nämnda pekare placeras, baserat på fassambandet mellan nämnda in- och utramsynkroniseringssignal, så att de inte kommer att peka på samma rambuffertar samtidigt och flyttas fram 10 l5 20 25 30 35 . . . . | n n. n, a - f. .- . =~ u» e ß -. n . v v - || n. e . -v - » v m» 1:1 - ». n» 1.- - I - . . u ~ . 1. ; 1. . . u n a . n u r. u 3 vid varje mottagning av en inramssynkroniseringssignal respektive en utramssynkroniserningssignal pà ett cykliskt modulo-3 sätt.
För att systemet skall kunna utföra helramsväxling av data, dvs sända en inrams sista inkommande tidlucka som en utrams första utgående tidlucka, och vice versa, behövs en rambuffert. För undvikande av att denna rambuffert inte uppdateras innan data har lästs från den krävs dessutom en andra rambuffert. För anpassning till det faktum att en inram och en utram i nätverk såsom DTM kan vara godtyckligt placerade i fas så länge som det inte finns någon ackumulerad fasdrift mellan de två behövs dessutom en tredje buffert. Märk att även om användning av fler än tre rambuffertar skulle tillfoga ännu mer marginaler mellan läs- och skrivoperationer i förhållande till rambuffertarna, skulle detta även öka fördröjningen genom växeln. Användningen av tre rambuffertar för varje inport anses därför vara den mest föredragna utföringsformen.
När data läses från nämnda buffertar för en tidlucka av en ram som skall sändas från utporten läses enligt uppfinningen, om denna tidlucka är konfigurerad att ta emot data fràn samma luckposition hos en ram som tas emot via nämnda inport, data från en respektive plats hos rambufferten som är belägen en rambuffert framför, på nämnda cykliska sätt, rambufferten som för närvarande anges av nämnda läspekare, vilket därigenom fördelaktigt minskar buffertfördröjningen med avseende på sådana luckor. Som ett resultat av de krav som ställs på pekarna för tillförsäkrande av att de inte anger samma rambuffert samtidigt, kommer deras momentana positioner typiskt att vara sådana att det antingen finns en rambuffert mellan de två eller inga rambuffertar mellan de tvà. I det föregående fallet kan läsning av data en ram framför bufferten som anges av läspekaren alltid utföras. I det senare fallet kommer emellertid skrivningen av luckor i rambufferten som anges av skrivpekaren att vara tidigare 10 15 20 25 30 35 . . « . f | 516 746 4 än en klocka för utgående tidluckor som ger upphov till utläsning av luckor från rambufferten som anges av läspekaren. Följaktligen kommer skrivmekanismen, om data för en uttidluckeposition skall läsas från samma luckposition hos en inram, alltid att ha haft tid att passera nämnda luckposition hos inramen och nämnda läsning av data en rambuffert framför bufferten som anges av läspekaren kan således alltid tillåtas för sådana luckor.
Följaktligen kommer, för vilken kanal som helst som växlas från inporten som är associerad med skrivpekaren till utporten som är associerad med läspekaren och som upptar samma luckpositioner inom varje ram som tas emot vid inporten som inom varje ram som skall sändas från utporten, vilkoren för läsning en ram framför läspekaren att vara uppfyllda. Märk att läsning en buffert framför enligt uppfinningen, om den sekventiella ordningen av luckorna hos en sådan kanal måste bibehållas i ordning för bibehållande av kanalkonsistens, måste utföras för alla uttidluckepositioner som definierar kanalen. Detta villkor kommer naturligtvis att uppfyllas om läsning framför enligt uppfinningen endast används för alla luckor hos utramen som inte tidsväxlas med avseende på sina positioner i inramen, oberoende av vilken kanal de tillhör.
En fördel med uppfinningen är således att den synkroniserar skriv- och läsoperationer i förhållande till bufferten utan att nödvändigtvis låsa inramsynkroniseringssignalen till utramsynkroniseringssignalen, utan att uppfinningen emellertid är begränsad till detta, samtidigt som den minskar fördröjningen för sådana luckor som inte skall tidsväxlas av växeln.
En annan fördel med uppfinningen är att den definierar en enkel regel för att verkligen tillåta användning av en rambuffert för läsning och skrivning samtidigt. Å . » - .e 2. u» lO l5 20 25 30 35 - . . | - . 516 746 5 En annan fördel med uppfinningen är att denna mekanism kan användas individuellt för varje in- /utportkombination. Beteendet för läsaccessen av rambuffertar som används när data läses från en inport till en första utport behöver alltså inte påverka beteendet när nämnda buffertar läsaccessas för läsning av data från nämnda inport till en andra utport.
Märk att även om medel tillhandahålls för tillförsäkrande av att läspekaren och skrivpekaren inte anger samma rambuffert samtidigt behöver detta inte betyda att de aldrig tillåts göra det. Exempelvis kan organ för tillhandahållande av en ytterligare marginal för tillåtande av att pekarna anger samma buffert under en kort tidsperiod under stränga bestämmelser kan läggas till systemet.
För såväl ytterligare exemplifierande beskrivning av sådana mekanismer som för ytterligare diskussion med avseende på driften hos ett trippelbuffringssystem av den typ i vilken uppfinningen med fördel implementeras, hänvisas till den ännu ej publicerade svenska patentansökan SE 9704067-9.
Eftersom uppfinningen sörjer för en minskning av sambandet mellan läsningen och skrivningen av data i förhållande till ett ramminne, och följaktligen av sambandet mellan ramsynkroniseringssignalerna hos de portar som accessar ramminnet, är uppfinningen speciellt fördelaktig i samband med nätverk i vilka synkroniseringskraven är sådana att varje ramsynkroniseringssignal kan uppvisa ett begränsat jitter och kan vara godtyckligt belägen i fas i förhållande till andra ramsynkroniseringssignaler, men inte kan uppvisa någon ihållande ramdrift i förhållande till andra ramsynkroniseringssignaler_ Ett exempel på ett nätverk av denna typ är DTM-nätverket Mode). nätverk hänvisas till ”The DTM Gigabit Network", (Dynamic synchronous Transfer För ytterligare information avseende ett sådan Christer H w. 10 15 20 25 30 35 » « « | 1 . 516 746 6 Bohm, Per Lindgren, Lars Ramfelt och Peter Sjödin, 3(2):lO9-126, 1994.
De ovannämnda egenskaperna, utföringsformerna och Journal of High Speed Networks, aspekter av uppfinningen kommer nu att exemplifieras ytterligare med hänvisning till den bifogade ritningen.
För förenkling av den följande beskrivningen kommer det att antas i det följande att data överförs i ramar med väsentligen fast storlek, som exempelvis har en nominell varaktighet av 125 us, och att början pà varje ram definieras av en ramsynkroniseringssignal, som även kallas för ramstartsignal. Vidare antas det att varje ram delas in i ett flertal tidluckor med fast storlek, t ex 64-bit, som utgör en nyttolast som följer efter ramstartsignalen inom varje ram.
Figur 1 visar ett ramminne 10 som innefattar tre rambuffertar 1-3 för temporär lagring av ramar av luckor som har tagits emot fràn en inport hos en växel.
Ramminnet 10 är, utöver att det används av nämnda inport, typiskt anordnat att accessas av en eller fler utportar som använder samma ramminne för datahämtning vid sändning av ramar av luckor fràn respektive utport. Var och en av de tre rambuffertarna har kapacitet att lagra en fullständig ram av luckor.
Sàsom indikeras i Figur 1 kan, samtidigt som en rambuffert uppdateras, de återstående två buffertarna användas för datahämtning. Grunden för rambuffertutväljandet för läsning och skrivning är användningen av en modulo-3-räknare, som räknas upp vid varje förekomst av motsvarande ramstartsignal. För inporten som skriver data i ramminnet 10 tillhandahålls en skrivpekare W som anger vilken buffert av de tre buffertarna som för närvarande skall användas för lagring av en ram som för närvarande tas emot via inporten. Vid varje mottagning av ramstartsignalen frän inporten ökas skrivpekaren W till att ange en nästa rambuffert av de tre rambuffertarna pà ett cykliskt modulo-3-sätt. Pà samma sätt tillhandahålls, för var och en av utportarna u n; lO 15 20 25 30 35 . . v - m 516 746 7 som är anordnad att läsa data från ramminnet 10, en läspekare R som anger vilken rambuffert av de tre rambuffertarna som för närvarande skall användas för läsning av luckor som skall sändas från respektive utport. Vid varje förekomst av utportramstartsignalen ökas respektive läspekare R så att den anger en nästa rambuffert av de tre rambuffertarna på ett cykliskt modulo-3-sätt.
Följaktligen tillhandahålls en unik läspekare i intervallet O, l, 2 för varje in-/utportkombination, vilket gör det möjligt att tillhandahålla fullständigt oberoende hämtning av data i de lagrade ramarna vid vilken hastighetskombination som helst så länge som den (typiskt 125us). Märk som kommer från en nominella ramfrekvensen är densamma att en unik rambuffertplatsadress, tidluckavbildningstabell (som kommer att beskrivas mer detaljerat nedan med hänvisning till figurerna 4 och 5), kommer att tillhandahållas, utöver denna läspekare, vid varje hämtning för identifiering för varje utgående tidlucka av den specifika plats i rambufferten från vilken data skall låsas.
Om det exempelvis antas att pekaren W för närvarande pekar rambufferten 3 i Figur 1, kan läspekaren R för en utport peka på rambufferten l, såsom indikeras av den heldragna pilen, eller på rambufferten 2, såsom indikeras av den streckade pilen. Det antas nu att förhållandet mellan in- och utramstartsignalerna har fastställts till sådant att läspekaren R kommer att flyttas fram innan skrivpekaren W flyttas fram, som ett resultat av det faktum att nästa förekomst av utramstartssignalen kommer att äga rum före nästa förekomst av inramstartssignalen.
För tillförsäkrande av buffertkonsistens skall läspekaren sedan företrädesvis inte tillåtas flyttas fram så att den anger samma rambuffert som den som för närvarande anges av läspekaren W, dvs rambufferten 3, eftersom data i rambufferten 3 i såfall potentiellt kan läsas innan de Därför skulle, har blivit skrivna. i den antagna «~ H. lO l5 20 25 30 35 . V . | » w 516 746 8 situationen, den för närvarande korrekta positionen för läspekaren vara att ange rambufferten 1, dvs rambufferten som indikeras av den heldragna pilen till vänster i Figur l.
Denna situation beskrivs nu mer detaljerat med hänvisning till Figur 2, varvid placeringen av läspekaren och skrivpekaren således antas vara sädana att skrivpekaren pekar tvà rambuffertar framför skrivpekaren.
Oberoende av vilken luckposition hos rambufferten l som en dataläsenhet (såsom tidluckavbildningstabellen som skall beskrivas nedan) anger, dvs vilken plats i rambufferten som data skall hämtas fràn, skulle det inte ge upphov till någon buffertinkonsistens om nämnda hämtning skulle utföras en ram framför, dvs om data istället hämtades frán motsvarande plats eller luckposition hos rambufferten 2, så länge som sàdan läsning framför utförs för alla tidluckepositioner som definierar samma kanal och för alla ramar som skall sändas fràn utporten som läspekaren hänför sig till.
Det antas sedan att en nästa utramstartsignal tas emot, vilken ger upphov till att läspekaren flyttas framåt ett steg så att den anger rambufferten 2. Denna situation beskrivs nu mer detaljerat med hänvisning till Figur 3. Eftersom skrivpekaren nu pekar en rambuffert framför läspekaren, får läsning av data en rambuffert framför rambufferten som för närvarande anges av läspekaren nu endast utföras om data skall hämtas fràn en plats eller tidlucka som har en lägre luckposition eller ett lägre tidluckenummer än den plats eller luckposition till vilken skriving för närvarande sker, såsom schematiskt indikeras i Figur 3.
Exempelvis kommer skrivkomponenterna som skriver data i rambufferten 3, när utportskomponenterna är redo att hämta data för den första tidluckan hos utramen, att exempelvis redan vara vid platsen tjugoett hos rambufferten 3. Om avbildningsinstruktionerna för den första tidluckan hos utramen anger att data skall hämtas lO l5 20 25 30 35 516 746 9 frän den första tidluckan hos inramen, kommer läsning en ram framför hos rambufferten 2, som anges av läspekaren, för denna tidlucka följaktligen inte nödvändigtvis ge upphov till buffertinkonsistens. Pà liknande sätt kommer skrivkomponenterna som skriver data i rambufferten 3, när utportkomponenterna är redo att hämta data för tidluckan trettioett hos utramen, pä liknande sätt redan vara vid positionen femtioett hos rambufferten 3. Om avbildningsinstruktionerna för tidluckan trettioett hos utramen anger att data skall hämtas frän tidluckan trettioett hos inramen, kommer läsning en tidlucka framför av rambufferten 2 som anges av läspekaren fortfarande inte nödvändigtvis ge upphov till buffertinkonsistens. Följaktligen kommer, för alla kanaler som växlas från inporten som är associerad med skrivpekarn till utporten som är associerad med läspekaren och som upptar samma luckposition inom varje ram som tas emot vid inporten som inom varje ram som skall sändas fràn utporten, villkoren för läsning en ram framför av läspekaren att vara uppfyllda.
Ett exempel pä komponenter och mekanismer som används för skrivning och läsning av data frän en trippelbuffert av den typ som visas i Figurerna l-2 kommer nu att beskrivas med hänvisning till Figur 4.
Figur 4 visar schematiskt en del 200 av en växel som innefattar anordningen en trippelbuffert 220, som innefattar rambuffertarna 220a-220c, med avseende pà en in-/utportkombination. Utöver trippelbufferten 220 innefattar en räknare 250 för utväljande av skrivbuffert, en indemultiplexor 210, en räknare 240 för inkommande tidluckor, en räknare 260 för utgàende tidluckor, en räknare 270 för utväljande av läsbuffert, en utmultiplexor 230, en tillstàndsmaskin 290 för buffertsekvensering och en tidluckavbildningstabell 280.
Under drift indikerar en inramstartsignal 208 förekomster av ramstartsignalen hos ramarna som tas emot vid inporten och tillhandahålls till räknaren 240 för 10 15 20 25 30 35 - ~ - ~ » n 516 746 10 inkommande tidluckor, tillståndsmaskinen 290 och räknaren 250 för utvåljande av skrivbuffert. Räknaren 250 för utväljande av skrivbuffert använder inramstartsingalen 208 för triggning av framflyttning av en modulo-3-pekare som utgör utmatning till demultiplexorn 210.
Demultiplexorn 210 skriver ramar 209, som tas emot vid inporten, till en rambuffert såsom identififeras av modulo-3-pekaren från räknaren 250. Utpekaren från räknaren 250 för utväljande av skrivbuffert tillhandahålls även till räknaren 270 för utväljande av läsbuffert.
Samtidigt styr räknaren 240 för inkommande tidluckor vilken plats i bufferten som varje sekventiell tidlucka i inramen skrivs i. Räknaren 240 för inkommande tidluckor återställs vid varje mottagning av ramstartsignalen 208 och räknar, med en luckfrekvens takt från en första plats till en sista plats i bufferten i sekventiell ordning, luckorna i varje ram vilka därigenom skrivs i rambufferten så att de placeras i denna med bibehållen sekventiell luckordning.
Utramstartsignalen 232 indikerar förekomster av ramstartsignalen för ramar som skall sändas från utporten. Den tillhandahålls till räknaren 260 för utgående tidluckor, tillståndsmaskinen 290 och räknaren 270 för utväljande av läsbuffert. Den senare använder ramstartsignalen 232 för triggning av framflyttande av en modulo-3-pekare som utgör utmatning till multiplexorn 230. Multiplexorn 230 vidarebefordrar data, som hämtas från rambufferten som identifieras modulo-3-pekaren från räknaren 270, till utporten.
Baserad på de ovannämnda insignalerna är tillståndsmaskinen 290 anordnad att tillhandahålla en styrsignal till råknaren 270 för utväljande av läsbuffert, varvid nämnda styrsignal fastställs av fassambandet mellan in- och utramstartsignalerna, såsom diskuteras ovan med hänvisning till Figurerna 1-3. 1 . - , 1 u lO l5 20 25 30 35 A . K , x f 516 746 ll Baserat på styrsignalen som tas emot från tillståndsmaskinen 290 kommer räknaren 270 för utväljande av läsbuffert att placera sin utmatade läspekare en eller två rambuffertar bakom rambufferten som identifieras av signalen från räknaren 250 för utväljande av skrivbuffert och fortsätta att använda ramstartsignalen 232 för triggning av framflyttning av modulo-3-pekaren. Dessutom kommer räknaren 270 för utväljande av läsbuffert, om så indikeras av en förskjutningssignal som tas emot från tidluckavbildningstabellen 280, för individuella, specifika luckor i en utram att temporärt räkna upp räknaren som tillhandahålls till multiplexorn 230, vilket därigenom ger upphov till en utläsning av data en rambuffert framför för sådana luckor.
Vidare återställs räknaren 260 för utgående tidluckor vid varje mottagning av utramstartsignalen 232 och räknar med en takt av utgående tidluckors frekvens för adressering av en första plats till en sista plats i en tidluckavbildningstabell 280 i sekventiell ordning och stegar således igenom tidluckavbildningstabellen en gång för varje utram. För varje specifik uttidlucka kommer räknaren 260 för utgående tidluckor således att peka pà en respektive plats i tidluckavbildningstabellen 280.
Tidluckavbildningstabellen 280 (för vilken ett tillhandahåller en respektive utförande visas mer detaljerat i Figur 5) i sin tur, för varje position i denna, a) adress till trippelbufferten 220, som anger från vilken position av denna som luckdata skall hämtas, b) en respektive identifikation av vilken inport, dvs vilken trippelbuffert som data skall hämtas från, och c) en respektive förskjutning som utgör nämnda förskjutningssignal till räknaren 270 för utväljande av läsbuffert. Märk att portidentifikationssignalen b) inte indikeras i Figur 4. Platserna i tidluckavbildningstabellen 280 definierar således den önskade lucktidindelningen för utramen. m hm lO 15 20 25 30 35 » | . . .- 516 746 12 Märk att adressen som tillhandahålls från tidluckavbildningstabellen 280 som en ingång till vid drift i förhållande till ett till alla trippelbuffertar, dvs till trippelbufferten hos varje trippelbufferten 220, flertal inportar, kan sändas ut ("multicast") inport, och nämnda förskjutning kan sändas ut till alla räknare för utväljande av läsbuffert som verkar i förhållande till en kombination av utporten som är associerad med nämnda tidluckavbildningstabell och en respektive inport. Vidare kommer nämnda identifikation som anger vilken inport som dess data skall hämtas från tillhandahållas till en ytterligare multiplexor (inte visad) som hämtar data från nämnda för utväljande läsbuffert avsedda räknare för utväljande av vilka av nämnda data som skall vidarebefordras för den specifika uttidluckan.
Såsom visas i den exemplifierande tidluckavbildningstabellen SMT som visas i Figur 5 adresseras tabellen av utsignalen från en räknare SC för utgående tidluckor (260 i Figur 4). Vid var och en av platserna tillhandahåller en första kolumn ”INTIDLUCKA” respektive adress till trippelbufferten, som anger från vilken plats av denna som luckdata skall hämtas, tillhandahåller en andra kolumn "INPORT" identifikation av vilken inport, dvs vilken respektive trippelbuffert som data skall hämtas från för respektive utport och tillhandahåller en tredje kolumn ”FÖRSKJUTNING” en respektive förskjutning som utgör nämnda förskjutningssignal, vilken typiskt tillhandahålls till en mekanism för utväljande av läsbuffert (270 i Figur 4).
Att märka i Figur 5 är att om positionen eller platsen hos en trippelbuffert som återfinns i kolumnen ”INTIDLUCKA” är densamma som positionen eller platsen hos tidluckavbildningstabellen SMT som sådan, vilket således indikerar att luckpositionen från vilken data skall hämtas från den inkommande ramen är densamma som 10 15 20 25 30 35 516 746 13 positionen för tidluckan i den utgående ramen i vilken nämnda data skall sändas, till ett sätts förskjutningssignalen (1), vilket således indikerar att läsning en rambuffert framför är tillåten. I Figur 5 är detta exempelvis giltigt för enheterna O, l, 2, 6, 7, . . ., och 999. Förskjutningen sätts således till ett (1) för dessa platser. Detta är emellertid inte giltigt för platserna 3,4 och 5, varvid förskjutningen i detta fall således sätts till noll (O).
I Figur 6 har en växel S två gränssnitt mot två respektive enkelriktade kommunikationsbussar A och B på vilka ramar av luckor sänds på ett fleraccessätt. Såsom visas tar växel emot en inram från bussen A som innefattar luckorna Al-A4 och en inram från bussen B som innefattar luckorna Bl-B4. I ramen som utmatas på bussen A har de tre första luckorna Al-A3 exakt samma positioner som i den mottagna ramen. Läsning av data för dessa tre luckor en rambuffert framför enligt uppfinningen, och såsom beskrivits ovan, används därför för dessa tre utluckor. Data för den fjärde tidluckan som skall utmatas på biströmmen A skall emellertid hämtas från den andra tidluckan B2 i ramen som togs emot på bussen B. För denna tidlucka kommer därför alternativet att läsa en rambuffert framför typiskt inte att vara en giltig operation.
Följaktligen kommer, för vilken kanal som helst som definieras av luckor av en ram som överförs på en fleraccessbuss och som bara skall vidarebefordras av växeln nedströms i samma tidlucka och på samma buss som den togs emot på, villkoren att vara uppfyllda för läsning en ram framför av läspekaren i förhållande till en trefaldig (eller mer) buffert av den typ som uppfinningen inriktar sig på. Även om exemplifierande utföringsformer av uppfinningen har beskrivits i detalj ovan, kan modifieringar, kombinationer och förändringar av dessa göras, såsom kommer att framgå för fackmannen inom - \ » . ~| :f .n- -- 1 1 2 » u - .~» . -. .ß ~. .. n , u 1 1 »g ' =. v. 1: »= s - ; = u k..
M - f 1,, _. zç» z « i. : » f l f: . .-; n ; 1 . n v : > - v . _ \. «. 1 1..,- 14 området, inom uppfinningens ram, vilken definieras av de åtföljande patentkraven.

Claims (9)

10 15 20 25 30 35 -V-u « > | u , f m: . v en » fi « f , ., V 1- 1» v. n: s s - a '- z v f; -_= un» n; -f a w 1; i. ; s r o v 1 n = e y x -a X n V! 15 PATENTKRAV
1. Förfarande för styrning av dataöverföring, varvid nämnda förfarande innefattar stegen: att temporärt lagra ramar av tidluckor som tas emot via en inport hos en växel i tre eller flera rambuffertar; att tillhandahålla en skrivpekare som anger vilken rambuffert av nämnda tre eller flera rambuffertar som används för lagring av en ram av luckor som för närvarande tas emot via nämnda inport; att tillhandahålla en läspekare som anger vilken rambuffert av nämnda tre eller flera rambuffertar som skall användas för läsning av data som skall sändas i ramar fràn en utport hos nämnda växel; att flytta fram nämnda skrivpekare sä att den anger en nästa rambuffert av nämnda rambuffertar pà ett cykliskt sätt som ett resultat av varje mottagning av en första signal som hänför sig till början pà en nästa ram av luckor som tas emot via nämnda inport; att flytta fram nämnda läspekare sä att den anger en nästa rambuffert av nämnda rambuffertar pà ett cykliskt sätt som ett resultat av varje mottagning av en andra signal som hänför sig till början pà en nästa ram av luckor som skall sändas fràn nämnda utport; att placera nämnda pekare sà att ingen av nämnda pekare kommer att flyttas fram sä att den anger samma rambuffert som den andra pekaren av nämnda pekare; att för den n:te tidluckan av ramar som skall sändas fràn nämnda utport, om den är konfigurerad för mottagning av data fràn den n:te tidluckan av ramar som tas emot via nämnda utport, läsa data fràn en respektive plats hos rambufferten som, pà nämnda cykliska sätt, är belägen en rambuffert framför rambufferten som för närvarande anges av nämnda läspekare.
2. Förfarande enligt patentkrav 1, varvid nämnda lagringssteg innefattar lagring av den n:te tidluckan hos lO 15 20 25 30 35 » . > . . . 516 746 16 varje ram som tas emot via nämnda inport i en nzte plats hos nämnda rambuffert som anges av nämnda skrivpekare vid en respektive tidpunkt; och varvid nämnda läsningssteg innefattar läsning, för den nzte tidluckan av varje ram som skall sändas från nämnda utport, om den är konfigurerad att ta emot data fràn den nzte tidluckan av ramar som tas emot via nämnda inport, av data fràn nämnda nzte plats hos rambufferten som, pà nämnda cykliska sätt, är belägen en rambuffert framför rambufferten som anges av nämnda läspekare vid en respektive tidpunkt.
3. Förfarande enligt patentkrav 1, varvid nämnda placeringssteg innefattar detektering av vilken av nämnda första signal och nämnda andra signal som tas emot först i tiden och justering av en eller bàda av nämnda pekare så att rambufferten som anges av nämnda skrivpekare, om nämnda första signal tas emot först, är ätminstone tvà rambuffertar framför, pà nämnda cykliska sätt, rambufferten som anges av nämnda läspekare, eller sä att rambufferten som anges av nämnda läspekare, om nämnda andra signal tas emot först, är åtminstone tvà rambuffertar framför, pà nämnda cykliska sätt, rambufferten som anges av nämnda skrivpekare.
4. Förfarande enligt patentkrav 1, innefattande stegen: att tillhandahålla en ytterligare läspekare som anger vilken rambuffert av nämnda tre eller flera rambuffertar som skall användas för läsning av data som skall sändas i ramar frän en annan utport hos nämnda växel; att flytta fram nämnda ytterligare läspekare så att den anger en nästa rambuffert av nämnda rambuffertar pà ett cykliskt sätt som ett resultat av varje mottagning av en tredje signal som hänför sig till början pà en nästa ram av luckor som skall sändas fràn nämnda ytterligare utport; att placera nämnda pekare sà att ingen av nämnda skrivpekare och nämnda ytterligare läspekare kommer att < . 1 l 1 » lO l5 20 25 30 35 u vf» 516 746 17 flyttas fram så att den anger samma rambuffert som någon annan pekare.
5. Förfarande enligt patentkrav 4, innefattande stegen att för den nzte tidluckan av ramar som skall sändas från nämnda ytterligare utport, om den är konfigurerad att ta emot data fràn den nzte tidluckan av ramar som tas emot via nämnda inport, läsa data fràn en respektive plats hos rambufferten som är, pà nämnda cykliska sätt, belägen en rambuffert framför rambufferten som för närvarande anges av nämnda ytterligare läspekare.
6. Anordning för växling av data mellan portar hos nämnda anordning, vilken anordning innefattar: ett lagringsorgan som tillhandahåller tre eller flera rambuffertar som är avsedda att användas för temporär lagring av ramar av luckor som tas emot via en inport hos nämnda anordning; ett skrivpekarorgan för angivande av vilken rambuffert av nämnda tre eller flera rambuffertar som är avsedd att användas för lagring av en ram av luckor som för närvarande tas emot via nämnda inport, varvid nämnda skrivpekarorgan är anordnat att flyttas fram för angivande av en nästa rambuffert av nämnda tre eller flera rambuffertar pà ett cykliskt sätt som ett resultat av varje mottagning av en första signal som hänför sig till början pä en nästa ram av luckor som tas emot vid nämnda inport; ett läspekarorgan för angivande av vilken rambuffert av nämnda tre eller flera rambuffertar som för närvarande används för läsning av data som skall sändas i ramar fràn en utport hos nämnda anordning, varvid nämnda läspekarorgan är anordnat att flyttas fram för angivande av en nästa rambuffert av nämnda tre eller flera rambuffertar pà ett cykliskt sätt som ett resultat av varje mottagning av en andra signal som hänför sig till början av en nästa ram av luckor som skall sändas fràn nämnda utport; och 1 . . . . . lO 15 20 25 30 35 H == , . « . = » .- 516 746 H ..- 18 ett styrorgan för styrning av nämnda pekarorgans drift för placering av nämnda pekare så att ingen av nämnda pekare kommer att flyttas fram så att den anger samma rambuffert som den andra pekaren av nämnda pekare; ett utväljandeorgan som är anordnat att för den n:te tidluckan av ramar som skall sändas fràn utporten, om den är konfigurerad att ta emot data fràn den n:te tidluckan av ramar som tas emot via nämnda inport, välja ut data fràn en respektive plats hos rambufferten som är belägen en rambuffert framför, pà nämnda cykliska sätt, rambufferten som för närvarande anges av nämnda läspekarorgan.
7. Anordning enligt patentkrav 6, varvid nämnda lagringsorgan är anordnat att lagra den n:te tidluckan hos varje ram som tas emot via nämnda inport i en n:te plats hos rambufferten vid en respektive tidpunkt som anges av nämnda skrivpekare, och varvid nämnda utväljandeorgan innefattar utväljande, för den n:te tidluckan hos varje ram som skall sändas fràn nämnda utport om den är konfigurerad att ta emot data fràn den n:te tidluckan av ramar som tas emot via nämnda inport, av data fràn nämnda n:te plats hos rambufferten som, pà nämnda cykliska sätt, är belägen en rambuffert framför rambufferten som anges av nämnda läspekare vid en respektive tidpunkt.
8. Anordning enligt patentkrav 6 eller 7, innefattande: N inportar M utportar; N skrivpekarorgan av ovannämnda typ, vilka vart och ett är anordnat att verka i förhållande till en respektive inport; N lagringsorgan av ovannämnda typ, vilka vart och ett är anordnat att temporärt lagra ramar av tidluckedata som tas emot vid en respektive inport; NxM läspekarorgan av ovannämnda typ, vilka var och en är anordnade att verka i förhållande till en respektive in-/utportskombination; och NxM utväljandeorgan av ovannämnda typ, vilka vart och ett är anordnat att verka i förhållande till en respektive in- /utportskombination. » v . » . | . , » . .- 516 746 19
9. Anordning enligt patentkrav 6, 7 eller 8, varvid nämnda andra signal är synkroniserad enligt nämnda första signal på ett sådant sätt att: a) nämnda andra signal tillåts uppvisa en godtycklig fasskillnad i förhållande till nämnda första signal; b) nämnda andra signal tillåts uppvisa ett godtagbart fasjitter i förhållande till nämnda första signal; och c) nämnda andra signal inte tillåts uppvisa någon ihållande fasdrift i förhållande till nämnda första signal.
SE9901606A 1999-05-04 1999-05-04 Förfarande och anordning för att minska buffertfördröjning SE516746C2 (sv)

Priority Applications (3)

Application Number Priority Date Filing Date Title
SE9901606A SE516746C2 (sv) 1999-05-04 1999-05-04 Förfarande och anordning för att minska buffertfördröjning
PCT/SE2000/000848 WO2000067518A1 (en) 1999-05-04 2000-05-03 Method and apparatus for reducing buffer delay
AU44473/00A AU4447300A (en) 1999-05-04 2000-05-03 Method and apparatus for reducing buffer delay

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE9901606A SE516746C2 (sv) 1999-05-04 1999-05-04 Förfarande och anordning för att minska buffertfördröjning

Publications (3)

Publication Number Publication Date
SE9901606D0 SE9901606D0 (sv) 1999-05-04
SE9901606L SE9901606L (sv) 2000-11-05
SE516746C2 true SE516746C2 (sv) 2002-02-26

Family

ID=20415457

Family Applications (1)

Application Number Title Priority Date Filing Date
SE9901606A SE516746C2 (sv) 1999-05-04 1999-05-04 Förfarande och anordning för att minska buffertfördröjning

Country Status (3)

Country Link
AU (1) AU4447300A (sv)
SE (1) SE516746C2 (sv)
WO (1) WO2000067518A1 (sv)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4005272A (en) * 1974-08-14 1977-01-25 Arthur A. Collins, Inc. Time folded TST (time space time) switch
US4791629A (en) * 1986-06-02 1988-12-13 Ibm Corporation Communications switching system
US4809261A (en) * 1987-07-10 1989-02-28 Solid State Systems, Inc. Space and time switch for 22 PCM highways
US5128929A (en) * 1988-11-15 1992-07-07 Nec Corporation Time division switching system capable of broad band communications service
US5862136A (en) * 1995-07-07 1999-01-19 Northern Telecom Limited Telecommunications apparatus and method
WO1997004552A1 (en) * 1995-07-19 1997-02-06 Fujitsu Network Communications, Inc. Point-to-multipoint transmission using subqueues

Also Published As

Publication number Publication date
AU4447300A (en) 2000-11-17
SE9901606L (sv) 2000-11-05
WO2000067518A1 (en) 2000-11-09
SE9901606D0 (sv) 1999-05-04

Similar Documents

Publication Publication Date Title
US5825767A (en) ATM switch with input and output ports
US7516253B2 (en) Apparatus for storing data having minimum guaranteed amounts of storage
US5610914A (en) Shared buffer memory switch for an ATM switching system and its broadcasting control method
EP1124179B1 (en) An apparatus for signal synchronization between two clock domains
CN100493037C (zh) 用于集成电信网络的交换机
EP1045558B1 (en) Very wide memory TDM switching system
US8861515B2 (en) Method and apparatus for shared multi-bank memory in a packet switching system
US20010010692A1 (en) Memory organization in a switching device
US20030043851A1 (en) Transmit virtual concatenation processor
US6973092B1 (en) Dynamic queue utilization
CN1264531A (zh) 具有时间标记功能的交换阵列布置
US6430180B1 (en) Method and apparatus for switching data between bitstreams of a time division multiplexed network
US7106692B1 (en) APS/port mirroring
US7492760B1 (en) Memory egress self selection architecture
US8040878B2 (en) Multi-service transport apparatus with switch for integrated transport networks
US6473435B1 (en) Method and apparatus for transferring packets to a memory
US7197031B2 (en) Cross-connection of high bandwidth signal traffic across independent parallel shelves
US20070140232A1 (en) Self-steering Clos switch
SE516746C2 (sv) Förfarande och anordning för att minska buffertfördröjning
US7184442B1 (en) Buffer management method and apparatus
US8588255B2 (en) Full-T cross apparatus and method
SE456629B (sv) Forfarande och anordning for overforing av information via ett bussystem
US7224693B1 (en) Long packet handling
US7542484B2 (en) Managing payload specific latencies in a cross-connect system
US7082127B1 (en) Synchronous dynamic register updating across a distributed system

Legal Events

Date Code Title Description
NUG Patent has lapsed