Technische encyclopedie

Winkler Prins (1975)

Gepubliceerd op 23-12-2024

DATATRANSPORT

betekenis & definitie

(Fr.: transport de données; Du.: Datentransport; Eng.: data transport), de uitwisseling van gegevens (data) tussen een computer en de randapparatuur (zie Periferie), omvattend invoer (input) en uitvoer (output) van gegevens in, resp. uit het geheugen van de computer (afkorting: I/O). Een moderne computer kan met een grote verscheidenheid van randapparaten, en met meer dan één tegelijk, communiceren.

De randapparaten kunnen ook zelf datatransporten initiëren, hoewel in beginsel alle datatransporten door de computer worden bestuurd, waartoe in het computergeheugen een I/O-routine aanwezig is. De computer is onafhankelijk van de specifieke eigenschappen van de randapparaten, hetgeen wordt bereikt door: de I/O-apparaten via een standaardverbinding (interface) op de computer aan te sluiten, en logische of fysische verschillen per randapparaat op te vangen in een adapter. Voorts door overdracht die specifiek is voor een I/O-toestel, op een universele manier te doen plaatsvinden, zodat het ontwerp van de computer daardoor niet beïnvloed wordt.De interface maakt een modulaire opbouw van het computersysteem mogelijk, zodat de totale configuratie afgestemd kan worden op de behoefte van de gebruiker, eventueel later uitgebreid en nieuwe ter beschikking gekomen I/O-toestellen opgenomen. De communicatie tussen de computer en een randapparaat omvat besturingsinformatie en de eigenlijke gegevens. Een I/O-procedure bestaat uit: selectie van het randapparaat via zijn nummer of adres; meedelen van de verlangde acties; datatransport en het beëindigen daarvan.

Een I/O-transport wordt in eerste instantie door de computer geïnitieerd; in een later stadium kan het randapparaat het initiatief overnemen. Dit is van belang in verband met de grote snelheidsverschillen: acties van de computer worden gemeten in μs, die van randapparatuur in ms. Na transport van een gegeven wordt de verbinding verbroken tot het randapparaat een volgend gegeven gereed heeft of kan verwerken. Het meldt zich met zijn nummer en wacht als niet onmiddellijk op zijn aanvraag gereageerd kan worden. Hierdoor kan de computer met verschillende langzame randapparaten tegelijk communiceren. Voor zeer snelle randapparaten blijft de verbinding gehandhaafd. De computer moet ook administratief werk verrichten zoals het bijhouden van de geheugenadressen en het aantal getransporteerde gegevens. De I/O-functies kunnen door de centrale verwerkingseenheid (CVE) verricht worden (hetgeen tegenwoordig nog slechts bij kleine computertypen voorkomt), of door een zelfstandige I/O-unit (zie Kanaal). Daarmee kunnen I/O- en programmaverwerking gelijktijdig plaatsvinden, waardoor de doorvoercapaciteit (throughput) van de computer vergroot wordt. Cycle stealing houdt het stilzetten van de CVE in ten behoeve van het kanaal, als beide toegang tot het geheugen wensen. Nadat het kanaal het vereiste aantal geheugencontacten heeft gemaakt, krijgt de CVE de beurt. Het kanaal beschikt over een eigen stel opdrachten, zoals in- en uitvoer van een gegeven, het opvragen van toestandsinformatie en het geven van commando’s aan een randapparaat, waarmee een kanaalprogramma kan worden samengesteld. Het kanaal behoeft de inhoud van de informatie niet te kennen, alleen de aard en de richting van het transport. Met specifieke commando's kan een randapparaat in een bepaalde modus worden gebracht zoals bijv. een andere schrijfdichtheid op magneetbandgeheugens.

Toestandsinformatie kan bijv. zijn: het ontbreken van papier op een regeldrukker, het bereiken van het einde van een magneetband enz. Wanneer in het lopende programma in- of uitvoer nodig is, initieert de CVE het kanaal door middel van een SIO (start-input/output)-instructie, waarbij het beginadres van het bijbehorende kanaalprogramma wordt opgegeven, het nummer van het desbetreffende randapparaat en zo nodig het kanaalnummer. Na de initiatie gaat de CVE door met zijn programma, terwijl het kanaal zelfstandig het datatransport afhandelt. Daar het einde daarvan moeilijk te voorspellen is, wordt dit via een programmaonderbreking aan de CVE meegedeeld. Deze gaat dan na of het kanaalprogramma juist is verlopen. In geval van een fout wordt daarvan eventueel op de consoleschrijfmachine melding gemaakt aan de operateur.

Een kanaal kan zijn aangepast aan de snelheid van een randapparaat. Men onderscheidt het simplexkanaal voor aansluiting van één snel randapparaat, het selectorkanaal, waarop verscheidene randapparaten kunnen worden aangesloten, en het multiplexkanaal (voor aansluiting van verscheidene randapparaten waarmee communicatie tegelijk kan plaatsvinden. Kan een blok van verscheidene gegevens worden verzonden, dan spreekt men van een blokmultiplexkanaal of blok-multiplexer. De informatie wordt vrijwel altijd per byte verzonden; de transmissiesnelheid wordt dan ook uitgedrukt in kilobytes per seconde. Over de informatieaders worden zowel gegevens als bestuursinformatie verzonden; begeleidende signalen op aparte aders geven aan wat de aard van de informatie is.

Handshaking is een informatie-uitwisselingsmethode die twee extra signalen gebruikt: één van zender naar ontvanger om aan te geven dat over te nemen informatie op de aders aanwezig is, en één van ontvanger naar zender om aan te geven dat zij overgenomen is. Langs deze weg kunnen looptijdverschillen worden opgevangen, kan aan de ontvanger voldoende tijd worden gegeven om informatie over te nemen en kan voorkomen worden dat de zender te snel een nieuw gegeven zendt. Randapparaten en computer werken asynchroon: zij hebben ieder hun eigen tijdsturing. Het overbruggen van tijdverschillen tijdens informatieoverdracht kan het eenvoudigst met bufferregisters geschieden.

Meestal verbindt men die randapparaten met de computer, welke zich in de naaste omgeving daarvan bevinden; voor randapparatuur op grotere afstand wordt het telefoonnet van de PTT benut. Hiervoor zijn aan de zend- en aan de ontvangzijde modems nodig (zie Datatransmissie).

Met de computer verbonden randapparaten, die dus onder besturing van de CVE staan, heten online; in het tegengestelde geval spreekt men van offline, bijv. waar het ponsmachines betreft en soms ook plotters.

< >