×

Optimizing placement of circuit resources using a globally accessible placement memory

  • US 9,747,400 B2
  • Filed: 12/07/2016
  • Issued: 08/29/2017
  • Est. Priority Date: 03/24/2015
  • Status: Active Grant
First Claim
Patent Images

1. A computer system comprising:

  • one or more processors;

    one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising instructions to execute a method comprising;

    partitioning a logic network comprising a plurality of logic elements into a plurality of logic partitions;

    launching a plurality of placement optimization threads that correspond to the plurality of logic partitions;

    allocating memory that is accessible to the plurality of placement optimization threads to provide a globally accessible placement memory;

    reserving a placement location for at least a portion of the plurality of logic elements via the globally accessible placement memory; and

    wherein each placement optimization thread of the plurality of placement optimization threads is configured to conduct the operations of;

    determining a desired location for a logic element of the plurality of logic elements, wherein the logic element is within a logic partition that corresponds to the placement optimization thread,reserving, via the globally accessible placement memory, a plurality of potential locations for the logic element that are proximate to the desired location,determining a best location from the plurality of potential locations,releasing each of the plurality of potential locations that are not the best location,placing the logic element at the best location, andwherein reserving a potential location comprises locking at least a portion of the globally accessible placement memory, inserting a thread identifier within at least one entry of an owning thread array stored within the globally accessible placement memory, and inserting at least one bit within a reserved locations bitmap stored within the globally accessible placement memory, and unlocking the portion of the globally accessible placement memory that was locked to reserve the potential location.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×