Résumé du contenu de la page N° 1
XP-15 Vector Processor
User Guide
Any trademarks or registered trademarks used in this document belong to the companies that own them.
Copyright © 2001, Texas Memory Systems, Inc. All rights are reserved. No part of this work may be
reproduced or used in any form or by any means - graphic, electronic or mechanical, including photocopying,
recording, taping, or information storage and retrieval systems - without permission of the copyrigh
Résumé du contenu de la page N° 2
Table of Contents Chapter 1 - Introduction ........................................................................................................................ 1-1 1.1 Related Texts .................................................................................................................................... 1-1 1.2 Typographical Conventions ............................................................................................................... 1-1 Chapter 2 - Overview...
Résumé du contenu de la page N° 3
Chapter 1 - Introduction The XP-15 vector processor is a PCI card that can be installed in a workstation and that delivers SuperComputer-class vector processing performance. This document is concerned with the installation and set-up of the XP-15. Chapter 2 gives an overview of the functionality of the XP-15. Chapter 3 describes the hardware and software installation of the XP-15. Chapter 4 describes a programming example for the XP-15 for use in an X-Midas environment. 1.1 Relat
Résumé du contenu de la page N° 4
Chapter 2 - Overview The XP-15 is a high-performance vector processor implemented on a single card suitable for installing in a PCI Local Bus card slot in a general-purpose computer. The XP-15 is based on the 8 GFLOPS TM-44 DSP chip from Texas Memory Systems and includes four 32 MB banks of fast local memory. The XP-15 is programmed by making calls to move data from host memory to XP-15 local memory, to perform one or more vector processing operations on the data, and to move results ba
Résumé du contenu de la page N° 5
Chapter 3 - Installation The XP-15 vector processor has currently been tested in the following computer platforms: q Compaq ALPHASERVER ES40. q Compaq ALPHASERVER DS10. XP-15 Software is currently available for the following operating system revisions: q TRU64 (Digital Unix) 5.1 3.1 Installing the XP-15 Hardware 3.1.1 Jumper Settings The XP-15 has no user-selectable jumpers. 3.1.2 Installing the XP-15 in a Computer Power-off the computer system. Select a suitable vacan
Résumé du contenu de la page N° 6
Enter the mount point of the CDROM - /cdrom What directory do you want to install the XP-15 software to - /usr/tms The XP15 software will be installed from /cdrom to /usr/tms Is this correct (y/n)?yes Installing the XP15 software. Finished installing the USER part of the XP15 software. The final step in installing the XP15 is to install the driver using a script that also asks a few questions. A typical run is shown, again with user responses underlined. #cd /cdrom #./inst
Résumé du contenu de la page N° 7
Xpmon[0]> t99 Running all tests: Performing SPRAG tests … . . testing many functions . . All tests should run without any errors. If any errors occur please contact Texas Memory Systems. 3.3.2 Programming Example Confidence Test The XP-15 confidence test is located on the XP-15 software CDROM in the examples/cfft directory, and a listing of the source code can be found in Appendix A. This simple application creates a signal co
Résumé du contenu de la page N° 8
The sample application is executed with one parameter on the command line: the XP-15 unit to be used. Typically, this will be unit 0 (zero) unless multiple XP-15s are installed in this host computer. % cfft -x 0 XP-15 Confidence test performing a 1048576 point CFFT on XP-15 #0 Allocate memory for test signal and FFT results Clearing results buffer Creating test signal Performing CFFT Wait for all XP-15 functions to complete First 10 values of CFFT results: 00: [ 16.0000, 0.0000]
Résumé du contenu de la page N° 9
Chapter 4 - X-Midas Programming Example: XTMIC This chapter describes the X-Midas programming example, how to execute it, and how to use it as a template for XP-15 applications. The source code is located on the XP-15 software CDROM in the examples/xtmic/ directory. 4.1 Overview The X-Midas programming example is a less robust version of the SAMTMIC software that currently runs on the SAM-450. The XP-15 implementation, referred to as the XTMIC, performs the same basic processing as
Résumé du contenu de la page N° 10
The XTMIC macro requires two command line parameters that determine which files the XTMIC will use for its processing. The input files must contain 16-bit integer data, and must have at least 1507328 elements. Assuming the input files are called input_a and input_b, the command line required to run the XTMIC would look like: % X-Midas> run_x input_a input_b XTMIC> Starting xtmic demo. XTMIC> Setting up files/pipes. XTMIC> Initializing XP15 buffers. XTMIC> Entering loop. Total i
Résumé du contenu de la page N° 11
Appendix A – XP-15 Confidence Test /************************************************************************** Copyright (c) 2001 by Texas Memory Systems, Inc. Texas Memory Systems, Inc. 11200 Westheimer #1000 Houston, TX 77042 (713) 266-3200 Module Name: cfft.c Package: CFFT demo Version: $Revision: $ Release Date: $Date: $ Description: XP15 FFT demo **************************************************
Résumé du contenu de la page N° 12
*/ while ((cc = getopt(argc, argv, "hx:")) != EOF) { switch (cc) { case 'x': xp15 = atoi(optarg); break; case 'h': case '?': default : help(); } } /* * Print some useful information */ printf("XP-15 Confidence test performing a %d point CFFT on XP-15 #%d\n", fft_size, xp15); /* * Allocate host memory for a test signal */ printf("Allocate me
Résumé du contenu de la page N° 13
status = vmov((TMS_FLOAT *)signal, (TMS_FLOAT *)cu, fft_size * 2); if (status < 0) sam_error(status); /* * Perform the CFFT */ printf("Performing CFFT\n"); status = cfft(cu, /* input buffer */ NULL, /* Twids not needed by XP-15 */ cy, /* output/scratch buffer */ 1, /* repeat value - 1 this time */ 1.0
Résumé du contenu de la page N° 14
results[ii].imag); } ecount++; } } if (ecount == 0) printf ("XP-15 confidence test completed with no errors\n"); else printf ("XP-15 confidence test completed with %d errors\n", ecount); exit(0); } /********************************************************************** Function: help Description: display help screen, and exits Arguments: none Returns: none *********************************************
Résumé du contenu de la page N° 15
Appendix B – PCI Local Bus Specifications The XP-15 interface adapter is a 3.3V signaling environment expansion card, as defined by the PCI Local Bus Specification 2.0, 2.1, and 2.2. This means that the XP-15 is designed to operate exclusively in 3.3V signaling environment system motherboards. During the development of the XP-15, the liberty was taken to add a second key slot on the PCI edge connector. This allows for operation and testing in most 5V signaling environment motherbo
Résumé du contenu de la page N° 16
Appendix C – XP-15 Hardware Control and Status Registers The XP-15 is a custom hardware adapter designed to provide processing power to a host computer (DEC Alpha, Intel PC, etc..). The XP-15's data bus is 32-bits or 64-bits wide (depending on the host PCI slot). The following tables describe the XP-15's hardware control registers. Each register is classified as read only, write only, or read/write. The least significant bit of each register is always tied to the least significa
Résumé du contenu de la page N° 17
3 ECHO RO Indicates the XP-15 has returned an ECHO packet 2 SPR RO Indicates the XP-15 has returned an SPR packet 1 DIAG RO Indicates the XP-15 has returned a diagnostic packet 0 STAT RO Indicates the XP-15 has returned a status packet Low PCI SN command address register (32 bits, R/W) Bit # Name Type Description 31-3 NA R/W This register is used to establish the low 32-bits of the PCI address for SN commands to the XP-15. This register consists of the bottom 32-bits of a 32-bit co