UST940008I4 - Automated logic mapping system - Google Patents

Automated logic mapping system Download PDF

Info

Publication number
UST940008I4
UST940008I4 US47087174A UST940008I4 US T940008 I4 UST940008 I4 US T940008I4 US 47087174 A US47087174 A US 47087174A US T940008 I4 UST940008 I4 US T940008I4
Authority
US
United States
Prior art keywords
vertex
module
vertices
mapping system
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed filed Critical
Priority to US47087174 priority Critical patent/UST940008I4/en
Application granted granted Critical
Publication of UST940008I4 publication Critical patent/UST940008I4/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement

Definitions

  • the allocation process may be varied from a partition having a zero block redundancy, to a mapping which has some degree of redundancy for the purpose of minimizing the total number of modules required.
  • the process is applicable to any system wherein interconnected block sub-units must be assigned to larger module units for organizational purposes. For example, the allocation of circuits to chip structures.
  • an automatic process for mapping blocks to modules is provided.
  • the process consists of a set of programs that operate on a given block graph input and provide an output graph which may take the form of either a partition or a mapping.
  • VGP vertex generation program
  • VAP vertex allocation program
  • Vertex generation is a sub-grouping process to commonly assign interconnected blocks into a subunit known as a vertex.
  • the program begins with a list of initiate vertices to which blocks are added until a complete list of vertices is formed.
  • the initiate vertex acts as a nucleus from which the vertex is grown.
  • the VGP terminates by outputting a complete vertex graph that is introduced as input to VAP.
  • the vertex allocation phase performs a systematic assignment of verti-ces to modules.
  • VAP structures the input vertex graph into a format which may be processed to determine which of the vertices may be assigned to a common module.
  • VAP may be used iteratively by the user so as to execute a mapping onto a predetermined number of modules in accordance with a plurality of structure and user restrictions.
  • VGP VERTEX GENERATION PROCESS
  • FIG.12B VER1 IV5 vER1 H5 132 152 MN R T5? 0 R W 182 FIG.12A FIG.12B

Abstract

NO ABSTRACT AVAILABLE IN THE IFI DATABASE FOR THIS PATENT

Description

"Published at the request of the applicant or owner in accordance with the Notice of Dec. 16, 1969, 869 0.G. 687. The abstracts oi. Defensive Publication applications are identified by distinctly numbered seriesand are arranged chronologically. The heading of each abstract indicates the number of pages of specification, including claims and sheets of drawings contained in the application as originally filed. The files 'of these applications are available to the public for inspection and reproduction may be purchased for 30 cents a sheet.
Defensive Publication applications have not been examined as to the merits of alleged invention. The Patent and Trademark Ofiice makes no assertion as to the novelty of the disclosed subject matter.
PUBLISHED NOVEMBER 4:, 1975 Thddgllilti AUTQMATED LUGH MAPPENG YTEM Peter H. Oden, 120 Pines Bridge Road, Ossining, N.Y. 10562; Roy L. Russo, 1793 Blossom Court, Yorktown Heights, N.Y. 10598; and Peter K. Woltl, 81"., Glen Road, P.0. Box 426, Shrub Oak, N.Y. 10588 Continuation of application Ser. No. 300,954, Get. 26, 1972. This application May 17, 1974, Ser. No. 470,871 Int. (ll. (206? 9/06, 13/00 US. Cl. 444-1 8 Sheets Drawing. 34 Pages Specification BLOCK GRAPH 18 2? MAPPHJG J (VGP) (VAP) RESULTS A process for allocating a plurality of block units with a predescribcd interconnection specification, to a plurality of module units. The allocation process may be varied from a partition having a zero block redundancy, to a mapping which has some degree of redundancy for the purpose of minimizing the total number of modules required. The process is applicable to any system wherein interconnected block sub-units must be assigned to larger module units for organizational purposes. For example, the allocation of circuits to chip structures.
In the present invention an automatic process for mapping blocks to modules is provided. The process consists of a set of programs that operate on a given block graph input and provide an output graph which may take the form of either a partition or a mapping.
The automated mapping process consists of two major constituents, a vertex generation program (VGP) and a vertex allocation program (VAP). Vertex generation is a sub-grouping process to commonly assign interconnected blocks into a subunit known as a vertex. The program begins with a list of initiate vertices to which blocks are added until a complete list of vertices is formed. The initiate vertex acts as a nucleus from which the vertex is grown. The VGP terminates by outputting a complete vertex graph that is introduced as input to VAP.
The vertex allocation phase performs a systematic assignment of verti-ces to modules. VAP structures the input vertex graph into a format which may be processed to determine which of the vertices may be assigned to a common module. In order to achieve a minimized cost mapping, VAP may be used iteratively by the user so as to execute a mapping onto a predetermined number of modules in accordance with a plurality of structure and user restrictions.
Nov. 4,. 1975 P. H. ODEN et a1. T940,008
AUTOMATED LOGIC MAPPING SYSTEM Original Filed May 17, 1974 Sheet 1 of 8 [INPUT OATA MODE CONTROL 1e VERTEX 26 VERTEX USER INITIATE VERTICES 20 GENERATION ALLOCATION BLOCK GRAPH 18 PROCESS 22 V PROCESS MAP/PING (VGP) (W) RESULTS N5 N7 I1 B3 I2 Q B5 01 B1 FIG. 4 M
X N2 9 N5 B2 B4 B6 02 m 1V4 1V6 VER1 N8 I2 B5 01 FIG. 4A N1 B1 i N9\ N5 52 B4 B6 A 02 I3 1V5 IV? INVENTORS PETER H. ODEN ROY L. RUSSO PETER K.WOLFF, SR BY A? 57m AGENT Nov. 4, 1975 Original Filed AUTOMATED LOGIC May 17, 1974 STA RT P. H. ODEN et a1.
FIG.2A
READ BLOCK CRAPH,MODE CONTROL, INITIATE VERTICES.
VERTEX GENERATION PROCESS (VGP) CENERATE INITIATE VERTICES FOR ALL USER SPECIFIED, INITIATE VERTICES CENERATE AN INITIATE VERTEX FOR EACH BLOCK HAVINCAN OUTPUT NET CONNECTING BLOCKS OF DIFFERENT AREA KINDS.SUCH AS PRIMARY INPUTS AND 0UTPUTS,AND FOR EACH BLOCK WITH NO OUTPUT NETS.
SELECT AN INITIATE VERTEX V ARE ALL INITIATE VERTICES SELECTED? YES PUT THE INITIATE BLOCKS OFV IN LISTB EXAMINE EACH VERTEX V AND I SET usn. EMPTY SELECTA BLOCK FROM LIST B MAKE EACH INPUT NET TO V AN OUTPUT NET FROM THE FIRST VERTEX CONTAINING THE SOURCE BLOCK FOR THE NET IFNOT AL- READY AN OUTPUT.
ARE ALL BLOCKS SELECTED? VERTEX CRAPH OUTPUT T0 VAP SELECT AN INPUT NET OF THE SELECTED BLOCK ARE ALL INPUT NETS SELECTED YES IS THESELECTED NET AN OUTPUT NET OF ANY BLOCK IN AN INITIATE VERTEX INPUT NET LIST FOR v. A
TO FIC.3A
YES (VAP) FIC.2B
FIG.2
Nov. 4, 1975 P. H. ODEN et a1. T940,008
AUTOMATED LOGIC MAPPING SYSTEM Original Filed May 17, 1974 Sheet 4 of 8 FROM FIG. 2A (V.G.P.I
F! 6 3A READ IN FOR EACH VERTEX ITS= A MEMBER BLOCKS VERTEX b) INPUT NETS ALLOCATION OUTPUT NETS PROCESS (VAP) READ IN NUMBER OF MODULES. READ IN AREA OF EACH BLOCK.
READ IN FOREACH MODULE= (1.)MAXIMUM AREA PER MODULE bIMAXIMUM PINS PER MODULE cILIST OF ALLOCABLE VERTICES dIMANUAL ALLOCATION SPECIFICATION,IFANY.
ALLOCATE VERTICES SPECIFIED TO MODULES SPECIFIED.
DECREASE MODULE PIN AND AREA CAPACITIES TO REFLECT ALLOC- ATION.
DOES AT LEAST ONE MODULE HAVE AN INITIAL ALLOCATION YES NO SELECT AN UNALLOCATED ALLOCABLE VERTEX RANDOMLY.
FIG. ALLOCATE VERTEX TOA RANDOM MODULE 3A FIG. 3B
DECREASE PIN AND AREA CAPACITIES T0 REFLECT ALLOCATION E FIG.3
Nov. 4, 1975 P. H. ODEN et a1. T940,008
AUTOMATED LOGIC MAPPING SYSTEM Original Filed May 17, 1974 Sheet 5 of 8 YES CREATE A CANDIDATE VERTEX LIST CONSISTINC OF ALL ALLOCABLE VERTICES WHICH SHARE A NET WITH THE VERTICES THUS FAR ALLOCATED SELECT j'FOR SMALLEST Rj- TIES BROKEN ARBITRARILY.
SELECTi' FOR SMALLEST Fij FOR THISj-TIES BROKEN ARBITRARILY.
ALLOCATE VERTEX j' TO MODULE i ALTER PIN AND AREA CAPACITIES ON MODULE AND REMOVE VERLTIESX FROM CANDIDATE ADD UNALLOCATED ALLOCABLE VERTICES THAT SHARE A NET WITH VERTEXJ'TO CANDIDATE LIST, IF NOT ALREADY THERE.
ARE ALL ALLOCABLE VERTICES ALLOCATED? I Y s o E 'N ALLOCATION ATTEMPT IS SUCCESSFUL; COMPUTE THE AREA Ai j NEEDED IF cANDTDATE SUPPLY MAPPING RESULTS To VERTEXj WOULD BE ADDED To MODULEi USER OVER ALLI AND T- TERMINATION COMPUTE THE PINS Pij NEEDED IFCANDIDATE VERTEX] WOULD BE ADDED TO MODULEi OVER ALL i ANDj.
I SELECT THE NEXT VERTEX MODULEL PAIR ARE ALLij PAIRS SELECTED? NDI YES WILL VERTEXj FIT ON MODULE '1 M YES L Nov. 4, 1975 P. H.,ODEN et a1. T940,008
AUTOMATED LOGIC MAPPING SYSTEM Original Filed May 17, 1974 Sheet 6 of 8 WHERE kp,cp, ka ,ca, ARE CONSTANTS.
SELECT NEXT VERTEXJ T0 EXAMINE.
ARE ALL VERTEX] '3 EXAMINED? YES NO D0 ANY RJ'$=0? DOALL Fij'S FOR THISj ="K? NO YES NO Rj=-K H was 'AREALLRj'S=K? IS ONLY ONE Fij FURNISH-K? NO YES I no i= ALLOCATION ATTEMPT IS UNSUCCESSFUL; I SUPPLY MAPPINGRESULTS SMALLEST FH TOUSER- NEXTSMALLESTFijFORTHISj TERMINATION ALLOCATE VERTEX WITH LOWESTj AND RJ=0 TO THE MODULE IT FITS 0N Nov. 4, 1975 P. H. ODEN et a1.
AUTOMATED LOGIC MAPPING SYSTEM Sheet 7 of 8 Original Filed May 17, 1974 MODULE 1 MODULE 2 Nov. 4, 1975 P. H. ODEN et a1. T940,008
AUTOMATED LOGIC MAPPING SYSTEM Original Filed May 17, 1974 Sheet 8 of s AREA PINS MODULE 1 2 1 FIG. 8 MODULE 2 4 4 VER1 IV5 MODULE 1 1 2 PINS PM FIG. 9 MODULE 2 3 4 VER1 1V5 MODULE 1 2 2 AREA AH FIG. 10 MODULE 2 2 3 vER1 IV5 VER1 IVS MODULE 1 132 -1 132 144 F11 F11 MODULE 2 156 182 156 182 FIG.11A FiG.11B
VER1 IV5 vER1 H5 132 152 MN R T5? 0 R W 182 FIG.12A FIG.12B
US47087174 1974-05-17 1974-05-17 Automated logic mapping system Pending UST940008I4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US47087174 UST940008I4 (en) 1974-05-17 1974-05-17 Automated logic mapping system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US47087174 UST940008I4 (en) 1974-05-17 1974-05-17 Automated logic mapping system

Publications (1)

Publication Number Publication Date
UST940008I4 true UST940008I4 (en) 1975-11-04

Family

ID=23869409

Family Applications (1)

Application Number Title Priority Date Filing Date
US47087174 Pending UST940008I4 (en) 1974-05-17 1974-05-17 Automated logic mapping system

Country Status (1)

Country Link
US (1) UST940008I4 (en)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4263651A (en) 1979-05-21 1981-04-21 International Business Machines Corporation Method for determining the characteristics of a logic block graph diagram to provide an indication of path delays between the blocks
WO1992009042A1 (en) * 1990-11-15 1992-05-29 Xilinx, Inc. Logic placement using positionally asymmetrical partitioning algorithm
US5191542A (en) * 1989-06-23 1993-03-02 Kabushiki Kaisha Toshiba Automatic floorplan operation apparatus
US5222030A (en) * 1990-04-06 1993-06-22 Lsi Logic Corporation Methodology for deriving executable low-level structural descriptions and valid physical implementations of circuits and systems from high-level semantic specifications and descriptions thereof
US5229953A (en) * 1989-10-13 1993-07-20 Hitachi, Ltd. Method of and apparatus for assigning logic gates to a plurality of hardware components
US5282148A (en) * 1989-05-23 1994-01-25 Vlsi Technology, Inc. Method and apparatus for the design and fabrication of integrated circuits employing logic decomposition algorithms for the timing optimization of multilevel logic
US5461577A (en) * 1987-08-04 1995-10-24 Texas Instruments Incorporated Comprehensive logic circuit layout system
US5526517A (en) * 1992-05-15 1996-06-11 Lsi Logic Corporation Concurrently operating design tools in an electronic computer aided design system
US5541849A (en) * 1990-04-06 1996-07-30 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including estimation and comparison of timing parameters
US5544066A (en) * 1990-04-06 1996-08-06 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including estimation and comparison of low-level design constraints
US5544067A (en) * 1990-04-06 1996-08-06 Lsi Logic Corporation Method and system for creating, deriving and validating structural description of electronic system from higher level, behavior-oriented description, including interactive schematic design and simulation
US5553002A (en) * 1990-04-06 1996-09-03 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, using milestone matrix incorporated into user-interface
US5555201A (en) * 1990-04-06 1996-09-10 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information
US5557531A (en) * 1990-04-06 1996-09-17 Lsi Logic Corporation Method and system for creating and validating low level structural description of electronic design from higher level, behavior-oriented description, including estimating power dissipation of physical implementation
US5572437A (en) * 1990-04-06 1996-11-05 Lsi Logic Corporation Method and system for creating and verifying structural logic model of electronic design from behavioral description, including generation of logic and timing models
US5572436A (en) * 1990-04-06 1996-11-05 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design
US5598344A (en) * 1990-04-06 1997-01-28 Lsi Logic Corporation Method and system for creating, validating, and scaling structural description of electronic device
US5623418A (en) * 1990-04-06 1997-04-22 Lsi Logic Corporation System and method for creating and validating structural description of electronic system
US5867399A (en) * 1990-04-06 1999-02-02 Lsi Logic Corporation System and method for creating and validating structural description of electronic system from higher-level and behavior-oriented description
US5870308A (en) * 1990-04-06 1999-02-09 Lsi Logic Corporation Method and system for creating and validating low-level description of electronic design

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4263651A (en) 1979-05-21 1981-04-21 International Business Machines Corporation Method for determining the characteristics of a logic block graph diagram to provide an indication of path delays between the blocks
US5461577A (en) * 1987-08-04 1995-10-24 Texas Instruments Incorporated Comprehensive logic circuit layout system
US5282148A (en) * 1989-05-23 1994-01-25 Vlsi Technology, Inc. Method and apparatus for the design and fabrication of integrated circuits employing logic decomposition algorithms for the timing optimization of multilevel logic
US5191542A (en) * 1989-06-23 1993-03-02 Kabushiki Kaisha Toshiba Automatic floorplan operation apparatus
US5229953A (en) * 1989-10-13 1993-07-20 Hitachi, Ltd. Method of and apparatus for assigning logic gates to a plurality of hardware components
US5553002A (en) * 1990-04-06 1996-09-03 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, using milestone matrix incorporated into user-interface
US5572436A (en) * 1990-04-06 1996-11-05 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design
US6470482B1 (en) 1990-04-06 2002-10-22 Lsi Logic Corporation Method and system for creating, deriving and validating structural description of electronic system from higher level, behavior-oriented description, including interactive schematic design and simulation
US5526277A (en) * 1990-04-06 1996-06-11 Lsi Logic Corporation ECAD system for deriving executable low-level structural descriptions and valid physical implementations of circuits and systems from high-level semantic descriptions thereof
US5541849A (en) * 1990-04-06 1996-07-30 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including estimation and comparison of timing parameters
US5544066A (en) * 1990-04-06 1996-08-06 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including estimation and comparison of low-level design constraints
US5544067A (en) * 1990-04-06 1996-08-06 Lsi Logic Corporation Method and system for creating, deriving and validating structural description of electronic system from higher level, behavior-oriented description, including interactive schematic design and simulation
US6324678B1 (en) 1990-04-06 2001-11-27 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design
US5555201A (en) * 1990-04-06 1996-09-10 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information
US5557531A (en) * 1990-04-06 1996-09-17 Lsi Logic Corporation Method and system for creating and validating low level structural description of electronic design from higher level, behavior-oriented description, including estimating power dissipation of physical implementation
US5572437A (en) * 1990-04-06 1996-11-05 Lsi Logic Corporation Method and system for creating and verifying structural logic model of electronic design from behavioral description, including generation of logic and timing models
US5222030A (en) * 1990-04-06 1993-06-22 Lsi Logic Corporation Methodology for deriving executable low-level structural descriptions and valid physical implementations of circuits and systems from high-level semantic specifications and descriptions thereof
US5598344A (en) * 1990-04-06 1997-01-28 Lsi Logic Corporation Method and system for creating, validating, and scaling structural description of electronic device
US5623418A (en) * 1990-04-06 1997-04-22 Lsi Logic Corporation System and method for creating and validating structural description of electronic system
US5801958A (en) * 1990-04-06 1998-09-01 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information
US5867399A (en) * 1990-04-06 1999-02-02 Lsi Logic Corporation System and method for creating and validating structural description of electronic system from higher-level and behavior-oriented description
US5870308A (en) * 1990-04-06 1999-02-09 Lsi Logic Corporation Method and system for creating and validating low-level description of electronic design
US5933356A (en) * 1990-04-06 1999-08-03 Lsi Logic Corporation Method and system for creating and verifying structural logic model of electronic design from behavioral description, including generation of logic and timing models
US6216252B1 (en) 1990-04-06 2001-04-10 Lsi Logic Corporation Method and system for creating, validating, and scaling structural description of electronic device
WO1992009042A1 (en) * 1990-11-15 1992-05-29 Xilinx, Inc. Logic placement using positionally asymmetrical partitioning algorithm
US5526517A (en) * 1992-05-15 1996-06-11 Lsi Logic Corporation Concurrently operating design tools in an electronic computer aided design system

Similar Documents

Publication Publication Date Title
UST940008I4 (en) Automated logic mapping system
US8434088B2 (en) Optimized capacity planning
US3654615A (en) Element placement system
Bassok et al. Ordering and production decisions with supply quality and demand uncertainty
CN109800534B (en) FPGA (field programmable Gate array) design circuit diagram generation method and device, computer equipment and storage medium
CN112181530A (en) Virtual reality scene loading method based on cloud platform and virtual reality system
CN108399102A (en) A kind of resource allocation methods and device
CN110058940A (en) Data processing method and device under a kind of multi-thread environment
CN108805397A (en) Electronic device, the method and storage medium for distributing task
CN110262878A (en) Timed task processing method, device, equipment and computer readable storage medium
CN110543279A (en) Data storage and processing method, device and system
US6904584B2 (en) Method and system for placing logic nodes based on an estimated wiring congestion
DE102021105189A9 (en) Integrated circuit for a physically unclonable function and method for its operation
CN113672375B (en) Resource allocation prediction method, device, equipment and storage medium
CN117176638A (en) Routing path determining method and related components
CN104950833A (en) Production plan creation support method and production plan creation support apparatus
CN107104829B (en) Physical equipment matching distribution method and device based on network topology data
CN108199882B (en) Node distribution method, device, storage medium and equipment of distributed database
CN114090969B (en) Multilevel multi-tenant cross authorization management method
KR101858593B1 (en) Memory allocation apparatus and method for large-scale sparse matrix multiplication on a single machine
CN109165325A (en) Method, apparatus, equipment and computer readable storage medium for cutting diagram data
CN109117423A (en) The table partitioned allocation method of Database Systems, device and system
LIANG et al. Solving a combined part‐selection, machine‐loading, and tool‐configuration problem in flexible manufacturing systems
TWI637330B (en) Project management method and system thereof
CN111240830A (en) Public link contract resource allocation method and device, electronic equipment and storage medium