WO1992017832A1 - Local time generator for a computer - Google Patents

Local time generator for a computer Download PDF

Info

Publication number
WO1992017832A1
WO1992017832A1 PCT/GB1992/000593 GB9200593W WO9217832A1 WO 1992017832 A1 WO1992017832 A1 WO 1992017832A1 GB 9200593 W GB9200593 W GB 9200593W WO 9217832 A1 WO9217832 A1 WO 9217832A1
Authority
WO
WIPO (PCT)
Prior art keywords
time
computer
local time
bus
register
Prior art date
Application number
PCT/GB1992/000593
Other languages
French (fr)
Inventor
Steven Hosgood
Original Assignee
Institute For Industrial Information Technology Limited
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 Institute For Industrial Information Technology Limited filed Critical Institute For Industrial Information Technology Limited
Priority to CA002107584A priority Critical patent/CA2107584A1/en
Publication of WO1992017832A1 publication Critical patent/WO1992017832A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/14Time supervision arrangements, e.g. real time clock

Definitions

  • This invention relates to a local time generator for a computer, to make the local time available when required by a central processing unit of the computer.
  • a particular application where local time is needed accurately is in a loosely coupled distributed computer system, where the individual node computers operate in their own timeframes, but where correction of the time generators of the nodes is carried out to synchronise these timeframes.
  • each node it is desirable for each node to record the time of receipt of each message over the communications medium from other nodes, and to apply a timestamp to each transmitted message so that the receiving node computer can compare the time of transmission, according to the timeframe of the transmitting node, with the time of receipt as measured in its own time frame.
  • a local time generator for a computer which makes the local time available when required by any element or unit of the computer, e.g. a central processing unit of the computer.
  • a local time generator for a computer comprising means for continuously generating signals representing local time, and a time bus to which said time signals are continuously applied.
  • the local time is continuously available on the timebu ⁇ , and may be used by any unit connected onto the timebus.
  • the local time generator includes at least one register connected to the timebus.
  • the processor of the computer into which the local time generator is fitted, may at any instant command the register to latch its contents, which then represent the local time at that instant.
  • the processor can proceed with othe operations and retrieve the recorded time or timestamp from th register when free to do so.
  • the processor ma command the snap-shot register to indicate when a predetermine local time is reached: for this purpose the processor load the snap-shot register with data representing the set time after which the register continuously compares that set tim with the local time appearing on the time bus, until the se time is reached.
  • the snap-shot register may be arranged to respond t an input signal for example received via an input interface o the computer into which the time generator is fitted, t trigger the snap-shot register to latch into itself the loca time at that instant.
  • the processor can retrieve this recor or timestamp later on.
  • Any number of snap-shot registers may be provided i the computer so that a number of events may be recorded an retrieved later by the processor, before the registers ar reset.
  • the computer into which the time generator is fitte may comprise a plurality of processors, each with its own dat bus, memory and optionally an input/output interface, plus snap-shot register connected to the timebus.
  • the computer into which the time generator is fitte may comprise a node computer for a loosely coupled distribute computer system, in which case it further comprises communications unit for coupling the data bus to communications medium common to a plurality of such nod computers.
  • the communications medium has a snap shot register associated with it, for the purpose of recordin the time of receipt of each message received over th communications medium, and for applying a timestamp to eac message which the node computer transmits.
  • the node computer compares the time o receipt of each message according to its own time frame, wit the timestamp carried by that message and representing the tim of transmission, measured according to the timeframe of th transmitting node computer. If any discrepancy is foun (allowing for transmission time) , the time generator of the node computer can be adjusted automatically to synchronise with the other node computer(s) .
  • the adjustment of the time generator is carried out by altering the rate of change of time for a period
  • the time generator is formed as a unit together with at least one snap-shot register (preferably two snap-shot registers) and preferably as an integrated circuit.
  • Figure 1 is a schematic block diagram of a node computer fitted with a local time generator in accordance with this invention, the computer being shown in a loosely coupled distributed computer system;
  • Figure 2 is a schematic block diagram of the local time generator.
  • each node computer in a loosely coupled distributed computer system.
  • the overall system comprises a plurality of such node computers connected to a common communication medium MED.
  • Each node computer may comprise a single processor, or as shown it may comprise a plurality of processors one of which may act as a master supervising the others.
  • each processor comprises a bus to which is connected the CPU, memory MEM, an input/output interface I/O, and a snap- shot register SSR (the function of which will be described) .
  • the computer bus CBI for one of the CPU's may extend to a communications unit COMMS which is coupled to the communications medium MED.
  • the bus for each of the other processors may also be connected to the bus CBI by respective communications units e.g. CM. This is one of many possible architectures.
  • the node computer is fitted with a local time generator which comprises a time generator TIME GEN, a timebus TB and two snap-shot registers SSRl, SSR2.
  • the snap-shot registers SSRl and SSR2 are connected to the timebus: register SSRl i triggered from the communications unit COMMS and register SSR is connected to the databus CBI of the master processor.
  • Th snapshot register e.g. SSR of each of the other processors i also connected to the time bus TB.
  • the time generator continuously generate signals defining the local time and applies these signals t the timebus TB: the signals may be updated typically ever 1 ⁇ s.
  • the timebus TB therefore always carries the curren local time and this is available to all processors and to th communications unit COMMS via the respective snap-sho registers.
  • this register latches its contents, corresponding to the data currently on the timebus; th register now holds data representing the local time at th instant the processor made the command; the processor need no retrieve this data from the snap-shot register immediately, bu may carry on with further processing and then retrieve the dat or timestamp when free to do so.
  • a processor may command it snap-shot register to indicate when a predetermined local tim has been reached: in this case the register holds dat representing the time set by the processor and continuousl compares this data with the local time data appearing on th timebus TB: when these two correspond, the register sends a indicating signal to its processor.
  • the snap-shot register SSRl is for use solely by th main communications unit COMMS.
  • the communications unit COMMS can instruct the register SSRl to record the time of receipt of the message, for retrieval later by one of the processors over the data bus.
  • the communications unit COMMS can instruct the register SSRl to record the time of transmission, so that this can be added as a timestamp to the outgoing message and also recorded by the transmitting processor.
  • the time generator TIME GEN and two snap-shot registers SSRl and SSR2 are formed as a unit o a single chip and Figure 2 shows further details.
  • the time generator comprises a data bu connectable externally to the data bus CBI of the nod computer: also the timebus may be extended via an externa interface.
  • Snap-shot registers SSRl and SSR2 are connecte to the data bus and timebus of the chip.
  • a timing system T is driven by an external 16 MHz crystal and in turn drives 52 bit counter COUNT. In essence the timing system comprise a divider ( ⁇ 16) but is adjustable as will be described.
  • Th timebus preferably includes 16 data lines, 4 strobe lines an a status line and the time signals are applied to the timebu in multiplex manner: thus the complete data to define th local time consists of too many bits to be carrie simultaneously on the timebus, so the contents of the counte (defining the local time) are applied to the time-bus dat lines in four parts in succession, the strobe lines definin each of the four parts in turn.
  • Each snap-shot register ha a command unit CU which acts to latch the register content upon receipt of a signal from an external trigger input TRI 1 or TRIG 2.
  • the local time held by the counter COUNT may be set o updated by data written into it from the data bus.
  • the timin system can be adjusted by an adjustment register AR, fo example to synchronize with the timing systems of other nod computers coupled to the same communications medium MED.
  • a address decode circuit DECODE receives external address an strobe inputs via a buffer, to drive the adjustment registe AR under the command of a control register CR.
  • the maste processor of the node is able to compare the time of receip of any message, against a timestamp contained in that messag and indicating the time of transmission according to th timeframe of the transmitting node computer.
  • th master processor of the appropriate node runs a known algorith to calculate a correction needed to adjust its own timin generator.
  • the correction is applied via the data bus to th adjustment register AR and thence to the timing system TS.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Abstract

A local time generator for a computer particularly for a node computer of a loosely coupled distributed computer system, comprises means for continuously generating signals representing local time, and a time bus to which these signals are continuously applied. Thus a timing system TS drives a counter COUNT the output lines are connected in parallel to respective lines of the time bus. In use, the local time is continuously available on the time bus, and may be used by any unit connected onto the time bus. One or more registers SSR1, SSR2 are connected to the time bus and can be latched to record the time of occurrence of any operation.

Description

Local Time Generator for a Computer
This invention relates to a local time generator for a computer, to make the local time available when required by a central processing unit of the computer.
Various difficulties have been encountered in the past in making the local time available to a computer's central processing unit when required by the latter, without occupying processing time.
A particular application where local time is needed accurately is in a loosely coupled distributed computer system, where the individual node computers operate in their own timeframes, but where correction of the time generators of the nodes is carried out to synchronise these timeframes. In this case it is desirable for each node to record the time of receipt of each message over the communications medium from other nodes, and to apply a timestamp to each transmitted message so that the receiving node computer can compare the time of transmission, according to the timeframe of the transmitting node, with the time of receipt as measured in its own time frame. We have now devised a local time generator for a computer, which makes the local time available when required by any element or unit of the computer, e.g. a central processing unit of the computer.
In accordance with this invention there is provided a local time generator for a computer, comprising means for continuously generating signals representing local time, and a time bus to which said time signals are continuously applied.
In use, the local time is continuously available on the timebuε, and may be used by any unit connected onto the timebus.
Preferably the local time generator includes at least one register connected to the timebus. The processor of the computer, into which the local time generator is fitted, may at any instant command the register to latch its contents, which then represent the local time at that instant. After sending this command to the register (referred to herein as th snap-shot register) , the processor can proceed with othe operations and retrieve the recorded time or timestamp from th register when free to do so. Alternatively, the processor ma command the snap-shot register to indicate when a predetermine local time is reached: for this purpose the processor load the snap-shot register with data representing the set time after which the register continuously compares that set tim with the local time appearing on the time bus, until the se time is reached.
The snap-shot register may be arranged to respond t an input signal for example received via an input interface o the computer into which the time generator is fitted, t trigger the snap-shot register to latch into itself the loca time at that instant. The processor can retrieve this recor or timestamp later on.
Any number of snap-shot registers may be provided i the computer so that a number of events may be recorded an retrieved later by the processor, before the registers ar reset.
The computer into which the time generator is fitte may comprise a plurality of processors, each with its own dat bus, memory and optionally an input/output interface, plus snap-shot register connected to the timebus. The computer into which the time generator is fitte may comprise a node computer for a loosely coupled distribute computer system, in which case it further comprises communications unit for coupling the data bus to communications medium common to a plurality of such nod computers. Preferably the communications medium has a snap shot register associated with it, for the purpose of recordin the time of receipt of each message received over th communications medium, and for applying a timestamp to eac message which the node computer transmits. Preferably the node computer compares the time o receipt of each message according to its own time frame, wit the timestamp carried by that message and representing the tim of transmission, measured according to the timeframe of th transmitting node computer. If any discrepancy is foun (allowing for transmission time) , the time generator of the node computer can be adjusted automatically to synchronise with the other node computer(s) .
Preferably the adjustment of the time generator is carried out by altering the rate of change of time for a period
(e.g. changing the rate at which pulses are applied to a counter) , so that no instant of time is missed nor generated twice.
Preferably the time generator is formed as a unit together with at least one snap-shot register (preferably two snap-shot registers) and preferably as an integrated circuit.
An embodiment of this invention will now be described by way of example only and with reference to the accompanying drawings, in which: Figure 1 is a schematic block diagram of a node computer fitted with a local time generator in accordance with this invention, the computer being shown in a loosely coupled distributed computer system; and
Figure 2 is a schematic block diagram of the local time generator.
Referring to the example shown in Figure 1, there is shown one node computer in a loosely coupled distributed computer system. The overall system comprises a plurality of such node computers connected to a common communication medium MED. Each node computer may comprise a single processor, or as shown it may comprise a plurality of processors one of which may act as a master supervising the others. In the example shown, each processor comprises a bus to which is connected the CPU, memory MEM, an input/output interface I/O, and a snap- shot register SSR (the function of which will be described) . The computer bus CBI for one of the CPU's may extend to a communications unit COMMS which is coupled to the communications medium MED. The bus for each of the other processors may also be connected to the bus CBI by respective communications units e.g. CM. This is one of many possible architectures.
The node computer is fitted with a local time generator which comprises a time generator TIME GEN, a timebus TB and two snap-shot registers SSRl, SSR2. The snap-shot registers SSRl and SSR2 are connected to the timebus: register SSRl i triggered from the communications unit COMMS and register SSR is connected to the databus CBI of the master processor. Th snapshot register e.g. SSR of each of the other processors i also connected to the time bus TB.
The time generator continuously generate signals defining the local time and applies these signals t the timebus TB: the signals may be updated typically ever 1 μs. The timebus TB therefore always carries the curren local time and this is available to all processors and to th communications unit COMMS via the respective snap-sho registers. Thus, if during the course of processing an processor requires the local time, it sends a command to it snap-shot register: this register latches its contents, corresponding to the data currently on the timebus; th register now holds data representing the local time at th instant the processor made the command; the processor need no retrieve this data from the snap-shot register immediately, bu may carry on with further processing and then retrieve the dat or timestamp when free to do so.
Alternatively for example, a processor may command it snap-shot register to indicate when a predetermined local tim has been reached: in this case the register holds dat representing the time set by the processor and continuousl compares this data with the local time data appearing on th timebus TB: when these two correspond, the register sends a indicating signal to its processor.
The snap-shot register SSRl is for use solely by th main communications unit COMMS. In the case of messages received by the node computer over the communicating mediu MED, the communications unit COMMS can instruct the register SSRl to record the time of receipt of the message, for retrieval later by one of the processors over the data bus. In the case of messages sent out over the communications medium MED from the node computer, the communications unit COMMS can instruct the register SSRl to record the time of transmission, so that this can be added as a timestamp to the outgoing message and also recorded by the transmitting processor.
In the example shown, the time generator TIME GEN and two snap-shot registers SSRl and SSR2 are formed as a unit o a single chip and Figure 2 shows further details. Thus, i this example the time generator comprises a data bu connectable externally to the data bus CBI of the nod computer: also the timebus may be extended via an externa interface. Snap-shot registers SSRl and SSR2 are connecte to the data bus and timebus of the chip. A timing system T is driven by an external 16 MHz crystal and in turn drives 52 bit counter COUNT. In essence the timing system comprise a divider (÷ 16) but is adjustable as will be described. Th timebus preferably includes 16 data lines, 4 strobe lines an a status line and the time signals are applied to the timebu in multiplex manner: thus the complete data to define th local time consists of too many bits to be carrie simultaneously on the timebus, so the contents of the counte (defining the local time) are applied to the time-bus dat lines in four parts in succession, the strobe lines definin each of the four parts in turn. Each snap-shot register ha a command unit CU which acts to latch the register content upon receipt of a signal from an external trigger input TRI 1 or TRIG 2.
The local time held by the counter COUNT may be set o updated by data written into it from the data bus. The timin system can be adjusted by an adjustment register AR, fo example to synchronize with the timing systems of other nod computers coupled to the same communications medium MED. A address decode circuit DECODE receives external address an strobe inputs via a buffer, to drive the adjustment registe AR under the command of a control register CR. The maste processor of the node is able to compare the time of receip of any message, against a timestamp contained in that messag and indicating the time of transmission according to th timeframe of the transmitting node computer. An allowance i made for transmission time but if any discrepancy is foun between the time frames of the different node computers, th master processor of the appropriate node runs a known algorith to calculate a correction needed to adjust its own timin generator. The correction is applied via the data bus to th adjustment register AR and thence to the timing system TS.

Claims

Claims
1) A local time generator for a computer, comprising mean for continuously generating signals representing local time, and a time bus to which said signals are continuously applied.
2) A local time generator as claimed in claim 1, furthe comprising at least one register connected to the time bus.
3) A local time generator as claimed in claim 2, furthe comprising means responsive to a command signal to latch th contents of the register.
4) A local time generator as claimed in claim 2 or 3, further comprising means for preloading the register with data representing a selected time, as represented by said signal on the time bus, corresponds with said selected time.
5) A local time generator as claimed in any precedin claim, in which said means for continuously generating signals representing local time comprises a timing system driving a counter which has a plurality of output lines connected in parallel to respective data lines of the time bus.
6) A local time generator as claimed in claim 5, further comprising means for adjusting the timing system to adjust the local time represented by the signals on the time bus.
7) A computer comprising a local time generator as claimed in any preceding claim, and a processor which includes a computer bus having connected thereto a central processing unit (CPU) and the or a said register of the local time generator, arranged so that the CPU can retrieve any data (or timestamp) latched into that register.
8) A computer as claimed in claim 7, further comprising a communications unit for coupling to an external communications medium, the communications unit being connected to the computer bus and to a second register of the local time generator, arranged so that the second register can record from the time bus, the time of transmission or receipt of an message over the external communications medium.
9) A computer as claimed in claim 7 or 8, comprising on or more further processors each comprising a bus and a centra computer unit (CPU) connected thereto.
10) A loosely coupled distributed computer syste comprising a plurality of node computers connected to a commo communications medium, each node computer comprising a compute as claimed in claim 7, 8 or 9.
PCT/GB1992/000593 1991-04-02 1992-04-02 Local time generator for a computer WO1992017832A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA002107584A CA2107584A1 (en) 1991-04-02 1992-04-02 Local time generator for a computer

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9106868.4 1991-04-02
GB9106868A GB2254455B (en) 1991-04-02 1991-04-02 Calendar time generator for a computer.

Publications (1)

Publication Number Publication Date
WO1992017832A1 true WO1992017832A1 (en) 1992-10-15

Family

ID=10692508

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB1992/000593 WO1992017832A1 (en) 1991-04-02 1992-04-02 Local time generator for a computer

Country Status (5)

Country Link
EP (1) EP0578684A1 (en)
AU (1) AU1532992A (en)
CA (1) CA2107584A1 (en)
GB (1) GB2254455B (en)
WO (1) WO1992017832A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2331165A (en) * 1997-11-08 1999-05-12 Gerald William Haywood Computer mountable clock/calendar
GB2371552A (en) * 2000-08-25 2002-07-31 Reckitt Benckiser Poly(vinyl alcohol) packaging for e.g. a detergent composition

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2566555A1 (en) * 1984-06-22 1985-12-27 Austria Mikrosysteme Internal INTERCONNECTABLE COMPUTER NETWORK FOR REAL-TIME WORK
US4803708A (en) * 1986-09-11 1989-02-07 Nec Corporation Time-of-day coincidence system
EP0355363A2 (en) * 1988-08-19 1990-02-28 Motorola, Inc. Integrated circuit timer with multiple channels and dedicated service processor

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2064835B (en) * 1979-12-11 1984-06-06 Casio Computer Co Ltd Power consumption control system for electronic digital data processing devices
US4368514A (en) * 1980-04-25 1983-01-11 Timeplex, Inc. Multi-processor system
US4845437A (en) * 1985-07-09 1989-07-04 Minolta Camera Kabushiki Kaisha Synchronous clock frequency conversion circuit

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2566555A1 (en) * 1984-06-22 1985-12-27 Austria Mikrosysteme Internal INTERCONNECTABLE COMPUTER NETWORK FOR REAL-TIME WORK
US4803708A (en) * 1986-09-11 1989-02-07 Nec Corporation Time-of-day coincidence system
EP0355363A2 (en) * 1988-08-19 1990-02-28 Motorola, Inc. Integrated circuit timer with multiple channels and dedicated service processor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2331165A (en) * 1997-11-08 1999-05-12 Gerald William Haywood Computer mountable clock/calendar
GB2371552A (en) * 2000-08-25 2002-07-31 Reckitt Benckiser Poly(vinyl alcohol) packaging for e.g. a detergent composition

Also Published As

Publication number Publication date
EP0578684A1 (en) 1994-01-19
AU1532992A (en) 1992-11-02
CA2107584A1 (en) 1992-10-03
GB9106868D0 (en) 1991-05-22
GB2254455B (en) 1995-01-04
GB2254455A (en) 1992-10-07

Similar Documents

Publication Publication Date Title
US4301532A (en) Arrangement for transmitting digital data signals
US4674036A (en) Duplex controller synchronization circuit for processors which utilizes an address input
EP2147382B1 (en) Method and system for reducing triggering latency in universal serial bus data acquisition
EP0613271B1 (en) Method and apparatus for time synchronization of bus type local area networks including hierarchical networks
US5133078A (en) Serial frame processing system in which validation and transfer of a frame's data from input buffer to output buffer proceed concurrently
JPH02253464A (en) Programmable data transfer timing
GB1357028A (en) Data exchanges system
WO1992017832A1 (en) Local time generator for a computer
EP4024157A1 (en) Clock distribution and alignment using a common trace
US3719930A (en) One-bit data transmission system
JP3252229B2 (en) Digital data transmission system
JPS6386630A (en) Frame synchronization system in parallel transmission line
KR970028966A (en) Integrated Circuit Input / Output Processor with Improved Timer Performance
AU7288087A (en) Data transfer between data processing equipment
US11855800B1 (en) One-line synchronous interface
JPS61161568A (en) Information transmission system
SU1667088A1 (en) Device for user interfacing to a communication channel
SU966687A1 (en) Interface
SU955167A1 (en) Device for data checking and transmission
JPH04119045A (en) Data compensation system in start-stop synchronization type data transfer
JPS63213011A (en) Time point synchronizing system
SU1251092A1 (en) Interface for linking electronic computer with telegraph apparatus
SU1177838A1 (en) System for information transmission and check
SU407316A1 (en) DEVICE FOR CONTROL AND SYNCHRONIZATION OF COMPLEX INFORMATION EXCHANGE
SU1339572A1 (en) Information exchange device

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AU CA JP NO US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IT LU MC NL SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2107584

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 1992907460

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 1993 122593

Country of ref document: US

Date of ref document: 19931129

Kind code of ref document: A

WWP Wipo information: published in national office

Ref document number: 1992907460

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 1992907460

Country of ref document: EP