US10769004B2ActiveUtilityA1

Processor circuit, information processing apparatus, and operation method of processor circuit

41
Assignee: FUJITSU LTDPriority: Jan 27, 2017Filed: Mar 4, 2019Granted: Sep 8, 2020
Est. expiryJan 27, 2037(~10.6 yrs left)· nominal 20-yr term from priority
G06N 3/045G06N 3/09G06N 3/0464G06F 13/38G06F 15/80G06N 3/10G06T 1/60G06F 15/16G06N 3/02G06F 12/0837G06F 9/544G06F 12/0802G06N 3/08G06N 3/063G06F 12/0842G06F 15/167G06F 9/38
41
PatentIndex Score
0
Cited by
13
References
10
Claims

Abstract

A processor circuit includes: multiple processor cores; multiple individual memories; multiple shared memories; multiple memory control circuits; multiple selectors; and a control core; wherein when an address of the read request from the first processor associated with a specific memory control circuit is identical to the transfer source address, the specific memory control circuit controls the transfer data based on the read request to be transferred to the transfer destination address via a specific selector of the multiple selectors in which the transfer selection information is set, wherein, when the control core sets read selection information in each of the multiple selectors, read data is read by one of the first processor core and the first adjacent processor core from the associated shared memory via a specific selector of the multiple selectors in which the read selection information is set.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A processor circuit comprising:
 multiple processor cores; 
 multiple individual memories, each of the multiple individual memories being associated with one of the multiple processor cores and being configured to be accessed from the associated one of the multiple processor cores; 
 multiple shared memories, each of the multiple shared memories being associated with a first processor core, the first processor core being any one of the multiple processor cores, each of the multiple shared memories being configured to be accessed from either the first processor core or a first adjacent processor core, the first adjacent processor core being one of the multiple processor cores and being adjacent to the first processor core in a first direction among the multiple processor cores; 
 multiple memory control circuits, each of the multiple memory control circuits being provided between the first processor core and an associated individual memory of the multiple individual memories and being configured to output a read request from the first processor core to the associated individual memory belonging to the first processor core; 
 multiple selectors, each of the multiple selectors being associated with one of the multiple shared memories and being configured to select a read request from one of the first processor core, to which the associated one of the multiple shared memories belong, and the first adjacent processor core, output the selected read request to the associated one of the multiple shared memories, select a transfer request from one of a specific memory control circuit of the multiple memory control circuits and another memory control circuit of the multiple memory circuits belonging to a second adjacent processor core adjacent to the specific memory control circuit in a second direction, and output the selected transfer request to the associated one of the multiple shared memories; and 
 a control core configured to control the multiple processor cores; 
 wherein, in a case where the control core sets, in each of the multiple memory control circuits, a transfer source address of one of the multiple individual memories and the multiple shared memories that store transfer data to be transferred among the multiple processor cores and a transfer destination address of one of the multiple shared memories to which the transfer data is to be transferred and also sets transfer selection information in each of the multiple selectors, 
 with respect to each of the multiple memory control circuits, when an address of the read request from the first processor, to which a specific memory control circuit belongs, is identical to the transfer source address, the specific memory control circuit controls the transfer data in accordance with the read request to be transferred to the transfer destination address via a specific selector of the multiple selectors in which the transfer selection information is set, 
 wherein, in a case where the control core sets read selection information in each of the multiple selectors, with respect to each of the multiple shared memories, read data is read by one of the first processor core, to which an associated shared memory of the multiple shared memories belongs, and the first adjacent processor core from the associated shared memory via a specific selector of the multiple selectors in which the read selection information is set. 
 
     
     
       2. The processor circuit according to  claim 1 , wherein
 the transfer source address is an address corresponding to particular one of the associated individual memory, the associated shared memory, and another shared memory of the multiple shared memories belonging to the second adjacent processor core adjacent in the second direction, the particular one storing the transfer data, and 
 the transfer destination address is transfer destination address information on one of the associated shared memory and the other shared memory belonging to the second adjacent processor core. 
 
     
     
       3. The processor circuit according to  claim 2 , wherein
 with respect to each of the multiple memory control circuits, when the address of the read request from the first processor, to which a specific memory control circuit belongs, is identical to the transfer source address, the specific multiple memory control circuit controls the read data, which is read from one of the associated individual memory, the associated shared memory, and the other shared memory belonging to the second adjacent processor core, to be transferred as the transfer data to particular one of the associated shared memory and the other shared memory belonging to the second adjacent processor core, the particular one corresponding to the transfer destination address. 
 
     
     
       4. The processor circuit according to  claim 1 , wherein
 each of the multiple shared memories includes a first memory bank and a second memory bank, 
 in a case where the control core sets, in each of the multiple selectors, the transfer selection information for the first memory bank and the read selection information for the second memory bank, the transfer data is transferred to the first memory bank and the read data is read from the second memory bank, and 
 in a case where the control core sets the transfer selection information for the second memory bank and the read selection information for the first memory bank, the transfer data is transferred to the second memory bank and the read data is read from the first memory bank. 
 
     
     
       5. The processor circuit according to  claim 1 , wherein
 after the control core sets the read selection information and the transfer selection information in a specific selector of the multiple selectors, the first processor core performs the read request and performs an operation for the read data, and a corresponding memory control circuit of the multiple memory control circuits controls the read data to be transferred as the transfer data via the specific selector to a specific shared memory of the multiple shared memories, and 
 after the first processor core ends the operation, the control core sets again the read selection information and the transfer selection information in the specific selector, the first processor core performs again the read request and performs an operation for the read data, and the corresponding memory control circuit controls again the read data to be transferred as the transfer data via the specific selector to the specific shared memory. 
 
     
     
       6. The processor circuit according to  claim 5 , wherein
 in each operation cycle of the multiple processor cores, the transfer data stored in the multiple individual memories is transferred to the multiple respective shared memories that each belong to an adjacent processing core of the multiple processing cores. 
 
     
     
       7. The processor circuit according to  claim 5 , wherein
 in each operation cycle of the multiple processor cores, the transfer data stored in the multiple individual memories is transferred to the multiple respective shared memories that each belong to an adjacent processing core of the multiple processing cores and the transfer data is circulated among the multiple shared memories. 
 
     
     
       8. The processor circuit according to  claim 5 , wherein
 operation target data is written to the multiple individual memories belonging to the multiple respective processor cores, 
 the multiple processor cores individually read the operation target data from the multiple respective individual memories belonging to the multiple processor cores and perform operations for the operation target data, and the multiple memory control circuits belonging to the multiple processor cores individually control the read data to be transferred to the multiple respective shared memories, and 
 in each operation cycle of the multiple processor cores, the transfer data is transferred to the multiple respective shared memories that each belong to an adjacent processing core of the multiple processing cores and the transfer data is circulated among the multiple shared memories. 
 
     
     
       9. An information processing apparatus comprising:
 a main memory; and 
 a processor circuit accessible to the main memory, 
 wherein the processor circuit includes 
 multiple processor cores, 
 multiple individual memories, each of the multiple individual memories being associated with one of the multiple processor cores and being configured to be accessed from the associated one of the multiple processor cores, 
 multiple shared memories, each of the multiple shared memories being associated with a first processor core, the first processor core being any one of the multiple processor cores, each of the multiple shared memories being configured to be accessed from either the first processor core or a first adjacent processor core, the first adjacent processor core being one of the multiple processor cores and being adjacent to the first processor core in a first direction among the multiple processor cores, 
 multiple memory control circuits, each of the multiple memory control circuits being provided between the first processor core and an associated individual memory of the multiple individual memories and being configured to output a read request from the first processor core to the associated individual memory belonging to the first processor core, 
 multiple selectors, each of the multiple selectors being associated with one of the multiple shared memories and being configured to select a read request from one of the first processor core, to which the associated one of the multiple shared memories belong, and the first adjacent processor core, output the selected read request to the associated one of the multiple shared memories, select a transfer request from one of a specific memory control circuit of the multiple memory control circuits and another memory control circuit of the multiple memory circuits belonging to a second adjacent processor core adjacent to the specific memory control circuit in a second direction, and output the selected transfer request to the associated one of the multiple shared memories, and 
 a control core configured to control the multiple processor cores, 
 wherein, in a case where the control core sets, in each of the multiple memory control circuits, a transfer source address of one of the multiple individual memories and the multiple shared memories that store transfer data to be transferred among the multiple processor cores and a transfer destination address of any of the multiple shared memories to which the transfer data is to be transferred and also sets transfer selection information in each of the multiple selectors, 
 with respect to each of the multiple memory control circuits, when an address of the read request from the first processor, to which a specific memory control circuit belongs, is identical to the transfer source address, the specific memory control circuit controls the transfer data in accordance with the read request to be transferred to the transfer destination address via a specific selector of the multiple selectors in which the transfer selection information is set, and 
 wherein, in a case where the control core sets read selection information in each of the multiple selectors, with respect to each of the multiple shared memories, read data is read by one of the first processor core, to which an associated shared memory of the multiple shared memories belongs, and the first adjacent processor core from the associated shared memory via a specific selector of the multiple selectors in which the read selection information is set. 
 
     
     
       10. An operation method of a processor circuit,
 wherein the processor circuit includes 
 multiple processor cores, 
 multiple individual memories, each of the multiple individual memories being associated with one of the multiple processor cores and being configured to be accessed from the associated one of the multiple processor cores, 
 multiple shared memories, each of the multiple shared memories being associated with a first processor core, the first processor core being any one of the multiple processor cores, each of the multiple shared memories being configured to be accessed from either the first processor core or a first adjacent processor core, and the first adjacent processor core being one of the multiple processor cores and being adjacent to the first processor core in a first direction among the multiple processor cores, 
 multiple memory control circuits, each of the multiple memory control circuits being provided between the first processor core and an associated individual memory of the multiple individual memories and being configured to output a read request from the first processor core to the associated individual memory belonging to the first processor core, 
 multiple selectors, each of the multiple selectors being associated with one of the multiple shared memories and being configured to select a read request from one of the first processor core, to which the associated one of the multiple shared memories belong, and the first adjacent processor core, output the selected read request to the associated one of the multiple shared memories, select a transfer request from one of a specific memory control circuit of the multiple memory control circuits and another memory control circuit of the multiple memory circuits belonging to a second adjacent processor core adjacent to the specific memory control circuit in a second direction, and output the selected transfer request to the associated one of the multiple shared memories, and 
 a control core configured to control the multiple processor cores, 
 wherein the control core sets, in each of the multiple memory control circuits, a transfer source address of one of the multiple individual memories and the multiple shared memories that store transfer data to be transferred among the multiple processor cores and a transfer destination address of one of the multiple shared memories to which the transfer data is to be transferred and also sets transfer selection information in each of the multiple selectors, 
 wherein, with respect to each of the multiple memory control circuits, when an address of the read request from the first processor, to which a specific memory control circuit belongs, is identical to the transfer source address, the specific memory control circuit controls the transfer data in accordance with the read request to be transferred to the transfer destination address via a specific selector of the multiple selectors in which the transfer selection information is set, 
 wherein the control core sets read selection information in each of the multiple selectors, and 
 wherein, with respect to each of the multiple shared memories, read data is read by one of the first processor core, to which an associated shared memory of the multiple shared memories belongs, and the first adjacent processor core from the associated shared memory via a specific selector of the multiple selectors in which the read selection information is set.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.