Skip to content

Commit 4e981ea

Browse files
fix some inconsistent naming
1 parent 72e7865 commit 4e981ea

File tree

5 files changed

+113
-113
lines changed

5 files changed

+113
-113
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ class MainTemplateSpec extends AnyFreeSpec with Matchers with ChiselSim {
9797
simulate(new Main()) { dut =>
9898
// 1. Initialize registers (example: write value to x1)
9999
dut.io.write_enable.poke(true.B)
100-
dut.io.write_addr.poke(1.U)
100+
dut.io.write_address.poke(1.U)
101101
dut.io.in.poke(42.U)
102102
dut.clock.step(1)
103103
dut.io.write_enable.poke(false.B)
@@ -111,8 +111,8 @@ class MainTemplateSpec extends AnyFreeSpec with Matchers with ChiselSim {
111111
112112
// 4. Read back a register value to verify the result
113113
// Always use the C port of the register file for reading.
114-
dut.io.read_addr_C.poke(1.U) // Which register to read
115-
dut.io.out_C.expect(42.U) // Expected result (example)
114+
dut.io.read_address_c.poke(1.U) // Which register to read
115+
dut.io.out_c.expect(42.U) // Expected result (example)
116116
}
117117
}
118118
}

disabled-tests/RegistersSpec.scala

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -12,79 +12,79 @@ class RegistersSpec extends AnyFreeSpec with Matchers with ChiselSim {
1212
simulate(new Registers()) { dut =>
1313
// Write to x1
1414
dut.io.write_enable.poke(true.B)
15-
dut.io.write_addr.poke(1.U)
15+
dut.io.write_address.poke(1.U)
1616
dut.io.in.poke(123.U(32.W))
1717
dut.clock.step(1)
1818

1919
// Write to x2
20-
dut.io.write_addr.poke(2.U)
20+
dut.io.write_address.poke(2.U)
2121
dut.io.in.poke(456.U(32.W))
2222
dut.clock.step(1)
2323

2424
// Read both registers
25-
dut.io.read_addr_A.poke(1.U)
26-
dut.io.read_addr_B.poke(2.U)
27-
dut.io.out_A.expect(123.U(32.W))
28-
dut.io.out_B.expect(456.U(32.W))
25+
dut.io.read_address_a.poke(1.U)
26+
dut.io.read_address_b.poke(2.U)
27+
dut.io.out_a.expect(123.U(32.W))
28+
dut.io.out_b.expect(456.U(32.W))
2929
}
3030
}
3131

3232
"register x0 should always read as 0 and ignore writes" in {
3333
simulate(new Registers()) { dut =>
3434
// Attempt to write to x0
3535
dut.io.write_enable.poke(true.B)
36-
dut.io.write_addr.poke(0.U)
36+
dut.io.write_address.poke(0.U)
3737
dut.io.in.poke(999.U(32.W))
3838
dut.clock.step(1)
3939

4040
// Read back x0
41-
dut.io.read_addr_A.poke(0.U)
42-
dut.io.read_addr_B.poke(0.U)
43-
dut.io.out_A.expect(0.U(32.W))
44-
dut.io.out_B.expect(0.U(32.W))
41+
dut.io.read_address_a.poke(0.U)
42+
dut.io.read_address_b.poke(0.U)
43+
dut.io.out_a.expect(0.U(32.W))
44+
dut.io.out_b.expect(0.U(32.W))
4545
}
4646
}
4747

4848
"registers should update only when write_enable is true" in {
4949
simulate(new Registers()) { dut =>
5050
// Disable writing
5151
dut.io.write_enable.poke(false.B)
52-
dut.io.write_addr.poke(3.U)
52+
dut.io.write_address.poke(3.U)
5353
dut.io.in.poke(111.U(32.W))
5454
dut.clock.step(1)
5555

5656
// Read back should still be 0
57-
dut.io.read_addr_A.poke(3.U)
58-
dut.io.out_A.expect(0.U(32.W))
57+
dut.io.read_address_a.poke(3.U)
58+
dut.io.out_a.expect(0.U(32.W))
5959
}
6060
}
6161

6262
"registers should correctly handle multiple writes and reads" in {
6363
simulate(new Registers()) { dut =>
6464
// Write multiple registers
6565
dut.io.write_enable.poke(true.B)
66-
dut.io.write_addr.poke(4.U)
66+
dut.io.write_address.poke(4.U)
6767
dut.io.in.poke(10.U(32.W))
6868
dut.clock.step(1)
6969

70-
dut.io.write_addr.poke(5.U)
70+
dut.io.write_address.poke(5.U)
7171
dut.io.in.poke(20.U(32.W))
7272
dut.clock.step(1)
7373

74-
dut.io.write_addr.poke(6.U)
74+
dut.io.write_address.poke(6.U)
7575
dut.io.in.poke(30.U(32.W))
7676
dut.clock.step(1)
7777

7878
// Read them back
79-
dut.io.read_addr_A.poke(4.U)
80-
dut.io.read_addr_B.poke(5.U)
81-
dut.io.out_A.expect(10.U(32.W))
82-
dut.io.out_B.expect(20.U(32.W))
79+
dut.io.read_address_a.poke(4.U)
80+
dut.io.read_address_b.poke(5.U)
81+
dut.io.out_a.expect(10.U(32.W))
82+
dut.io.out_b.expect(20.U(32.W))
8383

84-
dut.io.read_addr_A.poke(6.U)
85-
dut.io.read_addr_B.poke(4.U)
86-
dut.io.out_A.expect(30.U(32.W))
87-
dut.io.out_B.expect(10.U(32.W))
84+
dut.io.read_address_a.poke(6.U)
85+
dut.io.read_address_b.poke(4.U)
86+
dut.io.out_a.expect(30.U(32.W))
87+
dut.io.out_b.expect(10.U(32.W))
8888
}
8989
}
9090
}

src/main/scala/RISCV/Main.scala

Lines changed: 64 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,18 @@ class Main() extends Module {
1111
val execute = Input(Bool());
1212

1313
val debug_write = Input(Bool());
14-
val debug_write_address = Input(UInt(32.W));
14+
val debug_write_addressess = Input(UInt(32.W));
1515
val debug_write_data = Input(UInt(32.W));
1616

1717
// Debugging variables for tests
18-
val out_A = Output(UInt(32.W))
19-
val out_B = Output(UInt(32.W))
20-
val out_C = Output(UInt(32.W)) // Testing output port
21-
val read_addr_A = Input(UInt(5.W))
22-
val read_addr_B = Input(UInt(5.W))
23-
val read_addr_C = Input(UInt(5.W)) // Testing address port
18+
val out_a = Output(UInt(32.W))
19+
val out_b = Output(UInt(32.W))
20+
val out_c = Output(UInt(32.W)) // Testing output port
21+
val read_address_a = Input(UInt(5.W))
22+
val read_address_b = Input(UInt(5.W))
23+
val read_address_c = Input(UInt(5.W)) // Testing address port
2424
val write_enable = Input(Bool())
25-
val write_addr = Input(UInt(5.W))
25+
val write_address = Input(UInt(5.W))
2626
val in = Input(UInt(32.W))
2727
})
2828

@@ -31,26 +31,26 @@ class Main() extends Module {
3131
val memory = SRAM(1024, UInt(32.W), 2, 1, 0);
3232

3333
// Set up register file
34-
val regFile = Module(new Registers())
34+
val registers = Module(new Registers())
3535
// Default connections for register file inputs
3636

37-
regFile.io.write_enable := false.B
38-
regFile.io.write_addr := 0.U(5.W)
39-
regFile.io.read_addr_A := 0.U(5.W)
40-
regFile.io.read_addr_B := 0.U(5.W)
41-
regFile.io.read_addr_C := 0.U(5.W)
42-
regFile.io.in := 0.U(32.W)
37+
registers.io.write_enable := false.B
38+
registers.io.write_address := 0.U(5.W)
39+
registers.io.read_address_a := 0.U(5.W)
40+
registers.io.read_address_b := 0.U(5.W)
41+
registers.io.read_address_c := 0.U(5.W)
42+
registers.io.in := 0.U(32.W)
4343

4444
// Set up testing register outputs
45-
io.out_A := regFile.io.out_A
46-
io.out_B := regFile.io.out_B
47-
io.out_C := regFile.io.out_C
48-
regFile.io.read_addr_A := io.read_addr_A
49-
regFile.io.read_addr_B := io.read_addr_B
50-
regFile.io.read_addr_C := io.read_addr_C
51-
regFile.io.write_enable := io.write_enable
52-
regFile.io.write_addr := io.write_addr
53-
regFile.io.in := io.in
45+
io.out_a := registers.io.out_a
46+
io.out_b := registers.io.out_b
47+
io.out_c := registers.io.out_c
48+
registers.io.read_address_a := io.read_address_a
49+
registers.io.read_address_b := io.read_address_b
50+
registers.io.read_address_c := io.read_address_c
51+
registers.io.write_enable := io.write_enable
52+
registers.io.write_address := io.write_address
53+
registers.io.in := io.in
5454

5555
// Set up ALU
5656
val alu = Module(new ALU())
@@ -72,7 +72,7 @@ class Main() extends Module {
7272
memory.readPorts(1).address := 0.U;
7373

7474
memory.writePorts(0).enable := io.debug_write;
75-
memory.writePorts(0).address := io.debug_write_address;
75+
memory.writePorts(0).address := io.debug_write_addressess;
7676
memory.writePorts(0).data := io.debug_write_data;
7777

7878
val operation_buffer = RegInit(0.U(17.W));
@@ -86,8 +86,8 @@ class Main() extends Module {
8686
printf("Operation: %b\n", decoder.io.operation);
8787
printf("Program Pointer: %d\n", program_pointer);
8888
printf("Data: %b\n", memory.readPorts(0).data);
89-
printf("Register 1: %b\n", regFile.io.debug_1);
90-
printf("Register 2: %b\n", regFile.io.debug_2);
89+
printf("Register 1: %b\n", registers.io.debug_1);
90+
printf("Register 2: %b\n", registers.io.debug_2);
9191

9292
stage := stage + 1.U;
9393

@@ -100,34 +100,34 @@ class Main() extends Module {
100100
switch(decoder.io.operation) {
101101
// LW
102102
is("b010_0000011".U) {
103-
regFile.io.read_addr_A := decoder.io.rs1;
103+
registers.io.read_address_a := decoder.io.rs1;
104104

105105
memory.readPorts(1).enable := true.B;
106-
memory.readPorts(1).address := regFile.io.out_A + decoder.io.immediate;
106+
memory.readPorts(1).address := registers.io.out_a + decoder.io.immediate;
107107

108-
printf("[LW] Rs1: %d Immediate: %b\n", decoder.io.rs1, regFile.io.out_A + decoder.io.immediate);
108+
printf("[LW] Rs1: %d Immediate: %b\n", decoder.io.rs1, registers.io.out_a + decoder.io.immediate);
109109
}
110110

111111
// SW
112112
is("b010_0100011".U) {
113-
regFile.io.read_addr_A := decoder.io.rs1;
114-
regFile.io.read_addr_B := decoder.io.rs2;
113+
registers.io.read_address_a := decoder.io.rs1;
114+
registers.io.read_address_b := decoder.io.rs2;
115115

116116
memory.writePorts(0).enable := true.B;
117-
memory.writePorts(0).address := regFile.io.out_A + decoder.io.immediate;
118-
memory.writePorts(0).data := regFile.io.out_B;
117+
memory.writePorts(0).address := registers.io.out_a + decoder.io.immediate;
118+
memory.writePorts(0).data := registers.io.out_b;
119119

120120
program_pointer := program_pointer + 1.U;
121121
stage := 0.U;
122122

123-
printf("[SW] Rs1: %d Rs2: %d Immediate: %b\n", decoder.io.rs1, decoder.io.rs2, regFile.io.out_A + decoder.io.immediate);
123+
printf("[SW] Rs1: %d Rs2: %d Immediate: %b\n", decoder.io.rs1, decoder.io.rs2, registers.io.out_a + decoder.io.immediate);
124124
}
125125

126126
// LUI
127127
is("b0110111".U) {
128-
regFile.io.write_addr := decoder.io.rd;
129-
regFile.io.write_enable := true.B;
130-
regFile.io.in := decoder.io.immediate;
128+
registers.io.write_address := decoder.io.rd;
129+
registers.io.write_enable := true.B;
130+
registers.io.in := decoder.io.immediate;
131131

132132
program_pointer := program_pointer + 1.U;
133133
stage := 0.U;
@@ -137,9 +137,9 @@ class Main() extends Module {
137137

138138
// AUIPC
139139
is("b0010111".U) {
140-
regFile.io.write_addr := decoder.io.rd;
141-
regFile.io.write_enable := true.B;
142-
regFile.io.in := program_pointer + decoder.io.immediate;
140+
registers.io.write_address := decoder.io.rd;
141+
registers.io.write_enable := true.B;
142+
registers.io.in := program_pointer + decoder.io.immediate;
143143

144144
program_pointer := program_pointer + 1.U;
145145
stage := 0.U;
@@ -149,11 +149,11 @@ class Main() extends Module {
149149

150150
// ADDI
151151
is("b000_0010011".U) {
152-
regFile.io.read_addr_A := decoder.io.rs1;
152+
registers.io.read_address_a := decoder.io.rs1;
153153

154-
regFile.io.write_addr := decoder.io.rd;
155-
regFile.io.write_enable := true.B;
156-
regFile.io.in := regFile.io.out_A + decoder.io.immediate;
154+
registers.io.write_address := decoder.io.rd;
155+
registers.io.write_enable := true.B;
156+
registers.io.in := registers.io.out_a + decoder.io.immediate;
157157

158158
program_pointer := program_pointer + 1.U;
159159
stage := 0.U;
@@ -163,15 +163,15 @@ class Main() extends Module {
163163

164164
// SLTI
165165
is("b010_0010011".U) {
166-
regFile.io.read_addr_A := decoder.io.rs1;
166+
registers.io.read_address_a := decoder.io.rs1;
167167

168-
regFile.io.write_addr := decoder.io.rd;
169-
regFile.io.write_enable := true.B;
168+
registers.io.write_address := decoder.io.rd;
169+
registers.io.write_enable := true.B;
170170

171-
when(regFile.io.out_A.asSInt < decoder.io.immediate.asSInt) {
172-
regFile.io.in := 1.U;
171+
when(registers.io.out_a.asSInt < decoder.io.immediate.asSInt) {
172+
registers.io.in := 1.U;
173173
}.otherwise {
174-
regFile.io.in := 0.U;
174+
registers.io.in := 0.U;
175175
}
176176

177177
program_pointer := program_pointer + 1.U;
@@ -182,15 +182,15 @@ class Main() extends Module {
182182

183183
// SLTIU
184184
is("b011_0010011".U) {
185-
regFile.io.read_addr_A := decoder.io.rs1;
185+
registers.io.read_address_a := decoder.io.rs1;
186186

187-
regFile.io.write_addr := decoder.io.rd;
188-
regFile.io.write_enable := true.B;
187+
registers.io.write_address := decoder.io.rd;
188+
registers.io.write_enable := true.B;
189189

190-
when(regFile.io.out_A < decoder.io.immediate) {
191-
regFile.io.in := 1.U;
190+
when(registers.io.out_a < decoder.io.immediate) {
191+
registers.io.in := 1.U;
192192
}.otherwise {
193-
regFile.io.in := 0.U;
193+
registers.io.in := 0.U;
194194
}
195195

196196
program_pointer := program_pointer + 1.U;
@@ -201,11 +201,11 @@ class Main() extends Module {
201201

202202
// XORI
203203
is("b100_0010011".U) {
204-
regFile.io.read_addr_A := decoder.io.rs1;
204+
registers.io.read_address_a := decoder.io.rs1;
205205

206-
regFile.io.write_addr := decoder.io.rd;
207-
regFile.io.write_enable := true.B;
208-
regFile.io.in := regFile.io.out_A ^ decoder.io.immediate;
206+
registers.io.write_address := decoder.io.rd;
207+
registers.io.write_enable := true.B;
208+
registers.io.in := registers.io.out_a ^ decoder.io.immediate;
209209

210210
program_pointer := program_pointer + 1.U;
211211
stage := 0.U;
@@ -220,9 +220,9 @@ class Main() extends Module {
220220

221221
switch(operation_buffer) {
222222
is("b010_00000_11".U) {
223-
regFile.io.write_addr := rd_buffer;
224-
regFile.io.write_enable := true.B;
225-
regFile.io.in := memory.readPorts(1).data;
223+
registers.io.write_address := rd_buffer;
224+
registers.io.write_enable := true.B;
225+
registers.io.in := memory.readPorts(1).data;
226226

227227
program_pointer := program_pointer + 1.U;
228228

0 commit comments

Comments
 (0)