From: John Conover <john@email.johncon.com>
Subject: Re: IBM
Date: Mon, 20 Feb 95 01:19 PST
Clif Schieck writes: > John, > It is not clear to me how the university connection can help CADmazing > answer these questions for IBM: It is because the problem requires a system-theoretic solution. The only people in the world working on this are the US Universities, sponsored by DARPA, on behalf of their clients. (Don't forget that the methodology that your customers currently use, VHSIC I an II, was sponsered by DARPA to do up to 50K gate designs.) The IBM EDA software capability must address a design complexity of at least 10 million equivalent gates. Bear in mind that 90% of Cadence's customers do less than 50K gate designs, and design complexity goes up with the square, (and possibly exponentially,) of the number of gates, eg., although the complexity of the IBM developments are only 200X the number of gates that Cadence optimizes their software for, the design complexity is 40,000X. Cadence and Mentor optimize their software around doing 40K gate designs, (because that is where the current volume market is,) and, although the software has been used for 250K gate designs, it is not efficient, nor is it reliable, nor does it produce verifiable or reliable designs. The design methodology must change at approximately 100K gate design complexity, to a concurrent, distributed design environment, (which is a general engineering methodology developed in the aerospace industry about 50 years ago.) The IEEE published a position paper in 1991, that among other things states that it is not appropriate to use behavioral level synthesis, nor behavioral level simulation for verification. It was published in the January 1991 "IEEE Journal of Solid-State Circuits," and outlines the "state of the art" in EDA software. Most of the following is related to that document. Among EDA professionals, the Cadence and Mentor commercial software offerings are regarded as "entry level systems," that will work without a lot of support, nor expense. Cadence and Mentor's software is not compatible with distributed methodologies, (eg., there is no inherent concurrency control, nor is there any provision for parallelization or distributed processing, nor is there a homogenous, portable, extensible database facility.) The following is a list of base requirements, (most of which IBM already has,) and unless you are infinitely familiar with the concepts, I would not recommend discussing them with any of the design methodology or EDA software staff from Raleigh-most of these folks have developed similar systems in the past, as has the EDA staff at DEC and Intel. The attached list provides only a base foundation, and does not elaborate on the more significant details of the architecture of concurrent engineering environments. These are only the requirements for the base foundation to an EDA system, and does not address any point tools, or layout tools. Those are relatively easy, (if they were designed to operate in a distributed environment.) It also does not address any manufacturing issues, including diagnostics, test methodology, or fault analysis. Note that only 5% of the software effort in a microprocessor EDA development group is directed at design development activities-95% is addressed to manufacturing issues. Also, note that the design effort is only 15% of the engineering effort, with test methodologies, diagnostics, process development, etc., taking the remaining 85%. In point of fact, Intel has published that only 3% of the cost of putting a processor into the market is design/development cost. The following was cut from something I wrote for a client-it is copyright, so although you can use it, it can not be copied, or given to anyone outside of Cadmazing, without my permission. (I charge for this stuff, and it never ceases to amaze me that people will pay money for it-when the field is so well documented.) References are attached. Base foundation issues: I) Distributed computing environment: A) Required for concurrent engineering methodology, which is the only known development methodology that will yield a reasonable chance of success at this level of design complexity. B) Probably requiring 50 to 100 workstations, in hierarchical network configuration. The network must be fiber-optic, and capable of at least 100 Mbits per second. The work stations should have 128Mbyte of core, and 4Gbyte of rotating memory each. The system engineering staff will be, approximately, one system engineer and one system administrator for each 10 to 25 work stations. This does not include the software or library support staff. C) Auto-replication of the database, in a geographically disperse environment is mandatory-there is no way to backup a distributed environment. D) There is no commercially available EDA software that will work in a distributed, concurrent environment, so all EDA software will have to be developed through joint technology relationships, or developed internally. II) Homogenous, network wide, distributed EDA database: A) Probably object oriented, with inheritance of views. B) Full network wide, distributed, concurrency control, which is difficult since the formal theory of concurrency control in distributed databases is only several years old C) Full serialization control of transactions, which is difficult since the formal theory of transaction serialization is only a decade old. D) Commercial concurrent, distributed databases have inadequate performance for the EDA environment-most have algorithms that break database transactions into atomic functions that exhibit NP characteristics. E) There is no commercially available EDA database management systems that will work in a distributed, concurrent environment, so all EDA databases will have to be developed through joint technology relationships, or developed internally. III) Design state transition generation program: A) Written in portable language, probably "C", but perhaps C++. This will be ported to the system and used as a verification and diagnostics tool for the design prototypes. B) Central to the simulation and verification methodology-without this, there is no practical way to simulate a design of this complexity. C) Required since approximately 100 million vectors will have to be simulated, and verified. D) There is no commercially available EDA state transition software that is available, so all EDA state transition software will have to be developed through joint technology relationships, or developed internally. IV) Distributed simulation: A) Simulation of 100 million vectors of a 10 million gates. B) Simulation done concurrently in approximately 250 workstations C) There are two possible distributed simulation strategies: i) Totally hierarchical, which is the preferred. ii) Dividing the simulation, temporally, into sections, simulating each section in the distributed environment, and comparing the state transitions to the output of the state transition generation program, which is the conventional methodology. It is doubtful if this methodology is applicable to super-scalar designs that are capable of executing multiple instructions per clock cycle. D) Probably at least switch level-no gate level or behavior level simulations would be permitted. This requirement is for super-scalar designs that are capable of executing multiple instructions per clock cycle. E) There is no commercially available EDA switch level, distributed simulation software that is available, so all EDA switch level, distributed simulation software will have to be developed through joint technology relationships, or developed internally. References: @book{Khanna, address = "Englewood Cliffs, New Jersey", editor = "Raman Khanna", publisher = "P T R Prentice-Hall", title = "Distributed Computing", year = 1994} @book{Greif, address = "San Mateo, California", editor = "Irene Greif", publisher = "Morgan Kaufmann Publishers", title = "Computer-Supported Cooperative Work: A Book of Readings", year = 1988} @book{Stark, address = "New York, New York", author = "John Stark", publisher = "Van Nostrand Reinhold", title = "Engineering Information Management Systems", year = 1992} @book{Galegher, address = "Hillsdale, New Jersey", editor = "Jolene Galegher, Robert E. Kraut and Carmen Egido", publisher = "Lawrence Erlbaum Associates", title = "Intellectual Teamwork: Social and Technological Foundations of Cooperative Work", year = 1990} @book{Bostrom, address = "New York, New York", editor = "Robert P. Bostrom, Richard T. Watson and Susan T. Kinney", publisher = "Van Nostrand Reinhold", title = "Computer Augmented Teamwork", year = 1992} @book{Carter, address = "Reading, Massachusetts", author = "Donald E. Carter and Barbara Stilwell Baker", publisher = "Addison-Wesley", title = "Concurrent Engineering: The Product Development Environment for the 1990s", year = 1991} @book{Bell:DDS, address = "Reading, Massachusetts", author = "David Bell and Jane Grimson", publisher = "Addison-Wesley", title = "Distributed Database Systems", year = 1992} @book{Papadimitriou, address = "Rockville, Maryland", author = "Christos Papadimitriou", publisher = "Computer Science Press", title = "Database Concurrency Control", year = 1986} @book{Bernstein, address = "Reading, Massachusetts", author = "P. A. Bernstein and V. Hadzilacos and N. Goodman", publisher = "Addison-Wesley", title = "Concurrency Control and Recovery in Database Systems", year = 1987} @book{Gupta, address = "Englewood Cliffs, New Jersey", author = "Rajiv Gupta and Ellis Horowitz", publisher = "Prentice-Hall", title = "Object-Oriented Databases with Applications to CASE, Networks, and VLSI CAD", year = 1991} @book{Sandler, address = "New York, New York", author = "Ben-Zion Sandler", publisher = "Van Nostrand Reinhold", title = "Computer-Aided Creativity", year = 1994} -- John Conover, john@email.johncon.com, http://www.johncon.com/