WO2024016649A1 - Bus transmission structure and method, and chip - Google Patents

Bus transmission structure and method, and chip Download PDF

Info

Publication number
WO2024016649A1
WO2024016649A1 PCT/CN2023/076237 CN2023076237W WO2024016649A1 WO 2024016649 A1 WO2024016649 A1 WO 2024016649A1 CN 2023076237 W CN2023076237 W CN 2023076237W WO 2024016649 A1 WO2024016649 A1 WO 2024016649A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
bus
transmission
arbiter
buses
Prior art date
Application number
PCT/CN2023/076237
Other languages
French (fr)
Chinese (zh)
Inventor
蔡凯
田佩佳
刘明
张雨生
闫超
Original Assignee
声龙(新加坡)私人有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 声龙(新加坡)私人有限公司 filed Critical 声龙(新加坡)私人有限公司
Publication of WO2024016649A1 publication Critical patent/WO2024016649A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the embodiments of the present disclosure relate to, but are not limited to, the technical field of chip design, and in particular, to a bus transmission structure and method, and a chip.
  • the embodiment of the present disclosure provides a bus transmission structure, including: multiple data sources, multiple data destinations, a bus compression structure, a bus decompression structure, N sending buses, N receiving buses and M transmission buses, N
  • the sending buses are respectively connected to multiple data sources and bus compression structures
  • the M transmission buses are respectively connected to the bus compression structure and the bus decompression structure
  • the N receiving buses are respectively connected to the bus decompression structure and multiple data endpoints, where N is greater than 1 of natural numbers, M is a natural number greater than or equal to 1, and N>M;
  • the bus compression structure is configured to distribute data on N transmission buses to M transmission buses;
  • the bus decompression structure is configured to distribute data on M transmission buses to data destinations corresponding to the data.
  • Embodiments of the present disclosure also provide a bus transmission method, including:
  • N is a large A natural number greater than 1;
  • the bus compression structure distributes the received data to M transmission buses for transmission, where M is a natural number greater than or equal to 1, and N>M;
  • the bus decompression structure receives data from the M transmission buses and distributes the received data to corresponding data destinations through the N receiving buses.
  • An embodiment of the present disclosure also provides a chip, including the bus transmission structure described in any embodiment of the present disclosure.
  • the bus transmission structure, method, and chip of the embodiment of the present disclosure distribute the data on N transmission buses to M transmission buses (N>M) through the bus compression structure, and distribute the data on the M transmission buses through the bus decompression structure.
  • the data is distributed to the data endpoint corresponding to the data, and the N groups of buses are compressed into M groups during transmission.
  • the buses are restored to N groups, using fewer buses to transmit data without affecting the chip function. , can reduce the resources required for chip implementation, reduce chip power consumption, and reduce the difficulty of digital backend implementation.
  • Figure 1 is a schematic diagram of a bus transmission structure according to an exemplary embodiment of the present disclosure
  • Figure 2 is a schematic diagram of another bus transmission structure (compression ratio 4:3) according to an exemplary embodiment of the present disclosure
  • Figure 3 is a schematic diagram of another bus transmission structure (compression ratio 5:3) according to an exemplary embodiment of the present disclosure
  • Figure 4 is a schematic diagram of yet another bus transmission structure (compression ratio 5:3) according to an exemplary embodiment of the present disclosure
  • Figure 5 is a schematic diagram of yet another bus transmission structure (compression ratio 5:3) according to an exemplary embodiment of the present disclosure
  • Figure 6 is a schematic flowchart of a bus transmission method according to an exemplary embodiment of the present disclosure.
  • the embodiment of the present disclosure provides a bus transmission structure, including: multiple data sources S0, multiple data destinations S6, bus compression structure S2, bus decompression structure S4, N sending buses S1, N There are three receiving buses S5 and M transmission buses S3.
  • the N sending buses S1 are respectively connected to multiple data sources S0 and the bus compression structure S2.
  • the M transmission buses S3 are respectively connected to the bus compression structure S2 and the bus decompression structure S4.
  • N receiving buses Bus S5 connects bus decompression structure S4 and multiple data terminals S6 respectively, where N is a natural number greater than 1, M is a natural number greater than or equal to 1, and N>M;
  • the bus compression structure S2 is configured to distribute data on N transmission buses S1 to M transmission buses S3;
  • the bus decompression structure S4 is configured to distribute the data on the M transmission buses S3 to the data destination S6 corresponding to the data through the N receiving buses S5.
  • the bus transmission structure provided by the embodiment of the present disclosure can compress N groups of buses into M during transmission. Groups, when data needs to be used, the bus is restored to N groups (that is, a compression ratio of N:M is achieved), so that fewer buses can be used to transmit data without affecting the chip function, and can reduce the resources required for chip implementation. , reduce chip power consumption and reduce the difficulty of digital backend implementation.
  • the bus interfaces have a one-to-one correspondence. If there is a many-to-one situation, for example, the bus transmission structure includes N1 sending buses, N receiving buses and M transmission buses. Among them, N1 is greater than N. The N1 sending buses can be merged into N through the sending arbiter. By sending the bus and then using the bus transmission structure described in this disclosure for compression/decompression, a bus compression ratio of N:M can still be achieved.
  • the bus compression structure S2 may include: at least one data distributor, at least M originating buffers and M originating arbiters, and the plurality of data sources S0 are divided into two groups, wherein one group includes M (For the convenience of distinction, the data source of this group can be called the first data source), and the other group includes (N-M) (for the convenience of distinction, the data sources of this group can be called the second data source), where:
  • Each first data source is connected to an input port of an originating arbiter via a sending bus S1; each second data source is connected to an input port of a data distributor via a sending bus S1, and each output of the data distributor
  • the ports are respectively connected to another input port of the originating arbiter through a originating buffer, and the output port of each originating arbiter is connected to a transmission bus S3;
  • the data distributor is set to distribute the data sent by the connected data source S0 to the originating arbiter according to the data storage status of the originating buffer; the originating arbiter is set to output the data of multiple input ports to the originating arbiter according to its own arbitration rules.
  • the output port is connected to the transmission bus S3.
  • the originating buffer may be used to buffer data output by the data distributor.
  • the data distributor can decide which originating arbiter to distribute the data of the data source S0 connected to itself according to the data storage status in the originating buffer.
  • a data volume threshold can be set in advance. When the data volume in a certain sending buffer is greater than or equal to the data volume threshold, it means that the bandwidth usage of the branch where the sending buffer is located is high, and the data distributor should be used as soon as possible. Avoid the branch where the originating buffer is located, and try to use other branches where the originating buffer is located to transmit data.
  • the data distributor S20 can distribute the data on the sending bus S13 (that is, the data sent by the data source S03) to the sending buffer S211 or S212, and the sending arbiter S221 via the transmission bus S31 or the sending arbiter S222 is transmitted to the bus decompression structure S4 via the transmission bus S32.
  • the originating arbiter may be any one of a round robin arbiter, a fixed priority arbiter, or a weighted round robin arbiter, wherein the round robin arbiter is configured to The output is polled to the output port one by one; the fixed priority arbiter is set to output the data of multiple input ports to the output port according to the preset priority order; the weighted polling arbiter is set to output the data of multiple input ports to the output port according to the preset weight ratio. The data of each input port is polled and output to the output port. When data is output from the input port of the originating arbiter to the output port, different address information will be added according to different input ports.
  • the weight ratios of the two input ports of the originating arbiter S220, S221 and S222 can be set to respectively 3:1.
  • the weight of the input port connected to the sending bus S10 is 3
  • the weight of the input port connected to the sending buffer S210 is 1.
  • the originating arbiter S220 outputs the data of the originating buffer S210 once every three times on average, after outputting the data of the sending bus S10 . This can make the data amount of each of the M transmission buses still uniform.
  • the amount of data on the sending bus S10 is less than three times the amount of data in the sending buffer S210, the amount of data actually output by the sending arbiter S220 does not need to be distributed according to the weight of 3:1, that is, it can be distributed according to the weight of 2:1, 1 Sent with weight of :1 or 0:1.
  • the weighted polling arbiter the data on the sending buses S10, S11, S12 and S13 can be output reasonably and evenly, making data blocking less likely and improving the compression effect.
  • the fixed-priority arbiter For a fixed-priority arbiter, as long as the input port with a higher priority always has data to be sent, the fixed-priority arbiter must finish sending the data from the input port with a higher priority before sending data with a higher priority. Low priority input port data. For the polling arbiter, if multiple input ports have data to be sent, the data from multiple input ports are polled to the output port one by one.
  • the bus decompression structure S4 may include: M data forwarders and at least one end-end arbiter; multiple data end points S6 are divided into two groups, where one group includes M (for ease of distinction, The data end point of this group can be called the first data end point), and the other group includes (N-M) (for the convenience of distinction, the data end point of this group can be called the second data end point), where:
  • the input ports of the M data transponders are respectively connected to one of the M transmission buses S3.
  • An output port of the M data transponders is respectively connected to a first data terminal through a receiving bus.
  • the M data transponders The other output port is respectively connected to an input port of a receiving arbiter, and the data forwarder is configured to transmit the data to the first data terminal or the receiving arbiter according to the address information carried by the data;
  • each receiving arbiter is connected to a second data terminal through a receiving bus.
  • the receiving arbiter is configured to output data from multiple input ports to the second data terminal connected to the output port according to its own arbitration rules. .
  • a buffer is usually provided inside the data transponder. Therefore, it is not necessary to provide a receiving buffer between the data forwarder and the receiving arbiter.
  • a receiving end buffer may also be provided between the data forwarder and the receiving end arbiter, and the receiving end buffer may be used to cache data output by the data forwarder. Since when data is output from the input port of the originating arbiter to the output port, different address information will be added according to different input ports. Therefore, when decompressing the data, the data forwarder can transmit the data according to the address information carried by the data. to the first data destination or end arbiter.
  • the end arbiter may be any one of a polling arbiter or a fixed priority arbiter, wherein the polling arbiter is configured to poll and output data from multiple input ports to Output ports; a fixed-priority arbiter configured to output data from multiple input ports to an output port in a preset priority order.
  • M N-1.
  • M may be equal to N-1, N-2, N-3, etc.
  • the data branches between the data source and the data destination include I group, and the compression rate of the i-th group of data branches is N i : Mi , M and I are natural numbers greater than 1, 1 ⁇ i ⁇ I, N i and M i are both natural numbers greater than or equal to 1.
  • the data branches between the data source and the data destination may be grouped or not grouped, and the embodiment of the present disclosure does not limit this.
  • the bus transmission structures in Figures 3 and 4 both achieve a bus compression ratio of 5:3.
  • the bus transmission structure in Figure 3 divides the branches from five groups of data sources to data destinations into two groups, where One group achieved a compression ratio of 3:2, and the other group achieved a compression ratio of 2:1, resulting in an overall compression ratio of 5:3.
  • the bus transmission structure in Figure 4 does not group the branches between the data source and the data destination, and also achieves a compression ratio of 5:3.
  • the bus compression structure in this bus transmission structure uses 2 data distributors.
  • transmitting buffers in other exemplary embodiments, 3 transmitting buffers may also be used, that is, the data of the transmitting buses S13 and S14 are stored in one transmitting buffer.
  • 3 transmitting buffers may also be used, that is, the data of the transmitting buses S13 and S14 are stored in one transmitting buffer.
  • the bus compression structure includes 2 levels.
  • the first-level bus compression structure has a compression rate of N: K 1 .
  • the second-level bus compression structure has a compression rate of K 1 :M.
  • K 1 is greater than 1. of natural numbers;
  • the bus decompression structure includes two levels.
  • the decompression rate of the first-level bus decompression structure is M:K 1
  • the decompression rate of the second-level bus decompression structure is K 1 :N.
  • the bus compression structure includes K levels
  • the compression rate of the first-level bus compression structure is N: K 1
  • the compression rate of the k-th level bus compression structure is K k-1 :K k
  • the compression rate of the K-th level bus compression structure is K K-1 :M
  • K is a natural number greater than or equal to 3
  • 2 ⁇ k ⁇ K K 1 to K K-1 are all natural numbers greater than 1;
  • the bus decompression structure includes K levels.
  • the decompression rate of the first-level bus decompression structure is M:K K-1
  • the decompression rate of the k-th level bus decompression structure is K K-k+1 :K Kk ,...
  • the decompression rate of the K-th level bus decompression structure is K 1 :N.
  • Embodiments of the present disclosure can be connected in series through a multi-level bus compression structure at the sending end, and connected in series through a multi-level bus decompression structure at the receiving end to achieve a higher compression/decompression rate.
  • the two-level bus compression structures S2-1 and S2-2 are connected in series.
  • the first-level bus compression structure S2-1 includes a data partition Transmitter S20, four transmitting buffers S210/S211/S212/S213, four transmitting arbiters S220/S221/S222/S223, the second level bus compression structure S2-2 includes a data distributor S21, three transmitting buffers S214/S215/S216, three originating arbiters S224/S225/S226, two-level bus decompression structures S4-1 and S4-2 are connected in series, and the first-level bus decompression structure S4-1 includes three data transponders S400 /S401/S402, a receiving arbiter S41, the second-level bus decompression structure S4-2 includes four data transponders S403/S404/S405/S406, a receiving arbiter S42, among which the first-level bus compression structure S2-1 achieves a compression ratio of 5:4, the second-level bus compression structure S2-2 achieves a compression ratio of 4:3, the first-level bus decompression structure S4-1 achieves
  • the bus decompression structure S4-2 achieves a decompression ratio of 4:5, thus achieving an overall compression ratio of 5:3.
  • the number of series of bus compression structures and the compression ratio of each level of bus compression structure can be set as needed.
  • the number of series of bus decompression structures and the decompression ratio of each level of bus decompression structure can also be set. Set as needed, and the embodiment of the present disclosure does not limit this.
  • bus transmission structure of the embodiment of the present disclosure will be described in detail below, taking the compression and restoration of four groups of buses shown in Figure 2 as an example.
  • S00, S01, S02 and S03 are data sources, and the data sources S00, S01, S02 and S03 are connected to the sending buses S10, S11, S12 and S13 respectively.
  • the transmit buses S10, S11, S12 and S13 are connected to the bus compression structure S2.
  • the sending buses S10, S11 and S12 are respectively connected to the sending arbiters S220, S221 and S222 in the bus compression structure S2.
  • the sending bus S13 is connected to the input port of the data distributor S20 in the bus compression structure S2.
  • the data distributor S20 includes three output ports, and each output port is connected to the sending buffer S210, S211 and S212 respectively.
  • the originating buffers S210, S211 and S212 are connected to the originating arbiters S220, S221 and S222 respectively.
  • the originating arbiters S220, S221 and S222 may be weighted polling arbiters.
  • the weight ratio of the originating arbiters S220, S221 and S222 may be set to 3:1;
  • the weighted polling arbiter the data on the sending buses S10, S11, S12 and S13 can be output reasonably and evenly, making data blocking less likely and improving the compression effect.
  • the originating arbiters S220, S221, and S222 may also use ordinary arbiters (ie, fixed priority arbiters) or polling arbiters, and this disclosure does not limit this.
  • the multiple output ports of the data distributor S20 in the bus compression structure S2 are respectively connected with the originating cache.
  • Devices S210, S211 and S212 are connected.
  • the output ports of the originating buffers S210, S211 and S212 are respectively connected to the originating arbiters S220, S221 and S222.
  • the output ports of the originating arbiters S220, S221, and S222 are respectively connected to the compressed transmission buses S30, S31, and S32.
  • the transmission buses S30, S31 and S32 are connected to the bus decompression structure S4. Among them, the transmission buses S30, S31 and S32 are respectively connected to an input port of the data transponders S400, S401 and S402 in the bus decompression structure S4.
  • One output port in the data transponders S400, S401 and S402 is connected to the restored receiving buses S50, S51 and S52 respectively.
  • Another output port of the data transponders S400, S401 and S402 is respectively connected to an input port of the receiving arbiter S41.
  • the receiving arbiter S41 can be a polling arbiter or an ordinary arbiter. Using the polling arbiter can output the data of the other output port of the data transponder S400, S401 and S402 more reasonably and evenly, which is not easy. Generate data blocking and improve compression effect.
  • the output port of the receiving arbiter S41 is connected to the restored receiving bus S53.
  • the receiving buses S50, S51, S52 and S53 are respectively connected to the data terminals S60, S61, S62 and S63.
  • Data sources S00, S01, S02 and S03 send data to the sending buses S10, S11, S12 and S13 respectively;
  • the data distributor S20 divides the data of the sending bus S13 into three parts and buffers them into the sending buffers S210, S211 and S212 respectively;
  • the originating arbiter S220 generates the data of the transmission bus S30 based on the data of the originating buffer S210 and the data of the sending bus S10; the originating arbiter S221 generates the data of the transmission bus S31 based on the data of the originating buffer S211 and the data of the sending bus S11; The originating arbiter S222 generates the data of the transmission bus S32 based on the data of the originating buffer S212 and the data of the transmission bus S12. At this point, the data compression is completed, and the transmission buses S30, S31 and S32 may be physically very long.
  • Transmission buses S30, S31 and S32 transfer data to the bus decompression structure S4;
  • the data transponder S400 receives the data of the transmission bus S30, separates the data of the sending bus S10 and sends it to the receiving bus S50, and completes the restoration of the data of the sending bus S10; and separates the data of the sending bus S13 and sends it to the receiving arbiter S41.
  • the data transponder S401 receives the data of the transmission bus S31, separates the data of the sending bus S11 and sends it to the receiving bus S51, and completes the restoration of the data of the sending bus S11; and separates the data of the sending bus S13 and sends it to the receiving arbiter S41.
  • the data transponder S402 receives the data of the transmission bus S32, separates the data of the sending bus S12 and sends it to the receiving bus S52, completing the restoration of the data of the sending bus S12; and separates the data of the sending bus S13 and sends it to the receiving arbiter S41;
  • the receiving arbiter S41 receives the data from the data transponders S400, S401 and S402, sends it to the receiving bus S53, and completes the data restoration of the sending bus S13;
  • the receiving buses S50, S51, S52 and S53 send data to the data destinations S60, S61, S62 and S63 respectively.
  • An embodiment of the present disclosure also provides a chip, including the bus transmission structure described in any embodiment of the present disclosure.
  • the chip of the embodiment of the present disclosure distributes the data on N transmission buses to M transmission buses (N>M) through the bus compression structure, and distributes the data on the M transmission buses to the data correspondence through the bus decompression structure. At the end of the data, N groups of buses are compressed into M groups during transmission, and the buses are restored to N groups when data is needed. Using fewer buses to transmit data without affecting the chip function can reduce the resources required for chip implementation. , reduce chip power consumption and reduce the difficulty of digital backend implementation.
  • an embodiment of the present disclosure also provides a bus transmission method, including the following steps:
  • Step 601 Multiple data sources output data to the bus compression structure through N transmission buses, where N is a natural number greater than 1;
  • Step 602 The bus compression structure distributes the received data to M transmission buses for transmission.
  • M is a natural number greater than or equal to 1, and N>M;
  • Step 603 The bus decompression structure receives data from M transmission buses, and distributes the received data to data destinations corresponding to the data through N receiving buses.
  • the bus compression structure includes at least one data distributor, at least M transmitting buffers, and M transmitting arbiters; the bus compression structure distributes received data to M transmission buses for transmission, including:
  • the data distributor distributes the data sent by the connected data source to the originating arbiter according to the status of the originating buffer
  • the originating arbiter outputs data from multiple input ports to the transmission bus connected to the output port according to its own arbitration rules.
  • the bus decompression structure includes: M data forwarders and at least one receiving arbiter; the bus decompression structure distributes data on M transmission buses to data destinations corresponding to the data, including:
  • the data forwarder transmits the data to the data destination or the receiving arbiter according to the address information carried by the data;
  • the receiving arbiter outputs data from multiple input ports to the data end point connected to the output port according to its own arbitration rules.
  • the disclosed bus transmission method can compress N groups of buses into M groups during transmission, and then restore the buses to N groups when data needs to be used. It uses fewer buses to transmit data without affecting chip functions, and can reduce the number of chips. Implement the required resources, reduce chip power consumption, and reduce the difficulty of digital backend implementation.
  • connection should be understood in a broad sense.
  • it can be a fixed connection or a fixed connection.
  • Detachable connection, or integral connection it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium; it can be an internal connection between two components.
  • connection should be understood in a broad sense.
  • it can be a fixed connection or a fixed connection.
  • Detachable connection, or integral connection it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium; it can be an internal connection between two components.
  • Functional modules/units in systems and devices may be implemented as software, firmware, hardware and appropriate combinations thereof.
  • the division between functional modules/units mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may consist of several physical components. Components execute cooperatively. Some or all of the components may be implemented as software executed by a processor, such as a digital signal processor or a microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

A bus transmission structure and method, and a chip. The bus transmission structure comprises: a plurality of data sources, a plurality of data endpoints, a bus compression structure, a bus decompression structure, N transmitting buses, N receiving buses and M transmission buses, wherein the N transmitting buses are respectively connected to the plurality of data sources and the bus compression structure, the M transmission buses are respectively connected to the bus compression structure and the bus decompression structure, and the N receiving buses are respectively connected to the bus decompression structure and the plurality of data endpoints, N being greater than 1, M being greater than or equal to 1, and N being greater than M; the bus compression structure distributes data on the N transmitting buses to the M transmission buses; and the bus decompression structure distributes data on the M transmission buses to the data endpoints corresponding to the data.

Description

总线传输结构及方法、芯片Bus transmission structure and method, chip
本申请要求于2022年7月22日提交中国专利局、申请号为CN202210860285.0、发明名称为“总线传输结构及方法、芯片”的中国专利申请的优先权,其内容应理解为通过引用的方式并入本申请中。This application claims priority to the Chinese patent application filed with the China Patent Office on July 22, 2022, with the application number CN202210860285.0 and the invention title "Bus Transmission Structure and Method, Chip". The content should be understood as being incorporated by reference. are incorporated into this application.
技术领域Technical field
本公开实施例涉及但不限于芯片设计技术领域,尤其涉及一种总线传输结构及方法、芯片。The embodiments of the present disclosure relate to, but are not limited to, the technical field of chip design, and in particular, to a bus transmission structure and method, and a chip.
背景技术Background technique
在芯片设计中,会有用到大量总线的情况,总线的数量过多,会占用大量资源,造成后端布局布线困难,功耗过高,甚至造成在物理上无法实现。In chip design, a large number of buses will be used. Too many buses will occupy a lot of resources, causing difficulties in back-end layout and wiring, high power consumption, and even making it physically impossible to implement.
发明内容Contents of the invention
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。The following is an overview of the topics described in detail in this article. This summary is not intended to limit the scope of the claims.
本公开实施例提供了一种总线传输结构,包括:多个数据源、多个数据终点、总线压缩结构、总线解压缩结构、N条发送总线、N条接收总线和M条传输总线,N条发送总线分别连接多个数据源和总线压缩结构,M条传输总线分别连接总线压缩结构和总线解压缩结构,N条接收总线分别连接总线解压缩结构和多个数据终点,其中,N为大于1的自然数,M为大于或等于1的自然数,且N>M;The embodiment of the present disclosure provides a bus transmission structure, including: multiple data sources, multiple data destinations, a bus compression structure, a bus decompression structure, N sending buses, N receiving buses and M transmission buses, N The sending buses are respectively connected to multiple data sources and bus compression structures, the M transmission buses are respectively connected to the bus compression structure and the bus decompression structure, and the N receiving buses are respectively connected to the bus decompression structure and multiple data endpoints, where N is greater than 1 of natural numbers, M is a natural number greater than or equal to 1, and N>M;
所述总线压缩结构,设置为将N条发送总线上的数据分发至M条传输总线上;The bus compression structure is configured to distribute data on N transmission buses to M transmission buses;
所述总线解压缩结构,设置为将M条传输总线上的数据分发至所述数据对应的数据终点。The bus decompression structure is configured to distribute data on M transmission buses to data destinations corresponding to the data.
本公开实施例还提供了一种总线传输方法,包括:Embodiments of the present disclosure also provide a bus transmission method, including:
多个数据源通过N条发送总线输出数据至总线压缩结构,其中,N为大 于1的自然数;Multiple data sources output data to the bus compression structure through N transmission buses, where N is a large A natural number greater than 1;
所述总线压缩结构将接收到的数据,分发至M条传输总线传输,其中,M为大于或等于1的自然数,且N>M;The bus compression structure distributes the received data to M transmission buses for transmission, where M is a natural number greater than or equal to 1, and N>M;
所述总线解压缩结构接收所述M条传输总线的数据,并通过N条接收总线将接收到的数据分发至对应的数据终点。The bus decompression structure receives data from the M transmission buses and distributes the received data to corresponding data destinations through the N receiving buses.
本公开实施例还提供了一种芯片,包括如本公开任一实施例所述的总线传输结构。An embodiment of the present disclosure also provides a chip, including the bus transmission structure described in any embodiment of the present disclosure.
本公开实施例的总线传输结构及方法、芯片,通过总线压缩结构将N条发送总线上的数据分发至M条传输总线上(N>M),并通过总线解压缩结构将M条传输总线上的数据分发至所述数据对应的数据终点,将N组总线在传输时压缩为M组,在需要使用数据时再将总线还原为N组,使用更少的总线来传输数据而不影响芯片功能,可以减少芯片实现需要的资源,降低芯片功耗,减少数字后端实现难度。The bus transmission structure, method, and chip of the embodiment of the present disclosure distribute the data on N transmission buses to M transmission buses (N>M) through the bus compression structure, and distribute the data on the M transmission buses through the bus decompression structure. The data is distributed to the data endpoint corresponding to the data, and the N groups of buses are compressed into M groups during transmission. When the data is needed, the buses are restored to N groups, using fewer buses to transmit data without affecting the chip function. , can reduce the resources required for chip implementation, reduce chip power consumption, and reduce the difficulty of digital backend implementation.
本公开的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本公开而了解。本公开的其他优点可通过在说明书以及附图中所描述的方案来实现和获得。Additional features and advantages of the disclosure will be set forth in the description which follows, and, in part, will be apparent from the description, or may be learned by practice of the disclosure. Other advantages of the present disclosure can be realized and obtained by the arrangements described in the specification and accompanying drawings.
在阅读理解了附图和详细描述后,可以明白其他方面。After reading and understanding the drawings and detailed description, other aspects can be understood.
附图说明Description of drawings
附图用来提供对本公开技术方案的理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开的技术方案,并不构成对本公开技术方案的限制。The drawings are used to provide an understanding of the technical solution of the present disclosure and constitute a part of the specification. They are used to explain the technical solution of the present disclosure together with the embodiments of the present disclosure and do not constitute a limitation of the technical solution of the present disclosure.
图1为本公开示例性实施例一种总线传输结构的示意图;Figure 1 is a schematic diagram of a bus transmission structure according to an exemplary embodiment of the present disclosure;
图2为本公开示例性实施例另一种总线传输结构(压缩率为4:3)的示意图;Figure 2 is a schematic diagram of another bus transmission structure (compression ratio 4:3) according to an exemplary embodiment of the present disclosure;
图3为本公开示例性实施例另一种总线传输结构(压缩率为5:3)的示意图; Figure 3 is a schematic diagram of another bus transmission structure (compression ratio 5:3) according to an exemplary embodiment of the present disclosure;
图4为本公开示例性实施例又一种总线传输结构(压缩率为5:3)的示意图;Figure 4 is a schematic diagram of yet another bus transmission structure (compression ratio 5:3) according to an exemplary embodiment of the present disclosure;
图5为本公开示例性实施例又一种总线传输结构(压缩率为5:3)的示意图;Figure 5 is a schematic diagram of yet another bus transmission structure (compression ratio 5:3) according to an exemplary embodiment of the present disclosure;
图6为本公开示例性实施例一种总线传输方法的流程示意图。Figure 6 is a schematic flowchart of a bus transmission method according to an exemplary embodiment of the present disclosure.
具体实施方式Detailed ways
为使本公开的目的、技术方案和优点更加清楚明白,下文中将结合附图对本公开的实施例进行详细说明。需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互任意组合。In order to make the purpose, technical solutions and advantages of the present disclosure more clear, the embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings. It should be noted that, as long as there is no conflict, the embodiments and features in the embodiments can be arbitrarily combined with each other.
除非另外定义,本公开实施例公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出该词前面的元件或物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。Unless otherwise defined, the technical terms or scientific terms used in the disclosure of the embodiments of the present disclosure shall have the usual meanings understood by those with ordinary skill in the art to which the disclosure belongs. The "first", "second" and similar words used in the embodiments of the present disclosure do not indicate any order, quantity or importance, but are only used to distinguish different components. Words such as "include" or "include" mean that the elements or things preceding the word include the elements or things listed after the word and their equivalents, without excluding other elements or things.
如图1所示,本公开实施例提供了一种总线传输结构,包括:多个数据源S0、多个数据终点S6、总线压缩结构S2、总线解压缩结构S4、N条发送总线S1、N条接收总线S5和M条传输总线S3,N条发送总线S1分别连接多个数据源S0和总线压缩结构S2,M条传输总线S3分别连接总线压缩结构S2和总线解压缩结构S4,N条接收总线S5分别连接总线解压缩结构S4和多个数据终点S6,其中,N为大于1的自然数,M为大于或等于1的自然数,且N>M;As shown in Figure 1, the embodiment of the present disclosure provides a bus transmission structure, including: multiple data sources S0, multiple data destinations S6, bus compression structure S2, bus decompression structure S4, N sending buses S1, N There are three receiving buses S5 and M transmission buses S3. The N sending buses S1 are respectively connected to multiple data sources S0 and the bus compression structure S2. The M transmission buses S3 are respectively connected to the bus compression structure S2 and the bus decompression structure S4. N receiving buses Bus S5 connects bus decompression structure S4 and multiple data terminals S6 respectively, where N is a natural number greater than 1, M is a natural number greater than or equal to 1, and N>M;
总线压缩结构S2,设置为将N条发送总线S1上的数据分发至M条传输总线S3上;The bus compression structure S2 is configured to distribute data on N transmission buses S1 to M transmission buses S3;
总线解压缩结构S4,设置为通过N条接收总线S5将M条传输总线S3上的数据分发至数据对应的数据终点S6。The bus decompression structure S4 is configured to distribute the data on the M transmission buses S3 to the data destination S6 corresponding to the data through the N receiving buses S5.
本公开实施例提供的总线传输结构,可以将N组总线在传输时压缩为M 组,在需要使用数据时再将总线还原为N组(即实现了N:M的压缩率),这样就可以使用更少的总线来传输数据而不影响芯片功能,可以减少芯片实现需要的资源,降低芯片功耗,减少数字后端实现难度。The bus transmission structure provided by the embodiment of the present disclosure can compress N groups of buses into M during transmission. Groups, when data needs to be used, the bus is restored to N groups (that is, a compression ratio of N:M is achieved), so that fewer buses can be used to transmit data without affecting the chip function, and can reduce the resources required for chip implementation. , reduce chip power consumption and reduce the difficulty of digital backend implementation.
理论上讲,总线接口都是一一对应的。如果出现多对一的情况,例如,总线传输结构包括N1条发送总线、N条接收总线和M条传输总线,其中,N1大于N,可以先将N1条发送总线通过发端仲裁器合并为N条发送总线,再使用本公开所述的总线传输结构进行压缩/解压缩,仍然可以实现N:M的总线压缩率。Theoretically, the bus interfaces have a one-to-one correspondence. If there is a many-to-one situation, for example, the bus transmission structure includes N1 sending buses, N receiving buses and M transmission buses. Among them, N1 is greater than N. The N1 sending buses can be merged into N through the sending arbiter. By sending the bus and then using the bus transmission structure described in this disclosure for compression/decompression, a bus compression ratio of N:M can still be achieved.
在一些示例性实施方式中,总线压缩结构S2可以包括:至少一个数据分发器、至少M个发端缓存器和M个发端仲裁器,多个数据源S0分为两组,其中一组包括M个(为便于区分,该组的数据源可以称之为第一数据源),另一组包括(N-M)个(为便于区分,该组的数据源可以称之为第二数据源),其中:In some exemplary embodiments, the bus compression structure S2 may include: at least one data distributor, at least M originating buffers and M originating arbiters, and the plurality of data sources S0 are divided into two groups, wherein one group includes M (For the convenience of distinction, the data source of this group can be called the first data source), and the other group includes (N-M) (for the convenience of distinction, the data sources of this group can be called the second data source), where:
每个第一数据源通过一条发送总线S1与一个发端仲裁器的一个输入端口连接;每个第二数据源通过一条发送总线S1与一个数据分发器的输入端口连接,数据分发器的每个输出端口分别通过一个发端缓存器与发端仲裁器的另一个输入端口连接,每个发端仲裁器的输出端口与一条传输总线S3连接;Each first data source is connected to an input port of an originating arbiter via a sending bus S1; each second data source is connected to an input port of a data distributor via a sending bus S1, and each output of the data distributor The ports are respectively connected to another input port of the originating arbiter through a originating buffer, and the output port of each originating arbiter is connected to a transmission bus S3;
数据分发器设置为根据发端缓存器的数据存储状态,将所连接的数据源S0发送的数据分发至发端仲裁器;发端仲裁器设置为根据自身的仲裁规则,将多个输入端口的数据输出至输出端口连接的传输总线S3。The data distributor is set to distribute the data sent by the connected data source S0 to the originating arbiter according to the data storage status of the originating buffer; the originating arbiter is set to output the data of multiple input ports to the originating arbiter according to its own arbitration rules. The output port is connected to the transmission bus S3.
本实施例中,发端缓存器可以用于缓存数据分发器输出的数据。数据分发器可以根据发端缓存器中的数据存储状态,决定将自身所连接的数据源S0的数据分发至哪一个发端仲裁器。示例性的,可以预先设置一个数据量阈值,当某一发端缓存器中的数据量大于或等于该数据量阈值时,表示该发端缓存器所在支路带宽使用率较高,数据分发器应该尽快避开该发端缓存器所在支路,尽量使用其他发端缓存器所在支路传输数据。In this embodiment, the originating buffer may be used to buffer data output by the data distributor. The data distributor can decide which originating arbiter to distribute the data of the data source S0 connected to itself according to the data storage status in the originating buffer. For example, a data volume threshold can be set in advance. When the data volume in a certain sending buffer is greater than or equal to the data volume threshold, it means that the bandwidth usage of the branch where the sending buffer is located is high, and the data distributor should be used as soon as possible. Avoid the branch where the originating buffer is located, and try to use other branches where the originating buffer is located to transmit data.
例如,如图2所示,假设发端缓存器S210中存储的数据量大于或等于预设的数据量阈值,而发端缓存器S211和S212中存储的数据量均小于预设 的数据量阈值,那么,数据分发器S20可以将发送总线S13上的数据(即数据源S03发送的数据)分发至发端缓存器S211或S212,由发端仲裁器S221经由传输总线S31或发端仲裁器S222经由传输总线S32传输至总线解压缩结构S4。For example, as shown in Figure 2, assume that the amount of data stored in the sending buffer S210 is greater than or equal to the preset data amount threshold, and the amount of data stored in the sending buffers S211 and S212 are both less than the preset The data amount threshold, then the data distributor S20 can distribute the data on the sending bus S13 (that is, the data sent by the data source S03) to the sending buffer S211 or S212, and the sending arbiter S221 via the transmission bus S31 or the sending arbiter S222 is transmitted to the bus decompression structure S4 via the transmission bus S32.
在一些示例性实施方式中,发端仲裁器可以为轮询仲裁器、固定优先级仲裁器或加权轮询仲裁器中的任意一种,其中,轮询仲裁器设置为将多个输入端口的数据逐个轮询输出至输出端口;固定优先级仲裁器设置为按照预设的优先级顺序将多个输入端口的数据输出至输出端口;加权轮询仲裁器设置为按照预设的权值比重将多个输入端口的数据轮询输出至输出端口。数据从发端仲裁器的输入端口输出到输出端口时,会根据不同的输入端口添加不同的地址信息。In some exemplary embodiments, the originating arbiter may be any one of a round robin arbiter, a fixed priority arbiter, or a weighted round robin arbiter, wherein the round robin arbiter is configured to The output is polled to the output port one by one; the fixed priority arbiter is set to output the data of multiple input ports to the output port according to the preset priority order; the weighted polling arbiter is set to output the data of multiple input ports to the output port according to the preset weight ratio. The data of each input port is polled and output to the output port. When data is output from the input port of the originating arbiter to the output port, different address information will be added according to different input ports.
示例性的,如图2所示,当轮询仲裁器为加权轮询仲裁器且压缩率为4:3时,可以设置发端仲裁器S220、S221和S222的两个输入端口的权重比分别为3:1。例如,对于发端仲裁器S220,连接发送总线S10的输入端口所占的权重为3,连接发端缓存器S210的输入端口所占的权重为1,当发送总线S10和发端缓存器S210均包含较多的数据量时,发端仲裁器S220平均每输出三次发送总线S10的数据后,输出一次发端缓存器S210的数据,这样可以使得M条传输总线中的每条传输总线的数据量依然是均匀的,提高传输总线的传输效率。当发送总线S10上的数据量小于三倍的发端缓存器S210中的数据量时,发端仲裁器S220实际输出的数据量不必按照3:1的权重分配,即此时可以按照2:1、1:1或0:1的权重发送。通过使用加权轮询仲裁器,可以合理均匀地输出发送总线S10、S11、S12和S13上的数据,不容易产生数据阻塞,提高压缩效果。For example, as shown in Figure 2, when the polling arbiter is a weighted polling arbiter and the compression ratio is 4:3, the weight ratios of the two input ports of the originating arbiter S220, S221 and S222 can be set to respectively 3:1. For example, for the sending arbiter S220, the weight of the input port connected to the sending bus S10 is 3, and the weight of the input port connected to the sending buffer S210 is 1. When both the sending bus S10 and the sending buffer S210 contain more When the data amount is , the originating arbiter S220 outputs the data of the originating buffer S210 once every three times on average, after outputting the data of the sending bus S10 . This can make the data amount of each of the M transmission buses still uniform. Improve the transmission efficiency of the transmission bus. When the amount of data on the sending bus S10 is less than three times the amount of data in the sending buffer S210, the amount of data actually output by the sending arbiter S220 does not need to be distributed according to the weight of 3:1, that is, it can be distributed according to the weight of 2:1, 1 Sent with weight of :1 or 0:1. By using the weighted polling arbiter, the data on the sending buses S10, S11, S12 and S13 can be output reasonably and evenly, making data blocking less likely and improving the compression effect.
对于固定优先级仲裁器来说,只要具有较高优先级的输入端口一直有数据待发送,则固定优先级仲裁器就必须在发送完较高优先级的输入端口的数据后,才能发送具有较低优先级的输入端口的数据。对于轮询仲裁器来说,如果多个输入端口均有待发送的数据,则逐个轮询多个输入端口的数据至输出端口。For a fixed-priority arbiter, as long as the input port with a higher priority always has data to be sent, the fixed-priority arbiter must finish sending the data from the input port with a higher priority before sending data with a higher priority. Low priority input port data. For the polling arbiter, if multiple input ports have data to be sent, the data from multiple input ports are polled to the output port one by one.
如图3所示,当某支路的总线压缩率为2:1时,该支路的总线压缩结构 可以不必设置数据分发器和发端缓存器。As shown in Figure 3, when the bus compression ratio of a certain branch is 2:1, the bus compression structure of the branch It is not necessary to set up a data distributor and a sending buffer.
在一些示例性实施方式中,总线解压缩结构S4可以包括:M个数据转发器和至少一个收端仲裁器;多个数据终点S6分为两组,其中一组包括M个(为便于区分,该组的数据终点可以称之为第一数据终点),另一组包括(N-M)个(为便于区分,该组的数据终点可以称之为第二数据终点),其中:In some exemplary embodiments, the bus decompression structure S4 may include: M data forwarders and at least one end-end arbiter; multiple data end points S6 are divided into two groups, where one group includes M (for ease of distinction, The data end point of this group can be called the first data end point), and the other group includes (N-M) (for the convenience of distinction, the data end point of this group can be called the second data end point), where:
M个数据转发器的输入端口分别与M条传输总线S3中的一条传输总线S3连接,M个数据转发器的一个输出端口通过一条接收总线分别与一个第一数据终点连接,M个数据转发器的另一个输出端口分别与一个收端仲裁器的一个输入端口连接,数据转发器设置为根据数据携带的地址信息将数据传输至第一数据终点或收端仲裁器;The input ports of the M data transponders are respectively connected to one of the M transmission buses S3. An output port of the M data transponders is respectively connected to a first data terminal through a receiving bus. The M data transponders The other output port is respectively connected to an input port of a receiving arbiter, and the data forwarder is configured to transmit the data to the first data terminal or the receiving arbiter according to the address information carried by the data;
每个收端仲裁器的输出端口通过一条接收总线与一个第二数据终点连接,收端仲裁器设置为根据自身的仲裁规则,将多个输入端口的数据输出至输出端口连接的第二数据终点。The output port of each receiving arbiter is connected to a second data terminal through a receiving bus. The receiving arbiter is configured to output data from multiple input ports to the second data terminal connected to the output port according to its own arbitration rules. .
本实施例中,考虑数据转发器内部通常设置有缓存器,因此,可以不必在数据转发器和收端仲裁器之间设置收端缓存器。在另一些示例性实施方式中,如图4所示,也可以在数据转发器和收端仲裁器之间设置收端缓存器,该收端缓存器可以用于缓存数据转发器输出的数据。由于数据从发端仲裁器的输入端口输出到输出端口时,会根据不同的输入端口添加不同的地址信息,因此,在对数据进行解压缩时,数据转发器可以根据数据携带的地址信息将数据传输至第一数据终点或收端仲裁器。In this embodiment, it is considered that a buffer is usually provided inside the data transponder. Therefore, it is not necessary to provide a receiving buffer between the data forwarder and the receiving arbiter. In other exemplary embodiments, as shown in FIG. 4 , a receiving end buffer may also be provided between the data forwarder and the receiving end arbiter, and the receiving end buffer may be used to cache data output by the data forwarder. Since when data is output from the input port of the originating arbiter to the output port, different address information will be added according to different input ports. Therefore, when decompressing the data, the data forwarder can transmit the data according to the address information carried by the data. to the first data destination or end arbiter.
在一些示例性实施方式中,收端仲裁器可以为轮询仲裁器或固定优先级仲裁器中的任意一种,其中,轮询仲裁器设置为将多个输入端口的数据逐个轮询输出至输出端口;固定优先级仲裁器设置为按照预设的优先级顺序将多个输入端口的数据输出至输出端口。In some exemplary embodiments, the end arbiter may be any one of a polling arbiter or a fixed priority arbiter, wherein the polling arbiter is configured to poll and output data from multiple input ports to Output ports; a fixed-priority arbiter configured to output data from multiple input ports to an output port in a preset priority order.
相应的,如图3所示,当某支路的总线压缩率为2:1时,该支路的总线解压缩结构S4可以不必设置收端仲裁器。Correspondingly, as shown in Figure 3, when the bus compression ratio of a certain branch is 2:1, the bus decompression structure S4 of the branch does not need to set an end arbiter.
在一些示例性实施方式中,M=N-1。示例性的,如图2所示,N=4,M=3。 In some exemplary embodiments, M=N-1. For example, as shown in Figure 2, N=4 and M=3.
本实施例中,M可以等于N-1,也可以等于N-2、N-3等等。In this embodiment, M may be equal to N-1, N-2, N-3, etc.
在一些示例性实施方式中,数据源和数据终点之间的数据支路包括I组,第i组数据支路的压缩率为Ni:MiM,I为大于1的自然数,1≤i≤I,Ni和Mi均为大于或等于1的自然数。In some exemplary embodiments, the data branches between the data source and the data destination include I group, and the compression rate of the i-th group of data branches is N i : Mi , M and I are natural numbers greater than 1, 1≤i≤I, N i and M i are both natural numbers greater than or equal to 1.
实际使用时,可以对数据源和数据终点之间的数据支路进行分组,也可以不进行分组,本公开实施例对此不作限制。例如,图3和图4的总线传输结构都实现了5:3的总线压缩率,其中,图3中的总线传输结构,将五组数据源到数据终点之间的支路分成两组,其中一组实现了3:2的压缩率,另一组实现了2:1的压缩率,从而整体达到了5:3的压缩率。而图4中的总线传输结构,没有对数据源到数据终点之间的支路进行分组,也实现了5:3的压缩率,该总线传输结构中的总线压缩结构使用了2个数据分发器和6个发端缓存器(在另一些示例性实施例中,也可以使用3个发端缓存器,即将发送总线S13和S14的数据存于一个发端缓存器中)。在实际使用时,是否需要对多组支路进行分组以及每组的压缩比率等都可以根据需要进行设置。In actual use, the data branches between the data source and the data destination may be grouped or not grouped, and the embodiment of the present disclosure does not limit this. For example, the bus transmission structures in Figures 3 and 4 both achieve a bus compression ratio of 5:3. The bus transmission structure in Figure 3 divides the branches from five groups of data sources to data destinations into two groups, where One group achieved a compression ratio of 3:2, and the other group achieved a compression ratio of 2:1, resulting in an overall compression ratio of 5:3. The bus transmission structure in Figure 4 does not group the branches between the data source and the data destination, and also achieves a compression ratio of 5:3. The bus compression structure in this bus transmission structure uses 2 data distributors. and 6 transmitting buffers (in other exemplary embodiments, 3 transmitting buffers may also be used, that is, the data of the transmitting buses S13 and S14 are stored in one transmitting buffer). In actual use, whether multiple groups of branches need to be grouped and the compression ratio of each group can be set as needed.
在一些示例性实施方式中,总线压缩结构包括2级,第1级总线压缩结构的压缩率为N:K1,第2级总线压缩结构的压缩率为K1:M,K1为大于1的自然数;In some exemplary embodiments, the bus compression structure includes 2 levels. The first-level bus compression structure has a compression rate of N: K 1 . The second-level bus compression structure has a compression rate of K 1 :M. K 1 is greater than 1. of natural numbers;
总线解压缩结构包括2级,第1级总线解压缩结构的解压缩率为M:K1,第2级总线解压缩结构的解压缩率为K1:N。The bus decompression structure includes two levels. The decompression rate of the first-level bus decompression structure is M:K 1 , and the decompression rate of the second-level bus decompression structure is K 1 :N.
在另一些示例性实施方式中,总线压缩结构包括K级,第1级总线压缩结构的压缩率为N:K1,第k级总线压缩结构的压缩率为Kk-1:Kk,…,第K级总线压缩结构的压缩率为KK-1:M,K为大于或等于3的自然数,2≤k<K,K1至KK-1均为大于1的自然数;In other exemplary embodiments, the bus compression structure includes K levels, the compression rate of the first-level bus compression structure is N: K 1 , the compression rate of the k-th level bus compression structure is K k-1 :K k ,… , the compression rate of the K-th level bus compression structure is K K-1 :M, K is a natural number greater than or equal to 3, 2≤k<K, K 1 to K K-1 are all natural numbers greater than 1;
总线解压缩结构包括K级,第1级总线解压缩结构的解压缩率为M:KK-1,第k级总线解压缩结构的解压缩率为KK-k+1:KK-k,…,第K级总线解压缩结构的解压缩率为K1:N。The bus decompression structure includes K levels. The decompression rate of the first-level bus decompression structure is M:K K-1 , and the decompression rate of the k-th level bus decompression structure is K K-k+1 :K Kk ,… , the decompression rate of the K-th level bus decompression structure is K 1 :N.
本公开实施例可以在发送端通过多级总线压缩结构串联,并在接收端通过多级总线解压缩结构串联,实现更高的压缩/解压缩率。如图5所示,两级总线压缩结构S2-1和S2-2串联,第一级总线压缩结构S2-1包括一个数据分 发器S20、四个发端缓存器S210/S211/S212/S213、四个发端仲裁器S220/S221/S222/S223,第二级总线压缩结构S2-2包括一个数据分发器S21、三个发端缓存器S214/S215/S216、三个发端仲裁器S224/S225/S226,两级总线解压缩结构S4-1和S4-2串联,第一级总线解压缩结构S4-1包括三个数据转发器S400/S401/S402、一个收端仲裁器S41,第二级总线解压缩结构S4-2包括四个数据转发器S403/S404/S405/S406、一个收端仲裁器S42,其中第一级总线压缩结构S2-1实现5:4的压缩率,第二级总线压缩结构S2-2实现4:3的压缩率,第一级总线解压缩结构S4-1实现3:4的解压缩率,第二级总线解压缩结构S4-2实现4:5的解压缩率,从而整体也达到了5:3的压缩率。实际使用时,总线压缩结构串联的级数以及每级总线压缩结构压缩的比率可以根据需要进行设置,相应的,总线解压缩结构串联的级数以及每级总线解压缩结构解压缩的比率也可以根据需要进行设置,本公开实施例对此不作限制。Embodiments of the present disclosure can be connected in series through a multi-level bus compression structure at the sending end, and connected in series through a multi-level bus decompression structure at the receiving end to achieve a higher compression/decompression rate. As shown in Figure 5, the two-level bus compression structures S2-1 and S2-2 are connected in series. The first-level bus compression structure S2-1 includes a data partition Transmitter S20, four transmitting buffers S210/S211/S212/S213, four transmitting arbiters S220/S221/S222/S223, the second level bus compression structure S2-2 includes a data distributor S21, three transmitting buffers S214/S215/S216, three originating arbiters S224/S225/S226, two-level bus decompression structures S4-1 and S4-2 are connected in series, and the first-level bus decompression structure S4-1 includes three data transponders S400 /S401/S402, a receiving arbiter S41, the second-level bus decompression structure S4-2 includes four data transponders S403/S404/S405/S406, a receiving arbiter S42, among which the first-level bus compression structure S2-1 achieves a compression ratio of 5:4, the second-level bus compression structure S2-2 achieves a compression ratio of 4:3, the first-level bus decompression structure S4-1 achieves a decompression rate of 3:4, and the second-level bus compression structure S4-1 achieves a decompression rate of 3:4. The bus decompression structure S4-2 achieves a decompression ratio of 4:5, thus achieving an overall compression ratio of 5:3. In actual use, the number of series of bus compression structures and the compression ratio of each level of bus compression structure can be set as needed. Correspondingly, the number of series of bus decompression structures and the decompression ratio of each level of bus decompression structure can also be set. Set as needed, and the embodiment of the present disclosure does not limit this.
下面以图2所示的四组总线的压缩还原为例,对本公开实施例的总线传输结构进行详细说明。The bus transmission structure of the embodiment of the present disclosure will be described in detail below, taking the compression and restoration of four groups of buses shown in Figure 2 as an example.
其中,S00、S01、S02和S03为数据源,数据源S00、S01、S02和S03分别与发送总线S10、S11、S12和S13相连。Among them, S00, S01, S02 and S03 are data sources, and the data sources S00, S01, S02 and S03 are connected to the sending buses S10, S11, S12 and S13 respectively.
发送总线S10、S11、S12和S13与总线压缩结构S2相连。其中,发送总线S10、S11和S12分别与总线压缩结构S2中的发端仲裁器S220、S221和S222相连。发送总线S13与总线压缩结构S2中的数据分发器S20的输入端口相连,数据分发器S20包括三个输出端口,每个输出端口分别与发端缓存器S210、S211和S212相连。发端缓存器S210、S211和S212分别与发端仲裁器S220、S221、S222相连。The transmit buses S10, S11, S12 and S13 are connected to the bus compression structure S2. Among them, the sending buses S10, S11 and S12 are respectively connected to the sending arbiters S220, S221 and S222 in the bus compression structure S2. The sending bus S13 is connected to the input port of the data distributor S20 in the bus compression structure S2. The data distributor S20 includes three output ports, and each output port is connected to the sending buffer S210, S211 and S212 respectively. The originating buffers S210, S211 and S212 are connected to the originating arbiters S220, S221 and S222 respectively.
示例性的,发端仲裁器S220、S221和S222可以为加权轮询仲裁器,在该四组总线的压缩还原应用场景中,发端仲裁器S220、S221和S222的权重比可以设置为3:1;通过使用加权轮询仲裁器,可以合理均匀地输出发送总线S10、S11、S12和S13上的数据,不容易产生数据阻塞,提高压缩效果。For example, the originating arbiters S220, S221 and S222 may be weighted polling arbiters. In the compression restoration application scenario of the four groups of buses, the weight ratio of the originating arbiters S220, S221 and S222 may be set to 3:1; By using the weighted polling arbiter, the data on the sending buses S10, S11, S12 and S13 can be output reasonably and evenly, making data blocking less likely and improving the compression effect.
在其他示例中,发端仲裁器S220、S221和S222也可使用普通仲裁器(即固定优先级仲裁器)或者轮询仲裁器,本公开对此不作限制。In other examples, the originating arbiters S220, S221, and S222 may also use ordinary arbiters (ie, fixed priority arbiters) or polling arbiters, and this disclosure does not limit this.
总线压缩结构S2中的数据分发器S20的多个输出端口分别与发端缓存 器S210、S211和S212相连。The multiple output ports of the data distributor S20 in the bus compression structure S2 are respectively connected with the originating cache. Devices S210, S211 and S212 are connected.
发端缓存器S210、S211和S212的输出端口分别与发端仲裁器S220、S221、S222相连。The output ports of the originating buffers S210, S211 and S212 are respectively connected to the originating arbiters S220, S221 and S222.
发端仲裁器S220、S221、S222的输出端口分别与压缩后的传输总线S30、S31和S32相连。The output ports of the originating arbiters S220, S221, and S222 are respectively connected to the compressed transmission buses S30, S31, and S32.
传输总线S30、S31和S32与总线解压缩结构S4相连。其中,传输总线S30、S31和S32分别与总线解压缩结构S4中的数据转发器S400、S401和S402中的一个输入端口相连。The transmission buses S30, S31 and S32 are connected to the bus decompression structure S4. Among them, the transmission buses S30, S31 and S32 are respectively connected to an input port of the data transponders S400, S401 and S402 in the bus decompression structure S4.
数据转发器S400、S401和S402中的一个输出端口分别与还原出的接收总线S50、S51和S52相连。One output port in the data transponders S400, S401 and S402 is connected to the restored receiving buses S50, S51 and S52 respectively.
数据转发器S400、S401和S402中的另一个输出端口分别与收端仲裁器S41的一个输入端口相连。Another output port of the data transponders S400, S401 and S402 is respectively connected to an input port of the receiving arbiter S41.
收端仲裁器S41可以为轮询仲裁器,也可使用普通仲裁器,使用轮询仲裁器,可以更加合理均匀地输出数据转发器S400、S401和S402中的另一个输出端口的数据,不容易产生数据阻塞,提高压缩效果。The receiving arbiter S41 can be a polling arbiter or an ordinary arbiter. Using the polling arbiter can output the data of the other output port of the data transponder S400, S401 and S402 more reasonably and evenly, which is not easy. Generate data blocking and improve compression effect.
收端仲裁器S41的输出端口与还原出的接收总线S53相连。The output port of the receiving arbiter S41 is connected to the restored receiving bus S53.
接收总线S50、S51、S52和S53分别与数据终点S60、S61、S62和S63相连。The receiving buses S50, S51, S52 and S53 are respectively connected to the data terminals S60, S61, S62 and S63.
图2所示的总线传输结构的工作流程如下:The workflow of the bus transmission structure shown in Figure 2 is as follows:
数据源S00、S01、S02和S03分别将数据发送到发送总线S10、S11、S12和S13;Data sources S00, S01, S02 and S03 send data to the sending buses S10, S11, S12 and S13 respectively;
数据分发器S20将发送总线S13的数据分为3部分,分别缓存到发端缓存器S210、S211和S212;The data distributor S20 divides the data of the sending bus S13 into three parts and buffers them into the sending buffers S210, S211 and S212 respectively;
发端仲裁器S220根据发端缓存器S210的数据与发送总线S10的数据,生成传输总线S30的数据;发端仲裁器S221根据发端缓存器S211的数据与发送总线S11的数据,生成传输总线S31的数据;发端仲裁器S222根据发端缓存器S212的数据与发送总线S12的数据,生成传输总线S32的数据;至此数据压缩完成,传输总线S30、S31和S32在物理上可能很长。 The originating arbiter S220 generates the data of the transmission bus S30 based on the data of the originating buffer S210 and the data of the sending bus S10; the originating arbiter S221 generates the data of the transmission bus S31 based on the data of the originating buffer S211 and the data of the sending bus S11; The originating arbiter S222 generates the data of the transmission bus S32 based on the data of the originating buffer S212 and the data of the transmission bus S12. At this point, the data compression is completed, and the transmission buses S30, S31 and S32 may be physically very long.
传输总线S30、S31和S32将数据传送到总线解压缩结构S4;Transmission buses S30, S31 and S32 transfer data to the bus decompression structure S4;
数据转发器S400接收到传输总线S30的数据,分离出发送总线S10的数据发送到接收总线S50,完成对发送总线S10数据的还原;并分离出发送总线S13的数据发送到收端仲裁器S41。数据转发器S401接收到传输总线S31的数据,分离出发送总线S11的数据发送到接收总线S51,完成对发送总线S11数据的还原;并分离出发送总线S13的数据发送到收端仲裁器S41。数据转发器S402接收到传输总线S32的数据,分离出发送总线S12的数据发送到接收总线S52,完成对发送总线S12数据的还原;并分离出发送总线S13的数据发送到收端仲裁器S41;The data transponder S400 receives the data of the transmission bus S30, separates the data of the sending bus S10 and sends it to the receiving bus S50, and completes the restoration of the data of the sending bus S10; and separates the data of the sending bus S13 and sends it to the receiving arbiter S41. The data transponder S401 receives the data of the transmission bus S31, separates the data of the sending bus S11 and sends it to the receiving bus S51, and completes the restoration of the data of the sending bus S11; and separates the data of the sending bus S13 and sends it to the receiving arbiter S41. The data transponder S402 receives the data of the transmission bus S32, separates the data of the sending bus S12 and sends it to the receiving bus S52, completing the restoration of the data of the sending bus S12; and separates the data of the sending bus S13 and sends it to the receiving arbiter S41;
收端仲裁器S41接收到数据转发器S400、S401和S402的数据,将其发送到接收总线S53,完成对发送总线S13的数据还原;The receiving arbiter S41 receives the data from the data transponders S400, S401 and S402, sends it to the receiving bus S53, and completes the data restoration of the sending bus S13;
接收总线S50、S51、S52和S53分别将数据发送到数据终点S60、S61、S62和S63。The receiving buses S50, S51, S52 and S53 send data to the data destinations S60, S61, S62 and S63 respectively.
图3、图4和图5所示的总线传输结构的工作过程可参考图2的总线传输结构的工作过程,本公开在此不再赘述。For the working process of the bus transmission structure shown in Figure 3, Figure 4 and Figure 5, reference can be made to the working process of the bus transmission structure of Figure 2, which will not be described in detail here.
本公开实施例还提供了一种芯片,包括如本公开任一实施例所述的总线传输结构。An embodiment of the present disclosure also provides a chip, including the bus transmission structure described in any embodiment of the present disclosure.
在芯片设计中,会有用到大量总线的情况,总线的数量过多,会占用大量资源,造成后端布局布线困难,功耗过高,甚至造成在物理上无法实现。本公开实施例的芯片,通过总线压缩结构将N条发送总线上的数据分发至M条传输总线上(N>M),并通过总线解压缩结构将M条传输总线上的数据分发至数据对应的数据终点,将N组总线在传输时压缩为M组,在需要使用数据时再将总线还原为N组,使用更少的总线来传输数据而不影响芯片功能,可以减少芯片实现需要的资源,降低芯片功耗,减少数字后端实现难度。In chip design, a large number of buses will be used. Too many buses will occupy a lot of resources, causing difficulties in back-end layout and wiring, high power consumption, and even making it physically impossible to implement. The chip of the embodiment of the present disclosure distributes the data on N transmission buses to M transmission buses (N>M) through the bus compression structure, and distributes the data on the M transmission buses to the data correspondence through the bus decompression structure. At the end of the data, N groups of buses are compressed into M groups during transmission, and the buses are restored to N groups when data is needed. Using fewer buses to transmit data without affecting the chip function can reduce the resources required for chip implementation. , reduce chip power consumption and reduce the difficulty of digital backend implementation.
如图6所示,本公开实施例还提供了一种总线传输方法,包括如下步骤:As shown in Figure 6, an embodiment of the present disclosure also provides a bus transmission method, including the following steps:
步骤601、多个数据源通过N条发送总线输出数据至总线压缩结构,其中,N为大于1的自然数;Step 601: Multiple data sources output data to the bus compression structure through N transmission buses, where N is a natural number greater than 1;
步骤602、总线压缩结构将接收到的数据,分发至M条传输总线传输, 其中,M为大于或等于1的自然数,且N>M;Step 602: The bus compression structure distributes the received data to M transmission buses for transmission. Among them, M is a natural number greater than or equal to 1, and N>M;
步骤603、总线解压缩结构接收M条传输总线的数据,并通过N条接收总线将接收到的数据分发至数据对应的数据终点。Step 603: The bus decompression structure receives data from M transmission buses, and distributes the received data to data destinations corresponding to the data through N receiving buses.
在一些示例性实施方式中,总线压缩结构包括至少一个数据分发器、至少M个发端缓存器和M个发端仲裁器;总线压缩结构将接收到的数据,分发至M条传输总线传输,包括:In some exemplary embodiments, the bus compression structure includes at least one data distributor, at least M transmitting buffers, and M transmitting arbiters; the bus compression structure distributes received data to M transmission buses for transmission, including:
数据分发器根据发端缓存器的状态,将所连接的数据源发送的数据分发至发端仲裁器;The data distributor distributes the data sent by the connected data source to the originating arbiter according to the status of the originating buffer;
发端仲裁器根据自身的仲裁规则,将多个输入端口的数据输出至输出端口连接的传输总线。The originating arbiter outputs data from multiple input ports to the transmission bus connected to the output port according to its own arbitration rules.
在一些示例性实施方式中,总线解压缩结构包括:M个数据转发器和至少一个收端仲裁器;总线解压缩结构将M条传输总线上的数据分发至数据对应的数据终点,包括:In some exemplary embodiments, the bus decompression structure includes: M data forwarders and at least one receiving arbiter; the bus decompression structure distributes data on M transmission buses to data destinations corresponding to the data, including:
数据转发器根据数据携带的地址信息将数据传输至数据终点或收端仲裁器;The data forwarder transmits the data to the data destination or the receiving arbiter according to the address information carried by the data;
收端仲裁器根据自身的仲裁规则,将多个输入端口的数据输出至输出端口连接的数据终点。The receiving arbiter outputs data from multiple input ports to the data end point connected to the output port according to its own arbitration rules.
本公开的总线传输方法,可以将N组总线在传输时压缩为M组,在需要使用数据时再将总线还原为N组,使用更少的总线来传输数据而不影响芯片功能,可以减少芯片实现需要的资源,降低芯片功耗,减少数字后端实现难度。The disclosed bus transmission method can compress N groups of buses into M groups during transmission, and then restore the buses to N groups when data needs to be used. It uses fewer buses to transmit data without affecting chip functions, and can reduce the number of chips. Implement the required resources, reduce chip power consumption, and reduce the difficulty of digital backend implementation.
在本公开实施例的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据情况理解上述术语在本公开中的含义。In the description of the embodiments of the present disclosure, it should be noted that, unless otherwise clearly stated and limited, the terms "installation", "connection" and "connection" should be understood in a broad sense. For example, it can be a fixed connection or a fixed connection. Detachable connection, or integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium; it can be an internal connection between two components. For those of ordinary skill in the art, the meanings of the above terms in this disclosure can be understood according to the circumstances.
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、 系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。Those of ordinary skill in the art can understand that all or some steps, Functional modules/units in systems and devices may be implemented as software, firmware, hardware and appropriate combinations thereof. In hardware implementations, the division between functional modules/units mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may consist of several physical components. Components execute cooperatively. Some or all of the components may be implemented as software executed by a processor, such as a digital signal processor or a microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit.
虽然本公开所揭露的实施方式如上,但所述的内容仅为便于理解本公开而采用的实施方式,并非用以限定本公开。任何本公开所属领域内的技术人员,在不脱离本公开所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本公开的保护范围,仍须以所附的权利要求书所界定的范围为准。 Although the embodiments disclosed in the present disclosure are as above, the described contents are only used to facilitate the understanding of the present disclosure and are not intended to limit the present disclosure. Any person skilled in the field to which this disclosure belongs can make any modifications and changes in the form and details of the implementation without departing from the spirit and scope of this disclosure. However, the protection scope of this disclosure must still be The scope defined by the appended claims shall prevail.

Claims (13)

  1. 一种总线传输结构,包括:多个数据源、多个数据终点、总线压缩结构、总线解压缩结构、N条发送总线、N条接收总线和M条传输总线,N条发送总线分别连接多个数据源和总线压缩结构,M条传输总线分别连接总线压缩结构和总线解压缩结构,N条接收总线分别连接总线解压缩结构和多个数据终点,其中,N为大于1的自然数,M为大于或等于1的自然数,且N>M;A bus transmission structure, including: multiple data sources, multiple data destinations, bus compression structure, bus decompression structure, N sending buses, N receiving buses and M transmission buses. The N sending buses are connected to multiple Data source and bus compression structure, M transmission buses are respectively connected to the bus compression structure and bus decompression structure, and N receiving buses are respectively connected to the bus decompression structure and multiple data destinations, where N is a natural number greater than 1, and M is greater than Or a natural number equal to 1, and N>M;
    所述总线压缩结构,设置为将所述N条发送总线上的数据分发至所述M条传输总线上;The bus compression structure is configured to distribute data on the N transmission buses to the M transmission buses;
    所述总线解压缩结构,设置为通过所述N条接收总线将所述M条传输总线上的数据分发至所述数据对应的数据终点。The bus decompression structure is configured to distribute the data on the M transmission buses to the data destination corresponding to the data through the N receiving buses.
  2. 根据权利要求1所述的总线传输结构,其中,所述总线压缩结构包括:至少一个数据分发器、至少M个发端缓存器和M个发端仲裁器,所述多个数据源包括至少一个第一数据源和至少一个第二数据源,其中:The bus transmission structure according to claim 1, wherein the bus compression structure includes: at least one data distributor, at least M originating buffers and M originating arbiters, and the plurality of data sources include at least one first data source and at least one secondary data source, where:
    每个所述第一数据源通过一条所述发送总线与一个所述发端仲裁器的一个输入端口连接;每个所述第二数据源通过一条所述发送总线与一个所述数据分发器的输入端口连接,所述数据分发器的每个输出端口分别通过一个所述发端缓存器与所述发端仲裁器的另一个输入端口连接,每个所述发端仲裁器的输出端口与一条传输总线连接;Each of the first data sources is connected to an input port of the originating arbiter through a sending bus; each of the second data sources is connected to an input of the data distributor through a sending bus. Port connection, each output port of the data distributor is connected to another input port of the originating arbiter through one of the originating buffers, and the output port of each of the originating arbiters is connected to a transmission bus;
    所述数据分发器设置为根据所述发端缓存器的数据存储状态,将所连接的数据源发送的数据分发至所述发端仲裁器;所述发端仲裁器设置为根据自身的仲裁规则,将多个输入端口的数据输出至输出端口连接的传输总线。The data distributor is configured to distribute the data sent by the connected data source to the originating arbiter according to the data storage status of the originating buffer; the originating arbiter is configured to distribute multiple data according to its own arbitration rules. The data from each input port is output to the transmission bus connected to the output port.
  3. 根据权利要求2所述的总线传输结构,其中,所述发端仲裁器为轮询仲裁器、固定优先级仲裁器或加权轮询仲裁器中的任意一种,其中,所述轮询仲裁器将多个输入端口的数据逐个轮询输出至输出端口;所述固定优先级仲裁器按照预设的优先级顺序将多个输入端口的数据输出至输出端口;所述加权轮询仲裁器按照预设的权值比重将多个输入端口的数据轮询输出至输出 端口。The bus transmission structure according to claim 2, wherein the originating arbiter is any one of a polling arbiter, a fixed priority arbiter or a weighted polling arbiter, wherein the polling arbiter will The data of the multiple input ports are polled and output to the output port one by one; the fixed priority arbiter outputs the data of the multiple input ports to the output port in accordance with the preset priority order; the weighted polling arbiter outputs the data of the multiple input ports to the output port in accordance with the preset priority order. The weight proportion of the data polling output of multiple input ports is output to the output port.
  4. 根据权利要求1所述的总线传输结构,其中,所述总线解压缩结构包括:M个数据转发器和至少一个收端仲裁器,所述多个数据终点包括至少一个第一数据终点和至少一个第二数据终点,其中:The bus transmission structure according to claim 1, wherein the bus decompression structure includes: M data forwarders and at least one end arbiter, and the plurality of data end points include at least one first data end point and at least one Second data end point, where:
    M个所述数据转发器的输入端口分别与M条传输总线中的一条传输总线连接,M个所述数据转发器的一个输出端口通过一条所述接收总线分别与一个所述第一数据终点连接,M个所述数据转发器的另一个输出端口分别与一个收端仲裁器的一个输入端口连接,所述数据转发器设置为根据所述数据携带的地址信息将所述数据传输至所述第一数据终点或所述收端仲裁器;The input ports of the M data transponders are respectively connected to one of the M transmission buses, and one output port of the M data transponders is respectively connected to one of the first data terminals through one of the receiving buses. , another output port of the M data transponders is respectively connected to an input port of a receiving arbiter, and the data transponder is configured to transmit the data to the first according to the address information carried by the data. a data endpoint or the end-end arbiter;
    每个所述收端仲裁器的输出端口通过一条所述接收总线与一个所述第二数据终点连接,所述收端仲裁器设置为根据自身的仲裁规则,将多个输入端口的数据输出至输出端口连接的所述第二数据终点。The output port of each of the receiving arbiters is connected to one of the second data terminals through one of the receiving buses, and the receiving arbiter is configured to output data from multiple input ports to The output port is connected to the second data endpoint.
  5. 根据权利要求4所述的总线传输结构,其中,所述收端仲裁器为轮询仲裁器或固定优先级仲裁器中的任意一种,其中,所述轮询仲裁器设置为将多个输入端口的数据逐个轮询输出至输出端口;所述固定优先级仲裁器设置为按照预设的优先级顺序将多个输入端口的数据输出至输出端口。The bus transmission structure according to claim 4, wherein the end arbiter is any one of a polling arbiter or a fixed priority arbiter, wherein the polling arbiter is configured to The data of the ports are polled and output to the output ports one by one; the fixed priority arbiter is configured to output the data of the multiple input ports to the output ports according to a preset priority order.
  6. 根据权利要求1所述的总线传输结构,其中,M=N-1或M=N-2。The bus transmission structure according to claim 1, wherein M=N-1 or M=N-2.
  7. 根据权利要求1所述的总线传输结构,其中,所述数据源和所述数据终点之间的数据支路包括I组,第i组数据支路的压缩率为Ni:MiI为大于1的自然数,1≤i≤I,Ni和Mi均为大于或等于1的自然数。The bus transmission structure according to claim 1, wherein the data branches between the data source and the data destination include I group, and the compression rate of the i-th group of data branches is Ni : Mi , I is a natural number greater than 1, 1≤i≤I, N i and M i are both natural numbers greater than or equal to 1.
  8. 根据权利要求1所述的总线传输结构,其中,所述总线压缩结构包括2级,第1级所述总线压缩结构的压缩率为N:K1,第2级所述总线压缩结构的压缩率为K1:M,K1为大于1的自然数;The bus transmission structure according to claim 1, wherein the bus compression structure includes 2 levels, the compression rate of the bus compression structure at the first level is N: K 1 , and the compression rate of the bus compression structure at the second level is K 1 :M, K 1 is a natural number greater than 1;
    所述总线解压缩结构包括2级,第1级所述总线解压缩结构的解压缩率为M:K1,第2级所述总线解压缩结构的解压缩率为K1:N。 The bus decompression structure includes two levels. The decompression rate of the bus decompression structure at the first level is M:K 1 , and the decompression rate of the bus decompression structure at the second level is K 1 :N.
  9. 根据权利要求1所述的总线传输结构,其中,所述总线压缩结构包括K级,第1级所述总线压缩结构的压缩率为N:K1,第k级所述总线压缩结构的压缩率为Kk-1:Kk,…,第K级所述总线压缩结构的压缩率为KK-1:M,K为大于或等于3的自然数,2≤k<K,K1至KK-1均为大于1的自然数;The bus transmission structure according to claim 1, wherein the bus compression structure includes K levels, the compression rate of the bus compression structure at the first level is N: K 1 , and the compression rate of the bus compression structure at the kth level is K k-1 :K k ,..., the compression rate of the K-th level bus compression structure is K K-1 :M, K is a natural number greater than or equal to 3, 2≤k<K, K 1 to K K -1 are all natural numbers greater than 1;
    所述总线解压缩结构包括K级,第1级所述总线解压缩结构的解压缩率为M:KK-1,第k级所述总线解压缩结构的解压缩率为KK-k+1:KK-k,…,第K级所述总线解压缩结构的解压缩率为K1:N。The bus decompression structure includes K levels, the decompression rate of the bus decompression structure at the first level is M:K K-1 , and the decompression rate of the bus decompression structure at the kth level is K K-k+ 1 :K Kk ,..., the decompression rate of the bus decompression structure at the Kth level is K 1 :N.
  10. 一种芯片,包括如权利要求1至9任一所述的总线传输结构。A chip including the bus transmission structure according to any one of claims 1 to 9.
  11. 一种总线传输方法,包括:A bus transmission method, including:
    多个数据源通过N条发送总线输出数据至总线压缩结构,其中,N为大于1的自然数;Multiple data sources output data to the bus compression structure through N transmission buses, where N is a natural number greater than 1;
    所述总线压缩结构将接收到的数据,分发至M条传输总线传输,其中,M为大于或等于1的自然数,且N>M;The bus compression structure distributes the received data to M transmission buses for transmission, where M is a natural number greater than or equal to 1, and N>M;
    总线解压缩结构接收所述M条传输总线的数据,并通过N条接收总线将接收到的数据分发至对应的数据终点。The bus decompression structure receives data from the M transmission buses and distributes the received data to corresponding data destinations through the N receiving buses.
  12. 根据权利要求11所述的总线传输方法,其中,所述总线压缩结构包括至少一个数据分发器、至少M个发端缓存器和M个发端仲裁器;所述总线压缩结构将接收到的数据,分发至M条传输总线传输,包括:The bus transmission method according to claim 11, wherein the bus compression structure includes at least one data distributor, at least M sending buffers and M sending arbiters; the bus compression structure distributes the received data Transmission to M transmission buses, including:
    所述数据分发器根据所述发端缓存器的状态,将所连接的数据源发送的数据分发至所述发端仲裁器;The data distributor distributes the data sent by the connected data source to the originating arbiter according to the status of the originating buffer;
    所述发端仲裁器根据自身的仲裁规则,将多个输入端口的数据输出至输出端口连接的传输总线。The originating arbiter outputs data from multiple input ports to a transmission bus connected to the output port according to its own arbitration rules.
  13. 根据权利要求11所述的总线传输方法,其中,所述总线解压缩结构包括:M个数据转发器和至少一个收端仲裁器;所述总线解压缩结构将M条传输总线上的数据分发至所述数据对应的数据终点,包括:The bus transmission method according to claim 11, wherein the bus decompression structure includes: M data transponders and at least one receiving arbiter; the bus decompression structure distributes data on M transmission buses to The data endpoints corresponding to the data include:
    所述数据转发器根据所述数据携带的地址信息将所述数据传输至所述数 据终点或所述收端仲裁器;The data forwarder transmits the data to the data center according to the address information carried by the data. According to the end point or the end arbiter;
    所述收端仲裁器根据自身的仲裁规则,将多个输入端口的数据输出至输出端口连接的数据终点。 The receiving arbiter outputs data from multiple input ports to the data end point connected to the output port according to its own arbitration rules.
PCT/CN2023/076237 2022-07-22 2023-02-15 Bus transmission structure and method, and chip WO2024016649A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210860285.0A CN114968865B (en) 2022-07-22 2022-07-22 Bus transmission structure and method and chip
CN202210860285.0 2022-07-22

Publications (1)

Publication Number Publication Date
WO2024016649A1 true WO2024016649A1 (en) 2024-01-25

Family

ID=82969106

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/076237 WO2024016649A1 (en) 2022-07-22 2023-02-15 Bus transmission structure and method, and chip

Country Status (2)

Country Link
CN (1) CN114968865B (en)
WO (1) WO2024016649A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114968865B (en) * 2022-07-22 2022-09-27 中科声龙科技发展(北京)有限公司 Bus transmission structure and method and chip

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106021141A (en) * 2015-03-30 2016-10-12 瑞萨电子株式会社 Semiconductor device
CN112506824A (en) * 2020-12-17 2021-03-16 上海燧原智能科技有限公司 Chip and data interaction method
CN213024387U (en) * 2020-09-23 2021-04-20 中国电子科技集团公司第五十二研究所 Data redundancy transmission device based on RapidIO bus
CN114928578A (en) * 2022-07-19 2022-08-19 中科声龙科技发展(北京)有限公司 Chip structure
CN114968865A (en) * 2022-07-22 2022-08-30 中科声龙科技发展(北京)有限公司 Bus transmission structure and method and chip
CN115002050A (en) * 2022-07-18 2022-09-02 中科声龙科技发展(北京)有限公司 Workload proving chip

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS549563A (en) * 1977-06-24 1979-01-24 Toshiba Corp A-d converter
CN103218326B (en) * 2013-04-24 2016-11-23 上海华力创通半导体有限公司 Comprehensive arbiter device
CN105068951B (en) * 2015-07-27 2018-05-08 中国科学院自动化研究所 A kind of system-on-chip bus with non-isochronous transfers structure
CN110336545B (en) * 2019-06-14 2020-08-04 东南大学 Bidirectional self-adaptive clock circuit supporting wide frequency range
CN111241024A (en) * 2020-02-20 2020-06-05 山东华芯半导体有限公司 Cascade method of full-interconnection AXI bus
CN112866148B (en) * 2021-01-12 2022-06-24 之江实验室 Inter-chip data transmission system for brain-like computing chip and implementation method
CN114615353B (en) * 2022-02-09 2022-11-01 中国科学院国家空间科学中心 RMAP target side IP core based on AXI bus and command response method thereof

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106021141A (en) * 2015-03-30 2016-10-12 瑞萨电子株式会社 Semiconductor device
CN213024387U (en) * 2020-09-23 2021-04-20 中国电子科技集团公司第五十二研究所 Data redundancy transmission device based on RapidIO bus
CN112506824A (en) * 2020-12-17 2021-03-16 上海燧原智能科技有限公司 Chip and data interaction method
CN115002050A (en) * 2022-07-18 2022-09-02 中科声龙科技发展(北京)有限公司 Workload proving chip
CN114928578A (en) * 2022-07-19 2022-08-19 中科声龙科技发展(北京)有限公司 Chip structure
CN114968865A (en) * 2022-07-22 2022-08-30 中科声龙科技发展(北京)有限公司 Bus transmission structure and method and chip

Also Published As

Publication number Publication date
CN114968865B (en) 2022-09-27
CN114968865A (en) 2022-08-30

Similar Documents

Publication Publication Date Title
US20220100694A1 (en) PCI Express to PCI Express based low latency interconnect scheme for clustering systems
US7150021B1 (en) Method and system to allocate resources within an interconnect device according to a resource allocation table
KR101035447B1 (en) Processor selection for an interrupt identifying a processor cluster
EP1678621B1 (en) Method and apparatus for sending data from multiple sources over a communications bus
WO2024016649A1 (en) Bus transmission structure and method, and chip
US8085801B2 (en) Resource arbitration
WO2024016660A1 (en) Chip structure and electronic device
US7817652B1 (en) System and method of constructing data packets in a packet switch
US8982905B2 (en) Fabric interconnect for distributed fabric architecture
WO2024016661A1 (en) Proof-of-work chip and electronic device
EP0206641A2 (en) Telecommunications exchanges
US10101996B2 (en) Arithmetic processing apparatus, information processing apparatus, and method of controlling information processing apparatus
US20160055898A1 (en) Memory access method and memory system
CN114928577B (en) Workload proving chip and processing method thereof
KR100807443B1 (en) Opportunistic read completion combining
US20200242724A1 (en) Device and method for accelerating graphics processor units, and computer readable storage medium
US6848017B2 (en) Method and apparatus for determining connections in a crossbar switch
CN112905523B (en) Chip and inter-core data transmission method
CN101945039B (en) Data flow transmission method and device
CN111679998B (en) Multi-chip system and data transmission method thereof
CN112949247B (en) Phase-based on-chip bus scheduling device and method
Wang et al. Towards tunable RDMA parameter selection at runtime for datacenter applications
CN114095289B (en) Data multicast circuit, method, electronic device, and computer-readable storage medium
CN106803816A (en) A kind of configurable self-adapting load balance system and method
CN115454919A (en) Data transmission management circuit and method based on two-stage queue structure

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23841727

Country of ref document: EP

Kind code of ref document: A1