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

Subversion Repositories or1k

[/] [or1k/] [tags/] [rel_6/] [or1200/] [rtl/] [verilog/] [or1200_defines.v] - Diff between revs 984 and 994

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

Rev 984 Rev 994
Line 42... Line 42...
//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
//
//
// CVS Revision History
// CVS Revision History
//
//
// $Log: not supported by cvs2svn $
// $Log: not supported by cvs2svn $
 
// Revision 1.20  2002/08/18 21:59:45  lampret
 
// Disable SB until it is tested
 
//
// Revision 1.19  2002/08/18 19:53:08  lampret
// Revision 1.19  2002/08/18 19:53:08  lampret
// Added store buffer.
// Added store buffer.
//
//
// Revision 1.18  2002/08/15 06:04:11  lampret
// Revision 1.18  2002/08/15 06:04:11  lampret
// Fixed Xilinx trace buffer address. REported by Taylor Su.
// Fixed Xilinx trace buffer address. REported by Taylor Su.
Line 315... Line 318...
// undefine this macro.
// undefine this macro.
//
//
//`define OR1200_WB_RETRY 7
//`define OR1200_WB_RETRY 7
 
 
//
//
// Store buffer
 
//
 
// It will improve performance by "caching" CPU stores
 
// using store buffer. This is most important for function
 
// prologues because DC can only work in write though mode
 
// and all stores would have to complete external WB writes
 
// to memory.
 
// Store buffer is between DC and data BIU.
 
// All stores will be stored into store buffer and immediately
 
// completed by the CPU, even though actual external writes
 
// will be performed later. As a consequence store buffer masks
 
// all data bus errors related to stores (data bus errors
 
// related to loads are delivered normally).
 
// All pending CPU loads will wait until store buffer is empty to
 
// ensure strict memory model. Right now this is necessary because
 
// we don't make destinction between cached and cache inhibited
 
// address space, so we simply empty store buffer until loads
 
// can begin.
 
//
 
// [SB hasn't been tested yet, so don't enable it just yet!]
 
//
 
//`define OR1200_SB_IMPLEMENTED
 
 
 
//
 
// Enable additional synthesis directives if using
// Enable additional synthesis directives if using
// _Synopsys_ synthesis tool
// _Synopsys_ synthesis tool
//
//
//`define OR1200_ADDITIONAL_SYNOPSYS_DIRECTIVES
//`define OR1200_ADDITIONAL_SYNOPSYS_DIRECTIVES
 
 
Line 1232... Line 1211...
`define OR1200_DCTAGL                   `OR1200_DCINDXH+1       // 13
`define OR1200_DCTAGL                   `OR1200_DCINDXH+1       // 13
`define OR1200_DCTAG                    `OR1200_DCSIZE-`OR1200_DCLS     // 9
`define OR1200_DCTAG                    `OR1200_DCSIZE-`OR1200_DCLS     // 9
`define OR1200_DCTAG_W                  20
`define OR1200_DCTAG_W                  20
`endif
`endif
 
 
 No newline at end of file
 No newline at end of file
 
/////////////////////////////////////////////////
 
//
 
// Store buffer (SB)
 
//
 
 
 
//
 
// Store buffer
 
//
 
// It will improve performance by "caching" CPU stores
 
// using store buffer. This is most important for function
 
// prologues because DC can only work in write though mode
 
// and all stores would have to complete external WB writes
 
// to memory.
 
// Store buffer is between DC and data BIU.
 
// All stores will be stored into store buffer and immediately
 
// completed by the CPU, even though actual external writes
 
// will be performed later. As a consequence store buffer masks
 
// all data bus errors related to stores (data bus errors
 
// related to loads are delivered normally).
 
// All pending CPU loads will wait until store buffer is empty to
 
// ensure strict memory model. Right now this is necessary because
 
// we don't make destinction between cached and cache inhibited
 
// address space, so we simply empty store buffer until loads
 
// can begin.
 
//
 
// It makes design a bit bigger, depending what is the number of
 
// entries in SB FIFO. Number of entries can be changed further
 
// down.
 
//
 
//`define OR1200_SB_IMPLEMENTED
 
 
 
//
 
// Number of store buffer entries
 
//
 
// Verified number of entries are 4 and 8 entries
 
// (2 and 3 for OR1200_SB_LOG). OR1200_SB_ENTRIES must
 
// always match 2**OR1200_SB_LOG.
 
// To disable store buffer, undefine
 
// OR1200_SB_IMPLEMENTED.
 
//
 
`define OR1200_SB_LOG           2       // 2 or 3
 
`define OR1200_SB_ENTRIES       4       // 4 or 8
 
 
 No newline at end of file
 No newline at end of file

powered by: WebSVN 2.1.0

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