home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PROGRAMS / UTILS / HARDDISK / 1540A422.ZIP / 1540A422.USM
Encoding:
Text File  |  1989-12-18  |  80.7 KB  |  1,695 lines

  1. Input  Parameters:    AH = 06H
  2.  
  3. Output Parameters: AH = Status of Operation
  4.                    AL = First Drive Supported
  5.                          80H Nonconcurrent operation
  6.                          81H Concurrent operation
  7.                    CF =  Return Code
  8.  
  9. 6.3.7 Read Drive Parameters
  10.  
  11. A SCSI READ CAPACITY command is used to determine the maximum logical block 
  12. of the selected drive. This information is then used to calculate the proper 
  13. number of cylinders to be returned to the host system. The number of heads 
  14. returned will always be 64 and the number of sectors per track will always 
  15. be 32. The number of drives returned will include both internally installed 
  16. drives and SCSI drives. 
  17.  
  18. Input  Parameters:AH = 08H
  19.                   DL = Drive Number (80H or 81H)
  20.  
  21. Output Parameters:AH = Status of Operation
  22.                   DL =  Number of BIOS accessible drives attached (1 or 2)
  23.                   DH =  Maximum value for head number (3FH)
  24.                   CH =  Maximum value for Cylinder Range (Low Byte)
  25.                   CL =  Maximum value for Sector, High Cylinder Bits
  26.                           Bits 7,6      High Order Cylinder Bits
  27.                           Bits 5-0 Sector Number Maximum Value ( 20H)
  28.                   CF =  Return Code
  29.  
  30. 6.3.8 Initialize Drive Pair Characteristics
  31.  
  32. This command performs no operation, since SCSI CCS drives are self 
  33. configuring. 
  34.  
  35. Input  Parameters: AH = 09H
  36.                    DL = Drive Number (80H or 81H)
  37.  
  38. Output Parameters: AH = Status of Operation
  39.                    CF =  Return Code
  40.  
  41. 6.3.9 Seek
  42.  
  43. A seek to the logical block address defined by the physical parameters is 
  44. performed. The seek is performed using the SEEK (EXTENDED) command (SCSI 
  45. Operation 2BH). The SEEK commands are not mandatory CCS commands and are not 
  46. required for proper functioning of SCSI devices. If the addressed disk drive 
  47. reports an error indicating that the SEEK (EXTENDED) command is not 
  48. supported,  the BIOS command will complete normally anyway. Since the seek 
  49. operation is performed automatically by a Read or a Write operation, there 
  50. is no need to generate a separate seek operation to access data. 
  51.  
  52.  
  53. Input  Parameters: AH = 0CH
  54.                    DL = Drive Number (80H or 81H)
  55.                    DH = Head
  56.                    CH = Cylinder
  57.                    CL = High Cylinder. (Sector bits = 0)
  58.  
  59. Output Parameters: AH = Status of Operation
  60.                    CF =  Return Code
  61.  
  62.  
  63. 6.3.10 Alternate Disk Reset
  64.  
  65. The BIOS is requested to reset the disk subsystem. A SCSI Reset operation is performed on the SCSI bus if the bus is busy at the time the Reset Disk System command is received by the host adapter. No other SCSI or host adapter activity occurs. The BIOS command is then passed on to the standard BIOS so that any internally installed hard disks and floppy disk devices can also be reset. If the BIOS is operating concurrently with an internally installed hard disk, the drive number is decremented by the AHA-1540A/1542A BIOS so that the standard BIOS does not attempt to reset the drive that is not installed.
  66.  
  67. Input  Parameters: AH = 00H
  68.                    DL = Drive Number (80H or 81H)
  69.  
  70. Output Parameters: AH = Status of Operation
  71.                    CF =  Return Code
  72.  
  73. 6.3.11 Test Drive Ready
  74.  
  75. The BIOS command determines that the specified drive is available and ready 
  76. by executing a TEST UNIT READY command (SCSI Operation Code 00H) to the SCSI 
  77. device. The command may have to be executed a second time if a Unit 
  78. Attention condition was detected in the first execution of the TEST UNIT 
  79. READY. 
  80.  
  81. Input  Parameters: AH = 10H
  82.                    DL = Drive Number (80H or 81H)
  83.  
  84. Output Parameters: AH = Status of Operation
  85.                    CF =  Return Code
  86.  
  87. 6.3.12 Recalibrate
  88.  
  89. The BIOS command transmits a REZER0 UNIT command (SCSI Operation Code 01H) 
  90. to the specified drive. Since the REZERO UNIT command is not a mandatory 
  91. command and is not required for proper functioning of the SCSI device, the 
  92. BIOS command will complete without indicating an error even if the SCSI 
  93. device indicates that the command is invalid. 
  94.  
  95. Input  Parameters: AH = 11H
  96.                    DL = Drive Number (80H or 81H)
  97.  
  98. Output Parameters: AH = Status of Operation
  99.                    CF =  Return Code
  100.  
  101. 6.3.13 Read DASD Type
  102.  
  103. The AHA-1540 BIOS executes this command by performing an INQUIRY  (SCSI 
  104. Operation Code 12H) and a READ CAPACITY (SCSI Operation Code 25H) to the 
  105. selected SCSI drive. The INQUIRY command is used to verify that the device 
  106. is a Direct Access Storage Device. The READ CAPACITY is used to determine 
  107. the number of logical blocks available. A special return format is used to 
  108. obtain the required information. 
  109.  
  110. Input  Parameters: AH = 15H
  111.                    DL = Drive Number (80H or 81H)
  112.  
  113. Output Parameters:AH = Status of Operation (Special Format)
  114.                         00H  Drive not present or DL invalid
  115.                         01H Reserved
  116.                         02H Reserved
  117.                         03H Fixed Disk installed
  118.  
  119.                   CX,DX  Number of 512 byte blocks available on disk
  120.                   CF =  Return Code
  121.  
  122.  
  123. 7.1 PC/AT BIOS
  124.  
  125. The PC/AT BIOS is provided to allow the user to use the AHA-1540A/1542A in 
  126. lieu of, or in addition to, a standard PC/AT hard disk controller. This 
  127. compatibility includes booting from a SCSI device. Hard disk requests are 
  128. sent to the BIOS via an INT 13 software interrupt. CPU register contents 
  129. specify the desired I/O function and associated parameters. The BIOS then 
  130. uses host adapter commands to emulate PC/AT functions. Again, since the 
  131. mailbox architecture is circumvented, PC/AT BIOS functions run in a single-
  132. threaded mode. 
  133.  
  134. The BIOS consists of three major functional components. These are: 
  135.  
  136. 1. Initialization Routine
  137. 2. System Boot Routine
  138. 3. Hard Disk I/O Routine
  139.  
  140.  
  141. 7.1.1 Initialization
  142.  
  143. The Initialization routine is called at power-up. This routine performs all 
  144. of the necessary initialization functions and will display the following 
  145. message if the system successfully recognizes the AHA-1540A/1542A BIOS. 
  146.  
  147. ADAPTEC AHA-1540A/1542A HOST ADAPTER BIOS
  148. COPYRIGHT 1987 ADAPTEC, INC.
  149. ALL RIGHTS RESERVED.
  150.  
  151. If any subsequent initialization of the AHA-1540A/1542A fails, the following 
  152. message is displayed: 
  153.  
  154. HOST ADAPTER NOT FOUND AT PORT 330H.
  155.  
  156. otherwise, the AHA-1540A/1542A BIOS chooses a course of action based upon 
  157. the number and types of hard disks already installed. In each case, the 
  158. number of hard disks already installed is displayed along with the ID 
  159. numbers of any SCSI devices that are successfully used by the BIOS. 
  160.  
  161. Possible Messages:
  162.  
  163. HARD DISK #0 ALREADY INSTALLED.
  164. HARD DISK #1 ALREADY INSTALLED.
  165. HOST ADAPTER DIAGNOSTIC FAILURE.
  166. SCSI DEVICE 0 : 0 NOT FOUND.
  167. USING SCSI DEVICE 0 : 0 AS HARD DISK #0.
  168. USING SCSI DEVICE 0 : 0 AS HARD DISK #1.
  169. USING SCSI DEVICE 0 : 1 AS HARD DISK #1.
  170. USING SCSI DEVICE 1 : 0 AS HARD DISK #1.
  171.  
  172. NOTE: No error message is displayed if a second SCSI drive is not available. 
  173. If the system reports an initial number of hard drives greater than 2, the 
  174. following message is displayed: 
  175.  
  176. SYSTEM CONFIGURATION ERROR.
  177.  
  178. The AHA-1540A/1542A BIOS allows the use of 0, 1, or 2 hard disks on the SCSI 
  179. bus under DOS without a device driver. 
  180.  
  181. If 2 hard disks are attached to an internal hard disk controller, and are 
  182. already recognized by the system, the BIOS does nothing. A device driver 
  183. will be needed to access SCSI devices. 
  184.  
  185. If 1 hard disk is attached to an internal hard disk controller, and is 
  186. already recognized by the system, the BIOS attempts to assign the SCSI 
  187. device (Target : LUN) 0 : 0 as the second drive. (drive D:) If this is 
  188. unsuccessful, an initialization error is reported to the system. 
  189.  
  190. If there are 0 hard disks attached to an internal controller, the BIOS 
  191. attempts to assign the first SCSI device (Target : LUN) 0 : 0 as the first 
  192. drive. (drive C:) If this is unsuccessful an initialization error is 
  193. reported to the system. If successful, the BIOS attempts to assign another 
  194. SCSI device as the second drive. (drive D:) Device 0 : 1 is tried first, and 
  195. if that fails, device 1 : 0 is tried. There is no initialization error 
  196. reported if a second drive is not available. 
  197.  
  198. 7.1.2 System Boot
  199.  
  200. System boot is invoked by execution of an Interrupt 19. No interception of 
  201. this interrupt is necessary, as the PC/AT BIOS manages the boot process. 
  202. When the boot procedure attempts to read the boot track from drive C:, the 
  203. AHA-154XA BIOS will respond if drive C: is a SCSI Drive. Only SCSI drive 0:0 
  204. can be assigned as a SCSI C: drive. Mother board BIOS's that use interrupt 
  205. 13 to perform booting should boot normally from SCSI drives using the AHA-
  206. 154XA. 
  207.  
  208. 7.1.3 Hard Disk I/O
  209.  
  210. The BIOS enables up to two SCSI drives to be accessed via interrupt 13 as 
  211. described in Section 6. 
  212.  
  213. 7.2 XENIX/UNIX Drivers
  214.  
  215. SCO Xenix and Unix, Interactive Systems Unix, and Microport Unix all support 
  216. the AHA-1540A/1542A at the time of this publication. Please consult with 
  217. these Operating System companies for more information on their products. 
  218.  
  219.  
  220. 7.3 DOS Driver
  221.  
  222. An optional DOS Driver is available that enables the AHA-1540A/1542A to 
  223. access additional SCSI devices on the SCSI bus. When operating under DOS, a 
  224. device driver is needed to access more than two hard disks, tape devices or 
  225. other types of SCSI peripherals. In addition, DOS applications that use the 
  226. virtual memory mode of the 80386 processor require this driver. If you are 
  227. not running DOS programs that operate in the virtual 80386 mode, or if all 
  228. DOS operations will be confined to two SCSI disks or one internal and one 
  229. SCSI disk, a device driver is not needed because of the on-board BIOS. The 
  230. DOS driver is installed by creating a DOS configuration (CONFIG.SYS) file 
  231. that calls the device driver at boot time. Please refer to your DOS manual 
  232. for information on creating a CONFIG.SYS file. At initial system loading, 
  233. the AHA-1540A/1542A device driver will determine the number of hard disks 
  234. attached to the system. The device driver is normally only installed if one 
  235. of the following cases is true. 
  236.  
  237. 1) There are two internal hard disks and one or more SCSI disks.
  238. 2) There is one internal hard disk and two or more SCSI disks.
  239. 3) There are no internal hard disks and more than two SCSI disks.
  240.  
  241.  
  242. The following table shows how hard disks in a system are addressed:
  243.  
  244.       configuration                 c:           d:           device driver
  245. ┌────────────────────────┬────────────────┬───────────────┬──────────────┐
  246. │two internal hard drives│  1st int. disk │ 2nd int. disk │  SCSI        │
  247. │                        │                │               │  devices     │
  248. ├────────────────────────┼────────────────┼───────────────┼──────────────┤
  249. │one internal hard drive │  int. hard disk│  SCSI 0/0     │ other SCSI   │
  250. │                        │                │               │  devices     │
  251. ├────────────────────────┼────────────────┼───────────────┼──────────────┤
  252. │no internal hard drive  │  SCSI 0/0 disk │  SCSI 0/1     │ other SCSI   │
  253. │                        │                │   or 1/0      │  devices     │
  254. └────────────────────────┴────────────────┴───────────────┴──────────────┘
  255.  
  256. The SCSI disk drives that are accessed by the device driver are divided into 
  257. 32 MB logical disks. There can be multiple logical disks on one physical 
  258. SCSI disk drive. A utility program is also provided that performs the 
  259. functions of the DOS FDISK and FORMAT utilities. This utility will perform 
  260. FDISK and FORMAT to SCSI disks that can only be accessed through the device 
  261. driver. These utility programs partition the disks and create file 
  262. directories so that DOS files may be copied and accessed from SCSI drives. 
  263. Please refer to your DOS manual for details of FDISK and FORMAT. 
  264.  
  265. SCSI 2 compatible and QIC 104 command set  1/4" tape drives are also be 
  266. supported by the DOS device driver. The user accesses a SCSI tape drive by 
  267. building a CCB as described in Section Five. The device driver passes the 
  268. CCB to the AHA-1540A/1542A and instructs the AHA-1540A/1542A to complete the 
  269. command. Software products such as Sytron Corporations SYTOS Tape Operating 
  270. System automatically interface to the Adaptec AHA-1540A/1542A DOS driver. 
  271.  
  272. To install the driver into your boot routine, you must create, or edit the 
  273. DOS configuration file named CONFIG.SYS. You can use any file editor to do 
  274. this, or you can create it through the "COPY CON: CONFIG.SYS" DOS command. 
  275. Refer to your  DOS manual for more information on this command. Once 
  276. installed, the driver operates transparently to the user. 
  277.  
  278. 7.3.1 DOS Driver Support of Virtual Mode
  279.  
  280. The use of high performance 16-bit Bus Master DMA on the AHA-1540A/1542A 
  281. SCSI host adapter may result in incompatible operation with application 
  282. programs that use the 80386 virtual memory mode of operation. 
  283.  
  284. In real mode, the host adapter BIOS is passed a physical address. This is 
  285. necessary since the host adapter controls all SCSI I/O without CPU 
  286. intervention. This physical address may not be passed to the host adapter 
  287. when the system is in the V86 mode. Programs that use the V86 mode can only 
  288. be run on 80386 machines. 
  289.  
  290. The AHA-1540A/1542A DOS driver also allows this type of application program 
  291. to run under DOS. 
  292.  
  293. 7.4 AHA-1540A/1542A On-board Utilities
  294.  
  295. The AHA-154XA BIOS contains a utility program that allows the user to 
  296. perform the several important functions. The utility programs are accessed 
  297. using a self explanatory menu. 
  298.  
  299. The utilities are accessed using the DOS Debug function. To access the 
  300. utilities, boot using a standard DOS system disk or diskette. When the DOS 
  301. prompt symbol appears on the screen, enter the debug program by typing debug 
  302. and pressing Enter. The debug program will load and present a new cursor, 
  303. the - symbol. Enter the following line and press enter to invoke the On-
  304. board Utility program. 
  305.  
  306.           G=dc00:6
  307.  
  308. If a BIOS base address other than DC000H is being used on the adapter to be 
  309. tested, replace the dc00 parameter with the actual BIOS base segment. The 
  310. segment is the upper 16 bits of the 20 bit BIOS base address. 
  311.  
  312. The menu options include the following items which are selected by pressing 
  313. the index number of the menu function. 
  314.  
  315. (1)  A list of all devices installed on the SCSI bus may be requested. This 
  316. information is retrieved via a RETURN INSTALLED DEVICES host IOCP command, 
  317. followed by INQUIRY commands to all available targets. 
  318.  
  319. (2) A device may be selected for execution of the following two functions. 
  320. Pressing the '2' key toggles the selection from one installed device to the 
  321. next. 
  322.  
  323. (3) A low level, or primary, format of the selected Target/LUN can be 
  324. requested. A MODE SELECT is issued first to set the block size at 512 bytes 
  325. per sector. Then a FORMAT command is issued which will format the drive with 
  326. factory as well as grown defects.  Only one SCSI drive can be formatted at a 
  327. time. 
  328.  
  329. (4) Integrity of a target can be checked by verifying an entire drive. Any 
  330. correctable errors found will automatically be handled through the SCSI 
  331. Reassign Blocks Command. If any uncorrectable errors are found the user will 
  332. first be asked via a screen prompt if reassignment of the effected block 
  333. should be performed. 
  334.  
  335. (5) The user can leave the AHA-154XA On-board Utility functions and return 
  336. to normal DOS operation. 
  337.  
  338.  
  339. In addition to the On-Board Utilities, a DMA channel test also resides on 
  340. the AHA-154XA BIOS. The test verifies that all DOS-available memory can be 
  341. accessed correctly from the host adapter using first party DMA. The test 
  342. takes from 2 to 10 minutes to execute, depending on the CPU speed and the 
  343. amount of memory available. The test is invoked by entering the debug 
  344. program as above and entering: G=DC00:9 
  345.  
  346. The program then is activated and verifies each segment of the memory, 
  347. indicating with screen messages as each segment is verified. The test runs 
  348. indefinitely or until an error is detected. In most cases of error, the 
  349. error information cannot be presented since the host operating system is 
  350. likely to be compromised. The error symptom is usually a system crash. The 
  351. test is halted by rebooting. 
  352.  
  353.  
  354. 8.0 SCSI FEATURES
  355.  
  356. 8.1 SCSI DESCRIPTION, INITIATOR MODE
  357.  
  358. The AHA-1540A/1542A provides a very high performance SCSI interface 
  359. connection. The host adapter meets the ANSI Standard X3.131-1986, describing 
  360. the SCSI. The host adapter additionally meets conformance level 2 of the 
  361. specification by implementing the following SCSI options: 
  362.  
  363. Accepts or manages the following messages:
  364.  
  365.   Command Complete
  366.   Disconnect    
  367.   Message Reject
  368.   Identify
  369.   Save Data Pointer
  370.  
  371.  Performs arbitration
  372.  
  373. The following alternatives are selected for the AHA-1540A/1542A SCSI 
  374. interface connection from those described by X3.131-1986. 
  375.  
  376. Single-ended SCSI driver/receivers are used. 
  377.  
  378. The Termination Power is supplied through a removable fuse, allowing the 
  379. user to select whether or not termination power is provided by the host 
  380. adapter at installation time. 
  381.  
  382. Parity is always generated. Parity checking can be disabled through the 
  383. jumper selection. 
  384.  
  385. The "Soft" Reset option is always performed by the AHA-1540A/1542A. If the 
  386. user desires the "Hard" Reset, an interrupt servicing program that detects 
  387. the SCSI Reset Detected interrupt in the Interrupt Flags Port must set the 
  388. Soft Reset bit in the Control Port. This bit forces the host adapter to 
  389. clear all SCSI related operations, but does not require execution of the 
  390. diagnostic functions. If the Soft Reset bit has been set, the host software 
  391. must re-initialize the AHA-1540A/1542A. 
  392.  
  393. Synchronous data transfer is supported. Negotiation for the synchronous 
  394. transfer initiated by another SCSI device will be accepted by the AHA-
  395. 1540A/1542A at any time. If the jumper has been set to allow it, the AHA-
  396. 1540A/1542A will also initiate synchronous data transfer negotiation when it 
  397. has detected that  such negotiation may be required. 
  398.  
  399. Multitasking is fully supported. 
  400.  
  401. Modify Data Pointers is supported to allow Zero Latency Read operations. 
  402. In addition to these SCSI functions, the SCSI Common Command Set at level 4B 
  403. is also supported. While this document was never made a standard, it 
  404. describes a widely available set of disk drive functions which are supported 
  405. by the host adapter. The Host Adapter BIOS commands are all mapped in to 
  406. SCSI CCS commands to allow the proper support of all the most common SCSI 
  407. disk drives. The Adapter Command "Return Installed Devices" also uses CCS 
  408. commands to determine which devices are available. 
  409.  
  410. The draft ANSI standard for SCSI-2 has been used as a reference for the 
  411. implementation of all SCSI functions with the expectation that the host 
  412. adapter will be fully compatible with the final version of the SCSI-2 
  413. standard. In particular, the Processor type device command set has been 
  414. selected from the SCSI-2 manual for Target Mode operation. 
  415.  
  416.  
  417. 8.1.1 Linked SCSI Commands
  418.  
  419. The AHA-1540A/1542A supports linking of SCSI commands in initiator mode. 
  420. When the link bit in the SCSI command control byte is set, the target will 
  421. present either a 0A or 0B message at command completion. The AHA-1540A/1542A 
  422. uses the the link pointer in a CCB to fetch another CCB. At the same time, 
  423. the completed CCB status and address are stored in an MBI. If the target 
  424. returns a 0B or 00 message, the AHA-1540A/1542A generates an interrupt to 
  425. inform the host of the full MBI. If the target returns a 0A message, the 
  426. MBIF interrupt is not posted until all linked commands are completed. The 
  427. linked CCBs must address the same target and LUN since the target is not re-
  428. selected. 
  429.  
  430. 8.1.2 Zero Latency Read Operation
  431.  
  432. The AHA-1540A/1542A implements Zero Latency operation through the use of 
  433. modify data pointer messages. Zero Latency can eliminate rotational latency, 
  434. depending on the length of the data transfer, by supporting out of order 
  435. data transfers. This advanced feature is currently only implemented on the 
  436. ACB-4525Z SCSI to ESDI controller, and is supported transparently to the 
  437. user. 
  438.  
  439. Since the Adaptec host adapter family is the first to support Zero Latency 
  440. Read operation, this section is intended to briefly explain the required 
  441. target support. Please refer to the Adaptec ACB-4525Z SCSI to ESDI 
  442. controller manual for complete details of Zero Latency Read operation. 
  443.  
  444. After seeking to the target track, the ACB-4525Z (ACB-4525Z is assumed since 
  445. it is the first SCSI controller to implement this feature) will begin 
  446. reading block IDs. If the first block ID is within range of the data 
  447. transfer, but not the last block of the the data transfer, the ACB-4525Z 
  448. will begin reading the subsequent blocks into its buffer. Before 
  449. transferring data the ACB-4525Z will issue a MODIFY DATA POINTER message to 
  450. the AHA-1540A/1542A. This supplies a positive argument that is added to the 
  451. value of the current data pointer. The ACB-4525Z will now send this portion 
  452. of the data transfer to the host. The ACB-4525Z will resume reading data 
  453. into its buffer as soon as the first block of the data transfer is detected. 
  454. Before sending this data to the host, the ACB-4525Z will issue a second 
  455. MODIFY DATA POINTER message to the AHA-1540A/1542A which supplies a negative 
  456. argument. This returns the data pointer to its original position. This 
  457. guarantees that a data transfer of one track or less will never require more 
  458. than a single revolution since data can now be transferred out of order. 
  459.  
  460. 8.1.3 SCSI Messages 
  461.  
  462. The AHA-154XA host adapter supports a number of special messages in addition 
  463. to the messages required by meeting conformance level 2. Those messages are 
  464. described in detail in the SCSI specification, X3.131-1986, and in this 
  465. section where they are used. The messages are summarized in this table: 
  466.  
  467. FUNCTION                MESSAGE                   CAUSED BY
  468.  
  469.  Standard Messages      Command Complete          Normal Sequencing
  470.  
  471.  Error Management       Message Reject            Invalid Messages
  472.                         Bus Device Reset          Special CCB
  473.                         Abort                     Special MBO
  474.  
  475. Disconnect / Reconnect  Identify                  Normal Sequencing
  476.                         Disconnect                Normal Sequencing
  477.                         Save Data Pointer         Normal Sequencing
  478.                         Restore Pointers          Special Sequencing/ZLR
  479.  
  480. Synchronous Transfer    Synchronous Data Transfer Initialization Sequencing
  481.                         Request
  482.  
  483. Zero Latency Operation  Modify Data Pointers      ZLR Sequencing
  484.  
  485. Linked Commands         Linked Command Complete   Command Linking
  486.                         Linked Command Complete   Command Linking
  487.                         With Flag
  488.  
  489.  
  490. 8.2 SCSI DESCRIPTION, TARGET MODE
  491.  
  492.  
  493. 8.2.1 Initiator Conformance Level Requirements
  494.  
  495. Initiators that  execute commands against an  AHA-1540A/1542A operating in 
  496. Target Mode are required to have the following conformance levels, as 
  497. described in Appendix E of the SCSI  Specification, ANSI  X3.131-1986. 
  498. Conformance must be present  with respect to each of the following items: 
  499.  
  500. The  initiator must use single-ended drivers. 
  501.  
  502. Termination power may optionally be provided by the initiator, but must meet 
  503. the SCSI specification  in both its over-current protection and its  reverse 
  504. current diode protection.  The terminators may be  installed on the AHA-
  505. 1540A/1542A board or  installed as in-line terminators at the cable 
  506. connectors. 
  507.  
  508. The implementation of parity is optional, but desirable. The  initiator may 
  509. support either "hard" reset or "soft" reset. All attached devices must 
  510. support the same type of reset. 
  511.  
  512. The initiator must meet the requirements of conformance level two. In 
  513. particular, all LUN addressing must be performed by the IDENTIFY message, 
  514. not by the  LUN field in the CDB. Disconnection and reconnection must be 
  515. supported. 
  516.  
  517. The initiator and target functions have the same SCSI ID. 
  518.  
  519.  
  520. 8.2.2 Support of Synchronous Transfer
  521.  
  522. Synchronous transfer is supported by the AHA-1540A/1542A in target mode 
  523. without any instruction or support from the system processor. If an 
  524. initiator  invokes a synchronous transfer negotiation, the AHA-1540A/1542A 
  525. will complete the negotiation of the required transfer offset and period. If 
  526. the proper jumper has been set, the AHA-1540A/1542A will also attempt to 
  527. negotiate synchronous transfer during the initial selection period of the 
  528. first command after an initialization or after a SCSI reset. 
  529.  
  530.  
  531. 8.2.3 SCSI Target Operation in Processor Target Mode
  532.  
  533. When the AHA-1540A/1542A has been set to respond in Processor Target Mode, 
  534. the host adapter appears on the SCSI bus as a normal processor type device 
  535. as defined by the SCSI specification. From one to eight LUN's may be 
  536. supported, depending on the LUN mask byte in the Enable Target Mode command.  
  537. Five SCSI commands are accepted: 
  538.  
  539.     TEST UNIT READY    
  540.     REQUEST SENSE    
  541.     INQUIRY    
  542.     SEND
  543.     RECEIVE
  544.  
  545. All other commands are rejected with CHECK CONDITION status. The sense 
  546. information will indicate a Sense Key of 05H (Illegal Request) with a Sense 
  547. Code of  20H (Invalid Command Operation Code). 
  548.  
  549. The commands that do not perform data transfer to or from the host are 
  550. handled completely by the AHA-1540A/1542A with no CCB communication with the 
  551. host system. Those commands are the TEST UNIT READY, REQUEST SENSE, and 
  552. INQUIRY commands. The SEND and RECEIVE commands must have a CCB from the 
  553. host with the proper direction bits, the proper initiator address, and the 
  554. proper LUN number to complete the SCSI operation. The SEND and RECEIVE CCBs 
  555. may be provided to the host adapter before a command is received on the SCSI 
  556. or may be requested after the command is received. 
  557.  
  558. Each time an initiator activates a command to the AHA-1540A/1542A, an 
  559. internal sub-channel is activated to manage the command. The sub-channel is 
  560. dedicated to that particular LUN-Initiator transaction until all operations 
  561. associated with the command are completed. Such operations include 
  562. disconnection to obtain a CCB,  pending error conditions, and linked 
  563. operations. If all sub-channels are busy, a selection to the AHA-1540A/1542A 
  564. will result in the AHA-1540A/1542A accepting the command and then generating 
  565. BUSY status immediately. If this occurs, the initiator must re-issue the 
  566. command later.  
  567.  
  568. 8.2.3.1 TEST UNIT READY
  569.      bit 7     6     5     4     3    2    1    0
  570.  byte┌──────────────────────────────────────────────┐
  571.   0  │  ├test unit ready code(00)──────────────────┤│
  572.      ├──────────────────────────────────────────────┤
  573.   1  │  ├LUN(unused=0)──┤├──────reserved(00)───────┤│
  574.      ├──────────────────────────────────────────────┤     
  575.   2  │  ├────────────────reserved(00)──────────────┤│
  576.      ├──────────────────────────────────────────────┤     
  577.   3  │  ├────────────────reserved(00)──────────────┤│
  578.      ├──────────────────────────────────────────────┤     
  579.   4  │  ├────────────────reserved(00)──────────────┤│
  580.      ├──────────────────────────────────────────────┤     
  581.   5  │  ├──────────reserved(00)─────────├flag┤├link┤│
  582.      └──────────────────────────────────────────────┘
  583.  
  584.  
  585. The TEST UNIT READY command follows the SCSI specification in all respects. 
  586. If the AHA-1540A/1542A has been initialized by the Enable Target Mode 
  587. command to the Processor Target Mode, the command will finish normally with 
  588. GOOD status and a COMMAND COMPLETE message. The host adapter supports the 
  589. normal definition of UNIT ATTENTION on the first operation after power on, 
  590. after a SCSI Reset, or after a BUS DEVICE RESET. 
  591.  
  592. If a TEST UNIT READY command is executed against an LUN which was not 
  593. allowed by the Enable Target Mode command, then CHECK CONDITION status will 
  594. be presented with sense data of Sense Key 5 (Invalid Request) and an Error 
  595. Code of 25H (Invalid LUN). 
  596.  
  597.  
  598. 8.2.3.2 REQUEST SENSE
  599.  
  600.      bit 7     6     5     4     3    2    1    0
  601.  byte┌──────────────────────────────────────────────┐
  602.   0  │  ├request sense operation code (03h)────────┤│
  603.      ├──────────────────────────────────────────────┤
  604.   1  │  ├LUN(unused(00)─┤├──────reserved(00)───────┤│
  605.      ├──────────────────────────────────────────────┤     
  606.   2  │  ├────────────────reserved(00)──────────────┤│
  607.      ├──────────────────────────────────────────────┤     
  608.   3  │  ├────────────────reserved(00)──────────────┤│
  609.      ├──────────────────────────────────────────────┤     
  610.   4  │  ├────────────────reserved(00)──────────────┤│
  611.      ├──────────────────────────────────────────────┤     
  612.   5  │  ├─────────reserved(00)──────────├flag┤├link┤│
  613.      └──────────────────────────────────────────────┘
  614.  
  615.  
  616. If the AHA-1540A/1542A has returned CHECK CONDITION status to a previous 
  617. command, the REQUEST SENSE command will obtain the sense information 
  618. associated with the error. The sense information will be sent in the 
  619. extended sense format according to the SCSI standard. The data format is 
  620. given in the following figure: 
  621.  
  622.  
  623.      bit 7     6     5     4     3    2    1    0
  624.  byte┌──────────────────────────────────────────────┐
  625.   0  │  ├error code(07h orf0h)─────────────────────┤│
  626.      ├──────────────────────────────────────────────┤
  627.   1  │  ├────────────reserved(00)──────────────────┤│
  628.      ├──────────────────────────────────────────────┤     
  629.   2  │  ├───00────┤├ilf┤├──0──┤├──sense key────────┤│
  630.      ├──────────────────────────────────────────────┤     
  631.   3- │  ├───────────information bytes──────────────┤│
  632.      │                                              │
  633.   6  │  ├───────────(residue)──────────────────────┤│
  634.      ├──────────────────────────────────────────────┤     
  635.   7  │  ├─────────additional sense bits────────────┤│
  636.      ├──────────────────────────────────────────────┤
  637.   8- │  ├─────────reserved(00000000h))─────────────┤│
  638.      │                                              │
  639.  11  │  ├──────────────────────────────────────────┤│
  640.      ├──────────────────────────────────────────────┤
  641.  12  │  ├─────────additional sense code────────────┤│
  642.      ├──────────────────────────────────────────────┤
  643.  13  │  ├─────additional sense code qualifier(00h)─┤│
  644.      └──────────────────────────────────────────────┘
  645.  
  646.  
  647. The following errors are detected and presented by the AHA-1540A/1542A while 
  648. operating in Processor Target Mode: 
  649.  
  650. Error                         Sense      Additional Sense
  651.                                Key               Code
  652.  
  653. No Sense Data                   00                00
  654. Invalid Command Operation Code  00                20
  655. Invalid LUN                     05                25 
  656. Invalid Command Parameter       05                26
  657. Power Up Attention              06                29
  658. Reset  Attention                06                29
  659. Interface Parity Error          0B                47
  660. Initiator Detected Error        0B                48
  661. Dumb Initiator                  05                2B
  662.  
  663.  
  664. One set of error data may be buffered for each initiator - LU association 
  665. possible, up to a total of 56 sets of sense data. No Contingent Allegiance 
  666. or Extended Contingent Allegiance state is established. 
  667.  
  668. The Error Code (Byte 0) will be F0h if the residue field is valid and 70h if 
  669. the residue field has no information. 
  670.  
  671. The Incorrect Length Indicator (ILI) will be set if an incorrect data 
  672. transfer length is executed as described in Section 8.2.4. 
  673.  
  674. The residue is set equal to the transfer length requested in the initiator 
  675. CDB minus the target host's specified data length specified as a four-byte 
  676. two's complement number. 
  677.  
  678. 8.2.3.3 INQUIRY
  679.  
  680.      bit 7     6     5     4     3    2    1    0
  681.  byte┌──────────────────────────────────────────────┐
  682.   0  │  ├Inquiry Operation code(12h)───────────────┤│
  683.      ├──────────────────────────────────────────────┤
  684.   1  │  ├LUN(unused=00)─┤├──reserved(00)───────────┤│
  685.      ├──────────────────────────────────────────────┤     
  686.   2  │  ├───────────reserved(00)───────────────────┤│
  687.      ├──────────────────────────────────────────────┤     
  688.   3  │  ├───────────reserved(00)───────────────────┤│
  689.      ├──────────────────────────────────────────────┤
  690.   4  │  ├───────────Allocation lenth───────────────┤│
  691.      ├──────────────────────────────────────────────┤     
  692.   5  │  ├───────────reserved(00)─────────├flag┤├link┤
  693.      └──────────────────────────────────────────────┘
  694.  
  695.  
  696. The INQUIRY command provides the information necessary to uniquely identify 
  697. the Adaptec AHA-1540A/1542A as a Processor-type device. The information is 
  698. returned in the SCSI-2 format. The following information is returned to any 
  699. selecting initiator from any selected AHA-1540A/1542A Logical Unit: 
  700.  
  701.      bit 7     6     5     4     3    2    1    0
  702.  byte┌──────────────────────────────────────────────┐
  703.   0  │Peripheral qual'er┤├processor device type(03h┤│
  704.      ├──────────────────────────────────────────────┤
  705.   1  │  ├───────────reserved(00)───────────────────┤│
  706.      ├──────────────────────────────────────────────┤     
  707.   2  │  ├───────────reserved(00)───┤├ ansi ver(02)─┤│
  708.      ├──────────────────────────────────────────────┤     
  709.   3  │  ├────────Response data format(02h)─────────┤│
  710.      ├──────────────────────────────────────────────┤
  711.   4  │  ├───────────Additional lenth(1Dh)──────────┤│
  712.      ├──────────────────────────────────────────────┤     
  713.   5  │  ├───────────reserved(00)───────────────────┤│
  714.      ├──────────────────────────────────────────────┤
  715.   6  │  ├───────────reserved(00)───────────────────┤│
  716.      ├──────────────────────────────────────────────┤
  717.   7  │ ├─0─┼──0──┼──0───┼syn=1│lnk=1├─0─┼──0──┼──0─┤│
  718.      ├──────────────────────────────────────────────┤     
  719.   8- │  ├───Vendor Identification(ascII)───────────┤│
  720.      │                                              │
  721.  15  │  ├─────────Adaptec bbb──────────────────────┤│
  722.      ├──────────────────────────────────────────────┤
  723.  16- │  ├────Product identification(asc11)─────────┤│
  724.      │                                              │
  725.  31  │  ├────────AHA-1540bbbbbbbb──────────────────┤│
  726.      ├──────────────────────────────────────────────┤
  727.  32- │  ├────Product Revision level(asc11)─────────┤│
  728.      │                                              │
  729.  35  │  ├──────────────────────────────────────────┤│
  730.      └──────────────────────────────────────────────┘
  731.  
  732. If the INQUIRY command is attempted against a Logical Unit that has not been 
  733. enabled as a target, byte 0 is returned as 23h, indicating that the LUN is 
  734. not installed, but would be a Processor Device if it were installed. The 
  735. remaining bytes are returned normally. 
  736.  
  737. If a length shorter than the required 36 bytes is specified by the INQUIRY 
  738. command, the number of bytes specified by the command is transferred. If a 
  739. length longer than 36 bytes is specified, the command will only transmit 36 
  740. bytes. 
  741.  
  742.  
  743. 8.2.3.4 SEND
  744.  
  745.  
  746.      bit 7     6     5     4     3    2    1    0
  747.  byte┌──────────────────────────────────────────────┐
  748.   0  │  ├────Send Operation code 0A)───────────────┤│
  749.      ├──────────────────────────────────────────────┤
  750.   1  │  ├LUN(unused=00)─┤├──reserved(00)───────────┤│
  751.      ├──────────────────────────────────────────────┤     
  752.   2  │  ├──────Transfer lenth(msb)─────────────────┤│
  753.      ├──────────────────────────────────────────────┤     
  754.   3  │  ├──────Transfer lenth──────────────────────┤│
  755.      ├──────────────────────────────────────────────┤
  756.   4  │  ├──────Transfer lenth(lsb)─────────────────┤│
  757.      ├──────────────────────────────────────────────┤     
  758.   5  │  ├───────────reserved(00)─────────├flag┤├link┤
  759.      └──────────────────────────────────────────────┘
  760.  
  761. The SEND command has the format specified by the SCSI standard. 
  762.  
  763. The SEND command transfers data from the initiator to the target. The 
  764. information is placed in the area specified by the appropriate CCB. If an 
  765. appropriate CCB has not already been provided to the host adapter by the 
  766. host software, an MBI entry requesting the appropriate CCB is sent to the 
  767. host from the host adapter. In this case, the target host adapter 
  768. disconnects from the SCSI until the CCB is made available to the host 
  769. adapter through the MBO protocol. An appropriate CCB must have the same 
  770. initiator address, target LUN, and direction as is required to complete the 
  771. command. 
  772.  
  773. The transfer length  in the SEND command specifies the length in bytes of 
  774. data that is sent during the DATA OUT phase. A transfer length of zero 
  775. indicates that no data is sent.  Management of incorrect length transfers is 
  776. described in Section 8.3.2.6. 
  777.  
  778. The CDB information is included in the returned CCB so that the receiving 
  779. host programming can determine whether or not the information transmitted by 
  780. the SEND command was application data or asynchronous event notification 
  781. data. 
  782.  
  783. 8.2.3.5 RECEIVE
  784.  
  785.      bit 7     6     5     4     3    2    1    0
  786.  byte┌──────────────────────────────────────────────┐
  787.   0  │  ├────Receive Operation code(08h)───────────┤│
  788.      ├──────────────────────────────────────────────┤
  789.   1  │  ├LUN(unused=00)─┤├──reserved(00)───────────┤│
  790.      ├──────────────────────────────────────────────┤     
  791.   2  │  ├──────Allocation lenth(msb)───────────────┤│
  792.      ├──────────────────────────────────────────────┤     
  793.   3  │  ├──────Allocation lenth────────────────────┤│
  794.      ├──────────────────────────────────────────────┤
  795.   4  │  ├──────Allocation lenth(lsb)───────────────┤│
  796.      ├──────────────────────────────────────────────┤     
  797.   5  │  ├───────────reserved(00)─────────├flag┤├link┤
  798.      └──────────────────────────────────────────────┘
  799.  
  800. The RECEIVE command has the format specified by the SCSI standard 
  801.  
  802. The RECEIVE command transfers data from the target to the initiator. The 
  803. information is taken from the area specified by the appropriate CCB. If an 
  804. appropriate CCB has not already been provided to the host adapter host 
  805. software, an MBI entry requesting the appropriate CCB is sent to the host 
  806. from the host adapter. In this case, the target host adapter disconnects 
  807. from the SCSI until the CCB is made available to the host adapter through 
  808. the MBO protocol. An appropriate CCB must have the same initiator address, 
  809. target LUN, and direction as is required to complete the command. 
  810.  
  811. The transfer length  in the RECEIVE command specifies the length in bytes of 
  812. data that is sent during the DATA IN phase. A transfer length of zero 
  813. indicates that no data is sent. Management of incorrect length transfers is 
  814. described in section 8.3.2.6. 
  815.  
  816.  
  817. 8.2.4 Incorrect Length Management for Target Mode Operation
  818.  
  819. The messages transmitted using the SEND and RECEIVE commands are normally 
  820. expected to have a length that has previously been agreed to by the 
  821. initiator system software and by the target system software. If the transfer 
  822. length specified by the command is equal to the transfer length specified by 
  823. the CCB,  normal operation takes place and no errors are posted. 
  824.  
  825. If the transfer length specified by the initiator's command is shorter than 
  826. the space defined by the target CCB, all data bytes expected and required by 
  827. the initiator will be transmitted. The target AHA-1540A/1542A will indicate 
  828. GOOD status on the SCSI at the end of the transfer. The target system's 
  829. software however must be notified that the entire area of data defined by 
  830. the CCB was not transmitted. A  Target Status of GOOD will be presented in 
  831. the returned CCB. At the same time,  the Incorrect Length Indication bit  
  832. (bit 5 of byte 2) will be set in the CCB Request Sense data area. Bytes  3 
  833. through 6 of the Request Sense data area will contain the residue in two's 
  834. complement notation of the length requested in the initiator command minus 
  835. the length of the data area defined by the CCB. In this case, the residue 
  836. will be a negative number, since the requested length was less than the area 
  837. specified by the CCB. The HA status stored in the CCB will be 12h, 
  838. indicating a Data Over/Under Run. The MBI Status Byte will be set to 04 to 
  839. indicate that the CCB was completed with an error. If the transfer length 
  840. specified by the initiator's command is longer than the space defined by the 
  841. target CCB, only those bytes contained within the CCB's data transfer area 
  842. will be transmitted. The target AHA-1540A/1542A must indicate with an error 
  843. condition to the initiator that not all the requested bytes could be 
  844. transferred. The target AHA-1540A/1542A presents a SCSI status of CHECK 
  845. CONDITION at the end of the data transfer. The Request Sense information 
  846. transmitted to the initiator as a result of an immediately following REQUEST 
  847. SENSE command indicates that an Incorrect Length Indication is present by 
  848. setting bit 5 of byte 2. Bytes 3 through 6 of the Request Sense information 
  849. transmitted to the initiator will contain the residue in two's complement 
  850. notation of the length requested in the initiator command minus the length 
  851. of the data area defined by the target CCB. In this case, the residue will 
  852. be a positive number, since the requested length was greater than the 
  853. available area. The target system's software must also be notified that the 
  854. transfer length requested by the initiator exceeded the assigned buffer 
  855. area. A Target Status of CHECK CONDITION will be presented in the returned 
  856. target CCB. A Host Status of '12'h will be returned indicating a Data 
  857. Over/Under Run. At the same time, the information that will later be posted 
  858. to the initiator by the REQUEST SENSE command will be posted to the target 
  859. system in the CCB Request Sense data area. This includes both the Incorrect 
  860. Length Indicator and the Residue. The MBI Status Byte will be set to 04 to 
  861. indicate that the CCB was completed with an error. 
  862.  
  863.  
  864. 9.1 FLOPPY DISK INTERFACE
  865.  
  866. The floppy disk controller allows the attachment of any standard IBM 
  867. compatible floppy disk drive to the AHA-1542A. The floppy disk controller is 
  868. accessed by the standard IBM compatible BIOS through the standard IBM 
  869. compatible floppy diskette program interface. The floppy disk controller 
  870. section of the host adapter is completely independent of the host adapter 
  871. function. The floppy disk controller section can be disabled by removing 
  872. jumper J13 as described in section 3.4.2. The base address and interrupt and 
  873. DMA channels can be modified by jumpers as described in section 3.4. 
  874.  
  875. A floppy disk is attached to the host adapter using a 34 pin ribbon cable 
  876. connector as specified in section 1.4. The pin out of the cable is described 
  877. here, although that is usually not necessary, since all standard floppy disk 
  878. drives have the same pin out. Some systems choose to use the same address 
  879. for all floppy disk drives and to twist the cable, pins 10-16, to switch the 
  880. address lines at the drive. 
  881.  
  882.  
  883. Signal Name       Pin      Pin      Signal Name        
  884.  
  885. Ground             1        2           -LD
  886. Ground             3        4        Reserved
  887. Ground             5        6        Reserved
  888. Ground             7        8        -INDEX
  889. Ground             9       10        MOTOR ENB DRIVE A
  890.  
  891. Ground             11      12        DRIVE SELECT B
  892. Ground             13      14        DRIVE SELECT A
  893. Ground             15      16        MOTORO ENB DRIVE B
  894. Ground             17      18        -DIRECTION
  895. Ground             19      20        -STEP
  896.  
  897. Ground             21      22        -WRITE DATA
  898. Ground             23      24        -WRITE ENABLE
  899. Ground             25      26        -TRACK 0
  900. Ground             27      28        -WRITE PROTECT
  901. Ground             29      30        -READ DATA
  902.  
  903. Ground             31      32        -HEAD SELECT
  904. Ground             33      34        -DSKCHNG
  905.  
  906.  
  907. 10.0 PROBLEM DETERMINATION
  908.  
  909.  
  910. 10.1 Self Diagnostic Capability
  911.  
  912. The AHA-1540A/1542A executes self diagnostics upon power up or after a hard 
  913. reset. These diagnostics test the CPU operation, perform a sum check on the 
  914. EPROM, and check the data transfer paths on the board. The host system has 
  915. the option of exercising more extensive diagnostics involving reads and 
  916. writes to memory. 
  917.  
  918. The red light emitting diode (LED) on the host adapter indicates the result 
  919. of the self diagnostic process.  When power is first applied to the board, 
  920. the LED turns on. If the board is operating normally, the light will soon go 
  921. off and stay off until SCSI or I/O port activity is requested by the host. 
  922. If the board is not operating correctly,  a flash code number is flashed on 
  923. the LED to indicate which test failed. The flash code number is indicated by 
  924. a series of 1 to 6 closely spaced flashes followed by a longer pause. The 
  925. flash code is repeated continuously until the board is powered off, reset, 
  926. or repaired.  The SCSI interface should be disconnected if these diagnostic 
  927. tests are being run for fault isolation purposes. At least one set of 
  928. terminators must remain installed or the LED will stay on, indicating that 
  929. the AHA-154XA is receiving an active RST signal. Continuous execution of the 
  930. diagnostics can also be forced by inserting the diagnostic jumper (pin-pair 
  931. 2 in jumper J1). The flash code and associated failure modes are indicated 
  932. in the following table. 
  933.  
  934.  
  935. TABLE OF FLASH CODES
  936.  
  937.  
  938. FLASH CODE    POSSIBLE MEANINGS OF FLASH CODE
  939.  
  940. LED           Remains On Host Adapter Control Processor 
  941.               inoperative/terminators missing or not powered. 
  942.  
  943. 1 Flash       Firmware EPROM check sum failed.
  944.  
  945. 2 Flashes     RAM test failed.
  946.  
  947. 3 Flashes     AIC-6250 SCSI protocol chip verification failed
  948.  
  949. 4 Flashes     FIFO read data path test failed.
  950.  
  951. 5 Flashes     FIF  write data path test failed.
  952.  
  953. 6 Flashes     Channel 2 test failed.
  954.  
  955. If any of these failure conditions is identified, the host computer should 
  956. be powered down, the host adapter removed, and the host adapter inspected 
  957. for physical damage. Such damage can include EPROM's that are not correctly 
  958. installed or not firmly seated, broken wires, missing or damaged components,  
  959. or conductive debris on the board. If no such physical damage is found, the 
  960. AHA-154XA should be returned for repair. 
  961.  
  962. All boards are fully tested, burned in,  cleaned, and inspected before they 
  963. are shipped. Care should be taken to keep the board in its protective 
  964. conductive wrapping until it is installed. With these simple precautions, 
  965. mechanical damage can normally be avoided. 
  966.  
  967.  
  968. 10.2 INDICATORS
  969.  
  970. The red light emitting diode (LED) on the AHA-154XA is used to provide the 
  971. fault isolation information described above. In addition, the LED indicates 
  972. when the host adapter is performing activities on the host interface and the 
  973. SCSI interface. The LED is such a useful activity indicator that a connector 
  974. is made available on the host adapter to allow the cable to an externally 
  975. visible LED to be attached. (See Section 3.3.9). 
  976.  
  977. As an activity indicator the LED is turned on from the time that an Adapter 
  978. Command is transmitted to the host adapter until the HACC interrupt is 
  979. generated to indicate that the Adapter Command is complete. In addition, the 
  980. LED will be turned on whenever SCSI bus activity is occurring. This is 
  981. roughly the same period of time that the SCSI BSY signal is present on the 
  982. SCSI bus. If the light stays on when no activity is expected to be present 
  983. on the bus, it is possible that the bus is hung, the processor has failed, 
  984. that unexpected activity is occurring, or that the SCSI cables are 
  985. incorrectly installed. If the SCSI cables are installed reversed, the host 
  986. adapter is forced in to a solid SCSI reset state which halts normal 
  987. operation. 
  988.  
  989.  
  990. 10.3 PROBLEMS DETECTED DURING OPERATION
  991.  
  992. The information in section 10.3 is not intended for routine users of the 
  993. AHA-1502A/1542A. It is intended to provide a reference for programmers 
  994. preparing device drivers, error recovery procedures, and error information 
  995. presentation programs. 
  996.  
  997. Operation of the I/O Port interface is controlled and monitored by host 
  998. system software. Two bits in the Status Port (Base + 0), described in 
  999. section 4.2.1, are provided to indicate unusual conditions in the host 
  1000. adapter. 
  1001.  
  1002. Internal Diagnostic Failure (Status Port, bit 6): This bit indicates that 
  1003. the self testing process after either a hard reset or a power on operation 
  1004. was terminated by an error condition. The error indicates that a critical 
  1005. failure was found in the AHA-154XA control circuitry or data paths.   The 
  1006. error should be presented to the host video display to indicate that 
  1007. diagnostic actions are required. The diagnostic action uses the host adapter 
  1008. diagnostic flash codes to determine if the AHA-154XA is failing. The host 
  1009. system should be powered off, then opened so that the LED can be observed. 
  1010. All SCSI cables, both external and internal, should be removed from the host 
  1011. adapter. The system should then be powered on. If the LED flashes once and 
  1012. turns off, the host adapter has passed its diagnostics and should be 
  1013. accessible again. If the LED flashes one of the error flash codes, the AHA-
  1014. 154XA  should be replaced. If the LED remains on and does not turn off, the 
  1015. host adapter is not able to begin operation at all. The host system may be 
  1016. holding the AHA-154XA in the reset state or the host adapter may have 
  1017. failed. To distinguish these two cases, the AHA-154XA should be replaced and 
  1018. the new host adapter operation should be verified. Be sure to power down the 
  1019. host system when removing or replacing the host adapter. If the diagnostics 
  1020. indicate that the AHA-154XA must be replaced, it should be sent to an 
  1021. authorized service facility for repair. 
  1022.  
  1023. Invalid Host Adapter Command (Status Port, bit 0):  This bit is set to 
  1024. indicate that a command or parameter transmitted to the host adapter was 
  1025. invalid.  This is an indication that the host software, usually an operating 
  1026. system, special application program, or device driver, has generated an 
  1027. invalid request. The responsible programming organization should be notified 
  1028. so that the invalid sequence or parameter can be corrected. 
  1029.  
  1030.  
  1031. 10.3.1 HA Status Error Indications and Corrective Actions
  1032.  
  1033. The Host Adapter Status indications, in addition to indicating several 
  1034. normal completion states, indicate three general groups of errors. One set 
  1035. describes software errors in the requests made to the host adapter. Even 
  1036. though most of these errors are caused by software design problems, the AHA-
  1037. 154XA may need to be replaced as an isolation step, since there exists a 
  1038. small chance that hardware failures in the AHA-154XA cause the appearance of 
  1039. a software error. 
  1040.  
  1041. A second set describes errors detected by the host adapter firmware in the 
  1042. host adapter hardware. The most likely failing component in this case is the 
  1043. AHA-154XA, although certain system or cable failures may generate the 
  1044. appearance of a host adapter hardware error. 
  1045.  
  1046. A third set describes the appearance of unexpected or incorrect sequences 
  1047. executed by the attached SCSI devices. In this case, the cables are the most 
  1048. likely failure point, with the peripheral device second and the AHA-154XA 
  1049. third. The host adapter status code should be returned to the host video 
  1050. display to indicate to the operator what errors have occurred and under what 
  1051. conditions the errors occurred. The following section describes those Host 
  1052. Adapter Status indications that indicate an error. 
  1053.  
  1054. NUMBER TYPE ERROR   DESCRIPTION AND CORRECTIVE ACTION
  1055.  
  1056. 11     SCSI NO      Selection Time Out: The SCSI attempted to select a 
  1057.                     device that was not installed or that did not respond to 
  1058.                     selection due to a power, parity or addressing failure. 
  1059.                     Verify correct address values set to SCSI devices. 
  1060.                     Verify that SCSI cable routing includes the required 
  1061.                     devices. Verify  SCSI cable integrity by replacement of 
  1062.                     cables. Verify that SCSI Selection Time Out value has 
  1063.                     been correctly established by Adapter Command. 
  1064.  
  1065. 12     HOST NO      Data Over Run / Under Run: Data length or direction 
  1066.                     specified by CCB did not agree with the data length 
  1067.                     actually provided by the attached peripheral device. 
  1068.                     Often a normal error or accompanied by a check condition 
  1069.                     indicating transfer truncation. Verify program requested 
  1070.                     correct length or direction. Verify peripheral provided 
  1071.                     expected data length, number of blocks, or block length. 
  1072.  
  1073. NUMBER TYPE ERROR   DESCRIPTION AND CORRECTIVE ACTION
  1074.  
  1075.  
  1076. 13     SCSI  YES    Unexpected Bus Free: The target dropped BSY without 
  1077.                     executing the proper messages first. This normally 
  1078.                     indicates that the BSY and/or other portions of the SCSI 
  1079.                     bus failed or that the target encountered such an 
  1080.                     invalid sequence that no recovery was possible. Some 
  1081.                     targets may have sense information available to qualify 
  1082.                     the error condition. Verify SCSI cable integrity. Verify 
  1083.                     SCSI cables are all properly connected. Replace SCSI 
  1084.                     cables. Replace peripheral. Replace AHA-154XA. 
  1085.  
  1086. 14     SCSI  YES    Target bus phase sequence failure:    The initiator detected 
  1087.                     an invalid phase or an invalid phase sequence. If this 
  1088.                     occurs, it is likely that the host adapter forces a SCSI 
  1089.                     reset on the bus as the first phase of the recovery 
  1090.                     process. Verify SCSI cable integrity. Verify SCSI cables 
  1091.                     are all properly connected. Replace SCSI cables. Replace 
  1092.                     peripheral. Replace AHA-154XA 
  1093.  
  1094. 15     HOST  YES    MBO Command Byte invalid:    This indicates a software 
  1095.                     failure or bug in the host's development of the MBO 
  1096.                     entry. Generally, this indication will only occur during 
  1097.                     initial debug processes of new operating systems. 
  1098.                     Replace the AHA-154XA. Replace the host computer system. 
  1099.                     Contact the software developer for design support. 
  1100.  
  1101. 16     HOST  YES    Invalid CCB Operation Code:    This indicates a software 
  1102.                     failure or bug in the host's development of the CCB. 
  1103.                     Generally, this indication will only occur during 
  1104.                     initial debug processes of new operating systems. 
  1105.                     Replace the AHA-154XA. Replace the host computer system. 
  1106.                     Contact the software developer for design support. 
  1107.  
  1108. 17     HOST  YES    Linked CCB does not have same LUN:  This indicates that 
  1109.                     the host software generated an invalid combination of 
  1110.                     link commands. Generally, this indication will only 
  1111.                     occur during initial debug processes of new operating 
  1112.                     systems. Replace the AHA-154XA. Replace the host 
  1113.                     computer system. Contact the software developer for 
  1114.                     design support. 
  1115.  
  1116. NUMBER TYPE ERROR    DESCRIPTION AND CORRECTIVE ACTION
  1117.  
  1118. 18     HOST  YES    Invalid Target Direction Parameters received from Host:  
  1119.                     This indicates that the host software generated an 
  1120.                     invalid Target Direction Parameter. Generally,  this 
  1121.                     indication will only occur during initial debug 
  1122.                     processes of new operating systems. Replace the AHA-
  1123.                     154XA. Replace the host computer system. Contact the 
  1124.                     software developer for design support. 
  1125.  
  1126. 19     HOST YES     Duplicate CCB Received in Target Mode: This indicates 
  1127.                     that the host system was not keeping correct management 
  1128.                     information for target mode operation and incorrectly 
  1129.                     generated a second CCB identical to one already active. 
  1130.                     Generally,  this indication will only occur during 
  1131.                     initial debug processes of new operating systems. 
  1132.                     Replace the AHA-154XA. Replace the host computer system. 
  1133.                     Contact the software developer for design support. 
  1134.  
  1135. 1A     HOST YES     Invalid CCB Parameter or Segment List: A segment list 
  1136.                     was presented to the host adapter with a zero length 
  1137.                     segment or invalid segment boundaries. An invalid CCB 
  1138.                     parameter was presented to the host adapter. 
  1139.                     Generally,this indication will only occur during initial 
  1140.                     debug processes of new operating systems. Replace the 
  1141.                     AHA-154XA. Replace the host computer system. Contact the 
  1142.                     software developer for design support. 
  1143.  
  1144.  
  1145. 10.3.2 SCSI Error Indications and Corrective Actions
  1146.  
  1147. Error conditions detected by SCSI peripherals usually cause a CHECK 
  1148. CONDITION Status byte to be presented. When this is presented, the host 
  1149. adapter automatically retrieves the sense information from the SCSI 
  1150. peripheral by executing a REQUEST SENSE command according to the SCSI 
  1151. standard. The information returned is mapped for single-threaded BIOS 
  1152. operation into the categories of error conditions described in section  
  1153. 5.2.2. For multitasking (mailbox) operation, the information returned is 
  1154. made available in the area allocated for Sense Data. In either case, an 
  1155. intelligent attempt is made by most operating systems to retry the operation 
  1156. at least one time. Such retry operations may require the management of 
  1157. queued operations that have already started execution. This attempt to retry 
  1158. the operation is rarely successful, since SCSI peripheral devices have very 
  1159. extensive automatic retry and correction mechanisms designed to be executed 
  1160. before the error information is returned in the first place. 
  1161.  
  1162. Since it is rare that such an operation is successful, the host software and 
  1163. operating systems should make every attempt to make available key 
  1164. information about the error which can be analyzed by the system operator or 
  1165. customer engineer. In small systems, it may be sufficient to present the 
  1166. important Sense Data together with the command that created the error. Some 
  1167. simpler systems may perform a preliminary analysis of the error information 
  1168. and generate a code or descriptive text that describes the error and 
  1169. indicates the corrective action. In very complex systems, a logging process 
  1170. may take place, allowing a customer engineer to analyze the data at some 
  1171. future time. In all systems, such information is very important for host 
  1172. program verification and for system integrity verification, even if the 
  1173. designers choose not to make the information available to any system users 
  1174. other than the design and maintenance engineers. 
  1175.  
  1176. The SCSI Sense Data is generally self descriptive. The errors can be mapped 
  1177. in to four major categories, each category with its own diagnostic 
  1178. procedure. 
  1179.  
  1180. The first category includes those errors caused by incorrect command or 
  1181. parameter bytes or by incorrect sequences of commands. These errors 
  1182. typically are presented only during the early development stages of an 
  1183. operating system or device driver, since a properly operating program will 
  1184. not generate invalid commands. 
  1185.  
  1186. The second category includes those sense codes associated with peripheral 
  1187. status presentation. Such  sense codes are not truly errors, in that they 
  1188. inform the host program of an unusual but not unexpected condition. Such 
  1189. sense codes include indications that a device is not ready, that the device 
  1190. has just become ready, that a device has reached the end of its media (End 
  1191. of Tape or Blank Check),  or that the expected data length and actual data 
  1192. length differed. These sense codes are normally used by the device driver to 
  1193. execute the correct operation in response to the condition. Such sense codes 
  1194. are not normally presented to the system user except as text that requests 
  1195. some action. As one example, an End Of Tape condition may require the system 
  1196. user to replace the tape cartridge. 
  1197.  
  1198. The third category of errors points to a particular hardware failure in the 
  1199. peripheral device or its supporting electronics. Such error conditions 
  1200. usually require the adjustment, repair, or replacement of the peripheral 
  1201. device or some of its components. In some cases, the error condition may 
  1202. also indicate possible cable or host adapter failures. These errors must be 
  1203. exposed to the system user so that the proper actions can be taken. 
  1204.  
  1205. The fourth category  of errors points to a media failure in the peripheral 
  1206. device. Such errors include bits that cannot be recovered from magnetic 
  1207. media and imperfections in the surface of optical media. Most such errors 
  1208. are recovered using the extensive retry and correction algorithms programmed 
  1209. into the peripheral device. In some peripheral device technologies, the 
  1210. errors may be caused by noise conditions or by marginal electronic failures 
  1211. in the read or write path. Those rare errors that cannot be recovered 
  1212. usually indicate that some data important to the operating system or 
  1213. application has been lost. The system must make this error information 
  1214. available to the system user so that the system user can replace the media 
  1215. or recover the data from a back up copy as required. In addition, logging of 
  1216. errors that were successfully recovered by the peripheral device is often 
  1217. useful as an indicator of the overall reliability of the device or of the 
  1218. requirement for periodic maintenance. 
  1219.  
  1220.  
  1221. 10.4 PROBLEMS DETECTED DURING INSTALLATION
  1222.  
  1223. This section may be useful to correct problems related to installation. The 
  1224. information in this section is included in the Host Adapter Installation 
  1225. Guide. 
  1226.  
  1227. If the system will not boot from the flexible diskette drive after initial 
  1228. hardware installation the following items should be checked: 
  1229.  
  1230.     AHA-1540A/1542A internal diagnostics: The LED on the AHA-1540A/1542A should 
  1231. come on briefly at  system power up. If the LED begins to blink at regular 
  1232. intervals then the host adapter has detected an internal failure and should 
  1233. be returned for repair or replacement to the place of purchase. A message 
  1234. may also be posted to the screen. 
  1235.  
  1236.     If the AHA-1540A/1542A LED and the SCSI drive LED are always on, the SCSI 
  1237. cable's pin 1 orientation has probably been reversed between the host 
  1238. adapter and the drive. See section 3.2. 
  1239.  
  1240.     Is the AHA-1540A/1542A BIOS message displayed on the screen? If not, the 
  1241. AHA-1540A/1542A BIOS is not being recognized by the system. 
  1242.  
  1243. a) Check for BIOS address conflicts between the AHA-1540A/1542A and other 
  1244.    option boards. 
  1245. b) Try a different BIOS address. See section 3.3.
  1246. c) Change the BIOS wait state jumper. See section 3.3.
  1247.  
  1248.     If the HOST ADAPTER NOT FOUND AT PORT 330H message is displayed check the 
  1249. AT port address jumper setting. Also verify that the SCSI cable is correctly 
  1250. installed. A forced SCSI reset caused by an inverted or displaced internal 
  1251. SCSI cable may cause the problem. See Section 3.3. 
  1252.  
  1253. Problems Booting the System from a SCSI drive: 
  1254.  
  1255.     Make sure that both standard hard disks are mapped out of the system by 
  1256. using the AT SETUP program. 
  1257.  
  1258.     Make sure that the SCSI boot drive address is set to SCSI ID 0:0. Check the 
  1259. drive installation manual for information about setting the SCSI ID for that 
  1260. device. The Return Installed Devices utility in the Onboard Utilities can 
  1261. also be used to determine the SCSI addresses of peripherals on the SCSI bus. 
  1262.  
  1263.     Make sure that SCSI parity is consistently enabled or disabled on all 
  1264. devices on the SCSI bus. 
  1265.  
  1266.     Verify that the host adapter and the SCSI devices are properly configured 
  1267. and installed by referencing Section 3. 
  1268.  
  1269.     Power should be cycled off and on after changing any values on a HA, Setup 
  1270. program, or SCSI device to be sure that a DOS format operation has been 
  1271. successfully completed. 
  1272.  
  1273.     Make sure that the SCSI bus is properly terminated. 
  1274.  
  1275.     Make sure that the intended boot disk has an active DOS partition and a DOS 
  1276. format. See section 3.0 and the DOS manual for more information. 
  1277.  
  1278. Problems using a SCSI drive as drive D: with a standard hard disk as drive C:
  1279.  
  1280.     Make sure that the second hard disk is mapped out of the system with the AT 
  1281. SETUP program. 
  1282.  
  1283.     Make sure that the SCSI drive to be used as drive D:  is set to SCSI ID 
  1284. 0:0. Check the drive manual for information on setting the SCSI ID for that 
  1285. device. The Return Installed Devices utility in the Onboard Utilities can 
  1286. also be used to determine the SCSI addresses of peripherals on the SCSI bus. 
  1287.  
  1288.     Make sure that SCSI parity is consistently enabled or disabled on all 
  1289. devices on the SCSI bus. 
  1290.  
  1291.     Verify that the host adapter and the SCSI devices are properly configured 
  1292. and installed by referencing Section 3. 
  1293.  
  1294.     Power should be cycled off and on after changing any values on an HA, Setup 
  1295. program or SCSI device to be sure that the new initial values are loaded. 
  1296.  
  1297.     Make sure that the SCSI bus is properly terminated. See Section 3. 
  1298.  
  1299.     Make sure that the disk has a  DOS partition and a DOS format. See section 
  1300.  
  1301. 5.0 and the system DOS manual for more information. 
  1302.  
  1303. Problems using a SCSI drive as drive D: with another SCSI drive as drive C:
  1304.  
  1305.     Make sure that both standard hard disks are mapped out of the system with 
  1306. the AT SETUP program. 
  1307.  
  1308.     Make sure that the SCSI drive to be used as drive D:  is set to SCSI ID 0:1 
  1309. or 1:0. Check the drive manual for information on setting the SCSI ID for 
  1310. that device. The Return Installed Devices utility in the Onboard Utilities 
  1311. can also be used to determine the SCSI addresses of peripherals on the SCSI 
  1312. bus. 
  1313.  
  1314.     Power should be cycled off and on after changing any values on an HA, Setup 
  1315. program or SCSI device to be sure that the new initial values are loaded. 
  1316.  
  1317.     Make sure that SCSI parity is consistently enabled or disabled on all 
  1318. devices on the SCSI bus. 
  1319.  
  1320.     Verify that the host adapter and the SCSI devices are properly configured 
  1321. and installed by referencing section 3. 
  1322.  
  1323.     Make sure that the SCSI bus is properly terminated. See section 3. 
  1324.  
  1325.     Make sure that the disk has a  DOS partition and a DOS format. See section 
  1326. 3.0 and the DOS manual for more information. 
  1327.  
  1328. System works erratically. Hangs or the host adapter can't always find the 
  1329. drives. 
  1330.  
  1331.     Check SCSI parity for consistency. 
  1332.  
  1333.     Check Termination.
  1334.  
  1335.     Check cable length and integrity.
  1336.  
  1337.     If host adapter and drive light remain on during a hang condition, make sure 
  1338. that the SCSI  drive conforms to the Common Command Set revision 4B. (CCS 
  1339. 4B) 
  1340.  
  1341.     If only the host adapter LED remains on during a hang, it is probably a host 
  1342. adapter, system interface problem. The system may not be capable of First 
  1343. Party DMA transfers. Check with the System manufacturer for information. 
  1344.  
  1345. Adapter Command-A command transmitted to the host adapter using the 
  1346. Command/Data Out Port and the Data In Port. The commands are sequenced using 
  1347. the Control Port, the Status Port, and the Interrupt Flag Port. Abbreviated 
  1348. as IOCP command. 
  1349.  
  1350. AEN-See Asynchronous Event Notification
  1351.  
  1352. AHA-AHA-1540A-Adaptec Host Adapter for connecting SCSI devices to the PC/AT 
  1353. backplane bus. The AHA-154XA is an enhancement of the AHA-1540 (see Appendix 
  1354. C) 
  1355.  
  1356. AHA-1540A-The enhanced high performance Adaptec Host Adapter for connecting 
  1357. SCSI devices to the PC/AT backplane bus. 
  1358.  
  1359. AHA-1542A-The enhanced high performance Adaptec Host Adapter for connecting 
  1360. SCSI devices and standard IBM compatible floppy disk devices to the PC/AT 
  1361. backplane bus. 
  1362.  
  1363. AHA-154XA-Either the AHA-1540A or the AHA-1542A or both. 
  1364.  
  1365. AHA-1540A/1542A-Either the AHA-1540A or the AHA-1542A or both. 
  1366.  
  1367. Asynchronous Event Notification-A process by which a target can send 
  1368. unsolicited sense information to an initiator using the SEND command in 
  1369. order to inform the initiator about the occurrence of an important unusual 
  1370. occurrence. 
  1371.  
  1372. Asynchronous Data Transfer-Data transfer performed by the SCSI interface 
  1373. involving the interlocking of a signal to the initiator (REQ) and a signal 
  1374. to the target (ACK) such that each step of the data transfer protocol must 
  1375. occur before the next step can begin. Characterized by a low data rate and 
  1376. independence of external timing constraints, including cable length and 
  1377. circuit response times. 
  1378.  
  1379. AT Bus-The Industry Standard Architecture bus. 
  1380.  
  1381. Bus Device Reset-A SCSI message that clears all activity in the target to 
  1382. which it is addressed. 
  1383.  
  1384. Byte-An 8 bit unit of data. An octet. A byte is normally the smallest 
  1385. addressable unit of a memory and the unit of transfer on the SCSI. 
  1386.  
  1387. CCB-See Command Control Block 
  1388.  
  1389. CCS-See Common Command Set 
  1390.  
  1391. CDB-See Command Descriptor Block 
  1392.  
  1393. Command Control Block-A software object prepared by the host microcomputer 
  1394. software for the host adapter to provide it all the control information it 
  1395. needs to execute a SCSI command.  Abbreviated CCB. 
  1396.  
  1397. Command Descriptor Block-A block of information passed across the SCSI bus to 
  1398. provide the command, parameter, and address information necessary for the 
  1399. target to execute the desired functions. Prepared by the host software and 
  1400. placed in the CCB to be passed to the target by the host adapter. 
  1401. Abbreviated CDB. 
  1402.  
  1403. Common Command Set-A defacto standard SCSI command set for communication with 
  1404. hard disk drives. The Common Command Set (CCS) is the basis for the SCSI-2 
  1405. command set for all types of peripheral devices. 
  1406.  
  1407. Control Microprocessor    An integrated circuit computer used to execute the 
  1408. software that controls the host adapter's operation. 
  1409.  
  1410. Device Driver-A program that is linked with or attached to an operating 
  1411. system to map the software interface of the operating system to the 
  1412. requirements of attached peripheral devices and host adapters. 
  1413.  
  1414. DMA-See Direct Memory Access
  1415.  
  1416. Direct Memory Access-A mechanism that allows hardware control of the 
  1417. transfer of streams of data to or from the main memory of a computing 
  1418. system. The mechanism may require set up the host software. After 
  1419. initialization, it automatically sequences the required data transfer and 
  1420. provides the necessary address information. 
  1421.  
  1422. EPROM-Erasable Programmable Read Only Memory.  An integrated circuit used to 
  1423. store the host adapter firmware and the host adapter BIOS. 
  1424.  
  1425. FIFO-First In / First Out.- 
  1426.  
  1427. A queueing order in which items are removed from the queue for execution in 
  1428. the same order in which they are placed in the queue. 
  1429. An integrated circuit that buffers data in such a manner that the each byte 
  1430. placed in the buffer is removed from the buffer in the same order. 
  1431.  
  1432. Firmware-The software that controls and manages the host adapter. It is 
  1433. 'firm' as opposed to 'soft' because it  is designed in to the host adapter 
  1434. and cannot be modified by the user. 
  1435.  
  1436. IBM PC/AT Compatible-Any computer system that emulates exactly the IBM PC/AT 
  1437. and that uses an ISA backplane bus. 
  1438.  
  1439. ISA-The Industry Standard Architecture
  1440.  
  1441.  
  1442. Industry Standard Architecture-The IBM PC/AT functions have been duplicated 
  1443. by a number of manufacturers. All the IBM PC/AT¬ compatible machines use a 
  1444. backplane bus that very closely emulates the function of the backplane bus 
  1445. of the PC/AT. Because of the broad usage of this bus structure, it has 
  1446. become known as the Industry Standard Architecture bus, even though there is 
  1447. no presently accepted standard for the bus. 
  1448.  
  1449. initiator-A SCSI device that requests an operation to be performed by another 
  1450. SCSI device (the target). The initiator provides all the command information 
  1451. and parameters required to perform the operation, but the details of the 
  1452. operation are actually sequenced by the target. 
  1453.  
  1454. host-A microcomputer in which a host adapter is installed. The host uses 
  1455. software to request the services of the host adapter in transferring 
  1456. information to and from peripheral devices attached to the SCSI bus 
  1457. connector of the host adapter. 
  1458.  
  1459. host adapter-A hardware printed circuit board that installs in a standard 
  1460. microcomputer backplane and provides a SCSI bus connection so that SCSI 
  1461. devices can be connected to the microcomputer. A host adapter is 
  1462. "intelligent" if it has a simple high-level software interface to the 
  1463. microcomputer. A host adapter is "dumb" if the microcomputer must directly 
  1464. manage the SCSI protocol using the microcomputer processor. 
  1465.  
  1466. Logical Unit-A physical or virtual device addressed through a target. 
  1467.  
  1468. Logical Unit Number-An encoded three-bit identifier for a logical unit. 
  1469.  
  1470. LU-See Logical Unit 
  1471.  
  1472. LUN-See Logical Unit Number 
  1473.  
  1474. Mailbox In-An area in main memory assigned by the host microcomputer software 
  1475. for communication with the host adapter. The host adapter places status and 
  1476. pointer information in entries in the Mailbox In (MBI) to indicate to the 
  1477. host microcomputer what operations have been completed or what information 
  1478. must be obtained from the host microcomputer. 
  1479.  
  1480. Mailbox Out-An area in main memory assigned by the host microcomputer 
  1481. software for communication with the host adapter. The microcomputer software 
  1482. places commands and pointer information in entries in the Mailbox Out (MBO) 
  1483. to indicate what operations should be started by the host adapter. 
  1484.  
  1485. MBI-See Mailbox In. 
  1486.  
  1487. MBO-See Mailbox Out. 
  1488.  
  1489. Multi-tasking Operation-The execution of commands in such a way that more 
  1490. than one command is in progress at the same time, allowing the system to 
  1491. take advantage of overlapping activities by using resources that are 
  1492. temporarily not required for other operations. More than one program or more 
  1493. than one portion of a program may be operating in parallel. 
  1494.  
  1495. PC/AT-A family of small computers sold by IBM, also called the Personal 
  1496. Computer /AT family of computers. The name is trademarked by IBM. 
  1497.  
  1498. RAM-Random Access Memory. Memory of which any byte can be accessed directly 
  1499. in a single memory cycle. Information can be read from and written to the 
  1500. memory. 
  1501.  
  1502. SCSI-Small Computer System Interface. 
  1503.  
  1504. SCSI ASC-SCSI Additional Sense Code. Byte 12 of the extended sense 
  1505. information. Provides a standardized description of the condition described 
  1506. by the sense information. 
  1507.  
  1508. SCSI Device-A device attached to a Small Computer System Interface bus 
  1509. cable. The device may be an initiator, a target, or capable of both types of 
  1510. operation. The device may be a peripheral device, a host device, or a device 
  1511. mixing both roles. 
  1512.  
  1513. Single Threaded Operation-Operation of the computing system such that only 
  1514. one program can be operating or active at a time. The computing system must 
  1515. wait until all resources are available before starting an operation and 
  1516. cannot start another operation until the first one is completed. No 
  1517. overlapping of latencies or program operation occurs. 
  1518.  
  1519. Synchronous Data Transfer-A method of data transfer on the SCSI bus 
  1520. involving clocking data on to the bus with a fixed-length fixed-frequency 
  1521. strobe pulses. The acknowledgements may be delayed several clock periods 
  1522. from the data requests. Synchronous Data Transfer can be used only for data 
  1523. transmission on the SCSI bus. It is prohibited for command, message, and 
  1524. status transmission. 
  1525.  
  1526. Synchronous Data Transfer Negotiation-The message exchange between the 
  1527. initiator and the target  that allows the negotiation of the data transfer 
  1528. frequency and delay between requests and acknowledgements required for 
  1529. synchronous data transfer. Once negotiated, synchronous data transfer 
  1530. parameters remain unchanged until certain reinitialization activities occur. 
  1531.  
  1532. Target-A SCSI device that performs an operation requested by an initiator. 
  1533. The target may be  a peripheral device performing a service for an 
  1534. initiator. The target may also be a host adapter performing a Processor type 
  1535. device service for an initiator. 
  1536.  
  1537. Word-A two byte (16 bit) unit of data. 
  1538.  
  1539. AHA-1540A/1542A MEMORY CYCLE TIMING
  1540.  
  1541. to see this diagram send for manual.  
  1542.  
  1543.  
  1544. STANDARD   tRR   TIMING
  1545. SPEEDS     tWW
  1546.     
  1547. 5.0 MB     250     A      tARS Address Setup to MEMR Leading Edge
  1548. 5.7 MB     200     A      tARH Address Hold from MEMR Trailing Edge
  1549. 6.7 MB     200     A      tBRS SBHE Setup to MEMR Leading Edge
  1550. 8.0 MB     150     A      tDRS Data Setup to Trailing Edge of MEMR
  1551. 10.0 MB    100     B      tDRH Data Hold from MEMR Trailing Edge
  1552.                           tRW    Read Pulsewidth
  1553.  
  1554. SPEED   TIMING A    TIMING B  tAWS Address Setup to MEMW Leading Edge
  1555.                               tAWH Address Hold from MEMW Trailing Edge
  1556. tARS    73           23       tBWS SBHE Setup to MEMW Leading Edge
  1557. tARH    55           55       tDWS Data Setup to MEMW Leading Edge
  1558. tBRS    73           23       tDWH Data Hold from MEMW Trailing Edge
  1559.                               tWW  Write Pulsewidth
  1560. tDRS    32           32
  1561. tDRH    26           26       Note: I/O Channel Ready may slow the actual 
  1562. tAWS    73           23             transfer rate
  1563.  
  1564. tAWH    55           55
  1565. tBWS    73           23
  1566. tDWS    13           13
  1567. tDWH    60           60
  1568.  
  1569. Appendix B CONNECTOR PINOUT
  1570.  
  1571. Internal Connector Pin Assignments
  1572.  
  1573. Signal Name   Pin   Pin  Signal Name        
  1574.  
  1575. Ground         1     2    -DB(0)
  1576. Ground         3     4    -DB(1)
  1577. Ground         5     6    -DB(2)
  1578. Ground         7     8    -DB(3)
  1579. Ground         9    10    -DB(4)
  1580.  
  1581. Ground        11    12    -DB(5)
  1582. Ground        13    14    -DB(6)
  1583. Ground        15    16    -DB(7)
  1584. Ground        17    18    -DB(P)
  1585. Ground        19    20    Ground
  1586.  
  1587. Ground        21    22    Ground
  1588. Ground        23    24    Ground
  1589. Open          25    26    Term Power (Fused)
  1590. Ground        27    28    Ground
  1591. Ground        29    30    Ground
  1592.  
  1593. Ground        31    32    -ATN
  1594. Ground        33    34    Ground
  1595. Ground        35    36    -BSY
  1596. Ground        37    38    -ACK
  1597. Ground        39    40    -RST
  1598.  
  1599. Ground        41    42    -MSG
  1600. Ground        43    44    -SEL
  1601. Ground        45    46    -C/D
  1602. Ground        47    48    -REQ
  1603. Ground        49    50    -I/O
  1604.  
  1605. External Connector Pin Assignments
  1606.  
  1607. Signal Name   Pin   Pin   Signal Name
  1608. Ground         1     26    -DB(0)
  1609. Ground         2     27    -DB(1)
  1610. Ground         3     28    -DB(2)
  1611. Ground         4     29    -DB(3)
  1612. Ground         5     30    -DB(4)
  1613.  
  1614. Ground         6     31    -DB(5)
  1615. Ground         7     32    -DB(6)
  1616. Ground         8     33    -DB(7)
  1617. Ground         9     34    -DB(P)
  1618. Ground        10     35    Ground
  1619.  
  1620. Ground        11     36    Ground
  1621. Ground        12     37    Ground
  1622. Open          13     38    Term Power (Fused)
  1623. Ground        14     39    Ground
  1624. Ground        15     40    Ground
  1625.  
  1626. Ground        16     41    -ATN
  1627. Ground        17     42    Ground
  1628. Ground        18     43    -BSY
  1629. Ground        19     44    -ACK
  1630. Ground        20     45    -RST
  1631.  
  1632. Ground        21     46    -MSG
  1633. Ground        22     47    -SEL
  1634. Ground        23     48    -C/D
  1635. Ground        24     49    -REQ
  1636. Ground        25     50    -I/O
  1637.  
  1638. Appendix C    AHA-1540/1640 FAMILY COMPATIBILITY INFORMATION
  1639.  
  1640. Brief summary of board characteristics:
  1641.  
  1642. AHA-1540:
  1643.  
  1644. High performance SCSI to ISA Bus Master host adapter. Most revisions support 
  1645. synchronous data transfer. Separate user's manual. Subset of AHA-154XA 
  1646. Adapter Commands available. 
  1647.  
  1648. W AHA-1542A:    
  1649.  
  1650. High performance SCSI to ISA Bus Master host adapter. Supports synchronous 
  1651. data transfer. Supports floppy disk drives. Higher level of host adapter 
  1652. integration. 
  1653.  
  1654. AHA-1542A:
  1655.  
  1656. High performance SCSI to ISA Bus Master host adapter. Supports synchronous 
  1657. data transfer. Supports floppy disk drives. Higher level of host adapter 
  1658. integration. Improved SCSI connection pattern and jumper controls. Supports 
  1659. Target Mode operation. 
  1660.  
  1661. AHA-1540A:
  1662.  
  1663. High performance SCSI to ISA Bus Master host adapter. Supports synchronous 
  1664. data transfer. Does not support floppy disk drives. Higher level of host 
  1665. adapter integration. Improved SCSI connection pattern and jumper controls. 
  1666. Supports Target Mode operation. 
  1667.  
  1668. AHA-1640:
  1669.  
  1670. Very high-performance SCSI-to-Micro Channel Bus Master host adapter. 
  1671. Supports synchronous data transfer. Does not support floppy disk drives. 
  1672. High level of host adapter integration. Supports Target Mode Operation. See 
  1673. Adaptec's AHA-1640 User's Manual for details, including POS management, 
  1674. differences in interrupt presentation, differences in reset management and 
  1675. improvements in Adapter commands. 
  1676.  
  1677. COMPATIBILITY CHART
  1678.  
  1679. Function                  1540      W1542A      1542A      1540A      1640
  1680. Floppy Disk Controller      No        Yes        Yes         No         No
  1681. Synchronous Transfer        No        Yes        Yes        Yes        Yes
  1682. Selectable DMA Speeds       No        Yes        Yes        Yes        POS
  1683. Programmable DMA Speeds    Yes        Yes        Yes        Yes        Yes
  1684. Internal SCSI Connectors Straight    Rt Angle   Rt Angle   Rt Angle   Straight
  1685. Scatter Gather              No        Yes        Yes        Yes        Yes
  1686. 64 Head BIOS              Option      Yes        Yes        Yes        Yes
  1687. 16 Head BIOS               Yes         No         No         No         No
  1688. LED Connector               No        Yes        Yes        Yes        Yes
  1689. Target Mode                 No         No        Yes        Yes        Yes
  1690. LA 17-19 Jumper            Yes        Yes         No         No         NA
  1691. Micro Channel               No         No         No         No        Yes
  1692. PC/AT                      Yes        Yes        Yes        Yes         No
  1693.  
  1694.  
  1695.