diff --git a/CPU9bits_tb_behav.wcfg b/CPU9bits_tb_behav.wcfg
index d0808e6..56a2585 100644
--- a/CPU9bits_tb_behav.wcfg
+++ b/CPU9bits_tb_behav.wcfg
@@ -11,19 +11,18 @@
-
-
-
+
+
+
-
-
+
+
-
+
Program Counter
label
-
clk
clk
@@ -51,14 +50,6 @@
Fetch Unit
label
-
- clk
- clk
-
-
- reset
- reset
-
op_idx
op_idx
@@ -66,11 +57,12 @@
AddrIn[8:0]
AddrIn[8:0]
-
+ UNSIGNEDDECRADIX
AddrOut[8:0]
AddrOut[8:0]
+ UNSIGNEDDECRADIX
progC_out[8:0]
@@ -88,7 +80,6 @@
Control Unit
label
-
instIn[3:0]
instIn[3:0]
@@ -104,7 +95,6 @@
FU[2:0]
FU[2:0]
-
bank[1:0]
@@ -139,6 +129,125 @@
js
+
+ Registers
+ label
+
+ En
+ En
+
+
+ write_index[1:0]
+ write_index[1:0]
+ UNSIGNEDDECRADIX
+
+
+ op0_idx[1:0]
+ op0_idx[1:0]
+ UNSIGNEDDECRADIX
+
+
+ op1_idx[1:0]
+ op1_idx[1:0]
+ UNSIGNEDDECRADIX
+
+
+ write_data[8:0]
+ write_data[8:0]
+ UNSIGNEDDECRADIX
+
+
+ op0[8:0]
+ op0[8:0]
+ UNSIGNEDDECRADIX
+
+
+ op1[8:0]
+ op1[8:0]
+ UNSIGNEDDECRADIX
+
+
+ decOut[3:0]
+ decOut[3:0]
+ UNSIGNEDDECRADIX
+
+
+ r0_out[8:0]
+ r0_out[8:0]
+ SIGNEDDECRADIX
+
+
+ r1_out[8:0]
+ r1_out[8:0]
+ SIGNEDDECRADIX
+
+
+ r2_out[8:0]
+ r2_out[8:0]
+ SIGNEDDECRADIX
+
+
+ r3_out[8:0]
+ r3_out[8:0]
+ SIGNEDDECRADIX
+
+
+
+ Banks
+ label
+
+ En
+ En
+
+
+ write_index[1:0]
+ write_index[1:0]
+
+
+ op0_idx[1:0]
+ op0_idx[1:0]
+
+
+ op1_idx[1:0]
+ op1_idx[1:0]
+
+
+ write_data[8:0]
+ write_data[8:0]
+
+
+ op0[8:0]
+ op0[8:0]
+
+
+ op1[8:0]
+ op1[8:0]
+
+
+ decOut[3:0]
+ decOut[3:0]
+
+
+ r0_out[8:0]
+ r0_out[8:0]
+ SIGNEDDECRADIX
+
+
+ r1_out[8:0]
+ r1_out[8:0]
+ SIGNEDDECRADIX
+
+
+ r2_out[8:0]
+ r2_out[8:0]
+ SIGNEDDECRADIX
+
+
+ r3_out[8:0]
+ r3_out[8:0]
+ SIGNEDDECRADIX
+
+
Divider
label
@@ -146,7 +255,6 @@
Instruction Memory
label
-
address[8:0]
address[8:0]
@@ -208,12 +316,135 @@
Din[50:0]
Din[50:0]
-
Dout[50:0]
Dout[50:0]
-
+
+
+
+ Data Memory
+ label
+
+ clk
+ clk
+
+
+ writeEnable
+ writeEnable
+
+
+ address[8:0]
+ address[8:0]
+ UNSIGNEDDECRADIX
+
+
+ writeData[8:0]
+ writeData[8:0]
+
+
+ readData[8:0]
+ readData[8:0]
+
+
+ memory[100:0][8:0]
+ memory[100:0][8:0]
+
+
+
+ Divider
+ label
+
+
+ Mux 3
+ label
+
+ switch
+ switch
+
+
+ A[8:0]
+ A[8:0]
+ SIGNEDDECRADIX
+
+
+ B[8:0]
+ B[8:0]
+ SIGNEDDECRADIX
+
+
+ out[8:0]
+ out[8:0]
+ SIGNEDDECRADIX
+
+
+
+ Mux 4
+ label
+
+ switch
+ switch
+
+
+ A[8:0]
+ A[8:0]
+ SIGNEDDECRADIX
+
+
+ B[8:0]
+ B[8:0]
+ SIGNEDDECRADIX
+
+
+ out[8:0]
+ out[8:0]
+ SIGNEDDECRADIX
+
+
+
+ Mux 5
+ label
+
+ switch
+ switch
+
+
+ A[8:0]
+ A[8:0]
+ SIGNEDDECRADIX
+
+
+ B[8:0]
+ B[8:0]
+ SIGNEDDECRADIX
+
+
+ out[8:0]
+ out[8:0]
+ SIGNEDDECRADIX
+
+
+
+ Mux 6
+ label
+
+ switch
+ switch
+
+
+ A[8:0]
+ A[8:0]
+ SIGNEDDECRADIX
+
+
+ B[8:0]
+ B[8:0]
+ SIGNEDDECRADIX
+
+
+ out[8:0]
+ out[8:0]
+ SIGNEDDECRADIX
diff --git a/lab2CA.srcs/sources_1/new/ControlUnit.v b/lab2CA.srcs/sources_1/new/ControlUnit.v
index 93f605d..7e17462 100644
--- a/lab2CA.srcs/sources_1/new/ControlUnit.v
+++ b/lab2CA.srcs/sources_1/new/ControlUnit.v
@@ -7,7 +7,7 @@ module ControlUnit(
output reg [2:0] FU,
output reg [1:0] bank,
output reg addi, mem, dataMemEn, RegEn, halt, link, js, compare0, compare1
- );
+ );
always @(instIn, functBit)
begin
diff --git a/lab2CA.xpr b/lab2CA.xpr
index 2952301..f36c02f 100644
--- a/lab2CA.xpr
+++ b/lab2CA.xpr
@@ -3,7 +3,7 @@
-
+
@@ -31,7 +31,7 @@
-
+