CN103914341B - Data queue goes out group management-control method and device - Google Patents
Data queue goes out group management-control method and device Download PDFInfo
- Publication number
- CN103914341B CN103914341B CN201310003565.0A CN201310003565A CN103914341B CN 103914341 B CN103914341 B CN 103914341B CN 201310003565 A CN201310003565 A CN 201310003565A CN 103914341 B CN103914341 B CN 103914341B
- Authority
- CN
- China
- Prior art keywords
- queue
- node
- chained list
- recombination
- child node
- 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.)
- Active
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/10—Program control for peripheral devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention discloses a kind of data queues to go out group management-control method and device, and method includes:Receiving queue dispatch command obtains queue first address and goes out the sub- pointer of team, is combined into absolute address;According to the sequence of absolute address, the child node information of group node, write-in recombination queue are obtained out;According to odd even sequence, intersects the child node information for prefetching and going out group node next time, odd even chained list is written;Opening flag is monitored, according to the sequencing that opening flag reaches, the scheduling serial number of data message is written in sequencing queue successively;According to scheduling numeric order, the child node information for going out group node in queue will be recombinated successively and is taken out, is directed toward corresponding data message storage location, send datagram dequeue instruction.The present invention uses " node convergence " mode to realize single linked list queue management and control, realizes extensive queue management and control by single linked list, ensures linear speed, saves the outer QDR memory storage spaces of piece and pin, structure is simple and easy to implement.
Description
Technical field
The present invention relates to technical field of data processing, are related specifically to data queue and go out group management-control method and device.
Background technology
With the continuous growth of network service and capacity, the processing capacity of traffic management and control chip is required higher and higher.
When traffic management and control chip realizes extensive queue management and control, relatively common is to be stored in data message by the way of chained list
The outer DDR of piece(Double Data Rate)In memory, the corresponding index address of data message is stored in piece in the form of queue
Outer QDR(Quad Data Rate, 4 haplotype data multiplying powers)In memory, in dequeue operation, index address is obtained, by index ground
The corresponding data message in location is read, and is completed data message and is gone out team.
The management and control of queue is mainly the management and control to packet storage, including joins the team and go out two step of team, and queue is according to certain original
Then, the data message for belonging to same queue is divided into one or more node, be stored in spatial cache, multiple node groups
At an aggregation node, multiple aggregation nodes form a queue linked list;Logic is mutual indepedent between queue and queue, each team
Row safeguard a queue linked list.It is joining the team in dequeue process, is caching the read write command provided according to dispatch command, to index ground
Location and data message are stored and read out, and realize the management and control of data flow.
There are two types of modes for queue management and control, first, for the fixed memory space of each queue assignment, second is that all queues are total
Enjoy same memory space.In the case of extensive queue, every group of queue can be caused by the way of fixed allocation memory space
The memory space very little of distribution, it is weaker to the absorbability of burst flow, while the waste of memory space is than more serious.Therefore
In large-scale queue management and control substantially all by the way of shared memory space.The queue management and control of existing shared memory space
Technology mainly uses the realization method of single linked list and multilinked list, realizes the storage of chained list in queue management and control.If using traditional
Singly linked list, the read-write delays of the outer QDR memories of piece cause single queue to go out team and cannot meet rate requirement of joining the team, meeting simultaneously
It is a large amount of to occupy SRAM(Static Random Access Memory, static random access memory)Resource uses FPGA(Field-
Programmable Gate Array, field programmable gate array)When realization, no matter device pin is distributed or is laid out
Wiring is all huge challenge;If using multilinked list structure, a large amount of occupied disadvantages of SRAM resources are still remained, and make
When being realized with FPGA, difficulty bigger of the device pin distribution with placement-and-routing than single linked list scheme.Meanwhile it being realized using single linked list
Each address of node pointer in queue is mainly stored in chained list by the mode of queue management and control, need one node of reading it
The address of next node can be just obtained afterwards, it is contemplated that the reading of QDR memories is delayed, and the rate that cannot meet team's processing is wanted
It asks.
Invention content
The main object of the present invention is to provide a kind of to improve the data queue that extensive queue goes out group rate and go out group management and control side
Method and device.
The present invention proposes that a kind of data queue goes out group management-control method, including step:
Receiving queue dispatch command, the queue first address and the queue obtained in queue descriptor go out in group chained list
Team's node goes out the sub- pointer of team, is combined into out the absolute address of group node;
According to the sequence for the absolute address for going out group node in current chained list, the child node for going out group node in current chained list is obtained
Information, write-in recombination queue, reconfigures as data message;According to the odd even sequence for going out group node in current chained list, intersect pre-
It removes time the child node information of group node, odd even chained list is written, and prefetch the message for going out group node next time from odd even chained list
Tail tag is known;
The opening flag for going out the data message that the child node information of group node includes in the recombination queue is monitored, according to
The scheduling serial number of data message is written in sequencing queue successively for the sequencing that the opening flag reaches;
According to the scheduling numeric order of data dequeued message in the sequencing queue, go out successively by what is stored in recombination queue
The child node information of team's node is taken out, and is directed toward corresponding data message storage location, send datagram dequeue instruction.
Preferably, the sequence according to the absolute address for going out group node in current chained list, obtains in current chained list and goes out team
The child node information of node, write-in recombination queue, reconfigures as data message;According to the odd even for going out group node in current chained list
Sequentially, intersect the child node information for prefetching and going out group node next time, odd even chained list is written, and prefetched from odd even chained list and go out team next time
The step of message trailer mark of node, specifically includes:
According to the odd even sequence for the absolute address for going out group node in current chained list, it is by group node division is gone out in current chained list
Odd node and even-numbered nodes;
According to the absolute address of current odd node, the child node information of current odd node, write-in recombination queue are obtained;
The child node information for pre-reading next odd node, is written strange chained list;
According to the absolute address of current even-numbered nodes, the child node information of current even-numbered nodes, write-in recombination queue are obtained;
The child node information of next even-numbered nodes is pre-read, even chained list is written;
According to the absolute address of next odd node, the child node information of next odd node, write-in recombination queue are obtained;
The child node information for pre-reading again next odd node, is written strange chained list;
According to the absolute address of next even-numbered nodes, the child node information of next even-numbered nodes, write-in recombination queue are obtained;
The child node information of next even-numbered nodes is pre-read again, even chained list is written;
And so on, until recombination queue is written in the child node information of all nodes in current chained list.
Preferably, the data message that the child node information for group node being gone out in the monitoring recombination queue includes is opened
Begin mark, and according to the sequencing that the opening flag reaches, the scheduling serial number of data message is written in sequencing queue successively
The step of specifically include:
Monitor opening flag and the institute for going out the data message that the child node information of group node includes in the recombination queue
State the sequencing of opening flag arrival;
It will be in the scheduling row number write-in sequencing queue of the corresponding node of the opening flag of first arrival;
Node corresponding with the opening flag of first arrival is belonged to the data message of same recombination queue successively
It dispatches in serial number write-in sequencing queue;
When the child node information of presently written node includes message trailer mark, the node of next arrival, which is used as, to be started
Indicate corresponding node, it will be in the scheduling serial number write-in sequencing queue of the node of next arrival;
Node corresponding with the opening flag of next arrival is belonged to the data message of same recombination queue successively
Scheduling serial number write-in sequencing queue in;
And so on, until the scheduling serial number of all data messages of all recombination queues is written in sequencing queue.
Preferably, described according to the odd even sequence for going out group node in current chained list, intersect the son for prefetching and going out group node next time
Odd even chained list is written in nodal information, and after prefetching the step of message trailer for going out group node next time identifies in odd even chained list also
Including:
The child node information of presently written node include message trailer mark when, judge the queue after going out team whether
For sky;
When the queue after going out team be non-empty when, extract next chain that the child node information of presently written node includes
Heading address of node pre-reads the child node information of next chained list first node;
According to the odd even sequence for the absolute address for going out group node in next chained list, intersects in the next chained list of acquisition and go out group node
Child node information, write-in recombination queue.
Preferably, when the child node information in presently written node includes message trailer mark, judge the queue
Whether be after empty step after going out team further includes:
When the queue when being sky after going out team, release queue scheduling instruction stops write-in recombination queue.
The present invention also proposes that a kind of data queue goes out group control device, including:
Address generation module is used for receiving queue dispatch command, obtains the queue first address and described in queue descriptor
Queue go out in group chained list group node go out the sub- pointer of team, be combined into out the absolute address of group node;
Recombination Queue module obtains current chained list for the sequence according to the absolute address for going out group node in current chained list
In go out the child node information of group node, write-in recombination queue reconfigures as data message;
Queue module is pre-read, for according to the odd even sequence for going out group node, intersecting the child node for prefetching and going out group node next time
Odd even chained list is written in information, and the message trailer mark for going out group node next time is prefetched from odd even chained list;
Sequencing queue module, for monitoring the datagram for going out the child node information of group node in the recombination queue and including
The scheduling serial number of data message is written sorts successively by the opening flag of text according to the sequencing that the opening flag reaches
In queue;
Dequeue instruction module successively will recombination for the scheduling serial number according to data dequeued message in the sequencing queue
The child node information for going out group node stored in queue is taken out, and is directed toward corresponding data message storage location, sends datagram
Dequeue instruction.
Preferably, the recombination Queue module is specifically used for:
According to the odd even sequence for the absolute address for going out group node in current chained list, it is by group node division is gone out in current chained list
Odd node and even-numbered nodes;
According to the absolute address of current odd node, the child node information of current odd node, write-in recombination queue are obtained;
The child node information for pre-reading next odd node, is written strange chained list;
According to the absolute address of current even-numbered nodes, the child node information of current even-numbered nodes, write-in recombination queue are obtained;
The child node information of next even-numbered nodes is pre-read, even chained list is written;
According to the absolute address of next odd node, the child node information of next odd node, write-in recombination queue are obtained;
The child node information for pre-reading again next odd node, is written strange chained list;
According to the absolute address of next even-numbered nodes, the child node information of next even-numbered nodes, write-in recombination queue are obtained;
The child node information of next even-numbered nodes is pre-read again, even chained list is written;
And so on, until recombination queue is written in the child node information of all nodes in current chained list.
Preferably, the sequencing queue module is specifically used for:
Monitor opening flag and the institute for going out the data message that the child node information of group node includes in the recombination queue
State the sequencing of opening flag arrival;
It will be in the scheduling row number write-in sequencing queue of the corresponding node of the opening flag of first arrival;
Node corresponding with the opening flag of first arrival is belonged to the data message of same recombination queue successively
It dispatches in serial number write-in sequencing queue;
When the child node information of presently written node includes message trailer mark, the node of next arrival, which is used as, to be started
Indicate corresponding node, it will be in the scheduling serial number write-in sequencing queue of the node of next arrival;
Node corresponding with the opening flag of next arrival is belonged to the data message of same recombination queue successively
Scheduling serial number write-in sequencing queue in;
And so on, until the scheduling serial number of all data messages of all recombination queues is written in sequencing queue.
Preferably, the recombination Queue module is additionally operable to:
The child node information of presently written node include message trailer mark when, judge the queue after going out team whether
For sky;
When the queue after going out team be non-empty when, extract next chain that the child node information of presently written node includes
Heading address of node pre-reads the child node information of next chained list first node;
According to the odd even sequence for the absolute address for going out group node in next chained list, intersects in the next chained list of acquisition and go out group node
Child node information, write-in recombination queue.
Preferably, the recombination Queue module is additionally operable to:
When the queue when being sky after going out team, release queue scheduling instruction stops the step of write-in recombinates queue.
The present invention uses the mode of " node convergence " real to solve the bottleneck of resource and rate in extensive queue management and control
Existing single linked list queue management and control, solve node occupy SRAM resources it is excessive caused by pin and wiring problem, it is real to pass through single linked list
The queue management and control of now extensive queue, under the premise of ensureing linear speed, save the outer QDR memory storage spaces of outer plate and
Pin alleviates the complexity of the fabric swatch using the FPGA traffic management and controls realized.
Description of the drawings
Fig. 1 is the flow chart for the first embodiment that data queue of the present invention goes out group management-control method;
Fig. 2 is the flow chart for the second embodiment that data queue of the present invention goes out group management-control method;
Fig. 3 is the flow chart for the 3rd embodiment that data queue of the present invention goes out group management-control method;
Fig. 4 is the flow chart for the fourth embodiment that data queue of the present invention goes out group management-control method;
Fig. 5 is the structural schematic diagram that data queue of the present invention goes out group control device.
The embodiments will be further described with reference to the accompanying drawings for the realization, the function and the advantages of the object of the present invention.
Specific implementation mode
It should be appreciated that the specific embodiments described herein are merely illustrative of the present invention, it is not intended to limit the present invention.
As shown in FIG. 1, FIG. 1 is the flow charts that data queue of the present invention goes out the first embodiment of group management-control method.This implementation
The data queue that example is mentioned goes out group management-control method, including:
Step S10, receiving queue dispatch command, obtain the queue first address and queue in queue descriptor goes out group chained list
In go out group node go out the sub- pointer of team, be combined into out the absolute address of group node;
The outer QDR memories of the piece of the present embodiment include the outer QDR memories of queue descriptor's piece, the outer QDR memories of chained list piece
With QDR memories outside child node message slot, descriptor, front pointer and rear pointer, the convergence section of each queue are stored respectively
Point(All nodes in i.e. each chained list)Information, the child node information of each node, the information of wherein aggregation node includes queue
The address of the message trailer mark and next aggregation node in queue linked list of the first node of next aggregation node, child node letter in chained list
Breath includes node's length and whether node is message trailer mark.Dequeue operation receives group queue number that goes out from queue scheduling, reads
It takes queue descriptor and goes out the sub- pointer of team, include queue first address in queue descriptor.The actual address of each node is by base
Address plus offset address form, the plot for the same chained list interior nodes be it is identical, inclined location be remaining node relative to
The offset of first node in the same chained list.Since the address of node in a chained list in each aggregation node is to connect
Continuous, so if first node of an aggregation node from a chained list is read, so that it may next to immediately know that
A address of node, without waiting for returning the result for first time read operation, the address distribution and release of aggregation node are with chain
Table is base unit.It therefore, can be by the head of the queue aggregation node of queue in the actual address for obtaining each node, i.e. absolute address
The absolute address for going out the sub- pointer set of team and synthesizing group node of each node in the address of storage and queue.Belong to same data message
All nodes must be written into the same recombination queue.
Step S20 is obtained according to the sequence for the absolute address for going out group node in current chained list and is gone out group node in current chained list
Child node information, write-in recombination queue, reconfigure as data message;It is suitable according to the odd even for going out group node in current chained list
Sequence intersects the child node information for prefetching and going out group node next time, odd even chained list is written, and is prefetched from odd even chained list and go out team's section next time
The message trailer mark of point;
The outer QDR memories of child node message slot are read to be divided into current chained list very according to the odd even attribute for going out the sub- pointer of team
Chained list and even chained list intersect and read each child node information in strange chained list and even chained list, when obtaining the child node information of strange chained list,
The node address for pre-reading even chained list pre-reads the node address of strange chained list, passes through double-strand when obtaining the child node information of even chained list
Table crossover operation effectively improves the child node information dequeuing efficiency of each node.The data message start-stop letter preserved in odd even chained list
Breath, which timely feedbacks, gives scheduling side, ensures that scheduling side switches scheduling queue in time, meets the linear speed requirement of scheduling side.
Step S30, the opening flag for the data message that the child node information that group node is gone out in monitoring recombination queue includes,
According to the sequencing that opening flag reaches, the scheduling serial number of data message is written in sequencing queue successively;
Since queue scheduling intersects team, the node for belonging to the same data message is not continuous, in order to avoid same
The node of one data message cannot continuously provide the problem of dequeue command, devise the Packet reassembling operation of dequeue command.
Belonging in the chained list of node formation of the same data message, first node includes opening flag, and tail node includes message trailer mark,
According to the sequencing that opening flag reaches, i.e., the sequencing reached according to first node in the same data message will be same
The node of data message is sequentially written in sequencing queue, realizes Packet reassembling operation, and the node for belonging to the same data message is made to connect
Dequeue command is provided continuously, is ensured that the sequence for sending out dequeue command is identical as the sequence of scheduling, is avoided the occurrence of the report of dequeue command
Literary alternation sum is out of order.
Step S40 will be stored in recombination queue successively according to the scheduling numeric order of data dequeued message in sequencing queue
Go out group node child node information take out, be directed toward corresponding data message storage location, send datagram dequeue instruction.
According to the sequence of sequencing queue, dequeue command is sent to register, obtains corresponding data message, completes data
Message goes out team.When the message trailer mark and label of the corresponding node of a data message in sequencing queue is 1, one is indicated
Message, which goes out team, to be terminated, and start another data message goes out team.When the node for going out team is tail node, i.e. node includes message tail tag
When knowledge, the corresponding node of next data message in sequencing queue is read, and update the front pointer of queue descriptor.If recently
It is not tail node once to go out the node of team, then front pointer remains unchanged.After an aggregation node in chained list goes out team,
Chained list release command is received, detects release mark, the address space of aggregation node in chained list is discharged, completes going out for data message
Team operates.
The present embodiment uses the mode of " node convergence " to solve the bottleneck of resource and rate in extensive queue management and control
Realize single linked list queue management and control, solve node occupy SRAM resources it is excessive caused by pin and wiring problem, pass through single linked list
The queue management and control for realizing extensive queue, under the premise of ensureing linear speed, save the outer QDR memory storage spaces of outer plate with
And pin, alleviate the complexity of the fabric swatch using the FPGA traffic management and controls realized.
As shown in Fig. 2, Fig. 2 is the flow chart for the second embodiment that data queue of the present invention goes out group management-control method.This implementation
Example is described in detail the step of write-in recombination queue, step S20 is specifically included based on embodiment illustrated in fig. 1:
Step S21 will go out team's section according to the odd even sequence for the absolute address for going out group node in current chained list in current chained list
Point is divided into odd node and even-numbered nodes;
Each node division in current chained list is odd node and even-numbered nodes by the present embodiment, that is, constitutes strange chained list and idol
Chained list can also obtain strange chained list message tail tag while receiving queue dispatch command, acquisition queue descriptor and dequeue pointer
Know and even chained list message trailer identifies.
Step S22, i=1;
Step S23 obtains the child node information of i-th of odd node, writes according to the absolute address of i-th of odd node
Enter and recombinate queue, and pre-read the child node information of i+1 odd node, strange chained list is written;
According to the absolute address of current odd node, the child node information of current odd node, write-in recombination queue are obtained;
The child node information for pre-reading next odd node, is written strange chained list.Specifically, obtain scheduling side provide go out group queue number, look into
Strange chained list is ask, is identified to the message start-stop of dequeue, scheduling side determines whether switching queue;Obtain the queue for currently going out group queue
Descriptor and go out the sub- pointer of team and be used as address, reads the child node information of odd node, write-in recombinates queue;It pre-reads under this queue
Strange chained list is written after obtaining result in the child node information of one odd node.
Step S24 obtains the child node information of i-th of even-numbered nodes, writes according to the absolute address of i-th of even-numbered nodes
Enter and recombinate queue, and pre-read the child node information of i+1 even-numbered nodes, even chained list is written;
According to the absolute address of current even-numbered nodes, the child node information of current even-numbered nodes, write-in recombination queue are obtained;
The child node information of next even-numbered nodes is pre-read, even chained list is written.Specifically, obtain that current scheduling side provides goes out group queue
Number, even chained list is inquired, is identified to the message start-stop of dequeue, scheduling side determines whether switching queue;It obtains and currently goes out group queue
Queue descriptor and go out the sub- pointer of team and be used as address, read the child node information of even-numbered nodes, write-in recombinates queue;It pre-reads down
Even chained list is written after obtaining result in the child node information of one even-numbered nodes;
Step S25 judges whether recombination queue is written in the child node information of all nodes in current chained list;If so,
Then end step S20;If it is not, then i adds 1, return to step S23.
If still having the child node information of node that recombination queue is not written in current chained list, next odd node is obtained
Child node information, write-in recombination queue and pre-reads again the child node information of next odd node;Obtain next even number again later
The child node information of node, write-in recombination queue, and pre-read again the child node information of next even-numbered nodes.It is adjusted specifically, obtaining
What degree side provided goes out group queue number(It is identical as upper queue number), strange chained list is inquired, is identified to the message start-stop of dequeue, dispatches side
Determine whether switching queue;It obtains queue descriptor and goes out the sub- pointer of team, read the child node information of next odd node, be written
Recombinate queue;Strange chained list is written after obtaining result in the child node information for pre-reading again next odd node;Obtain what scheduling side provided
Go out group queue number(It is identical as upper queue number), even chained list is inquired, is identified to the message start-stop of dequeue, scheduling side determines whether to cut
Change queue;It obtains and currently goes out the queue descriptor of group queue and go out the sub- pointer of team as address, read the son of next even-numbered nodes
Nodal information, write-in recombination queue;Even chained list is written after obtaining result in the child node information for pre-reading again next even-numbered nodes.
The update of odd even chained list is completed when queue goes out group, according to the odd even attribute for the node for currently going out team, is read next
A odd node or even-numbered nodes.Pre-reading for node in the same aggregation node pre-reads in the way of odd-even interleaving,
The node that queue is belonged to same data message in dequeue process is numbered, and is divided into odd node and even-numbered nodes, odd number section
During pointing out team, next odd node is pre-read;In even-numbered nodes dequeue process, next even-numbered nodes are carried out
It pre-reads;The node pre-read is stored in the ram in slice of FPGA, strange chained list and even chained list separate storage, corresponding with queue.
After obtaining out group queue number, provide at once data message go out team whether complement mark, to switch scheduling port queue.When
When most latter two node in aggregation node goes out group, the address for obtaining next aggregation node in queue linked list first is needed, is examined
Reading delay and the linear speed requirement for considering QDR memories outside piece will be new behind the new queue linked list aggregation node address of application of joining the team
Aggregation node first odd node address the last one odd node that a upper chained list is written child node information in, newly
Chained list first even-numbered nodes address the last one even-numbered nodes that a upper chained list is written child node information in.Pass through team
The pre- read operation of row double linked list effectively increases the efficiency that node goes out team.
As shown in figure 3, Fig. 3 is the flow chart for the 3rd embodiment that data queue of the present invention goes out group management-control method.This implementation
Example is described in detail the step of write-in sequencing queue, step S30 is specifically included based on embodiment illustrated in fig. 1:
Step S31, the opening flag for the data message that the child node information that group node is gone out in monitoring recombination queue includes
The sequencing reached with opening flag;
Since queue scheduling intersects team, the node for belonging to the same data message is not continuous, in order to avoid same
The node of one data message cannot continuously provide the problem of dequeue command, devise the Packet reassembling operation of dequeue command.
Belonging in the chained list of node formation of the same data message, first node includes opening flag, and tail node includes message trailer mark,
According to the sequencing that opening flag reaches, i.e., the sequencing reached according to first node in the same data message will be same
The node of data message is sequentially written in sequencing queue, realizes Packet reassembling operation, and the node for belonging to the same data message is made to connect
Dequeue command is provided continuously, is ensured that the sequence for sending out dequeue command is identical as the sequence of scheduling, is avoided the occurrence of the report of dequeue command
Literary alternation sum is out of order.
Step S32, j=1;
The scheduling row number of step S33, the corresponding node of opening flag that j-th is reached are written in sequencing queue;
It will be in the scheduling row number write-in sequencing queue of the corresponding node of the opening flag of first arrival;
Node corresponding with the opening flag that j-th reaches is belonged to the datagram of same recombination queue by step S34 successively
In the scheduling serial number write-in sequencing queue of text;
Node corresponding with the opening flag of first arrival is belonged to the scheduling of the data message of same recombination queue successively
Serial number is written in sequencing queue;
Whether step S35 judges in the child node information of presently written node to include that message trailer identifies;If it is, holding
Row step S36;If it is not, then return to step S34;
Step S36 judges to recombinate in queue whether the scheduling serial number of all data messages is written in sequencing queue;If
It is, then end step S30;If it is not, then j adds 1, return to step S33.
If current data message has write, by the child node information of the corresponding node of the opening flag of next arrival
It is written in sequencing queue, and node corresponding with the opening flag of next arrival is belonged to the node of same data message successively
Child node information write-in sequencing queue in.
Packet reassembling is that one group of recombination queue and a sequencing queue is arranged in all queues, according to the requirement and use of linear speed
Clock, come be arranged recombination queue quantity.For example, being one with 10 clock cycle goes out group timing node, each goes out team
For the dequeue operation for completing four different queues in timing node, four recombination queues of setting, each queue is needed to correspond to one
Dequeue operation in a time slot.In order to realize that message goes out group order-preserving, one sequencing queue of setting stores opening for each recombination queue
Begin the sequence that mark reaches, and realizes the dequeue commands of queue messages according to the sequence of queue scheduling by being read in recombination queue.Weight
What reading and the linear speed of group queue required go out, and group rate is identical, by one node of completion of every 2 periods go out team for, recombination team
Row realize that every 2 periods read a queue nodes, then decide whether to continue to read according to message trailer identification field therein
This queue or switching queue.The dequeue command stored in each queue is obtaining first section by being read in queue
After the content of point, it is determined whether the next node of reader queue still reads other queue nodes, due to the queue third period
Data can just be gone out, the requirement that every 2 periods read the dequeue command of 1 node is that pre- read operation is made in each queue, and sort team
The content of row is also pre-read.Four groups of recombination queues and one group of sequencing queue progress are independently pre-read, and are stored in pre-reading for each queue and are posted
In storage.The pre- read register of each recombination queue, the content of first node in storage queue, each recombination queue are pre-read
Operation be separate, the content in pre- read register is read out each time, all triggers new pre- read operation;Sort team
Row are also pre-read, and the number of next queue that will go out team is read out in advance, and one group of setting goes out group information register, are read
The value of the pre- read register of sequencing queue makes instruction in dequeue process to select group node orders.The present embodiment passes through
To continuously going out the Packet reassembling scheme of group queue, realize that the node scheduling divided according to message, whole message go out team.
As shown in figure 4, Fig. 4 is the flow chart for the fourth embodiment that data queue of the present invention goes out group management-control method.This implementation
On the basis of example embodiment shown in Fig. 1, the step of pre-reading next chained list is increased, further includes after step S20:
Step S51 judges queue after going out team when the child node information of presently written node includes message trailer mark
Whether it is empty;If so, thening follow the steps S52;If not, thening follow the steps S54;
Message trailer mark be used to indicate each chained list tail node whether be message the last one node(0 indicate be not
Message trailer, 1 representative is message trailer), in order to pre- dequeue operation.Each chained list is allocated in advance continuously in initialization
Space, 1 chained list only receive the node of the same data message.
Step S52, the address for next chained list first node that the child node information for extracting presently written node includes, pre-reads
The child node information of next chained list first node;
Step S53 intersects and obtains in next chained list respectively according to the odd even sequence of the absolute address of each node in next chained list
The child node information of node, write-in recombination queue.
Step S54, release queue scheduling instruction stop write-in recombination queue.
In dequeue process, each chained list goes out team by first node, to the last a node is read, and chained list is released
It puts.After queue goes out team's reading sky, the last one chained list node belonging to queue goes out after team, discharges queue.It is retouched according to queue
That states the queue first address and tail address and queue in symbol goes out the sub- pointer of team and sub- pointer of joining the team, and judges that queue goes out after team
Whether it is empty, if queue is sky, sends out the order for discharging this chained list, no longer pre-reads message trailer mark.If queue is non-empty,
The child node information for then pre-reading next chained list in the queue selects corresponding node message tail identification information, and odd even message is written
Tail tag knows chained list.The present embodiment completes the maintenance of idle chained list by queue empty and by the judgement of null attribute.
As shown in figure 5, Fig. 5 is the structural schematic diagram that data queue of the present invention goes out group control device.The data of the present embodiment
Queue goes out group control device, including:
Address generation module 10 is used for receiving queue dispatch command, obtains the queue first address in queue descriptor and team
Each node goes out the sub- pointer of team in each chained list of row, is combined into the absolute address of each node;
Recombination Queue module 20 obtains current chain for the sequence according to the absolute address for going out group node in current chained list
Go out the child node information of group node in table, write-in recombination queue reconfigures as data message;
Queue module 30 is pre-read, for according to the odd even sequence for going out group node, intersecting and prefetching the son section for going out group node next time
Point information, is written odd even chained list;And this message trailer mark for going out group node is obtained from odd even chained list;
Sequencing queue module 40, for monitoring the data message for going out the child node information of group node in recombination queue and including
Opening flag, according to opening flag reach sequencing, successively will the scheduling serial number of data message be written sequencing queue in;
Dequeue instruction module 50 will recombinate team successively for the scheduling serial number according to data dequeued message in sequencing queue
The child node information for going out group node stored in row is taken out, and is directed toward corresponding data message storage location, sends datagram out
Team instructs.
The outer QDR memories of the piece of the present embodiment include the outer QDR memories of queue descriptor's piece, the outer QDR memories of chained list piece
With QDR memories outside child node message slot, descriptor, front pointer and rear pointer, the convergence section of each queue are stored respectively
Point(That is all nodes in individual queue chained list)Information, the child node information of each node, the information of wherein aggregation node includes
The address of first node the message trailer mark and next aggregation node in queue linked list of next aggregation node, sub- section in queue linked list
Point information includes node's length and whether node is message trailer mark.Dequeue operation is received goes out group queue from queue scheduling
Number, it reads queue descriptor and goes out the sub- pointer of team, include queue first address in queue descriptor.The actual address of each node
Be made of plus offset address base address, the plot for the node in the same aggregation node of queue linked list be it is identical,
Inclined location is offset of remaining node relative to first node in the same chained list.Due to each node in a chained list
Address is continuous, so if being read from first node of an aggregation node, so that it may next to immediately know that
Address of node, without waiting for returning the result for first time read operation, the distribution and release of aggregation node are using chained list as base
Our unit.It therefore, can be by the address of the head of the queue packet storage of queue in the actual address for obtaining each node, i.e. absolute address
With the absolute address for going out the sub- pointer set of team and synthesizing group node of each node in queue.Belong to all nodes of same data message
It must be written into the same recombination queue.The outer QDR memories of child node message slot are read, according to the odd even category for going out the sub- pointer of team
Property, current chained list is divided into strange chained list and even chained list, intersects and reads each child node information in strange chained list and even chained list, it is strange obtaining
When the child node information of chained list, the node address of even chained list is pre-read, when obtaining the child node information of even chained list, pre-reads strange chained list
Node address the child node information dequeuing efficiency of each node is effectively improved by double linked list crossover operation.It is protected in odd even chained list
The data message start-stop information deposited, which timely feedbacks, gives scheduling side, ensures that scheduling side switches scheduling queue in time, meets scheduling side
Linear speed requirement.Since queue scheduling intersects team, the node for belonging to the same data message is not continuous, in order to avoid same
The node of one data message cannot continuously provide the problem of dequeue command, devise the Packet reassembling operation of dequeue command.
Belonging in the chained list of node formation of the same data message, first node includes opening flag, and tail node includes message trailer mark,
According to the sequencing that opening flag reaches, i.e., the sequencing reached according to first node in the same data message will be same
The node of data message is sequentially written in sequencing queue, realizes Packet reassembling operation, and the node for belonging to the same data message is made to connect
Dequeue command is provided continuously, is ensured that the sequence for sending out dequeue command is identical as the sequence of scheduling, is avoided the occurrence of the report of dequeue command
Literary alternation sum is out of order.According to the sequence of sequencing queue, dequeue command is sent to register, obtains corresponding data message, it is complete
Go out team at data message.When the message trailer mark and label of the corresponding node of a data message in sequencing queue is 1, mark
It a message and goes out team and terminate, start another data message goes out team.When the node for going out team is tail node, i.e., node includes report
When literary tail tag is known, the corresponding node of next data message in sequencing queue is read, and update the value of group information register.If
The node that the last time goes out team is not tail node, then goes out group information register and remain unchanged.Node in a chained list goes out team
After, chained list release command is received, detects release mark, chained list is discharged, completes the dequeue operation of data message.
The present embodiment uses the mode of " node convergence " to solve the bottleneck of resource and rate in extensive queue management and control
Realize single linked list queue management and control, solve node occupy SRAM resources it is excessive caused by pin and wiring problem, pass through single linked list
The queue management and control for realizing extensive queue, under the premise of ensureing linear speed, save the outer QDR memory storage spaces of outer plate with
And pin, alleviate the complexity of the fabric swatch using the FPGA traffic management and controls realized.
In the embodiment of the present invention, recombination Queue module 20 is specifically used for:
According to the odd even sequence for the absolute address for going out group node in current chained list, it is by group node division is gone out in current chained list
Odd node and even-numbered nodes;
According to the absolute address of current odd node, the child node information of current odd node, write-in recombination queue are obtained;
The child node information for pre-reading next odd node, is written strange chained list;
According to the absolute address of current even-numbered nodes, the child node information of current even-numbered nodes, write-in recombination queue are obtained;
The child node information of next even-numbered nodes is pre-read, even chained list is written;
According to the absolute address of next odd node, the child node information of next odd node, write-in recombination queue are obtained;
The child node information for pre-reading again next odd node, is written strange chained list;
According to the absolute address of next even-numbered nodes, the child node information of next even-numbered nodes, write-in recombination queue are obtained;
The child node information of next even-numbered nodes is pre-read again, even chained list is written;
And so on, until recombination queue is written in the child node information of all nodes in current chained list.
Each node division in current chained list is odd node and even-numbered nodes by the present embodiment, that is, constitutes strange chained list and idol
Chained list can also obtain strange chained list message tail tag while receiving queue dispatch command, acquisition queue descriptor and dequeue pointer
Know and even chained list message trailer identifies.What acquisition scheduling side provided goes out group queue number, inquires strange chained list, gives the message start-stop of dequeue
Mark, scheduling side determine whether switching queue;It obtains and currently goes out the queue descriptor of group queue and go out the sub- pointer of team as address,
Read the child node information of odd node, write-in recombination queue;The child node information for pre-reading the lower odd node of this queue, obtains
As a result strange chained list is written afterwards.What acquisition current scheduling side provided goes out group queue number, inquires even chained list, gives the message start-stop of dequeue
Mark, scheduling side determine whether switching queue;It obtains and currently goes out the queue descriptor of group queue and go out the sub- pointer of team as address,
Read the child node information of even-numbered nodes, write-in recombination queue;The child node information for pre-reading next even-numbered nodes, after obtaining result
The even chained list of write-in;If still having the child node information of node that recombination queue is not written in current chained list, next odd number is obtained
The child node information of node, write-in recombination queue, and pre-read again the child node information of next odd node;It obtains again later next
The child node information of even-numbered nodes, write-in recombination queue, and pre-read again the child node information of next even-numbered nodes.Specifically, obtaining
Take scheduling side provide go out group queue number(It is identical as upper queue number), strange chained list is inquired, identifies, adjusts to the message start-stop of dequeue
Degree side determines whether switching queue;It obtains queue descriptor and goes out the sub- pointer of team, read the child node information of next odd node,
Write-in recombination queue;Strange chained list is written after obtaining result in the child node information for pre-reading again next odd node;Scheduling side is obtained to give
What is gone out goes out group queue number(It is identical as upper queue number), even chained list is inquired, is identified to the message start-stop of dequeue, scheduling side, which determines, is
No switching queue;It obtains and currently goes out the queue descriptor of group queue and go out the sub- pointer of team as address, read next even-numbered nodes
Child node information, write-in recombination queue;Even chain is written after obtaining result in the child node information for pre-reading again next even-numbered nodes
Table.The update of odd even chained list is completed when queue goes out group, according to the odd even attribute for the node for currently going out team, reads next odd number
Node or even-numbered nodes.Pre-reading for node in the same aggregation node pre-reads in the way of odd-even interleaving, goes out team's mistake
The node that queue is belonged to same data message in journey is numbered, and is divided into odd node and even-numbered nodes, and odd node goes out team
In the process, next odd node is pre-read;In even-numbered nodes dequeue process, next even-numbered nodes are pre-read;
The node pre-read is stored in the ram in slice of FPGA, strange chained list and even chained list separate storage, corresponding with queue.
To after going out group queue number, provide at once data message go out team whether complement mark, to switch scheduling port queue.When same
It when most latter two node in chained list goes out group, needs to obtain next node in chained list node first, it is contemplated that the outer QDR storages of piece
The address of the first odd node of new chained list is written in the new chained list of application of joining the team for the reading delay of device and linear speed requirement
In the child node information of the last one odd node of a upper chained list, the address write-in upper one of the first even-numbered nodes of new chained list
In the child node information of the last one even-numbered nodes of chained list.By the pre- read operation of queue double linked list, effectively increases node and go out
The efficiency of team.
In the embodiment of the present invention, sequencing queue module 40 is specifically used for:
It monitors the opening flag for recombinating the data message that the child node information for going out group node in queue includes and starts to mark
The sequencing that will reaches;
It will be in the scheduling row number write-in sequencing queue of the corresponding node of the opening flag of first arrival;
Node corresponding with the opening flag of first arrival is belonged to the scheduling of the data message of same recombination queue successively
Serial number is written in sequencing queue;
When the child node information of presently written node includes message trailer mark, the node of next arrival, which is used as, to be started
Indicate corresponding node, it will be in the scheduling serial number write-in sequencing queue of the node of next arrival;
Node corresponding with the opening flag of next arrival is belonged to the tune of the data message of same recombination queue successively
It spends in serial number write-in sequencing queue;
And so on, until the scheduling serial number of all data messages of all recombination queues is written in sequencing queue.
In the present embodiment, since queue scheduling intersects team, the node for belonging to the same data message is not continuous,
The problem of cannot continuously providing dequeue command in order to avoid the node of the same data message, devise the message of dequeue command
Reorganization operation.Belong in the chained list of node formation of the same data message, first node includes opening flag, and tail node includes report
Literary tail tag is known, and according to the sequencing that opening flag reaches, i.e., the priority reached according to first node in the same data message is suitable
The node of same data message is sequentially written in sequencing queue by sequence, is realized Packet reassembling operation, is made to belong to the same data message
Node continuously provide dequeue command, ensure that the sequence for sending out dequeue command is identical as the sequence of scheduling, avoid the occurrence of out team
The message alternation sum of order is out of order.Packet reassembling is that one group of recombination queue and a sequencing queue is arranged in all queues, according to line
The clock of the requirement and use of speed, the quantity of recombination queue is arranged.For example, with 10 clock cycle be one go out group when segmentum intercalaris
Point for each goes out in group timing node to complete the dequeue operation of four different queues, needs four recombination queues of setting, often
A queue corresponds to the dequeue operation in a time slot.In order to realize that message goes out group order-preserving, one sequencing queue of setting stores out team
The sequence that the opening flag of a recombination queue reaches, realizes the dequeue commands of queue messages according to the sequence of queue scheduling by recombinating
It is read in queue.Group rate is identical for going out of recombinating that reading and the linear speed of queue require, with going out for one node of completion of every 2 periods
For team, recombination queue realizes that every 2 periods read a queue nodes, is then determined according to message trailer identification field therein
Whether continue to read this queue or switching queue.The dequeue command stored in each queue by being read in queue, and
After obtaining the content of first node, it is determined whether the next node of reader queue still reads other queue nodes, due to team
The row third period can just go out data, and the requirement of the dequeue command of 1 node of every 2 periods reading is made for each queue to be pre-read
Operation, the content of sequencing queue are also pre-read.Four groups of recombination queues and one group of sequencing queue progress are independently pre-read, and are stored in each team
In the pre- read register of row.The pre- read register of each recombination queue, the content of first node, Mei Gechong in storage queue
The operation that group queue is pre-read is separate, and the content in pre- read register is read out each time, and all triggering is new pre-reads
Operation;Sequencing queue is also pre-read, and the number of next queue that will go out team is read out in advance, and one group of setting goes out group information
Register reads the value of the pre- read register of sequencing queue, and in dequeue process, instruction is made to select group node orders.
The present embodiment realizes that the node scheduling divided according to message, whole message go out by the Packet reassembling scheme to continuously going out group queue
Team.
In the embodiment of the present invention, recombination Queue module 20 is additionally operable to:
The child node information of presently written node include message trailer mark when, judge queue after going out team whether be
It is empty;
When next chain heading that queue when being non-empty after going out team, and the child node information for extracting presently written node includes
Address of node pre-reads the child node information of next chained list first node;
According to the odd even sequence of the absolute address of each node in next chained list, intersect the son for obtaining each node in next chained list
Nodal information, write-in recombination queue.
In the embodiment of the present invention, recombination Queue module 20 is additionally operable to:
When queue when being sky after going out team, release queue scheduling instruction stops the step of write-in recombinates queue.
The present embodiment message trailer mark be used to indicate each chained list tail node whether be message the last one node(0
Expression is not message trailer, and 1 representative is message trailer), in order to pre- dequeue operation.Each chained list is allocated in advance in initialization
Good continuous space, 1 chained list only receive the node of the same data message.In dequeue process, each chained list is saved by first
It points out team to start, to the last a node is read, and chained list is released.It is last belonging to queue after queue goes out team's reading sky
One chained list node goes out after team, discharges queue.According in queue descriptor queue first address and tail address and queue
Go out the sub- pointer of team and sub- pointer of joining the team, judges whether after queue goes out team be empty, if queue is sky, sends out and discharges this chained list
Order no longer pre-reads message trailer mark.If queue is non-empty, the child node information of next chained list is pre-read in the queue, is selected
Corresponding node message tail identification information is selected, write-in odd even message trailer identifies chained list.The present embodiment belongs to by queue empty and by sky
Property judgement, complete the maintenance of idle chained list.
The foregoing is merely the preferred embodiment of the present invention, are not intended to limit the scope of the invention, every utilization
Equivalent structure or equivalent flow shift made by description of the invention and accompanying drawing content is applied directly or indirectly in other correlations
Technical field, be included within the scope of the present invention.
Claims (10)
1. a kind of data queue goes out group management-control method, which is characterized in that including step:
Receiving queue dispatch command, obtain the queue first address and the queue in queue descriptor goes out in group chained list team's section
Point goes out the sub- pointer of team, is combined into out the absolute address of group node;
According to the sequence for the absolute address for going out group node in current chained list, the child node letter for going out group node in current chained list is obtained
Breath, write-in recombination queue, reconfigures as data message, and all nodes write-in for belonging to same data message is same heavy
In group queue;According to the odd even sequence for going out group node in current chained list, intersects the child node information for prefetching and going out group node next time, write
Enter odd even chained list, and prefetches the message trailer mark for going out group node next time from odd even chained list;
The opening flag for going out the data message that the child node information of group node includes in the recombination queue is monitored, according to described
The scheduling serial number of data message is written in sequencing queue successively for the sequencing that opening flag reaches;
According to the scheduling numeric order of data dequeued message in the sequencing queue, the team that goes out stored in queue will be recombinated successively and is saved
The child node information of point is taken out, and is directed toward corresponding data message storage location, send datagram dequeue instruction.
2. data queue according to claim 1 goes out group management-control method, which is characterized in that described according to going out in current chained list
The sequence of the absolute address of team's node obtains the child node information for going out group node in current chained list, and write-in recombinates queue, again group
It is combined into data message;According to the odd even sequence for going out group node in current chained list, intersect the child node letter for prefetching to go out next time group node
Odd even chained list is written in breath, and the step of message trailer mark for going out group node next time is prefetched from odd even chained list specifically includes:
According to the odd even sequence for the absolute address for going out group node in current chained list, it is odd number that group node division will be gone out in current chained list
Node and even-numbered nodes;
According to the absolute address of current odd node, the child node information of current odd node, write-in recombination queue are obtained;It pre-reads
The child node information of next odd node, is written strange chained list;
According to the absolute address of current even-numbered nodes, the child node information of current even-numbered nodes, write-in recombination queue are obtained;It pre-reads
Even chained list is written in the child node information of next even-numbered nodes;
According to the absolute address of next odd node, the child node information of next odd node, write-in recombination queue are obtained;It pre-reads
The child node information of next odd node again, is written strange chained list;
According to the absolute address of next even-numbered nodes, the child node information of next even-numbered nodes, write-in recombination queue are obtained;It pre-reads
Even chained list is written in the child node information of next even-numbered nodes again;
And so on, until recombination queue is written in the child node information of all nodes in current chained list.
3. data queue according to claim 1 goes out group management-control method, which is characterized in that the monitoring recombination queue
In go out the opening flag of the data message that the child node information of group node includes, the priority reached according to the opening flag is suitable
Sequence successively specifically includes the step that the scheduling serial number of data message is written in sequencing queue:
It monitors the opening flag for going out the data message that the child node information of group node includes in the recombination queue and described opens
Begin to indicate the sequencing reached;
It will be in the scheduling row number write-in sequencing queue of the corresponding node of the opening flag of first arrival;
Node corresponding with the opening flag of first arrival is belonged to the scheduling of the data message of same recombination queue successively
Serial number is written in sequencing queue;
When the child node information of presently written node includes message trailer mark, the node of next arrival is as opening flag
Corresponding node, will be in the scheduling serial number write-in sequencing queue of the node of next arrival;
Node corresponding with the opening flag of next arrival is belonged to the tune of the data message of same recombination queue successively
It spends in serial number write-in sequencing queue;
And so on, until the scheduling serial number of all data messages of all recombination queues is written in sequencing queue.
4. data queue according to any one of claims 1 to 3 goes out group management-control method, which is characterized in that described according to working as
Go out in preceding chained list group node odd even sequence, intersect prefetch next time go out group node child node information, be written odd even chained list, and from
Further include after the step of prefetching the message trailer mark for going out group node next time in odd even chained list:
The child node information of presently written node include message trailer mark when, judge the queue after going out team whether be
It is empty;
When next chain heading that the queue when being non-empty after going out team, and the child node information for extracting presently written node includes
Address of node pre-reads the child node information of next chained list first node;
According to the odd even sequence for the absolute address for going out group node in next chained list, intersect the son for obtaining and going out group node in next chained list
Nodal information, write-in recombination queue.
5. data queue according to claim 4 goes out group management-control method, which is characterized in that described in presently written node
When child node information includes message trailer mark, judge whether the queue is after empty step after going out team and further includes:
When the queue when being sky after going out team, release queue scheduling instruction stops write-in recombination queue.
6. a kind of data queue goes out group control device, which is characterized in that including:
Address generation module is used for receiving queue dispatch command, obtains the queue first address in queue descriptor and the queue
Go out in group chained list group node go out the sub- pointer of team, be combined into out the absolute address of group node;
Recombination Queue module obtains and goes out in current chained list for the sequence according to the absolute address for going out group node in current chained list
The child node information of team's node, write-in recombination queue, reconfigures as data message, and will belong to all of same data message
Node is written in the same recombination queue;
Queue module is pre-read, for according to the odd even sequence for going out group node, intersecting the child node information for prefetching and going out group node next time,
Odd even chained list is written, and prefetches the message trailer mark for going out group node next time from odd even chained list;
Sequencing queue module, for monitoring the data message for going out the child node information of group node in the recombination queue and including
According to the sequencing that the opening flag reaches sequencing queue is written successively in the scheduling serial number of data message by opening flag
In;
Dequeue instruction module will recombinate queue successively for the scheduling serial number according to data dequeued message in the sequencing queue
The child node information for going out group node of middle storage is taken out, and is directed toward corresponding data message storage location, send datagram out team
Instruction.
7. data queue according to claim 6 goes out group control device, which is characterized in that the recombination Queue module is specific
For:
According to the odd even sequence for the absolute address for going out group node in current chained list, it is odd number that group node division will be gone out in current chained list
Node and even-numbered nodes;
According to the absolute address of current odd node, the child node information of current odd node, write-in recombination queue are obtained;It pre-reads
The child node information of next odd node, is written strange chained list;
According to the absolute address of current even-numbered nodes, the child node information of current even-numbered nodes, write-in recombination queue are obtained;It pre-reads
Even chained list is written in the child node information of next even-numbered nodes;
According to the absolute address of next odd node, the child node information of next odd node, write-in recombination queue are obtained;It pre-reads
The child node information of next odd node again, is written strange chained list;
According to the absolute address of next even-numbered nodes, the child node information of next even-numbered nodes, write-in recombination queue are obtained;It pre-reads
Even chained list is written in the child node information of next even-numbered nodes again;
And so on, until recombination queue is written in the child node information of all nodes in current chained list.
8. data queue according to claim 6 goes out group control device, which is characterized in that the sequencing queue module is specific
For:
It monitors the opening flag for going out the data message that the child node information of group node includes in the recombination queue and described opens
Begin to indicate the sequencing reached;
It will be in the scheduling row number write-in sequencing queue of the corresponding node of the opening flag of first arrival;
Node corresponding with the opening flag of first arrival is belonged to the scheduling of the data message of same recombination queue successively
Serial number is written in sequencing queue;
When the child node information of presently written node includes message trailer mark, the node of next arrival is as opening flag
Corresponding node, will be in the scheduling serial number write-in sequencing queue of the node of next arrival;
Node corresponding with the opening flag of next arrival is belonged to the tune of the data message of same recombination queue successively
It spends in serial number write-in sequencing queue;
And so on, until the scheduling serial number of all data messages of all recombination queues is written in sequencing queue.
9. data queue goes out group control device according to claim 6 to 8 any one of them, which is characterized in that the recombination team
Row module is additionally operable to:
The child node information of presently written node include message trailer mark when, judge the queue after going out team whether be
It is empty;
When next chain heading that the queue when being non-empty after going out team, and the child node information for extracting presently written node includes
Address of node pre-reads the child node information of next chained list first node;
According to the odd even sequence for the absolute address for going out group node in next chained list, intersect the son for obtaining and going out group node in next chained list
Nodal information, write-in recombination queue.
10. data queue according to claim 9 goes out group control device, which is characterized in that the recombination Queue module is also
For:
When the queue when being sky after going out team, release queue scheduling instruction stops the step of write-in recombinates queue.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310003565.0A CN103914341B (en) | 2013-01-06 | 2013-01-06 | Data queue goes out group management-control method and device |
PCT/CN2013/090148 WO2014106436A1 (en) | 2013-01-06 | 2013-12-20 | Method and apparatus for managing and controlling data queue dequeuing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310003565.0A CN103914341B (en) | 2013-01-06 | 2013-01-06 | Data queue goes out group management-control method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103914341A CN103914341A (en) | 2014-07-09 |
CN103914341B true CN103914341B (en) | 2018-09-25 |
Family
ID=51040046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310003565.0A Active CN103914341B (en) | 2013-01-06 | 2013-01-06 | Data queue goes out group management-control method and device |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103914341B (en) |
WO (1) | WO2014106436A1 (en) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106254270A (en) * | 2015-06-15 | 2016-12-21 | 深圳市中兴微电子技术有限公司 | A kind of queue management method and device |
CN106325758B (en) * | 2015-06-17 | 2019-10-22 | 深圳市中兴微电子技术有限公司 | A kind of queue storage space management method and device |
CN108234348B (en) * | 2016-12-13 | 2020-09-25 | 深圳市中兴微电子技术有限公司 | Processing method and device in queue operation |
US11023275B2 (en) * | 2017-02-09 | 2021-06-01 | Intel Corporation | Technologies for queue management by a host fabric interface |
CN111158936B (en) * | 2017-06-15 | 2024-04-09 | 北京忆芯科技有限公司 | Method and system for exchanging information by queues |
CN108763116B (en) * | 2018-05-21 | 2021-08-06 | 南京大学 | Multi-channel DDR controller based on greedy algorithm |
CN110837414B (en) * | 2018-08-15 | 2024-04-12 | 京东科技控股股份有限公司 | Task processing method and device |
CN111930307B (en) * | 2020-07-30 | 2022-06-17 | 北京浪潮数据技术有限公司 | Data reading method, device and equipment and computer readable storage medium |
CN111796306B (en) * | 2020-07-31 | 2023-05-02 | 北京中捷时代航空科技有限公司 | Navigation satellite signal receiving method and receiver |
CN112118262B (en) * | 2020-09-21 | 2022-07-29 | 武汉中元华电科技股份有限公司 | System and method for realizing data sorting and merging based on dynamic memory allocation |
CN113595932B (en) * | 2021-08-06 | 2024-05-14 | 上海金仕达软件科技股份有限公司 | Processing method of data disorder message and application specific integrated circuit |
CN114185693A (en) * | 2021-11-22 | 2022-03-15 | 西安空间无线电技术研究所 | Self-repairable multi-node aggregation shared queue management method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101594302A (en) * | 2009-07-01 | 2009-12-02 | 华为技术有限公司 | The method of dequeuing data and device |
CN101854309A (en) * | 2010-06-18 | 2010-10-06 | 中兴通讯股份有限公司 | Method and apparatus for managing message output |
US8036117B1 (en) * | 2002-01-17 | 2011-10-11 | Juniper Networks, Inc. | Dequeuing and congestion control systems and methods |
CN102437929A (en) * | 2011-12-16 | 2012-05-02 | 华为技术有限公司 | Method and device for de-queuing data in queue manager |
-
2013
- 2013-01-06 CN CN201310003565.0A patent/CN103914341B/en active Active
- 2013-12-20 WO PCT/CN2013/090148 patent/WO2014106436A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8036117B1 (en) * | 2002-01-17 | 2011-10-11 | Juniper Networks, Inc. | Dequeuing and congestion control systems and methods |
CN101594302A (en) * | 2009-07-01 | 2009-12-02 | 华为技术有限公司 | The method of dequeuing data and device |
CN101854309A (en) * | 2010-06-18 | 2010-10-06 | 中兴通讯股份有限公司 | Method and apparatus for managing message output |
CN102437929A (en) * | 2011-12-16 | 2012-05-02 | 华为技术有限公司 | Method and device for de-queuing data in queue manager |
Also Published As
Publication number | Publication date |
---|---|
WO2014106436A1 (en) | 2014-07-10 |
CN103914341A (en) | 2014-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103914341B (en) | Data queue goes out group management-control method and device | |
CN101291546B (en) | Switching structure coprocessor of core router | |
CN107220187A (en) | A kind of buffer memory management method, device and field programmable gate array | |
US6757791B1 (en) | Method and apparatus for reordering packet data units in storage queues for reading and writing memory | |
CN101635682B (en) | Storage management method and storage management system | |
CN106537858B (en) | A kind of method and apparatus of queue management | |
CN103955436B (en) | A kind of data processing equipment and terminal | |
CN109787919A (en) | A kind of method, apparatus, computer storage medium and the terminal of information transmission | |
CN106325758B (en) | A kind of queue storage space management method and device | |
CN101989942B (en) | Arbitration control method, communication method, arbitrator and communication system | |
CN101150485A (en) | A management method for network data transmission of zero copy buffer queue | |
CN101150486A (en) | A management method for receiving network data of zero copy buffer queue | |
CN108366111A (en) | A kind of data packet low time delay buffer storage and method for switching equipment | |
CN106612236A (en) | Many-core network processor and micro engine message scheduling method and micro engine message scheduling system thereof | |
CN103858393B (en) | Bag for the parallel processing of bag processes circuit | |
CN101771598A (en) | Communication dispatching method of real-time Ethernet | |
CN103297350B (en) | Implementing method and switching equipment of cell switching system | |
CN102622323A (en) | Data transmission management method based on switch matrix in dynamic configurable serial bus | |
CN105335323A (en) | Buffering device and method of data burst | |
CN101923522A (en) | Storage controller and processing method of data operation commands | |
CN104104617B (en) | A kind of message referee method and device | |
CN111352657A (en) | Method for reading x86 data by FPGA high-speed and high-efficiency running water | |
CN106375249A (en) | Switching chip data structure, control method and control system thereof | |
US20030235189A1 (en) | Pointer allocation by prime numbers | |
CN101764760B (en) | Multilink message capturing method, and method and system for processing multilink message |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221024 Address after: Zhongxing Industrial Park, Liuxian Avenue, Xili Street, Nanshan District, Shenzhen City, Guangdong Province Patentee after: SANECHIPS TECHNOLOGY Co.,Ltd. Address before: 518057 Ministry of justice, Zhongxing building, South Science and technology road, Nanshan District hi tech Industrial Park, Shenzhen, Guangdong Patentee before: ZTE Corp. |