test.doc

来自「linux 内核源代码」· DOC 代码 · 共 209 行

DOC
209
字号
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~MOTOROLA MICROPROCESSOR & MEMORY TECHNOLOGY GROUPM68000 Hi-Performance Microprocessor DivisionM68060 Software PackageProduction Release P1.00 -- October 10, 1994M68060 Software Package Copyright © 1993, 1994 Motorola Inc.  All rights reserved.THE SOFTWARE is provided on an "AS IS" basis and without warranty.To the maximum extent permitted by applicable law,MOTOROLA DISCLAIMS ALL WARRANTIES WHETHER EXPRESS OR IMPLIED,INCLUDING IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSEand any warranty against infringement with regard to the SOFTWARE(INCLUDING ANY MODIFIED VERSIONS THEREOF) and any accompanying written materials.To the maximum extent permitted by applicable law,IN NO EVENT SHALL MOTOROLA BE LIABLE FOR ANY DAMAGES WHATSOEVER(INCLUDING WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS,BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR OTHER PECUNIARY LOSS)ARISING OF THE USE OR INABILITY TO USE 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 SOFTWAREso long as this entire notice is retained without alteration in any modified and/orredistributed versions, and that such modified versions are clearly identified as such.No licenses are granted by implication, estoppel or otherwise under any patentsor trademarks of Motorola, Inc.~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~68060 SOFTWARE PACKAGE (Kernel version) SIMPLE TESTS-----------------------------------------------------The files itest.sa and ftest.sa contain simple tests to checkthe state of the 68060ISP and 68060FPSP once they have been installed.Release file format:--------------------The release files itest.sa and ftest.sa are essentiallyhexadecimal images of the actual tests. This format is theONLY format that will be supported. The hex images were createdby assembling the source code and then converting the resultingbinary output images into ASCII text files. The hexadecimalnumbers are listed using the Motorola Assembly syntax assemblerdirective "dc.l" (define constant longword). The files can beconverted to other assembly syntaxes by using any word processorwith a global search and replace function.To assist in assembling and linking these modules with other modules,the installer should add symbolic labels to the top of the files.This will allow the calling routines to access the entry pointsof these packages.The source code itest.s and ftest.s have been included but onlyfor documentation purposes.Release file structure:-----------------------(top of module)	-----------------	|		| - 128 byte-sized section   (1)  |   Call-Out	| - 4 bytes per entry (user fills these in)	|		|	-----------------	|		| - 8 bytes per entry   (2)  | Entry Point	| - user does "bsr" or "jsr" to this address	|		|	-----------------	|		| - code section   (3)  ~		~	|		|	-----------------(bottom of module)The first section of this module is the "Call-out" section. This sectionis NOT INCLUDED in {i,f}test.sa (an example "Call-out" section is provided atthe end of this file). The purpose of this section is to allow the testroutines to reference external printing functions that must be providedby the host operating system. This section MUST be exactly 128 bytes insize. There are 32 fields, each 4 bytes in size. Each field correspondsto a function required by the test packages (these functions and theirlocation are listed in "68060{ISP,FPSP}-TEST call-outs" below). Each fieldentry should contain the address of the corresponding function RELATIVE tothe starting address of the "call-out" section. The "Call-out" section mustsit adjacent to the {i,f}test.sa image in memory. Since itest.sa and ftest.saare individual tests, they each require their own "Call-out" sections.The second section, the "Entry-point" section, is used by external routinesto access the test routines. Since the {i,f}test.sa hex files containno symbol names, this section contains function entry points that are fixedwith respect to the top of the package. The currently defined entry-pointsare listed in section "68060{ISP,FPSP}-TEST entry points" below. A callingroutine would simply execute a "bsr" or "jsr" that jumped to the selectedfunction entry-point.For example, to run the 060ISP test, write a program that includes theitest.sa data and execute something similar to:	bsr	_060ISP_TEST+128+0(_060ISP_TEST is the starting address of the "Call-out" section; the "Call-out"section is 128 bytes long; and the 68060ISP test entry point is located0 bytes from the top of the "Entry-point" section.)The third section is the code section. After entering through an "Entry-point",the entry code jumps to the appropriate test code within the code section.68060ISP-TEST Call-outs:------------------------0x0: _print_string()0x4: _print_number()68060FPSP-TEST Call-outs:-------------------------0x0: _print_string()0x4: _print_number()The test packages call _print_string() and _print_number()as subroutines and expect the main program to print a stringor a number to a file or to the screen.In "C"-like fashion, the test program calls:	print_string("Test passed");		or	print_number(20);For _print_string(), the test programs pass a longword addressof the string on the stack. For _print_number(), the test programs passa longword number to be printed.For debugging purposes, after the main program performs a "print"for a test package, it should flush the output so that it's notbuffered. In this way, if the test program crashes, at least the previousstatements printed will be seen.68060ISP-TEST Entry-points:---------------------------0x0: integer test68060FPSP-TEST Entry-points:----------------------------0x00: main fp test0x08: FP unimplemented test0x10: FP enabled snan/operr/ovfl/unfl/dz/inexThe floating-point unit test has 3 entry points which will require3 different calls to the package if each of the three following testsis desired:main fp test: tests (1) unimp effective address exception		    (2) unsupported data type exceptions		    (3) non-maskable overflow/underflow exceptionsFP unimplemented: tests FP unimplemented exception. this one is		  separate from the previous tests for systems that don't		  want FP unimplemented instructions.FP enabled: tests enabled snan/operr/ovfl/unfl/dz/inex.	    basically, it enables each of these exceptions and forces	    each using an implemented FP instruction. this process	    exercises _fpsp_{snan,operr,ovfl,unfl,dz,inex}() and	    _real_{snan,operr,ovfl,unfl,dz,inex}(). the test expects	    _real_XXXX() to do nothing except clear the exception	    and "rte". if a system's _real_XXXX() handler creates an	    alternate result, the test will print "failed" but this	    is acceptable.Miscellaneous:--------------Again, itest.sa and ftest.sa are simple tests and do not thoroughlytest all 68060SP connections. For example, they do not test connectionsto _real_access(), _real_trace(), _real_trap(), etc. because thesewill be system-implemented several different ways and the test packagesmust remain system independent.Example test package set-up:----------------------------_print_str:	.			# provided by system	rts_print_num:	.			# provided by system	rts	.	.	bsr	_060FPSP_TEST+128+0	.	.	rts# beginning of "Call-out" section; provided by integrator.# MUST be 128 bytes long._060FPSP_TEST:	long	_print_str - _060FPSP_TEST	long	_print_num - _060FPSP_TEST	space	120# ftest.sa starts here; start of "Entry-point" section.	long	0x60ff0000, 0x00002346	long	0x60ff0000, 0x00018766	long	0x60ff0000, 0x00023338	long	0x24377299, 0xab2643ea		.		.		.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?