Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

How to use TetraMAX to generate test patterns using VHDL?

Status
Not open for further replies.

milesmcgee

Newbie level 2
Joined
Aug 18, 2010
Messages
2
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,297
I'm currently trying to learn how to use TetraMAX to generate test patterns, but have come across a problem when using VHDL.

I have a simple benchmark circuit implemented in both VHDL and Verilog. When I run the Verilog design, TetraMAX creates a list of 50 faults, but when I use the VHDL design of the same circuit it only comes up with 14.

I have run several different VHDL files and have concluded that it is ignoring any internal structure and producing stuck at faults for only the inputs and outputs (generating twice as many faults as there are input and output ports).

is there a specific way in which internal signals must be defined in VHDL in order for TetraMAX to recognize them?

Thanks!

For reference, my VHDL file is as follows...

Code:
library IEEE;
  use IEEE.std_logic_1164.all;
entity benchmark is
  port (
        In1   :  in   Std_Logic;
        In2   :  in   Std_Logic;
        In3   :  in   Std_Logic;
        In6   :  in   Std_Logic;
        In7   :  in   Std_Logic;
        Out22 :  out  Std_Logic;
        Out23 :  out  Std_Logic);
end benchmark;

architecture benchmark_a of benchmark is
  signal wire11 : std_logic;
  signal wire10 : std_logic;
  signal wire19 : std_logic;
  signal wire16 : std_logic;

begin  -- benchmark
  wire11 <= (In3 NAND In6);
  wire10 <= (In1 NAND In3);
  wire19 <= (wire11 NAND In7);
  wire16 <= (In2 NAND wire11);
  Out22 <= (wire10 NAND wire16);
  Out23 <= (wire16 NAND wire19);
end benchmark_a;
 

Re: VHDL and TetraMAX

I don't know about TetraMax but this code works perfectly.
 

Re: VHDL and TetraMAX

Yeah, thats what's frustrating. It works fine in Xilinx ISE and everything else I've opened it in, but when attempting to run ATPG on it in TetraMAX, it will only generate faults for the inputs and outputs. But if I use a verilog version that is the same exact structure it works fine.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top