sp.vh 2.24 KB
 /************************************************************************\
 *                                                                        *
 *               Copyright (C) 1994, Silicon Graphics, Inc.               *
 *                                                                        *
 *  These coded instructions, statements, and computer programs  contain  *
 *  unpublished  proprietary  information of Silicon Graphics, Inc., and  *
 *  are protected by Federal copyright  law.  They  may not be disclosed  *
 *  to  third  parties  or copied or duplicated in any form, in whole or  *
 *  in part, without the prior written consent of Silicon Graphics, Inc.  *
 *                                                                        *
 \************************************************************************/

// $Id: sp.vh,v 1.1 2002/03/28 00:26:13 berndt Exp $

`include "rcp.vh"

parameter
   SP_REG_DATA_SIZE		= 32,
   SP_REG_ADDRESS_SIZE		= 3,
   SP_MEM_ADDRESS_SIZE		= 9,
   SP_MEM_MASK_SIZE		= 2,
   SP_PC_SIZE			= 10,
   SP_PC_OFFSET			= 2,
   SP_DEVICE_SIZE		= 2,
   SP_DEVICE_OFFSET		= 18,
   SP_BIST_FAIL_SIZE		= 4,
   SP_SIGNAL_SIZE		= 8;

parameter
   SP_DEVICE_MEM		= 0,
   SP_DEVICE_CP0		= 1,
   SP_DEVICE_REG		= 2;

parameter
   SP_DMA_MASTER_ADDRESS_SIZE	= SP_MEM_ADDRESS_SIZE,
   SP_DMA_SLAVE_ADDRESS_SIZE	= DRAM_ADDRESS_SIZE - DMA_OFFSET_SIZE,
   SP_DMA_SKIP_SIZE		= 9,
   SP_DMA_COUNT_SIZE		= 8,
   SP_DMA_LENGTH_SIZE		= 9,
   SP_DMA_MAX_BLOCK		= 4'hf;

parameter
   SP_CMD_ADDRESS_SIZE		= DRAM_ADDRESS_SIZE - DMA_OFFSET_SIZE,
   SP_CMD_LENGTH_SIZE		= DMA_LENGTH_SIZE - DMA_OFFSET_SIZE,
   SP_CMD_IO_ADDRESS_SIZE	= 2;

// DMA register addresses
parameter
   SP_BANK_DMA			= 0,
   SP_BANK_STATUS		= 1,
   SP_BANK_CMD			= 2,
   SP_BANK_COUNTER		= 3;

parameter
   SP_DMA_MASTER_ADDRESS	= 0,
   SP_DMA_SLAVE_ADDRESS		= 1,
   SP_DMA_READ_LENGTH		= 2,
   SP_DMA_WRITE_LENGTH		= 3,
   SP_DMA_STATUS		= 4,
   SP_DMA_FULL			= 5,
   SP_DMA_BUSY			= 6,
   SP_DMA_SEMAPHORE		= 7;

parameter
   SP_REG_PC			= 0,
   SP_REG_BIST			= 1;

parameter
   SP_CMD_START_ADDRESS		= 0,
   SP_CMD_END_ADDRESS		= 1,
   SP_CMD_CURRENT_ADDRESS	= 2,
   SP_CMD_STATUS		= 3,
   SP_CMD_CLOCK 		= 4,
   SP_CMD_BUSY		 	= 5,
   SP_CMD_PIPE_BUSY 		= 6,
   SP_CMD_TMEM_BUSY 		= 7;