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

Subversion Repositories m32632

[/] [m32632/] [trunk/] [rtl/] [DATENPFAD.v] - Diff between revs 9 and 11

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

Rev 9 Rev 11
Line 33... Line 33...
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
//
//      Modules contained in this file:
//      Modules contained in this file:
//      DATENPFAD       the data path of M32632
//      DATENPFAD       the data path of M32632
//
//
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
 
module DATENPFAD( BCLK, BRESET, WREN, IO_READY, LD_DIN, LD_IMME, WR_REG, IC_USER, ACC_FELD, ACC_STAT
module DATENPFAD( BCLK, BRESET, WREN, IO_READY, LD_DIN, LD_IMME, WR_REG, IC_USER, ACC_FELD, ACC_STAT, DIN, DISP, IC_TEX,
                                  IMME_Q, INFO_AU, LD_OUT, DETOIP, MMU_UPDATE, OPER, PC_ARCHI, PC_ICACHE, RDAA, RDAB, START, WMA
                                  IMME_Q, INFO_AU, LD_OUT, DETOIP, MMU_UPDATE, OPER, PC_ARCHI, PC_ICACHE, RDAA, RDAB, START, WMASKE,
                                  WRADR, DONE, Y_INIT, WRITE_OUT, READ_OUT, ZTEST, RMW, ACC_DONE, REG_OUT, PTB_SEL, PTB_WR, ACB_
                                  WRADR, DONE, Y_INIT, WRITE_OUT, READ_OUT, ZTEST, RMW, ACC_DONE, REG_OUT, PTB_SEL, PTB_WR, ACB_ZERO,
                                  ABORT, SAVE_PC, CFG, CINV, DP_Q, IVAR, MCR, PACKET, PC_NEW, PSR, SIZE, STRING, TRAPS, VADR, RW
                                  ABORT, SAVE_PC, CFG, CINV, DP_Q, IVAR, MCR, PACKET, PC_NEW, PSR, SIZE, STRING, TRAPS, VADR, RWVFLAG,
                                  DBG_HIT, DBG_IN, COP_GO, COP_OP, COP_IN, COP_DONE, COP_OUT);
                                  DBG_HIT, DBG_IN, COP_GO, COP_OP, COP_IN, COP_DONE, COP_OUT);
 
 
input                   BCLK;
input                   BCLK;
input                   BRESET;
input                   BRESET;
input                   WREN;           // write enable of the register file
input                   WREN;           // write enable of the register file
Line 169... Line 169...
 
 
always @(posedge BCLK) if (LD_DIN) OUT_I <= LD_IMME ? IMME_Q : DIN;
always @(posedge BCLK) if (LD_DIN) OUT_I <= LD_IMME ? IMME_Q : DIN;
 
 
always @(posedge BCLK) if (RDAA[7]) BYDIN <= ERGEBNIS;
always @(posedge BCLK) if (RDAA[7]) BYDIN <= ERGEBNIS;
 
 
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Register Set 1 => SRC1
// Register Set 1 => SRC1
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
REGISTER        REG_SET_A(
REGISTER        REG_SET_A(
        .BCLK(BCLK),
        .BCLK(BCLK),
        .ENWR(ENWR),
        .ENWR(ENWR),
        .DOWR(DOWR),
        .DOWR(DOWR),
        .DIN(ERGEBNIS),
        .DIN(ERGEBNIS),
Line 186... Line 186...
        .SELI(SELI_A),
        .SELI(SELI_A),
        .DOUT(OUT_A));
        .DOUT(OUT_A));
 
 
assign SRC1 = SELI_A ? OUT_I : OUT_A;
assign SRC1 = SELI_A ? OUT_I : OUT_A;
 
 
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Register Set 2 => SRC2
// Register Set 2 => SRC2
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
REGISTER        REG_SET_B(
REGISTER        REG_SET_B(
        .BCLK(BCLK),
        .BCLK(BCLK),
        .ENWR(ENWR),
        .ENWR(ENWR),
        .DOWR(DOWR),
        .DOWR(DOWR),
        .DIN(ERGEBNIS),
        .DIN(ERGEBNIS),
Line 220... Line 220...
 
 
BITMASK  BITM_U(
BITMASK  BITM_U(
        .AA(BMCODE),
        .AA(BMCODE),
        .DOUT(BMASKE));
        .DOUT(BMASKE));
 
 
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// The integer data path
// The integer data path
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
I_PFAD  GANZ_U(
I_PFAD  GANZ_U(
        .FL(FL),
        .FL(FL),
        .BRESET(BRESET),
        .BRESET(BRESET),
        .BCLK(BCLK),
        .BCLK(BCLK),
        .WREN(WREN),
        .WREN(WREN),
Line 256... Line 256...
        .STRING(STRING),
        .STRING(STRING),
        .OVF_BCD(OVF_BCD),
        .OVF_BCD(OVF_BCD),
        .DISP(DISP[4:0]),
        .DISP(DISP[4:0]),
        .RWVFLAG(RWVFLAG));
        .RWVFLAG(RWVFLAG));
 
 
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// The address unit
// The address unit
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ADDR_UNIT       ADDR_U(
ADDR_UNIT       ADDR_U(
        .BCLK(BCLK),
        .BCLK(BCLK),
        .BRESET(BRESET),
        .BRESET(BRESET),
        .IO_READY(IO_READY),
        .IO_READY(IO_READY),
        .READ(ACC_FELD[11]),
        .READ(ACC_FELD[11]),
Line 327... Line 327...
        .PCMATCH(DETOIP[12]),
        .PCMATCH(DETOIP[12]),
        .DBG_IN(DBG_IN),
        .DBG_IN(DBG_IN),
        .DBG_HIT(DBG_HIT),
        .DBG_HIT(DBG_HIT),
        .READ(READ_OUT) );
        .READ(READ_OUT) );
 
 
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// The long operation unit
// The long operation unit
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
DP_FPU  DOUBLE_U(
DP_FPU  DOUBLE_U(
        .BCLK(BCLK),
        .BCLK(BCLK),
        .FL(FL),
        .FL(FL),
        .BRESET(BRESET),
        .BRESET(BRESET),
        .LD_LDQ(LD_OUT[0]),
        .LD_LDQ(LD_OUT[0]),
Line 360... Line 360...
        .COP_OP(COP_OP),
        .COP_OP(COP_OP),
        .COP_IN(COP_IN),
        .COP_IN(COP_IN),
        .COP_GO(COP_GO),
        .COP_GO(COP_GO),
        .COP_OUT(COP_OUT));
        .COP_OUT(COP_OUT));
 
 
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// The single precision floating point unit
// The single precision floating point unit
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
SP_FPU  SINGLE_U(
SP_FPU  SINGLE_U(
        .FL(FL),
        .FL(FL),
        .BCLK(BCLK),
        .BCLK(BCLK),
        .BWD(BWD),
        .BWD(BWD),
        .FSR(FSR[8:3]),
        .FSR(FSR[8:3]),

powered by: WebSVN 2.1.0

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