aboutsummaryrefslogtreecommitdiff
path: root/src/init.sv
diff options
context:
space:
mode:
authorWarrick Lo <wlo@warricklo.net>2026-04-08 14:05:11 -0700
committerWarrick Lo <wlo@warricklo.net>2026-04-08 14:05:11 -0700
commit4d43ba2b048e4a5bc46c72032c3bfe7a2f062ec3 (patch)
tree2d2f5d9cef5881016d0799bfeb8d5bad4be7a2e4 /src/init.sv
parentAdd output file of 108 core cracking (diff)
downloadrc4-decrypt-4d43ba2b048e4a5bc46c72032c3bfe7a2f062ec3.tar.xz
rc4-decrypt-4d43ba2b048e4a5bc46c72032c3bfe7a2f062ec3.zip
Add muli-core ARC4 cracking
Signed-off-by: Warrick Lo <wlo@warricklo.net>
Diffstat (limited to 'src/init.sv')
-rw-r--r--src/init.sv27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/init.sv b/src/init.sv
new file mode 100644
index 0000000..ae42634
--- /dev/null
+++ b/src/init.sv
@@ -0,0 +1,27 @@
+module init(clk, rst_n, en, rdy, addr, wrdata, wren);
+
+ input logic clk, rst_n, en;
+ output logic rdy, wren;
+ output logic [7:0] addr, wrdata;
+
+ always_ff @(posedge clk) begin
+ if (~rst_n) begin
+ rdy <= 1'b1;
+ wren <= 1'b0;
+ addr <= 8'b0;
+ wrdata <= 8'b0;
+ end else if (rdy && en) begin
+ rdy <= 1'b0;
+ wren <= 1'b1;
+ end else if (wren && ((wrdata + 1'b1) !== 8'b0)) begin
+ addr <= addr + 1;
+ wrdata <= wrdata + 1;
+ end else if (wren && ((wrdata + 1'b1) == 8'b0)) begin
+ rdy <= 1'b1;
+ wren <= 1'b0;
+ addr <= 8'b0;
+ wrdata <= 8'b0;
+ end
+ end
+
+endmodule: init