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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [orpsocv2/] [rtl/] [verilog/] [or1200/] [or1200_cpu.v] - Diff between revs 499 and 502

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

Rev 499 Rev 502
Line 269... Line 269...
wire                            flagforw_fpu;
wire                            flagforw_fpu;
wire                            flag_we_fpu;
wire                            flag_we_fpu;
wire                            carry;
wire                            carry;
wire                            cyforw;
wire                            cyforw;
wire                            cy_we_alu;
wire                            cy_we_alu;
 
wire                            ovforw;
 
wire                            ov_we_alu;
 
wire                            ovforw_mult_mac;
 
wire                            ov_we_mult_mac;
wire                            cy_we_rf;
wire                            cy_we_rf;
wire                            lsu_stall;
wire                            lsu_stall;
wire                            epcr_we;
wire                            epcr_we;
wire                            eear_we;
wire                            eear_we;
wire                            esr_we;
wire                            esr_we;
Line 290... Line 294...
wire                            except_started;
wire                            except_started;
wire                            fpu_except_started;
wire                            fpu_except_started;
wire    [31:0]                   wb_insn;
wire    [31:0]                   wb_insn;
wire                            sig_syscall;
wire                            sig_syscall;
wire                            sig_trap;
wire                            sig_trap;
 
wire                            sig_range;
wire                            sig_fp;
wire                            sig_fp;
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    [31:0]                  spr_dat_npc;
wire    [31:0]                  spr_dat_npc;
wire    [31:0]                   spr_dat_ppc;
wire    [31:0]                   spr_dat_ppc;
Line 395... Line 400...
//
//
//  Flag for any MTSPR instructions, that must block execution, to indicate done
//  Flag for any MTSPR instructions, that must block execution, to indicate done
//
//
assign mtspr_done = mtspr_dc_done;
assign mtspr_done = mtspr_dc_done;
 
 
 
//
 
// Range exception
 
//
 
assign sig_range = sr[`OR1200_SR_OV];
 
 
 
 
 
 
//
//
// Instantiation of instruction fetch block
// Instantiation of instruction fetch block
//
//
or1200_genpc or1200_genpc(
or1200_genpc or1200_genpc(
Line 589... Line 600...
        .result(alu_dataout),
        .result(alu_dataout),
        .flagforw(flagforw_alu),
        .flagforw(flagforw_alu),
        .flag_we(flag_we_alu),
        .flag_we(flag_we_alu),
        .cyforw(cyforw),
        .cyforw(cyforw),
        .cy_we(cy_we_alu),
        .cy_we(cy_we_alu),
 
        .ovforw(ovforw),
 
        .ov_we(ov_we_alu),
        .flag(flag),
        .flag(flag),
        .carry(carry)
        .carry(carry)
);
);
 
 
 
 
Line 639... Line 652...
        .a(operand_a),
        .a(operand_a),
        .b(operand_b),
        .b(operand_b),
        .mac_op(mac_op),
        .mac_op(mac_op),
        .alu_op(alu_op),
        .alu_op(alu_op),
        .result(mult_mac_result),
        .result(mult_mac_result),
 
        .ovforw(ovforw_mult_mac),
 
        .ov_we(ov_we_mult_mac),
        .mult_mac_stall(mult_mac_stall),
        .mult_mac_stall(mult_mac_stall),
        .spr_cs(spr_cs[`OR1200_SPR_GROUP_MAC]),
        .spr_cs(spr_cs[`OR1200_SPR_GROUP_MAC]),
        .spr_write(spr_we),
        .spr_write(spr_we),
        .spr_addr(spr_addr),
        .spr_addr(spr_addr),
        .spr_dat_i(spr_dat_cpu),
        .spr_dat_i(spr_dat_cpu),
Line 664... Line 679...
        .flag_we(flag_we),
        .flag_we(flag_we),
        .flag(flag),
        .flag(flag),
        .cyforw(cyforw),
        .cyforw(cyforw),
        .cy_we(cy_we_rf),
        .cy_we(cy_we_rf),
        .carry(carry),
        .carry(carry),
 
        .ovforw(ovforw | ovforw_mult_mac),
 
        .ov_we(ov_we_alu | ov_we_mult_mac),
        .to_wbmux(sprs_dataout),
        .to_wbmux(sprs_dataout),
 
 
        .du_addr(du_addr),
        .du_addr(du_addr),
        .du_dat_du(du_dat_du),
        .du_dat_du(du_dat_du),
        .du_read(du_read),
        .du_read(du_read),
Line 801... Line 818...
        .rst(rst),
        .rst(rst),
        .sig_ibuserr(except_ibuserr),
        .sig_ibuserr(except_ibuserr),
        .sig_dbuserr(except_dbuserr),
        .sig_dbuserr(except_dbuserr),
        .sig_illegal(except_illegal),
        .sig_illegal(except_illegal),
        .sig_align(except_align),
        .sig_align(except_align),
        .sig_range(1'b0),
        .sig_range(sig_range),
        .sig_dtlbmiss(except_dtlbmiss),
        .sig_dtlbmiss(except_dtlbmiss),
        .sig_dmmufault(except_dmmufault),
        .sig_dmmufault(except_dmmufault),
        .sig_int(sig_int),
        .sig_int(sig_int),
        .sig_syscall(sig_syscall),
        .sig_syscall(sig_syscall),
        .sig_trap(sig_trap),
        .sig_trap(sig_trap),

powered by: WebSVN 2.1.0

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