Abstract: A method of mapping target design memory blocks to embedded memory blocks in a semiconductor device of an embedded system is disclosed. The method includes categorizing a plurality target design memory blocks based on memory operation patterns into one of an overlapping category and a non-overlapping category; identifying a set of target design memory blocks that satisfy capacity criteria of a single embedded memory block in the semiconductor device, each target design memory block in the set is identified from either the overlapping category or the non-overlapping category; designing semiconductor device components to be created on the semiconductor device based on one of the overlapping category and the non-overlapping category, which the set of target design memory blocks is associated with; implementing the set of target design memory blocks and the semiconductor device components onto the single embedded memory block of the semiconductor device. Figure 3
Claims:WE CLAIM
1. A method of mapping target design memory blocks to embedded memory blocks in a semiconductor device of an embedded system, the method comprising:
categorizing, via an Electronic Design Automation (EDA) tool, a plurality target design memory blocks based on memory operation patterns into one of an overlapping category and a non-overlapping category, the overlapping category comprising target design memory blocks having overlapping memory operations and the non-overlapping category comprising target design memory blocks having non-overlapping memory operation;
identifying, via the EDA tool, a set of target design memory blocks from the plurality of target design memory blocks that satisfy capacity criteria of a single embedded memory block in the semiconductor device, wherein each target design memory block in the set is identified from the same category selected from one of the overlapping category and the non-overlapping category;
designing, via the EDA tool, semiconductor device components to be created on the semiconductor device based on one of the overlapping category and the non-overlapping category, which the set of target design memory blocks is associated with; and
implementing, via the EDA tool, the set of target design memory blocks and the semiconductor device components onto the single embedded memory block of the semiconductor device.
2. The method of claim 1 further comprising:
classifying the plurality of target design memory blocks based on capacity requirements, capacity requirement of a target design memory block comprising depth and width requirement of the target design memory block; and
classifying a plurality of embedded memory blocks in the semiconductor device based on associated capacities, capacity of an embedded memory block comprising width and depth of the embedded memory block, the plurality of embedded memory blocks comprising the single embedded memory block.
3. The method of claim 2, wherein the set of target design memory blocks is identified in response to classifying the plurality of target design memory blocks and the plurality of embedded memory blocks in the semiconductor device.
4. The method of claim 1, wherein the capacity criteria of the single embedded memory block in the semiconductor device, comprise combined width of memory blocks in the set of target design memory blocks being less than or equal to width of the single embedded memory block in the semiconductor device and combined depth of the memory blocks in the set of target design memory blocks being less than or equal to depth of the single embedded memory block in the semiconductor device.
5. The method of claim 1, wherein the memory operations comprise read and write operations.
6. The method of claim 1, wherein each of the target design memory blocks in the overlapping category comprise same clock for write memory operations and same clock for read memory operations.
7. The method of claim 1, wherein the semiconductor device components are selected from a group comprising multiplexer, de-multiplexer, sequential elements, and combinatorial gates.
8. The method of claim 1, wherein number and placement of the semiconductor device components corresponds to one of the overlapping and the non-overlapping category, which the set of target design memory blocks is associated with.
9. The method of claim 1, wherein implementing comprises:
placing the set of target design memory blocks and the semiconductor device components on the single embedded memory block; and
performing routing in the semiconductor device in response to the placing, wherein routing accommodates the placed set of target design memory blocks and the placed semiconductor device components.
10. The method of claim 1, wherein the semiconductor device comprises Field Programmable Gate Array (FPGA), Application Specific Integrated Circuit (ASIC), Application Specific Standard Part (ASSP), System on Chip (SoC), and System on Programmable Chip (SoPC).
11. A method of mapping target design memory blocks to embedded memory blocks in a semiconductor device of an embedded system, the method comprising:
categorizing, via an Electronic Design Automation (EDA) tool, a set of target design memory blocks into overlapping memory operation patterns and non-overlapping memory operations patterns; and
implementing, via the EDA tool, the set of target design memory blocks to a single embedded memory block of the semiconductor device based on the categorizing.
12. The method of claim 11, wherein the memory operations comprise a read operation and a write operation.
13. The method of claim 11, wherein the embedded system comprises a Field Programmable Gate Array (FPGA), Application Specific Integrated Circuit (ASIC), Application Specific Standard Part (ASSP), System on Chip (SoC), and System on Programmable Chip (SoPC).
14. The method of claim 11, wherein the set of target design memory blocks satisfy the capacity criteria for the single embedded memory block.
15. The method of claim 14, wherein the capacity criteria of the single embedded memory block comprise combined width of memory blocks in the set of target design memory blocks being less than or equal to width of the single embedded memory block in the semiconductor device and combined depth of the memory blocks in the set of target design memory blocks being less than or equal to depth of the single embedded memory block in the semiconductor device.
16. The method of claim 11 further comprising designing embedded system components to be created on the embedded system to implement the set of design memory blocks to the single embedded memory block.
17. A system for mapping target design memory blocks to embedded memory blocks in a semiconductor device of an embedded system, the system comprising:
at least one processors; and
a computer-readable medium storing instructions that, when executed by the at least one processor, cause the at least one processor to perform operations comprising:
categorizing a plurality target design memory blocks based on memory operation patterns into one of an overlapping category and a non-overlapping category, the overlapping category comprising target design memory blocks having overlapping memory operations and the non-overlapping category comprising target design memory blocks having non-overlapping memory operation;
identifying a set of target design memory blocks from the plurality of target design memory blocks that satisfy capacity criteria of a single embedded memory block in the semiconductor device, wherein each target design memory block in the set is identified from the same category selected from one of the overlapping category and the non-overlapping category;
designing semiconductor device components to be created on the semiconductor device based on one of the overlapping category and the non-overlapping category, which the set of target design memory blocks is associated with; and
implementing the set of target design memory blocks and the semiconductor device components onto the single embedded memory block of the semiconductor device.
18. The system of claim 17, wherein the operations further comprise:
classifying the plurality of target design memory blocks based on capacity requirements, capacity requirement of a target design memory block comprising depth and width requirement of the target design memory block; and
classifying a plurality of embedded memory blocks in the semiconductor device based on associated capacities, capacity of an embedded memory block comprising width and depth of the embedded memory block, the plurality of embedded memory blocks comprising the single embedded memory block.
19. The system of claim 17, wherein the capacity criteria of the single embedded memory block in the semiconductor device, comprise combined width of memory blocks in the set of target design memory blocks being less than or equal to width of the single embedded memory block in the semiconductor device and combined depth of the memory blocks in the set of target design memory blocks being less than or equal to depth of the single embedded memory block in the semiconductor device.
20. The system of claim 17, wherein each of the target design memory blocks in the overlapping category comprise same clock for write memory operations and same clock for read memory operations.
21. The system of claim 17, wherein number and placement of the semiconductor device components corresponds to one of the overlapping and the non-overlapping category, which the set of target design memory blocks is associated with.
22. The system of claim 17, wherein the operation of implementing further comprises operations of:
placing the set of target design memory blocks and the semiconductor device components on the single embedded memory block; and
performing routing in the semiconductor device in response to the placing, wherein routing accommodates the placed set of target design memory blocks and the placed semiconductor device components.
Dated this 3rd day of August, 2016
R Ramya Rao
Of K&S Partners
Agent for the Applicant
, Description:TECHNICAL FIELD
This disclosure relates generally to embedded systems and more particularly to methods and systems for managing memory blocks of semiconductor devices in embedded systems.
| # | Name | Date |
|---|---|---|
| 1 | Form 9 [03-08-2016(online)].pdf_101.pdf | 2016-08-03 |
| 2 | Form 9 [03-08-2016(online)].pdf | 2016-08-03 |
| 3 | Form 5 [03-08-2016(online)].pdf | 2016-08-03 |
| 4 | Form 3 [03-08-2016(online)].pdf | 2016-08-03 |
| 5 | Form 18 [03-08-2016(online)].pdf_100.pdf | 2016-08-03 |
| 6 | Form 18 [03-08-2016(online)].pdf | 2016-08-03 |
| 7 | Drawing [03-08-2016(online)].pdf | 2016-08-03 |
| 8 | Description(Complete) [03-08-2016(online)].pdf | 2016-08-03 |
| 9 | REQUEST FOR CERTIFIED COPY [06-08-2016(online)].pdf | 2016-08-06 |
| 10 | Form 26 [10-08-2016(online)].pdf | 2016-08-10 |
| 11 | abstract201641026542 .jpg | 2016-08-10 |
| 12 | 201641026542-Power of Attorney-160816.pdf | 2016-09-06 |
| 13 | 201641026542-Correspondence-PA-160816.pdf | 2016-09-06 |
| 14 | REQUEST FOR CERTIFIED COPY [09-12-2016(online)].pdf | 2016-12-09 |
| 15 | Form 3 [20-12-2016(online)].pdf | 2016-12-20 |
| 16 | PROOF OF RIGHT [08-06-2017(online)].pdf | 2017-06-08 |
| 17 | Correspondence by Agent_Form30 And Form1_12-06-2017.pdf | 2017-06-12 |
| 18 | 201641026542-REQUEST FOR CERTIFIED COPY [31-10-2017(online)].pdf | 2017-10-31 |
| 19 | 201641026542-FER.pdf | 2020-02-25 |
| 20 | 201641026542-PETITION UNDER RULE 137 [03-08-2020(online)].pdf | 2020-08-03 |
| 21 | 201641026542-FORM 3 [03-08-2020(online)].pdf | 2020-08-03 |
| 22 | 201641026542-FER_SER_REPLY [03-08-2020(online)].pdf | 2020-08-03 |
| 23 | 201641026542-US(14)-HearingNotice-(HearingDate-22-05-2023).pdf | 2023-04-19 |
| 24 | 201641026542-POA [28-04-2023(online)].pdf | 2023-04-28 |
| 25 | 201641026542-FORM 13 [28-04-2023(online)].pdf | 2023-04-28 |
| 26 | 201641026542-Correspondence to notify the Controller [28-04-2023(online)].pdf | 2023-04-28 |
| 27 | 201641026542-AMENDED DOCUMENTS [28-04-2023(online)].pdf | 2023-04-28 |
| 28 | 201641026542-Written submissions and relevant documents [06-06-2023(online)].pdf | 2023-06-06 |
| 29 | 201641026542-PETITION UNDER RULE 137 [06-06-2023(online)].pdf | 2023-06-06 |
| 30 | 201641026542-FORM 3 [06-06-2023(online)].pdf | 2023-06-06 |
| 31 | 201641026542-PatentCertificate09-06-2023.pdf | 2023-06-09 |
| 32 | 201641026542-IntimationOfGrant09-06-2023.pdf | 2023-06-09 |
| 1 | 2021-02-2613-39-16AE_26-02-2021.pdf |
| 2 | 2020-02-2415-11-49_24-02-2020.pdf |