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

Subversion Repositories or1k_old

[/] [or1k_old/] [trunk/] [rc203soc/] [sw/] [uClinux/] [arch/] [m68k/] [ifpsp060/] [CHANGES] - Diff between revs 1765 and 1782

Only display areas with differences | Details | Blame | View Log

Rev 1765 Rev 1782
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MOTOROLA MICROPROCESSOR & MEMORY TECHNOLOGY GROUP
MOTOROLA MICROPROCESSOR & MEMORY TECHNOLOGY GROUP
M68000 Hi-Performance Microprocessor Division
M68000 Hi-Performance Microprocessor Division
M68060 Software Package
M68060 Software Package
Production Release P1.00 -- October 10, 1994
Production Release P1.00 -- October 10, 1994
M68060 Software Package Copyright © 1993, 1994 Motorola Inc.  All rights reserved.
M68060 Software Package Copyright © 1993, 1994 Motorola Inc.  All rights reserved.
THE SOFTWARE is provided on an "AS IS" basis and without warranty.
THE SOFTWARE is provided on an "AS IS" basis and without warranty.
To the maximum extent permitted by applicable law,
To the maximum extent permitted by applicable law,
MOTOROLA DISCLAIMS ALL WARRANTIES WHETHER EXPRESS OR IMPLIED,
MOTOROLA DISCLAIMS ALL WARRANTIES WHETHER EXPRESS OR IMPLIED,
INCLUDING IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE
INCLUDING IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE
and any warranty against infringement with regard to the SOFTWARE
and any warranty against infringement with regard to the SOFTWARE
(INCLUDING ANY MODIFIED VERSIONS THEREOF) and any accompanying written materials.
(INCLUDING ANY MODIFIED VERSIONS THEREOF) and any accompanying written materials.
To the maximum extent permitted by applicable law,
To the maximum extent permitted by applicable law,
IN NO EVENT SHALL MOTOROLA BE LIABLE FOR ANY DAMAGES WHATSOEVER
IN NO EVENT SHALL MOTOROLA BE LIABLE FOR ANY DAMAGES WHATSOEVER
(INCLUDING WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS,
(INCLUDING WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS,
BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR OTHER PECUNIARY LOSS)
BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR OTHER PECUNIARY LOSS)
ARISING OF THE USE OR INABILITY TO USE THE SOFTWARE.
ARISING OF THE USE OR INABILITY TO USE THE SOFTWARE.
Motorola assumes no responsibility for the maintenance and support of the SOFTWARE.
Motorola assumes no responsibility for the maintenance and support of the SOFTWARE.
You are hereby granted a copyright license to use, modify, and distribute the SOFTWARE
You are hereby granted a copyright license to use, modify, and distribute the SOFTWARE
so long as this entire notice is retained without alteration in any modified and/or
so long as this entire notice is retained without alteration in any modified and/or
redistributed versions, and that such modified versions are clearly identified as such.
redistributed versions, and that such modified versions are clearly identified as such.
No licenses are granted by implication, estoppel or otherwise under any patents
No licenses are granted by implication, estoppel or otherwise under any patents
or trademarks of Motorola, Inc.
or trademarks of Motorola, Inc.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CHANGES SINCE LAST RELEASE:
CHANGES SINCE LAST RELEASE:
---------------------------
---------------------------
1) "movep" emulation where data was being read from memory
1) "movep" emulation where data was being read from memory
was reading the intermediate bytes. Emulation now only
was reading the intermediate bytes. Emulation now only
reads the required bytes.
reads the required bytes.
2) "flogn", "flog2", and "flog10" of "1" was setting the
2) "flogn", "flog2", and "flog10" of "1" was setting the
Inexact FPSR bit. Emulation now does not set Inexact for
Inexact FPSR bit. Emulation now does not set Inexact for
this case.
this case.
3) For an opclass three FP instruction where the effective addressing
3) For an opclass three FP instruction where the effective addressing
mode was pre-decrement or post-increment and the address register
mode was pre-decrement or post-increment and the address register
was A0 or A1, the address register was not being updated as a result
was A0 or A1, the address register was not being updated as a result
of the operation. This has been corrected.
of the operation. This has been corrected.
4) Beta B.2 version had the following erratum:
4) Beta B.2 version had the following erratum:
        Scenario:
        Scenario:
        ---------
        ---------
        If {i,d}mem_{read,write}_{byte,word,long}() returns
        If {i,d}mem_{read,write}_{byte,word,long}() returns
        a failing value to the 68060SP, the package ignores
        a failing value to the 68060SP, the package ignores
        this return value and continues with program execution
        this return value and continues with program execution
        as if it never received a failing value.
        as if it never received a failing value.
        Effect:
        Effect:
        -------
        -------
        For example, if a user executed "fsin.x ADDR,fp0" where
        For example, if a user executed "fsin.x ADDR,fp0" where
        ADDR should cause a "segmentation violation", the memory read
        ADDR should cause a "segmentation violation", the memory read
        requested by the package should return a failing value
        requested by the package should return a failing value
        to the package. Since the package currently ignores this
        to the package. Since the package currently ignores this
        return value, the user program will continue to the
        return value, the user program will continue to the
        next instruction, and the result created in fp0 will be
        next instruction, and the result created in fp0 will be
        undefined.
        undefined.
        Fix:
        Fix:
        ----
        ----
        This has been fixed in the current release.
        This has been fixed in the current release.
        Notes:
        Notes:
        ------
        ------
        Upon receiving a non-zero (failing) return value from
        Upon receiving a non-zero (failing) return value from
        a {i,d}mem_{read,write}_{byte,word,long}() "call-out",
        a {i,d}mem_{read,write}_{byte,word,long}() "call-out",
        the package creates a 16-byte access error stack frame
        the package creates a 16-byte access error stack frame
        from the current exception stack frame and exits
        from the current exception stack frame and exits
        through the "call-out" _real_access(). This is the process
        through the "call-out" _real_access(). This is the process
        as described in the MC68060 User's Manual.
        as described in the MC68060 User's Manual.
        For instruction read access errors, the info stacked is:
        For instruction read access errors, the info stacked is:
                SR      = SR at time of exception
                SR      = SR at time of exception
                PC      = PC of instruction being emulated
                PC      = PC of instruction being emulated
                VOFF    = $4008 (stack frame format type)
                VOFF    = $4008 (stack frame format type)
                ADDRESS = PC of instruction being emulated
                ADDRESS = PC of instruction being emulated
                FSLW    = FAULT STATUS LONGWORD
                FSLW    = FAULT STATUS LONGWORD
        The valid FSLW bits are:
        The valid FSLW bits are:
                bit 27          = 1     (misaligned bit)
                bit 27          = 1     (misaligned bit)
                bit 24          = 1     (read)
                bit 24          = 1     (read)
                bit 23          = 0     (write)
                bit 23          = 0     (write)
                bit 22:21       = 10    (SIZE = word)
                bit 22:21       = 10    (SIZE = word)
                bit 20:19       = 00    (TT)
                bit 20:19       = 00    (TT)
                bit 18:16       = x10   (TM; x = 1 for supervisor mode)
                bit 18:16       = x10   (TM; x = 1 for supervisor mode)
                bit 15          = 1     (IO)
                bit 15          = 1     (IO)
                bit 0           = 1     (Software Emulation Error)
                bit 0           = 1     (Software Emulation Error)
        all other bits are EQUAL TO ZERO and can be set by the _real_access()
        all other bits are EQUAL TO ZERO and can be set by the _real_access()
        "call-out" stub by the user as appropriate. The MC68060 User's Manual
        "call-out" stub by the user as appropriate. The MC68060 User's Manual
        stated that ONLY "bit 0" would be set. The 060SP attempts to set a few
        stated that ONLY "bit 0" would be set. The 060SP attempts to set a few
        other bits.
        other bits.
        For data read/write access errors, the info stacked is:
        For data read/write access errors, the info stacked is:
                SR      = SR at time of exception
                SR      = SR at time of exception
                PC      = PC of instruction being emulated
                PC      = PC of instruction being emulated
                VOFF    = $4008 (stack frame format type)
                VOFF    = $4008 (stack frame format type)
                ADDRESS = Address of source or destination operand
                ADDRESS = Address of source or destination operand
                FSLW    = FAULT STATUS LONGWORD
                FSLW    = FAULT STATUS LONGWORD
        The valid FSLW bits are:
        The valid FSLW bits are:
                bit 27          = 0     (misaligned bit)
                bit 27          = 0     (misaligned bit)
                bit 24          = x     (read; 1 if read, 0 if write)
                bit 24          = x     (read; 1 if read, 0 if write)
                bit 23          = x     (write; 1 if write, 0 if read)
                bit 23          = x     (write; 1 if write, 0 if read)
                bit 22:21       = xx    (SIZE; see MC68060 User's Manual)
                bit 22:21       = xx    (SIZE; see MC68060 User's Manual)
                bit 20:19       = 00    (TT)
                bit 20:19       = 00    (TT)
                bit 18:16       = x01   (TM; x = 1 for supervisor mode)
                bit 18:16       = x01   (TM; x = 1 for supervisor mode)
                bit 15          = 0     (IO)
                bit 15          = 0     (IO)
                bit 0           = 1     (Software Emulation Error)
                bit 0           = 1     (Software Emulation Error)
        all other bits are EQUAL TO ZERO and can be set by the _real_access()
        all other bits are EQUAL TO ZERO and can be set by the _real_access()
        "call-out" stub by the user as appropriate. The MC68060 User's Manual
        "call-out" stub by the user as appropriate. The MC68060 User's Manual
        stated that ONLY "bit 0" would be set. The 060SP attempts to set a few
        stated that ONLY "bit 0" would be set. The 060SP attempts to set a few
        other bits.
        other bits.
 
 

powered by: WebSVN 2.1.0

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