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

Subversion Repositories openrisc

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /openrisc/trunk/or1ksim/doc
    from Rev 110 to Rev 112
    Reverse comparison

Rev 110 → Rev 112

/or1ksim.info
1,5 → 1,5
This is ../../or1ksim/doc/or1ksim.info, produced by makeinfo version
4.13 from ../../or1ksim/doc/or1ksim.texi.
This is ../../doc/or1ksim.info, produced by makeinfo version 4.13 from
../../doc/or1ksim.texi.
 
INFO-DIR-SECTION Embedded development
START-INFO-DIR-ENTRY
64,7 → 64,7
Unpack the software and create a _separate_ directory in which to build
it:
 
tar jxf or1ksim-2010-06-06.tar.bz2
tar jxf or1ksim-2010-06-09.tar.bz2
mkdir builddir_or1ksim
cd builddir_or1ksim
 
81,7 → 81,7
OpenRISC 1000 32-bit architecture. If this argument is omitted, it will
default to OpenRISC 1000 32-bit with a warning
 
../or1ksim-2010-06-06/configure --target=or32-uclinux ...
../or1ksim-2010-06-09/configure --target=or32-uclinux ...
 
There are several other options available, many of which are standard
to GNU `configure' scripts. Use `configure --help' to see all the
141,29 → 141,6
analyse register access over time. The default is for this to be
disabled.
 
`--enable-ov-flag'
`--disable-ov-flag'
If enabled, this option causes instructions to set the overflow
flag. The instructions affected by this are `l.add', `l.addc',
`l.addi', `l.and', `l.andi', `l.div', `l.divu', `l.mul', `l.muli',
`l.or', `l.ori', `l.sll', `l.slli', `l.srl', `l.srli', `l.sra',
`l.srai', `l.sub', `l.xor' and `l.xori'.
 
The default is for this to be disabled.
 
Caution: This appears a very dangerous option, to the extent
of arguably being a bug. Whether or not flags are set is
part of the OpenRISC 1000 architectural specification.
Within the above list, the arithmetic instructions (`l.add',
`l.addc', `l.addi', `l.div', `l.divu', `l.mul', `l.muli' and
`l.sub'), together with `l.addic' which is missed out, set
the overflow flag. All the others (`l.and', `l.andi',
`l.or', `l.ori', `l.sll', `l.slli', `l.srl', `l.srli',
`l.sra', `l.srai', `l.xor' and `l.xori') do not.
 
Thus it is impossible to get correct behavior whichever way
this option is set.
 
`--enable-arith-flag'
`--disable-arith-flag'
If enabled, this option causes instructions to set the flag (`F'
209,6 → 186,29
wish to get the missing test(s) working.
 
 
A number of configuration flags have been removed since version 0.3.0,
because they led to invalid behavior of Or1ksim. Those removed include
 
`--enable-ov-flag'
`--disable-ov-flag'
This flag used to cause certain instructions to set the overflow
flag. If not, those instructions would not set the overflow flat.
The instructions affected by this were `l.add', `l.addc',
`l.addi', `l.and', `l.andi', `l.div', `l.divu', `l.mul', `l.muli',
`l.or', `l.ori', `l.sll', `l.slli', `l.srl', `l.srli', `l.sra',
`l.srai', `l.sub', `l.xor' and `l.xori'.
 
This guaranteed incorrect behavior. The OpenRISC 1000 architecture
specification defines which flags are set by which instructions.
 
Within the above list, the arithmetic instructions (`l.add',
`l.addc', `l.addi', `l.div', `l.divu', `l.mul', `l.muli' and
`l.sub'), together with `l.addic' which is missed out, set the
overflow flag. All the others (`l.and', `l.andi', `l.or',
`l.ori', `l.sll', `l.slli', `l.srl', `l.srli', `l.sra', `l.srai',
`l.xor' and `l.xori') do not.
 
 

File: or1ksim.info, Node: Build and Install, Next: Known Issues, Prev: Configuring the Build, Up: Installation
 
248,7 → 248,7
=============================
 
The following problems and issues are known about with Or1ksim
2010-06-06. The OpenRISC tracker may be used to see the current state
2010-06-09. The OpenRISC tracker may be used to see the current state
of these issues and to raise new problems and feature requests. It may
be found at `http://www.opencores.org/ptracker.cgi/view/or1k/398'.
 
3426,25 → 3426,25
* --debug-config: Standalone Simulator.
(line 48)
* --disable-all-tests: Configuring the Build.
(line 133)
(line 110)
* --disable-arith-flag: Configuring the Build.
(line 98)
(line 75)
* --disable-debug: Configuring the Build.
(line 126)
(line 103)
* --disable-ethphy: Configuring the Build.
(line 59)
* --disable-ov-flag: Configuring the Build.
(line 75)
(line 123)
* --disable-profiling: Configuring the Build.
(line 30)
* --disable-range-stats: Configuring the Build.
(line 69)
* --enable-all-tests: Configuring the Build.
(line 132)
(line 109)
* --enable-arith-flag: Configuring the Build.
(line 97)
(line 74)
* --enable-debug: Configuring the Build.
(line 125)
(line 102)
* --enable-ethphy: Configuring the Build.
(line 58)
* --enable-execution: Configuring the Build.
3452,7 → 3452,7
* --enable-mprofile: Standalone Simulator.
(line 77)
* --enable-ov-flag: Configuring the Build.
(line 74)
(line 122)
* --enable-profile: Standalone Simulator.
(line 74)
* --enable-profiling: Configuring the Build.
3524,9 → 3524,9
(line 66)
* 16550 (UART configuration): UART Configuration. (line 73)
* all tests enabled: Configuring the Build.
(line 133)
(line 110)
* Argtable2 debugging: Configuring the Build.
(line 126)
(line 103)
* ATA/ATAPI configuration: Disc Interface Configuration.
(line 6)
* ATA/ATAPI device configuration: Disc Interface Configuration.
3679,7 → 3679,7
(line 6)
* Debug Unit verification (VAPI): Verification API. (line 34)
* debugging enabled (Argtable2): Configuring the Build.
(line 126)
(line 103)
* DejaGnu board configurations: Regression Testing. (line 35)
* DejaGnu configuration: Regression Testing. (line 21)
* DejaGNU tests directories: Regression Testing. (line 50)
3806,7 → 3806,7
* firmware (ATA/ATAPI device configuration): Disc Interface Configuration.
(line 117)
* flag setting by instructions: Configuring the Build.
(line 98)
(line 75)
* floating point multiply and add: Known Issues. (line 56)
* floating point support: Known Issues. (line 42)
* frame buffer configuration: Frame Buffer Configuration.
3962,7 → 3962,7
* or1ksim_set_time_point: Simulator Library. (line 73)
* output rediretion: Concepts. (line 7)
* overflow flag setting by instructions: Configuring the Build.
(line 75)
(line 123)
* packet (ATA/ATAPI device configuration): Disc Interface Configuration.
(line 113)
* pagesize (MMU configuration): Memory Management Configuration.
4216,7 → 4216,7
* test README: Regression Testing. (line 32)
* testing: Regression Testing. (line 6)
* tests, all enabled.: Configuring the Build.
(line 133)
(line 110)
* timings_file (CUC configuration): CUC Configuration. (line 46)
* timings_fn (CUC configuration - deprecated): CUC Configuration.
(line 46)
4294,55 → 4294,55
 

Tag Table:
Node: Top830
Node: Installation1240
Node: Preparation1487
Node: Configuring the Build1782
Node: Build and Install7506
Node: Known Issues8352
Node: Usage11414
Node: Standalone Simulator11628
Node: Profiling Utility14531
Node: Memory Profiling Utility15441
Node: Simulator Library16806
Node: Configuration24584
Node: Configuration File Format25193
Node: Configuration File Preprocessing25485
Node: Configuration File Syntax25856
Node: Simulator Configuration28641
Node: Simulator Behavior28932
Node: Verification API Configuration32976
Node: CUC Configuration34916
Node: Core OpenRISC Configuration36833
Node: CPU Configuration37335
Node: Memory Configuration41453
Node: Memory Management Configuration47911
Node: Cache Configuration50288
Node: Interrupt Configuration52674
Node: Power Management Configuration53410
Node: Branch Prediction Configuration54687
Node: Debug Interface Configuration56047
Node: Peripheral Configuration60267
Node: Memory Controller Configuration60893
Node: UART Configuration64307
Node: DMA Configuration67826
Node: Ethernet Configuration69693
Node: GPIO Configuration73669
Node: Display Interface Configuration75302
Node: Frame Buffer Configuration77611
Node: Keyboard Configuration79475
Node: Disc Interface Configuration81713
Node: Generic Peripheral Configuration86656
Node: Interactive Command Line88951
Node: Verification API95925
Node: Code Internals100355
Node: Coding Conventions100938
Node: Global Data Structures105365
Node: Concepts108022
Ref: Output Redirection108167
Node: Internal Debugging108706
Node: Regression Testing109230
Node: GNU Free Documentation License113025
Node: Index135432
Node: Top814
Node: Installation1224
Node: Preparation1471
Node: Configuring the Build1766
Node: Build and Install7464
Node: Known Issues8310
Node: Usage11372
Node: Standalone Simulator11586
Node: Profiling Utility14489
Node: Memory Profiling Utility15399
Node: Simulator Library16764
Node: Configuration24542
Node: Configuration File Format25151
Node: Configuration File Preprocessing25443
Node: Configuration File Syntax25814
Node: Simulator Configuration28599
Node: Simulator Behavior28890
Node: Verification API Configuration32934
Node: CUC Configuration34874
Node: Core OpenRISC Configuration36791
Node: CPU Configuration37293
Node: Memory Configuration41411
Node: Memory Management Configuration47869
Node: Cache Configuration50246
Node: Interrupt Configuration52632
Node: Power Management Configuration53368
Node: Branch Prediction Configuration54645
Node: Debug Interface Configuration56005
Node: Peripheral Configuration60225
Node: Memory Controller Configuration60851
Node: UART Configuration64265
Node: DMA Configuration67784
Node: Ethernet Configuration69651
Node: GPIO Configuration73627
Node: Display Interface Configuration75260
Node: Frame Buffer Configuration77569
Node: Keyboard Configuration79433
Node: Disc Interface Configuration81671
Node: Generic Peripheral Configuration86614
Node: Interactive Command Line88909
Node: Verification API95883
Node: Code Internals100313
Node: Coding Conventions100896
Node: Global Data Structures105323
Node: Concepts107980
Ref: Output Redirection108125
Node: Internal Debugging108664
Node: Regression Testing109188
Node: GNU Free Documentation License112983
Node: Index135390

End Tag Table
/or1ksim.texi
178,37 → 178,6
If enabled, this option allows statistics to be collected to analyse
register access over time. The default is for this to be disabled.
 
@item --enable-ov-flag
@cindex @code{--enable-ov-flag}
@itemx --disable-ov-flag
@cindex @code{--disable-ov-flag}
@cindex overflow flag setting by instructions
If enabled, this option causes instructions to set the overflow
flag. The instructions affected by this are @code{l.add},
@code{l.addc}, @code{l.addi}, @code{l.and}, @code{l.andi},
@code{l.div}, @code{l.divu}, @code{l.mul}, @code{l.muli}, @code{l.or},
@code{l.ori}, @code{l.sll}, @code{l.slli}, @code{l.srl},
@code{l.srli}, @code{l.sra}, @code{l.srai}, @code{l.sub}, @code{l.xor}
and @code{l.xori}.
 
The default is for this to be disabled.
 
@quotation Caution
This appears a very dangerous option, to the extent of arguably being
a bug. Whether or not flags are set is part of the OpenRISC 1000
architectural specification. Within the above list, the arithmetic
instructions (@code{l.add}, @code{l.addc}, @code{l.addi},
@code{l.div}, @code{l.divu}, @code{l.mul}, @code{l.muli} and
@code{l.sub}), together with @code{l.addic} which is missed out, set
the overflow flag. All the others (@code{l.and}, @code{l.andi},
@code{l.or}, @code{l.ori}, @code{l.sll}, @code{l.slli}, @code{l.srl},
@code{l.srli}, @code{l.sra}, @code{l.srai}, @code{l.xor} and
@code{l.xori}) do not.
 
Thus it is impossible to get correct behavior whichever way this option is
set.
@end quotation
 
@item --enable-arith-flag
@cindex @code{--enable-arith-flag}
@itemx --disable-arith-flag
266,6 → 235,37
 
@end table
 
A number of configuration flags have been removed since version 0.3.0,
because they led to invalid behavior of Or1ksim. Those removed include
 
@table @code
 
@item --enable-ov-flag
@cindex @code{--enable-ov-flag}
@itemx --disable-ov-flag
@cindex @code{--disable-ov-flag}
@cindex overflow flag setting by instructions
This flag used to cause certain instructions to set the overflow flag.
If not, those instructions would not set the overflow flat. The
instructions affected by this were @code{l.add}, @code{l.addc},
@code{l.addi}, @code{l.and}, @code{l.andi}, @code{l.div}, @code{l.divu},
@code{l.mul}, @code{l.muli}, @code{l.or}, @code{l.ori}, @code{l.sll},
@code{l.slli}, @code{l.srl}, @code{l.srli}, @code{l.sra}, @code{l.srai},
@code{l.sub}, @code{l.xor} and @code{l.xori}.
 
This guaranteed incorrect behavior. The OpenRISC 1000 architecture
specification defines which flags are set by which instructions.
 
Within the above list, the arithmetic instructions (@code{l.add},
@code{l.addc}, @code{l.addi}, @code{l.div}, @code{l.divu}, @code{l.mul},
@code{l.muli} and @code{l.sub}), together with @code{l.addic} which is
missed out, set the overflow flag. All the others (@code{l.and},
@code{l.andi}, @code{l.or}, @code{l.ori}, @code{l.sll}, @code{l.slli},
@code{l.srl}, @code{l.srli}, @code{l.sra}, @code{l.srai}, @code{l.xor}
and @code{l.xori}) do not.
 
@end table
 
@node Build and Install
@section Building and Installing
Build the tool with:
/version.texi
1,4 → 1,4
@set UPDATED 8 June 2010
@set UPDATED 9 June 2010
@set UPDATED-MONTH June 2010
@set EDITION 2010-06-06
@set VERSION 2010-06-06
@set EDITION 2010-06-09
@set VERSION 2010-06-09

powered by: WebSVN 2.1.0

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