Abstract: A method and system for implementing memory changes in digital Integrated Circuits (ICs) includes a step of generating a plurality of memory wrappers based on a first library associated with a digital IC design requirement and a second library associated with a set of available memories. The method includes identifying at least one available memory from the set of available memories, for each of the plurality of memory wrappers, based on the associated width and depth requirement and width and depth details associated with each of the set of available memories. The method further includes managing port connections for the at least one available memory associated with each of the plurality of memory wrappers, based on the first library and the second library. The method includes validating each of the plurality of memory wrappers using a testbench generated for the digital IC design. FIG. 1
Claims:
WE CLAIM:
1. A method for implementing memory changes in digital Integrated Circuits (ICs), the method comprising:
generating a plurality of memory wrappers based on a first library associated with a digital IC design requirement and a second library associated with a set of available memories, wherein each of the plurality of memory wrappers is associated with a width and a depth requirement;
identifying at least one available memory from the set of available memories, for each of the plurality of memory wrappers, based on the associated width and depth requirement and width and depth details associated with each of the set of available memories, wherein the second library comprises the width and depth details associated with each of the set of available memories;
managing port connections for the at least one available memory associated with each of the plurality of memory wrappers, based on the first library and the second library; and
validating each of the plurality of memory wrappers using a testbench generated for the digital IC design.
2. The method of claim 1, wherein generating the plurality of memory wrappers comprises creating a mapping between the first library and the second library, wherein each of the first library and the second library comprises details of associated memory types, associated memory names, associated memory port names, associated memory port polarity, associated memory port functionality, associated memory widths and depths, wherein creating the mapping between the first library and the second library comprises:
creating a first memory table comprising at least one of memory types, memory names, memory widths, and memory depths extracted from the first library; and
creating a second memory table comprising at least one of memory types, memory names, memory widths, and memory depths extracted from the second library.
4. The method of claim 2, wherein creating the mapping between the first library and the second library comprises:
creating a first port table comprising a mapping of a predefined port attribute names to corresponding port attributes extracted from the first library; and
creating a second port table comprising a mapping of the predefined port attribute names to corresponding port attributes extracted from the second library.
5. The method of claim 2, further comprising:
determining names for a plurality of memory wrappers using a rule created based on memory naming format used in the first library; and
generating, in a hardware description language, the plurality of memory wrappers based on the mapping between the first library and the second library and the names determined for each of the plurality of memory wrappers, wherein each of the plurality of memory wrappers comprises instantiation of at least one memory from the set of available memories.
7. The method of claim 1, wherein the digital IC comprises at least one of Application-Specific Integrated Circuit (ASIC) or Field Programmable Gate Array (FPGA).
8. The method of claim 1, wherein identifying the at least one available memory from the set of available memories for a memory wrapper of the plurality of memory wrappers comprises implementing at least one predefined width rule and at least one predefined depth rule on the set of available memories.
9. A system for generating memory wrappers for digital Integrated Circuits (ICs) designs, the system comprising:
a processor; and
a memory communicatively coupled to the processor, wherein the memory stores processor instructions, which, on execution, causes the processor to:
create a mapping between a first library associated with a digital IC design requirement and a second library associated with a set of available memories, wherein each of the first library and the second library comprises details of associated memory types, associated memory names, associated memory port names, associated memory port polarity, associated memory port functionality, associated memory widths and depths;
determine names for a plurality of memory wrappers using a rule created based on memory naming format used in the first library; and
generate, in a hardware description language, the plurality of memory wrappers based on the mapping between the first library and the second library and the names determined for each of the plurality of memory wrappers, wherein each of the plurality of memory wrappers comprises instantiation of at least one memory from the set of available memories.
10. The system of claim 9, wherein creating the mapping between the first library and the second library comprises:
creating a first memory table comprising at least one of memory types, memory names, memory widths, and memory depths extracted from the first library; and
creating a second memory table comprising at least one of memory types, memory names, memory widths, and memory depths extracted from the second library.
| # | Name | Date |
|---|---|---|
| 1 | 201944012886-US 16370276-DASCODE-3695 [30-03-2019].pdf | 2019-03-30 |
| 2 | 201944012886-STATEMENT OF UNDERTAKING (FORM 3) [30-03-2019(online)].pdf | 2019-03-30 |
| 3 | 201944012886-REQUEST FOR EXAMINATION (FORM-18) [30-03-2019(online)].pdf | 2019-03-30 |
| 4 | 201944012886-POWER OF AUTHORITY [30-03-2019(online)].pdf | 2019-03-30 |
| 5 | 201944012886-FORM 18 [30-03-2019(online)].pdf | 2019-03-30 |
| 6 | 201944012886-FORM 1 [30-03-2019(online)].pdf | 2019-03-30 |
| 7 | 201944012886-DRAWINGS [30-03-2019(online)].pdf | 2019-03-30 |
| 8 | 201944012886-DECLARATION OF INVENTORSHIP (FORM 5) [30-03-2019(online)].pdf | 2019-03-30 |
| 9 | 201944012886-COMPLETE SPECIFICATION [30-03-2019(online)].pdf | 2019-03-30 |
| 10 | 201944012886-RELEVANT DOCUMENTS [31-08-2021(online)].pdf | 2021-08-31 |
| 11 | 201944012886-Proof of Right [31-08-2021(online)].pdf | 2021-08-31 |
| 12 | 201944012886-PETITION UNDER RULE 137 [31-08-2021(online)].pdf | 2021-08-31 |
| 13 | 201944012886-OTHERS [31-08-2021(online)].pdf | 2021-08-31 |
| 14 | 201944012886-Information under section 8(2) [31-08-2021(online)].pdf | 2021-08-31 |
| 15 | 201944012886-FORM 3 [31-08-2021(online)].pdf | 2021-08-31 |
| 16 | 201944012886-FER_SER_REPLY [31-08-2021(online)].pdf | 2021-08-31 |
| 17 | 201944012886-DRAWING [31-08-2021(online)].pdf | 2021-08-31 |
| 18 | 201944012886-CORRESPONDENCE [31-08-2021(online)].pdf | 2021-08-31 |
| 19 | 201944012886-COMPLETE SPECIFICATION [31-08-2021(online)].pdf | 2021-08-31 |
| 20 | 201944012886-CLAIMS [31-08-2021(online)].pdf | 2021-08-31 |
| 21 | 201944012886-FER.pdf | 2021-10-17 |
| 22 | 201944012886-US(14)-HearingNotice-(HearingDate-03-10-2023).pdf | 2023-08-23 |
| 23 | 201944012886-POA [25-09-2023(online)].pdf | 2023-09-25 |
| 24 | 201944012886-FORM 13 [25-09-2023(online)].pdf | 2023-09-25 |
| 25 | 201944012886-Correspondence to notify the Controller [25-09-2023(online)].pdf | 2023-09-25 |
| 26 | 201944012886-AMENDED DOCUMENTS [25-09-2023(online)].pdf | 2023-09-25 |
| 27 | 201944012886-Written submissions and relevant documents [18-10-2023(online)].pdf | 2023-10-18 |
| 28 | 201944012886-FORM-26 [18-10-2023(online)].pdf | 2023-10-18 |
| 29 | 201944012886-FORM 3 [18-10-2023(online)].pdf | 2023-10-18 |
| 30 | 201944012886-PatentCertificate22-03-2024.pdf | 2024-03-22 |
| 31 | 201944012886-IntimationOfGrant22-03-2024.pdf | 2024-03-22 |
| 32 | 201944012886-FORM 4 [04-07-2024(online)].pdf | 2024-07-04 |
| 1 | SearchStrategyMatrix201944012886E_25-02-2021.pdf |