Electronic device including a plurality of chiplets and method for transmitting transaction thereof
An electronic device comprising a plurality of chiplets is disclosed. The electronic device comprises a first chiplet that generates a transaction, a second chiplet that receives the transaction, and at least one third chiplet that relays the transaction, wherein the first chiplet determines a route path for the transaction that passes through the at least one third chiplet, and transmits the transaction through the determined route path for the transaction.
1 . An electronic device comprising a plurality of chiplets arranged in a chiplet matrix, comprising:
a first chiplet that generates a transaction;
a second chiplet that receives the transaction; and
a third chiplet and a fourth chiplet that are capable of relaying the transaction, wherein
the first chiplet determines a route path for the transaction between a first route path and a second route path, and transmits the transaction through the determined first route path or second route path for the transaction,
the third chiplet is connected to the first chiplet through a first communication module in a first direction of the first chiplet,
the fourth chiplet is connected to the first chiplet through a second communication module in a second direction of the first chiplet,
the first route path passes through the third chiplet and the second route path passes through the fourth chiplet,
the first chiplet receives monitored congestion state information from the first communication module and the second communication module,
the first chiplet determines the route path for the transaction based on receiving the monitored congestion state information of the first communication module and the second communication module, the congestion state information including a number of transactions associated with the first route path and a number of transactions associated with the second route path, and
the first chiplet determines, as the route path for the transaction, one of the first route path or the second route path based on the monitored congestion state information.
2 . The electronic device according to claim 1 , wherein
the number of transactions associated with the first route path corresponds to a number of multiple outstandings (MOs) of a first port associated with the first communication module, and
the number of transactions associated with the second route path corresponds to a number of MOs of a second port associated with the second communication module.
3 . The electronic device according to claim 1 , wherein the first chiplet includes a first function module that generates an instruction associated with the transmission of the transaction or controls the transmission of the transaction based on a received instruction, and
the first function module is configured to determine the route path for the transaction based on the number and size of the transactions associated with the first route path and the number and size of the transactions associated with the second route path.
4 . The electronic device according to claim 3 , wherein
the first chiplet further includes a second function module that generates the transaction,
the first function module is an upper level module of the second function module,
the first function module determines the route path for the transaction in consideration of an expected transaction congestion situation, and
the first function module modifies the route path for the transaction generated by the second function module according to the determined route path for the transaction.
5 . The electronic device according to claim 1 , wherein
the first chiplet includes a monitoring module that detects the congestion state of at least one of a first interface for data transmission between the plurality of chiplets, or a second interface for data transmission in the second chiplet, the third chiplet, and the fourth chiplet, and
the monitoring module is configured to determine the route path for the transaction based on the congestion state of at least one of the first interface or the second interface.
6 . The electronic device according to claim 5 , wherein
the monitoring module is connected to the second chiplet, the third chiplet, and the fourth chiplet, and
the monitoring module receives at least one of congestion information associated with the first interface or congestion information associated with the second interface from each of the second chiplet, the third chiplet, and the fourth chiplet.
7 . The electronic device according to claim 5 , wherein the monitoring module receives at least one of congestion information associated with the first interface or congestion information associated with the second interface, from another chiplet through a third interface different from the first interface.
8 . The electronic device according to claim 1 , wherein the first chiplet includes, in the transaction, information on the determined first route path or second route path for the transaction.
9 . An electronic device comprising a plurality of chiplets arranged in a chiplet matrix, comprising:
a first chiplet that generates a transaction;
a second chiplet that receives the transaction; and
a third chiplet and a fourth chiplet that are capable of relaying the transaction, wherein
the first chiplet receives monitored congestion state information from the first communication module and the second communication module,
the first chiplet determines a route path for the transaction between a first route path and a second route path based on receiving the monitored congestion state information of a first communication module and a second communication, the congestion state information including a number of transactions associated with the first route path and a number of transactions associated with the second route path, and transmits the transaction through the determined first route path or the second route path for the transaction,
the third chiplet is connected to the first chiplet through a first communication module in a first direction of the first chiplet,
the fourth chiplet is connected to the first chiplet through a second communication module in a second direction of the first chiplet,
the first route path passes through the third chiplet and the second route path passes through the fourth chiplet,
the first chiplet includes, in the transaction, information on the determined first route path or second route path for the transaction, and
the information on the determined route path for the transaction includes information on a preferred direction between the first direction or the second direction.
10 . The electronic device according to claim 9 , wherein the information on the determined first route path or second route path for the transaction further includes information on a number of relay chiplets in the preferred direction.
11 . The electronic device according to claim 9 , wherein the information on the determined first route path or second route path for the transaction includes an encoding code associated with one of a plurality of route paths that can be set between the plurality of chiplets.
12 . A method for transmitting a transaction of an electronic device including a plurality of chiplets arranged in a chiplet matrix, the method comprising:
generating, by a first chiplet, a transaction;
determining, by the first chiplet, between a first route path and a second route path for the transaction that passes through a third chiplet or a fourth chiplet;
transmitting, by the first chiplet, the transaction to a second chiplet through the determined first route path or second route path for the transaction; and
receiving, by the second chiplet, the transaction;
receiving, by the first chiplet, monitored congestion state information from the first communication module and the second communication module, wherein
the third chiplet is connected to the first chiplet through a first communication module in a first direction of the first chiplet,
the fourth chiplet is connected to the first chiplet through a second communication module in a second direction of the first chiplet,
the first route path passes through the third chiplet and the second route path passes through the fourth chiplet, and
the determining the route path for the transaction based on receiving the monitored congestion state information of the first communication module and the second communication module, the congestion state information includes a number of transactions associated with the first route path and a number of transactions associated with the second route path, wherein the determining the route path includes determining one of the first route path or the second route path based on the monitored congestion state information.
13 . The method according to claim 12 , wherein
the first chiplet includes a function module that generates an instruction associated with the transmission of the transaction or controls the transmission of the transaction based on a received instruction, and
the determining the route path for the transaction includes determining, by the function module, the route path for the transaction based on the number and size of transactions associated with the first route path and the number and size of transactions associated with the second route path.
14 . The method according to claim 12 , wherein
the first chiplet includes a monitoring module that detects a congestion state of at least one of a first interface for data transmission between the plurality of chiplets, or a second interface for data transmission in the second chiplet, the third chiplet, and the fourth chiplet, and
the determining the route path for the transaction includes determining, by the monitoring module, the route path for the transaction based on the congestion state of at least one of the first interface or the second interface.
15 . The method according to claim 12 , further comprising including, in the transaction, information on the determined route path for the transaction.
16 . The method according to claim 15 , wherein the information on the determined route path for the transaction includes information on a preferred direction between the first direction or the second direction.