#! /c/Source/iverilog-install/bin/vvp
:ivl_version "12.0 (devel)" "(s20150603-1539-g2693dd32b)";
:ivl_delay_selection "TYPICAL";
:vpi_time_precision + 0;
:vpi_module "D:\scoop\apps\iverilog\current\lib\ivl\system.vpi";
:vpi_module "D:\scoop\apps\iverilog\current\lib\ivl\vhdl_sys.vpi";
:vpi_module "D:\scoop\apps\iverilog\current\lib\ivl\vhdl_textio.vpi";
:vpi_module "D:\scoop\apps\iverilog\current\lib\ivl\v2005_math.vpi";
:vpi_module "D:\scoop\apps\iverilog\current\lib\ivl\va_math.vpi";
S_000001e66bedcca0 .scope module, "cordic_trig_tb" "cordic_trig_tb" 2 1;
 .timescale 0 0;
v000001e66bf42d90_0 .var "angle", 7 0;
v000001e66bf42bb0_0 .var "clk", 0 0;
v000001e66bf430b0_0 .net "cosine", 7 0, v000001e66beb6a60_0;  1 drivers
v000001e66bf42e30_0 .var "rst", 0 0;
v000001e66bf42b10_0 .net "sine", 7 0, v000001e66beb6c40_0;  1 drivers
S_000001e66bede090 .scope module, "uut" "cordic_trig" 2 9, 3 1 0, S_000001e66bedcca0;
 .timescale 0 0;
    .port_info 0 /INPUT 1 "clk";
    .port_info 1 /INPUT 1 "rst";
    .port_info 2 /INPUT 8 "angle";
    .port_info 3 /OUTPUT 8 "sine";
    .port_info 4 /OUTPUT 8 "cosine";
P_000001e66beecab0 .param/l "SCALE" 0 3 29, C4<01001110>;
v000001e66bede220_0 .net "angle", 7 0, v000001e66bf42d90_0;  1 drivers
v000001e66beb6920 .array "atan_table", 7 0, 7 0;
v000001e66beb69c0_0 .net "clk", 0 0, v000001e66bf42bb0_0;  1 drivers
v000001e66beb6a60_0 .var "cosine", 7 0;
v000001e66beb6b00_0 .var "iteration", 3 0;
v000001e66beb6ba0_0 .net "rst", 0 0, v000001e66bf42e30_0;  1 drivers
v000001e66beb6c40_0 .var "sine", 7 0;
v000001e66beb6ce0_0 .var "x", 8 0;
v000001e66bee7df0_0 .var "x_next", 8 0;
v000001e66bee7e90_0 .var "y", 8 0;
v000001e66bee7f30_0 .var "y_next", 8 0;
v000001e66bee7fd0_0 .var "z", 7 0;
v000001e66bee8070_0 .var "z_next", 7 0;
E_000001e66beec8b0 .event posedge, v000001e66beb6ba0_0, v000001e66beb69c0_0;
    .scope S_000001e66bede090;
T_0 ;
    %pushi/vec4 64, 0, 8;
    %ix/load 4, 0, 0;
    %flag_set/imm 4, 0;
    %store/vec4a v000001e66beb6920, 4, 0;
    %pushi/vec4 38, 0, 8;
    %ix/load 4, 1, 0;
    %flag_set/imm 4, 0;
    %store/vec4a v000001e66beb6920, 4, 0;
    %pushi/vec4 20, 0, 8;
    %ix/load 4, 2, 0;
    %flag_set/imm 4, 0;
    %store/vec4a v000001e66beb6920, 4, 0;
    %pushi/vec4 10, 0, 8;
    %ix/load 4, 3, 0;
    %flag_set/imm 4, 0;
    %store/vec4a v000001e66beb6920, 4, 0;
    %pushi/vec4 5, 0, 8;
    %ix/load 4, 4, 0;
    %flag_set/imm 4, 0;
    %store/vec4a v000001e66beb6920, 4, 0;
    %pushi/vec4 3, 0, 8;
    %ix/load 4, 5, 0;
    %flag_set/imm 4, 0;
    %store/vec4a v000001e66beb6920, 4, 0;
    %pushi/vec4 1, 0, 8;
    %ix/load 4, 6, 0;
    %flag_set/imm 4, 0;
    %store/vec4a v000001e66beb6920, 4, 0;
    %pushi/vec4 1, 0, 8;
    %ix/load 4, 7, 0;
    %flag_set/imm 4, 0;
    %store/vec4a v000001e66beb6920, 4, 0;
    %end;
    .thread T_0;
    .scope S_000001e66bede090;
T_1 ;
    %wait E_000001e66beec8b0;
    %load/vec4 v000001e66beb6ba0_0;
    %flag_set/vec4 8;
    %jmp/0xz  T_1.0, 8;
    %pushi/vec4 78, 0, 9;
    %assign/vec4 v000001e66beb6ce0_0, 0;
    %pushi/vec4 0, 0, 9;
    %assign/vec4 v000001e66bee7e90_0, 0;
    %load/vec4 v000001e66bede220_0;
    %assign/vec4 v000001e66bee7fd0_0, 0;
    %pushi/vec4 0, 0, 4;
    %assign/vec4 v000001e66beb6b00_0, 0;
    %jmp T_1.1;
T_1.0 ;
    %load/vec4 v000001e66beb6b00_0;
    %pad/u 32;
    %cmpi/u 8, 0, 32;
    %jmp/0xz  T_1.2, 5;
    %load/vec4 v000001e66bee7fd0_0;
    %parti/s 1, 7, 4;
    %flag_set/vec4 8;
    %jmp/0xz  T_1.4, 8;
    %load/vec4 v000001e66beb6ce0_0;
    %load/vec4 v000001e66bee7e90_0;
    %ix/getv 4, v000001e66beb6b00_0;
    %shiftr 4;
    %add;
    %store/vec4 v000001e66bee7df0_0, 0, 9;
    %load/vec4 v000001e66bee7e90_0;
    %load/vec4 v000001e66beb6ce0_0;
    %ix/getv 4, v000001e66beb6b00_0;
    %shiftr 4;
    %sub;
    %store/vec4 v000001e66bee7f30_0, 0, 9;
    %load/vec4 v000001e66bee7fd0_0;
    %load/vec4 v000001e66beb6b00_0;
    %pad/u 5;
    %ix/vec4 4;
    %load/vec4a v000001e66beb6920, 4;
    %add;
    %store/vec4 v000001e66bee8070_0, 0, 8;
    %jmp T_1.5;
T_1.4 ;
    %load/vec4 v000001e66beb6ce0_0;
    %load/vec4 v000001e66bee7e90_0;
    %ix/getv 4, v000001e66beb6b00_0;
    %shiftr 4;
    %sub;
    %store/vec4 v000001e66bee7df0_0, 0, 9;
    %load/vec4 v000001e66bee7e90_0;
    %load/vec4 v000001e66beb6ce0_0;
    %ix/getv 4, v000001e66beb6b00_0;
    %shiftr 4;
    %add;
    %store/vec4 v000001e66bee7f30_0, 0, 9;
    %load/vec4 v000001e66bee7fd0_0;
    %load/vec4 v000001e66beb6b00_0;
    %pad/u 5;
    %ix/vec4 4;
    %load/vec4a v000001e66beb6920, 4;
    %sub;
    %store/vec4 v000001e66bee8070_0, 0, 8;
T_1.5 ;
    %load/vec4 v000001e66bee7df0_0;
    %assign/vec4 v000001e66beb6ce0_0, 0;
    %load/vec4 v000001e66bee7f30_0;
    %assign/vec4 v000001e66bee7e90_0, 0;
    %load/vec4 v000001e66bee8070_0;
    %assign/vec4 v000001e66bee7fd0_0, 0;
    %load/vec4 v000001e66beb6b00_0;
    %addi 1, 0, 4;
    %assign/vec4 v000001e66beb6b00_0, 0;
T_1.2 ;
T_1.1 ;
    %load/vec4 v000001e66beb6ce0_0;
    %parti/s 8, 1, 2;
    %assign/vec4 v000001e66beb6a60_0, 0;
    %load/vec4 v000001e66bee7e90_0;
    %parti/s 8, 1, 2;
    %assign/vec4 v000001e66beb6c40_0, 0;
    %jmp T_1;
    .thread T_1;
    .scope S_000001e66bedcca0;
T_2 ;
    %pushi/vec4 0, 0, 1;
    %store/vec4 v000001e66bf42bb0_0, 0, 1;
T_2.0 ;
    %delay 5, 0;
    %load/vec4 v000001e66bf42bb0_0;
    %inv;
    %store/vec4 v000001e66bf42bb0_0, 0, 1;
    %jmp T_2.0;
    %end;
    .thread T_2;
    .scope S_000001e66bedcca0;
T_3 ;
    %vpi_call 2 25 "$dumpfile", "cordic_trig.vcd" {0 0 0};
    %vpi_call 2 26 "$dumpvars", 32'sb00000000000000000000000000000000, S_000001e66bedcca0 {0 0 0};
    %pushi/vec4 1, 0, 1;
    %store/vec4 v000001e66bf42e30_0, 0, 1;
    %pushi/vec4 0, 0, 8;
    %store/vec4 v000001e66bf42d90_0, 0, 8;
    %delay 10, 0;
    %pushi/vec4 0, 0, 1;
    %store/vec4 v000001e66bf42e30_0, 0, 1;
    %delay 100, 0;
    %pushi/vec4 0, 0, 8;
    %store/vec4 v000001e66bf42d90_0, 0, 8;
    %delay 100, 0;
    %pushi/vec4 64, 0, 8;
    %store/vec4 v000001e66bf42d90_0, 0, 8;
    %delay 100, 0;
    %pushi/vec4 128, 0, 8;
    %store/vec4 v000001e66bf42d90_0, 0, 8;
    %delay 100, 0;
    %pushi/vec4 192, 0, 8;
    %store/vec4 v000001e66bf42d90_0, 0, 8;
    %delay 100, 0;
    %pushi/vec4 32, 0, 8;
    %store/vec4 v000001e66bf42d90_0, 0, 8;
    %delay 100, 0;
    %vpi_call 2 55 "$display", "All tests completed" {0 0 0};
    %vpi_call 2 56 "$finish" {0 0 0};
    %end;
    .thread T_3;
# The file index is used to find the file name in the following table.
:file_names 4;
    "N/A";
    "<interactive>";
    "cordic_trig_8bit_tb.v";
    "cordic_trig_8bit.v";
