NL8320161A - Sorteermethode. - Google Patents

Sorteermethode. Download PDF

Info

Publication number
NL8320161A
NL8320161A NL8320161A NL8320161A NL8320161A NL 8320161 A NL8320161 A NL 8320161A NL 8320161 A NL8320161 A NL 8320161A NL 8320161 A NL8320161 A NL 8320161A NL 8320161 A NL8320161 A NL 8320161A
Authority
NL
Netherlands
Prior art keywords
data
sorting
module
key
register
Prior art date
Application number
NL8320161A
Other languages
English (en)
Other versions
NL192354B (nl
NL192354C (nl
Original Assignee
Western Electric Co
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 Western Electric Co filed Critical Western Electric Co
Publication of NL8320161A publication Critical patent/NL8320161A/nl
Publication of NL192354B publication Critical patent/NL192354B/nl
Application granted granted Critical
Publication of NL192354C publication Critical patent/NL192354C/nl

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/76Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
    • G06F7/78Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/22Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc
    • G06F7/24Sorting, i.e. extracting data from one or more carriers, rearranging the data in numerical or other ordered sequence, and rerecording the sorted data on the original carrier or on a different carrier or set of carriers sorting methods in general
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99937Sorting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Sorting Of Articles (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

-1- ού : 101 VO 5257
Sorteermethode.
De uitvinding heeft betrekking op een inrichting voor het opnieuw rangschikken van gegevens in een gewenste volgorde, voorzien van tenminste een sorteermoduul voor het ontvangen van sequentieel toegevoerde gegevens en een vergelijkingsschakeling in elke moduul, 5 welke normaliter bestemd is om een volgorde te bepalen, waarin de gegevens worden afgeleverd door de waarden van paren gegevens met elkaar te vergelijken.
Aangezien "in wezen elk belangrijk aspect van de programmering zich ergens in de context van het sorteren of opzoeken voordoet" 10 (D.E.Knuth, The Art of Computer Programming, vol.Ill, Addison-Wesley, 1973), is het onderwerp op grote schaal bestudeerd door zowel wetenschapsmensen op het gebied van de rekentechniek als door ontwerpers van elektronische "hardware", en in de literatuur zijn talrijke methoden, waaronder kiessorteren, hoopsorteren, introductiesorteren en versme1-15 tingssorteren beschreven. Ook een andere methode, "bellensorteren" genoemd, is ook zeer populair en zelfs deze ene methode staat bekend onder een aantal namen, waaronder verwisselingssortering, uitwisse-lingssortering en afvoersortering. Ondanks deze diversiteit in nomenclatuur is men het er in het algemeen over eens, dat de essentie van 20 bellensorteren is gelegen in de onderlinge verwisseling van twee naast elkaar gelegen gegevens in de hoeveelheid gegevens, welke wordt gesorteerd. Tijdens elke verwisseling worden de waarden van de gegevens met elkaar vergeleken en worden de gegevens, indien nodig, opnieuw gerangschikt, teneinde deze in de voorafbepaalde relatie te brengen 25 bijv. de kleinste eerst of de grootste eerst. De verwisselingen worden meer in het bijzonder sequentieel uitgevoerd, in het algemeen door alle gegevens in de hoeveelheid, een aantal malen af te tasten of te doorlopen totdat geen verdere verwisselingen meer worden uitgevoerd, op welk moment de gehele hoeveelheid naar wens is gesorteerd. Vele van 30 de methoden van het bellentype zijn met "soft-ware" gerealiseerd (zie bijv. Popular Computing, vol.8, nr.11, november 1980, "Bubble Sorting", pagina 2-10)en moeten derhalve in wezen worden beperkt tot een reeks sequentiele handelingen, aangezien de meeste rekeninrichtingen voor algemene doeleinden slechts een processor omvatten. Om dienten-35 gevolge optredende verwerkingssnelheidsbeperkingen te elimineren, zijn 8320161 -2- voor bellensorteren verschillende "hard-wareürealisaties voorgesteld, waarbij gebruik wordt gemaakt van een conventionele geintegreerde-ketentechnologie en magnetische bellendomeininrichtingen. Een voorbeeld van deze laatste is beschreven in een artikel van D.T.Lee e.a., ge-5 titeld "An On-Chip Compare/Steer Bubble Sorter", IEEE Trans, on
Computers, vol.C-30 nr.6, juni 1981, pagina 396-405 (zie meer in het bijzonder figuur 6), terwijl een IC-realisatie is beschreven in een artikel van P.G.Jansen en andere, getiteld "The Dimond: A Component for the Modulator Construction of Switching Networks", IEEE Trans, on 10 Computers, vol.C-29, nr.10, oktober 1980, pagina 884-889 (zie meer in het bijzonder figuur 8).
De doeltreffendheid van elk van de bekende bellensorteer-stelsels worden afgemeten tegen een groot aantal faktoren, zoals het bereikbare rendement en de latentheid evenals de vereiste geheugen-15 afmetingen. De beschouwde inrichting is beperkt in termen van het aantal gegevens, dat in elke hoeveelheid kan worden gesorteerd en het ontwerp is niet van toepassing op modulaire vervaardiging, waarbij gebruik wordt gemaakt van VLSI-technologie. Vele van de bekende sorteer-inrichtingen, waarbij de werking met succes is verbeterd in termen van 20 sommige van de bovenstaande criteria, zijn desalniettemin duur of lastig te realiseren.
De problemen worden volgens de uitvinding opgelost, doordat wordt voorzien in een inrichting voor het opnieuw rangschikken van gegevens in een gewenste volgorde, waarbij de moduul is voorzien van 25 een detectieschakeling, voor het detecteren of een van de sequentieel toegevoerde gegevens in het paar een bepaald afstandsgegeven is, en een eerste schakeling, die in responsie op de detectie van het bepaalde afstandsgegeven het paar gegevens inclusief het bepaalde afstandsgegeven aflevert in dezelfde volgorde als die, waarin het paar gegevens 30 door de moduul werd ontvangen.
De uitvinding voorziet in een seriereeks van identieke sorteermodulen, die alle synchroon kunnen worden geklokt. De te sorteren gegevens treden op in hoeveelheden, waarbij elk gegeven meer in het bijzonder een waarde heeft, welke de volgorde bepaalt waarin dit 35 gegeven moet worden gerangschikt, vergeleken met andere gegevens in de hoeveelheid. Bij elke klokpuls wordt een gegevens aan de eerste moduul toegevoerd en elke moduul, welke twee gegevens bevat, vergelijkt de 83 2 0 1 6 1 -3- waarden van de gegevens en draagt een van de gegevens naar de volgende moduul over, afhankelijk van het gewenste type sortering. De gegevens kunnen numeriek, alfabetisch of overeenkomstig een andere voorafbepaalde relatie worden gesorteerd. Het niet-doorgelaten gegeven wordt 5 vastgehouden en bij de volgende vergelijking gebruikt.
Volgens de uitvinding is elke moduul zodanig ingericht, dat deze een speciaal "afstands"-gegeven onderkent, dat aan een hoeveelheid te sorteren gegevens vooraf gaat of dat een hoeveelheid gegevens van de volgende scheidt. Wanneer een afstandsgegeven door de 10 sorteermoduul wordt ontvangen, worden het afstandsgegeven en het andere gegeven, dat daarin aanwezig is, (bij de volgende twee klok-pulsen) in dezelfde volgorde afgeleverd als die, waarin zij werden ontvangen. Hierdoor kan een reeks van N-sorteermodulen, die op de bovenbeschreven wijze is uitgevoerd, op een doeltreffende wijze hoeveelheden 15 van maximaal N-gegevens doeltreffend sorteren zolang als de gegevens in elke hoeveelheid door een afstandsgegeven zijn gescheiden. Dientengevolge wordt het rendement vergroot en is de inrichting meer flexibel dan een conventionele bellensorteerinrichting.
Een soortgelijk stelsel kan worden gebruikt voor het sor-20 teren van registraties, welke informatie en een bijbehorende sleutel omvatten. Bij deze configuratie worden de sleutels aan de sorteermo-dulen toegevoerd, terwijl de overeenkomstig informatie door een reeks nevenmodulen aan een herrangschikking wordt onderworpen.
De doeltreffende sortering, welke volgens de uitvinding 25 mogelijk wordt gemaakt, kan ook worden gebruikt voor het uitvoeren van permutaties, door de registratiesleutels op een gewenste wijze op-' nieuw worden gemerkt of gemanipuleerd. Als een voorbeeld kan de volgorde van een reeks gegevens naar de tijd worden omgekeerd door aan de gegevens sleutels in afnemende volgorde toe te wijzen. Een sortering 30 van deze registraties in toenemende sleutelvolgorde leidt dan tot de gegevens in de omgekeerde tijdvolgorde.
Een bepaalde toepassing is de verwisseling van tijdgleuven in een multiplex signaal met tijdverdeling. Zo kan bijv. elke tijd-gleuf in een multiplex signaal met tijdverdeling worden beschouwd als 35 het informatiegedeelte van een registratie. Door met de informatie in elke tijdgleuf een sleutel te laten samenwerken, kan de volgorde van 8320161 -4- de gleuven op een geschikte wijze worden verwisseld, eenvoudig door de registraties onder gebruik van het sorteerstelsel volgens de uitvinding te verwerken.
De uitvinding zal onderstaand nader worden toegelicht 5 onder verwijzing naar de tekening. Daarbij tonen: figuur 1-3 de wijze waarop een reeks gegevens wordt gesorteerd onder gebruik van een bekende bellensorteermethode; figuur 4-6 de wijze, waarop twee hoeveelheden gegevens worden verwerkt onder gebruik van een bellensortering volgens de uit-10 vinding; figuur 7 en 8 blokschema's van verschillende uitvoeringsvormen van modulen, welke dienen voor het sorteren van registraties, die volgens de uitvinding zijn opgebouwd; figuur 9 een andere inrichting voor het uitvoeren van de 15 afstandsdetectiefunktie bij de sorteermoduul volgens figuur 8; figuur 10 een blokschema van een bekende tijdgleufver-wisselinrichting; figuur 11 het gebruik van een seriereeks van registratie- sorteemodulen, zoals die volgens figuur 7 of 8, voor het verwisselen 20 van tijdgleuven van een multiplex signaal met tijdverdeling (TDM)-signaal en figuur 12 het gebruik van een reeks registratiesorteer-modulen van het in figuur 7 of 8 afgebeelde type voor het opnieuw rangschikken van lege tijdgleuven in een TDM-signaal.
25 De figuren 1-3 tonen grafisch de begin-, midden- resp.
eindcyclus van een conventionele bellensorteerwerking. In de drie figuren zijn voor dezelfde elementen dezelfde verwijzingen gebruikt. Zoals aangegeven in figuur 1 wordt aangenomen, dat een reeks van tien gegevens met numerieke waarden 8, 0, 1, 9, 7, 5, 3, 6, 4 en 8 moet 30 worden gesorteerd en dat de gegevens op het tijdstip t=0 vooraf moeten worden gebracht in een schuifregister 110 met tien posities, welk schuifregister individuele opzamelplaatsen 101-1 tot en met 101-10 bezit. Bij elke volgende klokpuls jzS op de lijn 102 wordt de inhoud van het register 101 over een positie naar rechts bewogen en wordt het 35 op dat moment op de plaats 101-1 aanwezige gegeven toegevoerd aan de ingang van een seriereeks 111 van tien sorteermodulen 111-1 t/m 111-10.
8320161 -5-
Elke sorteermoduul is bestemd voor het opslaan van twee toegevoerde gegevens in opzamelelementen, welke schematisch zijn weergegeven als bovenste en onderste helften, en het vergelijken van de waarden van de opgeslagen gegevens om een gegeven afhankelijk van het ge-5 wenste type sortering te kiezen. In het hierna volgende voorbeeld zal een inrichting voor het verschaffen van een laagste naar hoogste volgorde worden beschreven. Elke moduul voert het gekozen gegeven aam de uitgang daarvan toe, welke uitgang met de volgende sorteermoduul is gekoppeld of naar een verbruiksinrichting voert in het geval van 10 de laatste moduul. Tegelijkertijd ontvangt elke moduul aan de ingang daarvan een volgend gegeven uit de voorafgaande moduul of in het geval van de eerste moduul uit het register 101. Meer in het bijzonder werken de modulen synchroon onder bestuur van klokpulsen φ uit een (niet af-gebeelde)klokbron . De uitgang van de laatste moduul 111-10 is ge-15 koppeld met een verbruiksinrichting, zoals een register 121, dat (evenals het register 101) tien opzamelplaatsen 121-1 tot 121-10 bezit en door pulsen φ op de lijn 102 wordt geklokt.
Zoals aangegeven in figuur 1, worden alle sorteermodulen 111-1 t/m 111-10 op het tijdstip t=0 in werking gesteld en bevat elke 20 moduul twee gegevens met "zeer kleine" waarden, gesymboliseerd door de letter "s". Per definitie is de waarde "s" kleiner dan elke verwachte waarde in de hoeveelheid te sorteren gegevens.Het in werking stellen kan op een aantal verschillende wijzen geschieden en is bij de bekende stelsels nodig om hierna te beschrijven redenen. Op het tijd-25 stip t=0 is nadat een klokpuls φ aanwezig is geweest, de inhoud van het register 101 over een positie naar rechts verschoven en is het gegeven met de waarde "8" uit de opzamelplaats 101-1 nu in de sorteermoduul 111-1 opgeslagen. Aangezien alle modulen 111-1 t/m 111-10 initieel gegevens met dezelfde waarde s bevatten voor het optreden van de 30 eerste klokpuls, wordt de inhoud van een opzamelplaats (schematisch, de bovenste helft) in elke moduul, verschoven en vult het gegeven met de waarde "8", ontvangen uit de opzamelplaats 101-1, de lege opzamelplaats in de moduul 111-1 aan het eind van de eerste klokperiode. Het gegeven met de waarde "s" uit de laatste sorteermoduul 111-10 moet 35 buiten beschouwing worden gelaten, aangezien dit gegeven voor geen verdere nuttige funktie dient.
8320161 -6-
Na het optreden van de volgende klokpuls (t=2) is de in-houd van het register 101 weer naar rechts verschoven en is het geven met de waarde "0" uit de opzamelplaats 101-1 toegevoerd aan de sor-teermoduul 111-1. Aangezien de moduul 111-1 de waarden 8 en "s" gelijk-5 tijdig vergelijkt voor de gegevens, die gelijktijdig in de twee opzamel-plaatsen daarvan zijn opgeslagen en het gegeven met de waarde "s" naar de moduul 111-2 doorlaat, wordt het gegeven met de waarde "0" aan de zojuist vrijgekomen plaats (onderhelft) van de moduul 111-1 toegevoerd. De resterende modulen werken alle op een soortgelijke wijze.
10 Aangezien op het tijdstip t=2 alle andere modulen gegevens met de waarde "s" bevatten, "rimpelen" deze gegevens in wezen door de lege plaatsen (bovenste helften) van de resterende modulen en wordt een tweede gegeven met de waarde "s" buiten beschouwing gelaten.
Het bovenstaande proces wordt bij elke volgende klokpuls 15 φ herhaald. Na de derde klokpuls heeft een vergelijking plaatsgevonden in de moduul 111-1 tussen de sleuteIwaarden (8 en 0) van de eerste twee ingangsgegevens. De "0" is het kleinst en dit gegeven wordt aan de volgende moduul 111-2 van de reeks toegevoerd. Wanneer weer een klokpuls optreedt, wordt de "0" met de waarde van "s" in de moduul 111-2 20 vergeleken; zoals reeds is vermeld, is de waarde van "s" het kleinst en wordt dit gegeven verschoven. Om het gemakkeijker te maken de plaats van het te verschuiven gegeven in de grafische voorstelling volgens figuur 1-3 te detecteren, is een hoek van de bovenste of onderste moduul-helft, welke het gegeven met de kleinste waarde (voor het toevoeren van 25 de volgende puls $)bevat, gearceerd.
Aan het eind van tien klokpulsen is het register 101 geleegd en is de inhoud daarvan nu volledig opgeslagen in de sorteermo-dulen 111-1 t/m 111-5, die elk twee gegevens opslaan. Het is nu van belang om later te beschrijven redenen te beginnen met het reinigen van 30 de sorteermoduul-reeks van gegevens met "grote" waarden., aangegeven door het symbool "L", welke groter zijn dan elke mogelijke waarde, die reeds in de sorteermodulen aanwezig is. Het invoeren van de gegevens met "grote" waarden (bij dit voorbeeld zijn er 20 nodig) kan op een eenvoudige wijze geschieden door gegevens met de gewenste grote waarden aan het eind van 35 elke hoeveelheid gegevens, welke men wenst te sorteren, aan te hangen of door een schakelaar 125 zodanig opnieuw in te stellen, dat gegevens 8320161 -7- met grote waarden, welke in een hulpregister 130 zijn opgeslagen, aan de sorteermóduulreeks worden toegevoerd, nadat de gegevens in elke hoeveelheid volledig aan de reeks zijn toegevoerd.
Voortgaande met hetzelfde voorbeeld, doch. thans verwijzende 5 naar figuur 2 is na de lid klokpuls (t=l.l) het eerste gegeven met de waarde "L" de sorteermoduul 111-1 binnengetreden. Wanneer 14 klokpulsen aanwezig zijn geweest, blijkt uit figuur 2, dat de gegevens zich in de gewenste gesorteerde volgorde bevinden. De gegevens moeten evenwel door de resterende modulen worden verwerkt, aangezien N-modulen nodig 10 zijn bij het sorteren van andere hoeveelheden van maximaal N-gegevens. Nadat 20 klokpulsen aanwezig zijn geweest, zijn de gegevens gereed om de moduul 111-10 te verlaten. Ter illustratie toont figuur 3 de invoer van gegevens uit de sorteermodulen aan het register 121 tijdens de volgende 10 perioden, zodat aan het eind van 30 klokpulsen het 15 register 121 is gevuld met de gegevens, die in de gewenste volgorde zijn gesorteerd, d.w.z. gegevens met de laagste waarden eerst. Gegevens met de waarde "L" ’rullen nu alle 20 opzamelplaatsen in de sorteermodulen 111-1 t/m 111-10 en deze gegevens kunnen worden vervangen door gegevens met een waarde "s" in voorbereiding voor het sorteren van de 20 volgende hoeveelheid.
Het doel van het verschaffen van initiële "s"- en uiteindelijke "L"-voor- en achterwaarden bij de bekende belsorteerinrichtingen is het scheiden van gegevens in naast elkaar gelegen hoeveelheden, welke aan de seriereeks van sorteermodulen worden toegevoerd en het 25 beletten, dat gegevens uit een hoeveelheid in de gegevens van een voorafgaande of volgende hoeveelheid binnendringen. Indien bijv. het eerste gegeven met de waarde "L" in plaats daarvan een waarde had, welke niet groter was dan de waarden van alle voorafgaande gegevens, zou het gegeven zich tussen sommige van de voorafgaande gegevens in de sorteer-30 modulen voorwaarts bewegen in het interval tussen de 10de en 30ste klokpulsen, waardoor een fout ontstaat. Op een soortgelijke wijze zouden indien het initiële gegeven met de waarde "s" in plaats daarvan een waarde had, welke niet kleiner was dan de waarden van alle volgende gegevens, de gegevens met de kleinste waarden sommige van de gegevens 35 in de voorafgaande hoeveelheid inhalen, hetgeen weer resulteert tot een onjuiste sorteeruitgangsreeks. . Interferentie tussen de hoeveelheden 8320161 -8- kan verder worden geïllustreerd door de tien gegevens te beschouwen, welke oorspronkelijk in het register 101 zijn opgeslagen, behorende bij twee gescheiden hoeveelheden, die resp. 4 en 6 gegevens omvatten, zonder een speciaal voorste ("s"-waarden) of achterste ("L"-waarden) 5 gegeven voor scheiding.Nadat deze tien gegevens (8-0-1-9 en 7-5-3-6-4-8) zijn gesorteerd, is het gewenste resultaat 0-1-8-9 en 3-4-5-6-7-8. Aangezien het onderscheid tussen gegevens in verschillende hoeveelheden verloren is gegaan, is de eerste groep gegevens, welke werkelijk werkelijk ontstaat, 0-1-3-4 en de tweede groep 5-6-7-8-8-9.
10 Het gebruik van speciale gegevens als de voorste en achter ste gegevens voor elke hoeveelheid van n gegevens, kan de tijd, welke nodig is voor het sorteren van 2n tot 4n klokpulsen meer dan verdubbelen, aangezien de inleidende werking met gegevens met "s"-waarden of het reinigen van de gegevens met "L"-waarden elk in serie over een 15 interval van 2n klokpulsen moet hebben plaatsgevonden. De overgang vanuit gegevens met 2n eerdere "L"-waarden naar de volgende groep van 2n gegevens met "s"-waarden kan evenwel soms gelijktijdig in een klok-periode plaatsvinden; anders is nog een periode van 2n nodig. Het -verlies aan verwerkingssnelheid, dat zich bij het beschreven inleidings/ 20 reinigingsproces voordoet, is op een relatieve basis nog ernstiger bij de conventionele met "hard-ware" gerealiseerde bellensorteerinrich-tingen. Meer in het bijzonder wordt de reeks van sorteermodulen zolang gemaakt, dat de grootste hoeveelheid van te sorteren gegevens kan worden verwerkt, waarbij N modulen aanwezig zijn voor een 25 te verwachten maximale hoeveelheid van N-gegevens. Indien kleine hoeveelheden aanwezig zijn, moet desalniettemin de gehele sorteermoduul-reeks worden geinitialiseerd en gereinigd onder gebruik van 2N. speciale voorste/achterste s en L-gegevens. In dit geval wordt bij de initiali-sering/reiniging meer tijd gebruikt dan voor de werkelijke sortering 30 nodig is.
De moeilijkheden, welke zich tengevolge van het zojuist bschreven initialiserings/reinigingsproces voordoen, worden volgens de uitvinding vermeden door het introduceren van een afstandsgegeven met een bepaalde waarde tussen elke hoeveelheid te sorteren gegevens, en 35 door elke sorteermoduul gevoelig te maken voor de aanwezigheid van het afstandsgegeven, hetgeen in figuur 4-6 grafisch is aangegeven met een ."«".Wanneer een afstandsgegeven door een moduul wordt gedetecteerd, 8320161 -9- levert deze moduul opgeslagen gegevens in dezelfde volgorde als waarin zij werden toegevoerd, over de volgende twee klokpulsen. Door deze constructie wordt ervoor gezorgd, dat de gegevens uit elke hoeveelheid niet binnendringen in de gegevens van voorafgaande of volgende hoe-5 veelheden.. Ter illustratie wordt aangenomen, dat dezelfde tien gegevens met dezelfde waarden, gebruikt bij het voorbeeld volgens figuur 1-3, een eerste hoeveelheid met vier gegevens (8-0-1-9) en een tweede hoeveelheid van zes gegevens (7-5-3-6-4-8) vormen. De hoeveelheden worden evenwel gescheiden door een extra afstandsgegeven of een bepaalde sleutel 10 met een bepaalde waarde, gesymboliseerd door "x" in figuur 4. Bij dit voorbeeld wordt aangenomen, dat de sorteermodulen 111-1 tot 111-10 initieel gegevens met waarden "P" uit een of meer voorafgaande hoeveelheden bevatten en dat het meest recente ingangssignaal voor de moduul 111-1 een afstandsgegeven is, dat de voorafgaande hoeveelheid gegevens 15 scheidt van de hoeveelheid, welke op het punt staat te worden verwerkt, welke hoeveelheid de waarden 8-0-1-9 heeft en welke in de register-plaatsen 101-1 tot 101-4 zijn opgeslagen.
; Na het optreden van de eerste klokpuls (t=l) is het voor afgaande gegeven, dat in een van de opzamelplaatsen (onderste helft) 20 van de sorteermoduul 111-1 is opgeslagen, naar de volgende moduul 111-2 verschoven en vervangen door het initiële gegeven met de waarde (8), opgeslagen op de opzamelplaats 101-1. Dit geschiedt omdat het door het "x" symbool voorgestelde afstandsgegeven het laatste gegeven was, dat de moduul 111-1 binnentrad. Op het moment, dat het afstandsgegeven werd 25 gedetecteerd, hield de moduul 111-1 dit gegeven vast en liet het andere opgeslagen gegeven door naar de volgende moduul. Om dezelfde reden be- ' woog na de tweede klokpuls (t=2) het afstandsgegeven zich naar de moduul 111-2, aangezien het gegeven dan niet het meest recente invoergegeven van de moduul 111-1 is. Na vier klokpulsen, als aangegeven in figuur 4, 30 zijn alle gegevens in de eerste hoeveelheid aanwezig in de sorteermodulen 111-1 en 111-2. Wanneer de volgende klokpuls optreedt, treedt het afstandsgegeven, dat de eerste hoeveelheid volgt en deze van de volgende hoeveelheid scheidt, de moduul 111-1 binnen.
De werking van de sorteermodulen in aanwezigheid van een 35 afstandsgegeven, wordt verder geïllustreerd door de status van de modulen voor en na de 6de klokpuls te vergelijken. Het blijkt, dat het 8320161 -10- afstandsgegeven in de sorteermodulen 111-3 in dit interval naar de volgende moduul is bewogen, omdat dit gegeven reeds gedurende twee klokpulsen op zijn plaats was. Anderzijds is het afstandsgegeven in de moduul 111-1 niet bewogen, aangezien dit gegeven slechts bij de voor-5 afgèande periode was ingevoerd en derhalve het meest recent ingevoerde gegeven was. Resumerende werken de sorteermodulen volgens de uitvinding door de waarden van twee opgeslagen gegevens bij elke klokperiode te vergelijken en door een gegeven aan de volgende moduul toe te voeren, afhankelijk.van de relatie tussen de waarden van de gegevens. Normaliter 10 worden de waarden van de gegevens hetzij numeriek, alfabetisch of overeenkomstig een andere gewenste relatie met elkaar vergeleken. Wanneer evenwel een afstandsgegeven met een bepaalde waarde wordt gedetecteerd, wordt dit gegeven op een speciale wijze behandeld en werkt de moduul anders. De keuze van een gegeven voor overdracht naar de volgende mo-15 duul is nu gebaseerd op de volgorde waarin de gegevens aan deze moduul werden toegevoerd. Het oudste gegeven wordt aan de volgende modulen toegevoerd, onafhankelijk van de waarde van het gegeven, terwijl het meest recent toegevoerde gegeven in elke moduul gedurende een klok-interval wordt vastgehouden.
20 Voortgaande met een omschrijving van figuur 5, zijn nadat de 12de klokpuls aanwezig is geweest, de zes gegevens in de tweede hoeveelheid en het afstandsgegeven, dat deze hoeveelheid van weer een andere hoeveelheid scheidt, volledig aan de sorteermoduulreeks toegevoerd. Na deze hoeveelheid kunnen nog meer gegevens worden ingevoerd, 25 doch voor dit doel van het voorbeeld omvatten die gegevens gegevens, welke eenvoudig zijn aangeduid met het symbool "A".
De werking van de sorteerinrichting zet zich gedurende een aantal verdere perioden voort, totdat na de 20de periode (zie figuur 5) het initiële gegeven in de eerste hoeveelheid gereed is om uit de 30 moduul 110-10 te worden afgevoerd. Uitgangsgegevens kunnen worden toegevoerd aan een opzamelregister of een andere verbruiksinrichting.
Ter illustratie evenwel worden de gegevens in figuur 6 toegevoerd aan en verschoven in een register 121. Het blijkt, dat na 30 klokpulsen de beide hoeveelheden gegevens op de juiste wijze zijn gesorteerd, zonder 35 dat tijd verloren is gegaan, welke nodig was voor het initialiseren of reinigen van de sorteermodulen van speciale gegevens met de kleine (s) 83 2 0 1 6 1 -11- of grote (L) sleutels, nodig bij de bekende stelsels, waarvoor de in figuur 1-3 afgebeelde voorbeelden typerend zijn.
Een blokschema van een uitvoeringsvorm van een registratie-sorteermoduul volgens de uitvinding vindt men in figuur 7. In wezen 5 omvat elke registratiesorteermoduul een sorteerketen 700 voor het sorteren van sleutels, welke met elke registratie samenwerken op de zojuist beschreven wijze, en een nevenketen 750 voor het opnieuw rangschikken van de informatie van elke registratie in dezelfde volgorde als de overeenkomstige sleutel. De sorteerketen 700 ontvangt de bij 10 elke registratie behorende sleutels en voert een sortering op de bovenbeschreven wijze uit en wel door de sleutels te vergelijken en een sleutel voor het uitgangssignaal te kiezen, gebaseerd op de relatieve waarde of volgorde van invoer van de sleutels. De nevenketen 750 ontvangt de informatie voor de registratie met de overeenkomstige sleutel en kiest 15 de informatie van een registratie als uitgangssignaal wanneer de overeenkomstige sleutel in de sorteerketen wordt gekozen.
Voor het uitvoeren van de sleutelsortering, wordt een bij een registratie behorende sleutel toegevoerd aan de lijn 740 en aan het ene of het andere van twee sleutelregisters 701 of 702 bij het 20 volgende optreden van een klokpuls <j>, die door een niet afgebeelde klokbron wordt opgewekt. Het bepaalde register van de registers, dat de sleutel ontvangt, hangt af van het feit, welke van de sleutels, opgeslagen in deze registers, werd gekozen voor toevoer aan de sorteerketen van de volgende moduul in de reeks. Deze keuze geschiedt normaliter door 25 de waarden van de in registers 701 en 702 opgeslagen sleutels te vergelijken, welke resp. zijn aangeduid met "A" en "B" terwille van een meer gemakkelijke verdere toelichting. In het geval evenwel, waarbij een van de opgeslagen sleutels een bepaalde waarde heeft, welke wordt onderkend als een afstandsgegeven, worden de waarden buiten beschouwing ge-30 laten en worden de sleutels in dezelfde tijdvolgorde, waarin zij aan de registers 701 en 702 werden toegevoerd, afgevoerd. De keuze, gebaseerd op de sleutelwaarde, vindt plaats in een vergelijkingsinrichting 703, welke ingangssignalen (bijv. A en B) uit de beide registers 701, 702 ontvangt en op de lijn 707 een hoog uitgangssignaal levert indien A^ B 35 wanneer het bijv. gewenst is de gegevens in volgorde van de laagste naar ....... de hoogste numerieke orde te sorteren. Indien de tegengestelde numerieke 8320161 -12- volgorde gewenst is, wordt de vergelijkingsinrichting 703 op een eenvoudige wijze gemodifieerd voor het verschaffen van een hoog uitgangssignaal wanneer A > B.
Wanneer de in het register 701 opgeslagen sleutel (A) 5 kleiner is dan de sleutel B in het register 702, wordt het hoge uitgangssignaal van de vergelijkingsinrichting 703 via de EN-poort 711 en de OF-poort 712 aan de inschakelingang 721 van het register 701 toegevoerd, waardoor de op dat moment opgeslagen sleutel (A) aan de lijn 731 wordt toegevoerd, terwijl de nieuwe sleutel (op de ingangslijn 740) 10 aan het register wordt toegevoerd. Een omkering van het hoge uitgangssignaal van de OF-poort 712 onder gebruik van de omkeerinrichting 716 zorgt ervoor, dat de inschakelingang 722 van het register 702 niet wordt geactiveerd wanneer A < B. De sleutel A wordt aan de uitgang 710 van de sorteerketen 700 toegevoerd via een multiplex schakelaar 705, 15 welke uit de OF-poort 712 ook een positiebesturingsingangssignaal ontvangt. Zoals aangegeven in figuur 7, voert de schakelaar 705 de waarde A aan de uitgang 710 toe,wanneer de uitgang van de OF-poort 712 hoog is. Wanneer daarentegen 'de sleutel in het register 701 groter is dan de sleutel in het register 702 (A>B) dan zijn de uitgangssignalen van de 20 EN-poort 711 en de OF-poort 712 laag, waardoor de invertor 716 het mogelijk maakt, dat het register 702 (via de lijn 722) de daarin opgeslagen sleutel aan de schakelaar 705 toevoert en de volgende sleutel uit de lijn 740 accepteert. De sleutel B wordt via de opnieuw ingestelde schakelaar 705 aan de uitgang 710 toegevoerd.
25 De sorteerketen volgens figuur 7 omvat ook een afstands- gegevendetector 704, welke ingangssignalen uit de beide registers 701 en 702 ontvangt en de aanwezigheid van een bepaalde afstandsgegevenwaarde in een opzamelplaats controleert. Bij detectie wordt het uitgangssignaal van de detector hoog, waardoor de EN-poort 711 via de invertor 714 30 buiten werking wordt gesteld en de EN-poort 713 in werking wordt gesteld, teneinde een uit de geïnverteerde (Q)uitgang van een flip-flop 706 afkomstig signaal aan de OF-poort. 712 toe te voeren. De flip-flop 706 dient als een geheugen van een bit,doordat deze flip-flop het uitgangssignaal van de OF-poort 712 op de informatie (D) ingang daarvan ontvangt 35 en deze waarde opslaat,totdat de volgende klokpuls <f> aan een klokingang wordt toegevoerd. Indien bijv. het afstandsgegeven de meest recente 8320161 -13- invoer voor het register 701 was, veroorzaakt het hoge uitgangssignaal van de OF-poort 712, welke deze invoer hééft toegestaan, dat de Q-uitgang van de flip-flop 706 laag is en dit zorgt er op zijn beurt voor, dat de uitgangssignalen van de EN-poort 713 en de OF-poort 712 5 laag zijn, wanneer de volgende klokpuls optreedt. Dientengevolge komt het volgende gegeven, dat. aan een multiplexinrichting 705 wordt toegevoerd, dan uit het register 702, onafhankelijk van een waardevergelijking. Aangezien het afstandsgegeven in het register 701 blijft, blijft het uitgangssignaal van de detector 704 hoog, waardoor de EN-poort 713 10 bij het begin van de volgende periode ingeschakeld blijft. Het lage uitgangssignaal van de OF-poort 712 echter veroorzaakt nu, dat de Q-uitgang van de flip-flop hoog is bij de volgende klokpuls φ. De resulterende hoge uitgangssignalen van de EN-poort 713 en de OD-poort 712 veroorzaken, dat de afstandssleutel uit het register 701 wordt gevoerd, 15 waardoor de gewenste werking met twee perioden wordt voltooid. Resumerende kiest bij het normale bedrijf de sorteerketen 700 een sleutel voor toevoer aan de volgende moduul, als funktie van de relatieve waarden van de sleutels. Na detectie van een afstandsgegeven echter, worden de sleutels in de sorteermoduul uitgelezen in dezelfde volgorde als die, 20 waarin zij werden toegevoerd.
Elk van de registratiesorteermodulen 111-1 t/m 111-10 van de figuren 4-6 omvat ook nevenketens, zoals de keten 750 van figuur 7, welke de informatie van elke registratie in dezelfde volgorde rangschikken als de overeenkomstige sleutel, die bij die registratie be-25 hoort. Voor dit doel omvat de keten 750 informatieregisters 751 en 752, die elk in staat zijn de informatie van een registratie, ontvangen op de' informatieingang 760, op te slaan. Het uitgangssignaal van de OF-poort 712, dat het register 701 direkt in werking stelt, en het register 702 via de omkeerinrichting 716 in werking stelt, voert ook inschakelingangs-30 signalen direkt aan het register 751 via de omkeerinrichting 756 aan het register 752 toe. Door deze registers met de registers in de sorteerketen 700 te koppelen, kan informatie bij het optreden van een klokpuls φ aan het juiste register worden toegevoerd. De nevenketen 750 omvat ook een multiplex schakelaar 755, welke identiek is aan.de multiplex inrich-35 ting 705, welke eveneens op het uitgangssignaal van de OF-poort 712 reageert, zodat uitgangsinformatie van het gekozen register 751 of 752 0320161 -14- aan de informatieuitgang 770 wordt toegevoerd.
De vakman kan verschillende wijzigingen in het sorteer-moduulstelsel volgens de uitvinding aanbrengen, afhankelijk van de aard van de gegevens, welke worden gesorteerd. Normaliter bestaan de gegevens 5 uit woorden met een aantal bits en een tekenbit, die parallel aan de registers 701 en 702 worden toegevoerd, en de vergelijkingsinrichting 702 dient om de waarden,rekening houdende met de tekenbits, numeriek met elkaar te vergelijken. Het kan evenwel gewenst zijn in sommige gevallen alleen op absolute waarde te sorteren. De gegevens kunnen ook 10 bestaan uit woorden, die alfabetisch worden gesorteerd, of alfanumerieke symbolen, die volgens een andere voorafbepaalde relatie worden gesorteerd. Het afstandsgegeven kan een bepaald woord (gewoonlijk uit een aantal bits bestaand woord) zijn, dat voor het betreffende doel is gereserveerd en de detector 704 kan een logische keten zijn,, welke bestemd 15 is om elk ingangssignaal met een vooraf opgeslagen versie van het afstandsgegeven te vergelijken. Wanneer registraties worden gesorteerd, kunnen de registers 751 en 752 groter zijn dan de registers 701 en 702, afhankelijk van de hoeveelheid informatie, welke zij bevatten.
Een andere uitvoeringsvorm van een registratiesorteermoduul 20 volgesn de uitvinding is weergegeven in figuur 8. Evenals de zojuist beschreven inrichting zijn een sorteerketen 800 en een nevenketen 850 aanwezig voor het resp. sorteren van de sleutels en de overeenkomstige informatie in hoeveelheden registraties. De sorteerketen 800 omvat eerste en tweede sleutelopzamelregisters 801 en 802, doch elke sleutel, 25 die aan de ingangslijn 840 wordt toegevoerd, wordt steeds bij elke klok-puls φ aan het eerste register 801 toegevoerd. De sleutels, die in de registers 801 en 802 zijn opgeslagen, worden met elkaar vergeleken in een vergelijkingsinrichting 803, welke een.hoog uitgangssignaal levert, indien de waarde (A) genoemd in het register 801 de waarde (B genoemd) 30 in het register 802 overschrijdt, aannemende, dat een numerieke sortering van de laagste tot de hoogste orde gewenst is. Voor een sortering van de hoogste naar de laagste orde wordt het uitgangssignaal van de vergelij-kingsinrichting 803 hoog, wanneer A < B.
Indien het uitgangssignaal van de vergelijkingsinrichting 35 803 hoog is, stelt het resulterende hoge uitgangssignaal van de OF-poort 806 een multiplex inrichting 805 zodanig in, dat de in het register 802 opgeslagen sleutel aan de uitgangslijn 810 wordt toegevoerd. De EN-poort 8320161 -15- 807 wordt in werking gesteld, om een klokpuls <f> naar het register 802 door te laten, zodat de opgeslagen sleutel daarvan in wezen wordt afge-voerd en wordt vervangen door de sleutel, die in het register 801 is opgeslagen· Indien daarentegen het uitgangssignaal van de vergelijkings-5 inrichting 803 laag is, is het uitgangssignaal van de OF-poort 806 ook laag, mits geen afstandsgegeven wordt gedetecteerd. In dit geval wordt de schakelaar 805 opnieuw ingesteld om de in het register 801 opgeslagen sleutel CA) direkt aan een multiplexinrichting 805 toe te voeren. De EN-poort 807 wordt op dit moment buiten werking gesteld, 10 zodat de sleutel in het register 802 niet wordt gestoord. Resumerende vergelijkt de sorteerketen 800 de waarde van elke in het register 801 opgeslagen sleutel met de waarde van het eerdere in het register 802 opgeslagen sleutelingangssignaal. Indien aan eén bepaalde vooraf gedefinieerde relatie wordt voldaan (bijv. het recente ingangssignaal is 15 kleiner dan het eerdere ingangssignaal), wordt de nieuw ontvangen sleutel aan de uitgang 810 van de sorteerketen toegevoerd. Indien niet aan de relatie wordt voldaan (bijv. het recente ingangssignaal is groter), dan wordt de eerder ontvangen sleutel in het register 802 toegevoerd aan de uitgang 810 en door het recente ingangssignaal vervangen. Voor 20 het detecteren van een bepaalde sleutel voor een afstandsgegeven, omvat de keten volgens figuur 8 afstandsdêtectoren 804a en 804b, die de inhoud van de resp. registers 801 en 802 controleren. Indien een afstandsgegeven wordt gedetecteerd, wordt het hoge uitgangssignaal van de detector 804a en 804b via de OF-poort 806 gevoerd, om ervoor te zorgen, dat 25 de multiplex inrichting 805 in de in figuur 8 aangegeven positie blijft. Onder deze omstandigheden wordt de in het register 802 voor de langere * tijd opgeslagen sleutel afgevoerd en wordt de bij het afstandsgegeven behorende sleutel naar het register 802 overgedragen en bij het volgende optreden van een klokpuls φ afgeleverd. De orde van de sleutel blijft 30 derhalve, zoals gewenst, behouden, wanneer een afstandssleutel wordt gedetecteerd .
Evenals de inrichting volgens figuur 7 omvat de inrichting volgens figuur 8 een nevenketen 850, welke informatie of registraties voor elk gegeven sorteert, overeenkomstig de bij dat geheugen behorende 35 sleutel. De keten 850 omvat eerste en tweede informatieregisters 851 en 852, waarbij het register 851 een ingangswoord uit de lijn 860 ont- S3 10 1β 1 * -16- vangt en de inhoud daarvan via de multiplex inrichting 855 aan de uit-gangslijn 870 toevoert, wanneer A ^ B en de schakelaar 855 zich in de neerwaartse stand bevindt· Wanneer A> B of wanneer een afstandssleutel wordt gedetecteerd, is het uitgangssignaal van de OF-poort 806 hoog, 5 bevindt de multiplex inrichting 855 zich in de op-positie, als aangegeven in figuur 8, en wordt de in het register 852 vastgehouden informatie afgevoerd en vervangen door de informatie in het register 851 wanneer een klokwerking via de EN-poort 857 plaatsvindt.
Een gedeelte van de in figuur 8 afgebeelde sorteermoduul-10 keten kan worden gewijzigd, als aangegeven in figuur 9, door de af-standsdetector 804b te vervangen door een vertragingsketen 901, welke bestemd is om het uitgangssignaal van de detector 804a te ontvangen en bij de volgende klokpuls φ een hoog uitgangssignaal te leveren. Bij deze vereenvoudiging is rekening gehouden met het feit, dat wanneer een 15 afstandssleutel in het register 801 wordt gedetecteerd (door de detector 804a) deze in het register 802 steeds een klokperiode later zal worden gedetecteerd (door de detector 804b).
De zojuist beschreven sorteerinrichting en sorteermethode vindt velerlei toepassing, zoals bij een tijdgleufverwisselinrichting, 20 welke de volgorde van een reeks multiplexinformatiesignalen met tijd- verdeling opnieuw kan rangschikken. In figuur 10 is een traditionele tijdgleufverwisselinrichting (uitwisselinrichting) afgebeeld. Informatie in een reeks tijdgleuven 1000 wordt sequentieel toegevoerd aan een dubbel gebufferd geheugen, voorzien van de buffers 1001 en 1002. Wanneer een van 25 de buffers wordt gevoed, wordt informatie uit de andere verwerkt. Op een soortgelijke wijze zijn de buffers 1005 en 1006 georganiseerd als een dubbele buffer, zodat wanneer de buffer 1006 wordt uitgelezen, de buffer 1005 wordt geregistreerd en omgekeerd. Er is een geheugen 1004 aanwezig om een processoreenheid 1003 ten aanzien van de gewenste ver- « 30 wisselingen te instrueren; zo kan bijv. informatie, welke oorspronkelijk in de tijdgleuf E aanwezig is, bestemd worden voor de tijdgleuf B enz.
De processoreenheid 1003 neemt dan de informatie in de tijdgleuf E uit de buffer 1001 of 1002 vast en brengt deze in de buffer 1005 of 1006 op een plaats, overeenkomende met de gleuf B. Nadat de informatie uit alle 35 tijdgleuven, opgeslagen in de buffer 1001 of 1002, na de buffer 1005 of 1006 is overgedragen, is de gewenste tijdgleufreeks 1007 verkregen. Deze 8320161 -18- wanneer zij vanuit de sorteerketen in een moduul naar de sorteerketen in de volgende moduul worden overgedragen, terwijl de informatie in de overeenkomstige volgorde door de nevenketens aan een herrangschik-king wordt onderworpen. De waarde van N wordt zodanig gekozen, dat 5 deze gelijk is aan de langste te verwachten hoeveelheid registraties (in dit geval, vijf gleuven). Het uitgangssignaal van de laatste sorteerketen in de reeks van modulen is de oorspronkelijke informatie, : die in de gewenste volgorde is gesorteerd. Deze informatie kan worden : toegevoerd aan een register 1110, of, indien gewenst, aan een verdere 10 behandelingsschakeling, waarbij de sleutels buiten beschouwing worden gelaten.
Tijdgleufverwisseling, onder gebruik van een sortering, zoals deze zojuist is beschreven, heeft een latentie van 3N, hetgeen betekent, dat informatie van maximaal drie voorafgaande rasters moet 15 worden verwerkt, voordat informatie voor het huidige raster wordt afgevoerd, en een nieuwe tijdgleuf bij elke periode kan worden verwerkt.
Dit leidt tot een reductie in latentie met een faktor 3 en een toename . van de doorvoersnelheid mat een faktor 3 ten opzichte van de in figuur 10 afgebeelde traditionele tijdgleufverwisselinrichting.
20 Een reeks registratiesorteermodulen van het in figuur 7 of 8 afgebeelde type kan ook worden gebruikt voor het opnieuw rangschik-: ken van tijdgleuven in elk raster, van een multiplexsignaal met tijd-verdeling om gebruik te kunnen maken van lege tijdgleuven.
De rasters 1201 en 1211 bevatten tijdgleuven van een eerste 25 en een tweede multiplex signaal met tijdverdeling. De sleutels 1 t/m M worden toegewezen aan de M gleuven in elk raster, een én ander zodanig, ' dat de rasters na herrangschikking kunnen worden versmolten. Meer in het bijzonder worden de sleutels voor gevulde tijdgleuven in een signaal op een bepaalde wijze gekozen uit de sleutels, welke zijn toegewezen 30 aan lege tijdgleuven in het andere signaal. De bij- de resterende tijdgleuven in elk raster behorende sleutels worden, als gewenst, toegewezen uit de resterende ongebruikte sleutels van de oorspronkelijke M sleutels. De sleutels, welke aan elk raster worden toegewezen, worden dan afzonderlijk gesorteerd en de bijbehorende tijdgleufinformatie wordt op een over-35 eenkomstige wijze aan een herrangschikking onderworpen. Nieuwe rasters, . die op deze wijze worden gevormd, kunnen worden versmolten voor het ver- ({>' o ^ _ 5_ 'Zf j ...... _ _........... . . ...... ....
Λ ν -19- krijgen van een uiteindelijke reeks met minder lege tijdgleuven. Deze methode kan worden toegepast zolang als het totale aantal gevulde gleuven in beide rasters kleiner is dan het aantal gleuven in elk raster. Bij het in figuur 12 aangegeven voorbeeld, zijn aan de lege gleuven 1, 3 en 5 4 in het raster 1201 de sleutels 1, 3 en 5 toegewezen, terwijl aan de gevulde gleuven 1, 2 en 3 van het raster 1211 sleutels zijn toegewezen, die op een bepaalde wijze worden gekozen uit hetzelfde stel (1, 3 en 5), dat is toegewezen aan de lege gleuven in het raster 1201. De resterende sleutels worden toegewezen aan resterende gleuven in de rasters 10 1201 en 1211 in de bij wijze van voorbeeld gekozen reeksen. 1202, 1212.
De op deze wijze gevormde registraties (sleutels plus tijdgleufinformatie) worden afzonderlijk gerangschikt door registratie-sorteermodulen 1203 en 1213, welke nieuwe rasters 1204 resp. 1214 verschaffen. Deze rasters kunnen via de multiplexinrichting 1220 of een 15 andere soortgelijke conibinatieinrichting worden versmolten voor het verkrijgen van een gecombineerd uitgangsraster 1230, dat bij voorkeur geen excessieve lege tijdgleuven omvat.
, Het sorteermoduulstelsel volgens de uitvinding kan op een eenvoudige wijze worden gerealiseerd onder gebruik van VLSI-technologie 20 en de modulariteit van het ontwerp maakt talrijke doeltreffende toepassingen mogelijk.
Ofschoon de sorteermodulen zijn aangegeven als modulen, die klokpulsen uit een enkele klokbron ontvangen, is het mogelijk de modulen ten aanzien van de tempering in serie met· elkaar te verbinden, 25 zodat elke moduul een tempeerpuls uit de voorafgaande moduul ontvangt. Voorts is het duidelijk, dat sorteren en permitteren betrekkelijk sterk' aan elkaar gelijk zijn en dat een sorteerreeks kan worden gebruikt voor het uitvoeren van permutaties, eenvoudig door de waarden van de sleutels opnieuw te merken.
30 8320161

Claims (11)

1. Inrichting voor het opnieuw rangschikken van gegevens in een gewenste volgorde, voorzien van tenminste een sorteermoduul, welke sequentieel toegevoerde gegevens ontvangt, en een vergelijkings-5 schakeling in elke moduul, welke normaliter bestemd is voor het bepalen van een volgorde voor het afleveren van gegevens door de waarden van paren gegevens met elkaar te vergelijken, met het kenmerk, dat de moduul is voorzien van een detectieschakeling (704) voor het detecteren van het feit, of een van de sequentieel toegevoerde gegevens in het paar 10 een bepaald afstandsgegeven is, en een eerste schakeling (711-714, 705), die in.responsie op het detecteren van het bepaalde afstandsgegeven het paar gegevens, inclusief het bepaalde afstandsgegeven, in dezelfde volgorde aflevert als die, waarin het paar gegevens door de moduul is ontvangen.
2. Inrichting volgens conclusie 1, met het kenmerk, dat de gegevens alfanumerieke symbolen zijn, die overeenkomstig een voorafbepaalde relatie moeten worden gesorteerd.
3. Inrichting volgens conclusie 1, met het kenmerk, dat de gegevens uit woorden met een aantal bits bestaan, die overeenkomstig 20 hun numerieke waarden moeten worden gesorteerd.
4. Inrichting volgens conclusie 1,'met het kenmerk, dat de gegevens alfabetische symbolen zijn, die alfabetisch moeten worden gesorteerd.
5. Inrichting volgens conclusie 1, met hetkenmerk, dat de 25 gegevens sleutelwaarden met bijbehorende registraties zijn.
6. Inrichting volgens conclusie 5, gekenmerkt door een nevenketen (750) om de registraties in dezelfde volgorde als de bijbehorende sleutel aan een herrangschikking te onderwerpen.
7. Inrichting volgens conclusie 1, gekenmerkt door een reeks ♦ 30 van N in serie verbonden modulen, welke dienen voor het sorteren van hoeveelheden van maximaal N gegevens, waarbij elk van de hoeveelheden door tenminste een van de bepaalde afstandsgegevens, van een andere hoeveelheid is gescheiden.
8. Inrichting volgens conclusie 7, met het kenmerk, dat de 35 gegevens sleutelwaarden met bijbehorende registraties zijn.
9. Inrichting volgens conclusie 8, gekenmerkt door een reeks ......BZ 20 181 -21- * van N in serie verbonden nevenketens (750) om de registraties in dezelfde volgorde als de bijbehorende sleutel aan een herrangschikking te onderwerpen.
10. Inrichting volgens conclusie 9, met het kenmerk, dat 5 de registraties bestaan uit informatie in tijdgleuven van een multiplex-signaal met tijdverdeling en de inrichting verder is voorzien van een toewijsschakeling (1104) om de sleutels zodanig aan de registraties toe te wijzen, dat de informatie in de tijdgleuven na sortering in een gewenste volgorde (1230) is verwisseld.
11. Inrichting volgens conclusie 10, met het kenmerk, dat de tijdgleuven in rasters optreden en de eerste sleutel in elk raster van het multiplex signaal met tijdsverdeling het bepaalde afstandsgegeven is. ·' N. ♦ 8320161
NL8320161A 1982-05-06 1983-04-14 Sorteerinrichting. NL192354C (nl)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US37566982 1982-05-06
US06/375,669 US4499555A (en) 1982-05-06 1982-05-06 Sorting technique
US8300542 1983-04-14
PCT/US1983/000542 WO1983004116A1 (en) 1982-05-06 1983-04-14 Sorting technique

Publications (3)

Publication Number Publication Date
NL8320161A true NL8320161A (nl) 1984-04-02
NL192354B NL192354B (nl) 1997-02-03
NL192354C NL192354C (nl) 1997-06-04

Family

ID=23481827

Family Applications (1)

Application Number Title Priority Date Filing Date
NL8320161A NL192354C (nl) 1982-05-06 1983-04-14 Sorteerinrichting.

Country Status (9)

Country Link
US (1) US4499555A (nl)
EP (1) EP0109426B1 (nl)
CA (1) CA1192314A (nl)
DE (1) DE3344141C2 (nl)
GB (1) GB2129985B (nl)
IT (1) IT1170137B (nl)
NL (1) NL192354C (nl)
SE (1) SE445683B (nl)
WO (1) WO1983004116A1 (nl)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL8600028A (nl) * 1986-01-09 1987-08-03 Philips Nv Werkwijze en inrichting voor het sorteren van objekten die voorzien zijn van een parameter, volgens de waarde van deze parameter.
US5060146A (en) * 1988-04-08 1991-10-22 International Business Machines Corporation Multilingual indexing system for alphabetical lysorting by comparing character weights and ascii codes
JPH02178730A (ja) * 1988-12-28 1990-07-11 Toshiba Corp 分割法を用いた内部ソート方式
JPH02289005A (ja) * 1989-03-17 1990-11-29 Matsushita Electric Ind Co Ltd 計数情報の整列処理方式
US5142687A (en) * 1989-06-30 1992-08-25 Digital Equipment Corporation Sort accelerator with rebound sorter repeatedly merging sorted strings
US5185886A (en) * 1989-06-30 1993-02-09 Digital Equipment Corporation Multiple record group rebound sorter
JPH0776906B2 (ja) * 1989-06-30 1995-08-16 ディジタル イクイプメント コーポレーション 分類加速装置のための速度及びメモリー制御
US5111465A (en) * 1989-06-30 1992-05-05 Digital Equipment Corporation Data integrity features for a sort accelerator
FR2649226B1 (fr) * 1989-07-03 1995-07-13 Sgs Thomson Microelectronics Circuit de brassage de donnees
US5070456A (en) * 1989-12-27 1991-12-03 International Business Machines Corporation Method for facilitating the sorting of national language keys in a data processing system
US5072386A (en) * 1989-12-27 1991-12-10 International Business Machines Corporation Method for culturally predictable keysort within a national language support (nls) data processing system
US5077669A (en) * 1989-12-27 1991-12-31 International Business Machines Corporation Method for quasi-key search within a national language support (nls) data processing system
US5274805A (en) * 1990-01-19 1993-12-28 Amalgamated Software Of North America, Inc. Method of sorting and compressing data
US5121493A (en) * 1990-01-19 1992-06-09 Amalgamated Software Of North America, Inc. Data sorting method
JP3152466B2 (ja) * 1991-04-04 2001-04-03 三菱電機株式会社 ソーティング装置およびソーティング方法
JPH06242925A (ja) * 1993-02-15 1994-09-02 Mitsubishi Electric Corp ソート処理装置
US6088701A (en) * 1997-11-14 2000-07-11 3Dfx Interactive, Incorporated Command data transport to a graphics processing device from a CPU performing write reordering operations
US6775667B1 (en) * 2000-05-01 2004-08-10 Broadcom Corporation Method and system for providing a hardware sort for a large number of items
US20020111936A1 (en) * 2001-01-19 2002-08-15 Ec Outlook, Inc. System and method for analyzing computer intelligible electronic data
FR2830644A1 (fr) * 2001-10-09 2003-04-11 Canon Kk Procede d'ordonnancement et d'execution de fonctions dans un reseau de communication
US7370068B1 (en) * 2002-09-04 2008-05-06 Teradata Us, Inc. Sorting of records with duplicate removal in a database system
GB2424722A (en) * 2005-03-21 2006-10-04 Think Software Pty Ltd Method and apparatus for generating relevance sensitive collation keys
TWI511038B (zh) 2013-06-19 2015-12-01 Univ Nat Chiao Tung 可重組之排序裝置與排序方法
US10191744B2 (en) * 2016-07-01 2019-01-29 Intel Corporation Apparatuses, methods, and systems for element sorting of vectors
US20200004664A1 (en) * 2018-06-28 2020-01-02 Lendingclub Corporation Automatic mock enablement in a multi-module software system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4090249A (en) * 1976-11-26 1978-05-16 International Business Machines Corporation Apparatus for sorting records in overlap relation with record loading and extraction
US4110837A (en) * 1976-12-30 1978-08-29 International Business Machines Corporation Apparatus for the sorting of records overlapped with loading and unloading of records into a storage apparatus
US4131947A (en) * 1976-08-06 1978-12-26 Armstrong Philip N Random access digital sorter
US4209845A (en) * 1977-01-25 1980-06-24 International Business Machines Corporation File qualifying and sorting system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4131947A (en) * 1976-08-06 1978-12-26 Armstrong Philip N Random access digital sorter
US4090249A (en) * 1976-11-26 1978-05-16 International Business Machines Corporation Apparatus for sorting records in overlap relation with record loading and extraction
US4110837A (en) * 1976-12-30 1978-08-29 International Business Machines Corporation Apparatus for the sorting of records overlapped with loading and unloading of records into a storage apparatus
US4209845A (en) * 1977-01-25 1980-06-24 International Business Machines Corporation File qualifying and sorting system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IEEE INT. CONF. ON COMMUNICATIONS, Seattle, Washington, 11-13 juni 1973, vol. 2, bladzijden 39-24 - 39-27; D. MAIWALD et al.: "A TDM switch based on sorting" *

Also Published As

Publication number Publication date
CA1192314A (en) 1985-08-20
DE3344141C2 (de) 1994-05-11
EP0109426A4 (en) 1987-04-29
DE3344141T1 (de) 1984-05-30
WO1983004116A1 (en) 1983-11-24
NL192354B (nl) 1997-02-03
NL192354C (nl) 1997-06-04
EP0109426A1 (en) 1984-05-30
SE8400011D0 (sv) 1984-01-02
SE445683B (sv) 1986-07-07
GB2129985B (en) 1985-10-30
GB8333025D0 (en) 1984-01-18
EP0109426B1 (en) 1989-08-16
US4499555A (en) 1985-02-12
IT8320954A0 (it) 1983-05-05
SE8400011L (sv) 1984-01-02
GB2129985A (en) 1984-05-23
IT1170137B (it) 1987-06-03

Similar Documents

Publication Publication Date Title
NL8320161A (nl) Sorteermethode.
US4799152A (en) Pipeline feedback array sorter with multi-string sort array and merge tree array
Boahen Point-to-point connectivity between neuromorphic chips using address events
US3636519A (en) Information processing apparatus
US4003031A (en) Information-arranging device
US4131947A (en) Random access digital sorter
EP0401340B1 (en) Method and apparatus for handling high speed data
US5534796A (en) Self-clocking pipeline register
EP0119319B1 (en) Sort mechanism for stored digital data
US3505653A (en) Sorting array
US4110837A (en) Apparatus for the sorting of records overlapped with loading and unloading of records into a storage apparatus
US3015089A (en) Minimal storage sorter
US3806883A (en) Least recently used location indicator
EP0413951B1 (en) Rank order processing array
US5201029A (en) Digital data processing apparatus using daisy chain control
JPH05252550A (ja) 並列型時間スイッチ
US3336580A (en) Sorting system for multi-bit binary digital records
US3399383A (en) Sorting system for multiple bit binary records
JPS6142031A (ja) ソ−ト処理装置
Savage A systolic data structure chip for connectivity problems
JPH02285832A (ja) 直列データ受信器
CA2145553C (en) Multi-processor system including priority arbitrator for arbitrating request issued from processors
JPS6324325A (ja) デ−タ項目を分類する方法および分類装置
CA1115421A (en) Digital adder
US5291457A (en) Sequentially accessible non-volatile circuit for storing data

Legal Events

Date Code Title Description
V1 Lapsed because of non-payment of the annual fee

Effective date: 20011101