GB2254455A - Dedicated "time bus" for real time clock. - Google Patents
Dedicated "time bus" for real time clock. Download PDFInfo
- Publication number
- GB2254455A GB2254455A GB9106868A GB9106868A GB2254455A GB 2254455 A GB2254455 A GB 2254455A GB 9106868 A GB9106868 A GB 9106868A GB 9106868 A GB9106868 A GB 9106868A GB 2254455 A GB2254455 A GB 2254455A
- Authority
- GB
- United Kingdom
- Prior art keywords
- time
- computer
- local time
- bus
- register
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/14—Time supervision arrangements, e.g. real time clock
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 timebus, 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 the snap-shot register), the processor can proceed with other operations and retrieve the recorded time or timestamp from the register when free to do so. Alternatively, the processor may command the snap-shot register to indicate when a predetermined local time is reached: for this purpose the processor loads the snap-shot register with data representing the set time, after which the register continuously compares that set time with the local time appearing on the time bus, until the set time is reached.
The snap-shot register may be arranged to respond to an input signal for example received via an input interface of the computer into which the time generator is fitted, to trigger the snap-shot register to latch into itself the local time at that instant. The processor can retrieve this record or timestamp later on.
Any number of snap-shot registers may be provided in the computer so that a number of events may be recorded and retrieved later by the processor, before the registers are reset.
The computer into which the time generator is fitted may comprise a plurality of processors, each with its own data bus, memory and optionally an input/output interface, plus a snap-shot register connected to the timebus.
The computer into which the time generator is fitted may comprise a node computer for a loosely coupled distributed computer system, in which case it further comprises a communications unit for coupling the data bus to a communications medium common to a plurality of such node computers. Preferably the communications medium has a snapshot register associated with it, for the purpose of recording the time of receipt of each message received over the communications medium, and for applying a timestamp to each message which the node computer transmits.
Preferably the node computer compares the time of receipt of each message according to its own time frame, with the timestamp carried by that message and representing the time of transmission, measured according to the timeframe of the transmitting node computer. If any discrepancy is found (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 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 snapshot 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 SSR1, SSR2. The snap-shot registers SSR1 and SSR2 are connected to the timebus: register SSR1 is triggered from the communications unit COMMS and register SSR2 is connected to the databus CB1 of the master processor. The snapshot register e.g. SSR of each of the other processors is also connected to the time bus TB.
The time generator continuously generates signals defining the local time and applies these signals to the timebus TB: the signals may be updated typically every The timebus TB therefore always carries the current local time and this is available to all processors and to the communications unit COMMS via the respective snap-shot registers. Thus, if during the course of processing any processor requires the local time, it sends a command to its snap-shot register: this register latches its contents, corresponding to the data currently on the timebus; the register now holds data representing the local time at the instant the processor made the command; the processor need not retrieve this data from the snap-shot register immediately, but may carry on with further processing and then retrieve the data or timestamp when free to do so.
Alternatively for example, a processor may command its snap-shot register to indicate when a predetermined local time has been reached: in this case the register holds data representing the time set by the processor and continuously compares this data with the local time data appearing on the timebus TB: when these two correspond, the register sends an indicating signal to its processor.
The snap-shot register SSR1 is for use solely by the main communications unit COMMS. In the case of messages received by the node computer over the communicating medium
MED, the communications unit COMMS can instruct the register
SSR1 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 SSR1 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 SSR1 and SSR2 are formed as a unit on a single chip and Figure 2 shows further details. Thus, in this example the time generator comprises a data bus connectable externally to the data bus CBI of the node computer: also the timebus may be extended via an external interface. Snap-shot registers SSR1 and SSR2 are connected to the data bus and timebus of the chip. A timing system TS is driven by an external 16 MHz crystal and in turn drives a 52 bit counter COUNT. In essence the timing system comprises a a divider (. 16) but is adjustable as will be described.The timebus preferably includes 16 data lines, 4 strobe lines and a status line and the time signals are applied to the timebus in multiplex manner: thus the complete data to define the local time consists of too many bits to be carried simultaneously on the timebus, so the contents of the counter (defining the local time) are applied to the time-bus data lines in four parts in succession, the strobe lines defining each of the four parts in turn. Each snap-shot register has a command unit CU which acts to latch the register contents upon receipt of a signal from an external trigger input TRIG 1 or TRIG 2.
The local time held by the counter COUNT may be set or updated by data written into it from the data bus. The timing system can be adjusted by an adjustment register AR, for example to synchronize with the timing systems of other node computers coupled to the same communications medium MED. An address decode circuit DECODE receives external address and strobe inputs via a buffer, to drive the adjustment register
AR under the command of a control register CR. The master processor of the node is able to compare the time of receipt of any message, against a timestamp contained in that message and indicating the time of transmission according to the timeframe of the transmitting node computer. An allowance is made for transmission time but if any discrepancy is found between the time frames of the different node computers, the master processor of the appropriate node runs a known algorithm to calculate a correction needed to adjust its own timing generator. The correction is applied via the data bus to the adjustment register AR and thence to the timing system TS.
Claims (12)
1) A local time generator for a computer, comprising means 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, further comprising at least one register connected to the time bus.
3) A local time generator as claimed in claim 2, further comprising means responsive to a command signal to latch the 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 signals on the time bus, corresponds with said selected time.
5) A local time generator as claimed in any preceding 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 ~or 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 any message over the external communications medium.
9) A computer as claimed in claim 7 or 8, comprising one or more further processors each comprising a bus and a central computer unit (CPU) connected thereto.
10) A loosely coupled distributed computer system comprising a plurality of node computers connected to a common communications medium, each node computer comprising a computer as claimed in claim 7, 8 or 9.
11) A local time generator substantially as herein described with reference to Figure 2 of the accompanying drawings.
12) A computer substantially as herein described with reference to Figure 1 of the accompanying drawings.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9106868A GB2254455B (en) | 1991-04-02 | 1991-04-02 | Calendar time generator for a computer. |
EP19920907460 EP0578684A1 (en) | 1991-04-02 | 1992-04-02 | Local time generator for a computer |
PCT/GB1992/000593 WO1992017832A1 (en) | 1991-04-02 | 1992-04-02 | Local time generator for a computer |
CA002107584A CA2107584A1 (en) | 1991-04-02 | 1992-04-02 | Local time generator for a computer |
AU15329/92A AU1532992A (en) | 1991-04-02 | 1992-04-02 | Local time generator for a computer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9106868A GB2254455B (en) | 1991-04-02 | 1991-04-02 | Calendar time generator for a computer. |
Publications (3)
Publication Number | Publication Date |
---|---|
GB9106868D0 GB9106868D0 (en) | 1991-05-22 |
GB2254455A true GB2254455A (en) | 1992-10-07 |
GB2254455B GB2254455B (en) | 1995-01-04 |
Family
ID=10692508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB9106868A Expired - Fee Related GB2254455B (en) | 1991-04-02 | 1991-04-02 | Calendar 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) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2331165A (en) * | 1997-11-08 | 1999-05-12 | Gerald William Haywood | Computer mountable clock/calendar |
GB0021113D0 (en) * | 2000-08-25 | 2000-10-11 | Reckitt & Colmann Prod Ltd | Improvements in or relating to containers |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2064835A (en) * | 1979-12-11 | 1981-06-17 | Casio Computer Co Ltd | Power consumption control system for electronic digital data processing devices |
GB2074762A (en) * | 1980-04-25 | 1981-11-04 | Timeplex Inc | Multi-processor systems |
GB2177827A (en) * | 1985-07-09 | 1987-01-28 | Minolta Camera Kk | Conversion system for providing portability of hardware modules between different computers |
US4803708A (en) * | 1986-09-11 | 1989-02-07 | Nec Corporation | Time-of-day coincidence system |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AT382253B (en) * | 1984-06-22 | 1987-02-10 | Austria Mikrosysteme Int | LOOSE COUPLED DISTRIBUTED COMPUTER SYSTEM |
US4926319A (en) * | 1988-08-19 | 1990-05-15 | Motorola Inc. | Integrated circuit timer with multiple channels and dedicated service processor |
-
1991
- 1991-04-02 GB GB9106868A patent/GB2254455B/en not_active Expired - Fee Related
-
1992
- 1992-04-02 WO PCT/GB1992/000593 patent/WO1992017832A1/en not_active Application Discontinuation
- 1992-04-02 CA CA002107584A patent/CA2107584A1/en not_active Abandoned
- 1992-04-02 EP EP19920907460 patent/EP0578684A1/en not_active Withdrawn
- 1992-04-02 AU AU15329/92A patent/AU1532992A/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2064835A (en) * | 1979-12-11 | 1981-06-17 | Casio Computer Co Ltd | Power consumption control system for electronic digital data processing devices |
GB2074762A (en) * | 1980-04-25 | 1981-11-04 | Timeplex Inc | Multi-processor systems |
GB2177827A (en) * | 1985-07-09 | 1987-01-28 | Minolta Camera Kk | Conversion system for providing portability of hardware modules between different computers |
US4803708A (en) * | 1986-09-11 | 1989-02-07 | Nec Corporation | Time-of-day coincidence system |
Also Published As
Publication number | Publication date |
---|---|
AU1532992A (en) | 1992-11-02 |
EP0578684A1 (en) | 1994-01-19 |
GB2254455B (en) | 1995-01-04 |
CA2107584A1 (en) | 1992-10-03 |
GB9106868D0 (en) | 1991-05-22 |
WO1992017832A1 (en) | 1992-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0175564B1 (en) | Data transfer system | |
JP2529682B2 (en) | Method and apparatus for synchronizing clocks | |
US4835728A (en) | Deterministic clock control apparatus for a data processing system | |
US5133078A (en) | Serial frame processing system in which validation and transfer of a frame's data from input buffer to output buffer proceed concurrently | |
GB2254455A (en) | Dedicated "time bus" for real time clock. | |
JP3252229B2 (en) | Digital data transmission system | |
KR970028966A (en) | Integrated Circuit Input / Output Processor with Improved Timer Performance | |
US4551836A (en) | Cross-copy arrangement for synchronizing error detection clock signals in a duplex digital system | |
JPS61161568A (en) | Information transmission system | |
KR100208227B1 (en) | Time slot switch between processor and device | |
JPH05134062A (en) | Time synchronizing method for process monitoring apparatus | |
JPH01128153A (en) | Transmission system for control signal between asynchronous equipments | |
KR100279163B1 (en) | Channel unit for digital loop carrier transmission system | |
JPS6232748A (en) | Data transfer equipment | |
KR930008360B1 (en) | 2k time switch | |
GB1315690A (en) | Data transfer systems | |
SU1177838A1 (en) | System for information transmission and check | |
SU1727112A1 (en) | Distributed system for programmed control with majorizing | |
SU955167A1 (en) | Device for data checking and transmission | |
JPS61221900A (en) | Data transmission controller having simulation function | |
JPH02212911A (en) | Timing method for digital time unit | |
JPH04184297A (en) | Time synchronization method of information processing system | |
BENKEN | Network interface module and method(Patent Application) | |
JPH02260738A (en) | Communication control method for fast digital branch line | |
JPS6020205A (en) | Remote system inputting/outputting device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PCNP | Patent ceased through non-payment of renewal fee |
Effective date: 19960402 |