verilog-apple-one/rtl/cpu/arlet_6502.v

47 lines
831 B
Coq
Raw Normal View History

2018-01-27 06:00:33 +00:00
module arlet_6502(
input clk,
input enable,
input reset,
output reg [15:0] ab,
input [7:0] dbi,
output reg [7:0] dbo,
output reg we,
2018-01-27 11:13:52 +00:00
input irq_n,
input nmi_n,
2018-01-27 06:00:33 +00:00
input ready
);
wire [7:0] dbo_c;
wire [15:0] ab_c;
wire we_c;
cpu arlet_cpu (
.clk(clk),
.reset(reset),
.AB(ab_c),
.DI(dbi),
.DO(dbo_c),
.WE(we_c),
.IRQ(irq_n),
.NMI(nmi_n),
.RDY(ready)
);
2018-01-27 11:13:52 +00:00
always @(posedge clk or posedge reset)
2018-01-27 06:00:33 +00:00
begin
2018-01-27 11:13:52 +00:00
if (reset)
2018-01-27 06:00:33 +00:00
begin
2018-01-27 11:13:52 +00:00
ab <= 16'd0;
dbo <= 8'd0;
we <= 1'b0;
2018-01-27 06:00:33 +00:00
end
2018-01-27 11:13:52 +00:00
else
if (enable)
begin
ab <= ab_c;
dbo <= dbo_c;
we <= we_c;
end
2018-01-27 06:00:33 +00:00
end
endmodule