Advertisement

Why should you have a digital pattern generator?

Why should you have a digital pattern generator?

One of the most recent instruments to come along, the DPG can be used to speed up debug and shorten time to market

BY FRÉDÉRIC LEENS
Byte Paradigm, Nivelles, Belgium
http://www.byteparadigm.com
and ALAN LOWNE
Saelig, Pittsford, NY
http://www.saelig.com

Engineers are beginning to appreciate that, from prototypes early in the design cycle through to final system test, a digital pattern generator (DPG) speeds up system debug and therefore shortens the overall product design cycle.

Testing a prototype system basically requires two types of tasks:

Generating an input stimulus to the system.Analyzing the system’s response.

To solve the “stimulus-and-response” challenge the engineer can save valuable design time if he has the right equipment.

There is no doubt that scopes, logic analyzers and perhaps more specialized analyzers will help doing the “analysis task.” But many engineers don’t realize that there is an important new companion for digital systems: the digital pattern generator.

The signal source landscape

Signal generators used for testing and debugging embedded systems come in three flavors, based on generated signals and their purpose. By “embedded systems” we mean microprocessor- or microcontroller-based devices, ASICs, FPGAs, SoCs (systems-on-chip), and DSPs, including analog, digital, or mixed-analog/digital systems.

Digital pattern generators (see box at bottom of this article, “An example of a typical PC-based DPG — the GP-24100 “) produce digital sequences of 1’s and 0’s complying to a digital voltage standard such as LVCMOS, LVTTL, LVDS, and others. DPGs are used mainly in functional validation. The signal generated conveys digital information as inputs to a digital system and often features at least 16 channels or more.

Pulse/pattern generators, on the other hand, produce a digital selection of square pulses. They have the capability of adjusting the electrical characteristics of the output signal, such as rise/fall time, signal drive strength, jitter, and so forth. They are often used for the electrical test and qualification of input buffers, but are sometimes used in a limited way for functional validation like a digital pattern generator. They usually feature only one or two channels.

The waveform generator is an analog generator of standard waves like sine, sawtooth, square waves, or arbitrary complex signals, with the ability to define the amplitude of the output. These are used to stimulate the analog inputs of a system. Used for electrical validation of such inputs and functional validation of a complex system featuring analog inputs.

While each of these instruments have their place, many engineers are finding that DPGs are essential for anyone involved in embedded system design (see Fig. 1 ) — they improve the speed of semiconductor and digital system testing — especially during the design phase and hence address those commodities vital to all program managers schedule and time-to-market.

Why should you have a digital pattern generator?

Fig. 1. Stimulus-and-response setups are essential in prototyping an embeddededded digital system, and DPGs make excellent stimuli.

DPGs in design

During the design phase, a DPG is an essential stimulus source for almost every type of digital device: digital and mixed-signal ASIC, FPGA, microprocessors and microcontrollers. For functional testing, debug of new designs and failure analysis of existing designs, you need a fully programmable signal source like a DPG to simulate signal variations easily. DPGs can be used early in the design cycle to substitute for system components that are not yet available. For example, the DPG might be programmed to send interrupts and data to a newly developed bus or circuit when the processor that would normally provide the signals doesn’t yet exist.

One of the biggest challenges that a design team faces is that the hardware and software is usually developed concurrently. Hardware engineers always say, “How can we test the hardware when we have no software to drive it?” The software engineers say, “How can we test our software when there’s no hardware platform till later in the project cycle?” A DPG can help solve both of these needs.

A DPG also allows exploring unusual test situations perhaps creating infrequently encountered equipment conditions or failures to help verify that software code works and is robust enough to cope with these stresses and this, even before the complete hardware is available.

A DPG can also be used to put a circuit into a desired state and then let it operate at full speed or step the circuit through a series of states. Generating the right specific initialization sequences and configuring control register helps in exploring various modes of circuit operations. Because nowadays circuits use digital interfaces that may run at more than a few tens of megahertz, the old ways of using microcontrollers coupled with GPIO is no longer sufficient.

By substituting missing pieces and offering maximal flexibility when generating digital logic signals, DPGs can greatly accelerate a new product’s time-to-market. In fact, a DPG is an effective solution just about anywhere that complex digital bit streams are needed to stimulate a device under test (DUT)

An additional use for DPGs is that of simulating serial protocols. DPGs allow access to ICs that use serial protocols on their functional ports, either as a master (exerciser) or as an analyzer. You can even modify the protocol characteristics to access non-standard serial protocols or to stress the limits of existing ones. DPGs allow you to directly control prototype system functional ports to access registers and send or collect data to and from memory locations.

The survey says…

In 2009, a survey we conducted with over 300 respondents involved in embedded hardware and software design revealed that a majority of engineers (61%) agree with the statement that “Using a hardware prototype speeds up embedded system debug.” Less than 10% of the respondents said they “somewhat disagree” or “disagree” with this statement. Over 83% of the respondents declared that stimulus generation is at least as challenging as system response observation. Figures were ostensibly the same whether it concerned IP, FPGA, ASIC, SoC, or full embedded system testing (see Fig. 2 ).

Why should you have a digital pattern generator?

Fig. 2. Results of a recent survey indicate what designers consider the most challenging aspect of testing an embedded system.

A vast majority of development engineers like using a “real hardware” prototype to test and debug what they are designing. Basically, “testing on prototype” always becomes “stimulating and observing.“

Interestingly, this survey also showed that 69.5% of the engineers surveyed were already well-equipped with oscilloscopes, 57.1% with logic analyzers, and 59.3% with JTAG probes. Yet they still could see the need for a need for a programmable DPG.

On the other hand, only 20.6% of our respondents had a DPG in their lab to perform their testing and debugging work. This number rises to 32.8% for simple waveform generators — for analog signal generation (sine/triangle waves and such).

When asked about this situation, preliminary results show that engineers are keen to use sophisticated commercially-available signal sources for stimulus generation for future projects. In retrospect, they also acknowledge that they would have saved valuable design time if they had used a DPG for functional testing and debugging of their last digital system.

The reason why engineers are not systematically equipped with such an acknowledged time-saving tool — while they always receive a PC and an oscilloscope — is not quite clear, but is probably due to a lack of knowledge among engineers and managers alike that DPGs can save them valuable time. When effectively informed, most engineers consider that DPGs can help overcome the many challenges of embedded system test, debug, and validation. ■

An example of a typical PC-based DPG the GP-24100

With an 8-Mbyte embedded memory buffer, 100-MHz operation on all 16 digital lines, and a sustained USB throughput up to 30 Mbytes/s, the GP-24100 Base USB High Speed I/O Dev Module is a powerful general-purpose and PC-based solution that complements traditional lab equipment for digital electronic system design, test, and debug.

Why should you have a digital pattern generator?

In its ADWG/pattern generator mode, GP-24100 generates extended arbitrary digital stimuli directly from a PC through a USB connection. As an Analyzer, GP-24100 collects, analyzes, stores and displays digital data. Control Panel software provides graphical, scripting and programming interfaces to automate tasks and bridge the programming and hardware divide.

Advertisement



Learn more about Saelig

Leave a Reply