CN108833307A - DEU data exchange unit - Google Patents
DEU data exchange unit Download PDFInfo
- Publication number
- CN108833307A CN108833307A CN201810660086.9A CN201810660086A CN108833307A CN 108833307 A CN108833307 A CN 108833307A CN 201810660086 A CN201810660086 A CN 201810660086A CN 108833307 A CN108833307 A CN 108833307A
- Authority
- CN
- China
- Prior art keywords
- caching
- queue
- crossover node
- data packet
- buffer
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The present invention provides a kind of DEU data exchange units, including:N number of input-buffer, N2A crossover node caching and N number of output caching, each input-buffer corresponding one caches the crossover node cache lines formed by N number of crossover node, corresponding one crossover node caching column being made of N number of crossover node caching of each output caching, each input-buffer and each output caching divide cache partitions according to the configuration information of its direct-connected port mode respectively;Each crossover node caching caches the configuration information division cache partitions of corresponding port mode according to corresponding output is arranged;Input-buffer is used to received data packet being stored in crossover node corresponding with the destination slogan carried in data packet and cache;Crossover node caching is cached for data packet to be conveyed output corresponding with destination slogan;Output caching reaches the technical effect utmostly utilized under the premise of not influencing performance to caching for data packet to be conveyed to destination port corresponding with destination slogan in N number of destination port.
Description
Technical field
The present invention relates to chip design art fields, more particularly, to a kind of DEU data exchange unit.
Background technique
According to agreement, RapidIO physical port supports tri- kinds of port modes of 1x, 2x and 4x, 1x to refer to that a serdes is (high
Fast serial line interface, the external interface form of switch) transmission data;2x refers to two serdes simultaneous transmission a ports
Data;If port is 4x, the message of this port transmission will be divided into four parts, receive and dispatch simultaneously from 4 physics serdes.
Cross bar structure CrossBar is due to nonblocking switching ability and realizing simple, many mature quotient
Design is swapped using cross bar structure with chip.When swapping design, switching port quantity and greatest physical end
Mouth number should match, such as:When physical port is there are when N number of port 4x, when they support 1x to configure again, in order to physics
Port number matches, and exchange network needs are designed to support 4N switching port, and performance throughout will support the end 4x
Mouth handling capacity is 4 times of the port 1x handling capacity.
When physical port all configuration 4x modes, the port number of real work be it is N number of, port handling capacity is setting for 4x
Count handling capacity;And when physical port is all configured to 1x mode, the port number of real work is 4N, and each port
Handling capacity is only design full handling capacity 1/4.So in the operative scenario that fractionation and polymerization are supported in port, current intersection
Construction of switch will appear the situation that port is idle or handling capacity is idle, this be finally presented as the effective rates of utilization of cachings at different levels compared with
It is low, the waste of caching related resource area and power consumption is in turn resulted in, especially in a chip design, the increase of area represents cost
Promotion.
Summary of the invention
In view of this, the purpose of the present invention is to provide a kind of DEU data exchange unit, to alleviate in the prior art without energy
The technical issues of switching fabric compatible with tri- kinds of port modes of 1x, 2x and 4x of RapidIO respectively of enough adaptability.
In a first aspect, the embodiment of the invention provides a kind of DEU data exchange units, including:N number of input-buffer, N2A intersection
Nodal cache and N number of output caching, each input-buffer corresponding one is cached by the crossover node that N number of crossover node caching forms
Row, corresponding one crossover node caching column being made of N number of crossover node caching of each output caching, each input-buffer and
Each output caching divides cache partitions according to the configuration information of its direct-connected port mode respectively;Each crossover node caching is pressed
Cache partitions are divided according to the corresponding configuration information for exporting the corresponding port mode of caching is arranged, wherein N >=1;
The input-buffer, the data packet for being received using internal the first cache partitions caching input port, and
It will be corresponding with the destination slogan carried in the data packet in data packet deposit and corresponding crossover node cache lines
Crossover node caching;
The crossover node caching, for caching the data packet received using the second internal cache partitions, and
Crossover node caching where the data packet is stored in presently described crossover node caching arranges corresponding output caching;
Output caching, for caching the data packet received using internal third cache partitions, and by institute
It states data packet and is conveyed to destination port corresponding with the destination slogan in N number of destination port.
With reference to first aspect, the embodiment of the invention provides the first possible embodiments of first aspect, wherein institute
Stating port mode includes:1x mode, 2x mode and 4x mode;
When the port mode is 1x mode, each input-buffer, each crossover node caching and each
4 cache partitions are respectively divided out in the output caching;
Alternatively, being two 2x modes, each input-buffer, each crossover node caching in the port mode
2 cache partitions are respectively divided out in each output caching;
Alternatively, when the port mode is 2x and two 1x mode, each input-buffer, each intersection
3 cache partitions are respectively divided out in nodal cache and each output caching;
Alternatively, when the port mode is 4x mode, each input-buffer, each crossover node caching and
1 cache partitions is marked off in each output caching.
With reference to first aspect, the embodiment of the invention provides second of possible embodiments of first aspect, wherein institute
Stating input-buffer includes:At least one first cache partitions, at least one first virtual output queue and one first scheduling mould
Block, first cache partitions and first virtual output queue correspond;
First cache partitions, the data packet received for caching the input port;
It include at least one first queue in each first virtual output queue, the first queue is for storing institute
State first buffer address of the data packet in first cache partitions corresponding with first virtual output queue;
First scheduler module, for being included at least one first virtual output queue according to default referee conditions
Whole first queues in determine object queue, and read the data in the first buffer address for being stored in the object queue
Packet, will be corresponding with the destination port in data packet deposit and the corresponding crossover node cache lines of the input-buffer
Crossover node caching.
With reference to first aspect, the embodiment of the invention provides the third possible embodiments of first aspect, wherein institute
Stating the first scheduler module includes:First moderator and first transfers device;
First moderator, for being included at least one first virtual output queue according to default referee conditions
Target first queue is determined in whole first queues;
Described first transfers device, for reading the data in the first buffer address being stored in the target first queue
The data packet is stored in crossover node cache lines corresponding with the input-buffer, corresponding with the destination port by packet
Crossover node caching.
With reference to first aspect, the embodiment of the invention provides the 4th kind of possible embodiments of first aspect, wherein institute
Stating crossover node caching includes:At least one second cache partitions, at least one second virtual output queue and one second tune
Module is spent, second cache partitions and second virtual output queue correspond;
Second cache partitions, for caching the data packet received;
It include a second queue in each second virtual output queue, the second queue is for storing the number
According to second buffer address of the packet in the cache partitions corresponding with second virtual output queue;
Second scheduler module, for being included at least one second virtual output queue according to default referee conditions
Whole second queues in determine target second queue, and read the second buffer address for being stored in the target second queue
In data packet, corresponding defeated of crossover node caching column where the data packet to be stored in presently described crossover node caching
It caches out.
With reference to first aspect, the embodiment of the invention provides the 5th kind of possible embodiments of first aspect, wherein institute
Stating the second scheduler module includes:Second moderator and second transfers device;
Second moderator, for being included at least one second virtual output queue according to default referee conditions
Target second queue is determined in whole second queues;
Described second transfers device, for reading the data in the second buffer address being stored in the target second queue
Packet, the crossover node caching where the data packet is stored in presently described crossover node caching arrange corresponding output and cache.
With reference to first aspect, the embodiment of the invention provides the 6th kind of possible embodiments of first aspect, wherein institute
Stating output caching includes:At least one third cache partitions, at least one third virtual output queue and a third dispatch mould
Block, the third cache partitions and the third virtual output queue correspond;
The third cache partitions, for caching the data packet received;
It include a third queue in each third virtual output queue, the third queue is for storing the number
According to third buffer address of the packet in the cache partitions corresponding with the third virtual output queue;
The third scheduler module, for being included at least one third virtual output queue according to default referee conditions
Whole third queues in determine the queue of target third, and read the third buffer address that is stored in the target third queue
In data packet, the data packet is conveyed to destination port corresponding with the destination slogan.
With reference to first aspect, the embodiment of the invention provides the 7th kind of possible embodiments of first aspect, wherein institute
Stating third scheduler module includes:Third moderator and third transfer device;
The third moderator, for being included at least one third virtual output queue according to default referee conditions
The queue of target third is determined in whole third queues;
The third transfers device, for reading the data in the third buffer address being stored in the target third queue
Packet, is conveyed to destination port corresponding with the destination slogan for the data packet.
With reference to first aspect, the embodiment of the invention provides the 8th kind of possible embodiments of first aspect, wherein institute
Input-buffer, crossover node caching and output caching is stated to be driven by clock signal respectively.
With reference to first aspect, the embodiment of the invention provides the 9th kind of possible embodiments of first aspect, wherein institute
It states DEU data exchange unit and receives the configuration information from external register.
The embodiment of the present invention brings following beneficial effect:DEU data exchange unit provided in an embodiment of the present invention includes:It is N number of
Input-buffer, N2A crossover node caching and N number of output caching, wherein each input-buffer corresponding one by N number of crossover node
The crossover node cache lines of composition are cached, corresponding one of each output caching caches the intersection section formed by N number of crossover node
Point cache column correspond to, and each input-buffer and each output caching are divided according to the configuration information of its direct-connected port mode respectively
Cache partitions;Each crossover node caching caches the configuration information division caching of corresponding port mode according to corresponding output is arranged
Subregion;The input-buffer, the data packet for being received using internal the first cache partitions caching input port, and by institute
State corresponding with the destination slogan carried in the data packet in data packet deposit and corresponding crossover node cache lines intersect
Nodal cache;The crossover node caching, for caching the data packet received using the second internal cache partitions, and
Crossover node caching where the data packet is stored in presently described crossover node caching arranges corresponding output caching;It is described
Output caching for caching the data packet received using internal third cache partitions, and the data packet is conveyed
To destination port corresponding with the destination slogan in N number of destination port.
The present invention in each input-buffer and each output by caching respectively according to the configuration of its direct-connected port mode
Information divides cache partitions, and each crossover node caching caches the configuration information of corresponding port mode according to corresponding output is arranged
Cache partitions are divided, input-buffer, crossover node caching and output are cached into the interior quantity of cache partitions and matching for port mode
Confidence breath associates, and is able to respond in the port mode of different configuration informations configuration, adjust automatically input-buffer, crossover node
The quantity of caching and cache partitions in output caching, also, can be by the data packet received successively in data exchange process
It is stored in the third cache partitions of the first cache partitions of input-buffer, the second cache partitions of crossover node caching and output caching
In, it realizes in the operative scenario that fractionation and polymerization are supported in port, avoids due to being inputted in port mode and data exchange chip
Caching, crossover node caching and the unmatched situation in cache partitions in output caching, caused port is idle or handling capacity is not busy
The case where setting improves effective benefit of input-buffer in data exchange chip, crossover node caching and cache partitions in output caching
With rate, the waste of cache partitions related resource area and power consumption is avoided.
Other features and advantages of the present invention will illustrate in the following description, also, partly become from specification
It obtains it is clear that understand through the implementation of the invention.The objectives and other advantages of the invention are in specification, claims
And specifically noted structure is achieved and obtained in attached drawing.
To enable the above objects, features and advantages of the present invention to be clearer and more comprehensible, preferred embodiment is cited below particularly, and cooperate
Appended attached drawing, is described in detail below.
Detailed description of the invention
It, below will be to specific in order to illustrate more clearly of the specific embodiment of the invention or technical solution in the prior art
Embodiment or attached drawing needed to be used in the description of the prior art be briefly described, it should be apparent that, it is described below
Attached drawing is some embodiments of the present invention, for those of ordinary skill in the art, before not making the creative labor
It puts, is also possible to obtain other drawings based on these drawings.
Fig. 1 is a kind of internal structure chart of DEU data exchange unit provided in an embodiment of the present invention;
Fig. 2 is a kind of structure chart of input-buffer internal queues provided in an embodiment of the present invention;
Fig. 3 is another internal structure chart of DEU data exchange unit provided in an embodiment of the present invention;
Fig. 4 is another internal structure chart of DEU data exchange unit provided in an embodiment of the present invention;
Fig. 5 is another internal structure chart of DEU data exchange unit provided in an embodiment of the present invention.
Specific embodiment
In order to make the object, technical scheme and advantages of the embodiment of the invention clearer, below in conjunction with attached drawing to the present invention
Technical solution be clearly and completely described, it is clear that described embodiments are some of the embodiments of the present invention, rather than
Whole embodiments.Based on the embodiments of the present invention, those of ordinary skill in the art are not making creative work premise
Under every other embodiment obtained, shall fall within the protection scope of the present invention.
At present when N number of physical port should support N number of 4x port mode to support 4N 1x port mode again, exchange end
The quantity of mouth is designed according to the quantity of the port 1X, and the handling capacity of each port will meet handling up for the port 4x, however, working as
When physical port is configured to 4x port mode, the practical only N number of switching port work of exchange network, idle switching port institute
Corresponding nodal cache will temporarily leave unused, and cause to waste;When physical port is configured to 1x port mode, 4N switching port is all
It is working, but the goodput of each port only has the 1/4 of projected throughput, that is, expiring for N number of switching port is handled up
Amount, that is to say, that when its work is in 1x port mode, also can each nodal cache can not also efficiently use, cause to waste, be based on
This, a kind of DEU data exchange unit provided in an embodiment of the present invention, by being pressed respectively in each input-buffer and each output caching
Cache partitions are divided according to the configuration information of its direct-connected port mode, each crossover node caching is cached according to corresponding output is arranged
The configuration information of corresponding port mode divides cache partitions, by input-buffer, crossover node caching and caching in output caching
The quantity of subregion associates with the configuration information of port mode, is able to respond in the port mode of different configuration informations configuration,
The quantity of adjust automatically input-buffer, crossover node caching and cache partitions in output caching, also, in data exchange process
The data packet received can be sequentially stored into the first cache partitions of input-buffer, the second cache partitions of crossover node caching
In the third cache partitions of output caching, realizes in the operative scenario that fractionation and polymerization are supported in port, avoid due to port
Input-buffer, crossover node caching and the unmatched situation in cache partitions in output caching, lead in mode and data exchange chip
The situation that the port of cause is idle or handling capacity is idle, improve input-buffer in data exchange chip, crossover node caching with it is defeated
The effective rate of utilization of cache partitions, avoids the waste of cache partitions related resource area and power consumption in caching out.
For convenient for understanding the present embodiment, first to a kind of DEU data exchange unit disclosed in the embodiment of the present invention into
Row is discussed in detail, as shown in Figure 1, the DEU data exchange unit includes:N number of input-buffer 11, N2A crossover node caches 12 and N
A output caches 13, and the switching fabric in DEU data exchange unit provided by the embodiment of the present invention is that classical crossbar intersects
Matrix, so the corresponding one crossover node cache lines being made of N number of crossover node caching 12 of each input-buffer 11, each defeated
Corresponding one crossover node caching column being made of N number of crossover node caching 12 of caching 13 out, each input-buffer 11 and every
A output caching 13 divides cache partitions according to the configuration information of its direct-connected port mode respectively;Each crossover node caching 12
Cache partitions are divided according to the corresponding configuration information for exporting the corresponding port mode of caching is arranged, wherein N >=1;
In embodiments of the present invention, illustratively, in order to respectively correspond four lane of RapidIO, each input-buffer
11 (Input Buffer, IB), each crossover node cache 12 (Crosspoint Buffer, CXB) and each output caching 13
(Output Buffer, OB) can be equally divided into 4 parts in advance, and the four parts of cachings divided equally are intermediate mutually indepedent, have respective
Read-write Catrol, prevent the case where blocking mutually between port;Simultaneously can also according to the configuration information of port mode into
Row freely merges, and under the premise of not increasing additional control overhead, meets when port trunking is 2x or 4x mode to buffer memory capacity
Requirement.
Illustratively, the port mode includes:1x mode, 2x mode and 4x mode;It is 1x mould in the port mode
When formula, it is respectively divided in each input-buffer 11, each crossover node caching 12 and each output caching 13
4 cache partitions out;When the port mode is two 2x modes, each input-buffer 11, each intersection section
2 cache partitions are respectively divided out in point cache 12 and each output caching 13;The port mode is a 2x and two
When a 1x mode, divide in each input-buffer 11, each crossover node caching 12 and each output caching 13
3 cache partitions are not marked off;When the port mode is 4x mode, each input-buffer 11, each intersection
1 cache partitions is marked off in nodal cache 12 and each output caching 13.
In such a way that caching splits combination, can realize N number of 4x aggregation port expire handling capacity exchange require while,
It can also realize that the port most 4N 1x swaps, and no matter under 4x or 1x operating mode, switching node caches all
Can utmostly obtain using.
In embodiments of the present invention, the input-buffer 11, crossover node caching 12 and the output cache 13 points
It is not driven by clock signal.The DEU data exchange unit receives the configuration information from external register.
The input-buffer 11, the data packet for being received using internal the first cache partitions caching input port,
And it is data packet deposit is corresponding with the destination slogan that carries in the data packet with corresponding crossover node cache lines
Crossover node caching 12, in embodiments of the present invention, each input-buffer have 4 input ports, in different configuration modes
Lower selection sex work, i.e. only one port working under 4x mode, lower 4 ports of 1x mode all work;
The crossover node caching 12, for caching the data packet received using the second internal cache partitions,
And the data packet is stored in output corresponding to the crossover node caching column at presently described 12 place of crossover node caching and is cached
13;
The output caching 14, for caching the data packet received using internal third cache partitions, and will
The data packet is conveyed to destination port corresponding with the destination slogan, in embodiments of the present invention, the number of destination port
It measures related with configuration information, is 4N preferably at most under 1x mode, be at least under 4x mode be N number of;In actual design, meeting
4N destination port is set, it is effective only to only have N number of destination port under 4X mode.
In embodiments of the present invention, the input-buffer 11 includes:At least one first cache partitions, at least one first
Virtual output queue and first scheduler module, first cache partitions and first virtual output queue one are a pair of
It answers, the first virtual output queue is empty state before receiving data packet;
First cache partitions, the data packet received for caching the input port;
It include at least one first queue in each first virtual output queue, first in the first virtual output queue
The number of queue is consistent with the number of destination port, the first queue for store the data packet with it is described first virtual
The first buffer address in corresponding first cache partitions of output queue, for ease of understanding, illustratively, Fig. 2 is input
When port is 1x mode, input-buffer is divided into 4 cache partitions, and corresponding four the first virtual output queue, each first is empty
The case where including at least one first queue in quasi- output queue, in embodiments of the present invention, the in the first virtual output queue
The number of one queue caches the catalogue of (each output caching only corresponds to 1-4 physical port, is determined by configuring) with all outputs
The number of port have a relationship, the number of first queue is N in the first virtual output queue when port mode is 4X mode
A, the number of first queue is 2N in the first virtual output queue when port mode is 2X mode, port mode one
The number of first queue is 3N in the first virtual output queue when a 2x and two 1x mode;Port mode be 1X mode when
The number for waiting first queue in the first virtual output queue is 4N;It, can be in the first virtual output queue in actual design
4N first queue is set, only under different configuration status, only specific first queue work, other first queues one
Straight is empty.
First scheduler module, for being included at least one first virtual output queue according to default referee conditions
Whole first queues (each first virtual output queue include at least one first queue) in determine object queue, and read
The data packet being stored in the first buffer address in the object queue, by data packet deposit and the input-buffer pair
Crossover node corresponding with destination port caching in the crossover node cache lines answered.
In embodiments of the present invention, illustratively, default referee conditions can ask rule etc., the first scheduling mould with finger wheel
Block includes:First moderator and first transfers device;Wherein, first moderator is used for according to default referee conditions at least
Whole first queues that one the first virtual output queue is included (each first virtual output queue include at least one first
Queue) in determine target first queue;Described first transfers device, for reading be stored in the target first queue first
Data packet in buffer address, by be stored in first cache partitions at the first buffer address the data packet deposit with
Crossover node caching in the corresponding crossover node cache lines of the input-buffer, corresponding with the destination port.
In embodiments of the present invention, the crossover node caching 12 includes:At least one second cache partitions, at least one
Second virtual output queue and second scheduler module, second cache partitions and second virtual output queue are one by one
Corresponding, the second virtual output queue is that input-buffer is established after receiving data packet;
Second cache partitions, for caching the data packet received;
Since the item number of queue has relationship with the number of the possible target cache of junior, the destination of crossbar contact caching is only
It is only the caching of output corresponding to the column where it, so, it include second team in each second virtual output queue
Column, the second queue is for storing the data packet in the cache partitions corresponding with second virtual output queue
The second buffer address.
Due to each crossover node caching arrange share second scheduler module, second scheduler module, for according to
Default referee conditions is cached from the crossover node at place arranges all the second teams that at least one second virtual output queue is included
Target second queue is determined in column (each second virtual output queue includes a second queue), and is read and be stored in the mesh
The data packet in the second buffer address in second queue is marked, the data packet is stored in where presently described crossover node caching
The corresponding output caching of crossover node caching column.
In embodiments of the present invention, illustratively, default referee conditions can ask rule with finger wheel, can also refer to other rule
Then, second scheduler module includes:Second moderator and second transfers device;Wherein, second moderator, for according to pre-
If referee conditions caches the whole second queues for arranging at least one second virtual output queue and being included from the crossover node at place
Target second queue is determined in (each second virtual output queue includes a second queue);Described second transfers device, is used for
The data packet being stored in the second buffer address in the target second queue is read, the data packet is stored in presently described
Output caching corresponding to crossover node caching column where crossover node caching.
In embodiments of the present invention, the output caching 13 includes:At least one third cache partitions, at least one third
Virtual output queue and a third scheduler module, the third cache partitions and the third virtual output queue one are a pair of
It answers, third virtual output queue is that input-buffer is established after receiving data packet;
The third cache partitions, for caching the data packet received;
It include a third queue in each third virtual output queue, the third queue is for storing the number
According to third buffer address of the packet in the cache partitions corresponding with the third virtual output queue.
The third scheduler module, for being included at least one third virtual output queue according to default referee conditions
Whole third queues (each third virtual output queue include a third queue) in determine the queue of target third, and read
The data packet being stored in the third buffer address in the target third queue, the data packet is conveyed to and the purpose
The corresponding destination port of port numbers.
In embodiments of the present invention, illustratively, default referee conditions can ask rule etc. with finger wheel, and the third dispatches mould
Block includes:Third moderator and third transfer device;Wherein, the third moderator is used for according to default referee conditions at least
(each third virtual output queue includes a third team for whole third queues that one third virtual output queue is included
Column) in determine the queue of target third;The third transfers device, slow for reading the third being stored in the target third queue
The data packet in address is deposited, the data packet is conveyed to destination port corresponding with the destination slogan.
In another embodiment of the present invention, as shown in figure 3, switching fabric is under all polymerization 4x modes in N number of port
The case where, this structure single port exchange capacity is maximum.This exchange modality caching is by N number of IB, N2A CXB and N number of OB composition, often
A IB corresponds to a CXB row being made of N number of CXB, and the CXB column that same each OB is made of by one N number of CXB are right therewith
It answers.
The data packet that input port receives can be cached in IB first, while IB is established according to destination slogan comprising slow
The VOQ (Virtual Output Queue) for depositing address is sent to multiple messages of different destination ports and exists simultaneously due to having,
So moderator is needed to select a buffer address from queue according to preset arbitration mode to be read out and send.
VOQ be established according to source port and destination port, such as:When 1x mode, each IB is four corresponding
Logic (exchange) port needs respectively 4 ports to establish VOQ respectively this when, and wherein the number of queue is 4x mode again
When four times because when 4x mode each IB only correspond to logic (exchange) port.Establish source port in total in this way
Number is multiplied by the several queues of destination port.
Transferring device (SCH) can be defeated from correspondence by data packet according to the buffer address and destination port information in arbitration result
Enter and reads and forwarded into CXB corresponding with destination port in CXB row in caching;Data in deposit CXB can equally be established
VOQ, the second moderator (CXB_ARB) according to CXB arrange in VOQ information obtain cache information to be dispatched, by transfer device read deposit
In the corresponding OB buffering of CXB column;Equally, VOQ can be also established into the data in OB, finally in the control of scheduler and moderator
Port is sent the data under system.
Illustratively, when port mode is 4x mode, rate is maximum, can by input-buffer, crossover node caching and
Cache partitions in output caching condense together uses, reach the utmostly benefit under the premise of not influencing performance to caching
With.
In another embodiment of the present invention, as shown in figure 4, being the port the 4N exchange under disassembled form for all of the port
Structural schematic diagram (in embodiments of the present invention, will be converted into the state of 1x, this process is considered to split) from the state of 4x, on
IB, CXB and OB in figure are divided into four parts respectively;4 sub- IB made of every fractionation share the arbitration dispatch deal of original IB;CXB
Column are split as 4N (port numbers when whole ports are all 1x by original N number of when the port 4x (entirely, port number)
Amount), still use a set of arbitration scheduler module;Equally, the sub- OB of fractionation shares original arbitration dispatch deal.That is it tears open
Switching fabric after point caches independently, but common transmitted pipeline link.Since DEU data exchange unit provided by the invention is set
Being calculated as link exchange before splitting can satisfy exchange handling capacity under four port trunking states, and handling capacity will not increase after fractionation
Greatly, so even if four port common transmitted links, will not influence handling capacity.
IB to CXB data flow under disassembled form:IBx_0, IBx_1, IBx_2 and IBx_3 are independently cached
The data of lane0, lane1, lane2 and lane3;VOQ (Virtual Output Queue) virtual output queue is established respectively,
Virtual output queue content includes the buffer address information of data;Four VOQ share ARB (Arbiter) moderator, obtain preferential
The buffer address of transmission, wherein using polling dispatching algorithm between four VOQ;Shared SCH (Schedule) scheduler according to
The data that arbitration result reads corresponding caching are transmitted in CXB row in CXB caching corresponding with destination port.For example, IBx_0
CXBx_n_2 can be transferred to by being sent to OBn_2 mouthfuls of data.
The data transmission of CXB to OB carries out between the CXB in CXB column, secondary compared with switching fabric under full polymerization state
It cuts out and increases level-one and split decision process between port, that is to say, that since CXB is corresponding with OB, when OB is in 1x state, one
OB corresponds to 4 ports, this when, CXB also will be corresponding to 4 ports, and the number of the VOQ inside CXB also will be corresponding to increasing;CXB is arrived
Arbitration between OB will be divided into two steps:
1, it carries out fair poll arbitration in CXB column between each VOQ0, VOQ1, VOQ2 and VOQ3 respectively, obtains 4 results;
2, the arbitration result that the first step obtains, if there is it is multiple effectively, then need to carry out primary fair poll arbitration again, most
A result is obtained eventually.
When port mode is 1x mode, the cache partitions that input-buffer, crossover node are cached and exported in caching can
It to split into four parts, is used, is reached under the premise of not influencing performance to caching utmostly with distributing to multiple ports
It utilizes.
It is a kind of polymerization in another embodiment of the present invention, shown in Fig. 5 and split simultaneous mixed mode scene,
It is the equal of that IB0 and IB1 merges in Fig. 4, so there was only IB0, IB2 and IB3 in Fig. 5, port 0 is 4x aggregation port, and IBn_0 is
2x aggregation port, IBn_2 and IBn_3 are that 1x splits port.In such a scenario, 4 sub- IB of IB0 are polymerized to one piece big slow again
Deposit the slightly larger handling capacity to cope with big flow under 4x mode, under IBn_0 and IBn_1 combination reply 2x mode.
Equally, OB to port processing, and arbitration increase level-one split port between judgement;Dispatch deal increases pair
Distribution between splitting port.
When port mode is 2x and 1x mode, input-buffer, crossover node are cached and are exported the caching point in caching
Area can split into three parts, used with distributing to multiple ports, reach the maximum under the premise of not influencing performance to caching
Degree utilizes.
In addition, in the description of the embodiment of the present invention unless specifically defined or limited otherwise, term " installation ", " phase
Even ", " connection " shall be understood in a broad sense, for example, it may be being fixedly connected, may be a detachable connection, or be integrally connected;It can
To be mechanical connection, it is also possible to be electrically connected;It can be directly connected, can also can be indirectly connected through an intermediary
Connection inside two elements.For the ordinary skill in the art, above-mentioned term can be understood at this with concrete condition
Concrete meaning in invention.
In the description of the present invention, it should be noted that term " center ", "upper", "lower", "left", "right", "vertical",
The orientation or positional relationship of the instructions such as "horizontal", "inner", "outside" be based on the orientation or positional relationship shown in the drawings, merely to
Convenient for description the present invention and simplify description, rather than the device or element of indication or suggestion meaning must have a particular orientation,
It is constructed and operated in a specific orientation, therefore is not considered as limiting the invention.In addition, term " first ", " second ",
" third " is used for descriptive purposes only and cannot be understood as indicating or suggesting relative importance.
Finally it should be noted that:Embodiment described above, only a specific embodiment of the invention, to illustrate the present invention
Technical solution, rather than its limitations, scope of protection of the present invention is not limited thereto, although with reference to the foregoing embodiments to this hair
It is bright to be described in detail, those skilled in the art should understand that:Anyone skilled in the art
In the technical scope disclosed by the present invention, it can still modify to technical solution documented by previous embodiment or can be light
It is readily conceivable that variation or equivalent replacement of some of the technical features;And these modifications, variation or replacement, do not make
The essence of corresponding technical solution is detached from the spirit and scope of technical solution of the embodiment of the present invention, should all cover in protection of the invention
Within the scope of.Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.
Claims (10)
1. a kind of DEU data exchange unit, which is characterized in that including:N number of input-buffer, N2A crossover node caching and N number of output are slow
It deposits, each input-buffer corresponding one caches the crossover node cache lines formed by N number of crossover node, and each output caching is right
Answer the crossover node caching column being made of N number of crossover node caching, each input-buffer and each output caching point
Cache partitions are not divided according to the configuration information of its direct-connected port mode;Each crossover node caching is according to the corresponding output of column
The configuration information for caching corresponding port mode divides cache partitions, wherein N >=1;
The input-buffer, the data packet for being received using internal the first cache partitions caching input port, and by institute
State corresponding with the destination slogan carried in the data packet in data packet deposit and corresponding crossover node cache lines intersect
Nodal cache;
Crossover node caching, for caching the data packet received using the second internal cache partitions, and by institute
State output caching corresponding to the crossover node caching column where data packet is stored in presently described crossover node caching;
Output caching, for caching the data packet received using internal third cache partitions, and by the number
Destination port corresponding with the destination slogan in N number of destination port is conveyed to according to packet.
2. DEU data exchange unit according to claim 1, which is characterized in that the port mode includes:1x mode, 2x mould
Formula and 4x mode;
When the port mode is 1x mode, each input-buffer, each crossover node caching and each described
4 cache partitions are respectively divided out in output caching;
Alternatively, be two 2x modes in the port mode, each input-buffer, each crossover node caching and every
2 cache partitions are respectively divided out in a output caching;
Alternatively, when the port mode is 2x and two 1x mode, each input-buffer, each crossover node
3 cache partitions are respectively divided out in caching and each output caching;
Alternatively, when the port mode is 4x mode, each input-buffer, each crossover node caching and each
1 cache partitions is marked off in the output caching.
3. DEU data exchange unit according to claim 2, which is characterized in that the input-buffer includes:At least one
One cache partitions, at least one first virtual output queue and first scheduler module, first cache partitions with it is described
First virtual output queue corresponds;
First cache partitions, the data packet received for caching the input port;
It include at least one first queue in each first virtual output queue, the first queue is for storing the number
According to first buffer address of the packet in first cache partitions corresponding with first virtual output queue;
First scheduler module, for according to default referee conditions at least one first virtual output queue included it is complete
Object queue is determined in portion's first queue, and reads the data packet in the first buffer address being stored in the object queue,
By the friendship corresponding with the destination port in data packet deposit and the corresponding crossover node cache lines of the input-buffer
Knuckle point cache.
4. DEU data exchange unit according to claim 3, which is characterized in that first scheduler module includes:First is secondary
It cuts out device and first and transfers device;
First moderator, all for being included according to default referee conditions at least one first virtual output queue
Target first queue is determined in one queue;
Described first transfers device, for reading the data packet in the first buffer address being stored in the target first queue,
By friendship in data packet deposit and the corresponding crossover node cache lines of the input-buffer, corresponding with the destination port
Knuckle point cache.
5. DEU data exchange unit according to claim 2, which is characterized in that the crossover node, which caches, includes:At least one
A second cache partitions, at least one second virtual output queue and second scheduler module, second cache partitions with
Second virtual output queue corresponds;
Second cache partitions, for caching the data packet received;
It include a second queue in each second virtual output queue, the second queue is for storing the data packet
The second buffer address in the cache partitions corresponding with second virtual output queue;
Second scheduler module, for arranging at least one second void from the crossover node at place caching according to default referee conditions
Target second queue is determined in whole second queues that quasi- output queue is included, and is read and be stored in the target second queue
In the second buffer address in data packet, the crossover node data packet being stored in where presently described crossover node caching
The corresponding output caching of caching column.
6. DEU data exchange unit according to claim 5, which is characterized in that second scheduler module includes:Second is secondary
It cuts out device and second and transfers device;
Second moderator, at least one to be second virtual from the crossover node at place caching column according to default referee conditions
Target second queue is determined in whole second queues that output queue is included;
Described second transfers device, for reading the data packet in the second buffer address being stored in the target second queue,
Crossover node caching where the data packet is stored in presently described crossover node caching arranges corresponding output caching.
7. DEU data exchange unit according to claim 2, which is characterized in that the output, which caches, includes:At least one
Three cache partitions, at least one third virtual output queue and a third scheduler module, the third cache partitions with it is described
Third virtual output queue corresponds;
The third cache partitions, for caching the data packet received;
It include a third queue in each third virtual output queue, the third queue is for storing the data packet
Third buffer address in the cache partitions corresponding with the third virtual output queue;
The third scheduler module, for according to default referee conditions at least one third virtual output queue included it is complete
The queue of target third is determined in portion's third queue, and is read and be stored in the third buffer address in the target third queue
The data packet is conveyed to destination port corresponding with the destination slogan by data packet.
8. DEU data exchange unit according to claim 7, which is characterized in that the third scheduler module includes:Third is secondary
It cuts out device and third transfers device;
The third moderator, the whole for being included at least one third virtual output queue according to default referee conditions
The queue of target third is determined in third queue;
The third transfers device, for reading the data packet in the third buffer address being stored in the target third queue,
The data packet is conveyed to destination port corresponding with the destination slogan.
9. DEU data exchange unit according to any one of claims 1 to 8, which is characterized in that the input-buffer, the intersection
Nodal cache and output caching are driven by clock signal respectively.
10. DEU data exchange unit according to claim 9, which is characterized in that the DEU data exchange unit is deposited from outside
Device receives the configuration information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810660086.9A CN108833307B (en) | 2018-06-22 | 2018-06-22 | Data exchange device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810660086.9A CN108833307B (en) | 2018-06-22 | 2018-06-22 | Data exchange device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108833307A true CN108833307A (en) | 2018-11-16 |
CN108833307B CN108833307B (en) | 2021-07-09 |
Family
ID=64137667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810660086.9A Active CN108833307B (en) | 2018-06-22 | 2018-06-22 | Data exchange device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108833307B (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111654454A (en) * | 2020-06-23 | 2020-09-11 | 天津芯海创科技有限公司 | Dual-mode mixed exchange structure and method based on Crossbar |
CN112073336A (en) * | 2020-08-21 | 2020-12-11 | 西安电子科技大学 | High-performance data exchange system and method based on AXI4Stream interface protocol |
CN114301858A (en) * | 2021-02-05 | 2022-04-08 | 井芯微电子技术(天津)有限公司 | Shared cache system and method, electronic device and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101453425A (en) * | 2009-01-15 | 2009-06-10 | 北京邮电大学 | Switch construction supporting differentiate quality of service implemented based on weighted layer allocation and polling |
CN102970249A (en) * | 2012-12-25 | 2013-03-13 | 武汉烽火网络有限责任公司 | Routing switching device and method |
US8874844B1 (en) * | 2008-12-02 | 2014-10-28 | Nvidia Corporation | Padding buffer requests to avoid reads of invalid data |
CN104486258A (en) * | 2014-12-09 | 2015-04-01 | 中国航空工业集团公司第六三一研究所 | Exchange circuit based on exchange channel |
-
2018
- 2018-06-22 CN CN201810660086.9A patent/CN108833307B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8874844B1 (en) * | 2008-12-02 | 2014-10-28 | Nvidia Corporation | Padding buffer requests to avoid reads of invalid data |
CN101453425A (en) * | 2009-01-15 | 2009-06-10 | 北京邮电大学 | Switch construction supporting differentiate quality of service implemented based on weighted layer allocation and polling |
CN102970249A (en) * | 2012-12-25 | 2013-03-13 | 武汉烽火网络有限责任公司 | Routing switching device and method |
CN104486258A (en) * | 2014-12-09 | 2015-04-01 | 中国航空工业集团公司第六三一研究所 | Exchange circuit based on exchange channel |
Non-Patent Citations (2)
Title |
---|
刘升财: "ATCA平台上的RapidIO链路设计与分析", 《中国优秀硕士学位论文全文数据库》 * |
周延鹏: "基于交叉点缓存的高速交换结构及调度算法设计与实现", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111654454A (en) * | 2020-06-23 | 2020-09-11 | 天津芯海创科技有限公司 | Dual-mode mixed exchange structure and method based on Crossbar |
CN112073336A (en) * | 2020-08-21 | 2020-12-11 | 西安电子科技大学 | High-performance data exchange system and method based on AXI4Stream interface protocol |
CN114301858A (en) * | 2021-02-05 | 2022-04-08 | 井芯微电子技术(天津)有限公司 | Shared cache system and method, electronic device and storage medium |
CN114301858B (en) * | 2021-02-05 | 2024-04-12 | 井芯微电子技术(天津)有限公司 | Shared cache system and method, electronic device and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN108833307B (en) | 2021-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6370145B1 (en) | Internet switch router | |
KR100947618B1 (en) | Data Processing System | |
US6813274B1 (en) | Network switch and method for data switching using a crossbar switch fabric with output port groups operating concurrently and independently | |
EP1364552B1 (en) | Switching arrangement and method with separated output buffers | |
JP4006205B2 (en) | Switching arrangement and method with separate output buffers | |
CN108833307A (en) | DEU data exchange unit | |
US20050257025A1 (en) | State engine for data processor | |
CN104247341B (en) | The dynamic optimization method of distribution switch and its multicast tree hierarchical structure | |
EP1641195A1 (en) | Router with virtual channel allocation | |
US9166928B2 (en) | Scalable 3-stage crossbar switch | |
CN110417670A (en) | Traffic management for high bandwidth exchange | |
CN110995598A (en) | Variable-length message data processing method and scheduling device | |
US10237205B2 (en) | Switch routing algorithms | |
US20230275832A1 (en) | Networking processor and network device | |
KR20040038028A (en) | Multiple Input/Output-Queued Switch | |
CN104885420A (en) | Supporting quality of service differentiation using a single shared buffer | |
WO2017084331A1 (en) | Data processing apparatus and method for interconnection circuit | |
JPH0879306A (en) | Flow control device for computer interconnection | |
CN100421420C (en) | Method for dispatching variable length data packet queue in crossbar switching matrix | |
CN101099355A (en) | Method and apparatus for scheduling packets and/or cells | |
US8671220B1 (en) | Network-on-chip system, method, and computer program product for transmitting messages utilizing a centralized on-chip shared memory switch | |
US8040907B2 (en) | Switching method | |
CN104333516A (en) | Rotation rotation scheduling method for combined virtual output queue and crosspoint queue exchange structure | |
CN101459598B (en) | Method for implementing packet exchange and system thereof | |
US7486687B2 (en) | Method and allocation device for allocating pending requests for data packet transmission at a number of inputs to a number of outputs of a packet switching device in successive time slots |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200529 Address after: 300450 Binhai New Area, Binhai - Zhongguancun Science Park Rongsheng Plaza, No. 4 Building 702-7, Tianjin Applicant after: TIANJIN XINHAICHUANG TECHNOLOGY Co.,Ltd. Address before: 300450 Binhai New Area, Binhai - Zhongguancun Science Park Rongsheng Plaza, No. 4 Building 702-7, Tianjin Applicant before: TIANJIN XINHAICHUANG TECHNOLOGY Co.,Ltd. Applicant before: INFORMATION TECHNOLOGY INNOVATION CENTER OF TIANJIN BINHAI NEW AREA |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |