OpenCores
URL https://opencores.org/ocsvn/eco32/eco32/trunk

Subversion Repositories eco32

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /eco32/trunk/fpga
    from Rev 129 to Rev 181
    Reverse comparison

Rev 129 → Rev 181

/src/cpu/cpu.v
99,6 → 99,9
wire [31:0] mmu_bad_addr; // special register 4 (mmu bad addr) contents
wire mmu_bad_addr_we; // mmu bad addr write enable
wire [31:0] mmu_bad_addr_new; // new mmu bad addr contents
wire [31:0] mmu_bad_accs; // special register 5 (mmu bad accs) contents
wire mmu_bad_accs_we; // mmu bad accs write enable
wire [31:0] mmu_bad_accs_new; // new mmu bad accs contents
 
// mmu & tlb
wire tlb_kmissed; // page not found in tlb, MSB of addr is 1
181,8 → 184,11
tlb_index, tlb_index_we, tlb_index_new,
tlb_entry_hi, tlb_entry_hi_we, tlb_entry_hi_new,
tlb_entry_lo, tlb_entry_lo_we, tlb_entry_lo_new,
mmu_bad_addr, mmu_bad_addr_we, mmu_bad_addr_new);
mmu_bad_addr, mmu_bad_addr_we, mmu_bad_addr_new,
mmu_bad_accs, mmu_bad_accs_we, mmu_bad_accs_new);
assign mmu_bad_addr_new = virt_addr;
assign mmu_bad_accs_we = mmu_bad_addr_we;
assign mmu_bad_accs_new = { 29'b0, bus_wr, bus_size[1:0] };
 
// ctrl
ctrl ctrl1(clk, reset,
905,8 → 911,8
mmu_fnc = (exc_prv_addr | exc_ill_addr) ? 3'b000 : 3'b001;
mdor_we = 1'b0;
bus_en = 1'b0;
bus_wr = 1'bx;
bus_size = 2'b10; // enable illegal address detection
bus_wr = 1'b0; // get bad_accs right in case of exc
bus_size = 2'b10; // enable illegal address detection
mdir_we = 1'b0;
mdir_sx = 1'bx;
ir_we = 1'b0;
1250,7 → 1256,7
mmu_fnc = (exc_prv_addr | exc_ill_addr) ? 3'b000 : 3'b001;
mdor_we = 1'b0;
bus_en = 1'b0;
bus_wr = 1'bx;
bus_wr = 1'b0; // get bad_accs right in case of exc
bus_size = ldst_size; // enable illegal address detection
mdir_we = 1'b0;
mdir_sx = 1'bx;
1312,7 → 1318,7
mmu_fnc = (exc_prv_addr | exc_ill_addr) ? 3'b000 : 3'b001;
mdor_we = 1'b0;
bus_en = 1'b0;
bus_wr = 1'bx;
bus_wr = 1'b1; // get bad_accs right in case of exc
bus_size = ldst_size; // enable illegal address detection
mdir_we = 1'b0;
mdir_sx = 1'bx;
2455,7 → 2461,8
tlb_index, tlb_index_we, tlb_index_new,
tlb_entry_hi, tlb_entry_hi_we, tlb_entry_hi_new,
tlb_entry_lo, tlb_entry_lo_we, tlb_entry_lo_new,
mmu_bad_addr, mmu_bad_addr_we, mmu_bad_addr_new);
mmu_bad_addr, mmu_bad_addr_we, mmu_bad_addr_new,
mmu_bad_accs, mmu_bad_accs_we, mmu_bad_accs_new);
input clk;
input reset;
input [2:0] rn;
2477,6 → 2484,9
output [31:0] mmu_bad_addr;
input mmu_bad_addr_we;
input [31:0] mmu_bad_addr_new;
output [31:0] mmu_bad_accs;
input mmu_bad_accs_we;
input [31:0] mmu_bad_accs_new;
 
// rn = 000 register = PSW
// 001 TLB index
2483,7 → 2493,7
// 010 TLB entry high
// 011 TLB entry low
// 100 MMU bad address
// 101 - not used -
// 101 MMU bad access
// 110 - not used -
// 111 - not used -
 
2495,6 → 2505,7
assign tlb_entry_hi = sr[2];
assign tlb_entry_lo = sr[3];
assign mmu_bad_addr = sr[4];
assign mmu_bad_accs = sr[5];
 
always @(posedge clk) begin
if (reset == 1) begin
2518,6 → 2529,9
if (mmu_bad_addr_we) begin
sr[4] <= mmu_bad_addr_new;
end
if (mmu_bad_accs_we) begin
sr[5] <= mmu_bad_accs_new;
end
end
end
end
/xsa-xst-3/eco32.bit Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream
xsa-xst-3/eco32.bit Property changes : Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: Makefile =================================================================== --- Makefile (revision 129) +++ Makefile (revision 181) @@ -2,16 +2,25 @@ # Makefile for FPGA implementations of ECO32 # +BUILD = ../build + .PHONY: all install clean -all: +all: xsa-xst-3/eco32.bit -install: +install: xsa-xst-3/eco32.bit + $(BUILD)/bin/bit2exo 0x180000 \ + xsa-xst-3/eco32.bit xsa-xst-3/eco32.exo + mkdir -p $(BUILD)/eco32/xsa-xst-3 + cp xsa-xst-3/eco32.bit $(BUILD)/eco32/xsa-xst-3 + cp xsa-xst-3/eco32.exo $(BUILD)/eco32/xsa-xst-3 clean: mv xsa-xst-3/eco32.ucf . mv xsa-xst-3/eco32.xise . + mv xsa-xst-3/eco32.bit . rm -rf xsa-xst-3/* mv eco32.ucf xsa-xst-3 mv eco32.xise xsa-xst-3 + mv eco32.bit xsa-xst-3 rm -f *~

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.