United Business Media EE Times


Search

HOMEMARKET INTELLIGENCE UNITFORUMSDESIGNNEW PRODUCTSCAREERSBLOGSCONTACTEVENTSSIGN UP!RSSMost Popular contentTrusted Sources

 

vendor guide


Design Methodology

Putting It Together: Prototyping Methods

Hardware prototypes help to verify system level performance, and help the hardware-software integration process.

by R.T. "Tets" Maniwa


The pressures of time-to-market are now requiring companies to rush products to market. The Intel Pentium problem showed how important complete testing is to a company's financial well being and image as a leading edge high tech company. The desire for early product shipments and the short market windows requires prototype hardware to be available long before the final product ships. These time pressures are making designers build hardware prototypes of their circuitry for use in larger system level prototypes.

Language-based simulation tools enabled designs to be completed and evaluated in software thus eliminating the need for hardware prototypes. Now that systems are too large, too complex, and too fast for software to simulate at the system level, hardware prototyping is re-emerging as a necessary adjunct to the design process. In addition, more complex systems need a hardware platform for associated software to exercise, especially in embedded systems where firmware may differentiate the product. Thus, a design must be functional before final ASICs are available. "Formerly prototypes were simple," says Douglas Fairbairn, general manager of the Alta Group of Cadence Design Systems (Foster City, CA). "Now they are part of a continuum of design and modeling technologies."

What to do about the non-existent hardware Although it seems productive to start building hardware for a system, generally it is better to analyze alternatives in the hardware-software mix and different architectures to achieve a desired system definition. Circuit implementation accounts for about 20 percent of total design time. The balance is spent building, debugging, performing system level integration, and adjusting the hardware and software design flows to accommodate changes in the design intent.

"A question is how to bring the problem of the software integration closer to the front of the process," says Mitch Weaver, director of engineering, hardware/software system division of Mentor Graphics Corp. (Wilsonville, OR). "The prototyping process needs to incorporate methods to address the software development costs and timing at the same time the hardware is developed. The complexity of verifying software in the prototype phase in telecomm and consumer equipment can amount to 10 million lines of code, in a 32-bit machine running at 100 MIPs. The prototyping integration is complicated by the new ASIC, new hardware and new code all coming together at one time."

"Designers need to address changes in methodologies and behaviors to improve productivity," says Baruch Deutsch, product line manager, Alta Group of Cadence Design Systems (Foster City, CA). "The keys to this are to start from libraries you can trust, prototype into various end units and most importantly, only work to capture the design after determining what you need to build. The problem of wanting to start building hardware before completing the design intent and architectural analyses can cause the mix of hardware and software in a system to be less than optimal. Just because the software can be redone for less than an ASIC, does not mean that the amount of software should increase".

An issue to consider before developing a hardware prototype is the need for an ASIC surrogate. Manpower and equipment costs must be weighed against schedule and need for the hardware (see "Co-Verification Strategies in Hardware-Software Co-Design" in the July 1995 issue of Integrated System Design , and "Bridging the Gap to Software" in the Sept. 1994 issue of ASIC & EDA ). Some companies, notably Chip Express and Xilinx , have developed software models to evaluate costs and relative benefits of various alternatives to hardware development.

"First, make sure to evaluate the level of effort and cost to do a prototype," suggests Barry Marsh, ASIC marketing director of Fujitsu Microelectronics (San Jose, CA). "Make sure the parts are really needed and worth the time and effort. It may be that the extra time and effort to develop a additional working prototype (ahead of the silicon ) may be greater than the value of the prototype. The net result may be to have two understaffed projects rather than only one fully staffed project. Second, understand the extra time and effort and cost to learn and use the additional tools."

The place to start, states Patrick Scaglia, vice president of Cadence Berkeley Labs (San Jose, CA), is the architectural level. "For man/machine interfaces a virtual prototype will allow designer to test system, and let users test and interact with the prototype," he observes. "The designer needs to have the prototype as close as possible to real time, as close as possible to the final real product. You don't want to generate 0's and 1's, but need to see the final form. It helps to carry over specs, test beds throughout the design process."

Rapid prototypes methodologies start with an understanding of the top level system requirements. Analyses of different implementations must be completed before beginning hardware development. If the methodologies and behaviors in the current design environment do not allow this, the entire design cycle will be extended by the iterations as the software and hardware are integrated.

The Advanced Research Projects Agency (ARPA) has a program for Rapid Prototyping of Application Specific Signal Processors (RASSP). It dramatically improves how embedded signal processors are designed, upgraded, manufactured and supported. Many of its tools and methodologies can be transferred from the military to commercial development.

Mark A. Richards, Advanced Research Projects Agency (ARPA), Electronic Systems Technology Office (Arlington, VA) writes "RASSP is not simply a program to develop electronic design automation (EDA) tools for embedded digital signal processors (DSPs). The best tools in the world will not achieve good results if they are used poorly, or if they are used to design a poorly conceived product. Achieving the RASSP program goals will require a coordinated approach to signal processor architecture; design methodology; and electronic design infrastructure, which includes such items as EDA, reuse libraries, and enterprise networking."

James Saultz, RASSP Program Director, Lockheed Martin (Camden, NJ) says "The levels of sophistication in systems is getting too high for only hardware and software developments. The program goals are to develop virtual prototypes, getting a system developed with no breadboards. This is an attempt to capture the system requirements and decompose them to hardware and software. EDA tools only address the design aspects but do not really interface to the manufacturing requirements. Although it was initiated for large multiprocessing applications, RASSP has potential for commercial applications as a base for a design methodology."

Without going into implementation details, the reader must evaluate various technologies available for prototyping. Some considerations include the number of prototype units needed, type of units needed, and choice of a particular methodology. Appraisal of new and existing tools and technologies for a rapid prototyping environment, should include ease of use and ease of changes. The technology for the hardware should have extensions for protoduction, the pilot run units for production shipments.

Figure 1 indicates relative performance levels for different tools and hardware. No method should be considered while totally excluding others. An example of a system requiring a full prototype is a cellular phone. Mapping an entire cellular phone into an ASIC emulator is not easy or realistic. The cellular phone has a DSP, either a standard product, or special core, a microcontroller, analog, high-speed analog, RF and other digital functions. All of the components are essential to properly model the phone operations. The form factor is an additional problem.

Available tools range from hardware simulation accelerators, to FPGAs for critical paths and FPID to allow relocatable interconnections and programmable probing, ASIC emulators, and custom emulator boards with bonded out cores and standard packaged parts. See side bar for more details on reprogrammable devices.



Figure 1. The different prototyping methodologies can process a wide range of system level clock cycles per second.


A problem with hardware technologies is their inability to meet system performance and operating requirements. Major sources of speed loss are improper I/O drivers, and additional wire loading from packaging and PCB interconnections. Programmable devices have speed, signal integrity, gate density, interconnect density, and I/O limits which require careful partitioning and multiple cuts at circuitry. The emulators provide a rich environment for debug and system integration.

Steve Goldman, Product marketing manager for Paradigm products, Zycad Corp. (Fremont, CA) says "Prototypes are developed for a number of reasons. The main reason is to perform a functional check to find problems and to confirm that the design performs its function to design requirements. "

Dasha Estes, director of product marketing, Quickturn Design Systems Inc. (Mt. View, CA) says "clocking-- especially multiple clocks, is difficult, since simulation assumes all clock edges are isochronous, but in most systems, clock edges are asynchronous. This can cause difficulty in getting prototypes to operate. Initialization is always a problem."

Geoffrey Bunza, vice president of engineering, Eagle Design Automation (Beaverton, OR) says "most systems designs are not new from the ground up--85 percent are redesigns. The migration from virtual prototypes to actual hardware is like the step from synthesis to an ASIC, there are no more intermediate steps available to optimize."

Henry Verheyen, vice president of engineering, Aptix (San Jose, CA) "The differences between prototypes and emulators is the difference between system and architecture evaluation(s) and functional verification. Designers need to evaluate the level of work versus the cost versus the value of the work. The time and cost to develop an accurate MPEG decoder model is very high versus the ability to get a working chip (set) to perform the actual function."

Standard prototypes allow functional checks in systems running a few megahertz. If you need a part with the proper form factor and system level speed for evaluation and system integrations, you may push your ASIC vendor for a fast turnaround on your wafers. Chip Express can make a Laser Programmable Gate Array (LPGA) in a day, while other ASIC vendors can, for a premium, make parts in as little as a week. Though a high risk and expensive option, its value is quickly achieving a final system configuration.

Even if the chip is not completely functional, having a few partially good die allows detailed analysis of complex system-chip-software interactions at full speed. Full-speed operation allows millions of system clock cycles to run in minutes, while providing a truer indication of chip delays and timing. The partial prototype may not meet all of the SDF files and timing constraints, due to the differences in wire loading caused by the inoperable sections, but can be a valuable test and validation link.

A Memory glossary

Simulation: Software representations of logic functions

Hardware Accelerator: Hardware to speed up some of the simulations

Emulation: Hardware to perform the logic functions of an equivalent IC

FPID: Field Programmable Interconnect Device: a programmable crossbar matrix for interdevice connections

Virtual prototype: A software model of system level components

Models: Software representations of logical components

Cycle accurate: Maintains accuracy on a cycle basis, but is not fully timing accurate

Verification: The process of confirming the circuit implementation




Analog issues: how to do a mixed signal prototype Prototyping methods described thus far reflect digital implementations. Analog and digital functions have been difficult to integrate because of their differing characteristics and signal domains, and differences in simulation environments. IMP Inc. (San Jose, CA) developed the EPAC devices to address the analog requirements of designers.

EPAC's most important aspect is its analog building blocks in a digital domain with programmable analog characteristics. Kang Chan, staff engineer at Xerox Corp. (El Segundo, CA) says he is trying to use EPAC to replace parts of a future analog and digital chip but cannot replace a complete analog system. He created a trial design in about 20-30 minutes to demonstrate functionality.

How to test the prototypes Before tape-out, and before wafer fabrication, the design team starts system debug and test development. The time working with a final system hardware prototype will yield significant details of circuit operation over what was available in simulations. A computer or processor based product may need an infinite number of vectors to check all its allowed states.

For some technologies, making contact to the ASIC pins is inherent in the vehicle. Besides software testing capabilities, logic accelerators and emulators offer cable connections to a logic analyzer. Stand alone FPGAs and other packaged parts require an interface from the packaged part to the test equipment.

Greg Peters, new product manager in the logic analyzer group at HP (Colorado Springs, CO) notes that the main function of logic analyzers is to probe the pins. The biggest problem is designers cannot trust the data. The worst case is the part works when the logic analyzer probes are connected, and does not when the are not.

Kent Dahlgren, director of marketing, I-Cube (Santa Clara, CA) says "A Field-Programmable Interconnect Device (FPID) makes an excellent interface to a logic analyzer, since its crossbar interconnections capability enables any pin to be connected to any other pin. The problem is the lack of software to quickly and easily reconfigure the FPID to move the logic analyzer probes to any other locations within the interconnection space."

Joe Bagliere, senior vice president sales and marketing at Emulation Technology (Santa Clara, CA) says that most of their customers need a way to get to parts on a board. One issue is the number of package pins continues to increase. The next level of interconnect density will go to a newer package. For pin counts over 300, the package of choice will be pin grid array (PGA), but will migrate to a ball grid array (BGA). For package pin over 400, the only forseeable package is the BGA.

Hardware - software interactions In the ASIC industry, virtually all fabricated silicon chips successfully execute their test vectors but less than half works in the system. The software-hardware interface may contribute to system integration failures as the ASIC-board interfaces notes Bunza of Eagle Design Automation. In developing an architecture, you must consider debug part of the design. You must build testability and verification capabilities into the IC and into the system.

R. Chandramouli, director of ESTA products, RASSP program at LogicVision (San Jose, CA) says "one problem is how to map Built-In Self-Test (BIST) into sections of a chip. This is easier in memories and other regular structures." As synthesis make gate level design more transparent, we need tools to generate new models and add the test structures to the design at the RTL level, he asserts. This leads to fewer changes and is easier to implement. "We need more transparency so the tools do most of the work."

Dan Hafemen, vice president engineering , IKOS Systems Inc. (Cupertino, CA) says in designing their own ASICs, they perform extensive simulations. They don't run software on their system, thus don't have the co-design problems. Hafeman says they use full scan in their ASIC designs. The scans are shifted out in either the simulated or the real chips and compared. Software examines variables in the chain and identifies which bits in the scan chain map to the variables, that identify individual registers.

Successful systems have a bottoms-up verification methodology to confirm all lower levels are bug free before going to the next higher level. If you don't take the rigor of this process the bug-fix throughput gets lower. The goal is to never find a bug at any higher level.

Reconfigurable hardware

Prototyping gate arrays using programmable logic The practice of using programmable logic to prototype gate arrays has become widespread as the capacity of programmable devices has increased. It allows testing a gate array design in-circuit and checking its function with other parts of the system, something that cannot be done extensively with simulation. In-circuit testing prevents gate array re-designs, which are costly in both NRE charges and time. It provides a prototype board for software development and allows code generation in parallel with gate array design, thus reducing time-to-market. For example, consumer game manufacturers create next generation system prototypes using programmable logic and provide the prototypes to game developers for new titles creation while building a high-volume consumer ASIC of the game.

However, the prototyping gate arrays in programmable logic, may hold pitfalls for first time designers. Ideally, designs are created in technology-independent VHDL and/or Verilog languages. After simulating a design's functionality, it can then be synthesized to the programmable logic library for prototyping and to the gate array library for production.

When EDA companies began offering PLD solutions to help designers prototype gate arrays, the synthesis algorithms used were borrowed from the gate array tools. These solutions provided sub-optimal results. However, EDA companies have worked with PLD suppliers so that synthesis tools now provide an acceptable results. Synthesis remapping and optimization techniques have become more sophisticated, using algorithms tailored for architectures of major PLD vendors, so that designs are optimally synthesized for either programmable logic or gate arrays.

Potential Pitfalls However, one potential pitfall in the design flow is assuming the gate array design is described in technology independent Verilog or VHDL. This is more likely the exception rather than the rule. Lower density designs typically use structural format, either schematics or gate-level netlists. Additionally, many HDL-based designs actually have vendor specific instantiations of library elements or parameterized modules. These improve performance and size of the gate array. For these vendor-specific designs, the flow is more problematic.

Fortunately, solutions exist for programmable prototypes of vendor-specific designs. One is using resynthesis and retargetting software available from a number of EDA vendors. Another solution is to map the post-synthesis, gate-level netlist into the programmable logic domain. This requires a mirror of the gate array library be created in the programmable logic tool-set. At least one programmable logic vendor offers this capability.

A final pitfall is the actual size of the gate array design. While programmable logic devices continue to increase in capacity, these devices still lag the largest gate array offerings. For gate array designs too large for a single device, software takes the design and partitions it into multiple programmable logic devices. This may be a suitable solution for some designs.

The best advice for those looking to prototype gate arrays into programmable logic is to discuss your design flow with your PLD vendor and your EDA tool supplier. The major vendors have field application engineers ready to help you develop a flow that suits your needs.

Robert K. Beachler is manager of strategic marketing and communications for Altera Corporation (Sunnyvale, CA).




Hardware-software integration takes up to half of the design cycle. To address this problem, many companies are making from 10-20 prototypes so the software teams can integrate more code in parallel. A number of companies can convert an FPGA, or a number of FPGAs to a hard wafer. This addresses added delays resulting from interconnections and extra I/O buffers of signals going on and off multiple chips. It also fits the design in a single package which can be mounted in the system. This accommodates extra units needed for customer evaluations and first customer shipments.

The range of prototyping technologies allows a design team to work together on several phases of hardware, software and hardware-software integration. Hardware options are not mutually exclusive, except in a total cost budget item, and can enhance the team's ability to debug the ASIC and the physical and software interfaces. The best overall methodologies work from a top-down perspective and incrementally implement the prototype with bottom-up validation.

Tets Maniwa is a technical editor for Integrated System Design.

To voice an opinion on this or any Integrated System Design article, please e-mail your message to: michael@asic.com.


integrated system design  September 1995



[ Articles from Integrated System Design Magazine ] [ ICs and uPs ]
[ Custom ICs and Programmable Logic ] [ Vendor Guide ]
[ Design and Development Tools ] [ Home ]


For more information about isdmag.com e-mail cam@isdmag.com
For advertising information e-mail amstjohn@mfi.com
Comments on our editorial are welcome.
Copyright © 1996 - Integrated System Design Magazine

  Free Subscription to EE Times
First Name Last Name
Company Name Title
Email address
  Click here for your Free Subscription to EETimes Europe
 
CAREER CENTER
Looking for a new job?
SEARCH JOBS
SPONSOR

RECENT JOB POSTINGS
CAREER NEWS
SRC Expands R&D Centers
The Semiconductor Research Corp has added a new center to its university R&D efforts.

For more great jobs, career related news, features and services, please visit EETimes' Career Center.


All White Papers »   

 
Education and
Learning


Learn Now:












Home | About | Editorial Calendar | Feedback | Subscriptions | Newsletter | Media Kit | Contact | Reprints|  RSS|   Digital|  Mobile
Network Websites
International
Network Features




All materials on this site Copyright © 2009 TechInsights, a Division of United Business Media LLC All rights reserved.
Privacy Statement | Terms of Service | About