07.01.2013 Views

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

Lecture Notes in Computer Science 3472

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

15 Case Studies 443<br />

Different studies <strong>in</strong> model-based test<strong>in</strong>g of hardware systems use hardware<br />

specifications at different levels of abstraction as the basis for model<strong>in</strong>g the<br />

SUT. In [DBG01] for example, the SUT was the Store Data Unit (SDU) block<br />

of ST100, a high performance digital signal processor (DSP). The SDU is a block<br />

of the Data Memory Controller that is responsible of stor<strong>in</strong>g data to memory.<br />

In this study, the design was described at behavior abstraction level <strong>in</strong> MµALT<br />

(Model<strong>in</strong>g Micro-architecture Language for Traversal), which is a VHDL-based<br />

language.<br />

In [SA99], the SUTs were two general-purpose microprocessors. The first is<br />

GL85, which is a model of the Intel 8085 processor, designed <strong>in</strong> VHDL. The second<br />

is ARM, which is a downscaled model of the commercial ARM-2 processor.<br />

ARM is designed <strong>in</strong> Verilog. In both cases, the SUT was described at the RTL<br />

level.<br />

What is common <strong>in</strong> these studies is that a full formal description of the<br />

SUT is available at one level or another. This opens the door to <strong>in</strong>troduce some<br />

automation dur<strong>in</strong>g model abstraction via a tool that can take the formal description<br />

as <strong>in</strong>put and partially <strong>in</strong>fer a state mach<strong>in</strong>e from it. This idea was<br />

implemented only <strong>in</strong> [SA99].<br />

In [FKL99], an Architecture Validation Suite (AVS), which is a suite of tests<br />

to verify the compliancy of an architecture implementation aga<strong>in</strong>st the architecture<br />

specifications, was built for IBM PowerPC processor architecture. Like<br />

the cases above [SA99, DBG01], a formal description of PowerPC architecture<br />

was built. But additionally, a behavioral simulator that implements PowerPC<br />

architecture was used as a reference model. The simulator is a software that<br />

simulates a PowerPC processor. So, given a certa<strong>in</strong> state for the processor and<br />

an <strong>in</strong>put, the simulator determ<strong>in</strong>es the next state and the output. The basic<br />

idea of us<strong>in</strong>g the simulator is that a behavioral simulator can be viewed as a<br />

formal, correct and complete representation of the architecture. This is because<br />

very early <strong>in</strong> the verification phase, the simulator was used heavily, debugged<br />

and tested. Hence, generat<strong>in</strong>g an AVS for the SUT can be reduced to generat<strong>in</strong>g<br />

an AVS for the simulator.<br />

Protocols A protocol is a formal description of the message formats and the rules<br />

that two devices or parties must follow to exchange those messages. A number<br />

of case studies were done for automatic generation of test suites for protocols.<br />

In [KVZ98], the SUT was an implementation of the cache coherency protocol of<br />

Bull’s CC-NUMA (Cache-Coherent Non Uniform Memory Architecture) multiprocessor<br />

architecture. Bull’s CC-NUMA consists of a scalable <strong>in</strong>terconnection<br />

of modules; the memory is distributed among different modules. Each module<br />

conta<strong>in</strong>s a set of processors. The key feature of Bull’s CC-NUMA architecture is<br />

its distributed directory-based cache coherency protocol, which uses a Presence<br />

Cache and a Remote Cache <strong>in</strong> each module.<br />

In [BFdV + 99], the SUT was an implementation of the Conference Protocol<br />

described <strong>in</strong> [Pir95]. The conference provides a multicast service, resembl<strong>in</strong>g a<br />

chat box, to the users participat<strong>in</strong>g <strong>in</strong> a conference. A conference is a group of<br />

users that can exchange messages with all conference partners <strong>in</strong> that conference.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!