Be used for control data treating apparatus fully loaded method
Technical field
The present invention relates to the fully loaded method that a kind of data processing equipment that is used to control the calculating unit with order setting causes owing to pending data value.
Background technology
In data processing equipment or data processing equipment, often by means of the calculating unit that in each data processing equipment, comprises, in calculation procedure successively, data value is handled.As data processing equipment can be the electrical equipment of general micro controller control, and especially for the scene or the remote control equipment that monitor and control automation process, for example energy provides and distributor.Data value under meaning of the present invention can for example be measured value, prompting, fault prompting, state value and parameter.At this, each treatment step can be by carrying out as the calculating unit of hardware or software realization.
For example, represent the data value of curtage measured value, it is gathered in supply line by the field apparatus as data processing equipment, and experience treatment step successively, as filtering, Fourier transform and voltage or circuit vector calculation function.At this, usually the input end at first calculating unit reads in one or one group of data value, this first calculating unit is handled data value and is left it in distribute to this calculating unit temporary storage at last, follows next calculating unit behind this first calculating unit and reads the relevant data value from this temporary storage and be used for its processing as its input value.
At this, the computing velocity of each calculating unit can be different fully according to the complicacy and the efficient of the function that each calculating unit is carried out.Under the situation of the big data quantity that arrives at short notice and must handle by data processing equipment, can be owing to slower calculating unit produces data congestion, and make each temporary storage not have enough memory capacity to hold the data value of appearance, other temporary storage then is close to " zero load ".This means loss of data, this especially can produce passive influence under the situation of the data value (for example fault prompting) of sensitivity.
For fear of this point, carry out usually up to now so-called " handshake method ".Wherein, by first calculating unit with a data value or one group of data value by being sent to next calculating unit for the temporary storage of its setting.If next calculating unit has been carried out its computing function, then the corresponding data value of the data value that it should correspondence or this group is delivered to the calculating unit of following in the back, and reply first calculating unit to the disposing of its data value or one group data value, its follow-up data or follow-up data value group that obtains transmitting by the temporary storage of first calculating unit in view of the above.
In the another kind of embodiment of handshake method, also can after having passed through last calculating unit of whole data processing equipment, data value just carry out the answer that the corresponding data value is handled.Have only after this, first calculating unit just reads in next data value, it is handled and be delivered to next calculating unit.
Therefore, realized the full load relatively uniformly of all calculating units, and avoided the overload of single memory thus by means of handshake method.But, slow relatively thus because the operating rate of whole data processing equipment depends on the slowest calculating unit in the method, and reply cost relatively greatly by each in addition, so can not get rid of loss of data fully thus.
Another kind of possibility is for specific data value distributes higher right of priority in advance, makes such data value preferably be obtained handling by system by each calculating unit of data processing equipment.Thus, make the loss of data of sensitive data value avoid at least relatively goodly.
In addition, for example disclose a kind of telephone switching device, wherein the data of waiting for have been stimulated (Anforderungsreize) storage temporarily in storer by so-called requirement by Germany Patent document DE 2723667 C3.At this, when a storer overload, can in a memory area that does not also have to load, carry out balance.
In addition, american documentation literature US 6192428 B ' disclose a kind of computer system, wherein preferably different can avoid overflowing of data fifo temporary storage area at FIFO (first in first out) temporary storage with it is assigned to by the different of input data.
Summary of the invention
The technical problem to be solved in the present invention is to avoid as much as possible in data processing equipment in a simple manner because the loss of data that the single temporary storage overload of data processing equipment causes.
In order to solve this technical problem, the fully loaded method that a kind of data processing equipment that is used to control the calculating unit with order setting causes owing to pending data value has been proposed, wherein, determine to distribute to the storer full load of the temporary storage of each calculating unit, and identification surpasses the temporary storage of the storer full load of predetermined full load boundary value.Then, the temporary transient work of interrupting being arranged on the temporary storage calculating unit before that is identified.
By monitoring that whether each temporary storage keeps the full load boundary value that allows the storer full load to provide by maximum, has further prevented because the loss of data that single temporary storage overflows.Principal advantages according to the inventive method is, always temporarily stop to be positioned at the temporary storage calculating unit before that relates to too high storer full load, and other calculating unit can work on by normal mode.Thus, full load on whole data processing equipment is distributed relatively neatly because when the work of a calculating unit is interrupted, the load of the temporary storage of overload sent in short time before being positioned at the calculating unit that stops, not have the temporary storage that transships.Thus, under the condition of the single too high full load of temporary storage, needn't stop whole data processing equipment.
According to a preferred expansion, can implement method of the present invention like this, that is, and for the storer full load of determining temporary storage is set up the full load parameter respectively.The full load parameter is compared with the full load boundary value that provides the maximum memory full load respectively, if and in temporary storage, identified the exceeding of full load boundary value, then produce a pause command that is used for temporarily interrupting the work of calculating unit.Then, described pause command is sent to be arranged on exceed the full load boundary value temporary storage before calculating unit.The principal advantages of this expansion is, can carry out the fully loaded method that is used for the control data treating apparatus under the condition of using relatively still less with the amount (being full load parameter and pause command) of simple structure.
One of this expansion preferred embodiment in, in temporary storage, set up the full load parameter, this full load parameter is sent to a full load control device common to calculating unit, and this full load control device sends described pause command.The essential characteristic of this embodiment is, for the full load of controlling whole data processing equipment only needs single full load control device.For this reason, this full load control device obtains the full load parameter of the current storage full load that provides each temporary storage separately from each temporary storage.Be higher than under the full load parameter condition of full load boundary value, this full load control device produces a pause command, utilizes this order temporarily to stop to be in relevant temporary storage calculating unit before.
Usually, can stop the individual arbitrarily temporary storage calculating unit before that is identified that is positioned at, so that help to alleviate the burden of this temporary storage.But, as particularly preferably being, allow to be set directly at the temporary storage temporary transient interruption of work of calculating unit before that is identified.This embodiment has such advantage, does not have other calculating unit in this case between calculating unit that stops and related temporary storage, and the influence that stops of this calculating unit is only for alleviating the burden of this temporary storage; Undesirable " zero load " of the temporary storage in the middle of promptly can not causing being positioned at.That is to say, only stop just to be set directly at the temporary storage calculating unit before that is identified in this embodiment respectively, and all other calculating units can work on by normal mode.
Another expansion according to method of the present invention keeps predefined time span with the calculating unit that is allowed to temporary transient interruption of work.Can selected calculating unit be stopped a suitably long time period by simple relatively mode and method according to this mode.For being positioned at thereafter temporary storage in this predefined time period later situation of full load consumingly always also, send pause command to calculating unit again, once more it is stopped this length in view of the above regular time.
Another expansion according to method of the present invention also can stop the calculating unit of the temporary transient interruption of work of described permission always, is lower than a release storer full load boundary value up to the storer full load of the temporary storage that is identified.The advantage of this embodiment is, only when temporary storage can receive data updated value and its storer full load and is lower than this release storer full load boundary value, the calculating unit that is stopped just transmitting new data to this temporary storage once more.
Usually, this release storer full load is had and the on all four value of maximum full load boundary value.But, particularly preferably be the full load boundary value that this release storer full load boundary value is lower than.That is, avoided undesirable oscillation effect that stops all the time and continue the operation form effectively to selected calculating unit according to this mode.
Preferably expand according to another of method of the present invention, the storer full load of determining respectively of each temporary storage is compared for the identical full load boundary value of all temporary storages with one.Select a single value by the storer full load that allows for all temporary storages, make and to compare for storer full load and this full load boundary value that each storer is determined relatively simply.
But, in addition also can be alternatively the storer full load and the distinctive full load boundary value of each temporary storage determined respectively of each temporary storage be compared.For example can in this manner, be one and be set to such full load boundary value of temporary storage regulation of the output storage of calculating unit relatively rapidly, this boundary value is lower than the temporary storage that is used for another output storage that is set to slow relatively calculating unit.
Particularly preferably be, the storer full load of each temporary storage can be provided by means of the counting variable that provides by each temporary storage respectively.In this distortion, if temporary storage has such counting variable, its value increases when data value enters storer respectively and reduces when data value is read out, and then this variable just can meet the demands.If this counting variable is illustrated as global variable for data processing equipment, the full load control device such counting variable of accessing without a doubt then, and according to the storer full load of this each temporary storage of identification variables.
In addition, according to the inventive method another preferred embodiment, the storer full load of each temporary storage is shown on the display device of data processing equipment.The current full load state that for example, can show this each temporary storage of data processing equipment for the operator of data processing equipment by means of this demonstration.This point especially has superiority in the stage that this data processing equipment is arranged and designed.
In addition, the inventive method another preferred embodiment in, the pretreatment component that connects in advance by means of at least one calculating unit is set the right of priority of pending data value.That is, can realize according to this right of priority of setting by pretreatment component in this manner, handle sensitive data with preferential (promptly by higher right of priority) fast by each calculating unit, and after sensitive data, just handle unessential data.
Preferred embodiment can be according to of the inventive method at right of priority, pretreatment component leaves pending data value in the different storage zone of a right of priority temporary storage under it in according to its right of priority.In this manner, relatively realized simply that right of priority according to various data is to its mode of classifying in advance; For example, in order further to handle each data, the storage area of data value of wherein depositing higher-priority is than wherein depositing storage area than the data value of low priority more frequently by follow-up calculating unit visit.
In addition, be regarded as particularly preferably being, pretreatment component leaves pending data based its right of priority in the storage area of the right of priority temporary storage that is divided into three storage areas in.By three minutes of right of priority temporary storage can be divided into data value especially simply height, in and the data value of low priority.This is enough fully for the processing in most data processing equipments.
Description of drawings
For further explanation the present invention, shown in the figure:
Fig. 1 illustrates the schematic block diagram of data processing equipment for example,
Fig. 2 shows the another kind of embodiment of data processing equipment equally with schematic block diagram.
Embodiment
Fig. 1 shows data processing equipment 1, and it comprises a plurality of calculating unit 2a, 2b, 2c, temporary storage 3a, 3b, 3c and 3d under 2d and these calculating units 2a to 2d.At this, calculating unit 2a, 2b and 2c and the temporary storage 3a under it, 3b and 3c, and calculating unit 2a, 2b and 2d and the temporary storage 3a under it, 3b and 3d set gradually respectively in turn.Calculating unit 2c and 2d and the temporary storage 3c under it and 3d are then parallel to be provided with.Calculating unit 2a to 2d is connected with the output terminal of full load control device 4 respectively, and temporary storage 3a to 3d then is connected with the input end of full load control device 4.
Wherein, data processing equipment 1 following work: on the input end 5 of data processing equipment 1, read in the data stream of forming by the individual data value.The data value of this data stream for example is measured value, prompting, fault prompting, controlling value and the parameter of automation process.Suppose in the embodiment below that it is the current value of gathering by as the field apparatus of data processing equipment on electric power conductor.Here at first read in for the data value of current value by the first calculating unit 2a.The calculating that calculating unit 2a is scheduled to the data value that reads in for example supposes that calculating unit 2a carries out the filtering of data value.Finish its calculate after each data value after processed be sent to temporary storage 3a under the calculating unit 2a, this temporary storage becomes the output storage of calculating unit 2a thus.At this moment, follow-up calculating unit 2b reads in the data value handled by calculating unit 2a and it is carried out the calculating of self once more from this temporary storage 3a.For example suppose that calculating unit 2b sets up current vector respectively from these data values.After having carried out this calculating, be stored among the temporary storage 3b under calculating unit 2b by the data value after continue handling like this.Calculating unit 2c and calculating unit 2d read in the data value after being handled by continuation like this from temporary storage 3b, and it is carried out their calculating separately once more.For example, calculating unit 2c can carry out statistical study to the data value that reads in, and calculating unit 2d then determines the frequency as electric current variation in the electric power conductor on data value basis.Calculating unit 2c and calculating unit 2d leave its result of calculation respectively among another temporary storage 3c and the 3d.The current value of handling like this can be exported by the output terminal 6 and 7 of data processing equipment 1 from these temporary storages, and for example be transferred to other data processing equipment, storage medium or computing machine with display device.
Shown in Figure 1, have calculating unit 2a, 2b, the structure of the data processing equipment 1 of 2c and 2d only is to be investigated as the exemplary possibility of data processing equipment.Nature also it is contemplated that any other configuration of this data processing equipment within the scope of the invention.
Implement the difference of complexity of calculation according to the efficient of each calculating unit 2a to 2d or by these calculating units 2a to 2d, can be comparatively fast or handle each data value more slowly.For example, suppose calculating unit 2c and other calculating unit 2a, 2b compares the time that need grow relatively and is used for its calculating with 2d.But, if for example calculating unit 2b works sooner than calculating unit 2c, then the data value of depositing in temporary storage 3b is than many from the data value wherein read.Therefore, the quantity of the data value that temporary storage 3b is stored and storer full load thus increased along with the time, no longer were large enough to hold the data value of all inputs up to the storage capacity of temporary storage 3b after the predictable time.Therefore, may be owing to overflowing of temporary storage 3b caused loss of data.
But, be provided with full load control device 4 for this situation, it is inquired about the storer of each temporary storage 3a to 3d is fully loaded continuously.For example, this can followingly realize that promptly, each temporary storage 3a to 3d has a counting variable respectively, in these counting variables the current quantity of the data value stored is represented as the difference between the data value of input and the data value that is read out.Can produce a full load parameter that provides the storer full load thus, this parameter for example provides the full load of each temporary storage 3a to 3d according to the form of the number percent of this whole storage capacity under understanding corresponding to the condition of the whole storage capacity of temporary storage 3a to 3d.If the individual count variable is illustrated as global variable (promptly can being read by all parts of data processing equipment), full load control device this variable of accessing without a doubt then, and determine the full load parameter of each temporary storage 3a to 3d thus.Then, full load control device 4 compares the full load boundary value of determined full load parameter with the storer full load of the maximum permission that provides each temporary storage 3a to 3d respectively.Such full load boundary value can be got same value (for example separately 70% of storage capacity) for all temporary storage 3a to 3d.But, also can determine self full load boundary value of (specific) for each of temporary storage 3a to 3d.The full load boundary value for example can be mated with the computing velocity of each calculating unit 2a to 2d respectively neatly in this manner.
If one (being temporary storage 3b in the example of hypothesis) in data processing equipment 1 full load control device 4 discovery temporary storage 3a to 3d in service overflows (promptly, the full load parameter of determined temporary storage 3b has surpassed the full load boundary value that is provided with for this temporary storage 3b), then full load control device 4 provides pause command as the calculating unit (being one of calculating unit 2a or 2b under described situation) of reaction before being positioned at identified temporary storage 3b to this, temporarily interrupt the work of this calculating unit thus, promptly stop its computational activity.
If temporarily stop the directly calculating unit (is calculating unit 2b at this) before related temporary storage 3b by pause command in this case, then can control whole data processing equipment 1 especially neatly.If temporarily stop calculating unit 2b, then do not continue output data value to temporary storage 3b from this calculating unit.But, because calculating unit 2c sense data from temporary storage 3b still, the therefore data value of in temporary storage 3b, being stored and its storer full load decline thus.
The calculating unit 2b that stops can be stopped a preset time length, for example 2 milliseconds, automatically by full load control device 4 " release " once more, promptly obtain its computing power once more then.At this, select this predetermined time out length like this, promptly, by regaining computing power before depositing new data value once more in temporary storage 3b, the calculating unit 2c by subsequently can read certain data value from related temporary storage 3b at calculating unit 2b.If the storer full load of temporary storage 3b was higher than the full load boundary value or reaches this full load boundary value once more after the short time always, then provide the pause command of renewal to selected calculating unit 2b.
Perhaps, also can make full load control device 4 continue to monitor the storer full load parameter of relevant temporary storage 3b, and and if only if this storer full load parameter be reduced to when being lower than predetermined release storer full load boundary value just once more with its release.For fear of vibration, promptly calculating unit 2b is repeatedly stopped and being discharged, and meaningfully will discharge storer full load boundary value at this and be chosen as the certain distance of full load boundary value that is lower than temporary storage 3b.For example, if the full load boundary value of temporary storage 3b is 70% (promptly, full load control device 4 identifies when " filling rate " that surpasses 70%, the full load parameter of temporary storage 3b surpasses the full load boundary value and sends pause command to for example calculating unit 2b), then for example will discharge storer full load boundary value (that is, allowing calculating unit 2b to regain the occupied state of the temporary storage 3b of its evaluation work) and be chosen as 50%.
In addition, information about the storer full load of each temporary storage 3a to 3d can be offered a display device that in Fig. 1, does not illustrate of data processing equipment 1 by full load control device 4, on this display device, show then, and make the user of data processing equipment 1 to obtain thus.This point especially has advantage during stage of putting into operation of data processing equipment 1 or planning stage.In addition, the also characteristic of observed data treating apparatus 1 during occurring " data wave " (that is, in time near the mass data value that occurs) on its input end 5 thus.
Figure 2 illustrates another embodiment of data processing equipment 1; Wherein, the parts corresponding to Fig. 1 have utilized same Reference numeral to indicate.
The difference of Fig. 2 and Fig. 1 is, is provided with a pretreatment component 8 between the input end of the input end 5 of data processing equipment 1 and calculating unit 2a.Can give right of priority simply to the data value that on the input end 5 of data processing equipment 1, occurs by means of this pretreatment component 8.The right of priority that each data value is set is in order to allow specific data value (having higher right of priority) preferentially further to be handled by calculating unit 2a to 2d, just and only can obtain handling after the higher priority data value is handled than the data value of low priority.Can make important or responsive data be handled and be sent to display device for example as far as possible apace by data processing equipment by this way or be used to produce the device of fault-signal.
For this reason, pretreatment component 8 has recognition device 9, and the latter gives right of priority for each data value of the data stream of appearance on the input end 5.For example, this can followingly carry out: recognition device 9 identification special data type, and for example give corresponding right of priority respectively with it according to predetermined right of priority inventory.For example, recognition device 9 can be provided with a low right of priority according to the right of priority inventory with the electric current present value, and the fault prompting that occurs is provided with a high right of priority according to the right of priority inventory.But, also can be that the data value that occurs has been set up a right of priority sign, identify to each data value to give which kind of right of priority respectively according to this landmark identification device 9.
Corresponding to the right of priority of giving each data value respectively, leave these data values the different storage zone 10a of pretreatment component 8 in, among 10b and the 10c by recognition device 9; For example, the data value that will have higher-priority leaves among the storage area 10a of pretreatment component 8, and the data value that will have than low priority leaves among the storage area 10c.In this case, storage area 10b is used for the data value of intermediate priority.For example, the electric current present value is set to low priority by recognition device 9, therefore be stored in the storage area 10c of pretreatment component 8, and the fault that occurs prompting is set to high priority and leaves among the storage area 10a of pretreatment component 8.
Designing and calculating parts 2a like this, make its storage area 10c that correspondingly compares low priority visit the storage area 10a of high priority more frequently, and the data value of storing in storage area 10a is earlier further handled than the data value of storing in the low storage area 10c of right of priority.
Perhaps, for example also can, the prompting of a weak point appears sending to calculating unit 2a respectively after the data value in storage area 10a, calculating unit 2a reads stored data value from this storage area in view of the above.
As for the replenishing of the embodiment shown in Fig. 2, before some or all remaining calculating unit 2b to 2d, other pretreatment component that is similar to pretreatment component 8 is set.In this case, then can on each position of data processing equipment 1, check, whether have data value, so that allow this data value subsequently accordingly comparatively fast by whole data processing equipment 1 with higher-priority.