NO884535L - METHOD FOR AA CONNECTING COMPUTERS. - Google Patents
METHOD FOR AA CONNECTING COMPUTERS.Info
- Publication number
- NO884535L NO884535L NO88884535A NO884535A NO884535L NO 884535 L NO884535 L NO 884535L NO 88884535 A NO88884535 A NO 88884535A NO 884535 A NO884535 A NO 884535A NO 884535 L NO884535 L NO 884535L
- Authority
- NO
- Norway
- Prior art keywords
- data
- computer
- computers
- sent
- neighboring
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 7
- 230000001360 synchronised effect Effects 0.000 claims description 2
- 230000000717 retained effect Effects 0.000 claims 1
- 230000003111 delayed effect Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17337—Direct connection machines, e.g. completely connected computers, point to point communication networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/422—Synchronisation for ring networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
Description
Mange oppgaver som utføres av datamaskiner, utføres mest effektivt ved å kople sammen flere datamaskiner, slik at disse kan utføre hver sin deloppgave. Many tasks that are performed by computers are performed most efficiently by linking several computers together, so that they can each perform a subtask.
Mange kjente datasystemer baserer seg på å kople sammen flere datamaskiner ved å bruke separate datakanaler mellom to og to datamaskiner. Hver datamaskin har da et fast antall datakanaler til andre datamaskiner i systemet. Disse kanalene kan overføre data fra en datamaskin til en annen datamaskin; i noen systemer kan data sendes kun en vei, i andre systemer kan data sendes begge veier. Flere topologier er brukt for å lage datasystemer basert på datakanaler mellom datamaskinene. En oversikt over vanlig brukte topologier er gjengitt i tidsskriftet "Scientific American" oktober 1987, side 51 og 134. Many known computer systems are based on connecting several computers together by using separate data channels between two computers. Each computer then has a fixed number of data channels to other computers in the system. These channels can transfer data from one computer to another computer; in some systems data can only be sent one way, in other systems data can be sent both ways. Several topologies have been used to create computer systems based on data channels between the computers. An overview of commonly used topologies is reproduced in the journal "Scientific American" October 1987, pages 51 and 134.
En av disse topologiene er "IBM Token-Ring Network", IEEE Standard 802.5. Her er alle datamaskinene koplet sammen i en ring, slik at hver datamaskin har en datakanal til hver av sine to nabo-datamaskiner og kan ta imot data fra den ene nabo-datamaskin og sende data til den andre nabo-datamaskin. For å synkronisere datatransporten sirkulerer et spesielt dataelement, "token", fra datamaskin til datamaskin. Når en datamaskin skal sende data til en annen, venter den først på dette spesielle dataelement, tar så dette ut, dernest sendes data som inkluderer adressen, til den datamaskin som skal motta dataene. Etter at dataene er mottatt, sendes det spesielle dataelement i sirkulasjon igjen. One of these topologies is the "IBM Token-Ring Network", IEEE Standard 802.5. Here, all the computers are connected together in a ring, so that each computer has a data channel to each of its two neighboring computers and can receive data from one neighboring computer and send data to the other neighboring computer. To synchronize the data transport, a special data element, the "token", circulates from computer to computer. When one computer is to send data to another, it first waits for this particular data element, then retrieves it, then sends data that includes the address to the computer that is to receive the data. After the data is received, the particular data element is sent into circulation again.
For å unngå altfor mange datakanaler i et system, vil det være nødvendig å kunne bruke datamaskinene til transit av data; når en datamaskin sender data, vil det være typisk at dataene må sendes via flere andre datamaskiner før dataene når ønsket datamaskin. Et problem med eksisterende datasystemer er at for hver datamaskin er hver datakanalinngang/ -utgang frittstående i forhold til hverandre. Dermed vil transit av data gjennom en datamaskin forårsake en vesentlig tidsforsinkelse ved at data må tas inn fra en datakanal og flyttes til en annen datakanal for så å sendes ut igjen. In order to avoid too many data channels in a system, it will be necessary to be able to use the computers for the transit of data; when a computer sends data, it will typically be that the data must be sent via several other computers before the data reaches the desired computer. A problem with existing computer systems is that for each computer each data channel input/output is independent in relation to each other. Thus, the transit of data through a computer will cause a significant time delay in that data must be taken in from one data channel and moved to another data channel and then sent out again.
Et annet problem er synkronisering av datatransporten i Another problem is the synchronization of the data transport i
systemene. Kompliserte topologier fører ofte til komplisert synkronisering for å unngå kollisjon i datakanalene og for å få mest mulig optimal dataflyt i kanalene. Dette fører igjen til ekstra tidsforsinkelser i systemene, i tillegg fordyres ofte systemene. Som nevnt ovenfor, løses synkroniserings-problemet i "IBM Token-Ring Network" ved at et spesielt dataelement sirkulerer. Imidlertid gir denne løsning en forholdsvis stor tidsforsinkelse for hver datamaskin som dataene må gå igjennom. Kun to datamaskiner kan kommunisere samtidig i "IBM Token-Ring Network", og gjennomsnittlig ventetid for å starte dataoverføring er forholdsvis stor, selv om ingen dataoverføring pågår. the systems. Complicated topologies often lead to complicated synchronization to avoid collisions in the data channels and to obtain the most optimal data flow in the channels. This in turn leads to additional time delays in the systems, and in addition, the systems often become more expensive. As mentioned above, the synchronization problem in the "IBM Token-Ring Network" is solved by circulating a special data element. However, this solution causes a relatively large time delay for each computer that the data must pass through. Only two computers can communicate simultaneously in the "IBM Token-Ring Network", and the average waiting time to start data transfer is relatively long, even if no data transfer is in progress.
Ved å kople sammen datamaskiner etter metoden som er angitt i nærværende oppfinnelse, oppnås meget rask dataoverføring mellom to datamaskiner. Transport av data gjennom en datamaskin går kun via et register og utføres dermed i løpet av en klokkesyklus. Datamaskinene som koples sammen, kan fysisk organiseres slik at ledningene for transport av data blir korte, tiden som trengs for å flytte data fra en datamaskin til dens nabo-datamaskin, kan dermed gjøres svært liten. Dette er spesielt fordelaktig, da nye elektroniske kompo-nenter er raske i forhold til ledningsforsinkelse, det vil si at transportveien vil utgjøre en vesentlig del av tids-forbruket. Metoden i henhold til oppfinnelsen er enkel og rimelig å implementere og kan realiseres slik at mange datamaskiner samtidig kan kommunisere med hverandre. By connecting computers according to the method indicated in the present invention, very fast data transfer between two computers is achieved. Transport of data through a computer only takes place via a register and is thus carried out during one clock cycle. The computers that are connected together can be physically organized so that the lines for transporting data are short, the time needed to move data from one computer to its neighboring computer can thus be made very small. This is particularly advantageous, as new electronic components are fast in relation to wiring delay, that is to say that the transport route will make up a significant part of the time consumption. The method according to the invention is simple and reasonable to implement and can be realized so that many computers can simultaneously communicate with each other.
Oppfinnelsen realiseres ved at hver datamaskin har en datakanal for å ta imot data og en datakanal for å sende ut data. Hver datakanal består av flere bit. Inngående datakanal koples til en multiplekser og til en styringslogikk som kan ta inn og registrere inngående data samt detektere visse inngående dataverdier. Utgangen av multiplekseren koples til inngangen på et register bestående av D-vipper, og utgangen av dette register går til datakanalen som sender ut data. Utgående datakanal blir så koplet til inngående datakanal på en annen datamaskin, videre koples alle datakanalene på denne måte, slik at de samlet koples i ring. Multiplekseren har to innganger, den ene er, som nevnt, koplet til inngående datakanal, den andre er koplet til en utgang på styringslogikken og brukes når data fra den aktuelle datamaskin skal sendes til en annen datamaskin. Styringslogikken består av registre og logiske porter. Sammenkoplingen av disse vil være avhengig av kravene til det aktuelle datasystem. Videre vil styringslogikken koples til resten av datamaskinen, som består av tradisjonelle datakomponenter så som prosessor, hukommelseskretser og lokale inn-/utporter. Systemet inneholder også en felles klokkegenerator som er koplet til alle datamaskinene. For hver datamaskin styrer et klokkesignal fra denne klokkegenerator et register til utgangsdatakanalen, samt synkroni-serer aktuell styringslogikk. The invention is realized in that each computer has a data channel for receiving data and a data channel for sending out data. Each data channel consists of several bits. The incoming data channel is connected to a multiplexer and to a control logic that can take in and register incoming data as well as detect certain incoming data values. The output of the multiplexer is connected to the input of a register consisting of D flip-flops, and the output of this register goes to the data channel which sends out data. The outgoing data channel is then connected to the incoming data channel on another computer, and all the data channels are connected in this way, so that they are connected together in a ring. The multiplexer has two inputs, one is, as mentioned, connected to the incoming data channel, the other is connected to an output on the control logic and is used when data from the relevant computer is to be sent to another computer. The control logic consists of registers and logic gates. The interconnection of these will depend on the requirements of the computer system in question. Furthermore, the control logic will be connected to the rest of the computer, which consists of traditional computer components such as the processor, memory circuits and local input/output ports. The system also contains a common clock generator which is connected to all the computers. For each computer, a clock signal from this clock generator controls a register to the output data channel, as well as synchronizes the current control logic.
Et eksempel på sammenkopling av datamaskiner ifølge oppfinnelsen er vist på tegningen, hvor: An example of connecting computers according to the invention is shown in the drawing, where:
Fig. 1 viser et datasystem,Fig. 1 shows a computer system,
Fig. 2 viser den delen av hver datamaskin som er nødvendig for å realisere oppfinnelsen. Fig. 3 viser styringslogikken i hver datamaskin mer detal-jert . Fig. 2 shows the part of each computer which is necessary to realize the invention. Fig. 3 shows the control logic in each computer in more detail.
Datatransporten synkroniseres av en klokkegenerator 1 som er koplet 2 slik at hver datamaskin 3 tar inn klokkesignal fra klokkegeneratoren 1 mest mulig samtidig med sine nabo-datamaskiner. For å unngå støy på klokkesignalet, termineres dette 4 motsatt av klokkegeneratoren 1. For hver klokkesyklus sender hver datamaskin 3 et dataelement til en nabo-datamaskins styringslogikk 5 over en datakanal 6. Data-elementet i datakanalen 6 kan deles inn i: Styredata 6a, adresse 6b og selve dataene 6c som ønskes overført. Styredata 6a (1 bit) angir om resten av dataene 6b, 6c er gyldige, det vil si at disse dataene er under transport til en datamaskin 3. Hvis dataene ikke er gyldige, kan hvilken som helst datamaskin 3 erstatte disse med gyldige data. Adresse 6b (8 bit) angir hvilken datamaskin 3 som skal motta data. Dataene 6c er sammensatt at et kjennetegn, nummer, (8 bit) på avsender-datamaskin og informasjon (32 bit) som ønskes overført. The data transport is synchronized by a clock generator 1 which is connected 2 so that each computer 3 takes in the clock signal from the clock generator 1 as much as possible at the same time as its neighboring computers. To avoid noise on the clock signal, this is terminated 4 opposite to the clock generator 1. For each clock cycle, each computer 3 sends a data element to a neighboring computer's control logic 5 over a data channel 6. The data element in the data channel 6 can be divided into: Control data 6a, address 6b and the actual data 6c that is desired to be transferred. Control data 6a (1 bit) indicates whether the rest of the data 6b, 6c are valid, that is, that this data is in transit to a computer 3. If the data is not valid, any computer 3 can replace it with valid data. Address 6b (8 bits) indicates which computer 3 is to receive data. The data 6c is composed of a characteristic, number, (8 bits) of the sender's computer and information (32 bits) which is desired to be transmitted.
Så lenge ingen datatransport foregår mellom datamaskinene 3, sendes kontinuerlig ugyldige dataelement mellom dem. Når en datamaskin 3 ønsker å sende data til en annen datamaskin 3, gis kommando via en databuss 7; først settes et register 8 med adresse 7a til den datamaskin 3 som skal motta, dernest settes et buffer-register 9 med data 7a som skal sendes, og en styredel 10 settes 7b i sendestatus. Dette betyr at styredelen 10 venter på et ugyldig dataelement, og straks dette 6a blir mottatt, sendes data 11 bestående av styredata Ila, adresse 11b og data som ønskes overført lic, via en multiplekser 12 til en register-inngang 13 og sendes ut 6 via et utgangs-register 14 ved påfølgende klokkepuls. Dataene lic som sendes, vil typisk i tillegg til selve dataene inneholde et kjennetegn på avsender-datamaskinen 3. Styredelen 10 gir så signal på databussen 7b at det er klart for å sende mer data. As long as no data transport takes place between the computers 3, invalid data elements are continuously sent between them. When a computer 3 wants to send data to another computer 3, a command is given via a data bus 7; first, a register 8 with address 7a is set to the computer 3 that is to receive, then a buffer register 9 is set with data 7a to be sent, and a control part 10 is set 7b in sending status. This means that the control part 10 waits for an invalid data element, and as soon as this 6a is received, data 11 consisting of control data Ila, address 11b and data that is desired to be transferred lic, is sent via a multiplexer 12 to a register input 13 and sent out 6 via an output register 14 at a subsequent clock pulse. The data lic that is sent will typically, in addition to the data itself, contain a characteristic of the sending computer 3. The control unit 10 then gives a signal on the data bus 7b that it is ready to send more data.
For å ta imot data vil hver datamaskin 3 kontinuerlig sjekke inngående datakanal. Dette gjøres ved at styredelen 10 sjekker om styredata 6a er gyldige, og en komparator 15 sjekker om adressen 6b er lik datamaskinens faste adresse, som står i et register 16. Hvis begge disse sjekkene er positive, blir inngående data 6c registrert i et FIFO-register 17, videre setter styredelen 10 dataene lia ugyldige og styrer multiplekseren 12 slik at ugyldige data 11 sendes ut 6 via utgangs-registeret 14 ved påfølgende klokkepuls. Styredelen 10 gir nå signal gjennom databussen 7b at data er mottatt. Øverste dataord i FIFO-registeret 17 vil nå inneholde kjennetegn på avsender-datamaskin i tillegg til selve informasjonen som er overført. To receive data, each computer 3 will continuously check the incoming data channel. This is done by the control part 10 checking whether control data 6a is valid, and a comparator 15 checking whether the address 6b is equal to the computer's fixed address, which is in a register 16. If both of these checks are positive, incoming data 6c is registered in a FIFO register 17, further the control part 10 sets the data 1a invalid and controls the multiplexer 12 so that invalid data 11 is sent out 6 via the output register 14 at a subsequent clock pulse. The control part 10 now gives a signal through the data bus 7b that data has been received. The top data word in the FIFO register 17 will now contain characteristics of the sender's computer in addition to the actual information that has been transferred.
I hver datamaskin 3 er det forholdsvis lite elektronikk som er avhengig av klokkefrekvensen 12, 14, 17, 15 og deler av 10. Hvis ledningene 6 mellom datamaskinene 3 er forholdsvis korte, kan dermed klokkegeneratorens 1 frekvens settes høyt, uten at kostnader og strømforbruk blir stort. Ved å sette klokkegeneratorens 1 frekvens flere ganger raskere enn frekvensen over databussen 7, kan flere par datamaskiner 3 kommunisere samtidig uten at noen av dem blir forsinket. Med klokkefrekvens 1 lik frekvensen over databussen 7, vil i gjennomsnitt to par datamaskiner 3 kunne kommunisere samtidig uten å bli forsinket. In each computer 3 there is relatively little electronics that depend on the clock frequency 12, 14, 17, 15 and parts of 10. If the wires 6 between the computers 3 are relatively short, the frequency of the clock generator 1 can thus be set high, without costs and power consumption being large. By setting the frequency of the clock generator 1 several times faster than the frequency over the data bus 7, several pairs of computers 3 can communicate simultaneously without any of them being delayed. With clock frequency 1 equal to the frequency over the data bus 7, on average two pairs of computers 3 will be able to communicate simultaneously without being delayed.
Claims (4)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NO88884535A NO884535L (en) | 1988-10-12 | 1988-10-12 | METHOD FOR AA CONNECTING COMPUTERS. |
DE3933846A DE3933846A1 (en) | 1988-10-12 | 1989-10-10 | Interconnecting computers by parallel bus - carrying control-data, address and data, clock-generator, control-logic circuit, comparator, register, fifo-register and multiplexer |
JP1264078A JPH0334648A (en) | 1988-10-12 | 1989-10-12 | Method of interconnecting computers |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NO88884535A NO884535L (en) | 1988-10-12 | 1988-10-12 | METHOD FOR AA CONNECTING COMPUTERS. |
Publications (2)
Publication Number | Publication Date |
---|---|
NO884535D0 NO884535D0 (en) | 1988-10-12 |
NO884535L true NO884535L (en) | 1990-04-17 |
Family
ID=19891318
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
NO88884535A NO884535L (en) | 1988-10-12 | 1988-10-12 | METHOD FOR AA CONNECTING COMPUTERS. |
Country Status (3)
Country | Link |
---|---|
JP (1) | JPH0334648A (en) |
DE (1) | DE3933846A1 (en) |
NO (1) | NO884535L (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5398315A (en) * | 1992-12-30 | 1995-03-14 | North American Philips Corporation | Multi-processor video display apparatus |
US7925684B2 (en) * | 2007-02-16 | 2011-04-12 | Infineon Technologies Ag | Method and apparatus for distributing random elements |
JP2010002852A (en) | 2008-06-23 | 2010-01-07 | Ricoh Co Ltd | Optical scanning optical system, optical scanning device and image forming apparatus using the same |
JP5615019B2 (en) | 2009-11-20 | 2014-10-29 | 株式会社神戸製鋼所 | Hot isostatic press |
-
1988
- 1988-10-12 NO NO88884535A patent/NO884535L/en unknown
-
1989
- 1989-10-10 DE DE3933846A patent/DE3933846A1/en not_active Withdrawn
- 1989-10-12 JP JP1264078A patent/JPH0334648A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
NO884535D0 (en) | 1988-10-12 |
JPH0334648A (en) | 1991-02-14 |
DE3933846A1 (en) | 1990-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4670871A (en) | Reliable synchronous inter-node communication in a self-routing network | |
US5448703A (en) | Method and apparatus for providing back-to-back data transfers in an information handling system having a multiplexed bus | |
US4554659A (en) | Data communication network | |
US4071887A (en) | Synchronous serial data adaptor | |
US4961140A (en) | Apparatus and method for extending a parallel synchronous data and message bus | |
US3735362A (en) | Shift register interconnection system | |
US5003558A (en) | Data synchronizing buffers for data processing channels | |
JPH025665A (en) | Adaptor | |
US20010033580A1 (en) | Multi-protocol packet translator | |
US4262357A (en) | Data processing system incorporating arbiters and selectors to allocate transmissions by multiple devices on a bus | |
EP0409539A2 (en) | Frame routing method for communication networks | |
JPS598105B2 (en) | Remote processor initialization method | |
JPH02263260A (en) | Memory access switch network | |
JPH0795231A (en) | Inter-lan connecting device | |
EP0627688A1 (en) | Provision of accurate and complete communication between different bus architectures | |
CA1147865A (en) | Message interchange system among microprocessors connected by a synchronous transmitting means | |
US4811277A (en) | Communication interface | |
US3742466A (en) | Memory system for receiving and transmitting information over a plurality of communication lines | |
NO884535L (en) | METHOD FOR AA CONNECTING COMPUTERS. | |
JP2782521B2 (en) | Interconnect system for multiprocessor structures. | |
US3551894A (en) | Serial cross-bar bussing system | |
EP0534030B1 (en) | A frame transfer device for a fixed format frame transmission network | |
DK146837B (en) | DATA COMMUNICATION SYSTEM WITH AT LEAST TWO INVOLVED CONNECTED CONNECTORS | |
NO174529B (en) | Two-way control signaling bus interface device for transmitting signals between two bus systems | |
GB1579099A (en) | Storage control in data processors |