IP Library Granted Patent US 8,782,587
Granted Patent B2
US 8,782,587 · App. 13/683,287 · Granted Jul 15, 2014

Systems and methods for generating a higher level description of a circuit design based on connectivity strengths

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,782,587
App. No.
13/683,287
Granted
Jul 15, 2014
Kind
B2
Abstract

Provided are systems and methods for generating a higher level description of a circuit design comprising a plurality of interface instances. One or more buckets for each source instance with respect to each destination instance included in the circuit design are generated, and then the one or more buckets are sorted based on a number of bucket entries in each bucket. One or more interface instances are generated based on the sorted buckets. The higher level description of the circuit design is generated based on the one or more interface instances.

Claims (37)

1. A computerized method for analyzing a circuit description netlist to produce a higher level description, comprising:

receiving a netlist including block instances that comprises at least a portion of a circuit description netlist;

analyzing by one or more processors the netlist including grouping ports according to connectivity strength between a source instance and at least one connected destination instance;

creating a list of bucket entries containing driver instance names, destination instance names and connected pairs of ports corresponding to specific driver port instances and destination port instances;

assigning signal groupings corresponding to groups of connected ports to higher-level interface definitions; and

saving, in memory, the higher level interface definitions and related signal groupings and signal properties,

wherein for each bucket list entry, the method further comprises:

creating new interfaces of types MASTER and MIRRORED MASTER;

creating a logical port of a same type as that of a driver port instance;

instantiating an interface of type MASTER to the driver port instance, and mapping all ports in the bucket list entry to master interface logical ports which have the same type as the driver port; and

instantiating an interface of type MIRRORED MASTER to each destination instance, and mapping all ports in the bucket to mirrored master interface logical ports which have the same type as ports on the destination instance.

2. The computerized method of claim 1 , further comprising:

receiving an indication regarding the acceptability of the signal groupings;

receiving at least one manually specified signal property or signal grouping for the signal groupings that are not yet acceptable; and

analyzing by the one or more processors the netlist including grouping signals according to connectivity strength between a source instance and at least one connected destination instance, while maintaining the at least one manually specified signal property or signal grouping.

3. The computerized method of claim 2 , wherein a user interface is provided to facilitate the manually specifying of the at least one signal property or signal grouping by a user.

4. The computerized method of claim 1 , wherein to produce the list of bucket entries, the netlist is processed in order of either driver count or fanout percentage starting with the maximum driver count or maximum fanout percentage, respectively.

5. The computerized method of claim 1 , wherein the list of bucket entries is sorted by bucket size prior to further processing.

6. The computerized method of claim 1 , wherein for source and destination ports of a pair of ports in a bucket where both ports are not currently mapped to an interface, the method further comprises:

creating a new interface and instantiating the new interface to all ports in the bucket for both source and destination ports.

7. The computerized method of claim 1 , wherein for source and destination ports of a pair of ports in a bucket where only one port is mapped to an interface, the method further comprises:

applying that interface to the other port of the pair of ports.

8. The computerized method of claim 1 , wherein for source and destination ports of a pair of ports in a bucket where both ports are already mapped to an interface, the method further comprising:

proceeding to the next entry in the bucket list.

9. The computerized method of claim 1 , wherein when more than one entry in the bucket list can be merged into a single interface, merging a plurality of entries into the single interface.

10. A computerized method for analyzing a circuit description netlist to produce a higher level description, comprising:

receiving a netlist including block instances that comprises at least a portion of a circuit description netlist;

analyzing by one or more processors the netlist including grouping ports according to connectivity strength between a source instance and at least one connected destination instance;

creating a list of bucket entries containing driver instance names, destination instance names and connected pairs of ports corresponding to specific driver port instances and destination port instances;

assigning signal groupings corresponding to groups of connected ports to higher-level interface definitions; and

saving, in memory, the higher level interface definitions and related signal groupings and signal properties,

wherein for source and destination ports of a pair of ports in a bucket where both ports are already mapped to an interface, the method further comprises:

proceeding to the next entry in the bucket list,

wherein for each MASTER interface, the method further comprises:

determining that there is another MASTER interface with the same number of logical ports and the same port types; and

for each pair of MASTER interfaces with the same number of logical ports and the same port types, deleting a MASTER interface and replacing the instance of the deleted interface with a new MASTER interface; and

replacing a MIRRORED MASTER interface corresponding to the deleted master interface with a corresponding new MIRRORED MASTER interface.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2015
From: ATRENTA INC.
To: SYNOPSYS, INC.
Reel/Frame 036687/0290 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2015
From: SILICON VALLEY BANK
To: ATRENTA INC.
Reel/Frame 036584/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2014
From: NAYAK, ANSHUMAN; CHAKRABARTI, SAMANTAK; AGRAWAL, BRIJESH; KRISHNA, CHANDRAKANTI VAMSHI
To: ATRENTA, INC
Reel/Frame 031982/0553 →