This commit is contained in:
2026-06-18 23:10:59 +02:00
parent 0d4fd7957f
commit 50dbc682d9
29 changed files with 2007161 additions and 93 deletions

View File

@ -13,12 +13,12 @@
`endif
module \std::cdc::sync2[1523] (
module \std::cdc::sync2[1531] (
input clk_i,
input input_i,
output output__
);
`COCOTB_CODE( std::cdc::sync2[1523] )
`COCOTB_CODE( std::cdc::sync2[1531] )
logic \clk ;
assign \clk = clk_i;
logic \input ;
@ -51,7 +51,7 @@ module \std::cdc::sync2_bool (
logic _e_544;
(* src = "<compiler dir>/stdlib/cdc.spade:31,14" *)
\std::cdc::sync2[1523] \sync2_0 (.clk_i(\clk ), .input_i(\input ), .output__(_e_544));
\std::cdc::sync2[1531] \sync2_0 (.clk_i(\clk ), .input_i(\input ), .output__(_e_544));
assign output__ = _e_544;
endmodule
@ -85,29 +85,29 @@ module \std::io::rising_edge (
(* src = "<compiler dir>/stdlib/io.spade:12,14" *)
reg \old_value ;
(* src = "<compiler dir>/core/ops.spade:255,29" *)
logic _e_2136;
logic _e_2202;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_2135;
logic _e_2201;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_1034;
(* src = "<compiler dir>/core/ops.spade:297,29" *)
logic _e_2144;
logic _e_2210;
(* src = "<compiler dir>/core/ops.spade:297,37" *)
logic _e_2145;
logic _e_2211;
(* src = "<compiler dir>/core/ops.spade:297,9" *)
logic _e_2143;
logic _e_2209;
(* src = "<compiler dir>/core/ops.spade:297,9" *)
logic _e_1032;
always @(posedge \clk ) begin
\old_value <= \value ;
end
assign _e_2136 = {\old_value };
assign _e_2135 = ~_e_2136;
assign _e_1034 = _e_2135;
assign _e_2144 = {\value };
assign _e_2145 = {_e_1034};
assign _e_2143 = _e_2144 & _e_2145;
assign _e_1032 = _e_2143;
assign _e_2202 = {\old_value };
assign _e_2201 = ~_e_2202;
assign _e_1034 = _e_2201;
assign _e_2210 = {\value };
assign _e_2211 = {_e_1034};
assign _e_2209 = _e_2210 & _e_2211;
assign _e_1032 = _e_2209;
assign output__ = _e_1032;
endmodule
@ -125,64 +125,173 @@ module \std::io::falling_edge (
(* src = "<compiler dir>/stdlib/io.spade:27,14" *)
reg \old_value ;
(* src = "<compiler dir>/core/ops.spade:255,29" *)
logic _e_2154;
logic _e_2220;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_2153;
logic _e_2219;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_1041;
logic _e_2218;
(* src = "<compiler dir>/core/ops.spade:297,29" *)
logic _e_2162;
logic _e_2228;
(* src = "<compiler dir>/core/ops.spade:297,37" *)
logic _e_2163;
logic _e_2229;
(* src = "<compiler dir>/core/ops.spade:297,9" *)
logic _e_2161;
logic _e_2227;
(* src = "<compiler dir>/core/ops.spade:297,9" *)
logic _e_2160;
logic _e_2226;
always @(posedge \clk ) begin
\old_value <= \value ;
end
assign _e_2154 = {\value };
assign _e_2153 = ~_e_2154;
assign _e_1041 = _e_2153;
assign _e_2162 = {_e_1041};
assign _e_2163 = {\old_value };
assign _e_2161 = _e_2162 & _e_2163;
assign _e_2160 = _e_2161;
assign output__ = _e_2160;
assign _e_2220 = {\value };
assign _e_2219 = ~_e_2220;
assign _e_2218 = _e_2219;
assign _e_2228 = {_e_2218};
assign _e_2229 = {\old_value };
assign _e_2227 = _e_2228 & _e_2229;
assign _e_2226 = _e_2227;
assign output__ = _e_2226;
endmodule
module main (
input clk,
output[3:0] leds
output[3:0] leds,
output tmds_clk,
output[2:0] tmds
);
`COCOTB_CODE( main )
logic[3:0] \leds_mut ;
assign leds = \leds_mut ;
localparam[23:0] _e_1734 = 1;
(* src = "src/main.spade:4,34" *)
logic[23:0] _e_1732;
(* src = "src/main.spade:4,14" *)
reg[23:0] \counter ;
localparam[23:0] _e_1740 = 20;
(* src = "src/main.spade:6,16" *)
logic[23:0] _e_1738;
(* src = "src/main.spade:6,16" *)
logic[23:0] _e_1737;
(* src = "src/main.spade:6,16" *)
logic[3:0] _e_1736;
(* src = "src/main.spade:4,34" *)
logic \tmds_clk_mut ;
assign tmds_clk = \tmds_clk_mut ;
logic[2:0] \tmds_mut ;
assign tmds = \tmds_mut ;
(* src = "src/main.spade:9,35" *)
logic _e_2156;
(* src = "src/main.spade:9,35" *)
logic _e_2157_mut;
(* src = "src/main.spade:9,35" *)
logic _e_1733;
(* src = "src/main.spade:9,35" *)
logic _e_1733_mut;
(* src = "src/main.spade:9,9" *)
logic \clk_pll ;
(* src = "src/main.spade:9,9" *)
logic \clk_pll_wire_mut ;
(* src = "src/main.spade:10,37" *)
logic _e_2158;
(* src = "src/main.spade:10,37" *)
logic _e_2159_mut;
(* src = "src/main.spade:10,37" *)
logic _e_1737;
(* src = "src/main.spade:10,37" *)
logic _e_1737_mut;
(* src = "src/main.spade:10,9" *)
logic \lock_pll ;
(* src = "src/main.spade:10,9" *)
logic \lock_pll_wire_mut ;
localparam[31:0] _e_1748 = 32'd50000000;
(* src = "<compiler dir>/core/ops.spade:53,9" *)
logic _e_1746;
localparam[31:0] _e_1750 = 32'd0;
localparam[31:0] _e_1754 = 32'd1;
(* src = "src/main.spade:13,75" *)
logic[31:0] _e_1752;
(* src = "src/main.spade:13,38" *)
logic[31:0] _e_1745;
(* src = "src/main.spade:13,18" *)
reg[31:0] \counter ;
localparam[31:0] _e_1760 = 32'd0;
(* src = "<compiler dir>/core/ops.spade:53,9" *)
logic _e_1758;
(* src = "<compiler dir>/core/ops.spade:255,29" *)
logic _e_2242;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_2241;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_1762;
(* src = "src/main.spade:14,29" *)
logic _e_1757;
(* src = "src/main.spade:14,18" *)
reg \on ;
localparam[0:0] _e_1770 = 0;
localparam[0:0] _e_1771 = 0;
localparam[0:0] _e_1772 = 0;
(* src = "src/main.spade:19,16" *)
logic[2:0] _e_1769;
(* src = "<compiler dir>/core/ops.spade:255,29" *)
logic _e_2250;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_2249;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_2248;
(* src = "<compiler dir>/core/ops.spade:255,29" *)
logic _e_2258;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_2257;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_1777;
(* src = "<compiler dir>/core/ops.spade:255,29" *)
logic _e_2266;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_2265;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_2264;
(* src = "<compiler dir>/core/ops.spade:255,29" *)
logic _e_2274;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_2273;
(* src = "<compiler dir>/core/ops.spade:255,9" *)
logic _e_1781;
(* src = "src/main.spade:21,16" *)
logic[3:0] _e_1774;
\core::ops::impl#77::wrapping_add[1524] \wrapping_add_0 (.self_i(\counter ), .rhs_i(_e_1734), .output__(_e_1732));
always @(posedge \clk ) begin
\counter <= _e_1732;
assign _e_2156 = _e_2157_mut;
assign _e_1733 = {_e_2156};
assign {_e_2157_mut} = _e_1733_mut;
assign \clk_pll = _e_1733;
assign _e_1733_mut = \clk_pll_wire_mut ;
assign _e_2158 = _e_2159_mut;
assign _e_1737 = {_e_2158};
assign {_e_2159_mut} = _e_1737_mut;
assign \lock_pll = _e_1737;
assign _e_1737_mut = \lock_pll_wire_mut ;
(* src = "src/main.spade:11,5" *)
pll \pll_0 (.clkin(\clk ), .init_clk(\clk ), .clkout0(\clk_pll_wire_mut ), .lock(\lock_pll_wire_mut ));
assign _e_1746 = \counter == _e_1748;
(* src = "src/main.spade:13,75" *)
\core::ops::impl#77::wrapping_add[1533] \wrapping_add_0 (.self_i(\counter ), .rhs_i(_e_1754), .output__(_e_1752));
assign _e_1745 = _e_1746 ? _e_1750 : _e_1752;
always @(posedge \clk_pll ) begin
\counter <= _e_1745;
end
assign _e_1738 = \counter >> _e_1740;
(* src = "src/main.spade:6,16" *)
\std::conv::impl#14::as_bits[1525] \as_bits_0 (.self_i(_e_1738), .output__(_e_1737));
assign _e_1736 = _e_1737[3-:4];
assign \leds_mut = _e_1736;
assign _e_1758 = \counter == _e_1760;
assign _e_2242 = {\on };
assign _e_2241 = ~_e_2242;
assign _e_1762 = _e_2241;
assign _e_1757 = _e_1758 ? _e_1762 : \on ;
always @(posedge \clk_pll ) begin
\on <= _e_1757;
end
assign \tmds_clk_mut = \clk_pll ;
assign _e_1769 = {_e_1772, _e_1771, _e_1770};
assign \tmds_mut = _e_1769;
assign _e_2250 = {\on };
assign _e_2249 = ~_e_2250;
assign _e_2248 = _e_2249;
assign _e_2258 = {\on };
assign _e_2257 = ~_e_2258;
assign _e_1777 = _e_2257;
assign _e_2266 = {\on };
assign _e_2265 = ~_e_2266;
assign _e_2264 = _e_2265;
assign _e_2274 = {\lock_pll };
assign _e_2273 = ~_e_2274;
assign _e_1781 = _e_2273;
assign _e_1774 = {_e_1781, _e_2264, _e_1777, _e_2248};
assign \leds_mut = _e_1774;
endmodule
@ -239,19 +348,6 @@ module \std::conv::impl#12::as_bool (
endmodule
module \std::conv::impl#14::as_bits[1525] (
input[23:0] self_i,
output[23:0] output__
);
`COCOTB_CODE( std::conv::impl#14::as_bits[1525] )
logic[23:0] \self ;
assign \self = self_i;
logic[23:0] _e_917;
assign _e_917 = \self ;
assign output__ = _e_917;
endmodule
module \std::default::impl#17::hacky_default (
input self_i,
output output__
@ -272,27 +368,27 @@ module \std::default::impl#18::hacky_default (
endmodule
module \core::ops::impl#77::wrapping_add[1524] (
input[23:0] self_i,
input[23:0] rhs_i,
output[23:0] output__
module \core::ops::impl#77::wrapping_add[1533] (
input[31:0] self_i,
input[31:0] rhs_i,
output[31:0] output__
);
`COCOTB_CODE( core::ops::impl#77::wrapping_add[1524] )
logic[23:0] \self ;
`COCOTB_CODE( core::ops::impl#77::wrapping_add[1533] )
logic[31:0] \self ;
assign \self = self_i;
logic[23:0] \rhs ;
logic[31:0] \rhs ;
assign \rhs = rhs_i;
(* src = "<compiler dir>/core/ops.spade:166,62" *)
logic[24:0] _e_1883;
logic[24:0] \bits ;
logic[32:0] _e_1923;
logic[32:0] \bits ;
(* src = "<compiler dir>/core/ops.spade:167,34" *)
logic[23:0] _e_1888;
logic[23:0] _e_1887;
assign _e_1883 = \self + \rhs ;
assign \bits = _e_1883;
assign _e_1888 = \bits [23-:24];
assign _e_1887 = _e_1888;
assign output__ = _e_1887;
logic[31:0] _e_1928;
logic[31:0] _e_1927;
assign _e_1923 = \self + \rhs ;
assign \bits = _e_1923;
assign _e_1928 = \bits [31-:32];
assign _e_1927 = _e_1928;
assign output__ = _e_1927;
endmodule
`default_nettype none