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

Subversion Repositories or1k

[/] [or1k/] [branches/] [mp3_stable/] [or1200/] [rtl/] [verilog/] [cpu.v] - Diff between revs 209 and 210

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 209 Rev 210
Line 71... Line 71...
        // Insn interface
        // Insn interface
        ic_insn, ic_addr, ic_stall, ic_fetchop, ic_en,
        ic_insn, ic_addr, ic_stall, ic_fetchop, ic_en,
        immu_en, immuexcept_miss, immuexcept_fault,
        immu_en, immuexcept_miss, immuexcept_fault,
 
 
        // Debug unit
        // Debug unit
        du_stall, du_addr, du_dat_du, du_read, du_write,
        du_stall, du_addr, du_dat_du, du_read, du_write, du_except,
 
 
        // Data interface
        // Data interface
        dclsu_stall, dclsu_unstall, dclsu_addr, dclsu_datain, dclsu_dataout, dclsu_lsuop, dc_en,
        dclsu_stall, dclsu_unstall, dclsu_addr, dclsu_datain, dclsu_dataout, dclsu_lsuop, dc_en,
        dmmu_en, dmmuexcept_miss, dmmuexcept_fault,
        dmmu_en, dmmuexcept_miss, dmmuexcept_fault,
 
 
Line 122... Line 122...
input                           du_stall;
input                           du_stall;
input   [dw-1:0]         du_addr;
input   [dw-1:0]         du_addr;
input   [dw-1:0]         du_dat_du;
input   [dw-1:0]         du_dat_du;
input                           du_read;
input                           du_read;
input                           du_write;
input                           du_write;
 
output  [`EXCEPT_WIDTH-1:0]      du_except;
 
 
//
//
// Data (DC) interface
// Data (DC) interface
//
//
input                           dclsu_stall;
input                           dclsu_stall;
Line 217... Line 218...
wire                            except_started;
wire                            except_started;
wire    [31:0]                   wb_pc;
wire    [31:0]                   wb_pc;
wire    [31:0]                   wb_insn;
wire    [31:0]                   wb_insn;
wire    [15:0]                   spr_addrimm;
wire    [15:0]                   spr_addrimm;
wire                            sig_syscall;
wire                            sig_syscall;
 
wire                            sig_trap;
wire    [31:0]                   spr_dat_cfgr;
wire    [31:0]                   spr_dat_cfgr;
wire    [31:0]                   spr_dat_rf;
wire    [31:0]                   spr_dat_rf;
wire                            force_dslot_fetch;
wire                            force_dslot_fetch;
wire                            if_stall;
wire                            if_stall;
wire                            id_macrc_op;
wire                            id_macrc_op;
wire                            ex_macrc_op;
wire                            ex_macrc_op;
wire    [31:0]                   mult_mac_result;
wire    [31:0]                   mult_mac_result;
wire                            mac_stall;
wire                            mac_stall;
 
 
//
//
 
// Exception type going to debug unit
 
//
 
assign du_except = except_type;
 
 
 
//
// Data cache enable
// Data cache enable
//
//
 
//assign dc_en = 1'b1;
assign dc_en = sr[`SR_DCE];
assign dc_en = sr[`SR_DCE];
 
 
//
//
// Instruction cache enable
// Instruction cache enable
//
//
Line 258... Line 266...
// Instantiation of exception block
// Instantiation of exception block
//
//
except except(
except except(
        .clk(clk),
        .clk(clk),
        .rst(rst),
        .rst(rst),
 
        .sig_buserr(1'b0),
 
        .sig_illegal(1'b0),
 
        .sig_align(1'b0),
 
        .sig_range(1'b0),
        .sig_dtlbmiss(dmmuexcept_miss),
        .sig_dtlbmiss(dmmuexcept_miss),
        .sig_dmmufault(dmmuexcept_fault),
        .sig_dmmufault(dmmuexcept_fault),
        .sig_inthigh(int_high),
        .sig_inthigh(int_high),
        .sig_syscall(sig_syscall),
        .sig_syscall(sig_syscall),
 
        .sig_trap(sig_trap),
        .sig_itlbmiss(immuexcept_miss),
        .sig_itlbmiss(immuexcept_miss),
        .sig_immufault(immuexcept_fault),
        .sig_immufault(immuexcept_fault),
        .sig_intlow(int_low),
        .sig_intlow(int_low),
        .branch_taken(branch_taken),
        .branch_taken(branch_taken),
        .id_freeze(id_freeze),
        .id_freeze(id_freeze),
Line 347... Line 360...
        .lsu_op(lsu_op),
        .lsu_op(lsu_op),
        .multicycle(multicycle),
        .multicycle(multicycle),
        .spr_addrimm(spr_addrimm),
        .spr_addrimm(spr_addrimm),
        .wbforw_valid(wbforw_valid),
        .wbforw_valid(wbforw_valid),
        .sig_syscall(sig_syscall),
        .sig_syscall(sig_syscall),
 
        .sig_trap(sig_trap),
        .force_dslot_fetch(force_dslot_fetch),
        .force_dslot_fetch(force_dslot_fetch),
        .id_macrc_op(id_macrc_op),
        .id_macrc_op(id_macrc_op),
        .ex_macrc_op(ex_macrc_op)
        .ex_macrc_op(ex_macrc_op)
);
);
 
 

powered by: WebSVN 2.1.0

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