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

Subversion Repositories qaz_libs

[/] [qaz_libs/] [trunk/] [avalon_lib/] [sim/] [src/] [amm_monitor/] [avalon_mm_pkg.sv] - Blame information for rev 31

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 31 qaztronic
// (C) 2001-2016 Intel Corporation. All rights reserved.
2
// Your use of Intel Corporation's design tools, logic functions and other
3
// software and tools, and its AMPP partner logic functions, and any output
4
// files any of the foregoing (including device programming or simulation
5
// files), and any associated documentation or information are expressly subject
6
// to the terms and conditions of the Intel Program License Subscription
7
// Agreement, Intel MegaCore Function License Agreement, or other applicable
8
// license agreement, including, without limitation, that your use is for the
9
// sole purpose of programming logic devices manufactured by Intel and sold by
10
// Intel or its authorized distributors.  Please refer to the applicable
11
// agreement for further details.
12
 
13
 
14
// $Id: //acds/rel/16.1/ip/sopc/components/verification/lib/avalon_mm_pkg.sv#1 $
15
// $Revision: #1 $
16
// $Date: 2016/08/07 $
17
//-----------------------------------------------------------------------------
18
// =head1 NAME
19
// avalon_mm_pkg
20
// =head1 SYNOPSIS
21
// Package for shared Avalon MM component types.
22
//-----------------------------------------------------------------------------
23
// =head1 COPYRIGHT
24
// Copyright (c) 2008 Altera Corporation. All Rights Reserved.
25
// The information contained in this file is the property of Altera
26
// Corporation. Except as specifically authorized in writing by Altera
27
// Corporation, the holder of this file shall keep all information
28
// contained herein confidential and shall protect same in whole or in part
29
// from disclosure and dissemination to all third parties. Use of this
30
// program confirms your agreement with the terms of this license.
31
//-----------------------------------------------------------------------------
32
// =head1 DESCRIPTION
33
// This package contains shared non-parameterized type definitions.
34
// =cut
35
`timescale 1ns / 1ns
36
 
37
`ifndef _AVALON_MM_PKG_
38
`define _AVALON_MM_PKG_
39
 
40
package avalon_mm_pkg;
41
   import verbosity_pkg::*;
42
 
43
   // Transaction request types
44
   typedef enum int {      // public
45
      REQ_READ    = 0,     // Read Request
46
      REQ_WRITE   = 1,     // Write Request
47
      REQ_IDLE    = 2      // Idle
48
   } Request_t;
49
 
50
   // Slave BFM wait state logic operates in one of three distinct modes
51
   typedef enum int {
52
                     WAIT_FIXED = 0,  // default: fixed wait cycles per burst cycle
53
                     WAIT_RANDOM = 1, // random  min =< wait cycles <= max
54
                     WAIT_ADDRESSABLE = 2 // fixed wait cycles per command address
55
                     } SlaveWaitMode_t;
56
 
57
   // Avalon MM transaction response status
58
   typedef enum logic[1:0] {
59
      AV_OKAY           = 0,
60
      AV_RESERVED       = 1,
61
      AV_SLAVE_ERROR    = 2,
62
      AV_DECODE_ERROR   = 3
63
   } AvalonResponseStatus_t;
64
 
65
   function automatic string request_string(Request_t request);
66
      case(request)
67
        REQ_READ: return("read");
68
        REQ_WRITE: return("write");
69
        REQ_IDLE: return("idle");
70
        default: return("INVALID_REQUEST");
71
      endcase
72
   endfunction
73
 
74
endpackage
75
 
76
`endif
77
 

powered by: WebSVN 2.1.0

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