Home
RIMFIRE 44 - Bitsavers.org
Contents
1. Oo 53 Q w gt TABLE OF CONTENTS TAPE CONTROL TAPE DRIVE STATUS REWIND RETENSION REPORT ERROR COUNTERS WRITE FILEMARK SPACE ERASE DRIVE RESET DISK DATA TRANSFER DISK READ DISK WRITE FORMAT MAP DEFECT READ LONG WRITE LONG ECC VERIFICATION TAPE DATA TRANSFER COMMANDS RING BUFFER WRITE RING BUFFER READ COMBINATION COMMANDS DUMP RESTORE RESUME SPECIALS NOP 1D DIAGNOSTIC BLOCK MOVE CLEAR INTERRUPT APPENDICES SPECIFICATIONS CABLES ERROR CODES JUMPERS CONNECTOR PIN OUTS COMMAND CODES DISK DRIVE TYPES 1 0 1 1 INTRODUCTION This document describes the operation of the CPC RIMFIRE 44 ANSI Disk inch Cartridge Tape Drive Controller It provides the information essary for the user to incorporate the RIMFIRE 44 into a Multibus based system This section contains generalized overview of the operation of the RIM FIRE 44 Detailed information is contained in later sections The CPC RIMFIRE 44 is intelligent Multibus compatible controller cap able of handling up to eight Winchester Disk Drives conforming to ANSI proposal X3T9 and up to four Archive Sidewindert or Cipher Data Quar terback cartridge tape drives 30 ips only The controller is fully Mul tibus compatible and functions in a 8 or 16 bit system with 16 20 or 24 bit addressing single or multi processor Disk an
2. 1 1 7 EAR OH p PL 6 dex I s Reilly P2 S7 5 RP 220 2 7 DATA REQ 01 32 31 12 241 14 Ji 16 41 18 41 20 41 22 01 24 41 26 D x ees pu ees 22 ere Tae 5 5 de 28 20 31 24 26 306 41 44 47 50 2 5 4 15 19 pies TUAREA 2 5 BREZNEN s ou 2 E TENERAN PU ab CUM MAN D vis 2 REQUES 2 7438 dde s2 C GUT 933 22 15 Nos aa 2 4 untur 4 4 DIR OUT 32 19 Lao ap ama 4 1438 Ti D PARAME 7 4008 E PARAMETER TAN ENT OL PLS ae i s HD H000 2 SHE P E 4 L 7438 420 RPG 330 1514 EN 5 1 1514 4 M a a oe 8 INDEXA H2 64 E Dc as ha LA 2 54 04 18 ced E do n 7 A ATE LU ouem rc NS l 3 33 SECTOR i gus UIE waite pata 7583 pet 49 toy lv ME WALTL 46 e H3 E3 196 6 Cork T COWNTAwWO 7247644 ARE EATY 94 tY OT AS AUTNORUTO 6 LB are vont ott von Ss COT eee
3. BYTE COUNTER 2304 LE SYNC AND D SECTOR BYTE COMPARE v 2 g READ 2 583 42 2 d SH Rz Cro CTT eee es as m e TT ce rt serene 4 ae a 2104005 E i tea aa RIMFI 44 m 20 0 Computer fopucrs Corn SEE ERT REVISION RECORD zone 3 27 03 B SUA AE e E NE ae 00 2 SHI D D 542 62 6028 Et PM G F E D ru eee i GATE s 32 27 ATE 143b 033 a READ RATE 521 25 1438 U33 gt 1438 4 N CT 42 065 FOR comp NC 0 SH 1 8 5 2 4 ADD MA J2 23 U38 5464 RSV 1 2 le usb __ a s usd H CORRECTION LOGIC CHANEL ATTENTION 1 DECCDER 087 957 nde dz TENTE 1 11 1 amet T THE 146 ME 1 CONTAIMED TERE ARE POP RATY AMO MAY BE SY OTE Con 5 AUTHOALTEO 1 u nest vto Cr a pon d RIMFIRE 44 gt REVISION RECORD ap statusy H LCS 4025
4. Table 3 1 lists the properties of the Error Correction Code used by the RIMFIRE 44 1 2 Maximum record length 1540 8 bits including check bits Correction span 5 bits Degree of polynomial 32 Single burst detection span 16 bits for r 1540 8 19 bits for r 526 8 20 bits for r 270 8 Double burst detection span 3 bits for r 526 8 4 bits for r 270 8 Non detection probability 2 3 E 10 Miscorrection probability 4 59 E 5 for r 1540 8 1 57 E 5 for 526 8 8 00 E 6 for r 270 8 Table 3 1 RIMFIRE 44 ECC Properties 4 0 4 1 4 1 1 FUNCTIONAL DESCRIPTION This section contains a detailed description of the operation of the RIMFIRE 44 Operation may be separated into 2 parts Initialization and Command Exe cution All operations are initiated with the issuance of a Channel Atten tion to the RIMFIRE 44 INITIALIZATION Initialization is the procedure through which the RIMFIRE 44 receives the definition of the system environment from the host The RIMFIRE 44 al ways executes the Initialization procedure when it receives the first Chan nel Attention after a board reset sec 4 1 1 After the Channel Attention the RIMFIRE 44 initializes itself by reading information from three control blocks located in system memory It is the responsibility of the system to correctly set up these controls blocks prior to issuing the first Channel Attention The three control
5. RIMFIRE 44 Product Specification 2405 Annapolis Lane Plymouth MN 55441 612 559 2034 RIMFIRE 44 Product Specification Copyright Computer Products Corp September 1982 Revision 9 1 82 Publication Number 21010044 REVISION INFORMATION Revision Record Revision Date Comments 4 1 82 Initial Release ac 8 1 82 Pre production Release Nr KUNEHO oN PRG N rk e OVD OD AWA AO OF OF OF 01 01 0101 OT Ul RE C5 WW C5 Co C5 e SW Ne TABLE OF CONTENTS INTRODUCTION GENERAL DESCRIPTION FEATURES DEFINITION OF TERMS CHANNEL ATTENTION GATE POINTER PARAMETER BLOCK DISK ORGANIZATION TRACK CYLINDER HEAD SECTOR DISK FORMAT ERROR CORRECTION FUNCTIONAL DESCRIPTION INITIALIZATION RESET SYSTEM CONFIGURATION POINTER SYSTEM CONFIGURATION BLOCK CHANNEL CONTROL BLOCK COMMAND EXECUTION INTERRUPTS NON VECTORED INTERRUPTS MAILBOX INTERRUPTS PAGING USER 8089 PROGRAMS DISK COMMAND EXECUTION DISK PARAMETER BLOCK COMMAND HEAD SELECT PAGE ADDRESS CONTROL CYLINDER SECTOR RECORDS SOURCE DESTINATION DRIVE STATUS COMMAND STATUS INTERRUPT LINK COMPLETION TAPE COMMAND EXECUTION TAPE PARAMETER BLOCK COMMAND RESERVED 1 PAGE ADDRESS CONTROL RETURN
6. Input Output This field contains the starting head select for disk access commands The RIMFIRE 44 will accomodate up to 256 heads 5 1 3 PAGE ADDRESS Input The lower nibble of this byte selects the 1 Mbyte page in which this command is to transfer data ADB 20 223 Eu D CONTROL Input The CONTROL field Fig 5 2 contains various information used by the RIMFIRE 44 during the execution of disk commands DS RD BL ED 15 13 12 11109 8 7 6 5 4 3 2 1 0 le _ Fig 5 2 Disk Control Word Disk Select selects one of eight possible drives Retry disable disables all automatic retries when set to 1 Mailbox Interrupt selects non vectored interrupts 0 or Mailbox interrupts 1 if the I bit is set Interrupt causes the RIMFIRE 44 to interrupt on completion of a command or chain of commands Link informs the RIMFIRE 44 that another Parameter Block follows The Link and Interrupt options are mutually exclusive since each uses the Source Destination field The Link option takes priority Bus Lock causes the RIMFIRE 44 to lock the system bus AN DMA transfers to from system ens Auto interleave is used only during a pores or Map Defect com mand When set the RIMFIRE 44 will calculate the logical sector numbering order Otherwise the user must provide the logical sec tor order This bit is also used in conjunction with the Interleave Table
7. SECTOR Sectors are addressable blocks of data on the disk Sectors are numbered logically starting from 1 to N on each track The first logical sector sec tor 1 is always the first physical sector identified by the occurance of the Index pulse 3 5 DISK FORMAT The Disk Format used by the RIMFIRE 44 is shown in Fig 3 2 ID PREAMBLE IP SYNC SECTOR 1 DATA PREAMBLE pata susc SYNC DATA FIELD POSTAMBLE Fig 3 2 Disk Format The fields have the following lengths in bytes Some of the fields vary depending on the drive used Refer to Appendix for information regard ing specific disk drives Field Length ID Preamble Drive dependent ID Sync Code F9H 1 byte Sector ID 6 bytes Cylinder Upper Cylinder Lower Sector Upper Sector Lower Head Track type ID ECC 4 bytes Gap 2 bytes Data Preamble Drive dependent Data Sync Code FDH 1 byte Data Field User selectable Data ECC 4 bytes Postamble Drive dependent The Track Type byte in the sector ID may be one of three hex values AA Normal track C3 Defective track 3C Assigned alternate 3 6 RIMFIRE 44 employs a separate 32 bit ECC word on each sector ID This word is used to detect read errors and to correct read errors detected in No attempt is made to correct a detected error in the and each data block Fig 3 2 in the sector ID and data fields the data field ERROR CORRECTION sector ID field
8. Read 74 Ring Buffer Write Group V Combination 54 Dump 58 68 Resume Group Vis Specials 20 NOP 1 D 5C Diagnostic 80 Block Move 9C Clear Interrupt APPENDIX G DISK DRIVE TYPES Overhead Type Bytes Manufacturer Model Series 00 46 3M 8500 Sil KENNEDY BASF 6170 PRIAM ALL 01 110 3M 8400 02 80 IMI 7700 TEVISION RECORD ALTERNATE INVUAQZ TION 5 PU Ps 2 en 21 13 7 2 3 A PIT 15 WALTZ 02 CAS 9 5 1 14 Pi 23 9 6289 jeg BUSY 7s 21 17 a oa n Ls Ub6 25 2 Pi 1B 16 NL 21 Se ypo Ben 2 on PV ARPG IO Pi 27 MULTIBUS ADDRESS DAIVERS DATA REQ 344 6 3 SINTR 2 SINTR SEL 3 A vi DL H M 4 9 mt ANGLE Tit du onma UON 1440 ARE OUR PROP MAY 9 ay OT NS Of Y AS AUTHORIZED BY uS sers new avto ce oui soy NL RR REGE SHEET Tus H G F E i D c REVISION RECORD E UT e 4 24 2 1 quar peers 535 mm m Q gt D 5 ow 9 1331 IIT am eot z o Sor gel NEN
9. Source Destination field The Link takes Priority BL Bus Lock locks the system bus 1 during DMA transfers TS Tape Select selects one of four tape drives Width selects the logical width of the systems bus indicates 16 bits indicates 8 bits This bit may be used to force byte transfers on a 16 bit bus The logical width must not exceed the physical width selected during Initial ization 6 1 5 RETURN COUNT This field is not used for tape operations 6 1 6 COUNT Input Output This field specifies the number of records to be spaced over during the SPACE command It is counted down by the RIMFTRE 44 and will be zero when the SPACE command completes successfully If an error occurs during the command this field will contain the number of records remaining to be spaced 6 1 7 MICRO STATUS Output This field returns the tape drive micro status after every tape com mand as shown in Fig 6 3 15 14 13 12 11 10 9 87 6 5 4 3 2 ae fo o Fig 6 3 Tape Drive Micro Status 1 0 The status buts have the following significance Refer to the cartridge tape users manual for more detailed information EXO Exception byte 0 C Cartridge not in place Drive not on line P Write protected End of Media D Data Error BIE Block in error not located Filemark detected EX1 Exception byte 1 Illegal command ND No data det
10. bit see below ECC Disable disables the automatic error correction when set to 1 1 O IT Interleave Table is used only during a Format command in com bination with the Auto interleave option 11 allows the user to examine the calculated sector numbering table without actually for matting The A and IT bits have the following significance during Format IT A result during Format X 0 Format disx user supplies sector numbering order 0 1 Format disk RIMFIRE 44 calculates sector num bering order based on Interleave value in Rec ords field 1 1 Bypass Format but return the calculated sector numberiag table starting at the Source Destin ation address P Protect may be used to override the automatic alternate track selection feature of the RIMFIRE 44 When set 1 direct access to a track which has been mapped out as defective will be allowed No access to the alternate track will be made Tnis bit also allows a direct access to a track which has peen assigned as an alternate which would otherwise result in an error Width selects the logical width of the system bus 1 indicates 16 bits 0 indicates 8 bits Normally this bit would match tne bus width selected during initialization SYSBUS However it may be used to force byte transfers on a 16 bit bus A logical width of 16 bits may not be selected if the physical width is 8 bits CYLINDER Input Output This field spe
11. blocks are the System Configuration Pointer the System Configuration Block and the Channel Control Block The Initialization process is outlined in Fig 4 1 BOARD RESET The RIMFIRE 44 board level Reset may be executed through a system reset or software reset A system reset occurs when the INIT line on the Mul tibus is activated low according to bus convention A software reset occurs when a write to the higher odd 1 0 address of the RIMFIRE 44 is executed by a system processor The two signals are logically OR d to gether on the board SYSTEM CONFIGURATION POINTER The 6 byte System Configuration Pointer may begin at any system memory address in the lower 1 Mbyte The only restriction is that the least sig nificant nibble of the address must be 6H SCP address OXXXX6H The remaining address bits are set via jumpers on the board After the first Channel Attention the RIMFIRE 44 reads the first byte of the System Configuration Pointer SYSBUS to determine the width of the system bus initially assumed to be 8 bits A OOH indicates an 8 bit system bus 01 a 16 bit bus Byte 2 is not used Bytes 3 6 comprise Pointer to the next block the System Configuration Block Note that the bus width selected by SYSBUS is the width of the RIMFIRE 44 to memory bus and is independent from the system processor type Most current memory modules will support 16 bit transfers which would be the most efficient After adjusting for phys
12. ele error Fig 5 4 Command Status Field 5 1 11 INTERRUPT LINX Input Si t The Interrupi Link field is 4 byte pointer which points to the next Par ameter Block if tne Link is set or the Maiibox Interrupt location if the Interrupt and mailbox bits are set Otherwise it is ignored COMPLETION STATUS When a disk command has completed the RIMFIRE 44 will update the Par ameter Block as required If the command was a Read or Write the disk address cylinder head and sector will represent the last sector success fully transferred plus 1 This facilitates reusing the Parameter Block for sequential operations The Records field will be updated for Read and Write commands to reflect the number of sectors whica have not yet been transferred This value will be O if the command terminates properly If a non recoverable error occurs this field will help determine the location of the error This field is also used to return the two Sense Status bytes for a Disk Status command Fig 5 5 Refer to the appropriate disk drive user s manual for a detailed explanation of these bits The Command Status and General Status bits will be updated for all disk commands Fig 5 5 Disk Sense Byte SE Seek Error RW Read Write Fault PF Power Fault PE Read Write Permit Error 5 Speed Error CR Command Reject I Initial State RT Ready Transition Attribute Table Modified PP Positioned Wit
13. for a listing of drive types Sectors Track The highest numbered sector on a track starting with 1 An entry of 0042H indicates 42H sectors per track 66 decimal Cylinders Disk The highest numbered cylinder starting with 0000 entry of 022FH indicates 0230H cylinders per disk 560 decimal Bytes Sector The number of data bytes in one sector An entry of 0100H indicates 256 decimal bytes per sector The user must form the Disk Record prior to the execution of the Configure command The Disk Record allows for 8 disks each disk requiring 8 bytes The entire Disk Record must occupy real memory locations although only those entries which correspond to physical drives need contain meaningful data The Disk Record is stored by the RIMFIRE 44 in its own memory Whenever a subsequent disk command is executed the RIMFIRE 44 examines the Disk Select bits in the Parameter Block of that command and selects the corre sponding disk parameters fran its copy of the Disk Record In this way the RIMFIRE 44 can support up to 8 disks with completely different char acteristics and formatting Ic BYTES SECTOR CYLINDERS DISK SECTORS TRACK DRIVE TYPE HEADS CYL 15 DRIVE O Fig 9 1 Disk Record Geta 9 1 12 DISK MICRO 4 This command may be used to execute any current or future ANSI disk command This desired command code is specified in the lower byte of the Records field If the command requires a parame
14. the last block Having a block filled with data whenever the RIMFIRE 44 requests it is necessary if the tape is to be kept streaming A temporary interruption which causes the RIMFIRE 44 to wait at the Block Gate for the buffer to be filled may cause the tape drive to stop and reposition However when data does become available the tape will start again The Ring Buffer Write command can terminate in two other ways lf tne system software detects an error in the device supplying data Primary device while filling a block it should set the Primary Device Error bit in the Block Gate When the RIMFIRE 44 enters that block it will check this bit and halt without writing the data to the tape If the RIMFIRE 44 detects an unrecoverable tape error while writing to the tape it will set the Tape bit in the Block Gate and halt RING BUFFER READ 79 This command is similar to the Ring Buffer Write except that the RIMFIRE 44 leads the chase around the ring buffers filling each data block for the system to empty The system must empty each block fast enough such that it is available to the RIMFIRE 44 when it arrives or a repositioning cycle on the tape will occur In such cases the sequence will start again as soon as the data buffer is made available by the system The Ring Buffer Read command will continue until it encounters the last block which is the normal method of termination It will also stop if it detects an unrecoverable
15. to system memory with appropriate up dates just prior to opening the Gate 3 0 3 1 3 2 3 3 3 4 DISK ORGANIZATION Data is written on the disk in addressable blocks called sectors Each sector address is made up of three components which define a unique po sition on the disk Cylinder Head and Sector Refer to Fig 3 1 7 7 Track Pe NEUE Cylinder rN 73 1 71 Surface m Pd by 1 c r NX 0 708 e 2 P eee oe c Heads Um Pp 3 ERN comer EN V Dm tee 2 gt r ee Y lt eee 5 p tir ML ns P J or Set aes Nowe i i T 2 ETT Fig 3 1 Disk Organization TRACK A Track is one of a number of concentric data paths on a disk surface If a disk surface has tracks they are numbered from 0 to N 1 with track being that circular data path with the largest diameter i e furthest from the center A track is defined by a given cylinder number and head number CYLINDER A cylinder is the set of all tracks with the same diameter located on parallel surfaces Cylinders are numbered in the same manner as tracks HEAD The Head identifies which surface is to be addressed on a multiple surface disk i e which track in a given cylinder Heads are numbered starting with O
16. will surrender the bus to 28 29 a higher or lower priority master when that master activates 3 24 25 The RIMFIRE 44 will surrender the bus after 28 29 each transfer cycle 4 24 25 The RIMFIRE 44 will surrender the bus to 29 30 a higher priority master after every cycle Jumpers 31 50 Initialization Address These jumpers allow the user to select the upper 16 bits of the 20 bit System Configuration Pointer address see sec 3 1 2 This address is normally set once to the optimum location for a particular system and not changed thereafter The address is set in two groups of eight bits Each group is set in a similar fashion Each group contains 10 pins 8 pins corresponding to address bits one pin to a pull up and one to ground Those ad dress bits which are to be active are daisy chained to the pull up and those which are to be inactive daisy chained to the ground The pins have the following significance 31 Ground 4l Ground 32 4 42 12 33 5 43 A13 34 44 A14 35 A7 45 15 36 A8 46 A16 37 9 47 A17 38 A10 48 A18 39 11 49 A19 40 Pull up 50 Pull up As an example Fig D 1 indicates the connections necessary to set the address to OAAAA6H The lowest nibble is not selectable and must be 6H Factory setting is OOFFF6H unless requested otherwise 90 E PULL UP 49 48 47 46 45 ll 3 42 41
17. 0 This command resets the selected tape drive This command must be cuted after a power on and when a new cartridge is inserted 959 9 3 1 9 3 2 25259 DISK DATA TRANSFER These commands transfer data between system memory and the selected disk DISK READ 10 This command transfers one or more sectors of data from the disk to sys tem memory The first sector transferred is the logical sector specified by the Cylinder Head and Sector entries in the Parameter Block Thereafter sectors are transferred in logical order with ascending sector number head select and cylinder respectively A multiple sector transfer may cross head and cylinder boundaries The number of sectors to be transferred is specified in the Records entry The starting system memory location is specified as a pointer in the Source Destination field DISK WRITE 14 This command transfers one or more sectors of data from system memory to the disk The first sector transferred is the logical sector specified by the Cylinder Head and Sector entries in the Parameter Block There after sectors are transferred in logical order with ascending sector num ber head select and cylinder respectively A multiple sector transfer may cross head and cylinder boundaries The number of sectors to be trans ferred is specified in the Records entry The starting system memory lo cation is specified as a pointer in the Source Destination field FORMAT 24 Th
18. COMMAND STATUS Output These bits reflect the status of the command Fig 8 4 E Entered The Parameter Block has been entered by the RIMFIRE 44 and execution has begun Complete The RIMFIRE 44 has successfully completed the command as outlined in this Parameter Block ERROR This 6 bit field specifies an error code when a non recoverable error is encountered Error codes are listed in Appendix C 765 43 210 e c Fig 8 4 Command Status Field INTERRUPT LINK Input The Interrupt Link field is a 4 byte pointer which points to the next Par ameter Block if the Link is set or the Mailbox Interrupt location if the Interrupt and Mailbox bits are set Otherwise it is ignored 8 1 12 8 1 13 8 1 14 8 2 END HEAD Input This field specifies the head select of the last logical sector to be trans ferred END CYLINDER Input This field specifies the cylinder number of the last logical sector to be transferred END SECTOR Input This field specifies the number of the last logical sector to be transferred COMPLETION The Dump Restore Parameter Block will be updated at the completion of the command to contain the disk address cylinder head and sector of the last logical sector to have been transferred successfully plus P A Dump or Restore command will be suspended if the tape EOT is detected before all the data is transferred If this occurs the Resume command will continue the o
19. COUNT COUNT OV OV OD XO XO XO XO XO XO XO XO XO CO SJ NJ NI NI SI NONI SI SI NI I N oM N WO WN c NR C E LO TABLE OF CONTENTS MICRO STATUS SOURCE DEST INATION DRIVE STATUS COMMAND STATUS INTERRUPT LINK COMPLETION BLOCK MOVE EXECUTION BLOCK MOVE PARAMETER BLOCK COMMAND RESERVED PAGE ADDRESS CONTROL BYTE COUNT SOURCE DESTINATION SEARCH BYTE MASK COMMAND STATUS INTERRUPT TABLE THROTTLE COMPLETION DUMP RESTORE EXECUTION DUMP RESTORE PARAMETER BLOCK COMMAND HEAD SELECT PAGE ADDRESS CONTROL CYLINDER SECTOR RECORDS SOURCE DESTINATION DRIVE STATUS COMMAND STATUS INTERRUPT LINK END HEAD END CYLINDER END SECTOR COMPLETION RIMFIRE 44 COMMANDS DISK DRIVE CONTROL CONFIGURE DISK DRIVE STATUS LOAD UNLOAD DISK RESET SEEK READ ID INTERROGATE TEST INTERFACE READ WRITE PERMIT DISK MICRO REZERO DISK XO XO XO XO XO LO XO UO XO XO XO XO XO XO XO XO XO XO XO XC XO XO XO XO WO WO C OY NUTONE Co Co Co Co Co CO Co C2 P2 P2 PO PO
20. LO DT Co WWW Co OIG PB O U1 Go TB LO Co Ground Pin 10 DISK DRIVE Signal Name Ground Control Bus Bit O Select Attn Device Bit 1 Select Attn Device Bit 2 Select Attn Device Bit 3 Select Attn Device Bit 4 Select Attn Device Bit 5 Select Attn Device Bit 6 Select Attn Device Bit 7 Select Attn Device Not used Select Out Attn In Strobe Command Request Parameter Request Bus Direction Out Port Enable Address Mark Control Read Gate Write Gate Bus Acknowledge Index Sector Address Mark Detected Attention Busy Read Data Read Data Read Reference Clock Read Reference Clock Write Clock Write Clock Write Data Write Data Ground APPENDIX F COMMAND CODES This section lists the nex codes for all RIMFIRE 44 commands Group 1 Disk Drive Control 00 Configure 04 Drive Status 18 Load 1C Unload 6C Disk Drive Reset 78 7 ID 88 Interrogate 8C Test I F 98 Read Write Permit A4 Disk Micro A8 Rezero the Disk Group 11 Tape Drive Control 28 Tape Drive Status 34 Rewind 3 Retension 3C Report Error Counters 40 Write Filemark 48 5 50 Erase Tape 90 Drive Reset Group 111 Disk Data Transfer 10 Read 14 Disk Write 24 Format 84 Defect AC Read Long BO Write Long Group IV Tape Data Transfer Commands 7O0 Ring Buffer
21. Lock Linked Commands rupts and ECC Retry disable Flexible Format capability with Auto interleave option Defect mapping with alternate track selection Single or Multimaster environments Powerful Block Move capability with Search and Translate options Executes user written 8089 programs Single 5 VDC operation Inter 2 0 244 222 2 3 DEFINITION OF TERMS This section defines the terms used during the detailed description of 44 operation CHANNEL ATTENTION A Channel Attention is an 1 0 Write to the Multibus address of the RIM FIRE 44 which is in the system 1 0 space 1t is issued by the system CPU to initiate each RIMFIRE 44 activity The 1 0 address may be set by the user via DIP switches on the board Also selected is the width of the I O address 8 bits for 8080 Z80 or similar systems or 16 bits for 8086 type systems A Channel Attention must never be issued while the RIMFIRE 44 is busy i e Gate Closed Since the least significant bit of the I O address is not selectable the RIMFIRE 44 occupies two addresses The Channel Attention is defined as the even address The odd 1 0 address is defined as the Software Reset A write to this address resets the RIMFIRE 44 CPU see sec 3 1 1 GATE The Gate is a byte of data in the Channel Control Block in system memory It controls all access to the use of the RIMFIRE 44 by system processors It is opened set to by the
22. Pear sy 210960494 e aa MATERIAL AME 4 RIMFIRE 44 SHEET 4
23. RIMFIRE 44 when it is not busy and closed set to FFH by a processor using the RIMFIRE 44 A processor may only close the Gate when it has found the Gate open In multipro cessing systems the Gate should only be closed with a test and set type instruction POINTER All system memory addresses passed to the RIMFIRE 44 through a Parame ter Block must be in the form of a Pointer Following the Intel 8086 con vention a Pointer consists of two 16 bit words which are combined by the RIMFIRE 44 to form a 20 bit system memory address The word at the higher address or Base is left shifted by four bits and added to the lower addressed word or Offset to obtain the 20 bit result Refer to the Intel 8086 Family User s Manual for a more detailed discussion of Pointers MSB BASE ADDRESS OFFSET LSB Fig 2 1 Pointer Value gt To accomodate 24 bit addressing the user may select one of 16 1Mbyte pages Refer to sec 4 4 for details 2 4 PARAMETER BLOCK A Parameter Block is a short block of consecutively addressed data placed in system memory by a processor in preparation for command execution The Parameter Block contains information the RIMFIRE 44 requires to per form the desired operation The RIMFIRE 44 command always occupies the first byte of the Parameter Block which is at the lowest addressed loca tion The Parameter Block is read by the RIMFIRE 44 into local memory when it begins execution and is rewritten
24. Source Width specifies the logical width of the source as 8 bits 0 or 16 bits 1 The logical bus width cannot exceed the phy sical width as specified during Initialization Destination 1 0 same as SI for the destination address Destination Width same as SW for the destination address L and Bl are the same as for the tape or disk Translate selects 1 the translate option This causes each byte from the source to be translated from a look up table before being moved to the destination When this option is selected all transfers must be 8 bits Search causes 1 the RIMFIRE 44 to check each byte against a Search Byte during transfer and stop a compare or non com pare Before the compare is made each byte is first masked with a Mask Byte so that only desired bits are checked When this option is selected all transfers must be 8 bits Non Compare causes 1 a Search operation to stop when a non compare is encountered If it is not set a Search operation will stop on compare 7 1 5 7 1 6 75121 7 1 8 4 1 9 TH Throttle causes 1 the RIMFIRE 44 to inject a delay between each byte or word transferred The length of the delay is spec ified in the Parameter Block This option is used to prevent the RIMFIRE 44 from monopolizing the bus during a non critical oper ation SL Source Local indicates 1 that the source is a 16 bit Local ad dress i e on the RIMFIRE 44 board or a 20 bit sys
25. TUS 04 This command returns three bytes of disk status information The first byte returned with all disk commands is the General Status byte as de scribed in section of 5 1 9 Sense Byte 1 is returned in the lower byte of the Records field and Sense Byte 2 is returned in the upper byte These bytes are shown in Fig 5 5 LOAD 18 This command issues a 1 directive to the drive if required to Start rotation UNLOAD 1C This command issues a seek to track 0 and Spin down directive if re quired to stop rotation DISK RESET 6C This command issues a Reset directive to the disk drive SEEK 78 This command selects the head specified in the Parameter Block and then initiates a Seek operation to the specified track This command is useful for overlapping Seeks READ ID 7C This command reads the 6 byte ID of the first sector encountered on the current head and cylinder Note that no Seek is implied and the head and cylinder entries in the Parameter Block are ignored 9 1 8 WO 1 9 9 1 10 INTERROGATE 88 This command is used to read a portion or all of the Attribute Table of the disk drive The RIMFIRE 44 will read a specified number of attri butes starting with a specified attribute number The command will ter minate when all desired attributes are read or if the drive does not sup port the attribute requested In such cases the RIMFIRE 44 will return an Illegal Command erro
26. a Dump or Restore command requires more than noe tape cartridge the Resume command can be used to continue the operation on a new cartridge when the EOT is detected The Dump and Restor commands proceed at a tape speed of 30 ips 8 1 DUMP RESTORE PARAMETER BLOCK The Dump and Restore Parameter Blocks are identical except for the Command field and contain 30 bytes in 13 fields Fig 8 1 INT LINK CD STAT DR STAT SOURCE DEST m CN Fig 8 1 Dump Restore Parameter Block 8 1 1 COMMAND Input This field contains the Dump or Restore command code 8 1 4 HEAD SELECT Input Output This field contains the head select of the first logical sector to be transferred It will be updated to the current disk location when the command completes PAGE ADDRESS This field is not used for the Dump or Restore commands CONTROL Input The Control field Fig 8 2 contains various information used by the RIMFIRE 44 during the execution of Dump and Restore commands DS RD M TS ED RT D E Mug i 8 EATER Fig 8 2 Dump Restore Control Word Disk Select selects one of eight disk drives Retry Disable disables all automatic tape and disk retries when set to 1 Mailbox Interrupts selects non vectored interrupts 0 or Mail box interrupts 1 if the I bit is set Interrupt causes the RIMFIRE 44 to interrupt on completion of a command or chain of comm
27. ach specified sector plus the four bytes of Error Correction Code It does not check the data for faults This command may be used in conjuction with the Write Long command to verify the ECC logic sec 9 3 7 WRITE LONG BO This command transfers a data buffer from system memory to the disk whicn is four bytes longer than the configured sector length in place of the normal sector length plus the 4 byte ECC word This command may be used in conjuction witn tne Read Long command to verify tne ECC logic 5 9 3 7 ECC VERIFICATION fo verify the ECC the following procedure may be used Write a known pattern in the test sector Read Long to system memory Modify up to 5 consecutive bits of the pattern Write Long back to the disk Read the sector normally and verify the data 9 4 TAPE DATA TRANSER COMMANDS Tape Data Transfer commands transfer data between the tape and system memory These commands are sstand alone tape operations in that the data is supplied or accepted by the user through the system memory As such they are distinctly different from the Dump and Restore commands in that they allow the user to dump or retrieve data from an off board device Such a device could be a medium to high speed peripherals such as inch magnetic tape or another disk In any case the system must supply data at a rate of at least 30 Kbps 30 ips or 90 Kbps 90 ips to keep the drive streaming The RIMFIRE 44 uses ring buffer
28. ands s Link informs the RIMFIRE 44 that another Parameter Block fol lows The Link and Interrupt options are mutually exclusive since each uses the Source Destination field The Link option takes priority Tape Select selects one of four tape drives ECC Disable disables the automatic disk error correction when set to 1 Retension causes the tape drive to retension the tape prior to a Dump Restore or Resume Protect overrides the automatic alternate track selection feature of the RIMFIRE 44 When set 1 a disk access to a track which has been mapped out as defective will attempt to access that track No seek will be made to an alternate track 8 1 10 8 1 1 CYLINDER Input Output This field specifies the cylinder number of the last logical sector to be transferred will be updated to the current disk location when the command completes SECTOR Input Output This field specifies the number of the last logical sector to be transferred It will be updated when the command completes RECORDS This field is not used during the Dump or Restore commands SOURCE DEST INATION This field is not used during the Dump or Restore commands DRIVE STATUS Output At the completion of the Dump or Restore this field will contain the disk drive status Sec 5 1 9 if the command terminates successfully or if a disk error occurs If a tape error occurs this field will return the tape drive status Sec 6 1 9
29. cifies the starting cylinder for disk access commands SECTOR Input Output This field specifies the starting logical sector number for disk access coni mands where applicable RECORDS Input Output This field specifies the number of sectors to be transferred for a disk Read or Write command It will also return Sense Byte 1 and 2 for a Disk Status command See section 5 2 for an explanation of these bits SOURCE DESTINATION Input This 4 byte pointer specifies the starting system memory address for data transfer commands Ds Es9 DISK DRIVE STATUS Output The disk drive General Status byte is returned in this field at the com pletion of the command Fig 5 3 Refer to the appropriate disk user s manual for a detailed explanation of these bits 7654 32 10 Fig 5 3 Disk Drive General Status N Not Ready BE Control Bus Error Illegal Command IP illegal Parameter 51 Sense Byte 1 52 Sense Byte 2 Busy Normal Completion 5 1 10 COMMAND STATUS Output These bits reflect the status of the command Fig 5 4 E Entered The Parameter Block has been entered by the RIMFIRE 44 and execution has begun 5 Complete RIMFIRE 44 nas successfully completed the command as outlined in this Parameter Block ERROR This 6 bit field specifies an error code when non recover able error is encountered Error codes are listed in Appendix 765 43 2 10
30. d tape operations are controlled through Parameter Blocks placed in system memory by processors requiring use of the controller The lo cation of the Parameter Block is programmable for each operation i e the location is passed to the RIMFIRE 44 at the start of each command or chain of commands Once an operation has begun no further system in tervention is necessary The RIMFIRE 44 will complete the task or tasks as assigned and then become available for the next command In addition to disk and tape operations the RIMFIRE 44 can perform sev eral powerful data move and diagnotic functions and may be used as a general purpose DMA controller It will also execute user written 8089 programs Refer to later sections for details The RIMFIRE 44 may be configured at the factory as RIMFIRE 44D or RIMFIRE 44T These versions are logic depopulations of the standard controller and execute only the disk command or tape commands respectively The RIMFIRE 44T will accept either 30 ips or 90 ips cartridge tape drives 1 2 FEATURES Controls up to eight ANSI compatible Winchester disk drives and four Cipher Data Quarterback or Archive Sidewinder streaming tape drives Automatic on board disk to tape tape to disk data transfers Separate 32 bit ECC word on each sector ID and data block k for 8 16 bit systems DMA operation with 24 bit addressing Many programmable options including Bus
31. ec 3 6 CLEAR INT 9C This command requires no Parameter Block except for the 2 byte command field It will immediately halt after clearing an active interrupt if the CCW Word in the Channel Control Block has been set to 09H This command is a useful tool to quickly remove an active interrupt without the time in volved in a full Parameter Block command Physical Electrical Capacity Transfer Rate Environmental Bus interface Mating Connectors APPENDIX SPECIFICATIONS Height 6 75 in Length 12 00 in Voltage 45v 5 Current RIMFIRE 44 ds RIMFIRE 44D Zs DID 029 0 3 0 8 disk drives 4 tape drives Tape Tape speed Disk Disk interface 1 25 Mbps Multibus interface 675 Kbps 8 bit system 1 25 Mbps 16 bit system 09 55 ambient 9C Fully Intel Multibus compatible Jl J2 3M No 3425 or equivalent p Viking No 2VH43 1AV5 or equivalent APPENDICES APPENDIX CABLES 44 requires two 50 pin flat cables one to the disk drive and one to the tape drive Standard cable length is 10 feet Daisy chain ca bles are available on a custom order basis CPC P N Function 81011001 44 J2 to disk drive 81011031 44 Jl to tape drive APPENDIX C ERROR CODES This section lists the codes for unrecoverable errors detected by the FIRE 44 during execution of a comnand The code is returned
32. ected R Eight or more read retries Beginning of media RST Reset Power up occurres 6 1 8 SOURCE DESTINATION Input This A byte pointer specifies the memory address of the first ring buffer for data transfer operations 6 1 9 DRIVE STATUS Output This field specifies the status of the tape drive at the completion of the command Fig 6 4 Drive Ready Exception is active Cartridge is in place EOT End of Tape Filemark detected Write Protected tH 29 6 5 4 3 10 2 77 Fig 6 4 Drive Status 6 1 10 COMMAND STATUS Output These bits reflect the status of the command Fig 6 5 E Entered The Parameter Block has been entered by the RIMFIRE 44 and execution has begun Complete RIMFIRE 44 has successfully completed the command as outlined in this Parameter Block ERROR This 6 bit field specifies an error code when a non recover able error is encountered Error codes are listed in Appendix C 765 483210 Fig 6 5 Command Status Field 6 1 11 INTERRUPT LINK Input The Interrupt Link field is a 4 byte pointer which points to the next Parameter Block if the Link is set or the Mailbox Interrupt location if the Interrupt and Mailbox bits are set Otherwise it is ignored 6 2 COMPLETION STATUS Tape Status and Command Status will be reported at the completion of the command During a Space command the Count fi
33. eld will be up dated The rest of the Parameter Block will be unchanged 7 0 BLOCK MOVE EXECUTION RIMFIRE 44 can execute a Block Move or memory to memory DMA oper ation with many powerful options The Parameter Block supplies the Source Address and Destination Address either or both of which may be Local on the RIMFIRE 44 board or system memory The byte count and options are also selected in the Parameter Block dol BLOCK MOVE PARAMETER BLOCK The Block Move Parameter Block Fig 7 1 contains 26 bytes divided into 12 fields THROTTLE WORD TABLE i INTERRUPT MASK STAT SEARCH DESTINATION SOURCE BYTE COUNT CONTROL PAGE RESERVED COMMAND Fig 7 1 Block Move Parameter Block 7 1 1 COMMAND Input The Command field contains the Block Move command 80H 7 1 2 75152 7 1 5 RESERVED This field is not used for the Block Move command PAGE ADDRESS Input The lower nibble of this byte selects the 1 Mbyte page in which data is to be transferred ADB 20 23 This applies to system memory addresses only CONTROL Input The Control field Fig 7 2 contains various information used by the RIM FIRE 44 during a Block Move 51 SW DI DW NC 15 14131211109 8 76543 21 0 Fig 7 2 Block Move Control Word Source 1 0 specifies that the source address of the Block Move increments after each transaction 0 orremains constant 1
34. g a Search 7 1 10 7 1 11 7 1 12 7 2 INTERRUPT Input The Interrupt field specifies the location of the Mailbox Interrupt if abled TABLE Input This 4 byte pointer specifies the starting system memory address of a 256 byte look up table If the Translate option is selected during a Block Move each source byte is used as an index into this table The entry at that location is then moved to the destination THROTTLE WORD Input If the Throttle bit is set in the Control Word the RIMFIRE 44 uses this entry to determine the length of delay between each byte or word trans ferred This 16 bit number is counted down to 0000 before each transfer at the rate of about 100 micro seconds per count COMPLETION STATUS Output Besides the Mask Status field the only other field to be updated is the Byte Count field At the end of the command this field will contain the number of bytes to be transferred After a successful command completion this field will be O 8 0 DUMP RESTORE EXECUTION The Dump and Restor commands obtain a starting and ending disk address cylinder head ans sector from the Parameter Block and transfer data between the disk and tape until all sectors have been moved Onboard RAM is used to buffer all data Data is transferred in logical sector order Since the tape drive requires data to be divided into 512 byte blockettes the blocking and deblocking is done automatically by the RIMFIRE 44 If
35. he RIMFIRE 44 board Factory settings are indicated with an asterisk 1 Jumpers 1 10 Read Gate Delay Counter These jumpers are factory set and are used by the RIMFIRE 44 se quencer 2 Jumpers 13 14 Bus Time out These jumpers enable or disable the system bus time out Jumper 13 14 Time out enabled No jumper lime out disabled 3 Jumpers 15 17 1 0 Address Bus Width These jumpers select the width of the I O address Bus 68 bit width Jumper 15 16 16 bit width jumper 15 17 4 Jumpers 18 22 Maintenance These jumpers are used at the factory to allow the insertion of tne CPC 8089 Emulator into the CPU socket Maintenance Mode Jumper 19 21 20 22 Normal Mode Jumper 18 19 20 21 5 Jumpers 23 26 BPRO These jumpers are set accourding to the type of bus priority used on the Multibus Serial priority Jumper 23 26 Parallel priority No Jumper Jumpers 24 25 27 30 Bus Arbitration These jumpers control the conditions under which the RIMFIRE 44 sur renders control of the Multibus during a transfer sequence Jumpers 24 25 27 allow CBRQ to be jumpered low 24 25 or to the Multibus 24 27 Jumpers 28 30 allow the ANYRQST input on the 8289 Bus Ar biter to be jumpered high 28 29 or low 29 30 Four configurations are possible Mode jumper Description 1 24 27 The RIMFIRE 44 will surrender the bus to 29 30 a higher priority master when that master activates CBRQ 2 24 27 The RIMFIRE 44
36. he only byte used in the Channel Con trol Block is the Gate It must be set closed set to FFH prior to the Initialization process When the Initialization process has been completed the RIMFIRE 44 will open the Gate set to OOH indicating it is now ready to execute commands The location used for the System Configuration Poin ter and System Configuration Block if they are RAM based may now be reused as required COMMAND EXECUTION After the completion of the Initialization process the RIMFIRE 44 is ready to accept commands as it now knows the programmable locations of the Gate and of the Parameter Block Pointer A system processor wishing to execute a command may now do so through the following procedure A Set up the Parameter Block or Blocks in memory B Read the Gate location to determine when the RIMFIRE 44 is not busy When the Gate is open 00 the system processor may take control by setting it closed FFH NOTE In a multi processor system a Test and Set type instruction must be used to close the Gate This is necessary to prevent one processor from reading the Gate between the read and write of the Gate from a second processor C After closing the Gate the user sets the pointer in the Channel Control Block to point at its first Parameter Block It must 1 so set the Channel Control Word as required D Issue a Channel Attention to the RIMFIRE 44 4 3 4 3 1 4 3 2 4 4 RIMFIRE 44 will the
37. hin Write Protected Area 6 0 6 1 0 141 Diez 6 TAPE COMMAND EXECUTION Although the 44 tape interface is intended primarily for auto matic disk dump and restore operations the controller also executes sev eral powerful tape commands These commands allow the user to position the tape write filemarks and to stream data to and from the tape drive from off board location TAPE PARAMETER BLOCK Tape Parameter Block Fig 6 1 contains 22 bytes divided into 11 fields INT LINK CD STAT DR STAT SOURCE DESTINATION RESERVED 1 Fig 6 1 Tape Parameter Block COMMAND Input The Command field contains 2 bytes Refer to section 9 for the command list RESERVED 1 This field is not used for tape operation ADDRESS Input The lower nibble of this byte selects the 1 Mbyte page in which this com mand is to transfer data ADB 20 23 6 1 4 CONTROL Input The Control field Fig 6 2 contains various information used by the during operation 6 5 4 3 2 1 O0 ZA Fig 6 2 Tape Control Word M Mailbox Interrupts selects non vectored interrupts 0 or Mailbox Interrupts 1 if the I bit is set I Interrupts causes the RIMFIRE 44 to interrupt on completion 1 L Link informs the RIMFIRE 44 that another Parameter Block follows The Link and Interrupt options are mutually exclusive since each uses the
38. ical size the RIMFIRE 44 continues to the System Configuration Block and reads that information SYSTEM CONF IGURAT ION POINTER SY STEM CONF IGURAT ION BLOCK CHANNEL CONTROL BLOCK SYSTEM CONF IG Wena qup BLOCK POINTER lt XXXX6H 15 8 7 0 CHANNEL CONTROL BLOCK POINTER NOT USED 03H NOT USED PARAMETER TO FIRST BLOCK gt PARAMETER POINTER aic Fig 4 1 Initialization Sequence 4 1 3 4 1 4 4 2 SYSTEM CONFIGURATION BLOCK The 6 byte System Configuration Block contains one byte whose value is fixed 03H an unused byte and 4 byte pointer to the last Initiali zation Block the Channel Control Block After picking up the pointer in this block the RIMFIRE 44 continues to the last block CHANNEL CONTROL BLOCK The Channel Control Block contains six bytes around which all RIMFIRE 44 operations revolve Byte 1 is the Channel Control Word CCW For all RIMFIRE 44 commands it must contain either 11H for normal operation or 09H to clear an active non vectored Multibus interrupt CCW may contain other values when executing user written 8089 programs Refer to section 4 3 and 4 5 for additional information on the CCW Byte 2 is the Gate which the RIMFIRE 44 uses to signal its readiness to execute a command Bytes 3 6 Parameter Block Pointer form a pointer to the location of the LSB of the first Parameter Block During the Initialization process t
39. in the Corm mand Status byte bits 0 6 Code Description 00 This command executed successfully with no unrecoverable error and no retries 01 This command executed successfully with no unrecoverable error but required at least one retry or error correction during the execution 02 An error was detected in the data field which could not be cor rected by retry if enabled or error correction if enabled 03 An error was detected in the ID field whicn could not be corrected by retry if enabled 04 A seek error occurred because of a Seek Error status from the disk or because the target was beyond the logical or physical end of the disk 05 A verify error occured when the RIMFIRE 44 read an ID after a seek To correctly verify the cylinder and head of the first JD encountered after a seek must match the target cylinder and head 06 disk was not ready when a disk command was begun 07 The desired logical sector number could not be located on this Crack 08 The RIMFIRE 44 could not locate an ID sync mark between sect or pulses during a read or write or the data sync mark between sector pulses during a write 09 An unexpected End of lape mark was encountered during a tape write operation OA An unrecoverable data error was detected during a tape read or during an automatic read after write OB A Resume command was issued when a Dump Restore Suspended cond ition did not exist OC An illegal command was attem
40. is command formats the disk The format variables i e bytes sector cylinders disk are supplied during a previously executed Configure com mand The Format starts at the track and head as specified in the Par ameter Block and continues to the programmable end of the disk Note that the programmable end of the disk is defined by the Configure command and need not be the physical end This allows portions of the disk to be formatted with different sector sizes if desired The RIMFIRE 44 requires theuser to select the type of inter leaving i e the order in which the physical sectors are assigned logical numbers One of two interleave options may be chosen Auto interleave or user sup plied If the Auto interleave bit in the Control Word is set during the Format the RIMFIRE 44 will assign the logical sector numbers based on the selected interleave schedule This interleave number must be entered in the Records field This option is limited to disks having 255 sectors or less per track If the Auto interleave bit is not set the RIMFIRE 44 will read the sector numbering table from system memory starting at the address specified in the Source Destination field The user must create this table and insure that it contains an entry for each sector and that no numbers are skipped Each entry in the sector numbering table is a byte for disks with 255 or less sectors per track and a word 16 bits for those disks with 256 sec tors per trac
41. k or more The Format command may also be used to examine the interleave table cre ated by the RIMFIRE 44 without actually formatting any tracks See sec tion 5 1 4 for details Refer to the RIMFIRE 44 Application Note for Format examples Quo ecu MAP DEFECT 84 This command is used to inform the RIMFIRE 44 that tne track specified in the Parameter Block has a defect and should be mapped out The RIM FIRE 44 will then mark the track as defective by reformatting the track with the Defective Track ID sec 3 5 An alternate track is assigned from the end of the disk i e the hignest numbered cylinder and head combination which nas not been assigned as an alternate This track is also reformatted with the Alternate Track ID sec 3 5 When a defective track is accessed during normal operation tne RIMFIRE 44 will automatically access the alternate track transparent to tne user The cylinder and head of the alternate track are contained in all IDs of the defective track Since the Map Defect command includes the reformatting of two tracks one of the two methods of interleave selection must be used i e Auto interleave or user supplied table Refer to section 9 3 3 for details Alternate track selection may be overridden by setting the bit in the Control Word for Disk Read or Write commands READ LONG AC This command is similar to the normal Disk Read except that it reads and returns to system memory the data in e
42. k se quence since it requires only a 2 byte command code and halts immedi ately after clearing the interrupt MAILBOX INTERRUPTS A Mailbox Interrupt occurs when the RIMFIRE 44 sets the contents of a memory location mailbox to FFH The location of the mailbox is stored as a 4 pointer in the Interrupt Link field in the Parameter Block PAGING The RIMFIRE Z4 supports 24 bit addressing through a paging technique When data is to be transferred to or from system memory the upper four Multibus address bits ADB 20 23 are set in the Page register on the RIMFIRE 44 board Thereafter all data operations of that command will take place within the selected 1 Mbyte page These address bits are se lected in the Page entry in the Parameter Block All Parameter Blocks and Initialization Blocks must reside in the lower 1 Mbyte bid USER 8089 PROGRAMS The RIMFIRE 44 will execute user written 8089 object code either from system memory or from on board RAM If execution is to begin in system memory the starting system memory location should be placed as a 4 byte pointer in place of the first four bytes of the Parameter Block The remainder of the Parameter Block is not used The CCW in the Channel Control Block must be set to 13H A Channel Attention will begin execution If the user program is to be executed from on board RAM the Block Move should be used to move the code from system memory to RIMFIRE 44 RAM This RAM occupies
43. local addresses COO0H to CFFFH User programs should start at C100H or above The starting local address of the user program should be placed in the first 2 bytes of the Parameter Block The re mainder of the Parameter Block is not used The CCW should be set to 11H Channel Attention will begin execution Del Ui 152 DISK COMMAND EXECULION When a disk command is executed the RIMFIRE 44 obtains the information it requires from the Parameter Block Disk Read and Write commands for example require a starting disk address cylinder head and sector a sector count and a starting system memory location Some fields may or may not be used depending on the command DISK PARAMETER BLOCK The Disk Parameter Block Fig 5 1 contains 22 bytes divided into 11 fields The Parameter Block pointer must point to the least significant byte of the Parameter Block i e byte 1 of the command field The various fields are described in the following sections Also indicated is whether the field contains information required by the RIMFIRE 44 In put status return information from the RIMFIRE 44 Output or both In put Output Not all fields are used by all commands INT LINK CD STAT DR STAT SOURCE DEST COMMAND Fig 5 1 Disk Parameter Block COMMAND Input The command field contains 2 bytes The upper byte must be OOH for prop er operation Refer to section 9 for the command list HEAD SELECT
44. lt t GROUND 40 Wee 39 38 37 36 35 34 33 32 31 4 GROUND Fig D 1 Initialization Address DIP switch Channel Attention Bus Width The two DIP switches are used to select the Channel Attention address 15 bits and the width of the system data bus 8 or 16 bits A bit will be decoded as a 1 active if the corresponding switch is set off or open As an example Fig D 2 shows the switch settings for a Channel At tention Address of AAAAH AAAABH using a 16 bit data bus RIM FIRE 44 occupies two I O addresses since AO is not decoded Factory setting is AAH 8 bit I O address and 16 bit data bus unless requested otherwise open off closed on A15 A13 12 11 10 9 8 7 6 AS A4 2 Al 8 16 Jumper INT 10 17 Interrupts These jumpers select the non vectored interrupt priority level by con necting the INT pin to the appropriate level 10 Interrupt 0 I7 Interrupt 7 Factory setting is Interrupt level 7 Signal Name APPENDIX E CONNECTOR PIN OUTS Jl TAPE DRIVE Spare Spare Spare Spare Spare Host Host Host Host Host Host Host Host Bus Bus Bus Bus Bus Bus Bus Bus On Line Request Reset Transfer Acknowledge Ready Exception Direction Spare Spare Spare Spare Signal Pin T m LO NO LL NH LO N U
45. n execute the selected command with no additional system intervention Upon completion of each command the RIMFIRE 44 may go on to another Para seter Block or halt with or without interrupt depending upon options seiected When it halts it will open the Gate to signal its readiness to accept another command INTERRUPTS The RIMFIRE 44 may be programmed through the CONTROL entry in the Parameter Block to generate an interrupt at the completion of a command last command only in a linked chain or if an unrecoverable error occurs If such an error occurs during the execution of an intermediate command in a linked chain the RIMFIRE 44 will search through the chain and act on the interrupt options of the last command Interrupts may be of two types Non vectored Multibus or Mailbox inter rupts NON VECTORED INTERRUPTS Non vectored interrupts occur when the RIMFIRE 44 activates one of the eight Multibus interrupt lines The interrupt will be asserted at the completion of the command or chain of commands for which an interrupt was enabled immediately prior to the opening of the Gate The interrupt line will remain active low level on the Multibus until cleared The interrupt line may be cleared by setting the CCW to O9H and executing another RIMFIRE 44 command The RIMFIRE 44 will clear the interrupt before it reads the Parameter Block The Clear Interrupt command may be used here to avoid the time required for a normal Parameter Bloc
46. peration on a subsequent cartridge The disk address returned at this point represents the current location of the disk but not the exact amount of data on the tape This occurs because the RIMFIRE 44 RAM is used to FIFO data and may contain valid data when the command is suspended 9 0 9 1 25221 RIMFIRE 44 COMMANDS The RIMFIRE 44 executes 35 commands in six catagories Refer to sections 5 6 7 for a description of the contents and significance of the Para meter Block fields The Command Code in hex follows each command The Configure command must be the first command executed or an error will result DISK DRIVE CONTROL These commands transfer control and status information between the RIM FIRE 44 and the disk drives and perform other non data functions such as positioning or status CONFIGURE 00 This command inititalizes the RIMFIRE 44 and allows it to process all other commands addition the controller executes a short on board diagnostic 64 byte Disk Record whose location is specified by the Source Des tination pointer is read from system memory during this command The form of the Disk Record is shown in Fig 9 1 The Disk Record entries are hex numbers and have the following significance Heads Cylinder The highest numbered head select starting with O An entry of 02H indicates 3 heads per cylinder Drive Type This byte indicates the disk drive type Refer to Appendix G
47. ponse is to remove the cartridge insert a new cartridge and execute a RESUME This is done by inserting the command code in the Parameter Block and issuing a Channel Attention The rest of the Parameter Block is not used No other command should be executed after a Suspended condition except the Resume 9 6 9 6 1 25022 2 042 9 6 4 SPECIALS These commands do not involve the tape or disk and may be executed with the drives unconnected NOP ID This command executes the mechanics of normal Parameter Block operation and returns the RIMFIRE 44 Board ID 40H in place of the General Status byte in the Parameter Block DIAGNOSTIC 5C This command executes a controller diagnostic BLOCK MOVE 80 This command moves data up to 65K bytes between two memory locations Either location may be local on the RIMFIRE 44 board or system memory and may be constant or incrementing Several operations may be performed on the data during the move as out lined in Sec 7 1 4 The Block Move provides a powerful tool for any Multibus system Some example usages are Extended Memory Since the RIMFIRE A4 can address 16M bytes 24 address bits it can be used in conjunction withacompatible mem ory board to provide access to memory not normally accessible to System processors User 8089 programs TIhe Block Move may be used to download a user written 8089 program from system memory to the RIMFIRE 44 for execution See s
48. pted OD A diagnostic command was attempted without having the diagnostic jumper installed A checksum error in the PROM resident firmware was detected OF A time out condition occured between the tape drive and the RIM FIRE 44 10 The selected tape drive is not ready or is busy with another command 11 Ihe disk or tape was write protected when a write cormand was begun 12 The ID sync code could not be located during a disk read ID oper ation 15 One or more of the parameters in a Dump Restore Parameter Block was in error This occurs if the ending disk address is not greater than the starting disk address or if the starting or end ing sector number is zero 14 A Block Move command was linked to from another command Block Move must be the first command in a chain 15 16 57 18 19 1A 1B 1D 1 LE 20 21 22 23 24 25 26 28 29 2A 2C 2D An unexpected EOF Filemark was detected during a tape read A direct access was attempted to a track on the disk which had been assigned as an alternate A Dump or Restore command was suspended because the EOT Dump or FOF Restore was detected A new cartridge must be inserted and a Resume command given No Tape drive An illegal parameter was specified Possible error conditions include Zero record count for disk read or write Zero record count for tape space Auto interleave selected during disk format vidi greater than 255
49. r code The attributes read by the RIMFIRE 44 are placed in system memory start ing at the Source Destination address The number of attributes requested and the starting attribute number are specified in the Records field as shown in Fig 9 2 All entries are in hex 15 8 7 Number of Attributes Starting Attributes Number Fig 9 2 Records Field for Interrogate Command TEST INTERFACE 8C This command tests the RIMFIRE 44 to disk interface by writing a byte to the drive and then reading it back The user selects the byte to be written by placing it in tne lower byte of the Records field The RIMFIRE 44 will return the byte read in the upper byte of the Records field The user may then compare the two bytes READ WRITE PERMIT 98 This command will examine the Records field bit by bit starting with bit O and executes the function corresponding to the first bit set for the des ignated drive UJ ct Function Write enable the drive Write disable tne drive Load write permit Load read permit Report write permit Report read permit The cylinder address for loading and reporting read and write permit will be passed in the cylinder location in the Parameter Block 9 225 WRITE FILEMARK 40 A filemark is written on the tape 9 2 6 SPACE FILEMARK 48 This command spaces forward one filemark for each count in the Count field ERASE 50 This command erases the tape 9 2 8 DRIVE RESET 9
50. s to simplify this requirement 25052 9 4 2 RING BUFFER WRITE 74 This command transfers data from system memory to the tape in contin uous manner using a ring buffer technique Fig 9 3 Ring buffers are used to allow the user to provide a continuous source of data to the tape which is necessary to maintain streaming operation The Ring Buffer Write requires one or more data blocks in system memory Each block contains an 8 byte header Fig 9 4 and a data area of var iable length The header contains several handshake bits a byte count and a pointer to the next block When the RIMFIRE 44 begins a Ring Buffer Write command it proceeds to the first block and waits at the Block Gate until the Ready bit is set by the system When this occurs and no faults are present it writes the data from the data area in the block to the tape The RIMFIRE 44 then proceeds to the next block and repeats the same process continuing until it enters a block with the Last Block bit set When this occurs the RIMFIRE 44 will write this data to the tape write a filemark and exit the command in the normal fashion The Ring Buffer Write command provides an easy method for the user to stay ahead of the RIMFIRE 44 in supplying the data which is to be written onto the tape Conceptually the RIMFIRE 44 chases the Primary device supplying the data around the ring buffers emptying each data block as it is filled by the system until it arrives at
51. sectors per track A disk drive error exists which prevented execution of a disk write Check sense Byte 1 to identify the error Not used The disk interface is busy i e the drive and RIMFIRE 44 cannot communicate temporarily Ihe disk is busy executing a command An illegal disk parameter selected during a previously executed Configure command was detected during a disk command Such par ameters include BPS bytes sector HPC heads cylinder SPT sectors track or CPD cylinders disk The selected disk drive is down inoperable or not connected A match was found during a Block Move command using the Search option A Ring Buffer Read or Write was terminated early by the primary device There is no cartridge in the selected tape drive An unexpected exception error occured in the tape drive The micro status received from the tape drive was not expected A time out occured witn the handshaking signals between the RIM FIRE 44 and the tape drive A system memory time out occured No data was detected during a tape read A failure occured during the execution of the micro diagnostic Not used Not used An unidentifiable hardware error occured A RIMFIRE 44 command other than a Configure was attmepted as the first command after reset The RIMFIRE 44 was unable to write a disk ID during a Format or Map Defect command APPENDIX D JUMPERS This section describes the setting of jumpers and DIP switches on t
52. tape error a Primary Device Error or a filemark In these cases the appropriate error code will be set in the Parameter Block POINTER BYTE COUNT BUFFER READY BUSY COMPLETE TAPE FAULT LAST BLOCK _DISK TERMINATE Fig 9 3 RIMFIRE 44 Ring Buffers Fig 9 4 Ring Buffer Header du QD COMBINATION COMMANDS These commands transfer data between the disk and the tape in log ical sector order Data is read from and written to the tape such that 30 ips streaming operation is maintained DUMP 54 This command transfers data from the disk to the tape in logical sector order The command obtains a starting and ending disk address cylin der head and sector and transfers data until it has transferred the last sector or until an unrecoverable error is encountered It then writes a filemark to indicate the end of the record If the EOT is encountered the tape will be rewound to Load Point and the Parameter Block updated to indicate the address of the next sector to be read RESTORE 58 This command transfers data from the tape to the disk in logical sector order using the starting and ending disk locations in the Parameter Block RESUME 68 This command continues a Dump or Restore operation on a fresh cartridge when the previous cartridge has been filled When a Dump or Restore detects the EOT it will return a Suspended error to the system The proper res
53. tem memory address 0 specified as a 4 byte pointer DL Destination Local indicates 1 that the destination address is a 16 bit Local address i e on the RIMFIRE 44 board or a 20 bit system memory address 0 as a 4 byte pointer BYTE COUNT Input Output This field specifies the number of bytes to be transferred If a Search is active the Bl ck Move will terminate on a compare if it occurs be fore all bytes have been transferred This field will contain the number of bytes remaining at the completion of the command normally zero SOURCE Input This field contains a 4 byte pointer to the starting local or system memory location from which data is to be moved 2 bytes only if the Source is lo cal DESTINATION Input This field contains a 4 byte pointer to the starting local or system memory location to which data is to be moved 2 bytes only if the destination is local SEARCH Input This field contains the compare byte used during Search operations MASK STAT Input Output This field serves a dual purpose At the start of the command it contains an 8 bit value to which each byte is masked before being compared during a Search operation After completion of the command this byte contains status information as shown in Fig 3 765 4 3210 ERROR Fig 7 3 Block Move Status The E C and ERROR fields are the same as for the tape or disk except that a code of 20H indicates that a match was found durin
54. ter to be sent it is specified in the upper byte of the Records field If the command returns a parameter it will be returned in this location REZERO DISK A8 Clear the selected disk interface and issue a seek to track zero 9 221 95252 leo 9 2 4 TAPE DRIVE CONTROL These commands transfer control and status information between the RIM FIRE 44 and the tape drives and perform other non data functions such as positioning or status TAPE STATUS 28 The status of the selected drive is returned in the Drive Status byte and the micro status is returned in the micro status word in the Parameter Block REWIND 34 The tape is rewound to load point RETENSION 38 This command retensions the tape on the selected drive REPORT ERROR COUNTERS 3C This command reports the four 16 bit statistical error counters in the drive and clears them to zero These counters are moved to system memory starting at the location specified by the Source Destination field in the Parameter Block They are stored as shown in Fig 9 3 The four counters are RDECTR Read Data Error Counter RURCTR Read Underrun Counter WDECTR Write Data Error Counter WURCTR Write Underrun Counter SOURCE DEST POINTER Fig 9 3 Tape Drive Error Counters This command can be used to maintain a statistical history on a tape drive or on a particular cartridge 9 1 2 9 1 3 9 1 4 9 1 5 9 1 6 9 1 7 DISK DRIVE STA
Download Pdf Manuals
Related Search
Related Contents
AT-610 user manual Chicago Electric 94533 User's Manual UNE RIBAMBELLE DE NOUVELLES Copyright © All rights reserved.
Failed to retrieve file