LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Advertise
  • Mirrors
  • Logos
  • Contact us
  • Find Resources
  • Job Opportunity
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Cvs-checkins > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: cvs at opencores.org<cvs@o...>
    Date: Sat Jan 19 16:57:36 CET 2008
    Subject: [cvs-checkins] MODIFIED: aemb ...
    Top
    Date: 00/08/01 19:16:57

    Modified: aemb/rtl/verilog aeMB_xecu.v
    Log:
    Fix MTS during interrupt vectoring bug (reported by M. Ettus).


    Revision Changes Path
    1.11 aemb/rtl/verilog/aeMB_xecu.v

    http://www.opencores.org/cvsweb.shtml/aemb/rtl/verilog/aeMB_xecu.v.diff?r1=1.10&r2=1.11

    (In the diff below, changes in quantity of whitespace are not shown.)

    Index: aeMB_xecu.v
    ===================================================================
    RCS file: /cvsroot/sybreon/aemb/rtl/verilog/aeMB_xecu.v,v
    retrieving revision 1.10
    retrieving revision 1.11
    diff -u -b -r1.10 -r1.11
    --- aeMB_xecu.v 25 Dec 2007 22:15:09 -0000 1.10
    +++ aeMB_xecu.v 19 Jan 2008 15:57:36 -0000 1.11
    @@ -1,4 +1,4 @@
    -/* $Id: aeMB_xecu.v,v 1.10 2007/12/25 22:15:09 sybreon Exp $
    +/* $Id: aeMB_xecu.v,v 1.11 2008/01/19 15:57:36 sybreon Exp $
    **
    ** AEMB MAIN EXECUTION ALU
    ** Copyright (C) 2004-2007 Shawn Tan Ser Ngiap <shawn.tan@a...>
    @@ -255,7 +255,7 @@
    // --- MSR REGISTER -----------------

    // C
    - wire fMTS = (rOPC == 6'o45) & rIMM[14];
    + wire fMTS = (rOPC == 6'o45) & rIMM[14] & !fSKIP;
    wire fADDC = ({rOPC[5:4], rOPC[2]} == 3'o0);

    always @(/*AUTOSENSE*/fADDC or fMTS or fSKIP or rMSR_C or rMXALU
    @@ -272,11 +272,11 @@
    3'o4: xMSR_C <= rMSR_C;
    3'o5: xMSR_C <= rMSR_C;
    default: xMSR_C <= 1'hX;
    - endcase
    + endcase // case (rMXALU)

    // IE/BIP/BE
    - wire fRTID = (rOPC == 6'o55) & rRD[0];
    - wire fRTBD = (rOPC == 6'o55) & rRD[1];
    + wire fRTID = (rOPC == 6'o55) & rRD[0] & !fSKIP;
    + wire fRTBD = (rOPC == 6'o55) & rRD[1] & !fSKIP;
    wire fBRK = ((rOPC == 6'o56) | (rOPC == 6'o66)) & (rRA == 5'hC);
    wire fINT = ((rOPC == 6'o56) | (rOPC == 6'o66)) & (rRA == 5'hE);

    @@ -361,7 +361,7 @@
    rMSR_IE <= 1'h0;
    rRESULT <= 32'h0;
    // End of automatics
    - end else if (gena) begin
    + end else if (gena) begin // if (grst)
    rRESULT <= #1 xRESULT;
    rDWBSEL <= #1 xDWBSEL;
    rMSR_C <= #1 xMSR_C;
    @@ -375,6 +375,9 @@

    /*
    $Log: aeMB_xecu.v,v $
    + Revision 1.11 2008/01/19 15:57:36 sybreon
    + Fix MTS during interrupt vectoring bug (reported by M. Ettus).
    +
    Revision 1.10 2007/12/25 22:15:09 sybreon
    Stalls pipeline on MUL/BSF instructions results in minor speed improvements.




     
    Copyright (c) 1999 OPENCORES.ORG. All rights reserved.