Patent US4922432A successfully refreshed from Google Patents.
← Back to Patent Explorer
US4922432A Expired / Lapsed US ⏱️ 0.0 years remaining

Knowledge based method and apparatus for designing integrated circuits using functional specifications

Assignee: Ricoh Co Ltd
•
Filing: 1988-01-13
•
Granted: 1990-05-01
•
Expires: 2008-01-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention provides a computer-aided design system and method for designing an application specific integrated circuit which enables a user to define functional architecture independent specifications for the integrated circuit and which translates the functional architecture independent specifications into the detailed information needed for directly producing the integrated circuit. The functional architecture independent specifications of the desired integrated circuit can be defined at the functional architecture independent level in a flowchart format. From the flowchart, the system and method uses artificial intelligence and expert systems technology to generate a system controller, to select the necessary integrated circuit hardware cells needed to achieve the functional specifications, and to generate data and control paths for operation of the integrated circuit. This list of hardware cells and their interconnection requirements is set forth in a netlist. From the netlist it is possible using known manual techniques or existing VLSI CAD layout systems to generate the detailed chip level topological information (mask data) required to produce the particular application specific integrated circuit.

Inventors

  • 👤 Hideaki Kobayashi
  • 👤 Masahiro Shindo

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 16:14
CPC Classifications
G; G06; G06F; G06F30/00; G06F30/30; G06F30/39

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 226 words
A computer-aided design system for designing an application specific integrated circuit directly from architecture independent functional specifications for the integrated circuit, comprising a macro library defining a set of architecture independent operations comprised of actions and conditions; input specification means operable by a user for defining architecture independent functional specifications for the integrated circuit, said functional specifications being comprised of a series of operations comprised of actions and conditions, said input specification means including means to permit the user to specify for each operation a macro selected from said macro library; a cell library defining a set of available integrated circuit hardware cells for performing the available operations defined in said macro library; cell selection means for selecting from said cell library for each macro specified by said input specification means, appropriate hardware cells for performing the operation defined by the specified macro, said cell selection means comprising an expert system including a knowledge base containing rules for. selecting hardware cells from said cell library and inference engine means for selecting appropriate hardware cells from said cell library in accordance with the rules of said knowledge base; and netlist generator means cooperating with said cell selection means for generating as output from the system a netlist defining the hardware cells which are needed to achieve the functional requirements of the integrated circuit and the connections therebetween.
Claim 2
Dependent Claim 226 words
A computer-aided design system for designing an application specific integrated circuit directly from architecture independent functional specifications for the integrated circuit, comprising a macro library defining a set of architecture independent operations comprised of actions and conditions; input specification means operable by a user for defining architecture independent functional specifications for the integrated circuit, said functional specifications being comprised of a series of operations comprised of actions and conditions, said input specification means including means to permit the user to specify for each operation a macro selected from said macro library; a cell library defining a set of available integrated circuit hardware cells for performing the available operations defined in said macro library; cell selection means for selecting from said cell library for each macro specified by said input specification means, appropriate hardware cells for performing the operation defined by the specified macro, said cell selection means comprising an expert system including a knowledge base containing rules for. selecting hardware cells from said cell library and inference engine means for selecting appropriate hardware cells from said cell library in accordance with the rules of said knowledge base; and netlist generator means cooperating with said cell selection means for generating as output from the system a netlist defining the hardware cells which are needed to achieve the functional requirements of the integrated circuit and the connections therebetween.
Claim 3
Dependent Claim 28 words
The system as defined in claim 1 wherein said input means comprises means specification for receiving user input of a list defining the series of actions and conditions.
Claim 4
Dependent Claim 32 words
The system as defined in claim 1 additionally including mask data generator means for generating from said netlist the mask data required to produce an integrated circuit having the specified functional requirements.
Claim 5
Dependent Claim 29 words
The system as defined in claim 1 wherein said input means comprises flowchart editor means specification for creating a flowchart having elements representing said series of actions and conditions.
Claim 6
Dependent Claim 32 words
The system as defined in claim 4 additionally including flowchart simulator means for simulating the functions defined in the flowchart to enable the user to verify the operation of the integrated circuit.
Claim 7
Dependent Claim 33 words
The system as defined in claim 1 additionally including data path generator means cooperating with said cell selection means for generating data paths for the hardware cells selected by said cell selection means.
Claim 8
Dependent Claim 60 words
The system as defined in claim 6 wherein said data path generator means comprises a knowledge base containing rules for selecting data paths between hardware cells and inference engine means for selecting data paths between the hardware cells selected by said cell selection means in accordance with the rules of said knowledge base and the arguments of the specified macros.
Claim 9
Dependent Claim 29 words
The system as defined in claim 6 additionally including control generator means for generating a controller and control paths for the hardware cells selected by said cell selection means.
Claim 10
Dependent Claim 253 words
A computer-aided design system for designing an application specific integrated circuit directly from a flowchart defining architecture independent functional requirements of the integrated circuit comprising a marco library defining a set of architecture independent operations comprised of actions and conditions; flowchart editor means operable by a user for creating a flowchart having elements representing said architecture independent operations; said flowchart editor means including macro specification means for permitting the user to specify for each operation represented in the flowchart a macro selected from said macro library; a cell library defining a set of available integrated circuit hardware cells for performing the available operations defined in said macro library; cell selection means for selecting form said cell library for each specified macro, appropriate hardware cells for performing the operation defined by the specified macro, said cell selection means comprising an expert system including a knowledge base containing rules for selecting hardware cells from said cell library and inference engine means for selecting appropriate hardware cells from said cell library in accordance with the rules of said knowledge base; and data path generator means cooperating with said cell selection means for generating data paths for the hardware cells selected by said cell selector means, said data path generator means comprising a knowledge base containing rules for selecting data paths between hardware cells and inference engine means for selecting data paths between hardware cells selected by said cell selection means in accordance with the rules of said knowledge base and the arguments of the specified macros.
Claim 11
Dependent Claim 253 words
A computer-aided design system for designing an application specific integrated circuit directly from a flowchart defining architecture independent functional requirements of the integrated circuit comprising a marco library defining a set of architecture independent operations comprised of actions and conditions; flowchart editor means operable by a user for creating a flowchart having elements representing said architecture independent operations; said flowchart editor means including macro specification means for permitting the user to specify for each operation represented in the flowchart a macro selected from said macro library; a cell library defining a set of available integrated circuit hardware cells for performing the available operations defined in said macro library; cell selection means for selecting form said cell library for each specified macro, appropriate hardware cells for performing the operation defined by the specified macro, said cell selection means comprising an expert system including a knowledge base containing rules for selecting hardware cells from said cell library and inference engine means for selecting appropriate hardware cells from said cell library in accordance with the rules of said knowledge base; and data path generator means cooperating with said cell selection means for generating data paths for the hardware cells selected by said cell selector means, said data path generator means comprising a knowledge base containing rules for selecting data paths between hardware cells and inference engine means for selecting data paths between hardware cells selected by said cell selection means in accordance with the rules of said knowledge base and the arguments of the specified macros.
Claim 12
Dependent Claim 29 words
The system as defined in claim 9 additionally including control generator means for generating a controller and control paths for the hardware cells selected by said cell selection means.
Claim 13
Dependent Claim 157 words
A computer-aided design system for designing an application specific integrated circuit directly from a flowchart defining architecture independent functional requirements of the integrated circuit, comprising flowchart editor means operable by a user for creating a flowchart having boxes representing architecture independent actions, diamonds representing architecture independent conditions, and lines with arrows representing transitions between actions and condition and including means for specifying for each box or diamond, a particular action or condition to be performed; a cell library defining a set of available integrated circuit hardware cells for performing actions and conditions; a knowledge base containing rules for selecting hardware cells from said cell library and for generating data and control paths for hardware cells; and expert system means operable with said knowledge base for translating the flowchart defined by said flowchart editor means into a netlist defining the necessary hardware cells and data and control paths required in an integrated circuit having the specified functional requirements.
Claim 14
Dependent Claim 157 words
A computer-aided design system for designing an application specific integrated circuit directly from a flowchart defining architecture independent functional requirements of the integrated circuit, comprising flowchart editor means operable by a user for creating a flowchart having boxes representing architecture independent actions, diamonds representing architecture independent conditions, and lines with arrows representing transitions between actions and condition and including means for specifying for each box or diamond, a particular action or condition to be performed; a cell library defining a set of available integrated circuit hardware cells for performing actions and conditions; a knowledge base containing rules for selecting hardware cells from said cell library and for generating data and control paths for hardware cells; and expert system means operable with said knowledge base for translating the flowchart defined by said flowchart editor means into a netlist defining the necessary hardware cells and data and control paths required in an integrated circuit having the specified functional requirements.
Claim 15
Dependent Claim 31 words
The system as defined in claim 11 including mask data generator means for generating from said netlist the mask data required to produce an integrated circuit having the specified functional requirements.
Claim 16
Dependent Claim 209 words
A computer-aided design process for designing an application specific integrated circuit which will perform a desired function comprising storing a set of definitions of architecture independent actions and conditions; storing data describing a set of available integrated circuit hardware cells for performing the actions and conditions defined in the stored set; storing in an expert system knowledge base a set of rules for selecting hardware cells to perform the actions and conditions; describing for a proposed application specific integrated circuit a series of architecture independent actions and conditions; specifying for each described action and condition of the series one of said stored definitions which corresponds to the desired action or condition to be performed; and selecting from said stored data for each of the specified definitions a corresponding integrated circuit hardware cell for performing the desired function of the application specific integrated circuit, said step of selecting a hardware cell comprising applying to the specified definition of the action or condition to be performed, a set of cell selection rules stored in said expert system knowledge base and generating for the selected integrated circuit hardware cells, a netlist defining the hardware cells which are needed to perform the desired function of the integrated circuit and the interconnection requirements therefor.
Claim 17
Dependent Claim 209 words
A computer-aided design process for designing an application specific integrated circuit which will perform a desired function comprising storing a set of definitions of architecture independent actions and conditions; storing data describing a set of available integrated circuit hardware cells for performing the actions and conditions defined in the stored set; storing in an expert system knowledge base a set of rules for selecting hardware cells to perform the actions and conditions; describing for a proposed application specific integrated circuit a series of architecture independent actions and conditions; specifying for each described action and condition of the series one of said stored definitions which corresponds to the desired action or condition to be performed; and selecting from said stored data for each of the specified definitions a corresponding integrated circuit hardware cell for performing the desired function of the application specific integrated circuit, said step of selecting a hardware cell comprising applying to the specified definition of the action or condition to be performed, a set of cell selection rules stored in said expert system knowledge base and generating for the selected integrated circuit hardware cells, a netlist defining the hardware cells which are needed to perform the desired function of the integrated circuit and the interconnection requirements therefor.
Claim 18
Dependent Claim 25 words
A process as defined in claim 13, including generating from the netlist the mask data required to produce an integrated circuit having the desired function.
Claim 19
Dependent Claim 22 words
A process as defined in claim 13 including the further step of generating data paths for the selected integrated circuit hardware cells.
Claim 20
Dependent Claim 37 words
A process as defined in claim 15 wherein said step of generating data paths comprises applying to the selected cells a set of data path rules stored in a knowledge base and generating the data paths therefrom.
Claim 21
Dependent Claim 22 words
A process as defined in claim 16 including the further step of generating control paths for the selected integrated circuit hardware cells.
Claim 22
Dependent Claim 202 words
A knowledge based design process for designing an application specific integrated circuit which will perform a desired function comprising storing in a macro library a set of macros defining architecture independent actions and conditions; storing in a cell library a set of available integrated circuit hardware cells for performing the actions and conditions; storing in a knowledge base set of rules for selecting hardware cells from said cell library to perform the actions and conditions defined by the stored macros; describing for a proposed application specific integrated circuit a flowchart comprised of elements representing a series of architecture independent actions and conditions which carry out the function to be performed by the integrated circuit; specifying for each described action and condition of said series a macro selected from the macro library which corresponds to the action or condition; and applying rules of said knowledge base to the specified macros to select from said cell library the hardware cells required for performing the desired function of the application specific integrated circuit and generating for the selected integrated circuit hardware cells, a netlist defining the hardware cells which are needed to perform the desired function of the integrated circuit and the interconnection requirements therefor.
Claim 23
Dependent Claim 202 words
A knowledge based design process for designing an application specific integrated circuit which will perform a desired function comprising storing in a macro library a set of macros defining architecture independent actions and conditions; storing in a cell library a set of available integrated circuit hardware cells for performing the actions and conditions; storing in a knowledge base set of rules for selecting hardware cells from said cell library to perform the actions and conditions defined by the stored macros; describing for a proposed application specific integrated circuit a flowchart comprised of elements representing a series of architecture independent actions and conditions which carry out the function to be performed by the integrated circuit; specifying for each described action and condition of said series a macro selected from the macro library which corresponds to the action or condition; and applying rules of said knowledge base to the specified macros to select from said cell library the hardware cells required for performing the desired function of the application specific integrated circuit and generating for the selected integrated circuit hardware cells, a netlist defining the hardware cells which are needed to perform the desired function of the integrated circuit and the interconnection requirements therefor.
Claim 24
Dependent Claim 48 words
A process as defined in claim 18 also including the steps of storing in said knowledge base a set of rules for creating data paths between hardware cells, and applying rules of said knowledge base to the specified means to create data paths for the selected hardware cells.
Claim 25
Dependent Claim 24 words
A process as defined in claim 19 also including the steps of generating a controller and generating control paths for the selected hardware cells.

References Cited (Backward Citations)

GB1445914A Cited
US4638442A Cited
US4700317A Cited
US4656603A Cited
US4648044A Cited
US4658370A Cited
US4703435A Cited
US4651284A Cited
US4675829A Cited
US4635208A Cited
US4803636A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1993-04-30 1993-10-30 1994-05-01 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1997-04-30 1997-10-30 1998-05-01 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2001-04-30 2001-10-30 2002-05-01 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag