OPTION NSG # CSMMDF - STAGING MEMORY MANAGER DATA STRUCTURE DEFINITION # COMMON/SMMDAT/NDIM,NMOVE,NBANKS,NB,NWORDS,NW,LENGTH,INTLEN,WIDTH,MPR, BASE,RECSIZ,LOW,NXTDIM,SEMPTY,SALL,SLEN2,SLODD,SWORDL,SWORDH, STEMPL,STEMPH,SWORD,SPAR,SPORT,SWT,SBIT,MAIN,ASUB,MODE,PORT,PSHFA,PSHFB, SNEGM,MASK,BASADR,BASCNT,BASLEN,BASWGT INTEGER*4 LENGTH(NDIMAX) #-DIMENSION LENGTHS INTEGER WIDTH(NMVMAX) #-DATA CHANNEL WIDTHS FOR EACH MOVE INTEGER*4 MPR(NDIMAX,NMVMX2) #-MULTIPLIERS INTEGER*4 BASE(NMVMAX) #-BASE BIT POSITION ON EACH CHANNEL INTEGER*4 RECSIZ(NMVMX2) #-IO RECORD SIZE IN BITS FOR SUBSTAGER TRANSACTION FOR EACH MOVE INTEGER LOW(NMVMX2) #-INDEX OF FIRST DIMENSION FOR EACH MOVE INTEGER NXTDIM(NDIMAX,NMVMX2) #-ORDERED INDICES FOR DIMENSIONS FOR EACH MOVE INTEGER NDIM #-NUMBER OF DIMENSIONS IN ARRAY REAL*8 SEMPTY #-THE EMPTY SET REAL*8 SALL #-THE UNIVERSAL SET INTEGER NB #-LOG BASE 2 OF NUMBER OF BANKS IN STAGER REAL*8 SLEN2 #-SET OF LENGTH 2 DIMENSIONS REAL*8 SLODD #-SET OF ODD LENGTH DIMENSIONS INTEGER*4 INTLEN(NDIMAX) #-INTERNAL DIMENSION LENGTHS INTEGER NW(NMVMAX) #-LOG BASE 2 OF DATA CHANNEL WIDTH FOR EACH MOVE REAL*8 SPORT(5,NMVMAX) #-PORT DIMENSION SETS FOR EACH MOVE REAL*8 SWORDL #-STAGER WORD PARALLEL ACCESS DIMENSIONS REAL*8 SWORDH #-STAGER WORD PHASE DIMENSIONS REAL*8 STEMPL #-TEMPORARY SET FOR SWORDL REAL*8 STEMPH #-TEMPORARY SET FOR SWORDH REAL*8 SWORD #-STAGER WORD DIMENSIONS REAL*8 SPAR(NMVMAX) #-PARALLEL BANK ACCESS DIMENSIONS FOR A MOVE INTEGER ASUB(0:12,NMVMX2) #-SUBSTAGER ADDRESS PERMUTATIONS REAL*8 SWT(0:4) #-PARALLEL BANK ACCESS DIMENSIONS FOR A LOCATION INTEGER*4 MAIN(NDIMAX) #-MAIN STAGER ADDRESS WEIGHTS REAL*8 SBIT(0:1,0:4) #-FREEDOM IN MAIN STAGER ADDRESS BITS INTEGER MODE(NMVMAX) #-SUBSTAGER ACCESS MODE INTEGER PORT(0:16,NMVMAX) #-DIMENSION ASSIGNMENTS FOR EACH MOVE INTEGER PSHFA(NMVMAX) #-PERFECT SHUFFLE CONTROLS FOR EACH MOVE INTEGER PSHFB(NMVMAX) INTEGER NBANKS #-NUMBER OF BANKS IN MAIN STAGER INTEGER*4 NWORDS #-NUMBER OF MAIN STAGER WORDS PER BANK INTEGER NMOVE #-NUMBER OF MOVES THRU STAGER REAL*8 SNEGM(NMVMAX) #-NEGATE MAIN ADDRESS MASK SET INTEGER MASK(NMVMAX) #-STARTING STAGER BANK NUMBER INTEGER*4 BASADR(NMVMAX) #-STAGER BASE ADDRESS FOR EACH MOVE INTEGER BASCNT(NMVMAX) #-NUMBER OF BASE ADDRESS ADJUSTMENT DIMENSIONS FOR EACH MOVE INTEGER BASLEN(NADJMX,NMVMAX) #-LENGTH OF EACH DIMENSION TO BE ADJUSTED INTEGER*4 BASWGT(NADJMX,NMVMAX) #-ADDRESS ADJUSTMENT WEIGHT FOR EACH ADJUSTMENT DIMENSION