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

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [orpsocv2/] [rtl/] [verilog/] [include/] [or1200_defines.v] - Diff between revs 403 and 435

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

Rev 403 Rev 435
Line 358... Line 358...
 
 
//
//
// Implement multiply-and-accumulate
// Implement multiply-and-accumulate
//
//
// By default MAC is implemented. To
// By default MAC is implemented. To
// implement MAC, multiplier needs to be
// implement MAC, multiplier (non-serial) needs to be
// implemented.
// implemented.
//
//
`define OR1200_MAC_IMPLEMENTED
`define OR1200_MAC_IMPLEMENTED
 
 
//
//
// Implement optional l.div/l.divu instructions
// Implement optional l.div/l.divu instructions
//
//
// By default divide instructions are not implemented
// By default divide instructions are not implemented
// to save area and increase clock frequency. or32 C/C++
// to save area.
// compiler can use soft library for division.
 
//
//
// To implement divide, both multiplier and MAC needs to be implemented.
 
//
//
`define OR1200_DIV_IMPLEMENTED
`define OR1200_DIV_IMPLEMENTED
 
 
//
//
// Low power, slower multiplier
// Serial multiplier.
//
//
// Select between low-power (larger) multiplier
//`define OR1200_MULT_SERIAL
// and faster multiplier. The actual difference
 
// is only AND logic that prevents distribution
//
// of operands into the multiplier when instruction
// Serial divider.
// in execution is not multiply instruction
// Uncomment to use a serial divider, otherwise will
 
// be a generic parallel implementation.
//
//
//`define OR1200_LOWPWR_MULT
//`define OR1200_DIV_SERIAL
 
 
//
//
// Implement HW Single Precision FPU
// Implement HW Single Precision FPU
//
//
//`define OR1200_FPU_IMPLEMENTED
//`define OR1200_FPU_IMPLEMENTED
Line 462... Line 461...
`define OR1200_ALUOP_MUL        4'd6
`define OR1200_ALUOP_MUL        4'd6
`define OR1200_ALUOP_CUST5      4'd7
`define OR1200_ALUOP_CUST5      4'd7
`define OR1200_ALUOP_SHROT      4'd8
`define OR1200_ALUOP_SHROT      4'd8
`define OR1200_ALUOP_DIV        4'd9
`define OR1200_ALUOP_DIV        4'd9
`define OR1200_ALUOP_DIVU       4'd10
`define OR1200_ALUOP_DIVU       4'd10
/* Order not specifically defined. */
`define OR1200_ALUOP_MULU       4'd11
`define OR1200_ALUOP_IMM        4'd11
/* Values sent to ALU from decode unit - not strictly defined by ISA */
`define OR1200_ALUOP_MOVHI      4'd12
`define OR1200_ALUOP_MOVHI      4'd12
`define OR1200_ALUOP_COMP       4'd13
`define OR1200_ALUOP_COMP       4'd13
`define OR1200_ALUOP_MTSR       4'd14
`define OR1200_ALUOP_MTSR       4'd14
`define OR1200_ALUOP_MFSR       4'd15
`define OR1200_ALUOP_MFSR       4'd15
`define OR1200_ALUOP_CMOV       4'd14
`define OR1200_ALUOP_CMOV       4'd14

powered by: WebSVN 2.1.0

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