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

Subversion Repositories or1k

[/] [or1k/] [tags/] [nog_patch_40/] [or1ksim/] [sim.cfg] - Blame information for rev 897

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

Line No. Rev Author Line
1 264 markom
/* sim.cfg -- Simulator configuration script file
2 897 markom
   Copyright (C) 2001-2002, Marko Mlinar, markom@opencores.org
3 428 markom
 
4 264 markom
This file is part of OpenRISC 1000 Architectural Simulator.
5 876 rherveille
It contains the default configuration and help about configuring
6
the simulator.
7 264 markom
 
8
This program is free software; you can redistribute it and/or modify
9
it under the terms of the GNU General Public License as published by
10
the Free Software Foundation; either version 2 of the License, or
11
(at your option) any later version.
12
 
13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
GNU General Public License for more details.
17
 
18
You should have received a copy of the GNU General Public License
19
along with this program; if not, write to the Free Software
20
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
21
 
22 312 markom
 
23
/* INTRODUCTION
24
 
25 876 rherveille
   The ork1sim has various parameters, that are set in configuration files
26
   like this one. The user can switch between configurations at startup by
27
   specifying the required configuration file with the -f  option.
28
   If no configuration file is specified or1ksim searches for the default
29
   configuration file sim.cfg. First it searches for './sim.cfg'. If this
30
   file is not found, it searches for '~/or1k/sim.cfg'. If this file is
31
   not found too, it reverts to the built-in default configuration.
32 428 markom
 
33 876 rherveille
   NOTE: Users should not rely on the built-in configuration, since the
34
         default configuration may differ between version.
35
         Rather create a configuration file that sets all critical values.
36
 
37
   This file may contain (standard C) comments only - no // support.
38
 
39
   Configure files may be be included, using:
40 568 markom
   include "file_name_to_include"
41 312 markom
 
42 876 rherveille
   Like normal configuration files, the included file is divided into
43
   sections. Each section is described in detail also.
44 428 markom
 
45 876 rherveille
   Some section have subsections. One example of such a subsection is:
46 428 markom
 
47 312 markom
   device 
48
     instance specific parameters...
49
   enddevice
50 428 markom
 
51 312 markom
   which creates a device instance.
52
*/
53
 
54 876 rherveille
 
55 312 markom
/* MEMORY SECTION
56
 
57 876 rherveille
   This section specifies how the memory is generated and the blocks
58
   it consists of.
59 428 markom
 
60 312 markom
   type = random/unknown/pattern
61 876 rherveille
      Specifies the initial memory values.
62
      'random' generates random memory using seed 'random_seed'.
63
      'pattern' fills memory with 'pattern'.
64
      'unknown' does not specify how memory should be generated,
65
      leaving the memory in a undefined state. This is the fastest
66
      option.
67 428 markom
 
68 312 markom
   random_seed = 
69 876 rherveille
      random seed for randomizer, used if type = 'random'.
70 428 markom
 
71 312 markom
   pattern = 
72 876 rherveille
      pattern to fill memory, used if type = 'pattern'.
73 428 markom
 
74 424 markom
   nmemories = 
75 428 markom
      number of memory instances connected
76
 
77 424 markom
   instance specific:
78
     baseaddr = 
79
        memory start address
80 428 markom
 
81 424 markom
     size = 
82
        memory size
83
 
84
     name = ""
85
        memory block name
86 428 markom
 
87 424 markom
     ce = 
88
        chip enable index of the memory instance
89
 
90
     delayr = 
91
        cycles, required for read access, -1 if instance does not support reading
92 428 markom
 
93 424 markom
     delayw = 
94
        cycles, required for write access, -1 if instance does not support writing
95 428 markom
 
96 424 markom
     log = ""
97
        filename, where to log memory accesses to, no log, if log command is not specified
98 312 markom
*/
99
 
100 262 markom
section memory
101 264 markom
  /*random_seed = 12345
102
  type = random*/
103 269 markom
  pattern = 0x00
104
  type = unknown /* Fastest */
105 428 markom
 
106 424 markom
  nmemories = 2
107
  device 0
108 553 markom
    name = "FLASH"
109 424 markom
    ce = 0
110
    baseaddr = 0x00000000
111 702 ivang
    size = 0x00200000
112 424 markom
    delayr = 10
113
    delayw = -1
114
  enddevice
115 428 markom
 
116 424 markom
  device 1
117 553 markom
    name = "RAM"
118 424 markom
    ce = 1
119 702 ivang
    baseaddr = 0x40000000
120
    size = 0x00200000
121 424 markom
    delayr = 2
122
    delayw = 4
123
  enddevice
124 262 markom
end
125
 
126 434 markom
 
127 427 markom
/* IMMU SECTION
128 312 markom
 
129 876 rherveille
    This section configures the Instruction Memory Manangement Unit
130 428 markom
 
131 427 markom
    enabled = 0/1
132 876 rherveille
       '0': disabled
133
       '1': enabled
134 428 markom
       (NOTE: UPR bit is set)
135
 
136 427 markom
    nsets = 
137 428 markom
       number of ITLB sets; must be power of two
138
 
139 427 markom
    nways = 
140
       number of ITLB ways
141 428 markom
 
142 427 markom
    pagesize = 
143
       instruction page size; must be power of two
144 428 markom
 
145 427 markom
    entrysize = 
146
       instruction entry size in bytes
147 428 markom
 
148 427 markom
    ustates = 
149
       number of ITLB usage states (2, 3, 4 etc., max is 4)
150 876 rherveille
 
151 541 markom
    hitdelay = 
152
       number of cycles immu hit costs
153 876 rherveille
 
154 541 markom
    missdelay = 
155
       number of cycles immu miss costs
156 427 markom
*/
157
 
158
section immu
159
  enabled = 0
160
  nsets = 32
161
  nways = 1
162 428 markom
  pagesize = 8192
163 541 markom
  hitdelay = 0
164
  missdelay = 0
165 427 markom
end
166 428 markom
 
167 434 markom
 
168 427 markom
/* DMMU SECTION
169
 
170 876 rherveille
    This section configures the Data Memory Manangement Unit
171 428 markom
 
172 427 markom
    enabled = 0/1
173 876 rherveille
       '0': disabled
174
       '1': enabled
175 428 markom
       (NOTE: UPR bit is set)
176
 
177 427 markom
    nsets = 
178
       number of DTLB sets; must be power of two
179 428 markom
 
180 427 markom
    nways = 
181
       number of DTLB ways
182 428 markom
 
183 427 markom
    pagesize = 
184
       data page size; must be power of two
185 428 markom
 
186 427 markom
    entrysize = 
187
       data entry size in bytes
188 428 markom
 
189 427 markom
    ustates = 
190
       number of DTLB usage states (2, 3, 4 etc., max is 4)
191 541 markom
 
192
    hitdelay = 
193 876 rherveille
       number of cycles dmmu hit costs
194
 
195 541 markom
    missdelay = 
196 876 rherveille
       number of cycles dmmu miss costs
197 427 markom
*/
198
 
199
section dmmu
200
  enabled = 0
201
  nsets = 32
202
  nways = 1
203 428 markom
  pagesize = 8192
204 541 markom
  hitdelay = 0
205
  missdelay = 0
206 427 markom
end
207
 
208 428 markom
 
209
/* IC SECTION
210
 
211 876 rherveille
   This section configures the Instruction Cache
212 428 markom
 
213 541 markom
   enabled = 0/1
214 876 rherveille
       '0': disabled
215
       '1': enabled
216 541 markom
      (NOTE: UPR bit is set)
217 428 markom
 
218 541 markom
   nsets = 
219
      number of IC sets; must be power of two
220 428 markom
 
221 541 markom
   nways = 
222
      number of IC ways
223 428 markom
 
224 541 markom
   blocksize = 
225
      IC block size in bytes; must be power of two
226 428 markom
 
227 541 markom
   ustates = 
228
      number of IC usage states (2, 3, 4 etc., max is 4)
229
 
230
   hitdelay = 
231
      number of cycles ic hit costs
232 876 rherveille
 
233 541 markom
    missdelay = 
234
      number of cycles ic miss costs
235 428 markom
*/
236
 
237
section ic
238
  enabled = 0
239
  nsets = 512
240
  nways = 1
241
  blocksize = 16
242 541 markom
  hitdelay = 0
243
  missdelay = 0
244 428 markom
end
245
 
246 434 markom
 
247 428 markom
/* DC SECTION
248
 
249 876 rherveille
   This section configures the Data Cache
250 428 markom
 
251 541 markom
   enabled = 0/1
252 876 rherveille
       '0': disabled
253
       '1': enabled
254 541 markom
      (NOTE: UPR bit is set)
255 428 markom
 
256 541 markom
   nsets = 
257
      number of DC sets; must be power of two
258 428 markom
 
259 541 markom
   nways = 
260
      number of DC ways
261 428 markom
 
262 541 markom
   blocksize = 
263
      DC block size in bytes; must be power of two
264 428 markom
 
265 541 markom
   ustates = 
266
      number of DC usage states (2, 3, 4 etc., max is 4)
267
 
268
   load_hitdelay = 
269
      number of cycles dc load hit costs
270 876 rherveille
 
271 541 markom
   load_missdelay = 
272
      number of cycles dc load miss costs
273 876 rherveille
 
274 541 markom
   store_hitdelay = 
275
      number of cycles dc load hit costs
276 876 rherveille
 
277 541 markom
   store_missdelay = 
278
      number of cycles dc load miss costs
279 428 markom
*/
280
 
281
section dc
282
  enabled = 0
283
  nsets = 512
284
  nways = 1
285
  blocksize = 16
286 541 markom
  load_hitdelay = 0
287
  load_missdelay = 0
288
  store_hitdelay = 0
289
  store_missdelay = 0
290 428 markom
end
291
 
292 312 markom
/* SIM SECTION
293
 
294 876 rherveille
  This section specifies how or1ksim should behave.
295 428 markom
 
296 312 markom
  verbose = 0/1
297 876 rherveille
       '0': don't print extra messages
298
       '1': print extra messages
299 428 markom
 
300 344 markom
  debug = 0-9
301 876 rherveille
 
302
      1-9: debug message level.
303
           higher numbers produce more messages
304 428 markom
 
305 312 markom
  profile = 0/1
306 876 rherveille
      '0': don't generate profiling file 'sim.profile'
307
      '1': don't generate profiling file 'sim.profile'
308 428 markom
 
309 312 markom
  prof_fn = ""
310 876 rherveille
      optional filename for the profiling file.
311
      valid only if 'profile' is set
312
 
313 547 markom
  mprofile = 0/1
314 876 rherveille
      '0': don't generate memory profiling file 'sim.mprofile'
315
      '1': generate memory profiling file 'sim.mprofile'
316 428 markom
 
317 547 markom
  mprof_fn = ""
318 876 rherveille
      optional filename for the memory profiling file.
319
      valid only if 'mprofile' is set
320 547 markom
 
321 394 markom
  history = 0/1
322 876 rherveille
      '0': don't track execution flow
323
      '1': track execution flow
324
      Execution flow can be tracked for the simulator's
325
      'hist' command. Useful for back-trace debugging.
326 428 markom
 
327 312 markom
  iprompt = 0/1
328 876 rherveille
     '0': start in  (so what do we start in ???)
329
     '1': start in interactive prompt.
330 312 markom
 
331
  exe_log = 0/1
332 876 rherveille
      '0': don't generate execution log.
333
      '1': generate execution log.
334
 
335 675 markom
  exe_log = default/hardware/simple/software
336 876 rherveille
      type of execution log, default is used when not specified
337
 
338 672 markom
  exe_log_start = 
339 876 rherveille
      index of first instruction to start logging, default = 0
340
 
341 672 markom
  exe_log_end = 
342 876 rherveille
      index of last instruction to end logging; not limited, if omitted
343
 
344 672 markom
  exe_log_marker = 
345
       specifies number of instructions before horizontal marker is
346
      printed; if zero, markers are disabled (default)
347 428 markom
 
348 312 markom
  exe_log_fn = ""
349 876 rherveille
      filename for the exection log file.
350
      valid only if 'exe_log' is set
351 624 ivang
 
352
  spr_log = 0/1
353 876 rherveille
      '0': log reads/writes to/from sprs
354
      '1': don't log reads/write to/from sprs
355 624 ivang
 
356
  spr_log_fn = ""
357 876 rherveille
      filename for the sprs log file.
358
      valid only if 'spr_log' is set
359
 
360 433 markom
  clkcycle = [ps|ns|us|ms]
361
      specifies time measurement for one cycle
362 335 markom
*/
363
 
364 312 markom
section sim
365 335 markom
  /* verbose = 1 */
366 879 markom
  debug = 0
367 689 markom
  profile = 0
368 312 markom
  prof_fn = "sim.profile"
369 689 markom
  mprofile = 0
370 547 markom
  mprof_fn = "sim.mprofile"
371 428 markom
 
372 394 markom
  history = 1
373 312 markom
  /* iprompt = 0 */
374
  exe_log = 0
375 672 markom
  exe_log_type = hardware
376
  exe_log_start = 0
377
  exe_log_end = 0
378
  exe_log_marker = 0
379 312 markom
  exe_log_fn = "executed.log"
380 632 ivang
  spr_log = 0
381 624 ivang
  spr_log_fn = "spr.log"
382
  clkcycle = 100ns
383 312 markom
end
384
 
385
 
386
/* SECTION VAPI
387
 
388 876 rherveille
    This section configures the Verification API, used for Advanced
389 312 markom
    Core Verification.
390 428 markom
 
391 312 markom
    enabled = 0/1
392 876 rherveille
        '0': disbable VAPI server
393
        '1': enable/start VAPI server
394 428 markom
 
395 312 markom
    server_port = 
396
        TCP/IP port to start VAPI server on
397 428 markom
 
398 355 markom
    log_enabled = 0/1
399 876 rherveille
       '0': disable VAPI requests logging
400
       '1': enable VAPI requests logging
401 428 markom
 
402 486 erez
    hide_device_id = 0/1
403 876 rherveille
       '0': don't log device id (for compatability with old version)
404
       '1': log device id
405 486 erez
 
406 876 rherveille
 
407 355 markom
    vapi_fn = 
408 876 rherveille
       filename for the log file.
409
       valid only if log_enabled is set
410 312 markom
*/
411
 
412
section VAPI
413
  enabled = 0
414
  server_port = 9998
415 355 markom
  log_enabled = 0
416 427 markom
  vapi_log_fn = "vapi.log"
417 312 markom
end
418
 
419
 
420
/* CPU SECTION
421
 
422
   This section specifies various CPU parameters.
423 428 markom
 
424 312 markom
   ver = 
425
   rev = 
426
      specifies version and revision of the CPU used
427 428 markom
 
428 312 markom
   upr = 
429
      changes the upr register
430 876 rherveille
 
431 556 markom
   sr = 
432
      sets the initial Supervision Register value
433 428 markom
 
434 312 markom
   superscalar = 0/1
435 876 rherveille
      '0': CPU is scalar
436
      '1': CPU is superscalar
437 388 lampret
      (modify cpu/or32/execute.c to tune superscalar model)
438
 
439 312 markom
   hazards = 0/1
440 876 rherveille
      '0': don't track data hazards in superscalar CPU
441
      '1': track data hazards in superscalar CPU
442
      If tracked, data hazards can be displayed using the
443
      simulator's 'r' command.
444 388 lampret
 
445 312 markom
   dependstats = 0/1
446 876 rherveille
      '0': don't calculate inter-instruction dependencies.
447
      '1': calculate inter-instruction dependencies.
448
      If calculated, inter-instruction dependencies can be
449
      displayed using the simulator's 'stat' command.
450 388 lampret
 
451 626 markom
   sbuf_len = 
452
      length of store buffer (<= 256), 0 = disabled
453 312 markom
*/
454
 
455 263 markom
section cpu
456
  ver = 0x1200
457
  rev = 0x0001
458
  /* upr = */
459 556 markom
  sr = 0x00008003
460 263 markom
  superscalar = 0
461
  hazards = 0
462
  dependstats = 0
463 626 markom
  sbuf_len = 0
464 263 markom
end
465
 
466 312 markom
 
467 557 markom
/* PM SECTION
468
 
469 876 rherveille
   This section specifies Power Management parameters
470
 
471 557 markom
   enabled = 0/1
472 876 rherveille
      '0': disable power management
473
      '1': enable power management
474 557 markom
*/
475
 
476
section pm
477
  enabled = 0
478
end
479
 
480 541 markom
/* BPB SECTION
481
 
482
   This section specifies how branch prediction should behave.
483 876 rherveille
 
484 541 markom
   enabled = 0/1
485 876 rherveille
     '0': disable branch prediction
486
     '1': enable branch prediction
487
 
488 541 markom
   btic = 0/1
489 876 rherveille
     '0': disable branch target instruction cache model
490
     '1': enable branch target instruction cache model
491 541 markom
 
492
   sbp_bf_fwd = 0/1
493 876 rherveille
     Static branch prediction for 'l.bf'
494
     '0': don't use forward prediction
495
     '1': use forward prediction
496
 
497 541 markom
   sbp_bnf_fwd = 0/1
498 876 rherveille
     Static branch prediction for 'l.bnf'
499
     '0': don't use forward prediction
500
     '1': use forward prediction
501 541 markom
 
502
   hitdelay = 
503
       number of cycles bpb hit costs
504 876 rherveille
 
505 541 markom
   missdelay = 
506
       number of cycles bpb miss costs
507
*/
508
 
509
section bpb
510
  enabled = 0
511
  btic = 0
512
  sbp_bf_fwd = 0
513
  sbp_bnf_fwd = 0
514
  hitdelay = 0
515
  missdelay = 0
516
end
517
 
518
 
519 312 markom
/* DEBUG SECTION
520
 
521 876 rherveille
   This sections specifies how the debug unit should behave.
522 428 markom
 
523 312 markom
   enabled = 0/1
524 876 rherveille
      '0': disable debug unit
525
      '1': enable debug unit
526 428 markom
 
527 312 markom
   gdb_enabled = 0/1
528 876 rherveille
      '0': don't start gdb server
529
      '1': start gdb server at port 'server_port'
530 428 markom
 
531 312 markom
   server_port = 
532 876 rherveille
      TCP/IP port to start gdb server on
533
      valid only if gdb_enabled is set
534 486 erez
 
535
   vapi_id = 
536
      Used to create "fake" vapi log file containing the JTAG proxy messages.
537 479 markom
*/
538 428 markom
 
539 269 markom
section debug
540 702 ivang
  enabled = 1
541 312 markom
  gdb_enabled = 0
542 269 markom
  server_port = 9999
543 486 erez
  vapi_id = 0xFFFF
544 269 markom
end
545
 
546 264 markom
 
547 312 markom
/* MC SECTION
548
 
549
   This section configures the memory controller
550
 
551
   enabled = 0/1
552 876 rherveille
     '0': disable memory controller
553
     '1': enable memory controller
554 428 markom
 
555 312 markom
   baseaddr = 
556
      address of first MC register
557 428 markom
 
558 312 markom
   POC = 
559
      Power On Configuration register
560
*/
561
 
562 243 markom
section mc
563 702 ivang
  enabled = 0
564 624 ivang
  baseaddr = 0x60000000
565 261 markom
  POC = 0x00000008                 /* Power on configuration register */
566 243 markom
end
567 261 markom
 
568 312 markom
 
569
/* UART SECTION
570
 
571 876 rherveille
   This section configures the UARTs
572 312 markom
 
573
   nuarts = 
574
      make specified number of instances, configure each
575
      instance within device - enddevice construct.
576 428 markom
 
577 312 markom
   instance specific:
578
     baseaddr = 
579
        address of first UART register for this device
580 428 markom
 
581 664 markom
     rxfile = ""
582 312 markom
        filename, where to read data from
583 428 markom
 
584 664 markom
     txfile = ""
585 312 markom
        filename, where to write data to
586 332 markom
 
587
     irq = 
588
        irq number for this device
589 428 markom
 
590 341 markom
     16550 = 0/1
591 876 rherveille
        '0': this device is a UART16450
592
        '1': this device is a UART16550
593 428 markom
 
594 312 markom
     jitter = 
595
        in msecs... time to block, -1 to disable it
596 428 markom
 
597 313 markom
     vapi_id = 
598
        VAPI id of this instance
599 312 markom
*/
600
 
601 261 markom
section uart
602
  nuarts = 1
603 428 markom
 
604 261 markom
  device 0
605 624 ivang
    baseaddr = 0x90000000
606 332 markom
    irq = 2
607 261 markom
    rxfile = "/tmp/uart0.rx"
608
    txfile = "/tmp/uart0.tx"
609
    jitter = -1                     /* async behaviour */
610
  enddevice
611
end
612
 
613 312 markom
 
614
/* DMA SECTION
615
 
616 876 rherveille
   This section configures the DMAs
617 312 markom
 
618
   ndmas = 
619
      make specified number of instances, configure each
620
      instance within device - enddevice construct.
621 428 markom
 
622 312 markom
   instance specific:
623
     baseaddr = 
624
        address of first DMA register for this device
625
 
626
     irq = 
627
        irq number for this device
628 428 markom
 
629 313 markom
     vapi_id = 
630
        VAPI id of this instance
631 312 markom
*/
632
 
633 261 markom
section dma
634 624 ivang
  ndmas = 0
635
/*
636 261 markom
  device 0
637
    baseaddr = 0x90000000
638
    irq = 4
639
  enddevice
640 624 ivang
*/
641 261 markom
end
642 293 markom
 
643 304 markom
 
644 312 markom
/* ETHERNET SECTION
645
 
646 876 rherveille
   This section configures the ETHERNETs
647 312 markom
 
648
   nethernets = 
649
      make specified number of instances, configure each
650
      instance within device - enddevice construct.
651 428 markom
 
652 312 markom
   instance specific:
653
     baseaddr = 
654
        address of first ethernet register for this device
655
 
656
     dma = 
657
        which controller is this ethernet "connected" to
658 428 markom
 
659 724 ivang
     irq = 
660
        ethernet mac IRQ level
661
 
662 725 ivang
     rtx_type = 
663
        use 0 - file interface, 1 - socket interface
664
 
665 312 markom
     rx_channel = 
666
        DMA channel used for RX
667 428 markom
 
668 312 markom
     tx_channel = 
669
        DMA channel used for TX
670
 
671 664 markom
     rxfile = ""
672 312 markom
        filename, where to read data from
673 428 markom
 
674 664 markom
     txfile = ""
675 312 markom
        filename, where to write data to
676 428 markom
 
677 724 ivang
     sockif = ""
678
        interface name of ethernet socket
679
 
680 313 markom
     vapi_id = 
681
        VAPI id of this instance
682 312 markom
*/
683
 
684 304 markom
section ethernet
685 702 ivang
  nethernets = 1
686 428 markom
 
687 702 ivang
 
688 310 markom
  device 0
689
    baseaddr = 0x88000000
690
    dma = 0
691 724 ivang
    irq = 15
692 725 ivang
    rtx_type = 0
693 310 markom
    tx_channel = 0
694
    rx_channel = 1
695
    rxfile = "/tmp/eth0.rx"
696
    txfile = "/tmp/eth0.tx"
697 724 ivang
    sockif = "lo"
698 310 markom
  enddevice
699 702 ivang
 
700 304 markom
end
701 332 markom
 
702 486 erez
/* GPIO SECTION
703
 
704 876 rherveille
   This section configures the GPIOs
705 486 erez
 
706
   ngpios = 
707
      make specified number of instances, configure each
708
      instance within device - enddevice construct.
709
 
710
   instance specific:
711
     baseaddr = 
712
        address of first GPIO register for this device
713
 
714
     irq = 
715
        irq number for this device
716
 
717
     base_vapi_id = 
718
        first VAPI id of this instance
719
        GPIO uses 8 consecutive VAPI IDs
720
*/
721
 
722
section gpio
723
  ngpios = 1
724
 
725
  device 0
726 624 ivang
    baseaddr = 0xA0000000
727 486 erez
    irq = 23
728
    base_vapi_id = 0x0200
729
  enddevice
730
end
731
 
732 645 markom
/* VGA SECTION
733 876 rherveille
 
734
    This section configures the VGA/LCD controller
735
 
736 645 markom
    nvgas = 
737
       number of VGA devices connected
738 876 rherveille
 
739 645 markom
    instance specific:
740
      baseaddr = 
741
        address of first VGA register
742 876 rherveille
 
743 645 markom
      irq = 
744
        irq number for this device
745 876 rherveille
 
746 645 markom
      refresh_rate = 
747
        number of cycles between screen dumps
748 876 rherveille
 
749 645 markom
      filename = ""
750
        template name for generated names (e.g. "primary" produces "primary0023.bmp")
751
*/
752
 
753
section vga
754
  nvgas = 1
755
 
756
  device 0
757
    baseaddr = 0xb0000000
758
    irq = 20
759
    refresh_rate = 100000
760
    filename = "primary"
761
  enddevice
762
end
763
 
764
/* FB SECTION
765 876 rherveille
 
766
    This section configures the frame buffer
767
 
768 645 markom
    enabled = 0/1
769
      whether frame buffer is enabled
770 876 rherveille
 
771 664 markom
    baseaddr = 
772 645 markom
      base address of frame buffer
773 876 rherveille
 
774 645 markom
    paladdr = 
775
      base address of first palette entry
776 876 rherveille
 
777 645 markom
    refresh_rate = 
778
      number of cycles between screen dumps
779 876 rherveille
 
780 645 markom
    filename = ""
781
      template name for generated names (e.g. "primary" produces "primary0023.bmp")
782
*/
783
 
784
section fb
785
  enabled = 1
786 648 markom
  baseaddr = 0xb8000000
787 645 markom
  refresh_rate = 100000
788
  filename = "primary"
789
end
790 664 markom
 
791
/* KBD SECTION
792
 
793 876 rherveille
    This section configures the PS/2 compatible keyboard
794
 
795 664 markom
    enabled = 0/1
796
      whether keyboard is enabled
797 876 rherveille
 
798 664 markom
    baseaddr = 
799
      base address of the keyboard device
800 876 rherveille
 
801 664 markom
    rxfile = ""
802
      filename, where to read data from
803
*/
804
 
805
section kbd
806
  enabled = 1
807
  irq = 21
808
  baseaddr = 0xb1000000
809
  rxfile = "/tmp/kbd.rx"
810
end
811 876 rherveille
 
812
 
813
/* ATA SECTION
814
 
815
    This section configures the ATA/ATAPI host controller
816
 
817
    natas = 
818
       number of ATA hosts connected
819
 
820
    instance specific:
821
      baseaddr = 
822
        address of first ATA register
823
 
824
      irq = 
825
        irq number for this device
826
 
827
      debug = 
828
        debug level for ata models.
829
        0: no debug messages
830
        1: verbose messages
831
        3: normal messages (more messages than verbose)
832
        5: debug messages (normal debug messages)
833
        7: flow control messages (debug statemachine flows)
834
        9: low priority message (display everything the code does)
835
 
836
      dev_type0/1 = 
837
        ata device 0 type
838
        0: NO_CONNeCT: none (not connected)
839
        1: FILE      : simulated harddisk
840
        2: LOCAL     : local system harddisk
841
 
842
      dev_file0/1 = ""
843
        filename for simulated ATA device
844
        valid only if dev_type0 == 1
845
 
846
      dev_size0/1 = 
847
        size of simulated hard-disk (in MBytes)
848
        valid only if dev_type0 == 1
849
 
850
      dev_packet0/1 = 
851
        0: simulated ATA device does NOT implement PACKET command feature set
852
        1: simulated ATA device does implement PACKET command feature set
853
 
854
   FIXME: irq number
855
*/
856
 
857
section ata
858
  natas = 1
859
 
860
  device 0
861
    baseaddr = 0xc8000000
862
    irq = 21
863
 
864
    dev_type0   = 1
865
    dev_file0   = "/tmp/sim_atadev0"
866
    dev_size0   = 1
867
    dev_packet0 = 0
868
 
869
    dev_type1   = 0
870
    dev_file1   = ""
871
    dev_size1   = 0
872
    dev_packet1 = 0
873
  enddevice
874
end
875 897 markom
 
876
 
877
/* CUC SECTION
878
 
879
    This section configures the OpenRISC Custom Unit Compiler
880
 
881
    memory_order = none/weak/strong/exact
882
      none   different memory ordering, even if there are dependencies,
883
             burst can be made, width can change
884
      weak   different memory ordering, if there cannot be dependencies
885
             burst can be made, width can change
886
      strong same memory ordering, burst can be made, width can change
887
      exact  exacltly the same memory ordering and widths
888
 
889
    calling_convention = 0/1
890
      whether programs follow OpenRISC calling conventions
891
 
892
    enable_bursts = 0/1
893
      whether burst are detected
894
 
895
    no_multicycle = 0/1
896
      if selected no multicycle logic paths will be generated
897
 
898
    timings_fn = ""
899
*/
900
 
901
section cuc
902
  memory_order = weak
903
  calling_convention = 1
904
  enable_bursts = 1
905
  no_multicycle = 1
906
  timings_fn = "virtex.tim"
907
end
908
 

powered by: WebSVN 2.1.0

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