1 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2 MOTOROLA MICROPROCESSOR & MEMORY TECHNOLOGY GR 3 M68000 Hi-Performance Microprocessor Division 4 M68060 Software Package 5 Production Release P1.00 -- October 10, 1994 6 7 M68060 Software Package Copyright © 1993, 199 8 9 THE SOFTWARE is provided on an "AS IS" basis a 10 To the maximum extent permitted by applicable 11 MOTOROLA DISCLAIMS ALL WARRANTIES WHETHER EXPR 12 INCLUDING IMPLIED WARRANTIES OF MERCHANTABILIT 13 and any warranty against infringement with reg 14 (INCLUDING ANY MODIFIED VERSIONS THEREOF) and 15 16 To the maximum extent permitted by applicable 17 IN NO EVENT SHALL MOTOROLA BE LIABLE FOR ANY D 18 (INCLUDING WITHOUT LIMITATION, DAMAGES FOR LOS 19 BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORM 20 ARISING OF THE USE OR INABILITY TO USE THE SOF 21 Motorola assumes no responsibility for the mai 22 23 You are hereby granted a copyright license to 24 so long as this entire notice is retained with 25 redistributed versions, and that such modified 26 No licenses are granted by implication, estopp 27 or trademarks of Motorola, Inc. 28 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 29 68060 FLOATING-POINT SOFTWARE PACKAGE (Kernel 30 ---------------------------------------------- 31 32 The file fpsp.sa contains the 68060 Floating-P 33 Package. This package is essentially a set of 34 that can be integrated into an operating syste 35 These exception handlers emulate Unimplemented 36 instructions using unimplemented data types, a 37 using unimplemented addressing modes. In addit 38 includes exception handlers to provide full IE 39 exception handling. 40 41 Release file format: 42 -------------------- 43 The file fpsp.sa is essentially a hexadecimal 44 release package. This is the ONLY format which 45 The hex image was created by assembling the so 46 then converting the resulting binary output im 47 ASCII text file. The hexadecimal numbers are l 48 using the Motorola Assembly Syntax assembler d 49 (define constant longword). The file can be co 50 assembly syntaxes by using any word processor 51 search and replace function. 52 53 To assist in assembling and linking this modul 54 the installer should add a symbolic label to t 55 This will allow calling routines to access the 56 of this package. 57 58 The source code fpsp.s has also been included 59 documentation purposes. 60 61 Release file structure: 62 ----------------------- 63 64 (top of module) 65 ----------------- 66 | | - 128 byte-sized sec 67 (1) | Call-Out | - 4 bytes per entry 68 | | - example routines i 69 ----------------- 70 | | - 8 bytes per entry 71 (2) | Entry Point | - user does "bra" or 72 | | 73 ----------------- 74 | | - code section 75 (3) ~ ~ 76 | | 77 ----------------- 78 (bottom of module) 79 80 The first section of this module is the "Call- 81 is NOT INCLUDED in fpsp.sa (an example "Call-o 82 the end of the file fskeleton.s). The purpose 83 the FPSP routines to reference external functi 84 by the host operating system. This section MUS 85 size. There are 32 fields, each 4 bytes in siz 86 to a function required by the FPSP (these func 87 listed in "68060FPSP call-outs" below). Each f 88 the address of the corresponding function RELA 89 of the "call-out" section. The "Call-out" sect 90 fpsp.sa image in memory. 91 92 The second section, the "Entry-point" section, 93 to access the functions within the FPSP. Since 94 no symbol names, this section contains functio 95 with respect to the top of the package. The cu 96 are listed in section "68060 FPSP entry points 97 would simply execute a "bra" or "jmp" that jum 98 entry-point. 99 100 For example, if the 68060 hardware took a "Lin 101 (vector #11), the operating system should exec 102 103 bra _060FPSP_TOP+128+48 104 105 (_060FPSP_TOP is the starting address of the " 106 section is 128 bytes long; and the F-Line FPSP 107 48 bytes from the top of the "Entry-point" sec 108 109 The third section is the code section. After e 110 the entry code jumps to the appropriate emulat 111 112 68060FPSP call-outs: (details in fskeleton.s) 113 -------------------- 114 0x000: _060_real_bsun 115 0x004: _060_real_snan 116 0x008: _060_real_operr 117 0x00c: _060_real_ovfl 118 0x010: _060_real_unfl 119 0x014: _060_real_dz 120 0x018: _060_real_inex 121 0x01c: _060_real_fline 122 0x020: _060_real_fpu_disabled 123 0x024: _060_real_trap 124 0x028: _060_real_trace 125 0x02c: _060_real_access 126 0x030: _060_fpsp_done 127 128 0x034: (Motorola reserved) 129 0x038: (Motorola reserved) 130 0x03c: (Motorola reserved) 131 132 0x040: _060_imem_read 133 0x044: _060_dmem_read 134 0x048: _060_dmem_write 135 0x04c: _060_imem_read_word 136 0x050: _060_imem_read_long 137 0x054: _060_dmem_read_byte 138 0x058: _060_dmem_read_word 139 0x05c: _060_dmem_read_long 140 0x060: _060_dmem_write_byte 141 0x064: _060_dmem_write_word 142 0x068: _060_dmem_write_long 143 144 0x06c: (Motorola reserved) 145 0x070: (Motorola reserved) 146 0x074: (Motorola reserved) 147 0x078: (Motorola reserved) 148 0x07c: (Motorola reserved) 149 150 68060FPSP entry points: 151 ----------------------- 152 0x000: _060_fpsp_snan 153 0x008: _060_fpsp_operr 154 0x010: _060_fpsp_ovfl 155 0x018: _060_fpsp_unfl 156 0x020: _060_fpsp_dz 157 0x028: _060_fpsp_inex 158 0x030: _060_fpsp_fline 159 0x038: _060_fpsp_unsupp 160 0x040: _060_fpsp_effadd 161 162 163 164 Miscellaneous: 165 -------------- 166 167 _060_fpsp_snan: 168 ---------------- 169 - documented in 3.5 of 060SP spec. 170 - Basic flow: 171 exception taken ---> enter _060_fpsp_s 172 173 always exits through _060_real_sna 174 175 _060_fpsp_operr: 176 ---------------- 177 - documented in 3.5 of 060SP spec. 178 - Basic flow: 179 exception taken ---> enter _060_fpsp_o 180 181 always exits through _060_real_oper 182 183 _060_fpsp_dz: 184 ---------------- 185 - documented in 3.7 of 060SP spec. 186 - Basic flow: 187 exception taken ---> enter _060_fpsp_d 188 189 always exits through _060_real_dz 190 191 _060_fpsp_inex: 192 ---------------- 193 - documented in 3.6 of 060SP spec. 194 - Basic flow: 195 exception taken ---> enter _060_fpsp_i 196 197 always exits through _060_real_ine 198 199 200 _060_fpsp_ovfl: 201 ---------------- 202 - documented in 3.4 of 060SP spec. 203 - Basic flow: 204 exception taken ---> enter _060_fpsp_o 205 206 may exit through _060_real_inex 207 208 may exit through _060_real_ovfl 209 210 may exit through _060_fpsp_done 211 212 _060_fpsp_unfl: 213 ---------------- 214 - documented in 3.4 of 060SP spec. 215 - Basic flow: 216 exception taken ---> enter _060_fpsp_u 217 218 may exit through _060_real_inex 219 220 may exit through _060_real_unfl 221 222 may exit through _060_fpsp_done 223 224 225 _060_fpsp_fline: 226 ----------------- 227 - not fully documented in 060SP spec. 228 - Basic flow: 229 exception taken ---> enter _060_fpsp_f 230 231 ---------------------------------- 232 | | 233 v v 234 (unimplemented (fpu disabled) (poss 235 stack frame) | 236 | v sp 237 | exit through 238 | _060_real_fpu_disabled 239 | 240 | ^ 241 | | 242 | | 243 | | fpu 244 | | 245 v | ---- 246 | | | 247 | | v 248 | |-----------(yes) 249 | 250 |----<---------------------------- 251 | 252 | 253 |----> may exit through _060_real_ 254 | 255 |----> may exit through _060_real_ 256 | 257 |----> may exit through _060_real_ 258 | 259 |----> may exit through _060_fpsp_ 260 261 262 _060_fpsp_unsupp: 263 ------------------ 264 - documented in 3.1 of 060SP spec. 265 - Basic flow: 266 exception taken ---> enter _060_fpsp_u 267 268 269 may exit through _060_real_snan 270 271 may exit through _060_real_operr 272 273 may exit through _060_real_ovfl 274 275 may exit through _060_real_unfl 276 277 may exit through _060_real_inex 278 279 may exit through _060_real_trace 280 281 may exit through _060_fpsp_done 282 283 284 _060_fpsp_effadd: 285 ------------------ 286 - documented in 3.3 of 060 spec. 287 - Basic flow: 288 exception taken ---> enter _060_fpsp_e 289 290 291 may exit through _060_real_trace 292 293 may exit through _060_real_fpu_disabled 294 295 may exit through _060_fpsp_done
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.