-
AfD-A 622 CN MEASUREMENT SYSTEM SOFTWARE SYSTEM MAINTENANCE
1/3NANUAL(U) EG AND 6 WASHINGTON ANALYTICAL SERVICESCENTER INC
ALBUQJERGU. R NELSON ET AL. 82 APR 82
UNCLASSIFIED EG/G-AG-1435 DNA-6232F DNA81i-88-C-8298
NLEIIIIIIIIIIlllhhlllllllllIIIIIIIIIIIIIIfllflflIIIIIIIIIIIIIIIIIIIIIIIIIIII
Slflfllflfllfllfllflfl
IIIIIIIIIIIIII.
-
'j1
11 11.8
MICROCOPY RESOLUTION TEST CHARTNATIONAL BUREAU OF STANDARDS-1963
A
0
S
---0
L °
-
DNA 6232F
N CW MEASUREMENT SYSTEM• " N Software System Maintenance
Manual
ID__" EG&G Washington Analytical Services Center, Inc.
__ 2450 Alamo Avenue SEAlbuquerque, New Mexico 87106
2 April 1982
Final Report for Period 27 May 1980 -2 April 1982
CONTRACT No. DNA 001-80-C-0290
APPROVED FOR PUBLIC RELEASE;DISTRIBUTION UNLIMITED.
THIS WORK WAS SPONSORED BY THE DEFENSE NUCLEAR AGENCYUNDER
RDT&E RMSS CODE B362080462 G52AAXEX40502 H2590D.
Prepared for DTICDirector "IECTE
-. J.
\~MAR 22 19850..DEFENSE NUCLEAR AGENCY0 Washington, DC 20305
IB
LA.
85 oa 06 0070. . . . . . . . . . , • . . . . ..
-
41-
Destroy this report when it is no longerneeded. Do not return to
sender.
PLEASE NOTIFY THE DEFENSE NUCLEAR AGENCY,ATTN: STTI, WASHINGTON,
D.C. 20305, IFYOUR ADDRESS IS INCORRECT, IF YOU WISH TOBE DELETED
FROM THE DISTRIBUTION LIST, ORaIF THE ADDRESSEE IS NO LONGER
EMPLOYED BYYOUR ORGANIZATION.
-. _ . -. - . . : D :q .. - - . . .. L , . i . .- 2:. . . - . m
i '
-
UNCLASSIFIEDSECURITY CLASSIFICATION OF THIS PAGE (whlen Data
Entered)
REPOT DCUMNTATON AGEREAD INSTRUCTIONS______
REPORT____DOCUMENTATION______PAGE_ BEFORECOMPLETINGFORM
DNA 6232R FUBE 2GVT ACCESSION NO. 3. RECIPIENT'S CATALOG
NUMBER
4. TITLE (nd Subtltle) .TYEOF REPORT & PERIOD COVERED .CW
MEASUREMENT SYSTEM Final Report for PeriodSoftware System
Maintenance Manual 27 May 80-2 Apr 82
6. PERFORMING ORG. REPORT NUMBER
______________________________________AG- 14 357. AUTIHOR(s) S.
CONTRACT OR GRANT NUMBER(s).
Rick Nelson DNA 001-80-C-0290 .Pat Lindsey
9. PERFORMING ORGANIZATION NAME AND ADDRESS 10. PROGRAM ELEMENT.
PROJECT. TASKAREA & WORK UNIT NUMBERSEG&G Washington
Analytical Services Center, Inc.
2450 Alamo Avenue, SE Task G52AAXEX-40502Albuquerque, New Mexico
871061. CONTROLLING OFFICE NAME AND ADDRESS 12. REPORT DATE0
Director 2 April 1982Defense Nuclear Agency 13. NUMBER OF
PAGESWashington, DC 20305 21414. MONITORING AGENCY NAME
&ADORESS(l different fromn Controlling Office) IS. SECURITY
CLASS (of this report)
UNCLASSIFIED
ISa. DECLASSI FICATION/
DOWNGRADINGSCHEDULE________________________________N/A since
UCSSIED
16. DISTRIBUTION STATEMENT (of this Report)
Approved for public release; distribution unlimited.
17 DISTRIBUTION STATEMENT (of the abstract entered In Block 20.
it different from Report)
I1. SUPPLEMENTARY NOTES
This work was sponsored by the Defense Nuclear Agencyunder
RDT&E RTISS Code B362080462 G52AAXEX40502 II2b90D.
19 KEY WORDS (Continue on rewers& side it necessary and
identify by block number)PUP-11 Flecs FORTRAN Pseudo-DeviceSoftware
PCU MessageFirmware CW GPIBStructured Programming Data Structure
IEEE 488 BusEPROM Global Flag Logical Device20 ABSTRACT (Continue
an reverse side It necessary atnd identify by block number)
Manual for use by system engineers for maintenance of CWMS
Upgrade softwaresystem. Covers design details of PUP-11 software,
and INTEL 8080 PCU software,including system data structures,
communication protocol, software moduledescriptions, and
description of coding practices and languages used to generatethe
software.
DD JN, 3 1473 CDITION O I NOV 6S IS OBSOLETEUNLSIFESECURITY
CLASSIFICATION OF THIS PAGE (1111en Data Entered)
-
A.UNCLASS IF IED
N. -
SECURISECURITYICLASSIFICATIONTOFS THIS(PAOn Dlan Data
Endeue.)
., . . .- , . . . .. . . . . • , . . . . . . . . o . . .
". "'A .. ' * . . . ' " .-. • "" '" ,. " '" .* ' ,-.; ' .' '-
-... , "''' *.- -,-. .- L- .- ,-,. " ' . .' . . " -"-
-
7 7toTt d - .
CONVERSION FACTORS FOR U.S. CUSTOMARY
TO METRIC (SI) UNITS OF MEASUREMENT
To Convert From To klultiply Byl'
Angstrom meters cm) 1.000 000 X E -10 --
itosDhere normal) kilo pascal (kPa) 1.013 25 X E .2
Par kilo pasc*l (kPa) 1.000 000 X E -2
harn meter (m) 1.000 000 X E -28
3ritish thermal unit (thermochemical) joule (J) 1.054 330 X E
-3
* : thermochemzcal, cm-5 mega joule/m "MJ,m') 4 134 900 K E
-2
:alrie thermochemical)§ joule (J) 4.184 000
calarie .thermochemicall/gi joule per kilogram (J/kg)" 4.184 000
X .3
curiei giga becquerel (GBq)P 3.'00 000 X E -1
degree Celsius$ degree kelvin (K) t, - t*C : 73.15
Jezree angles radian (rad) 1.-45 329 x -2
Jeiree Fahrenhe:t degree kelvin (K) : < (:tF ' 459.67),1A
electron volti joule (J) 1.602 19 X F -19
erg§ joule (J) 1.000 000 x F --
ergsecond watt (W) 1.000 000 XE -
foot meter (m) 3.048 000 X E -1
foot-nound-force joule (J) 1.355 18
gallon U.S. liquid) meter3 (m ) 3.85 412 X E -3
inch meter (m) 2.540 000 K E -2
,erk joule (J) 1.000 000 X E -9
,oule/kilogram (J/kg) (radiationdose absorbed)i gray (Gv)" 1.000
000
kilotonsi terajoules 4.183
kip 0n,)O lbf) newton (N) 4.448 222 X E -3
ki inch ksi) kilo pascal (kPa) 6. 94 '57 X E .3 * ,.ktao
newton-second/m -N-s /m') 1.000 000 X E .2
i ron meter (m) 1.000 000 X E -6
,ii meter fm) 2.540 000 X E -s
mile international) meter (m) 1.609 344 X E -3
ounce kilogram (kg) 2.834 952 X E -2
nound-force (lbf avoirdupois) newton (N) 4.148 22
oound-force inch newton-meter (N-m) 1.129 848 X E -1
pound-frce inch newton/meter (N/m) 1.751 268 K E -2
pound-force/foot" kilo pascal (kPa) 4.788 026 X E -2
oound-force,inch (psi) kilo pascal (kPa) 6.894 -57
wound-mass Ibm avoirdupois) kilogram (kg) 4.535 924 X E -1,
,,
oound--,si-foor " moment of inertia) kilogram-meter (k -'m"
4.214 O l K E -2
oound-mass foot' kilogram-meter (kV/I 1.b01 84b X E --1
tad radiation Jose absorbedl§ gray (Gy)* 1.000 000 8 F -E
r*oenr en 3 coulomb/kilogram CA g) 2.3 9 "60 8 -
e second 's ) F. 0 ' 0 8 F -4
a kilogram (kg) 1.459 390 X E -1
rr n .i )' Z . kilo pascal kPa) 1.333 22 X E -1 F l
~Avvliablty Codes
Dist SpeciaIl
-
7". - -
TABLE OF CONTENTS
Section Page
CONVERSION FACTORS FOR U.S. CUSTOMARY TO
METRIC (SI) UNITS OF MEASUREMENT ................. 1
SYSTEM OVERVIEW .............................. 7
2 DATA COLLECTION MODULES ...................... 11 -,
2-1 INPUT TASK ('INPUT') ....................... 11
2-2 CORRECTIONS AND BUFFERING TASK
('CORECT') ............................. 12
2-3 CRT DISPLAY TASK ('CRT') ................. 19
2-4 INVERS. TASK ('INVERS') ................ 24
2-5 HAARD COPY PLOTTING TASKS ('NHCPLT' AND
('NPSPLR') .......................... 32
2-6 TAPE OUTPUT TASKS ('STRTTP' AND
'TPWRTR') ............................. 33
2-7 DISK SAVE TASK ('ANLSAV') ............. 34
2-8 SET UP THE DATA LINKS TASK ('ODL') ..... 34
2-9 MISSION FILENAME TASK ('MISNAM') ....... 34
2-10 PROM PROGRAMMING TASKS ('DEL AND AMPL') 35
2-11 ANALYTIC PROBE CALIBRATION TASK
('APROBE' ) ............................. 36
2-11.1 Background Discussion .......... 35
2-11.2 Operation .......................... 37
2-12 INPUT WAVEFORM AND BUTTERWORTH FILTER -
TASK ( THRTWV') ........................ 38
3 INTERACTIVE ANALYST PACKAGE ... ............ 40
3-1 INTRODUCTION ........................... 40
3-2 COMMAND STRING PROCESSOR ............... .. 44
3-3 ADD, MUL, DIV AND SUB .................. 45..4
3-4 ADD HEADER PROCESS (AHD) .................. 46
3-5 ANL .................................... 47
3-6 CTP .................................... 47
3-7 CVT .................................... 50
3-8 DED .................................... 52
3-9 FTR ............ ........................ 55
2
-
TABLE OF CONTENTS (CONTINUED)
Section Page
3-10 ITR .................................... 55
3-11 LHD ...... ......................... 56
3-12 LON AND LOF... ...... ........ 56
3-13 MIS ............ ....... .o .......... ... 57
3-14 TPC ....................................... 58
4 SYSTEM DATA STRUCTURES AND GLOBAL VARIABLES.. 59
4-1 INTRODUCTION .................... 59
4-2 FILE STRUCTURES- ......................... 59
4-2.1 Operating System Constructs..... 59
4-2.1.1 UPD'S and UIC's ........ 59
4-2.1.2 Filenames .............. 62
4-2.1.3 Logical Units.......... 63
4-2.1.4 Pseudo- and Logical-
Devices .................. 64
4-2.2 Disk and Disk .File Organization. 65
4-2.3 Locally Defined Disk File Struc-
tures..... ....... ............ 66
4-2.3.1 MENU Files ........ ..... 66
4-2.3.2 Data Files .............. 71
4-2.3.3 Calibration Files....... 76
4-2.3.4 Threat Waveform Files.. 78
4-3 MESSAGE STRUCTURES .................... 78
4-3.1 Panel Data Block (PDB) Struc-
tures... ....................... 79
4-3.2 Data Block Structures ........... 80
* 4-3.3 Error Status Block (ESB) Struc-t
ures............................. 85
4-4 GLOBAL FLAGS .............................. 86
4-5 OTHER SOFTWARE SYSTEM STRUCTURES ....... 98
* 4-5.1 Output Cassette File Structures. 88
4-5.2 Frequency Table Entries......... 90
4-6 1-DISK OPERATION .......................... 91
4-7 TERMINAL PORT ASSIGNMENTS- ........... 92
3
3 - -
*.%*.*
-
TABLE OF CONTENTS (CONTINUED)
Section Page
5 OPERATING SYSTEM SUPPORT PROGRAMS ............... 93
5-1 GENERAL ........................ ........ 93
5-2 RSX-11M ................................ 93
5-3 THE EDITOR (EDT) ....................... 94
5-4 FORTRAN IV PLUS (F4P) ..................... 94
5-5 TASK BUILDER (TKB) ..................... 94
5-6 PERIPHERAL INTERCHANGE PROGRAM (PIP)... 95
5-7 MONITOR CONSOLE ROUTINE (MCR) ............ 95
5-8 FILE DUMP UTILITY PROGRAM (DMP) .......... 95
5-9 THE DISK INTEGRITY CHECKING UTILITY
(BAD) ........ ................. ............ 95
5-10 DISK SAVE AND COMPRESS UTILITY (DSC)... 95
6 SOFTWARE DEVELOPMENT............................. 96
6-1 SYSTEM PROGRAM DESIGN LANGUAGE (PDL)... 96
6-2 PDL CONSTRUCTS ......................... 99
6-2.1 IF-THEN-ELSE Statement (See
Figure 6-1)................ ...... 99
6-2.2 FOR Statement (See Figure 6-2).. 100
6-2.3 REPEAT Statement (See Figure
6-3) ............................ .. 101
6-2.4 WHILE Statement (See Figure 6-4) 102
6-2.5 CASE Statement (See Figure 6-5). 103
6-2.6 PROCEDURE Statement (See Figure
6-6)............................. 104
6-2.7 PROGRAM Statement (See Figure0I6-7)... ...... o
.ooooooo........105
6-3 PDL UTILITY PROGRAMS........... ..... 106
6-3.1 IPDL - Ident PDLs.. ............. 109
6-4 CONVERTING PDLs to FLECS STATEMENTS-. 109
6-4.1 IF-THEN-ELSE............. 112
6-4.2 REPEAT-UNTIL .... ................ 112
6-4.3 WHILE-DO .......... ..... ... 113
6-4.4 FOR .............................. 11366-4.5 CASE..... . .
.113-|
--4e • ~ s ooooooooe oo . oeeoo oo eo. 1
4
-
TABLE OF CONTENTS (CONTINUED)
Section Page
6-4.6 PROCEDURES .......................... 114
6-4.6.1 Procedure-names .......... 114
6-4.6.2 Procedure Declaration.. 115
7 CONTINUOUS WAVE MEASUREMENT SYSTEM .............. 1177-1
INTRODUCTION ........................... 117
7-2 MAJOR FUNCTIONS ........................ 117
7-3 PROGRAM ARCHITECTURE ................... 118
7-4 OPERATING MODES ........................ 118
7-4.1 Manual Mode ......................... 118
7-4.2 Semi-Automatic Operation .......... 119
7-4.3 Automatic Operation ................ 121
7-5 SINGLE CYCLE/MULTI-CYCLE TESTS ........... 1237-5.1 Single
Cycle Test ............... 123
7-5.2 Multi-Cycle Test ................... 123
7-6 SYSTEM CONFIGURATIONS .................. 124
7-6.1 Primary Cnfigurations...........124
7-6.2 Secniary Configurations .......... 125
7-6.3 Tertiary Configuations ........... 125
8 DESCRIPTION OF MAJOR ROUTINES... ................ 126
8-1 INITIALIZATION ......................... 126
8-1.1 Reset Operation ...................... 12C
8-2 TEST CONFIGURATION ......................... 127
8-2.1 PINIT Operation .................... 127
8-3 TEST CONTROL ........................... 128
8-3.1 CWTEST Operation ................ 128
8-4 DATA ACQUISITION AND TRANSMISSION ...... 129
8-4.1 SYSTEP Operation ................... 129
8-5 GPIB INSTRUMENTS ....................... 130
8-5.1 PCU/GPIB Electrical Interface... 130
8-5.2 PCU-GPIB Command Interface ...... 130
8-5.3 PCU/ZT-80 Communications .......... 131
8-5.4 Typical PCU/ZT-80 Interface ..... 132
9 UTILITY ROUTINES ............................. 133
5 ''; -, .;.- 2 , " ." --- ','i2 i .- . . . . .. . . . .-. -,
...-.. , .
-
• ,
TABLE OF CONTENTS (CONTINUED)
Section Page
10 BRIEF DESCRIPTION OF CWMS PCU ROUTINES ......... 134
Appendix Page
A PERIPHERAL INTERCHANGE PROGRAM .................. A-I
B EXAMPLE OF RSX-IIM SYSTEM GENERATION ........... B-I
C FLEC'S USERS MANUAL .......................... C-i
D DEFINITION OF PUBLIC VARIABLES .................. D-1
E SUBMIT FILE FOR LINK/LOCATE WITH CODE IN ROM. E-I
F SUBMIT FILE FOR EMULATION WITH CODE IN ROM.. F-i
G SUBMIT FILE FOR LINK/LOCATE WITH CODE IN RAM. G-1
H SUBMIT FILE FOR EMULATION WITH CODE IN RAM... H-i
I VALIDATION OF THE FORWARD AND INVERSE FOURIER
TRANSFORMS USED BY THE CW MEASUREMENT SYSTEM. I-i
LIST OF ILLUSTRATIONS
Figure Page
i-i Software System Flow Diagram .................. 9
2-1 Test Network Configuration ..................... 15
2-2 Probe Calibratipn Configuratior ................. 18
2-3 Example of Out-of-Range Point Interpolation.. 23
2-4 The Approximating Function g(w) .............. ... 28
2-5 Derivative of g(&j) ..... ...................... 29
2-6 Transfer Function Amplitude and Phase of
Analytic Probe with Int.egrator................ 37
2-7 Amplitude of Transformed Input Wave ............. 39
6-1 Flowchart of the IF-THEN-ELSE Construct ...... 99
6-2 Flowchart of FOR Construct ................... 100
6-3 Flowchart of REPEAT Construct ................ 101
6-4 Flowchart of WHILE Construct ................. 102
6-5 Flowchart of CASEOF Construct ................ 103
6-6 Flowchart of PROCEDURE Construct ................ 104
6-7 Flowchart of PROGRAM Construct .................. 105
6-8 Low-Level PDL Example Before Formatting ........ 107
6-9 Low-Level PDL Example After Formatting ......... 108
6
- ...-.-
-
SECTION 1
SY3TEM OVERVIEW
The CW Measurement Data Acquisition System is a real-
time, multi-task, event driven software system using the
Digital
Equipment Corp's RSX-IIM real-time operating system and
software
produced by EG&G WASC Albuquerque Operation Systems Group.
Theoperating system is documented by DEC in manuals supplied
with
the sy,3tem. This documunt describes the application
software
written by EG&G.
The CW Measurement System consists of two basic
s ctions: the cw generation and measurement subsystem built
by
Boeing and modified by EG&G, and the Data Acquisition
subsystem
consisting of a DEC PDP-lI/34A, two RL01 disk drives, an
HP-2648A operator's console and other associated hardware.
The
data detected by the measurement subsystem receiver are
transmitted to the PDP-11 via an RS-232 data link as 36-byte
data records. These data are then processed in real-time;
the
instrumentation and sensor effects are corrected, the data
are
displayed on the operator's console and, optionally, saved
on
cassette or disk for future processing and archival storage.
The software system includes the following:
Data input task, which receives data from the
measurement subsystem and sends it to the correc-
tions task.
0 Corrections and buffering task, which spools the raw
data received from the input task. As data are
received and time allows, the data are despooled,
sensor and instrumentation corrections are applied,
and the data are dispatched to the other system
tasks.
* Operator Console Monitor task (CRT) , which handles
the interface between the operator and the system.
It prompts the operator for information concerninj
the test, and controls the graphic display.
7V.q
V.. -
S.. ..- . . . . . ,. . . .-. . -
-
'.~ U
* Inverse Fourier transforin task, waich converts data
from the frequency domain into tne time domain,
applying the operator-selected Butterworth filter
threat waveform in the process.
* Hard-Copy plot task, which plots the corrected data
on the flatbed digital plotter, if requested.
* Tape task, which writes corrected and transformed
data to tape for storage and/or future processing,
if requested.
* Disk-Save task, which writes the requested data do-
mains to the disk for storage for future processing.
* Setup the remote data links task, which controls the
optical data links and VHF switch.
0 Name the mission file task, which allows the opera-
tor to request an old mission file or create a new
one.
These tasks communicate with each other by event 'lags
and system messages. Each task processes data as it arrives,
at
its own speed, asynchronously. Figure 1-1 represents the
task
architecture.
The CW Measurement Data Acquisition System includes a
number of programs which may be run either offline or
concur-
rently with data acquisition if a second terminal is
available.
These programs form the Interactive Analyst Package and
enable
a data analyst to perform mathematical operations on data,
to
* plot, list, scale and transform data, to edit data files,
to
list the contents of file headers, to add headers to data
files,
to list the contents of the mission file and to initialize
tapes, copy data from tape to disk and disk to tape.
The system also contains a number of stand-alone
utility programs for use in supporting the various facilities
of
the system. These include:
* Analytic probe calibration task. This task gen-
erates a probe calibration file for B-dot type
sensors.
8
-
0 _j
(0 UJ'.N > 0
00(.~zZ
o-)
021
U) 0 N 39
LU~~U Z.>Zu
LLI-
> >)C) I.- 3(A 4 4
Z==!)9aU5 LL L-T- U)9
-C6 -
-
0 Threat waveform task. This task generates threat
waveform files. The values for a and 1 describingthe threat
waveform and the high-frequency and low- :7frequency cutoff points
of a ninth order Butterworth
filter are specified by the operator.
* Delete frequency EPROM task. Burns EPROMs which
contain frequencies to be deleted from the CW
spectrum during measurements.
0 Amplitude control EPROM task. Burns EPROMs which
control the power output of the transmitter power
amplifier during a test.
The design of these tasks is described by Program
Design Language (PDLs). PDLs are described fully in Section
5
of this manual. The PDLs for these tasks are contained inSection
1 of the Listings Manual.
Section 2 of this manual contains a description of all
the tasks in the data collection system, along with details
of
data structures used by each task, and the files generated ir
..-
used by each. Section 3 describes the Interactive Analyst
Pack-
age software. Section 4 describes the system data structures
and global variables. Section 5 describes the software
develop-
ment tools used and Section 6 describes the RSX-11M environment
.
and support programs. Sections 7 and 8 relate to the Boeing
Continuous Wave Measurement Subsystem (CWMS) . Section 7
describes the function of the Program Control Unit (CPU) and
Section 8 describes the software modules in the PCU
firmware.
* I10
• . ... , h..
-
SECTION 2
DATA COLLECTION MODULES
2.1 INPUT TASK ('INPUT')
Tne data input task, INPUT, receives data from the
receiver program control unit (or the MFE tape unit) and
sends
the data to the corrections task, CORECT, for spooling and
dis-
tribution. This task is small and fast in comparison to
other
tasks within the system. Since it is required that the task
have "immediate" turnaround of a received data record, it
operates at the highest priority of all tasks in the
software
subsystem. This allows INPUT to process the data from the
receiver PCU as soon as it arrives and to immediately start
another read, insuring that no data are lost.
The task issues RSX-11M QIO directives to read the data
from the PCU. INPUT maintains two data buffers. When a
record
from the PCU is received, control is passed to INPUT by the
RSX-11M system. INPUT then starts the read-and-proceed QIO
directive with the inactive buffer, and processes the data
in
the active buffer (the buffer which the last read accessed).
When a data record arrives, the first byte of the
record is read to determine the record type. (See paragrah
4-3
for the particulars of the PCU record formats.) Data are
then
extracted from the record and placed into messages which are
sent to CORECT via the RSX-11M Send Message directive. There
are three types of PCU records. One type is the Panel Data
Block (PDB) record containing information about the receiver
PCU
front panel switch settings. The second record type is the
Data
record containing raw data for spooling and reduction. The
tihird is the Error Status Block record containing an error
code
for an error sensed by the receiver PCU. Each record type is
formatted differently. INPUT extracts the information and
formats a message (or multiple messages when the record
contains
more data tnan can be packed into a single message) to send
to
CORECT. If this is completed before the read-and-proceed QIO
11 i
4_ Aw.. o ]
-
* issued earlier, the task waits for the read to complete,
freeing
the PDP-li so other tasKs can execute.
When the PCU sends an end-of-sweep Data record,
indicating the completion of a cycle, INPUT decrements a
counter
which was initially set to the number of measurement cycles
contained in the panel data block. When the counter reaches
0,
the task goes to end-of-task. This allows INPUT to read data
which were previously recorded on cassette in the
'secondary'
configuration. If the tape cassette was previously written
upon, it may have extraneous data following the measurement.
The shut-off feature insures that this data are not read
into
the system.
2-2 CORRECTIONS AND BUFFERING TASK ('CORECT')
CORECT accepts raw data from the input task ('INPUT')
and writes it to disk. The raw data are then read and
processed
asynchronously with the other tasks. When the data are read,
CORECT applies corrections to it and spools the corrected
data;
then dispatches the corrected data to the CRT task for
plotting
and to the Inverse Transform task. CORECT controls up to
seven
disk files which contain system and probe calibration data,
raw
data and corrected data.
Internally, the task is in five parts. Each part is
• invoked by sensing an event flag, set either by another task
or
o by CORECT itself. The task waits for one of these flags to
be
set, then enters the appropriate section of code. The flags
signal one of the following events:
a Correction Data the raw data input task
Available has sent a data item to
CORECT.
* CRT Waiting for Data CRT is waiting for
corrected data.
* Inverse Waiting for the Inverse Transform task
Data is waiting for correctaddata.
120]
* . .._..* .~. 2
-
. . .. . .. . .. . . ..
* Primary Menu Ready CRT is signaling that the
primary menu entries are
correct.
* Raw Data Waiting for there is data in the raw
Correction data file ready for cor-
rections (this flag is
controlled by CORECT it-
self).
When corrected data are requested by CRT or INVERS,
CORECT reads the next data point from the corrections file
and
dispatches it to the requester using the Send Message
facility
of RSX-1lM, and signals the requester by setting a global
event
flag. When the INPUT task signals it has raw data to
correct,
CORECT invokes the Receive Message facility of RSX-11M and
writes the data. The Primary Menu Ready flag causes CORECT
to
open the primary menu file, extract the information it needs
and
close the file. The Raw Data Waiting for Correction flag is
setwhen raw data are received from INPUT, and is reset when the
raw
data file is empty. An abort flag is also used to signal
error
conditions from which there is no recovery. Setting the
abort
flag causes all tasks in the system to go to end-of-task
immediately.
The files used by CORECT are all kept in UFD (200,1].
(See the RSX-11M System Documentation Manual IA, the section
entitled 'EXECUTIVE' for a discussion of UFDs and UICs, also
refer to paragraph 4-2.1.1.) Volume SY: contains all system
and
sensor calibration files, the menu files, and a composite.4
correction file built whenever a multicycle test is performed
to
save computation time. Volume CD: (the Classified data disk;
normally mounted on DLl:) contains the raw data file and the
corrected data file. All files are direct access,
unformatted
files. Except for the menu files, which are discussed in the
next section, and the inverse transform file, all files
contain
12 byte records. These records are subdivided into three
fields
which contain the frequency, amplitude (in dB), and phase
(in
degrees) respectively in internal single precision floating
13
" '~~~~~~~~~~~~~~~~~....'-....-i. ".......... .-"......... ..
.,.".- - .• - ''-' ' ""''"--. ."'"'""' '' ,,
-
A
point format. For measurements which do not contain phase
information, the phase field is set to 0.
The names of the files used by CORECT are:
* MENU.PRI primary menu file
0 CORECT.DAT corrected data file
. RAWDATA.TMP input spool file
* ACOMP.TMP composite correct file for use
in multicycle tests
- SYSTF.CAL system calibration file for
transfer function measurements
* SYSRF.CAL system calibration file for
response function measurements
* XXXXXX.CAL sensor calibration file where
XXXXXX is the name (up to nine
characters) of the sensor as
entered in the primary menu
The equations for the corrections are derived from the
previous cw data reduction work done by EG&G. These
equations
assume a measurement system similar to that used here.
The equation used for amplitude correction is:
Corrected Ampl. = K a(Smeas - Ra) + REFGAIN - SIGGAIN
+ RPROBE - SPROBE + NADR - SCAL (I)
where
a = conversion factor from millivolts to dB for the
network analyzer (here, Ka = .02)
Smeas-Rmeas = transfer function in millivolts of the signals
sensed at the reference and the signal channels.
In effect, this difference is the raw data
received by the corrections task.
REFGAIN = Signed gain added to the reference channel.
3IGGAIN = Signed gain added to the signal channel.
RPROBE = reference sensor transfer function.
SPROBE = signal probe transfer function.
NADR = network analyzer display reference in dB (set
on front panel of network analyzer).
14
" ." . * .. ., * L. ]. . . - . ,
-
SCAL = transfer function of system instrumentation
exclusive of sensors (probes) and externally
introduced gains or attenuations (i.e., the
system cal).
This equation is derived from examination of the system
setup as diagramed in Figure 2-1
RPRO BE REFGAIN REDLA R 1 -1e ".-..
SIGNAL NETWORKSOURCE ANALYZER
Figure 2-1. Test Network Configuration
The output of the network analyzer in dB is:
K a(Smeas - Rm ) = S + SPROBE + SIGGAIN + SIMDELAY + So (2)
R + RPROBE - REFGAIN - REFDELAY - Ro
where S is the signal at the signal source into the signal
channel, R is the signal at the signal source into the
reference
channel. SIGDELAY and REFDELAY are assumed to have transfer
functions of 0 dB and 0 degree phase distortion. So and R9
are
the effects of instrumentation in each channel.
The transfer function of the signal source is S-R, so
regrouping, and solving for (S-R) one gets:IS-R) = K (S - Re) -
SIGGAIN - SPROBE -0 + REFGAIN +
a meas meas (3)
RPROBE + 0 - (S0- R0)
the Os in the above equation are the effects of SIGDELAY and
REFDELAY. The quantity (S - R0 ) is the transfer function of
the effects of instrumentation on the system exclusive of
sensors or external gain added. This quantity is called
SCAL,
the system calibration transfer function. Reducing the above
equation becomes:
15
-S • . . ... . . . " . . . .', . . . . ." " ., -.. --- --.-, - -
: . - " .' , , : ..-.-." , : ."
-
(S - R) = Ka (S meas- R meas) + REFGAIN - SIGGAIN + RPROBE
- SPROBE - SCAL (4)
The network analyzer can scale its output so that its 80 dB
dynamic range brackets the data. Changes in this value
changes
(Smeas - Rmeas) by a value equal in magnitude but of
opposite
sign. rherefore, adding this value, one gets the original
equation:
(S - R) = K a(meas - Rm ) + REFGAIN - SIGGAIN + RPROBE -
SPROBE
+ NADR - SCAL (5)
A similar derivation applies to the phase. Note that the
phase
of any gains in either channel are 0. The equation used for
phase correction is:
Corrected Phase = K (PS - DR ) + PHRPROBE - PHSPROBEmeas meas
(6)
- PHCAL
where
Ko conversion factor from millivolts to degrees
for the network analyzer (here K= .1)
PS meas-PR meas= Phase in millivolts of signals sensed at
the
reference and signal channels. This value is
the raw phase data received by the corrections
task.
PHRPROBE = reference probe phase
PHSPROBE = signal probe phase
PHCAL = phase of instrumentation exclusive of probes,
amplifiers or attenuators. This is the phase
of the system.0 Again, consider Figure 2-1. The phase output of
the network
analyzer is:
KO(PS meas- PRmeas) =S + PHSPROBE + PHSGAIN + PHSDEL +0(7)
-O R - PHRPROBE - PHRGAIN - PHRDEL +ORO
16
-
where
PHSGAIN = phase of the signal gain = 0 as noted above
PHRGAIN = phase of reference channel gain = 0 as noted
above
PHSDEL, PHRDEL = Phase of reference and signal delays. These
are both zero due to the fact that on this
system delays will be introduced by extra
cabling, which, in and of itself, has phase 0.
0,R = phase of the signal source at the signal and
reference channels, respectively.
Since (0 S- OR) is what we want, by substituting and
regroupingone can get
0 = (OS - OR) = KO(PSmeas - PRmeas) - PHSPROBE -0 - 0 +
PHRPROBE
+0 +0 - (0 - ORO) (8)
The quantity (OS- OR) is the phase of the system exclusive
of
probes, gains, delays, etc., it is, in fact, the phase of
the
system cal, otherwise known as PHCAL. So reducing, one gets
(OS -O0) - K (PS meas- PR meas) - PHSPROBE + PHRPROBE - PHCAL
(9)
To do a system cal, the reference and signal sensors
are removed from the configuration, i.e., RPROBE, SPROBE,
. PHRPROBE, and PHSPROBE are removed from the respective
equations. Therefore, solving these equations for SCA. and
PHCAL, one gets:0
SCAL = Ka(Smeas - R meas) - REFGAIN - SIGGAIN + NADR (10)
andPHCAL = -(PSmeas PRm ) (11)
To calibrate a probe, the reference probe is removed from
the
system - that is the signal is run thru the system as shown
in
Figure 2-2.
1I% i L 17 .[
S -mr
-
---
mAPower
SIGNAL IN REFGAIN EFDELA- R - -oRef
NETWORK
11 1 1;;;jjANALYZER
SROBE4
Figure 2-2. Probe Calibration Configuration
Solving for SPROBE and going through the aforementioned -j
T S
derivations, one gets:
SPROBE = Ka (Smeas - R meas) + REFGAIN - SGAIN + NADR - SCAL
(12)
and 2PHSPROBE = KO(PS meas - PRmeas) - PHCAL (13)
When a multicycle test sequence is run, a signal-to-
noise ratio calculation is made. This calculation represents
the ratio of the ambient noise at the test point to the
signal
plus the ambient noise at the test point. The ambient noise
measurement is the ratio of the signal at the test point to a
Izonstant reference level, provided by the reference
synthesizer
in the CWII system. This can be abbreviated to
SNNa N or SN - K in dB
and the signal-plus-ambient noise at the test point, which
is
the ratio of the signal at the test point to the signal
received
at the reference sensor, can be abbreviated
St 1Sa = -REF ,or S - SRE F in dBSa SE F REF
This is the test measurement. What is wanted is the ratio of
Stto 3 N,
StSS =- , or S -S in dB
NR S N t N1
18
-
l-.
When an ambient noise measurement is taken, K( is the value
for
reference gain added in the primary menu. In order to
calculate
SREF, a special measurement known as a reference sensor
cali-
bration is made. This is done whenever the test
configuration
is changed, or on some similarly frequent schedule. This
measurement is the ratio of the signal detected at the
reference
sensor to a constant (K 2 ) reference level, again provided by
the
reference synthesizer. This can be abbreviated
SS REF -K indBb 2 orSREF 2
K2 is the reference gain added from the primary menu when
this
measurement is taken, and is saved for the signal-to-noise
calibration.
Now, we have (SN-K) , (St-SREF) and (SREFK2) , or N,
Sa, and Sb, and we have saved the constant values K and K2 .
S +S -N (S S +( S Ka b a t - SREF ) + (SREF - K2 ) - (SN -
K)
S t - SN - K2 + K
S -S S + S -N + K -Kt N a b a 2
The reference sensor calibration is saved on SY: in
UIC[200,1]. The filename is RFSNS.CAL. The ambient noise and
test data are extracted from the first and second parts of
the
corrected data file (CD: [200,1] CORECT.DAT) . The reference
sensor calibration reference gain constant is saved in record
23
of the primary menu file, and the ambient noise reference
gain
constant is extracted from record nine of the primary menu file.
..-
2-3 CRT DISPLAY TASK ('CRT')
CRT provides the interface between the operator and the
system. The program is run by the initialization indirect
oonmanu file, but is inactive until it receives a data block
from CORECT.
19
. .. ,- - - ----...---'-.. . .... ." .-.
-
Initially, a data block is received which contains a
description of the front panel settings of the measurement
system (a panel data block). The information consists of the
test type (TFA, TFC, etc.), the decade switch settings and
the
cycle number. The test type indicates to the CRT task
whether
phase data were taken. The decade switch settings are used
to
determine which decades contain measurement data so the CRT
graph can be drawn accordingly, and how many points will be
in
each decade. These are decoded as A = 0, B = 25, C = 50, D =
*I 100, E = 250, F = 500, and G = 1000.
Next, the operator is prompted for the types of plots
to be displayed. Ambient noise, pick-up noise, amplitude and
phase plots can be overlaid. At this time, CRT requests the
IEEE-488 control task and suspends itself. The IEEE control
task, ODL, checks for the presence of an IEC-1IA bus
controller
*" module. If the IEC-11A status is good, ODL proceeds to
validate
the contents of the IEEE-488 device control menu. After the
menu entries are validated, ODL issues bus commands to set
the
selected devices, verifies the settings, resumes CRT and
sus-
pends itself.
The primary and secondary menu entries are then veri-
fied and changed if necessary. The primary menu entries are
displayed first. If approved, the program continues with the
secondary menu. Otherwise, the operator is prompted for new .
-
entries to the menu.
The secondary menu entries are displayed. Again, the
old entries are displayed and if not approved the operator
is
prompted fur new entries.
When the menu processing is completed, the CRT graphics
parameters are set to their default values. This is accom-
plished with the escape sequence '*mR'. These values are
shown in Table 2-1.
Next, the axes are drawn according to which plots were
re2quested for the frequency scale, which decades contain data.
IThe screen unit coordinates for the corners of the graph are
always (49,119), (669,119), (669,335), and (49, 335). The
phase
alwas (4,11) , 669,19)20
-
Table 2-i. Default HP-2648A graphics parameters
Parameter Default Value
Pen Condition up
Line Type 1 (solid)
Drawing Mode set
Relocatable Origin 0,0
Text Size 1
Text Direction 1
Text Origin 1 (left, bottom
justified)
Text Slant 0 (off)
Graphics Text off
Graphics Video on
Alphanumeric Video on
Graphics Cursor off
Alphanumeric Cursor on
Rubber Band Line off
Zoom off
Zoom Size 1
Autoplot off
Autoplot Menu clear
Compatibility Mode
Page Full Straps 0 (out)
GIN Strap 0 (CR only)
labels appear on the right y axis and are always the same.
The
Eimplitude axis (the left y axis) is labeled according to .e
value of the mid-range line. This is calculated by the
following equation:
MID (dB) -GS + GR + NADR - RV + RV (14)s r
21Im
[ . .'
-
wh z!r -3
GS = Signal Gain added
GR = Reference Gain added
NADR = Network Analyzer Display Reference
RVs = Representative Value of Signal Probe Calibration
RVr = Representative Value of Reference Probe
Calibration
The values GS, GR and NADR are taken from the ienu
entries made by the operator. The values RVs and RVr are
taken
from the probe calibration files specified by the Signal
Probe
and Reference Probe menu entries. These files are opened and
a
representative amplitude value extracted from each. This is
done to insure that the effect of applying corrections from
these files does not force the plot off scale. The computed
mid-line value is then saved in the primary menu file. The
amplitude scale for the plot is +40 dB from the mid-line
value.
When the axes have been drawn and labeled, a legend is
written below the graph which describes the test being run.
A global flag is set to inaicate that CRT is now ready
to accept data from CORECT. The points to be plotted are
teceived by CRT one at a time in twelve byte records each
containing a frequency, an amplitude and a phase value.
Frequency values are converted to screen units by the
following equation:
(Lgl0 (last frequency point) + Logl0 10- 6
Logr0 (maximum frequency value) (15)
Logl0 (minimum frequency value)Ix (669 - 49) +49 + .5
Logl0 (minimum frequency value)]
Phase values are converted to screen units, if a phase
plot was requested, using the following equation:
PHS = I((Last phase value) (-180 ((335 - 119) + .5 +
119~((Last90. (l0)((180.9-.180.)) +()
/ 90. (6
220
* .- . . *--.--.**° -
-
Amplitude values are converted to screen units using the
following equation:
SVLast amplitude value) - (minimum dB value) 335 - 119Amp= 10.
8.+ .5 + 119. (17)
As each phase point is plotted, it is saved as the last
point
- and a line is drawn from it to the new point after it has
been
I' converted to screen units.
Before an amplitude point is plotted it is checked to
see if the screen value falls outside of the axes lines (top or
- -
bottom). If so, a calculation is made to find the point of
intersection, with the axis, between the point in bounds and
the
point out of bounds. The line is drawn between the point in
bounds and the point of intersection. This is also the case
in
drawing from a point out of bounds to a point in bounds.
Figure
2-3 illustrates this feature.
Figure 2-3. Example of Out-of-Range Point Interpolation
*Lines between all points are solid. To differentiate
between the lines, a symbol unique to the type of plot will
be
printed at evenly spaced intervals. The symbols used will
be:
A - Ambient noise line
* P - Pickup noise line
M - Amplitude line
F - Phase line
Should a test be aborted for any reason, a message will
be displayed on the CRT screen indicating to the operator
the
23
-
reason for aborting. The reason will be displayed as a code
number which is described in Appendix A of the Operating
Manual.
2-4 INVERSE TASK ('INVERS')
INVERS generates an inverse Fourier transform of the
frequency domain data acquired by the measurement subsystem.
'
The method used is a variation of the Guillemin Impulse
Train
method and will be discussed in greater detail later. The
inverse transform also folds in a Threat waveform and a
ninth
order Butterworth filter. The resulting time domain waveform
contains all three above-mentioned components.
DNVERS is event-driven and executes asynchronously with
the other data acquisition tasks. The task is compute bound,
and runs at a low priority (49). The task is activated by
CORECT which sends INVERS a message via a send message
directive. This message contains either a panel data block
(PDB) or an end-of-data message. The PDB message indicates
the
start of an inverse transform, whereas an end-of-data
message
indicates that no transform is to be calculated. To generate
an
inverse transform, the task must retrieve from the primary
menu
file the name of the Th reat waveform file selected by the
operator, the maximum time domain value and the B-field to
E-field conversion factor. The points in the time domain to
which the inverse is generated are then selected, the
selected
threat waveform file is opened and CORECT is signalled that
INVERS is ready for data. Data are transferred from CORECT
to
INVERS via RSX-11M Send/Receive directives using global flags
to
signal when INVERS is ready and when CORECT has sent data.
This
allows asynchronous operation of both tasks.
*hnen the inverse transform is completed, the Parsevalener ies ,
0Oenrs ff(t)1 2 dt and 2tIF( c)I 2 dw
-~ O
are calculated for the time and frequency curves,
respectively.
Since the square of a straight line is a hyperbola, a
hyperbolic
24* I
- *..*
-
77 --7- -
rather than trapezoidal integration method is used. The
results
are compared using the standard error formula
X - Y -x + Yand Parseval values and the ratio are stored in the
primary
menu. Then the file, CD: (200,1]INVERS.DAT;l, is created and
the
time domain data are written to it as eight-byte records
containing two floating point numbers. Each record consists
of
a time value in seconds and an amplitude point. There are
always 512 records in INVERS.DAT.
When INVERS finishes, it waits for two global event
flags. One indicates that CORECT is finished and the other
indicates that CRT is done. When both of these flags are
set,
all front-end processing is complete and the data are ready
for
post processing. The following operations are performed at
this
time:
0 The operator is asked if a hard copy plot is desired
and to enter a comment text.
* ODL is resumed and turns off all the ODL-5Bs. Then
it terminates, releasing the IEEE-488 bus. When the
bus is released, all the other devices on the bus go
to front panel or standby operation.
* An entry is made in the mission file.
0 The operator is prompted to determine which files
are to be saved on tape and disk. The hard copy
plots and tape files are spooled and the files to be
saved for analyst are written to the analyst UFD
[200,1] on the classified data disk.
* If a CRT plot of the inverse transform has been
requested, the auto-plot task is started.NHCPLT spools plots.
The task which spools tape files
is called STRTTP, and the one which saves files for analyst
use
is called ANLSAV. These tasks are installed when the data
acquisition system is initialized (by the UP indirect
command
file) and are activated by CORECT when it receives the panel
data block from the measurement system. The tasks
receivemessages from INVERS via system message directives. The
25
I
- .* * - .-•:
-
messages consist of a data type indicator and a filename.
The
value of the data type indicator tells the tasks what kind
of
data they are dealing with, and the filename becomes the
output
filename. The data type indicator has the following values
and
meanings:
0 - the ambient noise portion of a multicycle test.
1 - the test data portion of a multicycle test
2 - the pickup noise portion of a multicycle test
3 - inverse transform data4 - transfer function calibration
data, response func-
tion calibration data or probe calibration data
5 - reference sensor calibration data
6 - signal-to-noise ratio data
7 - end of test
3 - test data from a single-cycle test
If the data type indicator is 0, 1, 2, 3, 6 or 8, themessage "
filename is as follows: the first byte is the test
facility code from the secondary menu, the next four bytes
are
the test, sequence number from the primary menu, and the
last
three bytes are the Julian date. If the indicator is 4 or 5,
the message filename is as follows: if the test is a
reference
sensor calibrator's measurement, the first five characters
are
"INREF". If the test is a system response function
calibration,
the first five characters are "SYSRF". If the test is a
system
transfer function calibration, the first five characters are
"SYSTF". If the test is a probe calibration, the first
fivecharacters are the first five characters of the probe
calibra-
tion file ID. In all cases, the last three characters are
the
Julian date.
The method used for computing inverse transforms is a
variation of Guillemin's Impulse Train Method1 . Numerically
its
results are equivalent to a Fourier integral transform of
* iErnst A. Guillemin, Theory of Linear Systems, New York:
John
Wiley and Sons, Inc., 1963, pp. 387-393, pp. 509-510.
26
.6
-
q
sampled data, but it has the speed advantaje of operating on
a
relatively small number of terms. The justification frr the
Impulse Train Method for the inverse transform follows.
The equation for the inverse Fourier transform is
- 0
where F(ico) is complex with real and imaginary parts
designated
R(W) and X(wo) respectively. Consider initially only
theimaginary part. Let X(w) be the function of angular
frequency
with n samples of X(co) at cj; X(woj) , j = 1, 2, ... n. X(cu)
isapproximated by straight line segments between each sample;
call
this g(w). Let hj (w) be the jth line segment of g(w):
(a + b .w, .D5(0+h ( ) = J ] j+l
0 elsewherej = 1, 2 ...... , n-l
Thenn-1
j =1 (20)
By using the Guillemin algorithm, only a simple
summation is needed in order to evaluate the contribution
from
the imaginary part of F(iw). It Is not necessary to
actuallyintegrate the approximating function. The Guillemin
technique
can be used with polynomials of order n, assuming only that
Fk(iw) 0-for k=0, i, ... n ascj'.jOc. In this case
linearinterpolation is used, and X(co) and X (cu) are assumed to go
to
0 as co goes to -cc and +o. The algorithm is developed in
the
following way, integrating by parts twice.
I 0
{€) e ( t d = -- -- -tdw,",.0*c 00
X'(u (w)o e ic~tX (co) e d &1 it d c
(it) -
27
f * O * c**. .
-
K 7 - - -- ° • . °'°.
Now approximate X(w) by g(w ), which is a broken line function
as
for the linear transform (see Figure 2-4).
X( )
Figure 2-4. The Approximating Function g(w)
Let hj(uj) be the jth line segment of g(w):
a ,• + b j w), U) 3 w c j+ l1
h (w) = (21)0 elsewhere
j = 1, 2 ...... , n-I
Then
n 1
g(w) = h.(w) (22)
Now n-1
g'(W) = h'j(w) (23)
0 bi WSS<h'(w) = b j +1lI0 elsewhere (24)
and g' is a step function (see Figure 2-5).
28
* A
-. . ... • - . ° , ... , . -.. o ° . .- . - .- .. . . .... .. .
~ .°.o=. . .
-
,'°9'
--
Figure 2-5. Derivative of g()6!
Nown-i
g (W) h" (W) (25)
j=1 J|
and if 3(-) is the Dirac delta function, then
bj:(,-.) at j
h" (-) = -bh 6 (.-wj+l) at wj+l (26)
0 elsewhere
j = 1, 2 ...... , n-i- -Iby virtue of the fact that h".() dw =
h' ().
f .
Therefore9 w-.i + (b b.3
g"(4) = b (b 2 - b2) ,(- 2 ) (27)
+ (b 3 -b 2 ) (- 3 ) + + (-b n ) (
29
~~~. . . . . . . . . . . .....°- • -.- -...-- -. .. .. - - . . .
.• . ... .. , . . - .. , .- .%..- .. °•.- .. . . • - . . .".. '- "
.ff- ' ." " -. .- "... " -. .- . • i- -.- ' - - ' . -- .- . . - -.A
" . , .. ,: '" - - . ,
-
So
X~ eu~ 1 Ix" 2(w1 e1 t dw (28)
i f e"w e1~t (29)
b e 1t'e~l + (b - bl) el-2t2 V1 2 1
+ +b e ni (30)
* Similarly,
fR (w) e ~ 2it) 1 + (c 2 -cl) e1'w2t
* where cj is the jth second derivative (impulse value) of
R(w.).
Since the limits of integration are from -- to +c and
R(w) and cos wt are even functions while sin w~t is an odd
function, the total contribution from the real part is
2r*2 Lcl 1Cos W 1t + (c 2 c1) Cos W2 t+ +. +C nCos W tJ (32)
.6
t
* Likewise, since iX(w) is an odd function, the total
contribution
*from the imaginary part is
S 2 r+ - Ll si w t + (b2 b) sinl ~t + * + b sin nt] (33)t
30
-
Scaling the integrals by then yields the inverse transform
in
impulse foim as
f (t) b sin wt + (b2 - b) sin
7Trt 7 1 w t
+ b sin wnt - CI cos t (C C Cos 2 t (34)
- Cos t
If f(t) = 0 for t < 0, the function is considered
causal. Physical systems of the cw type may be so
considered,
and it can be shown2 that for a causal system
flt) = - fR(w) cos wt dw - X(w) sin wt dw t
-
_oeraion. N\s indicated earlier, this task uses a
subroutine which is a variation of Guillemin's Impulse Train
Method. The subroutine uses only the imaginary portion of
the
frequency function; hence it is a sine inverse. It is called
to
operate on all time elements (inner loop) for each frequency
data point (outer loop). Thus, with each entry it augments a
partial sum for each time point allowing it to operate in
near
real time. This results in the completed inverse being
available as soon as possible afte2r corrections have been
applied to the final data point. The amplitude of time 0 is
forced to 0 since the cw system does not record dc voltage.
Jpon the first entry, a trigonometric sine function
table is created with increments of one degree. For any
given
sine argument with times greater than or equal to 100 ns, a
linear interpolation is performed between bracketing values
of
the table. For time less than 100 ns the FORTqAN library SIN
function is used directly bEcause any inaccuracy resulting
from
the table look-up operation is amplified by the scaling
factor
1/It 2 . This inaccuracy is tolerable above 100 ns where the
table look-up feature saves considerable time.
As stated before, to use this method it is assumed that
X(o) and X' (w) go to 0 as w goes to - and +o0. In order to
make
this true the integral is calculated as if there were a
point
(0,0) before the first frequency point and a point (10*con
,0)after the last frequency point at wn"
2-5 HARD COPY PLOTTING TASKS ('NHCPLT' AND 'NPSPLR')
NHCPLT and NPSPLR interface between the data collection
tasks and the hard-copy plotter. NHCPL formats the data and
builds the data header. NPSPLR spools the header information
and data points to the plotter.
NHCPLr receives the Panel Data Block from CORECT, then
waits until LNVERS has finished processing the data and has
sent
the filename to be plotted. NHCPLT then builds the plot
file.
The main and secondary menus are opened and the data file
header
is built. See paragraph 4-2.2.2 for the data header
32
0..
-
" description. he data points are then copied from the input
disK file to the plot file. NILCPLT thien sends the filenane
to
NPSPLR using the system send directive.
When NPSPLR receives the plot filename and data typefrom NHCPLT,
it initializes the plotter and waits for the
operator to prepare the plotter. When the plotter is ready
for
operation, it writes the data header on the top portion of the
-
plotting paper. Then it plots the desired data domains.
FreIuency-Magnitude, Frequency-Phase and Time-Nknplitude
plots
mjy be generaced. NPSPLR recycles through its procedures
until
no more plot filenames have been queued by NHCPLT.
2-5 TAPE OUTPUT TASKS ('STRTrP' AND 'TPWRTR')
STRTTP and TPWRTR write data files to cassette for
archival storage. See paragraph 4-5.1 for a description of
the
cassette file structure. STRTTP sets up the file to be
spooled
to tape by formatting the file to make it compatible to the
data
files used in the Interactive Analyst Package. It receives
the
Panel Data Block from CORECT, then waits until INVERS sends
a
data filename and data type. Only the files that the
operator
has requested to be placed on tape are processed. STRTTP
then
opens the menu files to extract the needed header
information.
(Paragraph 4-2.2.2 contains the data file header
description.)
The header information and data are copied to a new data
file,
then the filename and data type are sent to TPWRTR via the
send
directive.
TPWRTR initializes the tape unit, dequeues a message
from STRTTP, opens the output file, then determines the
number
of records in the file. The tape identification number is
con-
pared to the tape number in the data header; if they don't
match
the operator is informed of the error. The room rf:raining
on
the tape is compared to the number of records required by
the
data file. If there is not enough empty tape, the operator
is
requested to replace the tape with an initialized tape. The
tape nuraber in the data header is increased by one to match
the
new tape number. TPWRTR then copies the data file to the
33
4
L . .. .'..:-**i -
-
cassette. While the data is being transferred, the minimum
and
imaximum values are calcul3ted, then placed into the file
header
on the tape. TPWRTR will continue processing the data files
until no more filenames are in the receive directive queue.
2-7 DISK SAVE TASK ('7NLSAV')
ANLSAV writes the requested data files to disk for use
in the Interactive Analyst Package. It receives the filename
and data type wnich INVERS has sent via the send directive.
ANLSAV opens the main and secondary menu files to obtain the
information needed to form the data file header (Paragraph
4-2.2.2 describes the data file format.) It then copies thedata
file header and data to UFD [200,2] on device CD:. ANLSAV
continues copying the data files until there are no filenames
in
the receive directive queue.
2-8 SET UP THE DATA LINKS TASK ('ODL')
ODL controls the Optical Data Links (ODL-5B) and VHF
switch. It is requested to run by CRT after the type of
plots
have been selected. CRT pauses until ODL has completed
setting
up the instrumentation. ODL opens the ODL menu file and re-
quests the operator to update the entries. (See paragraph
5-3.2
of the CW Measurement System Operating Manual for a descrip-
-*
tion of the ODL menu entries.) First, ODL will set switch A
and
B on the VHF switch to the desired channel. It then turns on
the requested data ODL-5B and sets it up. A five second
pause
occurs after the ODL-5B is turned on before it will accept
any
further commands. The reference ODL-58 is then turned on and
set up. If no errors have occurred, ODL restarts CRT and
pauses. When data collection is completed or the test is
aborted, INVERS restarts ')DL which turns off the ODL-5B
units.ST
2-9 MISSION FILENA-E fASK ('AiSNAM')
IISNAM is run by the startup command file whenever the
system is booted. It asks the operator to enter a inission
filename. The extension .MIS is appended to the name entered
by
346i! :';
-
the operator. If the mission filename is accepted, thie
secondary nenu is opened and the name is entered into te
cnt.1
record. INVERS will try to open the mission file specified
in
the menu after all data processing is completed. If the file
doesn't exist, a new file is created. Every time a data set
is
successfully processed, the filename along with key fields
in
the menus are written to the mission file. The Intecactive
Analyst Package routine, MIS, will list the contents of the
mission file to the operator's console.
2-10 PROM PROGRAMMING TASKS ('DEL' AND 'AMPL')
After accepting the data that will be programmed onto
the PROM, and checking with the operator for its validity,
the
data is formatted and written to the PROM programner.
To start programming the PROM, the letter 'X' must besent to the
programmer first so that the automatic speed
selection function of the PROM programmer can determine the
input baud rate. A pause of approximately 2.5 seconds
follows
due to the time the PROM programmer takes to select this
baud
arate. Next, the address span to be programmed (i.e.,
000-3FF)
is sent to the programmer in ASCII. Each ASCII character
sent
to the programmer must be followed by a wait of
approximately
1/30 second. Following the six-digit address span, the
letter
'P' is sent, which sets the programmer to PROGRAM mode.
If the PROM is not blank, the programmer sends back and,
ASCII ; otherwise, if everything is ready, an ASCII
sequence is sent. Once this process is complete, the data
* may be sent to the programmer starting with address 0 and
continuing to address X-'3FF'. The data for each address is
sent
. as two ASCII characters with a time delay of 1/30 second
after
each character. After all the data are sent, the remainder
of
the PROM is padded with zeros. The programmer then programs
the
PROM and, if successful, sends back an ASCII . If the
programming was not successful for any reason, the
programner
sends a . The program will report to the operator whether
* the PROM was successfully programmed.
35
-
The tasKs perform input range checks and checks to
insure that frequency data is in dscending order. Once the P
134
writing sequence begins, the handshaking between the M900
and
the POP-11 is checked for validity as described above, and
also
timed-out. This is done by setting a timer while waiting for
the read of the M900 response to complete, using the RSX-11M
Mark Time directive and checking various System Local Flags.
(Local Flags are identical to Global Flags except that their
scope is limited to the task itself.) i response time-out
causes an error condition to be noted within the task and
the
read to be halted. If either a time-out or handshaking
failure
occur, an appropriate error message is logged to the
terminal,
and the operator is given the opportunity to abort the task
or
to retry. This feature allows the operator to correct "soft"
errors (e.g., PROM not blank) and retry the writing step
without
having to re-enter the data.
2-11 ANALYTIC PROBE CALIBRATION TASK ('APROBE')
2-11.1 Background Discussion
Transfer functions of certain probes are obtained
analytically rather than empirically (e.g., the MCL B-dot
probe). Analytic transfer functions of electronic
integrators
may be multiplied to yield a composite transfer function.
The probes handled analytically by APROBE are the
derivative type:
V(t) = KF where
V(t) = output voltage as function of time
k = a constant determined by the probe
F = d (Field Unit)dt
in the frequency domain this transforms to
( ) icokF(w)) volt - seconds where2•
) = 2 r x frequency radians/second
3 60
-
The transfer function of the RC integrator is
Vo ut () 1 (39)
V(c) -1 + iwRC
Note that if no integrator is used, RC = 0, and the
integrator
transfer function becomes unity.
The transfer function of the composite is therefore
Vout i-.k (40) , -. ,
F(w) 1 + iRC
having amplitude and phase characteristics similar to Figure
2-6.
900
IAMPLITUDE -t I 20 logl 0 (k/RC)AMPLITUDE 450 PHASE
(degrees)
Vout (W)
(d B)Amplitude Slope Phase
20dB/dec I--.
00w=1/RC
LOG 10 w ---4|
Figure 2-6. Transfer Function Amplitude and Phase of
Analytic Probe with Integrator
2-11.2 operation
The program opens the requested file as TYPE 'OLD',
implicitly assuming the file already exists. If the file
exists, the operator is given the option to supersede with
new
3-74!. .
-
AJ
-data o r to exit. If he elects not to exit or if the file
did
not exist, a new file is opened and the operator is prompted
for
the scaling constant (k) and integrator time constant (RC).
Having obtained this information, the program calls
subroutine
FGEN which generates 450 predefined frequency values. The
program then generates the resultant transfer function as dB
and
degrees for each frequency and writes these values as real
valued triplets to [200,1] PROBE ID.CAL;l on volume SY:
where
PROBE ID is the probe identifier entered by the operator
(e.g.,
B201).
After all such triplets have been written, a final
triplet whose first value is -1 is written and the file is
closed. This record, as in all data files generated by the
system, indicates end-of-file to tasks which later read the
file.
2-12 INPUT WAVEFORM AND BUTTERWORTH FILTER TASK ('THRTWV')
If a network's response to a unit impulse is convolved
with an input waveform, the result is the waveform at the
network output. Since convolution in the time domain is
equivalent to multiplication in the frequency doman, and the
frequency domain transfer function is the forward transform
of
a unit impulse response, one may inverse transform the
product
of an input waveform and transfer function in order to get
the
predicted output in the time domain.
Of particular interest is the input waveform of the
* type:
E (t) = A(e - t - e - t) v/m 0
-
The analytic forward transform, Ei (f) , has the
following amplitude and phase:
Si(f) [(a2 2 (- +w2)] -sec/m where w= 27f (43)
=-tan- 1 ( + a) rad (44)
On a log-log plot, the amplitude appears as Figure 2-7.
20 dB/decade
-40 dB/decade
LOGIEi ()
f-3/2r f- i/2r
LOG f
Figure 2-7. Amplitude of Transformed Input Wave
Prior to performing an inverse transform, the product
is multiplied by a ninth order Butterworth filter in order
to
reduce truncation effects. The Butterworth amplitude is
essen-
tially unity except near the lower and upper cutoff
frequencies.
Beyond these frequencies the amplitude slopes at -54
dB/octave
(nearly -180 dB/decade). It is convenient to apply the
filter
to the transform of the input waveform.
Finally, since the data is stored in dB and degrees,the product
is converted to these units and stored on the
classified data disk (CD:).
39
Kq
6 . 2 , a l a' ' ' .e 'J- J j ' ' : . .. .
-
. ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 7 -o- -F- I --- • • . - - , , °,j _ r ,
j . • . _ . r A 0 !11 14 Rq 0- Q -
SECTION 3
INTERACTIVE ANALYST PACKAGE
3-1 INTRODUCTION
This section describes the tasks that comprise the
Interactive Analyst Package (IAP). The processes provided by
the IAP are:
Name Process
ADD Addition process. Performs an addition of
two data sets in frequency or time domain.
AHD Add header process. Add header to time and
frequency domain files for CWII compatibility.
ANL Analytical waveform process. Generates a
time domain waveform based upon operator
entries of coefficients of an analytical
expression. This process issues subsequent
prompts.
CTP Cassette tape transfer process. Transfers
data from cassette to the CD: disk for
subsequent manipulation. Also transfers
data from the CD: disk to the cassette.
CVT Convert tape process. To convert tape files
copied onto disk by TPC from the CWI file
format to the CWII file format.
DED Data Edit process. Performs editing on the
data by allowing corrections, insertions,
deletions and appendages to the data. DED
will also accept entries in a tabular
form for data in both frequency and time
domain. Data can also be listed from an
existing file using this process.
DIV Division process. Performs a division of
two data sets in frequency or time domain.
4061
. . .t
-
.7I
FTR Forward Fourier Transform process. Performs
a forward transform using the Guillemin
algorithm...
ITR Inverse Fourier Tranform process. Performs
an inverse transform using the Guillemin
algorithm. jLHD List header process. Lists all records of
the header for a specified file.
LOF Log-off process. Logs the user off the
system and allows the deletion or preser-
vation of all or selected files created
during the processing sequence. When no
processing has been done LOF allows dele-
tion of previously created data file.
LON Log-on process. Logs the user onto the
system and allows the operation of the
other IAP processes.
MIS Mission file listing process. To list the
contents of a requested mission file on
the screen.
MUL Multiplication process. Performs a multi-
plication on two data sets in frequency or
time domain.
SCL Scaling Process. Performs scalar arithmetic
on either time or frequency data files.
SUB Subtraction process. Performs a subtraction
of two data sets in frequency or time domain.
TPC Tape copy process. Copy all of a cassette
tape into a disk file. Primarily used for
the conversion of old format tapes.
When the operator wants to use the analyst package, the
following command should be entered. The proper tasks will
be
installed.
4168
-
9NNAL (C-R>
wnere is carriage ceturn. JThe commands used in the IAP are
designed to give the
analyst a flexible set of operations to manipulate data taken
by
the real-time data acquisition software. The commands used
to
run all of the processes are structured using a syntax very
similar to that of the standard DEC RSX-I1M system utilities
and
language processors, like PIP (Peripheral Exchange Program)
and
FORTRAN IV-PLUS.
The command syntax uses the concept of a process acting
upon a source of input, yielding an output. The basic
command
syntax is as follows:
PRC output.list=input.list
where PRC is a three-character process name, input.list is a
list containing specifier(s) of input source(s), and
output.list
is a list containing specifier(s) of the output(s) of the
process. These lists can contain filenames, terminal or
device
specifiers, and process modifiers (called "switches") in
various
combinations, depending on what is valid for the process.
Switches are indicators by which the process can be signalled
of
special conditions or of changes in the normal processing
that
the operator requires. Switches consist of a slash ("/")
followed by a switch identifier and an optional list. The
switch syntax is illustrated below:
/SID: parm.l ist
where SID is the switch identifier and parm.list is the list
of
parameters. Note that the parm.list is preceded by a colon
and
0 may or may not appear, depending upon whether parameters
are
required by the switch. If a switch requires more than one
parameter in its parm.list, each parameter is separated by a
colon. An example of a switch with a parm.list of six * -
parameters is given below:
/SID:pl:p2:p3:p4:p5:pG
Switches can be applied to a command's input.list or
output.list
(or both), depending again on what is appropriate for a
given
0 process and switch.
42
0. * ii]
-
Processes can use the information in the command line
to complete the process, or can optionally prompt for More
information, data, etc.
Processes generally work with disk or tape based data
files. A file is identified by a fully qualified name of up
to
eight characters and an extension of up to three characters.
Within the IAP, a convention provides a means of identifying
the
*- source of the data and the date of creation of the file.
A general rule of thumb should be followed in naming a
data file and its extension. The name is an eight character
name with a three character extension which is in the
following
form:
FSEQNJDT. EXT
where
F--- is a character A-Z or 0-9 representing a
6 code to identify the test facility
SEQN is four integer numbers defining a unique
test sequence number
JDT is three integer numbers defining the Julian
date of the measurement. This value is
appended to the facility code and sequence
number by the software.
EXT is the three character extension where:
E -is one of the following six characters:
A - indicating ambient noise
U- indicating pickup noise
C - indicating cw measured test data
' - indicating time data
P - indicating pulse measured test data
F - indicating frequency data
43
- ~ . -- . .- * - . * .. *- ..- * -
-
is one of the following 3 characters:
C - indicating calculated data
D - indicating defined data
M - indicating measured data
T - is an "A" except in the case of converted
CWI data where a sequence number was used
for more than one measurement. In this -
case, the last character will be incremented
through the alphabet as many times as
necessary.
The entire extension is also appended by the software. Cali-
bration files saved for analyst use are an exception to the
above convention. They will be named using the
five-character
q sensor name found in the header. The Julian date and
extension
will be used as described above.
When an analyst is naming a file to be created by any
operation, the first five characters can be used in any way
as
an identifier. These five characters must be unique from
those
used to name another file. The Julian date and an extension
will be appended to the five characters as above.
The IAP software will store the data on disk to a
device named CD:. This device is usually assigned to DLI:,
and
is used for data storage only. The software will assure that
* the data are stored on CD: so the operator need not specify
this
0 device name.
3-2 COMMAND STRING PROCESSOR
All of the IAP processes use a macro program to inter-
6 pret their command lines. Each macro program is essentially
the
- same except for the number of switches and input files that
are
. allowed. The system routine CSI is called by the macro
program.
- Each process command string is described in detail in Section
3
* of the CW Measurement System Operating Manual.
44
* -. .4 4 -.* * '-. v **-. ,**'
-
3-3 ADD, MUL, DIV AND SUB
The basic arithmetic functions are essentially the same
programs except they perform different operations. They
allow
the operator to apply a function of two data sets. The
command
line syntax for ADD, MUL, SUB and DIV is:
ADD 1DIV outfile = infilel.ext,infile2.extMUL
Infilel and infile2 are the data files which are
to be multiplied, added, divided or subtracted.
Infile2 is optional.
Outfile is the resulting file.
In the case where only one input file is specified, the
input data are simply copied to the output file. If a switch
is
specified for the output file, the output data are
interpolated
to the time interval or number of points per frequency
decade
specified by the switch; otherwise, time data are copied
point-
for-point to the output file. Frequency data are
interpolated
to the number of points per frequency decade specified in
the
file header.
In the case where two input files are specified, the
output data file reflects the mathematical result of the
applied
function: addition, subtraction, multiplication or division.
For time domain data, the output data are interpolated to a
regularly-spaced interval, calculated either by dividing the
minimum time spanned by the two files (the maximum of the
respective minimum times to the minimum of the respective
maximum times) by 500, or input by the operator as part of
the
command line. If the value input by the operator results in
more than 1,000 intervals, an error message is generated and
thenumber of intervals is set to 500.
For frequency domain data, the output data are inter-
polated to a number of frequency points per decade, either
input
by the operator or gotten from the header of the first input
file. If either input file header indicates no frequency
points
for a decade, no output data is calculated for that decade.
45
q
• -...-.,. -" .. " " K. .... : ' . .. ' . , -' ' -.' "" -," :
-.", .' .- , -,",'[ .- ,', '- '. i." - " " '-i"'',, "-. ." i" .. "
' ... . . *" ' " - ' .* .* .-. *, *. " * " " " " '
-
. - -7 " -- -, -7_ .- . ...
Empty decades may occur between non-empty ones. The total
number of frequencies may not exceed 1,000 in either the
input
or the output files.
The selected function is applied to the data, and the
result is stored in the output file, along with an updated
header (see paragraph 4-2.2.2 for header format). For
addition
and multiplication, the order of operation is important only
insofar as default values such as points per frequency
decade
are taken from the first file specified in the command line.
For subtraction, the second file specified is subtracted
from
the first, and for division the first file specified is
divided
by the second.
3-4 ADD HEADER PROCESS (AHD)
AHD adds a header to a CWl data file to make it com-
patible with the IAP. The command to run AHD is:
AHD outfile/switch= infile.ext
The switch specifies whether the outfile is to be a time or
fre-
quency domain file.
AHD opens both input and output files and interpolates
the time or frequency values to the requested interval. It
then
calculates the maximum and minimum data values while copying
the
data to the new file. The following records are entered into
the outfile data header:
Record Field
1 Data domain0I3 Date
4 Time
5 Input filename
7 Function code and date
12 Comments
13 Comments
23-29 Maximum and minimum data point values
37-42 Points per decade
45 Time domain At
46S
- ...-. i-.-*. . - .-
-
The remainder of the header is left blank. All the
data points are then copied to the output file.
3-5 ANL
ANL generates an analytical waveform in the time
domain. ANL is run by entering the command string:
ANL outfile
The maximum time value and/or the desired number of points
may
be specified. To create the waveform, ANL will ask the
opera-
* tor to supply values for the following equation:
A[ B( eCt + DteCt + EeFt Cos ((21TGt)-H) +
After the constant coefficients have been entered, the time
value and amplitude are calculated and written to the output
file. The minimum and maximum time values are calculated.
The
- appropriate values are written into the header records.
3-6 CTP
The cassette tape task allows analyst manipuloation of
data files between the disk and the cassette tapes. Using
CTP,
the operator can transfer files from disk to tape, from tape
to
disk or list the tape directory. The functionto be performed
when CTP is invoked is determined by the syntax of the
command
line. To transfer a data file from disk, enter the
following:
CTP/TP:number [/NEW]= infile.ext
Infile.ext is the fully qualified name of the file to be
trans-
ferred. This name must be unique on the tape. If the name is
not unique, the operator is given three choices for
eliminating
the problem. One is to change the name of the file going to
tape, another is to insert another tape, or, last of all,
the
operator may exit the program.
If the operator chooses to change the name of the file,
a unique name of up to five characters must be entered. A
three
character representation of the current Julian date will be
concatenated to the five character name entered. The
extension
remains the same as the original file specification.
When the operator desires to change the tape, the pro-
gram reads the input from the terminal until the operator
enters
47
-
a . Then che program tries again to write the r lested
file to tape.
To write a file from disk to tape, each 12 by, disk
header record is copied to an 86 byte tape header reco The
data is converted from one triplet or one doublet (in ternal
binary format) in a 12 oyte disk record to two ASCII tri ts
or
three ASCII doublets in an 86 byte tape record. After _ file
is copied to the tape, the operator is given the option
place
the file name in the analyst log so that it can be delet from
-
the disk directory at log off.
/TP:number in the above command line specifies a tape
number to which the file is to be copied. This numb must
agree with the number actually written on the tape. if the
numbers are not the same, the operator is given the ch -e of
changing the tape (as described earlier) or exiting the
Dgram.
The optional switch, /NEW, in the command line,
specifies that the tape is to be initialized. When a ape is
initialized, the requested tape number is written in th
first
six bytes of the first two tape records. The remainde. of
the
two records are filled with blanks. These two records nprise
the tape directory. If no file is specified in the comm J,
the
task will exit after the tape is initialized. Otherw a, the
file is written to the initialized tape.
When a file is to be copied from tape to di , the
following command line must be entered.
CTP routfile] =infile.ext/TP: number
Outfile, when specified, is up to five characters used w h
the0I
three character Julian date to name the disk fil The
extension will remain the same as that on the tape file. If
no
outfile is specified, the disk file is named the sam 3s the
tape file requested. The filename must be unique on tn isk
or
the task will exit. When the file transfer is comple , the
filename is added to the analyst log.
Infile.ext is the fully qualified name of the Ie to
be copied from the tape. The tape directory is sea. ted to
determine if the file exists on the tape.
48
. --. °*,. . ' "°".
i i i, i - . .. • . 2 . ' ' • ; - - -- .
-
/TP:number is a switch indicating the number of the
tape from which to copy the file. If the number on the tape
and
the number specified are not the same, the operator is given
the
option of changing tapes or exiting the program.
To get a directory listing of the tape currently in the
drive, the following command is used:
CTP 'LP /DIR
jTI:, is an optional device specification requesting
LP: the terminal or line printer, if available.
The directory listing shows the tape number, the file-
namnes in the directory, and the number of tape records
occupied
by each file. There is a maximum of eight files permitted in
the tape directory.
Tapes are organized so the first two records are the
directory of the files contained on that tape. Each
directory
record begins with the tape number comprised of a maximum of
six
digits. A maximum of 12 characters (eight characters, a
period
(' .') and a three character extension) -can be used for a
filename. File names are followed by an equal sign ('=') and
an
integer of up to four digits, indicating the number of tape
records used by that file. There are no more than four files
. per directory record. The number of records used by each
file
are added together in CTP to determine if sufficient room is
available to write the requested file to the tape. These
num-
bers are also used to calculate the number of records to skip
to
get to the beginning record of a file to copy or to reach
the
next available record.
Each file on the tape begins with a record containing
a '%0' and the filename. Then 57 records follow containing
the
file header. Only 12 of the available 86 bytes of tape
record
are used for each header record.
The data is in ASCII, 33 characters per data value with
six data values per record. The file is ended with a '%,/ E1MD
OFFILE' record.
* FDisk files are arranged with 57 ASCII records, each 12
bytes in length, containing the file header. Following the
49
- - - - - ."
-
header are data records of 12 bytes which contain one triplet
or
one doublet (depending on the data type) written in realinternal
binary format. The files are direct access so the end
of file is determined when a read error occurs.
RSX's command string interpreter is used to check for
proper syntax in the command line. The operator must have -+
logged on using LON in order for CTP to run.
For communication to take place between the tape and
the disk, the tape unit must be attached using a Wait Queue
I/C
command. When data are transferred from the tape to the
disk,
the proper function value must be sent to the tape unit to
start
sending. During the sending process, a five second timer is
st
so that when nothing is received from the tape, the send
request
is cancelled.
For data transfer from disk to tape, the function value
to start the tape receiving must be sent to the tape. A
status
returned from the tape must be checked, until only the ready
bit
is set, before the program continues. A function value to.
stop
the tape receiving-must also be sent.
Files used by CTP are found on the disk assigned to
device CD: in UFD[200,21.
3-7 CVT
The convert tape task is used to convert the CWI for-
matted tape files created by TPC into individual CWII
formatted
disk files.
Prior to invoking CVT, the operator must have logged on
using SON. CVT can be started by entering CVT.
When CVT begins, the operator is prompted for the tape
number to convert. The number entered is concatenated onto a
string of zeros to create a six digit name. An extension of
'.OTP' is added to make a fully qualified filename. The file
to
be converted is expected to be found on the disk assigned to
device CD: in UFD[200,2].
50
-
CVT searches for a '%' in the first byte of each
recorC. Whatever character is in the second byte determines
the
type of file to be created.
When the character is a 1', a 32 record "storybook"
follows. These records are used to create a 57 record file
containing the header to be used in the new CWII files. The
test sequence number and the creation date are retrieved
from
the storybook. After converting the date to a three
character
Julian date, the operator is prompted for a one character
test
facility code. The test facilty code, the sequence number
and
Julian date are concatenated to form the filename which will
be
used for each file created for any data type using that
sequence
number. The files will be distinguished by their extension.
When the character following the % is a 2, the
following data are ambient noise and the extension is
'.AMA'.
A 3 indicates test data and the extension is '.CMA'. '.UMA'
is
the extension used when the second character is a 4
specifying
pickup noise. A 5 is used when inverse transform da