verilog/project0.2/divider4
2025-01-08 01:05:46 +03:00

392 lines
20 KiB
Plaintext

#! /usr/bin/vvp
:ivl_version "11.0 (stable)";
:ivl_delay_selection "TYPICAL";
:vpi_time_precision + 0;
:vpi_module "/usr/lib/x86_64-linux-gnu/ivl/system.vpi";
:vpi_module "/usr/lib/x86_64-linux-gnu/ivl/vhdl_sys.vpi";
:vpi_module "/usr/lib/x86_64-linux-gnu/ivl/vhdl_textio.vpi";
:vpi_module "/usr/lib/x86_64-linux-gnu/ivl/v2005_math.vpi";
:vpi_module "/usr/lib/x86_64-linux-gnu/ivl/va_math.vpi";
S_0x55ec337fbbf0 .scope module, "divider4TB" "divider4TB" 2 1;
.timescale 0 0;
v0x55ec33821ff0_0 .var "Dividend", 3 0;
v0x55ec338220d0_0 .var "Divisor", 1 0;
v0x55ec33822170_0 .net "Quotient", 3 0, L_0x55ec338251a0; 1 drivers
v0x55ec33822240_0 .net "Remainder", 2 0, L_0x55ec33825510; 1 drivers
S_0x55ec337fa3a0 .scope module, "uut" "divider4" 2 12, 3 1 0, S_0x55ec337fbbf0;
.timescale 0 0;
.port_info 0 /INPUT 4 "Dividend";
.port_info 1 /INPUT 2 "Divisor";
.port_info 2 /OUTPUT 4 "Quotient";
.port_info 3 /OUTPUT 3 "Remainder";
L_0x55ec338251a0 .functor BUFZ 4, L_0x55ec338252b0, C4<0000>, C4<0000>, C4<0000>;
v0x55ec338218a0_0 .net "Carry", 3 0, L_0x55ec338253d0; 1 drivers
v0x55ec338219a0_0 .net "Dividend", 3 0, v0x55ec33821ff0_0; 1 drivers
v0x55ec33821a80_0 .net "Divisor", 1 0, v0x55ec338220d0_0; 1 drivers
v0x55ec33821b40_0 .net "Quotient", 3 0, L_0x55ec338251a0; alias, 1 drivers
v0x55ec33821c20_0 .net "Remainder", 2 0, L_0x55ec33825510; alias, 1 drivers
v0x55ec33821d50_0 .net "S0", 0 0, L_0x55ec33822310; 1 drivers
v0x55ec33821df0_0 .net "S1", 0 0, L_0x55ec338223e0; 1 drivers
v0x55ec33821e90_0 .net "Y", 3 0, L_0x55ec338252b0; 1 drivers
L_0x55ec33822310 .part L_0x55ec338253d0, 3, 1;
L_0x55ec338223e0 .part L_0x55ec338253d0, 2, 1;
L_0x55ec33822d50 .part v0x55ec33821ff0_0, 3, 1;
L_0x55ec33822e40 .part v0x55ec338220d0_0, 1, 1;
L_0x55ec338238c0 .part v0x55ec33821ff0_0, 2, 1;
L_0x55ec33823960 .part v0x55ec338220d0_0, 1, 1;
L_0x55ec33823a90 .part L_0x55ec338253d0, 3, 1;
L_0x55ec338243b0 .part v0x55ec33821ff0_0, 1, 1;
L_0x55ec33824530 .part v0x55ec338220d0_0, 0, 1;
L_0x55ec33824660 .part L_0x55ec338253d0, 2, 1;
L_0x55ec33825060 .part v0x55ec33821ff0_0, 0, 1;
L_0x55ec33825100 .part v0x55ec338220d0_0, 0, 1;
L_0x55ec33825210 .part L_0x55ec338253d0, 1, 1;
L_0x55ec338252b0 .concat8 [ 1 1 1 1], L_0x55ec33824ff0, L_0x55ec338242f0, L_0x55ec33823800, L_0x55ec33822c60;
L_0x55ec338253d0 .concat8 [ 1 1 1 1], L_0x55ec33824db0, L_0x55ec338240b0, L_0x55ec338235c0, L_0x55ec33822a20;
L_0x55ec33825510 .part L_0x55ec338253d0, 0, 3;
S_0x55ec337f9f60 .scope module, "PU1" "PU" 3 17, 4 1 0, S_0x55ec337fa3a0;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /INPUT 1 "Cin";
.port_info 3 /INPUT 1 "S";
.port_info 4 /OUTPUT 1 "Y";
.port_info 5 /OUTPUT 1 "COut";
L_0x55ec33822480 .functor NOT 1, L_0x55ec33822e40, C4<0>, C4<0>, C4<0>;
v0x55ec33819cb0_0 .net "A", 0 0, L_0x55ec33822d50; 1 drivers
v0x55ec33819d70_0 .net "B", 0 0, L_0x55ec33822e40; 1 drivers
v0x55ec33819e30_0 .net "COut", 0 0, L_0x55ec33822a20; 1 drivers
L_0x7f82dfd33018 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
v0x55ec33819ed0_0 .net "Cin", 0 0, L_0x7f82dfd33018; 1 drivers
v0x55ec33819fc0_0 .net "S", 0 0, L_0x55ec33822310; alias, 1 drivers
v0x55ec3381a0b0_0 .net "Sum", 0 0, L_0x55ec33822870; 1 drivers
v0x55ec3381a150_0 .net "Y", 0 0, L_0x55ec33822c60; 1 drivers
v0x55ec3381a1f0_0 .net "notB", 0 0, L_0x55ec33822480; 1 drivers
S_0x55ec337f9a30 .scope module, "f1" "fulladder" 4 16, 5 1 0, S_0x55ec337f9f60;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /INPUT 1 "Carry";
.port_info 3 /OUTPUT 1 "Sum";
.port_info 4 /OUTPUT 1 "CarryO";
L_0x55ec33822a20 .functor OR 1, L_0x55ec338224f0, L_0x55ec33822730, C4<0>, C4<0>;
v0x55ec33818dd0_0 .net "A", 0 0, L_0x55ec33822d50; alias, 1 drivers
v0x55ec33818e90_0 .net "B", 0 0, L_0x55ec33822480; alias, 1 drivers
v0x55ec33818f60_0 .net "Carry", 0 0, L_0x7f82dfd33018; alias, 1 drivers
v0x55ec33819060_0 .net "CarryO", 0 0, L_0x55ec33822a20; alias, 1 drivers
v0x55ec33819100_0 .net "Sum", 0 0, L_0x55ec33822870; alias, 1 drivers
v0x55ec338191f0_0 .net "and1", 0 0, L_0x55ec338224f0; 1 drivers
v0x55ec338192c0_0 .net "and2", 0 0, L_0x55ec33822730; 1 drivers
v0x55ec33819390_0 .net "xor1", 0 0, L_0x55ec338226a0; 1 drivers
S_0x55ec337f7800 .scope module, "h1" "halfadder" 5 8, 6 1 0, S_0x55ec337f9a30;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /OUTPUT 1 "Sum";
.port_info 3 /OUTPUT 1 "Carry";
L_0x55ec338224f0 .functor AND 1, L_0x55ec33822d50, L_0x55ec33822480, C4<1>, C4<1>;
L_0x55ec338226a0 .functor XOR 1, L_0x55ec33822d50, L_0x55ec33822480, C4<0>, C4<0>;
v0x55ec337f5bd0_0 .net "A", 0 0, L_0x55ec33822d50; alias, 1 drivers
v0x55ec337f7e00_0 .net "B", 0 0, L_0x55ec33822480; alias, 1 drivers
v0x55ec337f36f0_0 .net "Carry", 0 0, L_0x55ec338224f0; alias, 1 drivers
v0x55ec337f5980_0 .net "Sum", 0 0, L_0x55ec338226a0; alias, 1 drivers
S_0x55ec33818960 .scope module, "h2" "halfadder" 5 9, 6 1 0, S_0x55ec337f9a30;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /OUTPUT 1 "Sum";
.port_info 3 /OUTPUT 1 "Carry";
L_0x55ec33822730 .functor AND 1, L_0x55ec338226a0, L_0x7f82dfd33018, C4<1>, C4<1>;
L_0x55ec33822870 .functor XOR 1, L_0x55ec338226a0, L_0x7f82dfd33018, C4<0>, C4<0>;
v0x55ec337f7bb0_0 .net "A", 0 0, L_0x55ec338226a0; alias, 1 drivers
v0x55ec337f9de0_0 .net "B", 0 0, L_0x7f82dfd33018; alias, 1 drivers
v0x55ec33818b90_0 .net "Carry", 0 0, L_0x55ec33822730; alias, 1 drivers
v0x55ec33818c60_0 .net "Sum", 0 0, L_0x55ec33822870; alias, 1 drivers
S_0x55ec33819480 .scope module, "m1" "mux2" 4 25, 7 1 0, S_0x55ec337f9f60;
.timescale 0 0;
.port_info 0 /INPUT 1 "A0";
.port_info 1 /INPUT 1 "A1";
.port_info 2 /INPUT 1 "S";
.port_info 3 /OUTPUT 1 "Y";
L_0x55ec33822ad0 .functor NOT 1, L_0x55ec33822310, C4<0>, C4<0>, C4<0>;
L_0x55ec33822b60 .functor AND 1, L_0x55ec33822870, L_0x55ec33822310, C4<1>, C4<1>;
L_0x55ec33822bf0 .functor AND 1, L_0x55ec33822ad0, L_0x55ec33822d50, C4<1>, C4<1>;
L_0x55ec33822c60 .functor OR 1, L_0x55ec33822b60, L_0x55ec33822bf0, C4<0>, C4<0>;
v0x55ec33819660_0 .net "A0", 0 0, L_0x55ec33822d50; alias, 1 drivers
v0x55ec33819750_0 .net "A1", 0 0, L_0x55ec33822870; alias, 1 drivers
v0x55ec33819860_0 .net "S", 0 0, L_0x55ec33822310; alias, 1 drivers
v0x55ec33819900_0 .net "Y", 0 0, L_0x55ec33822c60; alias, 1 drivers
v0x55ec338199a0_0 .net "and1", 0 0, L_0x55ec33822b60; 1 drivers
v0x55ec33819ab0_0 .net "and2", 0 0, L_0x55ec33822bf0; 1 drivers
v0x55ec33819b70_0 .net "notS", 0 0, L_0x55ec33822ad0; 1 drivers
S_0x55ec3381a320 .scope module, "PU2" "PU" 3 26, 4 1 0, S_0x55ec337fa3a0;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /INPUT 1 "Cin";
.port_info 3 /INPUT 1 "S";
.port_info 4 /OUTPUT 1 "Y";
.port_info 5 /OUTPUT 1 "COut";
L_0x55ec33822fb0 .functor NOT 1, L_0x55ec33823960, C4<0>, C4<0>, C4<0>;
v0x55ec3381c350_0 .net "A", 0 0, L_0x55ec338238c0; 1 drivers
v0x55ec3381c410_0 .net "B", 0 0, L_0x55ec33823960; 1 drivers
v0x55ec3381c4d0_0 .net "COut", 0 0, L_0x55ec338235c0; 1 drivers
v0x55ec3381c570_0 .net "Cin", 0 0, L_0x55ec33823a90; 1 drivers
v0x55ec3381c660_0 .net "S", 0 0, L_0x55ec33822310; alias, 1 drivers
v0x55ec3381c750_0 .net "Sum", 0 0, L_0x55ec33823410; 1 drivers
v0x55ec3381c7f0_0 .net "Y", 0 0, L_0x55ec33823800; 1 drivers
v0x55ec3381c890_0 .net "notB", 0 0, L_0x55ec33822fb0; 1 drivers
S_0x55ec3381a5c0 .scope module, "f1" "fulladder" 4 16, 5 1 0, S_0x55ec3381a320;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /INPUT 1 "Carry";
.port_info 3 /OUTPUT 1 "Sum";
.port_info 4 /OUTPUT 1 "CarryO";
L_0x55ec338235c0 .functor OR 1, L_0x55ec33823020, L_0x55ec338232d0, C4<0>, C4<0>;
v0x55ec3381b3d0_0 .net "A", 0 0, L_0x55ec338238c0; alias, 1 drivers
v0x55ec3381b490_0 .net "B", 0 0, L_0x55ec33822fb0; alias, 1 drivers
v0x55ec3381b560_0 .net "Carry", 0 0, L_0x55ec33823a90; alias, 1 drivers
v0x55ec3381b660_0 .net "CarryO", 0 0, L_0x55ec338235c0; alias, 1 drivers
v0x55ec3381b700_0 .net "Sum", 0 0, L_0x55ec33823410; alias, 1 drivers
v0x55ec3381b7f0_0 .net "and1", 0 0, L_0x55ec33823020; 1 drivers
v0x55ec3381b8c0_0 .net "and2", 0 0, L_0x55ec338232d0; 1 drivers
v0x55ec3381b990_0 .net "xor1", 0 0, L_0x55ec33823240; 1 drivers
S_0x55ec3381a7a0 .scope module, "h1" "halfadder" 5 8, 6 1 0, S_0x55ec3381a5c0;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /OUTPUT 1 "Sum";
.port_info 3 /OUTPUT 1 "Carry";
L_0x55ec33823020 .functor AND 1, L_0x55ec338238c0, L_0x55ec33822fb0, C4<1>, C4<1>;
L_0x55ec33823240 .functor XOR 1, L_0x55ec338238c0, L_0x55ec33822fb0, C4<0>, C4<0>;
v0x55ec3381a9d0_0 .net "A", 0 0, L_0x55ec338238c0; alias, 1 drivers
v0x55ec3381aab0_0 .net "B", 0 0, L_0x55ec33822fb0; alias, 1 drivers
v0x55ec3381ab70_0 .net "Carry", 0 0, L_0x55ec33823020; alias, 1 drivers
v0x55ec3381ac40_0 .net "Sum", 0 0, L_0x55ec33823240; alias, 1 drivers
S_0x55ec3381adb0 .scope module, "h2" "halfadder" 5 9, 6 1 0, S_0x55ec3381a5c0;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /OUTPUT 1 "Sum";
.port_info 3 /OUTPUT 1 "Carry";
L_0x55ec338232d0 .functor AND 1, L_0x55ec33823240, L_0x55ec33823a90, C4<1>, C4<1>;
L_0x55ec33823410 .functor XOR 1, L_0x55ec33823240, L_0x55ec33823a90, C4<0>, C4<0>;
v0x55ec3381b020_0 .net "A", 0 0, L_0x55ec33823240; alias, 1 drivers
v0x55ec3381b0f0_0 .net "B", 0 0, L_0x55ec33823a90; alias, 1 drivers
v0x55ec3381b190_0 .net "Carry", 0 0, L_0x55ec338232d0; alias, 1 drivers
v0x55ec3381b260_0 .net "Sum", 0 0, L_0x55ec33823410; alias, 1 drivers
S_0x55ec3381ba80 .scope module, "m1" "mux2" 4 25, 7 1 0, S_0x55ec3381a320;
.timescale 0 0;
.port_info 0 /INPUT 1 "A0";
.port_info 1 /INPUT 1 "A1";
.port_info 2 /INPUT 1 "S";
.port_info 3 /OUTPUT 1 "Y";
L_0x55ec33823670 .functor NOT 1, L_0x55ec33822310, C4<0>, C4<0>, C4<0>;
L_0x55ec33823700 .functor AND 1, L_0x55ec33823410, L_0x55ec33822310, C4<1>, C4<1>;
L_0x55ec33823790 .functor AND 1, L_0x55ec33823670, L_0x55ec338238c0, C4<1>, C4<1>;
L_0x55ec33823800 .functor OR 1, L_0x55ec33823700, L_0x55ec33823790, C4<0>, C4<0>;
v0x55ec3381bcd0_0 .net "A0", 0 0, L_0x55ec338238c0; alias, 1 drivers
v0x55ec3381bdc0_0 .net "A1", 0 0, L_0x55ec33823410; alias, 1 drivers
v0x55ec3381bed0_0 .net "S", 0 0, L_0x55ec33822310; alias, 1 drivers
v0x55ec3381bfc0_0 .net "Y", 0 0, L_0x55ec33823800; alias, 1 drivers
v0x55ec3381c060_0 .net "and1", 0 0, L_0x55ec33823700; 1 drivers
v0x55ec3381c150_0 .net "and2", 0 0, L_0x55ec33823790; 1 drivers
v0x55ec3381c210_0 .net "notS", 0 0, L_0x55ec33823670; 1 drivers
S_0x55ec3381c9e0 .scope module, "PU3" "PU" 3 36, 4 1 0, S_0x55ec337fa3a0;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /INPUT 1 "Cin";
.port_info 3 /INPUT 1 "S";
.port_info 4 /OUTPUT 1 "Y";
.port_info 5 /OUTPUT 1 "COut";
L_0x55ec33823b30 .functor NOT 1, L_0x55ec33824530, C4<0>, C4<0>, C4<0>;
v0x55ec3381ea80_0 .net "A", 0 0, L_0x55ec338243b0; 1 drivers
v0x55ec3381eb40_0 .net "B", 0 0, L_0x55ec33824530; 1 drivers
v0x55ec3381ec00_0 .net "COut", 0 0, L_0x55ec338240b0; 1 drivers
v0x55ec3381eca0_0 .net "Cin", 0 0, L_0x55ec33824660; 1 drivers
v0x55ec3381ed90_0 .net "S", 0 0, L_0x55ec338223e0; alias, 1 drivers
v0x55ec3381ee80_0 .net "Sum", 0 0, L_0x55ec33823f00; 1 drivers
v0x55ec3381ef20_0 .net "Y", 0 0, L_0x55ec338242f0; 1 drivers
v0x55ec3381efc0_0 .net "notB", 0 0, L_0x55ec33823b30; 1 drivers
S_0x55ec3381cc60 .scope module, "f1" "fulladder" 4 16, 5 1 0, S_0x55ec3381c9e0;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /INPUT 1 "Carry";
.port_info 3 /OUTPUT 1 "Sum";
.port_info 4 /OUTPUT 1 "CarryO";
L_0x55ec338240b0 .functor OR 1, L_0x55ec33823ba0, L_0x55ec33823dc0, C4<0>, C4<0>;
v0x55ec3381db30_0 .net "A", 0 0, L_0x55ec338243b0; alias, 1 drivers
v0x55ec3381dbf0_0 .net "B", 0 0, L_0x55ec33823b30; alias, 1 drivers
v0x55ec3381dcc0_0 .net "Carry", 0 0, L_0x55ec33824660; alias, 1 drivers
v0x55ec3381ddc0_0 .net "CarryO", 0 0, L_0x55ec338240b0; alias, 1 drivers
v0x55ec3381de60_0 .net "Sum", 0 0, L_0x55ec33823f00; alias, 1 drivers
v0x55ec3381df50_0 .net "and1", 0 0, L_0x55ec33823ba0; 1 drivers
v0x55ec3381e020_0 .net "and2", 0 0, L_0x55ec33823dc0; 1 drivers
v0x55ec3381e0f0_0 .net "xor1", 0 0, L_0x55ec33823d30; 1 drivers
S_0x55ec3381cec0 .scope module, "h1" "halfadder" 5 8, 6 1 0, S_0x55ec3381cc60;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /OUTPUT 1 "Sum";
.port_info 3 /OUTPUT 1 "Carry";
L_0x55ec33823ba0 .functor AND 1, L_0x55ec338243b0, L_0x55ec33823b30, C4<1>, C4<1>;
L_0x55ec33823d30 .functor XOR 1, L_0x55ec338243b0, L_0x55ec33823b30, C4<0>, C4<0>;
v0x55ec3381d130_0 .net "A", 0 0, L_0x55ec338243b0; alias, 1 drivers
v0x55ec3381d210_0 .net "B", 0 0, L_0x55ec33823b30; alias, 1 drivers
v0x55ec3381d2d0_0 .net "Carry", 0 0, L_0x55ec33823ba0; alias, 1 drivers
v0x55ec3381d3a0_0 .net "Sum", 0 0, L_0x55ec33823d30; alias, 1 drivers
S_0x55ec3381d510 .scope module, "h2" "halfadder" 5 9, 6 1 0, S_0x55ec3381cc60;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /OUTPUT 1 "Sum";
.port_info 3 /OUTPUT 1 "Carry";
L_0x55ec33823dc0 .functor AND 1, L_0x55ec33823d30, L_0x55ec33824660, C4<1>, C4<1>;
L_0x55ec33823f00 .functor XOR 1, L_0x55ec33823d30, L_0x55ec33824660, C4<0>, C4<0>;
v0x55ec3381d780_0 .net "A", 0 0, L_0x55ec33823d30; alias, 1 drivers
v0x55ec3381d850_0 .net "B", 0 0, L_0x55ec33824660; alias, 1 drivers
v0x55ec3381d8f0_0 .net "Carry", 0 0, L_0x55ec33823dc0; alias, 1 drivers
v0x55ec3381d9c0_0 .net "Sum", 0 0, L_0x55ec33823f00; alias, 1 drivers
S_0x55ec3381e1e0 .scope module, "m1" "mux2" 4 25, 7 1 0, S_0x55ec3381c9e0;
.timescale 0 0;
.port_info 0 /INPUT 1 "A0";
.port_info 1 /INPUT 1 "A1";
.port_info 2 /INPUT 1 "S";
.port_info 3 /OUTPUT 1 "Y";
L_0x55ec33824160 .functor NOT 1, L_0x55ec338223e0, C4<0>, C4<0>, C4<0>;
L_0x55ec338241f0 .functor AND 1, L_0x55ec33823f00, L_0x55ec338223e0, C4<1>, C4<1>;
L_0x55ec33824280 .functor AND 1, L_0x55ec33824160, L_0x55ec338243b0, C4<1>, C4<1>;
L_0x55ec338242f0 .functor OR 1, L_0x55ec338241f0, L_0x55ec33824280, C4<0>, C4<0>;
v0x55ec3381e430_0 .net "A0", 0 0, L_0x55ec338243b0; alias, 1 drivers
v0x55ec3381e520_0 .net "A1", 0 0, L_0x55ec33823f00; alias, 1 drivers
v0x55ec3381e630_0 .net "S", 0 0, L_0x55ec338223e0; alias, 1 drivers
v0x55ec3381e6d0_0 .net "Y", 0 0, L_0x55ec338242f0; alias, 1 drivers
v0x55ec3381e770_0 .net "and1", 0 0, L_0x55ec338241f0; 1 drivers
v0x55ec3381e880_0 .net "and2", 0 0, L_0x55ec33824280; 1 drivers
v0x55ec3381e940_0 .net "notS", 0 0, L_0x55ec33824160; 1 drivers
S_0x55ec3381f0f0 .scope module, "PU4" "PU" 3 45, 4 1 0, S_0x55ec337fa3a0;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /INPUT 1 "Cin";
.port_info 3 /INPUT 1 "S";
.port_info 4 /OUTPUT 1 "Y";
.port_info 5 /OUTPUT 1 "COut";
L_0x55ec338247f0 .functor NOT 1, L_0x55ec33825100, C4<0>, C4<0>, C4<0>;
v0x55ec33821210_0 .net "A", 0 0, L_0x55ec33825060; 1 drivers
v0x55ec338212d0_0 .net "B", 0 0, L_0x55ec33825100; 1 drivers
v0x55ec33821390_0 .net "COut", 0 0, L_0x55ec33824db0; 1 drivers
v0x55ec33821430_0 .net "Cin", 0 0, L_0x55ec33825210; 1 drivers
v0x55ec33821520_0 .net "S", 0 0, L_0x55ec338223e0; alias, 1 drivers
v0x55ec33821610_0 .net "Sum", 0 0, L_0x55ec33824c00; 1 drivers
v0x55ec338216b0_0 .net "Y", 0 0, L_0x55ec33824ff0; 1 drivers
v0x55ec33821750_0 .net "notB", 0 0, L_0x55ec338247f0; 1 drivers
S_0x55ec3381f370 .scope module, "f1" "fulladder" 4 16, 5 1 0, S_0x55ec3381f0f0;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /INPUT 1 "Carry";
.port_info 3 /OUTPUT 1 "Sum";
.port_info 4 /OUTPUT 1 "CarryO";
L_0x55ec33824db0 .functor OR 1, L_0x55ec33824860, L_0x55ec33824ac0, C4<0>, C4<0>;
v0x55ec33820290_0 .net "A", 0 0, L_0x55ec33825060; alias, 1 drivers
v0x55ec33820350_0 .net "B", 0 0, L_0x55ec338247f0; alias, 1 drivers
v0x55ec33820420_0 .net "Carry", 0 0, L_0x55ec33825210; alias, 1 drivers
v0x55ec33820520_0 .net "CarryO", 0 0, L_0x55ec33824db0; alias, 1 drivers
v0x55ec338205c0_0 .net "Sum", 0 0, L_0x55ec33824c00; alias, 1 drivers
v0x55ec338206b0_0 .net "and1", 0 0, L_0x55ec33824860; 1 drivers
v0x55ec33820780_0 .net "and2", 0 0, L_0x55ec33824ac0; 1 drivers
v0x55ec33820850_0 .net "xor1", 0 0, L_0x55ec33824a30; 1 drivers
S_0x55ec3381f5f0 .scope module, "h1" "halfadder" 5 8, 6 1 0, S_0x55ec3381f370;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /OUTPUT 1 "Sum";
.port_info 3 /OUTPUT 1 "Carry";
L_0x55ec33824860 .functor AND 1, L_0x55ec33825060, L_0x55ec338247f0, C4<1>, C4<1>;
L_0x55ec33824a30 .functor XOR 1, L_0x55ec33825060, L_0x55ec338247f0, C4<0>, C4<0>;
v0x55ec3381f890_0 .net "A", 0 0, L_0x55ec33825060; alias, 1 drivers
v0x55ec3381f970_0 .net "B", 0 0, L_0x55ec338247f0; alias, 1 drivers
v0x55ec3381fa30_0 .net "Carry", 0 0, L_0x55ec33824860; alias, 1 drivers
v0x55ec3381fb00_0 .net "Sum", 0 0, L_0x55ec33824a30; alias, 1 drivers
S_0x55ec3381fc70 .scope module, "h2" "halfadder" 5 9, 6 1 0, S_0x55ec3381f370;
.timescale 0 0;
.port_info 0 /INPUT 1 "A";
.port_info 1 /INPUT 1 "B";
.port_info 2 /OUTPUT 1 "Sum";
.port_info 3 /OUTPUT 1 "Carry";
L_0x55ec33824ac0 .functor AND 1, L_0x55ec33824a30, L_0x55ec33825210, C4<1>, C4<1>;
L_0x55ec33824c00 .functor XOR 1, L_0x55ec33824a30, L_0x55ec33825210, C4<0>, C4<0>;
v0x55ec3381fee0_0 .net "A", 0 0, L_0x55ec33824a30; alias, 1 drivers
v0x55ec3381ffb0_0 .net "B", 0 0, L_0x55ec33825210; alias, 1 drivers
v0x55ec33820050_0 .net "Carry", 0 0, L_0x55ec33824ac0; alias, 1 drivers
v0x55ec33820120_0 .net "Sum", 0 0, L_0x55ec33824c00; alias, 1 drivers
S_0x55ec33820940 .scope module, "m1" "mux2" 4 25, 7 1 0, S_0x55ec3381f0f0;
.timescale 0 0;
.port_info 0 /INPUT 1 "A0";
.port_info 1 /INPUT 1 "A1";
.port_info 2 /INPUT 1 "S";
.port_info 3 /OUTPUT 1 "Y";
L_0x55ec33824e60 .functor NOT 1, L_0x55ec338223e0, C4<0>, C4<0>, C4<0>;
L_0x55ec33824ef0 .functor AND 1, L_0x55ec33824c00, L_0x55ec338223e0, C4<1>, C4<1>;
L_0x55ec33824f80 .functor AND 1, L_0x55ec33824e60, L_0x55ec33825060, C4<1>, C4<1>;
L_0x55ec33824ff0 .functor OR 1, L_0x55ec33824ef0, L_0x55ec33824f80, C4<0>, C4<0>;
v0x55ec33820b90_0 .net "A0", 0 0, L_0x55ec33825060; alias, 1 drivers
v0x55ec33820c80_0 .net "A1", 0 0, L_0x55ec33824c00; alias, 1 drivers
v0x55ec33820d90_0 .net "S", 0 0, L_0x55ec338223e0; alias, 1 drivers
v0x55ec33820e80_0 .net "Y", 0 0, L_0x55ec33824ff0; alias, 1 drivers
v0x55ec33820f20_0 .net "and1", 0 0, L_0x55ec33824ef0; 1 drivers
v0x55ec33821010_0 .net "and2", 0 0, L_0x55ec33824f80; 1 drivers
v0x55ec338210d0_0 .net "notS", 0 0, L_0x55ec33824e60; 1 drivers
.scope S_0x55ec337fbbf0;
T_0 ;
%vpi_call 2 21 "$monitor", "Time=%0t | Dividend=%b | Divisor=%b | Quotient=%b | Remainder=%b", $time, v0x55ec33821ff0_0, v0x55ec338220d0_0, v0x55ec33822170_0, v0x55ec33822240_0 {0 0 0};
%vpi_call 2 23 "$dumpfile", "divider4.vcd" {0 0 0};
%vpi_call 2 24 "$dumpvars" {0 0 0};
%pushi/vec4 8, 0, 4;
%store/vec4 v0x55ec33821ff0_0, 0, 4;
%pushi/vec4 2, 0, 2;
%store/vec4 v0x55ec338220d0_0, 0, 2;
%delay 10, 0;
%pushi/vec4 15, 0, 4;
%store/vec4 v0x55ec33821ff0_0, 0, 4;
%pushi/vec4 3, 0, 2;
%store/vec4 v0x55ec338220d0_0, 0, 2;
%delay 10, 0;
%pushi/vec4 7, 0, 4;
%store/vec4 v0x55ec33821ff0_0, 0, 4;
%pushi/vec4 2, 0, 2;
%store/vec4 v0x55ec338220d0_0, 0, 2;
%delay 10, 0;
%pushi/vec4 9, 0, 4;
%store/vec4 v0x55ec33821ff0_0, 0, 4;
%pushi/vec4 3, 0, 2;
%store/vec4 v0x55ec338220d0_0, 0, 2;
%delay 10, 0;
%pushi/vec4 6, 0, 4;
%store/vec4 v0x55ec33821ff0_0, 0, 4;
%pushi/vec4 1, 0, 2;
%store/vec4 v0x55ec338220d0_0, 0, 2;
%delay 10, 0;
%pushi/vec4 10, 0, 4;
%store/vec4 v0x55ec33821ff0_0, 0, 4;
%pushi/vec4 0, 0, 2;
%store/vec4 v0x55ec338220d0_0, 0, 2;
%delay 10, 0;
%vpi_call 2 57 "$finish" {0 0 0};
%end;
.thread T_0;
# The file index is used to find the file name in the following table.
:file_names 8;
"N/A";
"<interactive>";
"divider4TB.v";
"divider4.v";
"PU.v";
"fulladder.v";
"halfadder.v";
"mux2.v";