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

Subversion Repositories or1k

[/] [or1k/] [tags/] [nog_patch_52/] [or1ksim/] [sim-config.h] - Blame information for rev 230

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 7 jrydberg
/* config.h -- Simulator configuration header file
2
   Copyright (C) 1999 Damjan Lampret, lampret@opencores.org
3
 
4
   This file is part of OpenRISC 1000 Architectural Simulator.
5
 
6
   This program is free software; you can redistribute it and/or modify
7
   it under the terms of the GNU General Public License as published by
8
   the Free Software Foundation; either version 2 of the License, or
9
   (at your option) any later version.
10
 
11
   This program is distributed in the hope that it will be useful,
12
   but WITHOUT ANY WARRANTY; without even the implied warranty of
13
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
   GNU General Public License for more details.
15
 
16
   You should have received a copy of the GNU General Public License
17
   along with this program; if not, write to the Free Software
18
   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
19
 
20 173 markom
#include <stdio.h>
21
 
22 7 jrydberg
/* Simulator configuration macros. Eventually this one will be a lot bigger. */
23 30 lampret
 
24 221 markom
#define NR_UARTS        4       /* Number of UARTs simulated */   
25 212 erez
#define NR_DMAS         1       /* Number of DMA controllers */
26 45 lampret
#define NONE            0
27
#define VIRTUAL         1
28
#define PHYSICAL        2
29 7 jrydberg
 
30 123 markom
typedef struct MemoryBlock {
31
  int address;
32
  char* file;
33
  struct MemoryBlock* next;
34
} MemoryBlock;
35
 
36 7 jrydberg
struct config {
37
        struct {
38 30 lampret
                int tagtype;
39 7 jrydberg
        } dc;
40 78 lampret
        struct {
41
                int tagtype;
42
        } ic;
43 103 lampret
        struct {
44
                int bpb_sim;
45
                int btic_sim;
46
        } bp;                   /* Branch prediction */
47 30 lampret
        int clkcycle_ns;        /* Clock cycle in nanoseconds */
48
        struct {
49
                char *rxfile;   /* File for RX */
50
                char *txfile;   /* File for TX (required) */
51 191 chris
                int jitter;     /* CZ 250801 - in msecs...time to block */
52 30 lampret
                unsigned long baseaddr; /* Naturally aligned base address */
53
        } uarts[NR_UARTS];
54 230 erez
        struct {
55
                unsigned long baseaddr;
56
                unsigned irq;
57
        } dmas[NR_DMAS];
58 69 lampret
        int simdebug;   /* Simulator debugging */
59 221 markom
  int profile;    /* Is profiler running */
60
  FILE *fprof;    /* profiler file */
61 103 lampret
        int iprompt;    /* Interactive prompt */
62
        int dependstats;/* Calculation of dependency statistics */
63
        int dependency; /* Calculation of dependency (implied by dependstats) */
64
        int history;    /* Instruction stream history remembered by the simulator */
65
        int superscalar;/* "Superscalar" simulation */
66
        int slp;
67 123 markom
        int inhibit_server; /* Don't start up the JTAG proxy server */
68
        int server_port; /* A user specified port number for services */
69
        int pattern_mem; /* A user specified memory initialization pattern */
70
        int random_mem;  /* Initialize the memory with random values */
71
        MemoryBlock* memory; /* New style memory initializer file (CZ) */
72
        char* filename;  /* Original Command Simulator file (CZ) */
73 7 jrydberg
};
74
 
75
extern struct config config;

powered by: WebSVN 2.1.0

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