WO1998020425A2 - A method for determining the number of accesses granted during wcl and apparatus - Google Patents
A method for determining the number of accesses granted during wcl and apparatus Download PDFInfo
- Publication number
- WO1998020425A2 WO1998020425A2 PCT/EP1997/006105 EP9706105W WO9820425A2 WO 1998020425 A2 WO1998020425 A2 WO 1998020425A2 EP 9706105 W EP9706105 W EP 9706105W WO 9820425 A2 WO9820425 A2 WO 9820425A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- priorities
- priority
- channels
- requesting
- requesting channels
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
Definitions
- This invention generally relates to the field of queuing systems, and more particularly to the determination of worst case latency (WCL).
- WCL worst case latency
- a queuing system there are typically a number of channels which can access system resources. As the system resources are shared, only one channel at a time can be granted access. If there are multiple contending access requests of different channels, a pre-defined schematics is employed in prior art queuing systems to select one of the requesting channels for granting of the system resources. After grant the selected requesting channel is the master of the system resources during a certain time slot which can be of fixed or variable length. After the time slot another requesting channel is selected from the waiting queue for grant according to the schematics. Such a schematics typically is implemented in an bus arbiter or scheduler.
- Such queuing systems can be found in multi processor systems where a plurality of processors is coupled to the same bus which can only service one processor at a time.
- Another field of application is in the field of micro controllers.
- a micro controller has a number of input/output channels which can access the common system resources of the micro controller to perform different kinds of calculations and transformations according to the needs of the technical environment.
- Micro controllers are used in a wide field of applications, for example in automobile electronics, control electronics of household appliances, control systems of chemical factories as well as in mobile telephone systems.
- the channels connected to the micro controller serve to interact with the real world technical environment.
- each channel has to have a minimum band width to ensure proper operation of the technical system.
- WCL worst case latency
- the inventions allows to determine a number of access granted to requesting channels during WCL of a selected channel of the system. This number of access can be used for different purposes during the system design. In particular, the duration of the WCL itself can be determined based on this number of access according to the invention.
- the invention is particularly advantageous in that it allows to carry out the calculation of the worst case service latency automatically by means of a computer. This allows to investigate a large number of different timing scenarios in order to optimize the queuing system for the particular needs of the technical environment.
- the method of the invention yields accurate results so that it is not necessary to add security margins in the system to guarantee minimal band width for all channels.
- an apparatus which is designed accordingly features improved utilization of the system resources and thereby allows more accurate control or faster operating speed of the overall technical system according to it's field of use.
- FIG.1 shows a schematic block diagram of an apparatus which has a queuing system in accordance with the principles of the invention
- FIG. 2 shows an ordered list of priorities which is used in the scheduler of the apparatus of FIG. 1 ;
- FIG. 3 shows two sequences of time slots to determine a worst time slot for an access request
- FIG. 4 - FIG. 8 show sequences of time slots and the associated number of time slots during WCL;
- FIG. 9 shows a table which lists the amounts of slots in WCL for different amounts of active high priority channels for the case of high and middle priority requesting channels;
- FIG. 10 shows a flow chart of one embodiment of the method for determining a number of accesses granted during WCL
- FIG. 11 shows a mathematical model as an alternative to carrying out the method of FIG. 10;
- FIG. 12 shows mathematical model similar to the mathematical model of FIG. 11 to model the information contained in the table of FIG. 13;
- FIG. 13 shows a table similar to the table of FIG. 9 for the case that all priorities are present
- FIG. 14 shows a table similar to the table of FIG. 13 for the case of the WCL of the middle-priority channel as well as the associated mathematical model;
- FIG. 15 shows a table similar to the table of FIG. 14 for the case of the WCL of the low- priority channel as well as the associated mathematical model;
- FIG. 16 shows the assignment of channels to functions and their corresponding priorities
- FIG. 17 shows two examples of function state flow charts
- FIG. 18 shows the calculation of the WCL based on state execution times of the functions
- FIG. 19 is a flow chart illustrating one embodiment of the invention to determine the WCL.
- FIG. 1 shows automobile electronics 100 which is built in an automobile 102.
- FIG. 1 shows cam shaft 104, spark plugs 106 and fuel injector 108 of the automobile 102.
- spark plugs 106 and fuel injector 108 of the automobile 102.
- fuel injector 108 For simplicity the other parts of the automobile 102 are not shown in FIG. 1.
- Automobile electronics 100 comprises a queuing system designed by employing the principles of the invention.
- the automobile electronics 100 is realized by means of a micro controller 110.
- the micro controller 110 comprises an input array 112 as well as a scheduler 114 and an execution unit 116.
- the input array 112 has a dedicated input for each channel CH0-CH15 of the micro controller 110.
- the input for channel CH0 is connected to the cam shaft 104 via bi-directional signal line 118.
- the input for channel CHI is also connected to the cam shaft 104 via signal line 119.
- Signal lines 121 and 122 connect spark plugs 106 to the inputs for channels CH5 and CH6 whereas lines 124, 125 connect the fuel injector 108 to inputs for channels CH14 and CH15, respectively.
- the groups of signal lines 120 and 123 connect the inputs for channels CH2, CH3, CH4 and CH7-CH13, respectively to other devices of the automobile 102 which are not shown in the drawing.
- Each of the signal lines 118 to 125 can carry measurement and/or control signals for the device of the automobile 102 to which it is connected.
- data is transmitted to the respective inputs of the micro controller 110 which is representative of the operation of the cam shaft 104. This information is required for the control of the spark plugs 106 and the fuel injector 108.
- the input array 112 is coupled to the scheduler 114 via uni-directional signal line 126 whereas the scheduler 114 is coupled to the execution unit 116 via unidirectional signal line 128.
- the execution unit 1 16 is coupled to the input array 112 via the bi-directional data bus 130.
- Scheduler 1 14 comprises storage devices 132 and 134 which are interconnected by bidirectional data bus 136.
- each of the inputs for channels CH0-CH15 can have one priority of a set of three priorities.
- the set of priorities comprises only the three priorities high, middle and low.
- the ordered list of priorities stored in storage device 132 consists of a sequence of high "H", middle "M” and low “L” priorities.
- the scheduler 114 has the task to grant access to the execution unit 116 via the bidirectional data bus 130 for one of the requesting channels access. This is done according to the ordered list of priorities stored in storage device 132 and according to the priority passing rules 136, 137, 138 which are stored in the storage device 134:
- the scheduler grants a high priority channel access to the execution unit 116 since the first element in the ordered list of priorities is "H". This grant is valid during a certain time slot. For the consecutive time slot a middle priority channel is granted access to the execution unit 116 since the 2nd element in the ordered list of priorities is "M”. Likewise further accesses are granted in the order of high, low ("L"), high, middle and high priority channels. With the last granting for a high priority channel the end of the ordered list is reached so that the control returns back to the beginning of the ordered list. As a consequence the ordered list is stepped through repeatedly.
- the scheduler When the scheduler steps through its ordered list of priorities, there are situations when the scheduler can grant access to a channel having a certain priority but there is no requesting channel having this priority. For example, if the next requesting channel to be granted access is a low priority channel according to the ordered list of priorities, but at that time there is no access request from a low priority channel the problem occurs to which one of the other high and middle priority channels access can be granted.
- This problem is solved by applying the priority passing rule 138: According to the priority passing rule 138 the priority passes from low to high and from high to middle priority. This means that in the first step the low priority in the ordered list of priorities is replaced by a high priority. If at the time of the low priority time slot in the ordered list of priorities there is no requesting channel having a low priority but one or more channels having a high priority the scheduler grants access to the execution unit 116 to one of the requesting high priority channels.
- the scheduler grants access to one of the requesting middle priority channels.
- the priority passing rule 137 applies if at the time of the middle priority time slot there is no corresponding request from a middle priority channel. In this case the transition is from middle to high priority and then - if also no request from a high priority channel is present - to low priority.
- rule 136 applies for high priority time slots for which the transition is from high to middle and from middle to low priority.
- This concept of priority passing as such is also described in "Modular micro controller family TPU Time Processor Unit", Reference Manual , published by MOTOROLA, INC . , especially on page 3-3.
- the worst case band width directly corresponds to worst case service latency (WCL).
- WCL is the longest time span which can elapse between a request of a channel and the execution of the corresponding state of the function belonging to this channel.
- the concept of WCL as such has already been contemplated on page C-2 of the above referenced manual.
- the actual WCL of each channel must not surpass a predefined maximal WCL which corresponds to the minimal band width required for the channel to comply with the needs of its associated device such as spark plugs 106 or fuel injector 108. Therefore one embodiment of the method of the invention is used to determine the actual WCL under different operating conditions.
- the system design has to be changed accordingly. This means that a middle priority channel has to be redefinded to be a high priority channel or that additional processing power has to be added. Since the actual WCL can be determined accurately already during the design of the automobile electronics 100 the proper assignments of channels to the required minimal priorities can be made so that no system resources are wasted for too high priority assignments.
- FIG. 2 shows the ordered list of priorities 132.1 which is stored in the storage device 132 shown in FIG. 1. If the priority passing rule 138 is applied according to the example considered above with respect to FIG. 1 the ordered list of priorities 132.1 is altered which yields the altered list of priorities 132.2.
- the altered list of priorities 132.2 corresponds to a case when only requesting channels belonging to a sub-set of the set of priorities high, middle, low is present. In the case considered here this sub-set consists of requesting channels of the high and middle priority type. The altered list of priorities 132.2 applies for such a case where no low priority channels issue access requests to the scheduler 114.
- the worst time slot is the time slot for which the largest number of accesses is granted during WCL to other requesting channels.
- FIG. 3 shows how such a worst time slot can be found.
- the aim is to identify the worst time slot for a high priority channel.
- a worst time slot for a high priority channel to raise its access request can only be a time slot which precedes a time slot having another priority.
- the time slots which could be worst time slots for a high priority channel can only be the time slots denoted as Tl and T2 in the sequence of priorities 132.2 of FIG. 2 which both precede a middle priority time slot.
- the sequence S 1 of FIG. 3 shows the resulting list of priorities for the scheduler if the time slot Tl is considered.
- the rest of the list of priorities M-H-H-H-M-H of the list of priorities 132.2 is stepped through during time interval 300 as depicted in FIG. 3.
- the scheduler reaches the end of the list of priorities 132.2 it goes back to the beginning so that the same list 132.2 is stepped through repeatedly until an empty high priority slot occurs which can be assigned to the requesting high priority channel.
- the same applies analogously to the sequence S2 which corresponds to the time slot T2 in the sequence 132.2. If the time slot T2 is the time slot in which the high priority channel raises its access request the time interval 302 results until the scheduler reaches the end of the list 132.2.
- the sequence S2 is the worst sequence for a high priority access request since the relative number of high and middle priority time slots is the lowest.
- time slot T2 in the list 132.2 is the worst time slot in terms of WCL for an access request of the selected high priority channel.
- FIG. 4 shows the sequence S2 for the case considered here. After the high priority channel CHI raised its access request in the time slot denoted HI at the time T2 (cf. Fig. 2) access is granted to the middle priority channel CH0 in the time slot M0 and then to the requesting high priority channel CHI in the consecutive time slot HI according to the sequence S2.
- M-SLOTS the number of middle priority time slots during the WCL which is denoted M-SLOTS in the following equals one and the number of high priority slots during WCL which is denoted H-SLOTS in the following also equals 1.
- CH2 an additional high priority channel
- H-SLOTS the number of high priority slots during WCL which is denoted H-SLOTS in the following also equals 1.
- FIG. 5 shows the resulting sequence S2 for this case. In this case M-SLOTS equals 1 and H-SLOTS equals 2.
- FIG. 9 shows a table containing in the left most column the amount of enabled - or in other words active - high priority channels; this amount is denoted NH.
- the corresponding number H-SLOTS and M-SLOTS is indicated as well as the sum of H-SLOTS and M-SLOTS which is denoted S.
- FIG. 10 shows a flow chart of one embodiment of a method for determining a number of accesses granted to requesting channels in accordance with the invention.
- step 1 an ordered list of priorities as well as the corresponding priority passing rules are inputted. Further the number of requesting channels for each priority is inputted. In the case of three priorities this is the number of the requesting high priority channels NH, the number of middle priority channels NM and the number of low priority channels NL.
- step 2 it is determined whether there is no requesting channel for one of the priorities. In the case of three priorities this means that it is decided whether one of the numbers NH, NM or NL equals 0. If this is the case a sub-set of priorities is determined in step 3 which contains only those priorities for which there are requesting channels.
- step 4 the ordered list of priorities is altered according to the priority passing rules.
- step 5 the worst time slot in the ordered list determined in step 4 is identified for a selected one of the requesting channels for which the WCL is to be calculated. If the decision in step 2 is "NO" the control directly goes to step 5 whereby steps 3 and 4 are bypassed.
- step 6 the amount of accesses granted to other channels after the worst time slot until the selected requesting channel can be granted access is determined like explained with reference to the foregoing examples.
- FIG. 11 shows the formulas 1 to 5 as well as flow chart 11 which represent a mathematical model of the steps of FIG. 10.
- input parameter only the number of high priority channels NH is required if the ordered list of priorities 132.1 and the corresponding priority passing rules 136, 137, 138 are valid.
- the formulas 1 to 5 as well as flow chart 11 model the process of finding H-SLOTS and M-SLOTS as explained with respect to FIG. 4 to 8.
- the % symbol in formula 5 means "the rest of division” - in this case the rest of the division of NH by to 5.
- the parameter M- ADD in formula 3 is found by making usage of the flow chart 11.
- the parameter M-ADD also equals 0 whereas in the alternative case the parameter M-ADD equals the integer part of REST-1 divided by 2 plus 1.
- the formulas 6, 7, 8 and 9 as indicated in FIG. 11 can be employed.
- the parameter L-SLOTS which is the number of access granted to requesting channel having a low priority during WCL of the selected channel is always zero since in the case considered here there are no active low priority channels.
- FIG. 12 shows formulas 10, 11, 12, and 14 as well as flow diagram 12.
- the formulas 10 to 14 together with flow diagram 12 represent a mathematical model of the method for determining a number of accesses granted to requesting channels during WCL for the case that there are requesting channels of all priorities - high, middle and low priorities.
- the number of accesses granted is calculated for the WCL of a high priority channel.
- the parameter REST which is calculated according to formula 14 serves as a basis to determine M-SLOTS and L-SLOTS. If the value of the parameter REST equals 3 then the formulas 12.1 are applied to modify the initial values for M-SLOTS and L-SLOTS as determined by formulas 12 and 13, respectively. If the number of requesting high priority channels NH is given this is sufficient to calculate both M-SLOTS and L-SLOTS as well as REST according to formulas 12, 13 and 14, respectively. Only if REST equals 3 both the value of M-SLOTS and L-SLOTS is modified according to formulas 12.1. If the formulas 12.1 are applied the initial value of M-SLOTS as determined by formula 12 is incremented by 2 and the value of L-SLOTS as determined by formula 13 is incremented by 1.
- formulas 12.3 require as an input whether the middle priority requesting channels or the low priority requesting channels have a state with the longest state execution time: If any of the states of any of the requesting middle priority channels is longer than any other state of the low priority requesting channels this means that only the value of M-SLOTS is incremented by one and that L-SLOTS remains unchanged with respect to formula 13. In the opposite case the value of M-SLOTS remains unchanged with respect to formula 12 and only the value of L- SLOTS is incremented by one.
- H-SLOTS is determined by formula 11 and always equals the number of the requesting high priority channels NH. It is assumed that all the other high priority channels are serviced before the selected high priority channel for which it's WCL is to be determined is granted access. The same principle also applies for the determination of the WCL for other priorities.
- FIG. 13 shows a table similar to the table shown in FIG. 9 for the case to which the mathematical model of FIG. 12 applies.
- the table of FIG. 13 can be found by evaluating the mathematical model of FIG. 12 for different values for the amount of requesting high priority channels NH.
- the table shown in FIG. 13 can also be found according to the method as explained with reference to FIG. 10.
- the ordered list of priorities 132.1 as shown in FIG. 2 remains unchanged. It is therefore also not necessary to determine a sub-set of priorities like in step 3 of FIG. 10.
- FIG. 13 shows alternative values for M-SLOTS and L- SLOTS which correspond to the two cases of formulas 12.3 of FIG. 12.
- a table as shown in FIG. 13 can be established by applying an embodiment of the invention according to FIG. 10.
- the information contained in such a table can then be represented by a mathematical model as shown in FIG. 12.
- FIG. 14 shows a table similar to the table of FIG. 13 for the same case that there are requesting channels of all priorities but for determining the number of accesses granted during WCL of a selected middle priority channel.
- the corresponding mathematical model as represented by formulas 15, 16, 17 and 18 only the amount of requesting middle priority channels NM is required as an input parameter.
- FIG. 15 which shows a corresponding table for the number of accesses granted to requesting channels during WCL of a low priority channel. Again only the amount of requesting low priority channels NL is required as an input parameter for evaluating the mathematical model as represented by formulas 19, 20, 21 and 22.
- FIG. 1 are requesting channels and all other channels are disabled.
- a channel is considered a requesting channel if at least from time to time the channel wants to access the shared system resources, i.e. the execution unit 116.
- each requesting channel has only one function assigned thereto.
- the channel CHO has the function 1 and is a high priority channel.
- the corresponding information for the other requesting channels CHI, CH5, CH6 and CH 15 is shown in the table of FIG. 16.
- FIG. 17 shows a state diagram for function 1 and function 2.
- a state of one of the function is defined to be a specific number of micro constructions that can not be interrupted when executed by the execution unit 116 shown in FIG. 1.
- Function 1 comprises the three states S I , S2 and S3.
- the relative state execution time of state SI is 16, of state S2 80 and of state S3 94.
- the function 2 comprises 4 states SI , S2, S3 and S4 which have relative state execution times of 100, 15, 200 and 10, respectively. If the user wants to determine the length of the WCL of channel CH5 this corresponds to the case as explained with reference to FIG. 15 since there are requesting channels of all priorities and channel CH5 is a low priority channel.
- an array is generated. For channel CH5 this is a one dimensional array since there is only one low priority requesting channel.
- the array is sorted from the left to the right so that the left most element has the longest state execution time which is 94 according to the diagram of function 1 shown in FIG. 17.
- the following two array elements are 80 and 16.
- one dimension is added to the array for each additional channel. Again the array elements of other dimensions are sorted in descending order from the left to the right. The left most elements in the array for channel CH5 have a pointer.
- the array element which has the pointer is selected to be assigned to the one L-SLOT because the left most element is the state with the longest execution time. If more than one L-SLOT would be present then the pointer would be advanced one element to the right so that the next element would be selected as the element having the largest state execution time from all elements in the array having a pointer.
- array 18.3 shown in FIG. 18. This array comprises four dimensions in the vertical direction: one for each of the channels CHO, CHI, CH6 and CHI 5.
- the array comprises as many array elements as there are states in the function of a channel. Each array element is representative of the state execution time of one specific state.
- the array elements are sorted for each channel in descending order from the left to the right. Initially the left most elements have a pointer P0, PI , P6 and PI 5, respectively, assigned thereto. It is possible to generate only one array which is representative of all the high and middle priority channels because of the applicable priority passing rules 136 and 137 as shown in FIG. 1.
- priority passing rule 136 applies so that access is granted to a middle priority channel which might request access at that time.
- the priority passing rules 136 and 137 would not allow the interchangeability of high and middle priority time slots it would be necessary to generate a separate array for each priority.
- the corresponding arrays 18.1 and 18.2 for the high priority and middle priority channels, respectively, are also shown in FIG. 18.
- the array elements are arranged and sorted according to the same principles as explained with reference to the array 18.3.
- the difference between the arrays 18.1, 18.2 with respect to array 18.3 is that each of the arrays 18.1 and 18.2 only contains state execution times for channels having the same priority.
- the left most array elements have pointers HO, H6 and Ml, M15 assigned thereto.
- the array element having the greatest value of all array elements having a pointer assigned thereto is selected and the corresponding pointer is moved one element to the right.
- the first array element can be either the left most element of the row in the array of channel CH6 or of channel CHI 5 since both respective state execution times equal 200.
- the pointer PI 5 is moved one element to the right. In the next step another array element is to be selected according to the same criteria. Since the left most element of channel CH6 is representative of the greatest state execution time of all array elements of array 18.3 which have a pointer assigned thereto this is the next element to be selected. Likewise, the pointer P6 is moved one element to the right. The moved pointers are symbolized by the dashed arrows in FIG. 18.
- the next array elements which are selected according to these rules are the array elements being representative of the state execution time 100 of the channels CH6 and CHI 5. Again the pointers P6 and PI 5 are moved one element to the right. As a consequence the pointers P6 and P15 point to array elements having a state execution time of 15. As a consequence in the next two steps the left most array elements of the channels CHO and CHI are selected and the corresponding pointers P0 and PI are moved one element to the left.
- the WCL is calculated by summing up the selected array elements from the array 18.3 and also from the array of the low priority channel CH5 which is not shown in the drawing.
- FIG. 19 is a flow chart of one embodiment of the method according to the invention to determine the WCL of a selected requesting channel.
- an ordered list of priorities similar to the ordered list 132.1 of FIG. 1 is required as well as a set of priority passing rules.
- the parameter S as well as the values of H-SLOTS, M-SLOTS and L-SLOTS can be determined by any of the above explained methods, i.e. either by using a table or evaluating a-mathematical model.
- step 200 the list of state execution times for all requesting channels are inputted.
- step 210 a sub-set of priorities is determined which comprises only priorities of requesting channels. If there is at least one requesting channel of each priority then the sub-set determined in step 210 is identical to the complete set of priorities.
- step 220 an array is generated for each priority of the sub-set of priorities determined in step 210.
- Each row in the array is representative of the state execution times of requesting channel. If there is interchangeability between the priorities of the requesting channels according to the priority passing rules the generation of array for the interchangeble channels is sufficient. In any case separate arrays for channels having the priority of the selected channel for which the WCL is to be determined and the other requesting channels are required.
- step 230 the state execution times in each row are sorted and pointers are assigned in step 240 to the left most element in each row so that arrays similar to arrays 18.1 and 18.2 or 18.3 of FIG. 18 result.
- step 250 in a selected array the element with the greatest state execution time is selected and added to the WCL.
- the corresponding pointer is moved one element to the right and another array element is selected until a number of elements are selected corresponding to the respective number of slots of that priority.
- H-SLOTS array elements For example if the array for high priority channels is selected then a number of H-SLOTS array elements has to be selected from this array. This is done for all arrays including the array having the priority of the selected requesting channel for which the WCL is to be calculated. If the priority passing rules allow the interchangeability of priorities which do not equal the priority of the selected channel then the respective arrays can be joined in order to facilitate the calculation and produce a more accurate result.
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/297,854 US6580719B1 (en) | 1996-11-06 | 1997-11-05 | Method for determining the number of accesses granted during WCL and apparatus |
EP97948884A EP0939928B1 (en) | 1996-11-06 | 1997-11-05 | A method for determining the number of accesses granted during wcl and apparatus |
DE69724270T DE69724270T2 (en) | 1996-11-06 | 1997-11-05 | METHOD AND DEVICE FOR DETERMINING THE NUMBER OF APPROVED ACCESSES DURING THE LATENCY OF THE WORST CASE |
JP10521057A JP2000509858A (en) | 1996-11-06 | 1997-11-05 | Method and apparatus for determining the number of accesses allowed during WCL |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU96122056 | 1996-11-06 | ||
RU96122056/09A RU96122056A (en) | 1996-11-06 | METHOD AND DEVICE FOR DETERMINING THE NUMBER OF SERVICES PROVIDED DURING THE MAXIMUM WAITING TIME |
Publications (2)
Publication Number | Publication Date |
---|---|
WO1998020425A2 true WO1998020425A2 (en) | 1998-05-14 |
WO1998020425A3 WO1998020425A3 (en) | 1998-07-23 |
Family
ID=20187333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP1997/006105 WO1998020425A2 (en) | 1996-11-06 | 1997-11-05 | A method for determining the number of accesses granted during wcl and apparatus |
Country Status (5)
Country | Link |
---|---|
US (1) | US6580719B1 (en) |
EP (1) | EP0939928B1 (en) |
JP (1) | JP2000509858A (en) |
DE (1) | DE69724270T2 (en) |
WO (1) | WO1998020425A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002529850A (en) * | 1998-11-09 | 2002-09-10 | インテル コーポレイション | Scheduling requests in the system |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9907445D0 (en) * | 1999-03-31 | 1999-05-26 | British Telecomm | Packet messaging method and apparatus |
US6732196B2 (en) * | 2002-02-26 | 2004-05-04 | International Business Machines Corporation | Allowing slots belonging to a second slot category to receive I/O access requests belonging to a first and a second access request categories in a round robin fashion |
US7814052B2 (en) * | 2006-11-03 | 2010-10-12 | Salesforce.Com, Inc. | Implementing formulas for custom fields in an on-demand database |
JP4530015B2 (en) * | 2007-09-25 | 2010-08-25 | 株式会社デンソー | Engine control device |
US7912623B2 (en) * | 2007-09-25 | 2011-03-22 | Denso Corporation | Engine control system designed to manage schedule of engine control tasks |
JP4544284B2 (en) * | 2007-09-25 | 2010-09-15 | 株式会社デンソー | Engine control device |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5265257A (en) * | 1990-06-22 | 1993-11-23 | Digital Equipment Corporation | Fast arbiter having easy scaling for large numbers of requesters, large numbers of resource types with multiple instances of each type, and selectable queuing disciplines |
US5311513A (en) * | 1992-09-10 | 1994-05-10 | International Business Machines Corp. | Rate-based congestion control in packet communications networks |
US5528766A (en) * | 1994-03-24 | 1996-06-18 | Hewlett-Packard Company | Multiple arbitration scheme |
US5434848A (en) * | 1994-07-28 | 1995-07-18 | International Business Machines Corporation | Traffic management in packet communications networks |
-
1997
- 1997-11-05 JP JP10521057A patent/JP2000509858A/en active Pending
- 1997-11-05 DE DE69724270T patent/DE69724270T2/en not_active Expired - Fee Related
- 1997-11-05 EP EP97948884A patent/EP0939928B1/en not_active Expired - Lifetime
- 1997-11-05 WO PCT/EP1997/006105 patent/WO1998020425A2/en active IP Right Grant
- 1997-11-05 US US09/297,854 patent/US6580719B1/en not_active Expired - Lifetime
Non-Patent Citations (2)
Title |
---|
"Time clustered access for maximizing bandwidth utilization via windows of asynchronous arrival" IBM TECHNICAL DISCLOSURE BULLETIN, vol. 37, no. 8, August 1994, NEW YORK, US, pages 201-214, XP000456391 * |
TAMIR ET AL: "Symmetric crossbar arbiters for VLSI communication switches" IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, vol. 4, no. 1, January 1993, US, pages 13-27, XP000381322 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002529850A (en) * | 1998-11-09 | 2002-09-10 | インテル コーポレイション | Scheduling requests in the system |
JP2010044784A (en) * | 1998-11-09 | 2010-02-25 | Intel Corp | Scheduling request in system |
Also Published As
Publication number | Publication date |
---|---|
DE69724270D1 (en) | 2003-09-25 |
EP0939928A2 (en) | 1999-09-08 |
WO1998020425A3 (en) | 1998-07-23 |
US6580719B1 (en) | 2003-06-17 |
EP0939928B1 (en) | 2003-08-20 |
DE69724270T2 (en) | 2004-02-19 |
JP2000509858A (en) | 2000-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6138200A (en) | System for allocating bus bandwidth by assigning priority for each bus duration time slot to application using bus frame and bus duration | |
US5367678A (en) | Multiprocessor system having statically determining resource allocation schedule at compile time and the using of static schedule with processor signals to control the execution time dynamically | |
US5790851A (en) | Method of sequencing lock call requests to an O/S to avoid spinlock contention within a multi-processor environment | |
US5729702A (en) | Multi-level round robin arbitration system | |
CN1327370C (en) | Resource management device | |
US6804738B2 (en) | Method and apparatus for scheduling a resource to meet quality-of-service restrictions | |
US6877053B2 (en) | High performance communication architecture for circuit designs using probabilistic allocation of resources | |
KR100252752B1 (en) | Multi stage control bus arbitration apparatus | |
JPH0740250B2 (en) | A device that controls access to the data bus | |
JP3863431B2 (en) | Method and apparatus for identifier relevance testing | |
EP1439467B1 (en) | System and method for allocating a plurality of sources to a plurality of channels | |
EP0939928B1 (en) | A method for determining the number of accesses granted during wcl and apparatus | |
US5202966A (en) | Centralized bus arbitration circuit | |
US6782441B1 (en) | Arbitration method and apparatus | |
US6321309B1 (en) | Memory arbitration scheme with circular sequence register | |
EP1208435B1 (en) | Shared resource arbitration method and apparatus | |
Nelson et al. | Approximating the mean time in system in a multiple-server queue that uses threshold scheduling | |
KR950012506B1 (en) | Multi channel bus arbitrator | |
JP3407200B2 (en) | Arbitration apparatus and method | |
Raynor et al. | Minimization of supervisor conflict for multiprocessor computer systems | |
IE68441B1 (en) | Computer priority system | |
JP4170506B2 (en) | Arbitration circuit and method | |
JPH02304615A (en) | Allocating system for parallel disk control buffer | |
JPH03108051A (en) | Method for mediating bus in multiprocessor system | |
RU96122056A (en) | METHOD AND DEVICE FOR DETERMINING THE NUMBER OF SERVICES PROVIDED DURING THE MAXIMUM WAITING TIME |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): CN JP KR US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
AK | Designated states |
Kind code of ref document: A3 Designated state(s): CN JP KR US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 1997948884 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref country code: JP Ref document number: 1998 521057 Kind code of ref document: A Format of ref document f/p: F |
|
WWE | Wipo information: entry into national phase |
Ref document number: 09297854 Country of ref document: US |
|
WWP | Wipo information: published in national office |
Ref document number: 1997948884 Country of ref document: EP |
|
WWG | Wipo information: grant in national office |
Ref document number: 1997948884 Country of ref document: EP |