OpenCores
URL https://opencores.org/ocsvn/t6507lp/t6507lp/trunk

Subversion Repositories t6507lp

[/] [t6507lp/] [trunk/] [fv/] [alu_bfm.e] - Diff between revs 182 and 185

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 182 Rev 185
<'
<'
import alu_components.e;
import alu_components.e;
 
 
unit alu_bfm_u {
unit alu_bfm_u {
        reset_n: out simple_port of bool;
        reset_n: out simple_port of bool;
        alu_enable: out simple_port of bool;
        alu_enable: out simple_port of bool;
        alu_opcode: out simple_port of byte;
        alu_opcode: out simple_port of byte;
        alu_a: out simple_port of byte;
        alu_a: out simple_port of byte;
 
 
        reset_needed : bool;
        reset_needed : bool;
        keep reset_needed == TRUE;
        keep reset_needed == TRUE;
 
 
        event done;
        event done;
        event main_clk;
        event main_clk;
 
 
        on main_clk {
        on main_clk {
                //Send in packet using the DUT protocol
                //Send in packet using the DUT protocol
                var data : alu_input_s;
                var data : alu_input_s;
                gen data;
                gen data;
 
 
                while (reset_needed) {
                while (reset_needed) {
                        gen data;
                        gen data;
 
 
                        if (data.input_kind == RESET) {
                        if (data.input_kind == RESET) {
                                reset_needed = FALSE;
                                reset_needed = FALSE;
                        };
                        };
                };
                };
 
 
                if (data.test_kind == REGULAR) {
                if (data.test_kind == REGULAR) {
                        emit data.T1_cover_event;
                        emit data.T1_cover_event;
                        alu_opcode$ = data.rand_op;
                        alu_opcode$ = data.alu_opcode.as_a(byte);
                }
                }
                else {
                else {
                        emit data.T2_cover_event;
                        emit data.T2_cover_event;
                        alu_opcode$ = data.alu_opcode.as_a(byte);
                        alu_opcode$ = data.rand_op;
                };
                };
 
 
 
 
 
 
                reset_n$ = data.reset_n;
                reset_n$ = data.reset_n;
                alu_enable$ = data.alu_enable;
                alu_enable$ = data.alu_enable;
                alu_a$ = data.alu_a;
                alu_a$ = data.alu_a;
 
 
                agent.chk.store(data);
                agent.chk.store(data);
                emit done;
                emit done;
        };
        };
 
 
};
};
'>
'>
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.