Line 1... |
Line 1... |
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
-- Copyright 2007 Ken Campbell
|
-- Copyright 2009 Ken Campbell
|
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
-- $Author: sckoarn $
|
-- $Author: sckoarn $
|
--
|
--
|
-- $Date: 2008-02-24 01:34:11 $
|
-- $Date: 2008-02-24 01:34:11 $
|
--
|
--
|
-- $Name: not supported by cvs2svn $
|
|
--
|
|
-- $Id: tb_pkg_body.vhd,v 1.3 2008-02-24 01:34:11 sckoarn Exp $
|
-- $Id: tb_pkg_body.vhd,v 1.3 2008-02-24 01:34:11 sckoarn Exp $
|
--
|
--
|
-- $Source: /home/marcus/revision_ctrl_test/oc_cvs/cvs/vhld_tb/source/tb_pkg_body.vhd,v $
|
-- $Source: /home/marcus/revision_ctrl_test/oc_cvs/cvs/vhld_tb/source/tb_pkg_body.vhd,v $
|
--
|
--
|
-- Description : The the testbench package body file.
|
-- Description : The the testbench package body file.
|
Line 1003... |
Line 1001... |
variable length : in integer) is
|
variable length : in integer) is
|
|
|
variable temp_var: var_field_ptr;
|
variable temp_var: var_field_ptr;
|
variable current_ptr: var_field_ptr;
|
variable current_ptr: var_field_ptr;
|
variable index: integer := 1;
|
variable index: integer := 1;
|
|
variable len: integer := 0;
|
|
|
begin
|
begin
|
-- if this is NOT the first one
|
-- if this is NOT the first one
|
if(var_list /= null) then
|
if(var_list /= null) then
|
current_ptr := var_list;
|
current_ptr := var_list;
|
Line 1031... |
Line 1030... |
temp_var := new var_field;
|
temp_var := new var_field;
|
temp_var.var_name := p1; -- direct write of text_field
|
temp_var.var_name := p1; -- direct write of text_field
|
temp_var.var_value := stim_to_integer(p2,name,line_num); -- convert text_field to integer
|
temp_var.var_value := stim_to_integer(p2,name,line_num); -- convert text_field to integer
|
temp_var.var_index := index;
|
temp_var.var_index := index;
|
current_ptr.next_rec := temp_var;
|
current_ptr.next_rec := temp_var;
|
else
|
else -- this is an inline variable
|
while(current_ptr.next_rec /= null) loop
|
while(current_ptr.next_rec /= null) loop
|
-- if we have defined the current before then die
|
-- if we have defined the current before then die
|
assert(current_ptr.var_name(1 to (length - 1)) /= p1(1 to (length - 1)))
|
len := fld_len(current_ptr.var_name);
|
|
assert(current_ptr.var_name(1 to len) /= p1(1 to (length - 1)))
|
report LF & "Error: Attemping to add a duplicate Inline Variable definition "
|
report LF & "Error: Attemping to add a duplicate Inline Variable definition "
|
& " on line " & (integer'image(line_num)) & " of file " & name
|
& " on line " & (integer'image(line_num)) & " of file " & name
|
severity failure;
|
severity failure;
|
|
|
current_ptr := current_ptr.next_rec;
|
current_ptr := current_ptr.next_rec;
|
index := index + 1;
|
index := index + 1;
|
end loop;
|
end loop;
|
-- if we have defined the current before then die. This checks the last one
|
-- if we have defined the current before then die. This checks the last one
|
assert(current_ptr.var_name(1 to (length - 1)) /= p1(1 to (length - 1)))
|
len := fld_len(current_ptr.var_name);
|
|
assert(current_ptr.var_name(1 to len) /= p1(1 to (length - 1)))
|
report LF & "Error: Attemping to add a duplicate Inline Variable definition "
|
report LF & "Error: Attemping to add a duplicate Inline Variable definition "
|
& " on line " & (integer'image(line_num)) & " of file " & name
|
& " on line " & (integer'image(line_num)) & " of file " & name
|
severity failure;
|
severity failure;
|
|
|
temp_var := new var_field;
|
temp_var := new var_field;
|