CN105634983A - Queue dispatching method and device - Google Patents

Queue dispatching method and device Download PDF

Info

Publication number
CN105634983A
CN105634983A CN201410606263.7A CN201410606263A CN105634983A CN 105634983 A CN105634983 A CN 105634983A CN 201410606263 A CN201410606263 A CN 201410606263A CN 105634983 A CN105634983 A CN 105634983A
Authority
CN
China
Prior art keywords
queue
scheduling
status information
scheduling operation
dispatching
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201410606263.7A
Other languages
Chinese (zh)
Inventor
何波
宋军辉
刘明强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201410606263.7A priority Critical patent/CN105634983A/en
Priority to PCT/CN2015/073274 priority patent/WO2016065779A1/en
Publication of CN105634983A publication Critical patent/CN105634983A/en
Pending legal-status Critical Current

Links

Abstract

The invention provides a queue dispatching method and device, and the method comprises the steps: obtaining state information for the dispatching of one or more queues in a first clock period, and storing the state information; and executing the dispatching operation in a second clock period according to a dispatching strategy corresponding to the obtained state information. The method solves a problem in the prior art that the obtaining of the queue information, the queue dispatching according to the queue information and the instant updating of the queue information in a clock period are difficult to complete, reduces the impact on the time sequence design from a chip buffering unit for storing the state information and the layout time delay, and further meets the demands for the clock frequency in chip design.

Description

The dispatching method of queue and device
Technical field
The present invention relates to the communications field, in particular to dispatching method and the device of a kind of queue.
Background technology
In data communication field, bandwidth change or the multichannel of data entrance heterogeneous networks converge and all can there is queue scheduling. Under the trend that communication equipment bandwidth is increasing, the dispatching efficiency of many queues be there has also been higher requirement. The cycle that many queues high efficiency scheduling requirement dispatches out team is shorter and shorter, and the message dispatching out team requires do not have interval, namely dispatches back-to-back.
Queue scheduling needs to be scheduling according to different queue packet storage situation of joining the team; The unit of queue scheduling is usually packet or data fragmentation, message or burst number to be needed to be stored in chip buffer memory, and queuing message and state table are generally also present in chip buffer memory. In the traditional design of back-to-back high efficiency queue scheduling, queue goes out team needs to read the information such as this queue messages number from buffer memory, and updates the cache contents of this queue and queuing message immediately in the bat clock cycle of working as dispatching out team. And cache resources all can be placed on fixed position in the chips, the time delay of buffer unit and placement-and-routing during operation buffer memory, can be brought. When communication chip designs, the master clock frequency of chip operation all requires, and the time delay that tradition multiqueue dispatching brings can make chip clock design more difficult.
The back-to-back dispatching method of correlation technique needs to complete to obtain queuing message from quene state module 1 clock cycle, carries out queue scheduling further according to queuing message, updates quene state module after last queue scheduling is complete immediately. And queuing message is normally present in chip buffer memory, this queuing message reads renewal operation between buffer memory and causes buffer unit and the placement-and-routing's time delay can be relatively larger. In the realization of chip, processing bandwidth requirement for reaching system, system clock frequency has the bigger time delay that minimum design requirement, operation queue information module cause so that the design that 1 clock cycle completes queue scheduling implements extremely difficult.
For correlation technique being difficult to complete the acquisition of queuing message a clock cycle and carry out queue scheduling according to queuing message, finally update the problem of queuing message operation after queue completes immediately, effective solution is not yet proposed at present.
Summary of the invention
Present invention is primarily targeted at dispatching method and device that a kind of queue is provided, solve and correlation technique is difficult to complete the acquisition of queuing message a clock cycle and carry out queue scheduling, the problem finally completing the state operation namely updating queuing message in queue according to queuing message.
To achieve these goals, according to an aspect of the invention, it is provided the dispatching method of a kind of queue, including: within the first clock cycle, obtain and one or more queues are scheduling required status information, and store; Within the second clock cycle, perform scheduling operation according to the scheduling strategy corresponding with the described status information obtained.
Further, described status information includes: the message amount that described queue comprises.
Further, perform scheduling operation according to the scheduling strategy corresponding with the described status information obtained to include: judge that whether described message amount is more than predetermined threshold; When judged result is for being, according to the first queue scheduling strategy, the one or more queue is performed scheduling operation; When judged result is no, according to the second queue scheduling strategy execution scheduling operation, wherein, the schedule speed corresponding with described first queue scheduling strategy is more than the schedule speed corresponding with the second queue scheduling strategy.
Further, described first queue scheduling operation is that the message of predetermined length carries out back-to-back dequeue scheduling operation in unit period; And/or described second queue scheduling operation is for being not less than in predetermined quantity unit period and carry out dequeue scheduling operation.
Further, described predetermined threshold is 3 messages.
Further, described unit period is a clock cycle.
According to another aspect of the present invention, it is provided that the dispatching device of a kind of queue, including: acquisition module, for, within the first clock cycle, obtaining and one or more queues be scheduling required status information, and store; Scheduler module, for, within the second clock cycle, performing scheduling operation according to the scheduling strategy corresponding with the described status information obtained.
Further, described status information includes: the message amount that described queue comprises.
Further, described scheduler module includes: judging unit, is used for judging that whether described message amount is more than predetermined threshold; First scheduling unit, for when judged result is for being, performing scheduling operation according to the first queue scheduling strategy to the one or more queue; Second scheduling unit, for when judged result is no, according to the second queue scheduling strategy execution scheduling operation, wherein, the schedule speed corresponding with described first queue scheduling strategy is more than the schedule speed corresponding with the second queue scheduling strategy.
Further, described first queue scheduling operation, for carrying out back-to-back dequeue scheduling operation in unit period to the message of predetermined length; And/or described second queue scheduling operation, for being not less than in predetermined quantity unit period and carry out dequeue scheduling operation.
Pass through the present invention, within multiple clock cycle, complete to store the status information of one or more queue, and the mode of scheduling operation is performed according to the scheduling strategy that this status information is corresponding, solve and correlation technique is difficult to complete the acquisition of queuing message a clock cycle and carry out queue scheduling according to queuing message, the last problem updating queuing message operation after queue completes immediately, reduce the chip buffer unit for storing status information and placement-and-routing's time delay impact on timing Design, meet the demand to clock frequency in chip design further.
Accompanying drawing explanation
Accompanying drawing described herein is used for providing a further understanding of the present invention, constitutes the part of the application, and the schematic description and description of the present invention is used for explaining the present invention, is not intended that inappropriate limitation of the present invention. In the accompanying drawings:
Fig. 1 is the flow chart of the dispatching method of queue according to embodiments of the present invention;
Fig. 2 is the structural representation of the dispatching device of queue according to embodiments of the present invention;
Fig. 3 is the preferred structure schematic diagram of the dispatching device of queue according to embodiments of the present invention;
Fig. 4 is the apparatus structure schematic diagram of the high efficiency multiqueue dispatching according to alternative embodiment of the present invention;
Fig. 5 is the method flow diagram of the high efficiency multiqueue dispatching according to alternative embodiment of the present invention.
Detailed description of the invention
Below with reference to accompanying drawing and describe the present invention in detail in conjunction with the embodiments. It should be noted that when not conflicting, the embodiment in the application and the feature in embodiment can be mutually combined.
Providing a kind of connection establishment method of embodiment of the present invention in the present embodiment, Fig. 1 is the flow chart of the dispatching method of queue according to embodiments of the present invention, as it is shown in figure 1, this flow process comprises the steps:
Step S102: within the first clock cycle, obtains and one or more queues is scheduling required status information, and store;
Step S104: within the second clock cycle, performs scheduling operation according to the scheduling strategy corresponding with the status information obtained.
Pass through the present embodiment, within multiple clock cycle, complete to store the status information of one or more queue, and the mode of scheduling operation is performed according to the scheduling strategy that this status information is corresponding, solve and correlation technique is difficult to complete the acquisition of queuing message a clock cycle and carry out queue scheduling according to queuing message, the problem of the last operation updating queuing message after queue completes immediately, reduce the chip buffer unit for storing status information and placement-and-routing's time delay impact on timing Design, meet the demand to clock frequency in chip design further.
In an optional embodiment of the present embodiment, status information may include that the message amount that queue comprises, additionally, this status information can also include the length information etc. of message in queue.
In order to perform the operation of scheduling strategy scheduling, in an optional embodiment of the present embodiment, performing scheduling operation according to the scheduling strategy corresponding with the status information obtained can be accomplished by, and which comprises the following steps:
Step S11: judge that whether message amount is more than predetermined threshold;
One or more queues are performed scheduling operation according to the first queue scheduling strategy by step S12: when judged result is for being;
Step S13: when judged result is no, according to the second queue scheduling strategy execution scheduling operation, wherein, the schedule speed corresponding with the first queue scheduling strategy is more than the schedule speed corresponding with the second queue scheduling strategy.
Alternatively, the first queue scheduling operation, for carrying out back-to-back dequeue scheduling operation in unit period to the message of predetermined length; And/or the second queue scheduling operation, for being not less than in predetermined quantity unit period and carry out dequeue scheduling operation. It should be noted that in the present embodiment to scheduling operation predetermined quantity unit period preferably 3 unit period, but it should be noted that above-mentioned 3 unit period are merely illustrative, the operating unit of scheduling can be adjusted correspondingly in the cycle by those skilled in the art according to practical situation.
In an embodiment of the present embodiment, the predetermined threshold in above-mentioned steps S11 is chosen as 3 messages. Same, also it being only a kind of optional embodiment to the restriction of predetermined threshold here, the present invention is not constituted restriction, this predetermined threshold can be adjusted correspondingly by those skilled in the art according to practical situation.
Alternatively, in order to realize chip buffer unit and the unification of cloth exchange line time delay, this unit period is arranged a clock cycle.
Additionally providing the dispatching device of a kind of queue in the present embodiment, this device is used for realizing above-described embodiment and preferred implementation, has be carried out repeating no more of explanation. As used below, term " module " can realize the software of predetermined function and/or the combination of hardware. Although the device described by following example preferably realizes with software, but hardware, or the realization of the combination of software and hardware is also likely to be contemplated.
Fig. 2 is the structural representation of the dispatching device of queue according to embodiments of the present invention, as in figure 2 it is shown, this device includes: including: acquisition module 22, within the first clock cycle, obtain and one or more queues are scheduling required status information, and store; Scheduler module 24 and acquisition module 24 are of coupled connections, for, within the second clock cycle, performing scheduling operation according to the scheduling strategy corresponding with the status information obtained.
Alternatively, status information includes: the message amount that queue comprises.
Fig. 3 is the preferred structure schematic diagram of the dispatching device of queue according to embodiments of the present invention, as it is shown on figure 3, the scheduler module 24 in this device also includes: judging unit 32, is used for judging that whether message amount is more than predetermined threshold;
First scheduling unit 34 is of coupled connections with judging unit 32, for when judged result is for being, one or more queues being performed scheduling operation according to the first queue scheduling strategy;
Second scheduling unit 36 is of coupled connections with judging unit 32, for when judged result is no, according to the second queue scheduling strategy execution scheduling operation, wherein, the schedule speed corresponding with the first queue scheduling strategy is more than the schedule speed corresponding with the second queue scheduling strategy.
Alternatively, the first queue scheduling operation is that the message of predetermined length carries out back-to-back dequeue scheduling operation in unit period; And/or second queue scheduling operation for being not less than in predetermined quantity unit period and carry out dequeue scheduling operation.
In order to better the present invention will be described, optional enforcement and accompanying drawing example below in conjunction with the present invention illustrate.
What the invention provides a kind of high efficiency multiqueue dispatching realizes method and apparatus, and Fig. 4 is the apparatus structure schematic diagram of the high efficiency multiqueue dispatching according to alternative embodiment of the present invention, and as shown in Figure 4, this device includes:
, for the storage of queue messages of joining the team, there is chip internal bulk buffer memory, if number of queues is many, it is possible to be stored in plug-in buffer memory in queue memory module 402.
Quene state module 404 and queue memory module 402 are of coupled connections, and for recording the message amount of individual queue buffer memory, message all updates this module after joining the team and going out team.
Fast dispatch module 406 and quene state module 404 are of coupled connections, and for the queuing message provided according to quene state module, fast dispatch goes out group queue, and group cycle of dispatching out is 1 clock cycle.
Fast dispatch module 406 be operated in the message number of queue storage relatively many time, renewal of next clock cycle quene state module 404 after dispatch back-to-back. Queue messages number owing to entering fast dispatch module 406 is relatively more, and quene state module 404 late several clock cycle of scheduling queue update, and do not result in the maloperation of scheduling.
Slow scheduling module 408, for the queuing message provided according to quene state module 404, slow scheduling goes out group queue, dispatching out group cycle is 3 clock cycle, slow scheduling module 408 be operated in queue storage message number fewer time, dispatching efficiency is relatively low, it is not necessary to scheduling back-to-back continuously, after having dispatched, the next clock cycle updates quene state module 404 every time. New round scheduling needs the information dispatching out team to carry out after quene state module 404 updates, it is ensured that slow scheduling is all be scheduling according to up-to-date queuing message.
Dispatch list module 410, for prestoring from faster slower speed scheduler module, scheduled go out team queuing message, prestore the information such as 10 queue number being about to team and message length, dispatch list uses Backpressure controls whether working of scheduler module, and going out group unit can carry out dequeue operation according to the queuing message of storage in dispatch list.
Quickly coordinate cooperation with two kinds of scheduler modules at a slow speed, it is ensured that the high efficiency scheduling of many queues. In the transmission of the roomy flow of high-band, dispatching device is introduced into slow scheduling pattern, once message number reaches the threshold value of fast dispatch in buffer memory, is put into fast dispatch pattern, and when in communication network, flow reduces or stops, scheduling method returns to again slow scheduling. Two kinds of scheduler modules of speed all need not update the quene state module of queuing message within 1 cycle, updates and placement-and-routing's time delay impact on chip design clock frequency thus reducing buffer queue.
In order to the principle of the function of the module in said apparatus is further detailed, alternative embodiment of the present invention additionally provides a kind of method that realizes of high efficiency multiqueue dispatching and comprises the following steps, Fig. 5 is the method flow diagram of the high efficiency multiqueue dispatching according to alternative embodiment of the present invention, as it is shown in figure 5, this flow process comprises the following steps:
Step S502: judge whether that receiving enqueue operations enables, and as received, performs S504, as otherwise continued waiting for;
Step S504: update quene state table handling, updates quene state table according to enqueue operations or scheduling dequeue operation, and quene state table record is individual queue message number and length information, and the message number of quene state table record triggers S506 operation;
Step S506: judge that whether quene state table record queue messages number is more than 3, then this queue performs fast dispatch S510 in this way, as otherwise performed slow scheduling S508;
Step S508: queue scheduling operation at a slow speed, buffer memory carries out slow scheduling less than or equal to 3 and more than the queue of 0 message, and after scheduling dequeue, the next cycle goes out group information updating quene state table. Dispatching cycle is set to 3 cycles or longer according to requirement of system design, operates S504 and S512 after having dispatched;
Step S510: quickly queue scheduling operation, buffer memory carries out fast dispatch more than queues more than 3 messages, and the fast dispatch cycle is 1, it is ensured that length is the message energy high efficiency dequeue back-to-back of 1 bat; After scheduling dequeue, the next cycle goes out group information updating quene state table. Owing to dequeue information updating queue entry can lag behind dispatching cycle, therefore after queue buffer memory number is less than or equal to 3 messages, stop the operation of quick queue scheduling, after having dispatched, operate S504 and S512;
Step S512: updating dispatch list operation, step S508 and S510 scheduling result are stored in dispatch list, carry out S514 operation according to dispatch list;
Step S514: dequeue operation, carries out dequeue operation according to queuing message.
By alternative embodiment of the present invention, multiqueue dispatching's efficiency and optimization chip design sequential have accomplished good unification, under the premise reaching back-to-back high efficiency scheduling queue, the scheduling operation in 1 cycle is divided into multiple cycle to be realized, substantially reduce chip buffer unit and placement-and-routing's time delay impact on timing Design, be conducive to meeting the demand of clock frequency in chip design.
These are only the preferred embodiments of the present invention, be not limited to the present invention, for a person skilled in the art, the present invention can have various modifications and variations. All within the spirit and principles in the present invention, any amendment of making, equivalent replacement, improvement etc., should be included within protection scope of the present invention.

Claims (10)

1. the dispatching method of a queue, it is characterised in that including:
Within the first clock cycle, obtain and one or more queues are scheduling required status information, and store;
Within the second clock cycle, perform scheduling operation according to the scheduling strategy corresponding with the described status information obtained.
2. method according to claim 1, it is characterised in that described status information includes: the message amount that described queue comprises.
3. method according to claim 2, it is characterised in that perform scheduling operation according to the scheduling strategy corresponding with the described status information obtained and include:
Judge that whether described message amount is more than predetermined threshold;
When judged result is for being, according to the first queue scheduling strategy, the one or more queue is performed scheduling operation;
When judged result is no, according to the second queue scheduling strategy execution scheduling operation, wherein, the schedule speed corresponding with described first queue scheduling strategy is more than the schedule speed corresponding with the second queue scheduling strategy.
4. method according to claim 3, it is characterised in that
Described first queue scheduling operation, for carrying out back-to-back dequeue scheduling operation in unit period to the message of predetermined length; And/or, described second queue scheduling operation, for carrying out dequeue scheduling operation in predetermined quantity unit period.
5. method according to claim 3, it is characterised in that described predetermined threshold is 3 messages.
6. method according to claim 4, it is characterised in that described unit period is a clock cycle.
7. the dispatching device of a queue, it is characterised in that including:
Acquisition module, for, within the first clock cycle, obtaining and one or more queues be scheduling required status information, and store;
Scheduler module, for, within the second clock cycle, performing scheduling operation according to the scheduling strategy corresponding with the described status information obtained.
8. device according to claim 7, it is characterised in that described status information includes: the message amount that described queue comprises.
9. device according to claim 8, it is characterised in that described scheduler module includes:
Judging unit, is used for judging that whether described message amount is more than predetermined threshold;
First scheduling unit, for when judged result is for being, performing scheduling operation according to the first queue scheduling strategy to the one or more queue;
Second scheduling unit, for when judged result is no, according to the second queue scheduling strategy execution scheduling operation, wherein, the schedule speed corresponding with described first queue scheduling strategy is more than the schedule speed corresponding with the second queue scheduling strategy.
10. device according to claim 9, it is characterised in that
Described first queue scheduling operation is that the message of predetermined length carries out back-to-back dequeue scheduling operation in unit period; And/or described second queue scheduling operation is for being not less than in predetermined quantity unit period and carry out dequeue scheduling operation.
CN201410606263.7A 2014-10-30 2014-10-30 Queue dispatching method and device Pending CN105634983A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410606263.7A CN105634983A (en) 2014-10-30 2014-10-30 Queue dispatching method and device
PCT/CN2015/073274 WO2016065779A1 (en) 2014-10-30 2015-02-25 Queue scheduling method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410606263.7A CN105634983A (en) 2014-10-30 2014-10-30 Queue dispatching method and device

Publications (1)

Publication Number Publication Date
CN105634983A true CN105634983A (en) 2016-06-01

Family

ID=55856492

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410606263.7A Pending CN105634983A (en) 2014-10-30 2014-10-30 Queue dispatching method and device

Country Status (2)

Country Link
CN (1) CN105634983A (en)
WO (1) WO2016065779A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109656169A (en) * 2018-12-20 2019-04-19 深圳南方德尔汽车电子有限公司 Multiple dispatch table switching method, device, computer equipment and storage medium
CN112804162A (en) * 2019-11-13 2021-05-14 深圳市中兴微电子技术有限公司 Scheduling method, scheduling device, terminal equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101242341A (en) * 2007-02-07 2008-08-13 华为技术有限公司 A packet dispatching method and device
CN103441954A (en) * 2013-08-27 2013-12-11 福建星网锐捷网络有限公司 Message sending method, device and network equipment
CN103546392A (en) * 2012-07-12 2014-01-29 中兴通讯股份有限公司 Single queue cycle dispatching method and device
CN104022965A (en) * 2014-05-20 2014-09-03 华为技术有限公司 Message dequeue scheduling method and equipment thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101242341A (en) * 2007-02-07 2008-08-13 华为技术有限公司 A packet dispatching method and device
CN103546392A (en) * 2012-07-12 2014-01-29 中兴通讯股份有限公司 Single queue cycle dispatching method and device
CN103441954A (en) * 2013-08-27 2013-12-11 福建星网锐捷网络有限公司 Message sending method, device and network equipment
CN104022965A (en) * 2014-05-20 2014-09-03 华为技术有限公司 Message dequeue scheduling method and equipment thereof

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109656169A (en) * 2018-12-20 2019-04-19 深圳南方德尔汽车电子有限公司 Multiple dispatch table switching method, device, computer equipment and storage medium
CN112804162A (en) * 2019-11-13 2021-05-14 深圳市中兴微电子技术有限公司 Scheduling method, scheduling device, terminal equipment and storage medium
CN112804162B (en) * 2019-11-13 2024-04-09 深圳市中兴微电子技术有限公司 Scheduling method, scheduling device, terminal equipment and storage medium

Also Published As

Publication number Publication date
WO2016065779A1 (en) 2016-05-06

Similar Documents

Publication Publication Date Title
CN102594691B (en) A kind of method and device handling message
EP1117213A3 (en) Packet switch device and scheduling control method
CN102025638A (en) Data transmission method and device based on priority level as well as network equipment
CN102811176B (en) A kind of data flow control method and device
US20110255543A1 (en) Method and system for processing data
CN107733813B (en) Message forwarding method and device
CN101621833A (en) Message flux control method and base station controller
CN113821516B (en) Time sensitive network switching system based on virtual queue
CN110995598A (en) Variable-length message data processing method and scheduling device
EP2869503A1 (en) Multicast message replication method and device
CN102984089B (en) Traffic management dispatching method and device
CN102984083A (en) Queue management method and device
CN105634983A (en) Queue dispatching method and device
CN108462653B (en) TTE-based rapid protocol control frame sending method
CN101917687B (en) Message sending method and message centre
CN105468682A (en) Event scheduling system
CN105094990A (en) System and method for efficiently achieving large-scale data exchange
CN102170401B (en) Method and device of data processing
CN107277062A (en) The method for parallel processing and device of packet
CN102546423A (en) Method and device for queue scheduling and network device
CN109257280B (en) Micro-engine and message processing method thereof
US20060077973A1 (en) Output scheduling method of crosspoint buffered switch
CN101488910B (en) Method for communication between several connection interfaces
CN107493312A (en) A kind of service calling method and device
CN107911317B (en) Message scheduling method and device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160601