Sélection de la langue

Search

Sommaire du brevet 2021469 

Énoncé de désistement de responsabilité concernant l'information provenant de tiers

Une partie des informations de ce site Web a été fournie par des sources externes. Le gouvernement du Canada n'assume aucune responsabilité concernant la précision, l'actualité ou la fiabilité des informations fournies par les sources externes. Les utilisateurs qui désirent employer cette information devraient consulter directement la source des informations. Le contenu fourni par les sources externes n'est pas assujetti aux exigences sur les langues officielles, la protection des renseignements personnels et l'accessibilité.

Disponibilité de l'Abrégé et des Revendications

L'apparition de différences dans le texte et l'image des Revendications et de l'Abrégé dépend du moment auquel le document est publié. Les textes des Revendications et de l'Abrégé sont affichés :

  • lorsque la demande peut être examinée par le public;
  • lorsque le brevet est émis (délivrance).
(12) Demande de brevet: (11) CA 2021469
(54) Titre français: MODULE D'ENTREE-SORTIE INCORPORE A UN CONTROLEUR PROGRAMMABLE A GESTION REPARTIE DE L'EXECUTION
(54) Titre anglais: INPUT/OUTPUT MODULE WITHIN A PROGRAMMABLE CONTROLLER WITH DISTRIBUTED PROGRAM CONTROL
Statut: Réputée abandonnée et au-delà du délai pour le rétablissement - en attente de la réponse à l’avis de communication rejetée
Données bibliographiques
(51) Classification internationale des brevets (CIB):
  • G6F 13/24 (2006.01)
(72) Inventeurs :
  • SCHALK, KARL (Allemagne)
  • HENNIG, BERND (Allemagne)
  • MUELLER, MANFRED (Allemagne)
(73) Titulaires :
  • SIEMENS AKTIENGESELLSCHAFT
(71) Demandeurs :
  • SIEMENS AKTIENGESELLSCHAFT (Allemagne)
(74) Agent: SMART & BIGGAR LP
(74) Co-agent:
(45) Délivré:
(22) Date de dépôt: 1990-07-18
(41) Mise à la disponibilité du public: 1991-01-21
Licence disponible: S.O.
Cédé au domaine public: S.O.
(25) Langue des documents déposés: Anglais

Traité de coopération en matière de brevets (PCT): Non

(30) Données de priorité de la demande:
Numéro de la demande Pays / territoire Date
89113336.5 (Office Européen des Brevets (OEB)) 1989-07-20

Abrégés

Abrégé anglais


ABSTRACT OF THE DISCLOSURE
An input/output (I/O) module of a programmably
controlled apparatus has access to a large number of
devices. These devices serve as a processing interface
for reading in/out a plurality of processing signals.
Some variables, in particular at the input or output of
each device, also serve as interrupt sources. One main
memory area is provided for each device in a modular main
memory of a module processing unit. This main memory area
contains a number of instruction lists which correspond in
number to the number of interrupt sources of the
respective device. The activity of an interrupt source is
signalled to the central processing unit of the
programmably controlled apparatus. Parallel to the release
of the primary interrupt and to the identification of the
active interrupt source, the corresponding instruction
list is processed in a decentralized manner within the
modular main memory almost in real time. A considerable
increase in processing speed results in this manner, since
the result of the instruction list processing is already
at hand up to the release of the interrupt in the central
processing unit and the identification of the active
interrupt source.

Revendications

Note : Les revendications sont présentées dans la langue officielle dans laquelle elles ont été soumises.


- 22 - 20365-3052
THE EMBODIMENTS OF THE INVENTION IN WHICH AN EXCLUSIVE
PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS:
1. An input/output module with distributed program con-
trol, connected via at least one system busline to at least one
primary central processing unit of a programmably controlled
apparatus, the module comprising:
a) a plurality of devices, entering and/or processing
a plurality of external signals, whereby at least one input or
output of each device serves as an interrupt source;
b) a main memory having a plurality of memory areas,
at least one memory area associated with each device, said at
least one memory area respectively storing one instruction list
which corresponds to the interrupt source for the associated
device, said instruction list storing at least one instruction
word at modular level or one control word at device level for
distributed program control; and
c) a processing unit, which, when an interrupt source
of a device is activated, signals the activity of an interrupt
source to the primary central processing unit and prepares a means
of identifying the interrupt; said processing unit further inter-
nally identifying the interrupt and executing the at least one
instruction word in the instruction list corresponding to the
activated interrupt source.
2. The device according to claim 1, wherein each memory
area for each device further comprises a register area, said
register area comprising registers for the purpose of intermediate
storage of device data, in particular for the storage of setpoint,

- 23 - 20365-3052
intermediate and result values.
3. The device according to claim 2, wherein said register
area further comprises an operation mode register for each device,
whereby the operating mode of the respective device is program-
mably adjustable by means of a control word at the device level.
4. The device according to claim 1, further comprising a
control word register into which instruction words at the modular
level or control words at the device level are entered by the
primary central processing unit, preferably in conjunction with a
main user program found in said primary central processing unit,
when an interrupt source becomes active, and said words in said
control word register being processed by said processing unit in
parallel to said instructions in said instruction list or with
priority over said instructions in said instruction list.
5. The device according to claim 2, further comprising a
control word register into which instruction words at the modular
level or control words at the device level are entered by the
primary central processing unit, preferably in conjunction with a
main user program found in said primary central processing unit,
when an interrupt source becomes active, and said words in said
control word register being processed by said processing unit in
parallel to said instructions in said instruction list or with
priority over said instructions in said instruction list.
6. The device according to claim 3, further comprising

- 24 - 20365-3052
a control word register into which instruction words at the modular
level or control words at the device level are entered by the
primary central processing unit 1, preferably in conjunction with
a main user program found in said primary central processing unit,
when an interrupt source becomes active, and said control words
being processed by said processing unit in parallel to said
instructions in said instruction list or with priority over said
instructions in said instruction list.
7. The device according to claim 1, further comprising a
dual port RAM, accessible by the processing unit via a modular
busline and accessible by said primary central processing unit via
a system busline; said dual port RAM having the identical struc-
ture as of one of said memory areas for each device; and wherein
contents of said dual port RAM are at least transferred in the
main memory upon occurrence of changes in the contents resulting
from action by the primary central processing unit.
8. The device according to claim 2, further comprising
a dual port RAM, accessible by the processing unit via a modular
busline and accessible by said primary central processing unit via
a system busline; said dual port RAM having the identical struc-
ture, as of one of said memory areas for each device; and wherein
contents of said dual port RAM are at least transferred in the
main memory upon occurrence of changes in the contents resulting
from action by the primary central processing unit.
9. The device according to claim 3, further comprising a

20365-3052
- 25 -
dual port RAM, accessible by the processing unit via a modular
busline and accessible by said primary central processing unit
via a system busline; said dual port RAM having the identical
structure as of one of said memory areas for each device; and
wherein contents of said dual port RAM are at least transferred
in the main memory upon occurrence of changes in the contents
resulting from action by the primary central processing unit.
10. The device according to claim 4, further comprising a
dual port RAM, accessible by the processing unit via a modular
busline and accessible by said primary central processing unit
via a system busline; said dual port RAM having the identical
structure as of one of said memory areas for each device; and
wherein contents of said dual port RAM are at least transferred
in the main memory upon occurrence of changes in the contents
resulting from action by the primary central processing unit.
11. The device according to claim 7, further comprising
additional registers in the dual port RAM, being associated with
the corresponding registers, which are disposed in the processing
unit, said additional registers support the coordination of
interrupts and the directly transferring of instruction or control
words from the primary central processing unit to the input/output
module.
12. A system for programmably controlling a machine or
process comprising:
a primary central processing unit;

- 26 - 20365-3052
a system bus coupled to said primary central processing
unit;
an input/output module coupled to said primary central
processing unit via said system bus, said module comprising,
a processing unit;
a processing interface comprising a plurality of
modular devices, entering and/or processing a plurality of exter-
nal signals and at least one interrupt source signals;
a main memory comprising a plurality of memory areas,
each of said modular devices having a memory area associated there-
with, each memory area associated with a modular device storing
an instruction list corresponding to an interrupt source of the
associated device, each said instruction list storing at least one
instruction word at modular level or one control word at device
level that enables distributed program control; and
an internal bus connecting said processing unit, said
processing interface, and said main memory.
13. The system of claim 12 wherein said input/output module
further comprises a register identifying an interrupt source, said
processing unit internally identifying said interrupt and executing
the instruction list corresponding to said interrupt source.
14. The system of claim 12, wherein each memory area for
each device further comprises a register area, said register area
comprising registers for the purpose of intermediate storage of
device data, in particular for the storage of setpoint, intermedi-
ate and result values.

- 27 - 20365-3052
15. The system of claim 13, wherein each memory area for
each device further comprises a register area, said register area
comprising registers for the purpose of intermediate storage of
device data, in particular for the storage of setpoint, inter-
mediate and result values.
16. The system of claim 14, wherein said register area
further comprises an operation mode register for each device,
whereby the operating mode of the respective device is programmably
adjustable by means of a control word at the device level.
17. The system of claim 15, wherein said register area
further comprises an operation mode register for each device, where-
by the operating mode of the respective device is programmably
adjustable by means of a control word at the device level.
18. The device according to claim 13, further comprising a
control word register into which instruction words at the modular
level or control words at the device

- 28 - 20365-3052
level are entered by the primary central processing unit,
preferably in conjunction with a main user program found
in said primary central processing unit, when an interrupt
source becomes active, and said words in said control word
register being processed by said processing unit in
parallel to said instructions in said instruction list or
with priority over said instructions in said instruction
list.
19. The system of claim 13 wherein said primary
central processing circuit includes an initialization
program by which instruction words at the modular level or
control words at the device level are entered into said
instruction lists.
20. In a system for programmably controlling a
machine or process including a primary processing unit, a
method for distributed control by a plurality of
input/output modules wherein each module comprises a
plurality of modular devices, a main memory, and
processing unit, the method comprising the steps of:
generating an interrupt from an interrupt source of
one of the plurality of modular devices;
identifying the source of the interrupt within one of
the modules using the processing unit associated with that
module;
accessing the main memory corresponding to the
processing unit identifying the source of the interrupt
and reading an instruction list corresponding to the
identified source of interrupt stored in that associated
main memory;
identifying the source of interrupt to the primary
central processing unit; and
executing said instruction list read from the
associated main memory in parallel with the step of
identifying the source of interrupt to the primary central

- 29 - 20365-3052
processing unit;
wherein said instruction list comprises at least one
instruction word at the modular level or one control word
at the device level for distributed program control.

Description

Note : Les descriptions sont présentées dans la langue officielle dans laquelle elles ont été soumises.


J`
AN INPUT/OUTPUT MODULE
WITHIN A PROGRAMMABLE CONTROLLER
WITH DISTRIBUTED PROGR~M CONTROL
BACKGROUND OF THE INVENTION
The present invention relates to an input/output
(I/O) module with distributed progra~ control, which is
connected, via at lea~t one system bus line, to at least
one central processing unit o~ a programmably controlled
apparatus. In particular, the present invention relates
to storing instruction lists in the input/output module
for the various devices associated with the module so as
to minimiæe interruption of the central processing unit.
The inventisn further relates to advantageous applications
of the I/O module~
Generally a large number of I/O modules are required
in programmably controlled apparatuses, in particular in
connection with programmable controllers for controlling
~15 and regulating machines:and technical processes. These
I/O modules make possible the exchange o~ measuring,
control, and regulating signals ~"MSR~signals"~ between
the programmable controller and the object to be guided.
Usually these MSR-signals are pres nt in v~ry large
quantities.
Fig. 1 illustratPs, in block diagram form, an example
o~ this type of programmably controlled apparatus. An
.
'.; . " ; , ~ :-'''," ~ , ";;
. :.
.,.
j :, . ,: :~ -

-- 2 --
important element is a primary central processing unit, 1,
which communicates with additional elements via at least
one system bus SB which can include a plurality of signal
lines. Example~ of types of these additional elements are
illustrated in Fig. 1 as a coordinating module 2, a mass
storage unit 3, a communications processor 4 to link the
programmably controlled apparatus to, for example, an
external bus 5 or external instruments 6 such as printers,
and an interface module 7 to link expansion units 8 to the
system bus SB. In addition, a programming unit 9 can be
provided to control the central processing unit 1,
preferably togather with an interchangeable storage module
10, individual user applications, can be loaded preferably
into the central processing unit 1 of the programmably
controlled apparatus.
Furthermore, this type of apparatus generally has
access to a large number of I/0 moduleis 11 which, while
forming a processing interface PS, make possible
communications between the programmably controlled
apparatus and the object to be influenced, e.g. a machine
or a ~echnical process. For example, a digital input
module 12, a digital output module 13, an analog value
input module 14, an analog value output module 15 and a
so~called intelligent I/0 module 16 which are represented
in Fig. 1 are such types of I/0 modules 11.
Intelligent I/0 modules usually include a large
number of devices having preerably the same basic logic
function for inputting and/or processing external signals.
A pre-processing of signals can thereby be possible in
that for each device in the framework of this basic logic
unction, it is possible to programmably preselect special
modes of operation. For this type of operating mode entry
or "mode setting", control word~ which are directly
preselected by the primary central pxocessing unit 1 for
- , . - , ,~
,. , .
.

- 3 -
the respective I/O module can act on the device level. In
this manner it is possible to adapt each device to the I/O
modula by means of setting its cperating mode, depending
on the processing application of the device which is
connected to this I/O module, such that the result
variables at the output of the respective device of tha
module can be further processed in the primary central
processing unit without any or with only a few
intermediate processing steps. Using these kinds of
control words on the device level, the individual devices
of an I/O module can only be influenced separately from
each othsr. All devices make their result values
available to the central processing unit in parallel to,
and independently from, each other~ A linkage o~ several
result values of individual modular devices in this case
is only possible when superordinated within the central
processing unit.
In an additional form of signal pre-processing at the
I/O module, individual instruction words at the device
level are also directly entered by the primary central
processing unit into the I/O module, preferably while
being interrupt driven and pref~rably in conjunction with
a main user program. These instruction words are usually
proc~ssed at the module by means of a separate,
decentralized processing unit. For example, the
instructions may make it possible to have simultaneous
acceas to several devices, or to combine the result values
of several devices into ona total result value. This type
of signal pre-processing at the I/O module level reduces
the processing xequirements at the central processing unit
level and also contributes to an overall faster execution
of instructions because the execution o~ instructions at
the I/O module frequenkl~ can take place much faster in
real time than within the primary central processing unit.
, . . ~.
;
, , .
:, :

C~ ~ 2 ~} ~ ~
-- 4 --
Modern ItO modules frequently have access to a large
number of parallel devices with preferably the same basic
logic function. Furthermore, it is gensrally desired t9
shift increasingly more operations from the central
processing unit and the resident user program to generally
faster operating I/O modules by enlarging the respective
supply of possible control words at the device level and
the supply of instruction words at the module level.
However, this endeavor is limited by the data transfer
times which are subject to interrupts when control words,
instruction words and result values are being exchanged
between the central processing unit and the I/O modules or
their devices. Each and every readout of a control or
instruction word from the primary central processing unit
or the entry of a result or intermediate result value by
one o~ the intelligent ItO modules results in a break due
to interruptions o~ the primary user program within the
primary central processing unit. Thus, the data transfer
times are limited. Furthermore, time losses arise in this
manner due to the requirement for the orderly interruption
or further processing o~ the main user program. A
preprocessing of signals on the I/O module level thus only
causes an increase of processing speed of the entire
automation system so long as the interrupt load of the
entire system does not become too great through the
exchange of individual control words, instruction words
and result values. Due to the constantly growing supply
of control and instruction words, though, which are
unnoticed by the user, a state is more frequently reached
at which the time savings from the rapid control word and
instruction word processing at the module level are lost
by the time loss resulting from the thus required
interrupt communication, so that as a result, the entire
system is more obstructed than relieved.
SUMMARY OF THE INVENTION
,
:
, ~, . ;
.: . ,
, :':'. ~ .

G d;~ Gf ~
-- 5 --
The present invention overcomes the above-described
disadvantages of intelli~ent I/0 modules, so that even in
the case of a large supply of control or instruction words
at the equipment or module level, an increase of the
overall system processing speed can be achieved which is
parallel to the shift of parts of the primary user program
to the respective I/0 module.
In order to achieve these results, the present
invention provides an I/0 module with distributed program
control which includes a plurality of devices which may
have the same basic logic functions and which enter and/or
process a plurality of external signals wherPby at least
the one output of each device serves as an interrupt
source. The module also includes a main memory having a
plurality of memory areas, at least one memory area being
associated with each o~ the devices. The corresponding
memory area stores an instruction list which corresponds
to the interrupt source of the device and includes at
least one instruction word at the modular level or one
control word at the device level for distributed program
control. ~he module also includes a processing unit,
which, when an interrupt source of a device is activated,
signals that activity to a primary central processing unit
and prepares a means of identifying the interrupt.
Furthermore, the processing unit also internally
identifies the interrupt and executes in parallel to the
identification, the instruction word in the instruction
list corresponding to the activated interrupt source.
Furthermore, according to an embodiment of the
present invention, the memory area corresponding to each
device further includes a register area that comprises
registers storing set point, intermediate and result
values.
,
:, .,

-- 6 --
Furthermore, according to an embodiment of the
present invention, the register area further comprises an
operation mode register for each device whereby the
operating mode of the respective device is programmably
adjustable by means of a control word at the device level.
According to yet a further embodiment of the present
invention, the module may further includ2 a control word
register into which instruction words at the modular level
or control words at the device level are entered by the
primary central processing unit in conjunction with a main
user program found in the primary central processing unit
when an interrupt source becomes active. The words of the
control word register are processed by the processing unit
either in parallel to the instructions in the instruction
list or with priority over the instructions in the
instruction list.
Th~ module may further comprise a dual port RAM that
is accessible by the processing unit via a modular bus
line and is also accessible by the primary central
processing unit via a system bus line~ The dual port RAM
stores the identical contents of one of the memory areas
for each device and the contents of the dual port RAM are
updated upon occurrence of changes in the main memory
r~sulting from action by the primary central processing
unit.
The module may fur~her include additional registers
which are present in the processing unit, whereby the dual
port RAM coordinates interrupts and directly transfers
instructions or control words from the primary central
processing unit to the module by accessing the additional
registers.
Advantageous specific embodiments and applications
..

~ ~ ~ 3~
-- 7 --
of the invention are further specified below.
BRI~F DESCRIPTION OF THE DRAWINGS
The present invention is explained in greater detail
below.with reference to the drawing fiqures in which:
Fig. 1 illustrates a block diagram representation of
a known programmably controlled apparatus serving in
particular as an automation system with a known
intelligent I/O module as the processing interface;
Fig. 2 illustrates a structural diagram of an I/0
module with distributed program control according to an
embodiment of the present invention;
Fig. 3 illustrates a time sequance chart for
processing an interrupt generated by a modular device
according to an embodiment of the present invention in
comparison to a known processing method; and
Fig. 4 illustrates a channel of a counter module as
an example of a device of an I/O module with distributed
program control according an embodiment of the present
invention.
2 O DETAI~ED DESCRIPTION OF THE INVENTION
In Fig. 2, an I/O module 16 with distributed program
control is represented in overview as a structural
diagramO This module includes a group, PBM, o~ a
plurality of modular devices Bl...Bn having preferably the
same basic logic function in order to enter and/or process
external processing signals P1, P2,--~ PN. The devices of
group PBM, thereby act as a processing interface PS. The
devices communicate via an internal modular busline BB
with a processing unit VE which is internal to the module
according to a first specific embodiment of the invention.
This processing unit VE includes at least one modular
central processing unit 20, which works together with a
modular main memory 21 which may be a random acc~ss memory
~RAM) and an interrupt rontroller 22. Furthermore, a
.. -
~", ,- , :

control word register SWR, 23 can also be provided which
is preferably a portion of the modular main memory RAM 21.
In the devices Bl...Bn, some variables which are
accessible externally also act as interrupt source~ at the
inputs and outputs. When one o~ these signals is
activated, or when a particular signal state appears, e.g.
a zero crossing, an appropriat~ interrupt is triggered in
the primary central processing unit l; that is, there is
a temporary interruption of the actual user program being
processed at the primary central processing unit. In Fig.
2, in the case of the devices B1, B2...Bn, e.g., the
variables IBll...IBlk, IB21...IB2k,...l IBnl...IBnk are
represented as being provided on interrupt source lines
IQ. These interrupt variables on source lines IQ are e.g.
consolidated in interrupt controller 22 for further
processing; the interrupt controller 22 is preferably
accom~odated in the processing unit VE. The activation of
one of these interrupt sources on one of lines IQ is
preferably signalled to the central processing unit 1 via
the interrupt controller 22, partic~larly via a group
interrupt line SA.
According to the present invention, for each of the
devices Bl...Bn, a speci~ic range R~MBl... RAMBn o~ the
modular main memory RAM 21 has been reserved. Each of
these specific ranges contains a number of instruction
lists, each list corresponding to the number of interrupt
sources of the respective device. Thus, for the device
B1, the memory area RAMB1 contains the instruction lists
BBll...Blk which correspond to the interrupt sources
IBll...IBlk o~ device B1 respectively. Accordingly, the
memory area RAMBn contains the instruction lists
BBnl.O.BBnk which correspond to the interrupt sources
IBnl...IBnk respectively for the device Bn. According to
the presen~ invention, the instruction lists serve to
.
. : . -
,: , , . ~
~ . ...
, .~. ' i: '
. ,

2 ~ ~J ~ r~
store at least one instruction or control word. However,
a large number of instruction words at the module l~vel or
control words at the device level for distributed program
control can be stored in each list. The user can thus
assign an individual sequence of instruction and control
words to each of the interrupt sources IB11...IBnk of the
respective I/0 module 16 parallel to the user program in
the primary central processing unit 1. These instruction
and control word sequences are processed when the
corresponding interrupt source is activated by the modular
processor CPU 20 of the modular processing unit VE. The
instruction words affect the level of the entire module,
i.e., all devices Bi...Bn, one or several arbitrary
devices. In particular, reading, writing or controlling
lS operations can be carried out while being program
controlled by means of each instruction list depending on
the application, at one or several devices o~ the I/0
module.
When activating one of ~he interrupt sources along
the interrupt source line IQ associated with the device Bn
of the I/0 module 16, the primary central processing unit
1 is signalled regarding the activity of an interrupt
source via the processing unit VE, and means for
identifying the interrupt are prepared. These means can
e.g. include an interrupt data register IIR, which in turn
is preferably mounted in the main memory RAM 21 of the I~0
module and is preferably loaded with an interrupt
identification code via the interrupt controller, 22, the
interrupt controller control line 23 which runs to the
module processor CPU 20, and finally from the modular
processor CPU i~self. The information stored within the
register IIR serves both the module processor CPU 20 as
well as the primary central processing unit 1 in the
program controlled apparatus for identifying the current
active interrupt source. Thus, as a result, on the one
. . .: -:
,~
. : .. :'

4 ~ ~C~
-- 10 --
hand the module processor CPU 20 causes the instruction
list BBnk belonging to the respective active interrupt
source to ~e executed in the memory area RAMBn of the
respective device Bn.
Parallel to this distributed processing of the
instruction list, an interrupt of the primary central
processing unit 1 is triggered preferably via the qroup
interrupt line SA due to the signalling of activity of a
device interrupt source. This primary central processing
unit 1 continues to process the main user program until a
certain point in the program i5 reached; only then can
this program be interrupted in an orderly fashion. The
interrupt identification in the primary central processing
unit 1 also joins in this activity in particular by
reading the contents of the interrupt data register II~ of
the I/O module 16 which is signalling the interrupt. This
has the goal of identifying the instruction list or
subroutine corresponding to the respective interrupt in
the main user program in order, for example, to retrieve
the processing result which is expected because of the
parallel processing o~ the instruction list.
Ons o~ the particular advantages of the present
invention is that in the time reguired by the primary
central processing unit 1 to interrupt the user program in
an ord~rly manner after the appearance of a group
interrupt alarm which signals the activity of an interrupt
source o~ a device on an I/O module and to identify the
reported interrupt, the instruction list corresponding to
the respective interrupt has, as a rule, already been
processed in the main memory RAM 21 of the respective ItO
module, and the processing result is held ready for the
primary central processing unit 1. The instruction lists
can be much more rapidly processed in the main memory of
the respective I/O module than i~ they were stored in the
:. .:, : . . .
. . ............ . . .
.. . .. .

user program of the primary central processing unit 1.
As set forth above in the known case, whereby the
instruction words which correspond to an interrupt source
of a device on an I/0 module are stored in the main user
program of the primary central processing unit, an
increase of the processing speed of the overall system can
be reached only to a certain degree. In this known case,
when an interrupt source is active, the appropriate
instruction word(s) are transferred only individually to
lo the I/0 module via interrupt, then are processed at the
I/0 module, and the processing result then has to be
return~d respectively via interrupt to the central
processing unit. An increase of the computing capacity in
this case can only be achieved insofar as the interrupt
time losses during the exchange of the instruction word
and the result value between the primary central
processing unit and I/0 module are not gr~ater than the
time gains achieved due to the higher processing speed of
the instruction words at the modular level. Thus, an
increase of computing capacity only occurs if direct
transf~rs of individual instruction words appear at I/o
modules with little or modçrate frequency. With the
increase of instruction words, this time savings - usually
not noticed by the user - turns into a time loss since the
lost time prevails during the organization of the many
interr~pts of the primary central processing unit. In the
known system, this can only be avoided by restricting the
supply of instruction words, thereby forcing the user to
perfor~ the majo~ity of signal processing operations in
the primary central processing unit itself.
In contrast, in the present invention, each increase
in the ~hifting of instruction and control words from the
user program in the central processing unit to instruction
lists of the respective I/0 module results in an increase
r:. :, :
;
' ' ~ ''' " ' ' ~ ' ' ' ' ' ' " ~

- 12 -
of the savings of processing time o~ the entire automation
system. The reason for this lies in that the number of
the interrupts which burden the central processing unit
does not increase with the num~er of instruction words
which are contained in the respective instruction list
BBnk. Rather, the number of interruptions generally
remains constant and usually has the value 1, since only
one single interrupt of the main user program is required
for one instruction list from the main memory R~M of an
I/0 module in order to retrieve the result.
Even in the case that only one single instruction
word is stored in this type of instruction list BBnk, the
I/0 module with distributed program control according to
the present invention makes possible a considerably faster
instruction word processing than if the same instruction
word first had to be loaded into the I/0 module by the
primary central processing unit 1 when an interrupt source
became active. This is more closely explained further
below in connection with Fig. 3.
According to a further specific embodiment of the
invention which is represented in Fig. 2, the main memory
area RAMB1~..RAMBn for each device Bl...Bn furthermore
preferably includes a register area BR1...BRn with
registers. These registers serve as intermediate storage
of data which exclusively concerns the respective device,
in particular they store setpoint values, intermediate
values, and result values. Thus, for example, in Fig. 2
respectively one setpoint value register B1-VWR...Bn-VWR,
one result value register B1-ER...Bn-ER, and one interrupt
alarm value register B1-AWR~..Bn-AWR are provided in the
main memory RAM for each device B1...Bn. The result of
processing an instruction list according to the present
invention can, for example, be stored in the result value
register Bn-ER of the corresponding register area BRn, or
-., ~ ~- ,
: , "
-
:, ~ .. .
:: . . ,
: . . , , ,. ~, . . . . .
~.

- 13 -
also for example in the setpoint value register or
interrupt alarm value register of one or several register
areas o~ other devices of the I/0 module which correspond
to other interrupt sources.
In Fig. 3, three processin~ levels in the
programmably controlled apparatus are symbolically
represented as E1, E2 and E3. The bottom level El thereby
refers to t~e individual devices of the I/0 module; the
middle level E2 refers to the modular (or internal)
processor CPU of the I/0 module; and, finally, the top
level E3 re~ers to the primary central processing unit 1
of the programmably controlled apparatus.
In the case o the time sequence chart which is
represented in Fig. 3, it is first presumed that at the
instant tl, the interrupt source IBnk of the device Bn is
activated at the device level E1. A~ result of this,
various operations are triggered at the middle level E2
and the top level E3. Thus, the identification of the
interrupt source first takes place at the middl~ level E2
by means of the modular processor CPU 20. For this
purpose, e.g., it can be checked with the aid of an
"interrupt enable mask IFM", which has already been shown
in a corresponding register in Fig. 2, whether the
respective interrupt has been released or blocked as a
~unction of the user. As an example, the time interval T1
has been entered for this purpose in Fig. 3. If the
checking of IFM results in the release of the active
interrupt source, then a group interrupt alarm SA for the
primary central processing unit joins in at the end of T1
at the instant t2. As a result of this signalling of the
activity of an interrupt source of a device of an I/0
module to the top level E3, the running user program
continues to be processed only for the duration T5 until
a suitable or orderly point in the program for
:
. ~
,, ' ! ~ . .
,

- 14 -
interruption has been reached and then processing is
subsequently interrupted in an orderly manner.
Parallel to this interruption process, the
identification of the active interrupt source also follows
after time t2 within the middle level E20 This takes
place in particular by evaluating the interrupt data
register IIR and by determining the instruction list
corresponding to the interrupt source in the main memory
RAM. Time interval T2 in Fig. 3 indicates the time
interval for the processing of the interrupt data register
IIR and the subsequently setting o~ an instruction counter
BZ of the modular processor CPU 20 at the initial addreiss
of the identified instruction list. After time interval
T2, the identified instruction list BBnk is processed by
the modular processor CPU 20 during time interval T3. The
processing result is stored, for example, in the
corresponding result value register Bn-ER in the register
area BRn of the respective device. The result value thus
is available to the primary central processing unit
starting from the instant t3.
Typically, the central processing unit is generally
not yet ready to read the contents of the result value
register 8n-ER at time t3. Rather, in level E3~ a time
interval T6 for identifying the interrupt follows the time
interval T5 which is required for initiating the
interrupt. For the purpose of identifying the interrupt,
the contents of the interrupt data register IIR are read
and evaluated, for example, by the I/0 modules which
signal the activity of an interrupt source. The
identification of the interrupt is concluded at the end
of the time intierval T6 at time t4, so that only at that
tim~ can the contents of the respective result value
register be transferred from the level E2 to the level E3.
Thus, despite the fact that during the time interval T3 a
?

- 15 -
large number of instxuction and control words of the
instruction list BBnk are generally being processed, there
is a waiting time T4 between the availability of the
processing result at the instant t3 and the transfer of
5 the result into the slower top level E3 at the instant t4
due to the considerably high~r processing speed at the
middle level E2.
Furthermore, Fig. 3 illustrates by a dash-dotted line
the result if the processing were performed in the known
manner which has been described above without the use of
the invention; i~e., with the omission of the parallel
processing at the middle level E2 during the time
intervals T2, T3 until the result instant t3. In this
connection, only after an orderly interruption of the user
program in the central processing unit during the time
interval T5 and after identifying the respective interrupt
during the time interv~1 T6 at the instant t4 is there the
possibility o~ individually transferring the respective
desired instruction word from the top level E3 ç.g. to a
control word register SWR of the processing unit VE of the
respective I/0 module into the middle level E2. During
the subse~uent time interval T7, the contents of this
control word register SWR, which itself is preferably a
component of the main memory R~M of the processing unit VE
on the respective I/0 module, are processed by the
corresponding modular processor CPU 20, and the processing
result in turn is stored in the result value register Bn-
ER which corresponds to the active interrupt source at
time T5. The transfer of the result from the middle level
E2 to the top level E3 usually again takes place in an
interrupt-driven manner, since during the interval between
the delivery of the instruction word at time t4 to ths
modular processing unit and the availability of the
proces~ing result at time t5, the central processing unit
has already resumed processing the user program which was
.: ... .
, '

~ ~ ~c~
- 16 -
interrupted during intervals T5 and T6 between the times
t2 and t4.
Thus, following the appearance of a group interrupt
alarm SA at time t5, another time interval T8 i~ then
required in order to interrupt the main user program in an
orderly manner. Furthermore, the time interval ~9 is
required during the course of identifying the interrupt in
order ~o recognize from which I/O module what result value
should be trans~erred where. The transfer of this result
value from the level E2 to the level ~3 is thus possible
at time t6 at the earliest.
According to the present inventionl it is possible to
store instruction words at the modular level as well as
control words at the device level in instruction lists and
then to jointly process them when the corresponding
interrupt source is active~ The control words make it
possible to programmably set the operating mode of each
device Bn on the I/0 module within the scope of the
general basic logic function depPnding on the application.
For this purpose, according to a further specific
embodiment, it is advantageous according to the
representation of Fig. 2 to provide at least one
additional register ("mode register") Bn-BMR in the
register area BRn which corresponds to each device within
the memory area RAMBn. Thus, in Fig. 2, the mode
registers B1-BMR...Bn-BMR are present for the devices
Bl...Bn in the register areas BRl...BRn. The contents of
these mode registers can on the one hand be changed in the
primary central processing unit 1 as a function of the
user program and be loaded into the respective device in
order to switch the operating mode. However, it is also
possible that these operations can be triggered by one or
several control words at the device level, which wor~s are
stored in distribution in one or several of the
- ., .. , :

~ 2i~2~3~:~
- 17 -
instruction lists BBll...BBnk in the ~ain memory RAM 21 ofthe processing unit VE of the respective I/0 module 16.
According to a further embodiment of the present
invention, in addition to distributed program control by
processing instruction lists which are stored in the main
memory RAM, the I/O module has acc~ss to the possibility
of processing, in a known manner, an instruction word or
control word which corresponds to an interrupt source and
is made directly available due to the activity of said
interrupt source by means of the primary central
processing unit. These types of singular instruction or
command words are preferably transferred directly into a
control word register SWR o~ the processing unit V~ of the
I/O module in coordination with the user program there,
particularly after an interrupt has been signalled by the
primary central processing unit, and subsequently is
processed by the modular processor CPU parallel to or
preferably before the instruction and control words in the
instruction lists BBll...BBnk. Depending on the
respective application cask, these types of directly
entered instruction or control words can have a higher
processing priority reserved for them than those words
which are stored in the separate instruction lists.
However, there is also the possibility that the
instruction words of an interrupt source, which are stored
in the corresponding instruction list within the modular
main memory RAM, or the individual instruction words,
which are directly entered by the user program of the
central processing unit into the modular processing unit
VE, are to be treated equally regarding their processing
priority so that they are processed strictly sequentially
by the order of their appearance. Finally, in order to
avoid a processing conflict between the instruction words
of an instruction list and those instruction words which
are directly entered by the primary central processing
~", " . .
~ . .
. .

2 ~
- 18 -
unit, there is, in isolated cases, also the possibility of
not entering any instruction or control words into the
respective instruction list and of being satisfied with
the direct entry of individual words by the central
processing unit, which requires more computing time due to
the increased interrupt load.
The invention thus has the additional advantage that,
without disturbing the distributed program control of the
IIO module by way of the instruction lists according to
the present invention, use of the known signal
preprocessing method can continue either independently
from or parallel to the distributed program control by
directly entering individual instruction or control words
as needed.
In a further embodiment of the present invention, the
instruction and control words in the instruction lists
which correspond to the respective interrupt source are
able to be entered by means of the primary central
processing unit preferably in conjunction with an
initialization routine found there. For the user there i5
thus the possibility, according to the representation of
Fig. 1, of both entering the parts of the user program,
which are stored and processed with priority in the
primary central processing unit 1, as well as the parts
which are designated for distributed program control of
the individual I/O modules, for example, by means of the
programming unit 9.
According to a further embodiment of the present
invention, a dual port R~M (DP-R~M~ is additio~ally
provided on the I/0 module. This type of memory DP-RAM
has already been represented in the structural diagram of
Fiy. 2 and has access to the same instruction lists or
register areas as the main memory RAM 21 of the processing
~"

2 ~ 2 ~ ~L ~
unit VE. It is connected at least to the central
processing unit 1 via the system busline SB and, also at
least to the processing unit VE and the modular devices
PBM internal to the module via the modular busline BB.
This type of a dual port R~ DP-RAM makes possible at
least both a writing as well as a reading access to the
processing unit VE on the I/0 module 16 and to the primary
central processing unit 1. Furthermore, it is possible
that at least the register areas BR1...BRn in the main
memory RAM and in the port memory DP-RAM can be directly
~pdated by the corresponding modular devices Bl...Bn. The
port memory makes possible a decoupling of the modular
main memory RAM from the primary central processing unit
1. The modular processor CPU can thus access the register
areas BRl...BRn which correspond to the respective devices
and the instruction lists BBll...BBnk at the main m~mory
RAM, which correspond to the respective interrupt source
for processing in particular, without having a conflict
arise should there be a case of a coincidentally
simultaneous access by the primary central processing
unit~ This type of access conflict can consist in that,
for example, while the primary central processing unit is
writing to a memory area and the modular processing unit
is simultaneously reading the contents of that very same
memory area, this modular processing unit alxeady accepts
not only part of the newly entered data, bu* also part of
the originally contained data. In th~ event that the dual
port RAM i5 not present, these types of conflicts would
have to be prevented e.g. by means of coordinating
routines which regulate the access of various devices to
the same memory. However, these types of routines impair
the overall processing speed and are dispensable when a
dual port RAM i5 present. Thus, for example, the
processing results which ar~ generated due to the
processing of the instruction words within the instruction
lists are preferably entered for security in the
~ ' ~ , ' '.
'
.

~ rJ ~ ~J _3~ r31
- 20 -
corresponding result value register Bl-ER...Bn-ER of the
modular main memory RAM and o~ the dual port m~mory DP-
RAM by the respective devices themselves. Furthermore, it
is particularly possible to copy the contents of the dual
port RAM completely into the modular main memory RAM,
preferably in conjunction with a centralized
initialization program, when changes within the
instruction lists which are caused by the central
processing unit appear.
Finally, the dual port memory RAM has access to
additional registers which are correspondingly present in
the processing unit VE. For example, these registers
comprise the interrupt data register IIR and the interrupt
enable mask IFM which are required for coordinating the
interrupt. Other registers which ar~ correspondingly
present in the port memory DP RAM preferably refer to the
direct trans~er of instruction words ~rom the central
processing unit to the I/O module and include the control
word register SWR.
The I/O module according to the invention is
particularly suited for use in a programmably controlled
programmable controller for the real time processing of
processing signals. There, they can serve, for example,
as a control module, a binary value input and/or output
module, an analog value input, processing, and/or output
module, a counter module or trigger module for processing
equipment.
A channel of a counter module which is de~igned
according to the present invention is shown in Fig. 4 as
an example of a device for an I/O module with distributed
program control. For example, the progra~mable counter
channel PZXl as device B1 has access to a pulse input IE,
a port input TE, a data input DE and a counter output ZA.
' ' :'. ~. "' .::

2~ ~ 'ri9
~ 21 ~
The pulses to be counted ara conveyed from the processor
to the pulse input IE via the processing interfac~ P1. A
release or blocking of the counter channel, which is
in~luenced by the processor, is equally possible via the
port input TE. A large amount of data is supplied to the
programmable counter channel PZK1 by the processing unit
VE via the data input DE by way of the modular busline BB.
This data includes control words on the device level with
which the respectively desired operating mode of the
counter channel, for example, of an up or down counter,
can be programmably adjusted by means of the current
contents of the mode register B1-BMR. Furthermore, the
current contents of, for example, the setpoint register
B1-VWR and of the interrupt alarm value register B1-AWR
can be entered into the counter channel via the data input
DE. Finally, it is possible to programmably activate or
block the counter channel by means o~ instruction words at
the modular level. If the counter level finally reaches
a desired setpoint value during the counting process, then
this is signalled at the counter output ZA.
In the example of Fig. 4, the signals at port input
TE and at counter output ZA simultaneously serve as
interrupt sources IB11, IB12 These interrupt sources for
interrupt source lines IQ are, for example, supplied to
the interrupt controller IK of the modular processing unit
VE for monitoring purposes according to the representation
of Fig. 2.
:: ., ', ' .' .
:, ; ~ '''
.: . .

Dessin représentatif
Une figure unique qui représente un dessin illustrant l'invention.
États administratifs

2024-08-01 : Dans le cadre de la transition vers les Brevets de nouvelle génération (BNG), la base de données sur les brevets canadiens (BDBC) contient désormais un Historique d'événement plus détaillé, qui reproduit le Journal des événements de notre nouvelle solution interne.

Veuillez noter que les événements débutant par « Inactive : » se réfèrent à des événements qui ne sont plus utilisés dans notre nouvelle solution interne.

Pour une meilleure compréhension de l'état de la demande ou brevet qui figure sur cette page, la rubrique Mise en garde , et les descriptions de Brevet , Historique d'événement , Taxes périodiques et Historique des paiements devraient être consultées.

Historique d'événement

Description Date
Le délai pour l'annulation est expiré 1994-01-18
Demande non rétablie avant l'échéance 1994-01-18
Réputée abandonnée - omission de répondre à un avis sur les taxes pour le maintien en état 1993-07-19
Inactive : Demande ad hoc documentée 1993-07-19
Demande publiée (accessible au public) 1991-01-21

Historique d'abandonnement

Date d'abandonnement Raison Date de rétablissement
1993-07-19
Titulaires au dossier

Les titulaires actuels et antérieures au dossier sont affichés en ordre alphabétique.

Titulaires actuels au dossier
SIEMENS AKTIENGESELLSCHAFT
Titulaires antérieures au dossier
BERND HENNIG
KARL SCHALK
MANFRED MUELLER
Les propriétaires antérieurs qui ne figurent pas dans la liste des « Propriétaires au dossier » apparaîtront dans d'autres documents au dossier.
Documents

Pour visionner les fichiers sélectionnés, entrer le code reCAPTCHA :



Pour visualiser une image, cliquer sur un lien dans la colonne description du document (Temporairement non-disponible). Pour télécharger l'image (les images), cliquer l'une ou plusieurs cases à cocher dans la première colonne et ensuite cliquer sur le bouton "Télécharger sélection en format PDF (archive Zip)" ou le bouton "Télécharger sélection (en un fichier PDF fusionné)".

Liste des documents de brevet publiés et non publiés sur la BDBC .

Si vous avez des difficultés à accéder au contenu, veuillez communiquer avec le Centre de services à la clientèle au 1-866-997-1936, ou envoyer un courriel au Centre de service à la clientèle de l'OPIC.


Description du
Document 
Date
(yyyy-mm-dd) 
Nombre de pages   Taille de l'image (Ko) 
Revendications 1991-01-20 8 281
Page couverture 1991-01-20 1 24
Abrégé 1991-01-20 1 35
Dessins 1991-01-20 3 77
Description 1991-01-20 21 1 000
Dessin représentatif 1999-07-14 1 13
Taxes 1992-06-22 1 30