-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathProcessor.v
More file actions
30 lines (27 loc) · 859 Bytes
/
Copy pathProcessor.v
File metadata and controls
30 lines (27 loc) · 859 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
module Processor(input clk, reset);
wire [18:0] instruction;
wire mem_write, reg_write, push, pop, alu_use_carry;
wire [2:0] alu_op;
wire [1:0] pc_mux, reg_write_mux;
wire alu_in_mux,reg_B_mux, select_c, select_z, write_c, write_z;
wire C, Z;
Controller cntrl(clk ,reset, C, Z, instruction,
mem_write, reg_write, push, pop, alu_use_carry,
alu_op, pc_mux,
reg_write_mux, alu_in_mux,reg_B_mux,
select_c, select_z, write_c, write_z);
DataPath dp(clk, reset,
mem_write, reg_write, push, pop, alu_use_carry, alu_op,
pc_mux, reg_write_mux, alu_in_mux,reg_B_mux,
select_c, select_z, write_c, write_z,
C, Z, instruction);
endmodule
module test_processor();
reg clk = 1'b0, reset = 1'b1;
Processor prc(clk, reset);
initial repeat(1000) #5 clk = ~clk;
initial begin
#6 reset = 1'b0;
#2500 $stop;
end
endmodule