CN114546927A - Data transmission method, core, computer readable medium, electronic device - Google Patents

Data transmission method, core, computer readable medium, electronic device Download PDF

Info

Publication number
CN114546927A
CN114546927A CN202011333155.9A CN202011333155A CN114546927A CN 114546927 A CN114546927 A CN 114546927A CN 202011333155 A CN202011333155 A CN 202011333155A CN 114546927 A CN114546927 A CN 114546927A
Authority
CN
China
Prior art keywords
core
transmission method
data
data transmission
request
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
Application number
CN202011333155.9A
Other languages
Chinese (zh)
Other versions
CN114546927B (en
Inventor
吴臻志
祝夭龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Lynxi Technology Co Ltd
Original Assignee
Beijing Lynxi Technology Co Ltd
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 Beijing Lynxi Technology Co Ltd filed Critical Beijing Lynxi Technology Co Ltd
Priority to CN202011333155.9A priority Critical patent/CN114546927B/en
Priority to PCT/CN2021/132381 priority patent/WO2022111462A1/en
Publication of CN114546927A publication Critical patent/CN114546927A/en
Application granted granted Critical
Publication of CN114546927B publication Critical patent/CN114546927B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/7825Globally asynchronous, locally synchronous, e.g. network on chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The present disclosure provides a data transmission method, which is applied to a core in a many-core system, and the data transmission method includes: responding to a first request signaling, and acquiring data pointed by the first request signaling; and transmitting the data pointed by the first request signaling to a request core sending the first request signaling, wherein the request core and the current core belong to different core clusters, and a plurality of cores in the many-core system form a core cluster. The disclosure also provides a core, a computer readable medium, and an electronic device.

Description

Data transmission method, core, computer readable medium, electronic device
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a data transmission method, a core, a computer-readable medium, and an electronic device.
Background
The many-core system may be made up of at least one chip, each chip having multiple computational units, the smallest computational unit in each chip that can be independently scheduled and has full computational power being referred to as a core.
In the many-core system, a plurality of cores can work jointly, each core can respectively and independently run program instructions, the running speed of a program is accelerated by utilizing the parallel computing capability, and the multitask processing capability is provided.
In some related techniques, cores in a many-core system have poor flexibility in performing computational tasks.
Disclosure of Invention
The embodiment of the disclosure provides a data transmission method, a core, a computer readable medium and an electronic device.
In a first aspect, an embodiment of the present disclosure provides a data transmission method, which is applied to a core in a many-core system, where the data transmission method includes:
responding to a first request signaling, and acquiring data pointed by the first request signaling;
and transmitting data pointed by the first request signaling to a request core sending the first request signaling, wherein the request core and a current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the current core is a main core of the core cluster to which the current core belongs.
In some embodiments, the first request signaling comprises signaling requesting acquisition of configuration information; the step of acquiring the data pointed by the first request signaling comprises:
and reading configuration information pointed by the first request signaling, wherein the configuration information comprises at least one of operators, parameters and authority range information required by the request core to complete an operation task.
In some embodiments, the first request signaling comprises signaling requesting to read data of a target core; the step of acquiring the data pointed by the first request signaling comprises:
and generating a token according to the first request signaling so that the target core verifies the request core according to the token, wherein the target core and the current core belong to the same core cluster.
In some embodiments, the token carries at least one of an identity of the requesting core, read permission information of the requesting core, data address information, and a token code.
In some embodiments, before the step of acquiring the data pointed by the first request signaling, the data transmission method further includes:
judging whether the request core is a friend core;
and under the condition that the request core is a friend core, executing the step of acquiring the data pointed by the first request signaling.
In some embodiments, the data transmission method further comprises:
and sending an instruction for setting the friend list to a slave core in a core cluster to which the current core belongs.
In a second aspect, an embodiment of the present disclosure provides a data transmission method, which is applied to a core in a many-core system, where the data transmission method includes:
responding to a second request signaling, and acquiring data pointed by the second request signaling;
and transmitting data pointed by the second request signaling to a request core sending the second request signaling, wherein the request core and a current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the current core is a slave core of the core cluster to which the current core belongs.
In some embodiments, the second request signaling comprises signaling requesting acquisition of configuration information; the step of obtaining the data pointed by the second request signaling comprises:
and reading configuration information pointed by the second request signaling, wherein the configuration information comprises at least one of operators, parameters and authority range information required by the request core to complete an operation task.
In some embodiments, before the step of acquiring the data pointed by the second request signaling, the data transmission method further includes:
obtaining a token sent by the request core;
judging whether the token is valid;
and under the condition that the token is valid, executing the step of acquiring the data pointed by the second request signaling.
In some embodiments, the token carries at least one of an identity of the requesting core, read permission information of the requesting core, data address information, and a token code.
In some embodiments, before the step of acquiring the data pointed by the second request signaling, the data transmission method further includes:
judging whether the request core is a friend core;
and under the condition that the request core is a friend core, executing the step of acquiring the data pointed by the second request signaling.
In some embodiments, the data transmission method further comprises:
setting a friend list according to an instruction of a main core of a core cluster to which a current core belongs, wherein the friend list comprises identification information of at least one friend core cluster, and a core in the friend core cluster is a friend core;
the step of judging whether the request core is a friend core comprises the following steps:
judging whether the friend list comprises identification information of a core cluster to which the request core belongs;
and under the condition that the friend list comprises the identification information of the core cluster to which the request core belongs, judging that the request core is a friend core.
In a third aspect, an embodiment of the present disclosure provides a data transmission method, which is applied to a core in a many-core system, where the data transmission method includes:
acquiring data from a first target core, wherein the first target core and a current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the first target core is a main core of the core cluster to which the first target core belongs.
In some embodiments, the step of obtaining data from the first target core comprises:
sending a first request signaling to the first target core so that the first target core can obtain and transmit data pointed by the first request signaling in response to the first request signaling;
and receiving data pointed by the first request signaling transmitted by the first target core.
In some embodiments, the first request signaling includes signaling requesting to obtain configuration information, where the configuration information includes at least one of operators, parameters, and authority range information required by the current core to complete an operation task.
In some embodiments, the first request signaling comprises signaling requesting to read data of a second target core, such that the first target core generates a token according to the first request signaling; the data pointed by the first request signaling is the token, and the second target core and the first target core belong to the same core cluster.
In a fourth aspect, an embodiment of the present disclosure provides a data transmission method, which is applied to a core in a many-core system, where the data transmission method includes:
acquiring data from a third target core, wherein the third target core and the current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the third target core is a slave core of the core cluster to which the third target core belongs.
In some embodiments, the step of obtaining data from the third target core comprises:
sending a second request signaling to the third target core, so that the third target core obtains and transmits data pointed by the second request signaling in response to the second request signaling;
and receiving data pointed by the second request signaling transmitted by the third target core.
In some embodiments, the second request signaling includes signaling requesting to obtain configuration information, where the configuration information includes at least one of operators, parameters, and authority range information required by the current core to complete an operation task.
In some embodiments, the step of obtaining data from the third target core further comprises:
sending a token to the third target core to cause the third target core to verify a current core in accordance with the token; the token is obtained by the current core from the main core of the core cluster to which the third target core belongs.
In a fifth aspect, an embodiment of the present disclosure provides a core applied to a many-core system, where the core includes:
one or more processing units;
a storage unit having one or more programs stored thereon that, when executed by the one or more processing units, cause the one or more processing units to implement at least one of the following methods:
the data transmission method of the first aspect of the embodiment of the present disclosure;
the data transmission method according to the second aspect of the embodiment of the present disclosure;
the data transmission method according to the third aspect of the embodiment of the present disclosure;
the data transmission method according to the fourth aspect of the embodiments of the present disclosure.
In a sixth aspect, the disclosed embodiments provide a computer readable medium, on which a computer program is stored, which when executed by a processor, implements at least one of the following methods:
the data transmission method of the first aspect of the embodiment of the present disclosure;
the data transmission method according to the second aspect of the embodiment of the present disclosure;
the data transmission method according to the third aspect of the embodiment of the present disclosure;
the data transmission method according to the fourth aspect of the embodiments of the present disclosure.
In a seventh aspect, an embodiment of the present disclosure provides an electronic device, including:
a plurality of cores; and
a network on chip configured to interact data among the plurality of cores and external data;
one or more of the cores have stored therein one or more instructions that are executed by one or more of the cores to enable one or more of the cores to perform at least one of the following methods:
the data transmission method of the first aspect of the embodiment of the present disclosure;
the data transmission method according to the second aspect of the embodiment of the present disclosure;
the data transmission method according to the third aspect of the embodiment of the present disclosure;
the data transmission method according to the fourth aspect of the embodiments of the present disclosure.
In the embodiment of the disclosure, a core in a many-core system can transmit data pointed by a request signaling to a request core according to the request signaling sent by a core belonging to a different core cluster from a current core; and data can be acquired from the cores belonging to different core clusters with the current core, so that data interaction among different core clusters is realized, the flexibility of the cores in processing computing tasks is improved, and the computing capability of the many-core system is improved.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present disclosure, nor do they limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description.
Drawings
The accompanying drawings are included to provide a further understanding of the disclosure and are incorporated in and constitute a part of this specification, illustrate embodiments of the disclosure and together with the description serve to explain the principles of the disclosure and not to limit the disclosure. The above and other features and advantages will become more apparent to those skilled in the art by describing in detail exemplary embodiments thereof with reference to the attached drawings, in which:
FIG. 1 is a flow chart of a data transmission method in an embodiment of the present disclosure;
FIG. 2 is a schematic diagram of a many-core system in an embodiment of the disclosure;
FIG. 3 is a flow chart of some steps in another data transmission method in accordance with an embodiment of the present disclosure;
FIG. 4 is a flow chart of some steps in another data transmission method according to the disclosed embodiment;
FIG. 5 is a flow chart of a data transmission method in an embodiment of the present disclosure;
FIG. 6 is a flow chart of some steps in another data transmission method in accordance with an embodiment of the present disclosure;
FIG. 7 is a flow chart of some steps in yet another data transmission method in an embodiment of the present disclosure;
FIG. 8 is a flow chart of some steps in a method of data transmission according to yet another embodiment of the present disclosure;
FIG. 9 is a flow chart of a data transmission method in an embodiment of the present disclosure;
FIG. 10 is a flow chart of some steps in another method of data transmission according to the disclosed embodiment;
FIG. 11 is a flow chart of a method of data transmission in an embodiment of the present disclosure;
FIG. 12 is a flow chart of some steps in another method of data transmission according to the disclosed embodiment;
FIG. 13 is a flow chart of some steps in yet another data transmission method in an embodiment of the present disclosure;
FIG. 14 is a block diagram of the components of a core in an embodiment of the disclosure;
FIG. 15 is a block diagram of a computer readable medium in an embodiment of the disclosure;
fig. 16 is a block diagram of an electronic device in an embodiment of the disclosure.
Detailed Description
To facilitate a better understanding of the technical aspects of the present disclosure, exemplary embodiments of the present disclosure are described below in conjunction with the accompanying drawings, wherein various details of the embodiments of the present disclosure are included to facilitate an understanding, and they should be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Embodiments of the present disclosure and features of embodiments may be combined with each other without conflict.
As used herein, the term "and/or" includes any and all combinations of one or more of the associated listed items.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and/or "comprising … …, when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. The terms "connected" or "coupled" and the like are not restricted to physical or mechanical connections, but may include electrical connections, whether direct or indirect.
Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and the present disclosure, and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
The inventor of the present disclosure has found that, in some related technologies, the main functions of each core in the many-core system are: the input data of the input equipment is stored, the arithmetic unit in the core carries out operation according to the input data and stores the operation result into the memory, and the output equipment is informed to receive the output result. However, each core passively executes the operation energy according to the running program instruction, and the control capability and flexibility of the core are poor.
In order to solve the above problem, in the embodiment of the present disclosure, a core cluster is dynamically established according to a computation task, where the core cluster includes multiple cores, and there may be multiple core clusters in a many-core system, and each core cluster executes a corresponding computation task, so as to strengthen control over each core and improve flexibility of executing the computation task. However, the core clusters are independent from each other, and data interaction cannot be performed, and the flexibility of the cores in the many-core system is still limited when computing tasks are executed.
In view of the above, in a first aspect, referring to fig. 1, an embodiment of the present disclosure provides a data transmission method applied to a core in a many-core system, where the data transmission method includes:
in step S110, in response to a first request signaling, data pointed by the first request signaling is obtained;
in step S120, the data pointed by the first request signaling is transmitted to a request core that sends the first request signaling, where the request core and a current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the current core is a main core of the core cluster to which the current core belongs.
FIG. 2 is a schematic diagram of a many-core system. As shown in fig. 2, the many-core system includes a first core and a second core, the plurality of second cores are organized into a core cluster (as shown by the dashed box in fig. 2), and the plurality of second cores of each core cluster includes a second core as a master core of the core cluster and at least one second core as a slave core of the core cluster.
In the embodiment of the present disclosure, a core cluster to which a current core belongs is referred to as a current core cluster, a core that sends the first request signaling is referred to as a request core, and a core cluster to which a request core belongs is referred to as a request core cluster. The requesting core may be a master core in the requesting core cluster or a slave core in the requesting core cluster. The embodiment of the present disclosure is not particularly limited in this regard.
In the disclosed embodiment, the data in the core includes private data, public data and friend metadata. The private data refers to the data that the current core and/or the core in the core cluster to which the current core belongs have the reading right; public data refers to data with read authority in any core of a many-core system; the friend metadata refers to data that only the friend core of the current core has a read right.
In the embodiment of the present disclosure, the data pointed by the first request instruction may be private data, may also be friend metadata, and may also be public data; in addition, the data pointed by the request instruction can also be other information required for completing data interaction between core clusters. The embodiment of the present disclosure is not particularly limited in this regard.
As an alternative embodiment, in step S120, the current core transmits data to the requesting core through a Network On Chip (NOC).
In the data transmission method provided by the embodiment of the disclosure, a core in a many-core system can transmit data pointed by a request signaling to the request core according to the request signaling sent by the request core, wherein the request core and a current core belong to different core clusters, and data interaction between different core clusters is realized, so that the flexibility of the core in processing a calculation task is improved, and the operational capability of the many-core system is improved.
In the embodiment of the disclosure, the request core can perform data interaction with the main cores of different core clusters, and obtain configuration information required for completing the computation task from the main cores.
Accordingly, in some embodiments, the first request signaling comprises signaling requesting acquisition of configuration information. The data pointed by the first request signaling is configuration information.
The embodiment of the present disclosure does not specifically limit the specific form of the configuration information. For example, the configuration information includes at least one of operators, parameters, and scope of authority information necessary to request and complete a computing task. It should be noted that the authority range information includes, but is not limited to, data range information that the requesting core can read.
In the disclosed embodiment, the requesting core may also access private data in the cores in the current core cluster. As an alternative embodiment, when the requesting core requests access to private data in a core in the current core cluster, unified scheduling and control is performed by the master core in the current core cluster. Specifically, the master core in the current core cluster generates a token according to the request signaling of the request core, and the core in the current core cluster only allows the request core holding the valid token to access the private data thereof, thereby ensuring data security.
Accordingly, in some embodiments, the first request signaling includes signaling requesting to read data of the target core, and referring to fig. 3, step S110 includes:
in step S111, a token is generated according to the first request signaling, so that the target core verifies the request core according to the token, and the target core and the current core belong to the same core cluster.
The specific form of the token is not particularly limited in the embodiments of the present disclosure. For example, the token carries at least one of an identity of the requesting core, read permission information of the requesting core, data address information, and a token code.
In some embodiments, referring to fig. 4, before step S110, the data transmission method further includes:
in step S130, determining whether the requesting core is a friend core;
and under the condition that the request core is a friend core, executing the step of acquiring the data pointed by the first request signaling.
The embodiments of the present disclosure do not specifically limit the friend core. For example, the friend core may be a core in a core cluster whose identity is trusted, or may be a core in a core cluster whose data interaction with the current core cluster is frequent.
It should be noted that step S130 is performed when the requesting core requests to access the friend metadata. As an alternative embodiment, step S130 may be also performed when the requesting core requests the non-friend metadata, and when the requesting core is the friend core, the requesting core is allowed to directly read the corresponding data, so that the data interaction efficiency can be improved.
In the embodiment of the disclosure, the requesting core can perform data interaction with the slave core in the current core cluster, and obtain the friend metadata from the slave core in the current core cluster. And judging whether the request core is the friend core or not by the slave core in the current core cluster according to the friend list. As an alternative embodiment, the friend list of the slave core in the current core cluster is set according to the instruction of the master core in the current core cluster.
Accordingly, in some embodiments, referring to fig. 4, the data transmission method further includes:
in step S140, an instruction to set a friend list is sent to the slave core in the core cluster to which the current core belongs.
In a second aspect, referring to fig. 5, an embodiment of the present disclosure provides a data transmission method, which is applied to a core in a many-core system, where the data transmission method includes:
in step S210, in response to a second request signaling, data pointed by the second request signaling is obtained;
in step S220, the data pointed by the second request signaling is transmitted to a request core sending the second request signaling, where the request core and a current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the current core is a slave core of the core cluster to which the current core belongs.
FIG. 2 is a schematic diagram of a many-core system. As shown in fig. 2, the many-core system includes a first core and a second core, the plurality of second cores are organized into a core cluster (as shown by the dashed box in fig. 2), and the plurality of second cores of each core cluster include a second core as a master core of the core cluster and at least one second core as a slave core of the core cluster.
In the embodiment of the present disclosure, the core cluster to which the current core belongs is referred to as a current core cluster, the core that sends the first request signaling is referred to as a request core, and the core cluster to which the request core belongs is referred to as a request core cluster. The requesting core may be a master core in the requesting core cluster or a slave core in the requesting core cluster. The embodiment of the present disclosure is not particularly limited in this regard.
In the disclosed embodiment, the data in the core includes private data, public data, and friend metadata. The private data refers to the data that the current core and/or the core in the core cluster to which the current core belongs have the reading right; public data refers to data with read authority in any core of a many-core system; the friend metadata refers to data that only the friend core of the current core has a read right.
In the embodiment of the present disclosure, the data pointed by the first request instruction may be private data, may also be friend metadata, and may also be public data; in addition, the data pointed by the request instruction can also be other information required for completing data interaction between core clusters. The embodiment of the present disclosure is not particularly limited in this regard.
As an alternative embodiment, in step S220, the current core transmits data to the requesting core through a Network On Chip (NOC).
In the data transmission method provided by the embodiment of the disclosure, a core in a many-core system can transmit data pointed by a request signaling to the request core according to the request signaling sent by the request core, wherein the request core and a current core belong to different core clusters, and data interaction between different core clusters is realized, so that the flexibility of the core in processing a calculation task is improved, and the operational capability of the many-core system is improved.
In the embodiment of the disclosure, the requesting core can perform data interaction with the slave cores of different core clusters, and obtain configuration information required for completing the computing task from the slave cores.
Accordingly, in some embodiments, the second request signaling comprises signaling requesting acquisition of configuration information. The data pointed by the second request signaling is configuration information.
The embodiment of the present disclosure does not specifically limit the specific form of the configuration information. For example, the configuration information includes at least one of operators, parameters, and scope of authority information necessary to request and complete a computing task. It should be noted that the authority range information includes, but is not limited to, data range information that the requesting core can read.
In the disclosed embodiments, the requesting core may also access private data in the current core. As an alternative embodiment, when the requesting core requests access to private data in the current core, unified scheduling and control is performed by the master core in the current core cluster. Specifically, the master core in the current core cluster generates a token according to the request signaling of the request core, and the current core only allows the request core holding a valid token to access private data of the request core, so that data security can be ensured.
Accordingly, in some embodiments, referring to fig. 6, before step S210, the data transmission method further includes:
in step S231, a token sent by the requesting core is acquired;
in step S232, determining whether the token is valid;
in case the token is valid, step S210 is performed.
The specific form of the token is not particularly limited in the embodiments of the present disclosure. For example, the token carries at least one of an identity of the requesting core, read permission information of the requesting core, data address information, and a token code.
The embodiment of the present disclosure does not make any special limitation on how to perform the step S232 to verify the validity of the token. For example, the identity of the requesting core may be verified according to the identity of the requesting core carried in the token; the authenticity of the token can be verified according to the token code carried in the second token; and verifying whether the request core has the access right of the data pointed by the request signaling or not according to the reading right information and the data address information carried in the second token.
As an alternative embodiment, the requesting core sends the second request signaling to the current core together with the token, i.e. the current core receives the second request signaling and the token synchronously.
As another optional implementation, the requesting core generates a second request signaling according to the second token, and the current core obtains the token by parsing the second request signaling.
In some embodiments, referring to fig. 7, before step S210, the data transmission method further includes:
in step S240, determining whether the requesting core is a friend core;
in case the requesting core is a friend core, step S210 is performed.
The friend core is not particularly limited in the embodiments of the present disclosure. For example, the friend core may be a core in a core cluster whose identity is trusted, or may be a core in a core cluster whose data interaction with the current core cluster is frequent.
It should be noted that step S240 is executed when the requesting core requests to access the friend metadata. As an alternative embodiment, step S240 may be also performed when the requesting core requests the non-friend metadata, and when the requesting core is the friend core, the requesting core is allowed to directly read the corresponding data, so that the data interaction efficiency can be improved.
In the embodiment of the disclosure, the requesting core can perform data interaction with the slave core in the current core cluster, and obtain the friend metadata from the slave core in the current core cluster. And judging whether the request core is the friend core or not by the slave core in the current core cluster according to the friend list. As an optional implementation manner, the current core sets a friend list according to an instruction of the main core in the current core cluster, and determines whether the requesting core is a friend core according to the friend list.
Accordingly, in some embodiments, referring to fig. 8, the data transmission method further includes:
in step S251, a friend list is set according to an instruction of a main core of a core cluster to which a current core belongs, where the friend list includes identification information of at least one friend core cluster, and a core in the friend core cluster is a friend core;
step S240 includes:
in step S241, determining whether the friend list includes identification information of a core cluster to which the request core belongs; and under the condition that the friend list comprises the identification information of the core cluster to which the request core belongs, judging that the request core is a friend core.
In a third aspect, referring to fig. 9, an embodiment of the present disclosure provides a data transmission method, which is applied to a core in a many-core system, where the data transmission method includes:
in step S300, data is obtained from a first target core, where the first target core and a current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the first target core is a main core of the core cluster to which the first target core belongs.
In the embodiment of the present disclosure, the current core performing step S300 may be a master core in the core cluster, or may be a slave core in the core cluster. The embodiment of the present disclosure is not particularly limited in this regard.
The data acquired from the first target core may be at least one of private data, public data, and friend metadata; in addition, other information required for completing data interaction between core clusters can be also included. The embodiment of the present disclosure is not particularly limited in this regard.
As an alternative, for public data, the current core may read directly from the first target core; for private data or friend metadata, the disclosed embodiments configure a proprietary interface through which the corresponding private data or friend metadata is read.
In the data transmission method provided by the embodiment of the disclosure, the core in the many-core system can acquire data from the core belonging to a different core cluster from the current core, and data interaction between different core clusters is realized, so that the flexibility of the core in processing a calculation task is improved, and the operational capability of the many-core system is improved.
In some embodiments, referring to fig. 10, step S300 includes:
in step S310, send a first request signaling to the first target core, so that the first target core obtains and transmits data pointed by the first request signaling in response to the first request signaling;
in step S320, data pointed to by the first request signaling transmitted by the first target core is received.
The embodiment of the present disclosure does not specifically limit the specific form of the first request signaling. In some embodiments, the first request signaling includes request signaling for obtaining configuration information, where the configuration information includes at least one of an operator, a parameter, and authority range information required by a current core to complete an operation task.
In the disclosed embodiment, the current core may also access private data of the cores in the target core cluster. As an alternative implementation, when accessing the private data of the core in the target core cluster, it is required to first apply for the token from the master core in the target core cluster, and then access the private data of the core in the target core cluster by using the token.
Accordingly, in some embodiments, the first request signaling includes signaling requesting to read data of a second target core, such that the first target core generates a token in accordance with the first request signaling; the data pointed by the first request signaling is the token, and the second target core and the first target core belong to the same core cluster.
In a fourth aspect, referring to fig. 11, an embodiment of the present disclosure provides a data transmission method applied to a core in a many-core system, where the data transmission method includes:
in step S400, data is obtained from a third target core, where the third target core and the current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the third target core is a slave core of the core cluster to which the third target core belongs.
In the embodiment of the present disclosure, the current core performing step S400 may be a master core in the core cluster, or may be a slave core in the core cluster. The embodiment of the present disclosure is not particularly limited in this regard.
The data acquired from the third target core may be at least one of private data, public data, and friend metadata; in addition, other information required for completing data interaction between core clusters can be also included. The embodiment of the present disclosure is not particularly limited in this regard.
As an alternative embodiment, for public data, the current core may read directly from the third target core; for private data or friend metadata, the disclosed embodiments configure a proprietary interface through which the corresponding private data or friend metadata is read.
In the data transmission method provided by the embodiment of the disclosure, the core in the many-core system can acquire data from the core belonging to a different core cluster from the current core, and data interaction between different core clusters is realized, so that the flexibility of the core in processing a calculation task is improved, and the operational capability of the many-core system is improved.
In some embodiments, referring to fig. 12, step S400 includes:
in step S410, sending a second request signaling to the third target core, so that the third target core obtains and transmits data pointed by the second request signaling in response to the second request signaling;
in step S420, data pointed to by the second request signaling transmitted by the third target core is received.
The embodiment of the present disclosure does not specifically limit the specific form of the second request signaling. In some embodiments, the second request signaling includes request signaling for obtaining configuration information, where the configuration information includes at least one of operators, parameters, and authority range information required by the current core to complete an operation task.
In the disclosed embodiment, the current core may also access private data of the cores in the target core cluster. As an alternative embodiment, when accessing the private data of the core in the target core cluster, the current core sends the acquired token to the core in the target core cluster to access the private data of the core in the target core cluster.
Accordingly, in some embodiments, referring to fig. 13, step S400 further comprises:
in step S430, sending a token to the third target core, so that the third target core verifies the current core according to the token; the token is obtained by the current core from the main core of the core cluster to which the third target core belongs.
In a fifth aspect, referring to fig. 14, an embodiment of the present disclosure provides a core applied to a many-core system, which includes:
one or more processing units 101;
a storage unit 102 having one or more programs stored thereon that, when executed by the one or more processing units, cause the one or more processing units to implement at least one of the following methods:
the data transmission method of the first aspect of the embodiment of the present disclosure;
the data transmission method according to the second aspect of the embodiment of the present disclosure;
the data transmission method according to the third aspect of the embodiment of the present disclosure;
the data transmission method according to the fourth aspect of the embodiments of the present disclosure.
The processor 101 is a device with data processing capability, and includes but is not limited to an arithmetic unit; memory 102 is a device having data storage capabilities including, but not limited to, Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), FLASH memory (FLASH).
In a sixth aspect, referring to fig. 15, an embodiment of the present disclosure provides a computer readable medium, on which a computer program is stored, which when executed by a processor, implements at least one of the following methods:
the data transmission method of the first aspect of the embodiment of the present disclosure;
the data transmission method according to the second aspect of the embodiment of the present disclosure;
the data transmission method according to the third aspect of the embodiment of the present disclosure;
the data transmission method according to the fourth aspect of the embodiments of the present disclosure.
In a seventh aspect, referring to fig. 16, an embodiment of the present disclosure provides an electronic device, including:
a plurality of cores 201; and
a network on chip 202 configured to interact data between the plurality of cores 201 and external data;
one or more of the cores 201 have stored therein one or more instructions that are executed by one or more of the cores 201 to enable one or more of the cores 201 to perform at least one of the following methods:
the data transmission method of the first aspect of the embodiment of the present disclosure;
the data transmission method according to the second aspect of the embodiment of the present disclosure;
the data transmission method according to the third aspect of the embodiment of the present disclosure;
the data transmission method according to the fourth aspect of the embodiments of the present disclosure.
In order to make the technical solutions provided by the embodiments of the present disclosure more clearly understood by those skilled in the art, the technical solutions provided by the embodiments of the present disclosure are described in detail below by specific examples:
example one
The request core initiates a request signaling to a target core in the target core cluster to request to acquire configuration information, wherein the target core is a main core of the target core cluster;
the target core responds to the request signaling and reads the configuration information pointed by the request signaling;
the target core transmits the configuration information to the requesting core.
Example two
The request core initiates a request signaling to a target core in the target core cluster to request to acquire configuration information, wherein the target core is any core except a main core in the target core cluster;
the target core responds to the request signaling and reads the configuration information pointed by the request signaling;
the target core transmits the configuration information to the requesting core.
EXAMPLE III
The request core initiates a request signaling to a main core of the target core cluster to request to acquire a token for reading data of the target core, wherein the target core is any core except the main core in the target core cluster;
the main core of the target core cluster responds to the request signaling and returns a token to the request core;
the request core initiates a request signaling to the target core and simultaneously sends the signaling to the target core;
the target core responds to the request signaling, interprets the token and judges whether the token is effective or not; if the request signaling is valid, sending the data pointed by the request signaling to a request core through the network on chip; if not, rejecting.
Example four
The method comprises the steps that when a target core receives a request signaling for requesting the core to acquire data, a friend list is acquired, wherein the friend list is set in advance according to an instruction of a main core of a core cluster where the target core is located, and the target core is any core except the main core in the target core cluster;
judging whether the friend list comprises identification information of a core cluster where a request core is located; if yes, sending the data pointed by the request signaling to the request core; if not, reject.
It will be understood by those of ordinary skill in the art that all or some of the steps of the methods, systems, functional modules/units in the devices disclosed above may be implemented as software, firmware, hardware, and suitable combinations thereof. In a hardware implementation, 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 be performed by several physical components in cooperation. Some or all of the physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software may be distributed on computer readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). The term computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data, as is well known to those skilled in the art. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, Digital Versatile Disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computer. In addition, communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media as known to those skilled in the art.
Example embodiments have been disclosed herein, and although specific terms are employed, they are used and should be interpreted in a generic and descriptive sense only and not for purposes of limitation. In some instances, features, characteristics and/or elements described in connection with a particular embodiment may be used alone or in combination with features, characteristics and/or elements described in connection with other embodiments, unless expressly stated otherwise, as would be apparent to one skilled in the art. Accordingly, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the disclosure as set forth in the appended claims.

Claims (10)

1. A data transmission method is applied to a core in a many-core system, and comprises the following steps:
responding to a first request signaling, and acquiring data pointed by the first request signaling;
and transmitting data pointed by the first request signaling to a request core sending the first request signaling, wherein the request core and a current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the current core is a main core of the core cluster to which the current core belongs.
2. The data transmission method according to claim 1, wherein the first request signaling includes signaling requesting to read data of a target core; the step of acquiring the data pointed by the first request signaling comprises:
and generating a token according to the first request signaling so that the target core verifies the request core according to the token, wherein the target core and the current core belong to the same core cluster.
3. The data transmission method according to claim 1 or 2, wherein, before the step of obtaining the data to which the first request signaling points, the data transmission method further comprises:
judging whether the request core is a friend core;
and under the condition that the request core is a friend core, executing the step of acquiring the data pointed by the first request signaling.
4. A data transmission method is applied to a core in a many-core system, and comprises the following steps:
responding to a second request signaling, and acquiring data pointed by the second request signaling;
and transmitting data pointed by the second request signaling to a request core sending the second request signaling, wherein the request core and a current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the current core is a slave core of the core cluster to which the current core belongs.
5. The data transmission method according to claim 4, wherein the step of obtaining the data pointed by the second request signaling is preceded by the data transmission method further comprising:
obtaining a token sent by the request core;
judging whether the token is valid;
and under the condition that the token is valid, executing the step of acquiring the data pointed by the second request signaling.
6. A data transmission method is applied to a core in a many-core system, and comprises the following steps:
acquiring data from a first target core, wherein the first target core and a current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the first target core is a main core of the core cluster to which the first target core belongs.
7. A data transmission method is applied to a core in a many-core system, and comprises the following steps:
and acquiring data from a third target core, wherein the third target core and the current core belong to different core clusters, a plurality of cores in the many-core system form a core cluster, and the third target core is a slave core of the core cluster to which the third target core belongs.
8. A core for use in a many-core system, the core comprising:
one or more processing units;
a storage unit having one or more programs stored thereon that, when executed by the one or more processing units, cause the one or more processing units to implement at least one of the following methods:
a data transmission method according to any one of claims 1 to 3;
the data transmission method according to claim 4 or 5;
the data transmission method according to claim 6;
the data transmission method of claim 7.
9. A computer-readable medium, on which a computer program is stored which, when executed by a processor, implements at least one of the following methods:
a data transmission method according to any one of claims 1 to 3;
the data transmission method according to claim 4 or 5;
the data transmission method according to claim 6;
the data transmission method of claim 7.
10. An electronic device, comprising:
a plurality of cores; and
a network on chip configured to interact data among the plurality of cores and external data;
one or more of the cores have stored therein one or more instructions that are executed by one or more of the cores to enable one or more of the cores to perform at least one of the following methods:
a data transmission method according to any one of claims 1 to 3;
the data transmission method according to claim 4 or 5;
the data transmission method according to claim 6;
the data transmission method of claim 7.
CN202011333155.9A 2020-11-24 2020-11-24 Data transmission method, core, computer readable medium, and electronic device Active CN114546927B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011333155.9A CN114546927B (en) 2020-11-24 2020-11-24 Data transmission method, core, computer readable medium, and electronic device
PCT/CN2021/132381 WO2022111462A1 (en) 2020-11-24 2021-11-23 Data transmission method, core, computer-readable medium, and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011333155.9A CN114546927B (en) 2020-11-24 2020-11-24 Data transmission method, core, computer readable medium, and electronic device

Publications (2)

Publication Number Publication Date
CN114546927A true CN114546927A (en) 2022-05-27
CN114546927B CN114546927B (en) 2023-08-08

Family

ID=81659837

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011333155.9A Active CN114546927B (en) 2020-11-24 2020-11-24 Data transmission method, core, computer readable medium, and electronic device

Country Status (2)

Country Link
CN (1) CN114546927B (en)
WO (1) WO2022111462A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105988970A (en) * 2015-02-12 2016-10-05 华为技术有限公司 Processor of shared storage data, and chip
US9569634B1 (en) * 2013-12-16 2017-02-14 Amazon Technologies, Inc. Fine-grained structured data store access using federated identity management
CN108132834A (en) * 2017-12-08 2018-06-08 西安交通大学 Method for allocating tasks and system under multi-level sharing cache memory framework
CN108322366A (en) * 2017-01-17 2018-07-24 阿里巴巴集团控股有限公司 Access the methods, devices and systems of network
US10515049B1 (en) * 2017-07-01 2019-12-24 Intel Corporation Memory circuits and methods for distributed memory hazard detection and error recovery
CN111052095A (en) * 2017-08-30 2020-04-21 甲骨文国际公司 Multi-line data prefetching using dynamic prefetch depth

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8131941B2 (en) * 2007-09-21 2012-03-06 Mips Technologies, Inc. Support for multiple coherence domains
CN111381885B (en) * 2018-12-29 2024-04-09 畅想芯科有限公司 Asymmetric multi-core heterogeneous parallel processing system
US20200356485A1 (en) * 2019-05-09 2020-11-12 International Business Machines Corporation Executing multiple data requests of multiple-core processors

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9569634B1 (en) * 2013-12-16 2017-02-14 Amazon Technologies, Inc. Fine-grained structured data store access using federated identity management
CN105988970A (en) * 2015-02-12 2016-10-05 华为技术有限公司 Processor of shared storage data, and chip
CN108322366A (en) * 2017-01-17 2018-07-24 阿里巴巴集团控股有限公司 Access the methods, devices and systems of network
US10515049B1 (en) * 2017-07-01 2019-12-24 Intel Corporation Memory circuits and methods for distributed memory hazard detection and error recovery
CN111052095A (en) * 2017-08-30 2020-04-21 甲骨文国际公司 Multi-line data prefetching using dynamic prefetch depth
CN108132834A (en) * 2017-12-08 2018-06-08 西安交通大学 Method for allocating tasks and system under multi-level sharing cache memory framework

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
郑方;许勇;李宏亮;谢向辉;陈左宁;: "一种面向高性能计算的自主众核处理器结构", 中国科学:信息科学, no. 04 *

Also Published As

Publication number Publication date
WO2022111462A1 (en) 2022-06-02
CN114546927B (en) 2023-08-08

Similar Documents

Publication Publication Date Title
US20230396669A1 (en) Technologies for transparent function as a service arbitration for edge systems
CN108924125B (en) Control method and device of interface calling authority, computer equipment and storage medium
CN108881228B (en) Cloud registration activation method, device, equipment and storage medium
CN111552936B (en) Cross-system access right control method and system based on scheduling mechanism level
US20160203024A1 (en) Apparatus and method for allocating resources of distributed data processing system in consideration of virtualization platform
US20180077157A1 (en) Method and system for identifying user information in social network
CN113098861B (en) Active identification carrier, authentication method thereof and service platform
CN110677383B (en) Firewall wall opening method and device, storage medium and computer equipment
CN110289965B (en) Application program service management method and device
CN111880919B (en) Data scheduling method, system and computer equipment
CN116523518B (en) Cross-channel data access method, system and storage medium based on blockchain
CN113872951B (en) Hybrid cloud security policy issuing method and device, electronic equipment and storage medium
US20230403254A1 (en) Decentralized identifier determination by a registry operator or registrar
CN112600744A (en) Authority control method and device, storage medium and electronic device
CN109699030B (en) Unmanned aerial vehicle authentication method, device, equipment and computer readable storage medium
CN117093977A (en) User authentication method, system, device, storage medium and electronic equipment
CN113765963A (en) Data processing method, device, equipment and computer readable storage medium
CN115004666A (en) Registration method, device, equipment and storage medium of Internet of things equipment
CN114546927B (en) Data transmission method, core, computer readable medium, and electronic device
CN111131324A (en) Login method and device of business system, storage medium and electronic device
CN112953986A (en) Management method and device for edge application
CN114554251B (en) Multimedia data requesting method and device, storage medium and electronic device
CN115378581A (en) Authentication method, equipment and system
CN115422184A (en) Data acquisition method, device, equipment and storage medium
CN109327499A (en) Management method and device, storage medium, the terminal of business interface

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
GR01 Patent grant
GR01 Patent grant