|
|
DataMuseum.dkPresents historical artifacts from the history of: CP/M |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CP/M Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 47616 (0xba00)
Types: RcTekst
Names: »99110097.WP«
└─⟦7fab0c8ae⟧ Bits:30005866/disk3.imd Dokumenter i RcTekst format (RCSL 99-1-*)
└─⟦this⟧ »99110097.WP«
╱0400274e0c0006000000000301483160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆a1┆↲
↲
╞ Edition:╞ May 1985↲
╞ Author: Peter Lundbo↲
╞ RCSL No.:╞ 991 10097↲
↲
↲
↲
↲
↲
↲
↲
↲
INTERNAL DOCUMENT↲
↲
↲
↲
↲
↲
↲
↲
Title:↲
↲
┆06┆┆84┆F641 COM 601 hardware selftest↲
user's manual↲
════════════════════════════════════════════════════════════════════════
↓
════════════════════════════════════════════════════════════════════════
↓
KEYWORDS:↲
╞ ╞ ┆84┆RC 39, XENIX, Host Communication, BSC, SDLC, CIRCUIT I, ↓
┆19┆┆89┆┄┄Hardware Selftest, COM 601.↲
↲
↲
↲
↲
↲
↲
↲
ABSTRACT:↲
╞ ╞ ┆84┆This manual documents the COM601 SBC selftest program which ↓
┆19┆┆89┆┄┄contain several programs for verifying hardware components of ↓
┆19┆┆89┆┄┄the Intelligent Communication Controller. The COM601 is an ↓
┆19┆┆89┆┄┄INTEL Multibus compatible slave controller, based upon an 8 bit ↓
┆19┆┆89┆┄┄iAPX 88 microprocessor.↲
════════════════════════════════════════════════════════════════════════
↓
╱0400274e0a00060000000003013c3160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
╱0400274e0c0006000000000301483160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
↓
╞ ╞ ╞ ╞ ╞ ╞ i↲
┆a1┆┆b0┆TABLE OF CONTENTS ┆05┆PAGE ↲
↲
1. INTRODUCTION ...................................... 1↲
1.2 Selftest Equipment ............................ 1↲
↲
2. THE DUAL CHANNEL COMMUNICATION APPROACH ........... 2↲
↲
3. INTERRUPT HANDLING ................................ 3↲
3.1 Instruction Exception ......................... 3↲
3.2 Illegal Interrupts ............................ 3↲
↲
4. BUSTEST ........................................... 6↲
↲
5. ┆b0┆┆f0┆TEST 0 = MEMORY TEST .............................. 7↲
5.1 PROM Checksum Test ............................ 7↲
5.2 RAM Memory Test ............................... 8↲
┆84┆5.2.1 Memory Test Pattern ..................... 8↲
┆84┆5.2.2 Memory Test Flow ........................ 8↲
↲
6. TEST 1 = CHIP SELECT TEST ........................ 11↲
↲
7. TEST 2 = 8255A PARALLEL PORT TEST ................ 12↲
↲
8. TEST 3 = 8254 PROGRAMMABLE INTERVAL TIMER TEST ... 13↲
↲
9. TEST 4 = 8237A DIRECT MEMORY ACCESS CONTROLLER TEST 14↲
↲
10. TEST 5 = 8274 CHANNEL A TEST ..................... 16↲
↲
11. TEST 6 = 8274 CHANNEL B TEST ..................... 18↲
11.1 Status Signal Check ......................... 18↲
11.2 V.24/X.21 Select ............................ 20↲
11.3 Loop Back Test .............................. 20↲
↲
════════════════════════════════════════════════════════════════════════
↓
┆06┆ii↲
┆b0┆┆a1┆TABLE OF CONTENTS (continued)┆05┆PAGE↲
↲
12. TEST 7 = 8273 CHANNEL C TEST ..................... 22↲
11.1 Status Signal Check ......................... 22↲
11.2 V.24/X.21 Select ............................ 24↲
11.3 Loop Back Test .............................. 24↲
↲
↲
┆a1┆┆b0┆Appendixes↲
↲
A. REFERENCES ....................................... 29↲
↲
B. LOOP BACK CABLE .................................. 30↲
↲
C. COMPLETE ERROR LIST .............................. 32↲
↲
════════════════════════════════════════════════════════════════════════
↓
┆14┆┆b3┆╞ ╞ ╞ ╞ ╞ ╞ ┆0b┆┆a1┆↲
┆a1┆┆a1┆┆b0┆┆b0┆1. INTRODUCTION↲
↲
The COM 601 is an Intelligent Communication Controller, which ↓
is an intelligent Multibus SBC used to interface mainframes ↓
or minicomputers to the RC 39 product. The communication may ↓
be the IBM BSC and the IBM SDLC protocols. The communication ↓
is synchronous and operates either onX.21 or V.24 interface ↓
circuits.↲
↲
This manual assume that the reader is familiar with the RC 39 ↓
selftest concept as described in the manual called "The RC 39 ↓
Selftest Concept". The COM 601 selftest includes 8 different ↓
tests which may be run in several modes. Five of these tests ↓
are ┆b0┆default┆f0┆ tests which allways execute after a power on. The ↓
┆19┆┄┆81┆┄last three tests are ┆b0┆extended┆b0┆┆f0┆ tests which is run only when ↓
┆19┆┄┆83┆┄requested explicit by an operator. This version of the COM ↓
┆19┆┄┆83┆┄610 SBC selftest includes no ┆b0┆seperately┆f0┆ run ┆f0┆tests.↲
↲
↲
┆a1┆┆b0┆1.2 Selftest Equipment.↲
↲
The default power on test, which is an integrated part of the ↓
system, does naturally not require any special test equipment ↓
installed.↲
↲
The ┆b0┆extended part ┆f0┆of the selftest in contrast requires a ↓
┆19┆┄┆81┆┄special loop back cable connected (see appendix A). This loop ↓
┆19┆┄┆81┆┄back cable is used by the 8273 SDLC controller test and by ↓
┆19┆┄┆81┆┄the 8274 MPSC/HDLC controller channel B test. The extended ↓
┆19┆┄┆81┆┄part of the test is only run as a result of commands given to ↓
┆19┆┄┆81┆┄the "test-host" via a connected console.These tests are used ↓
┆19┆┄┆81┆┄in the ┆a1┆┆b0┆┆e1┆burn in ┆f0┆phase by the manufacturing department or by ↓
┆19┆┄┆82┆┄technicians as part of their debugging tool.↲
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆a1┆┆b0┆┆b0┆2. THE DUAL CHANNEL COMMUNICATION APPROACH↲
↲
The COM 601 SBC selftest ┆b0┆does not┆f0┆ supports the Dual Channel ↓
┆19┆┄┆81┆┄Communication facility as described in the "RC 39 Selftest ↓
┆19┆┄┆81┆┄Concept". The reason to this is that the COM 601 is an old ↓
┆19┆┄┆81┆┄board designed without an asynchronous V.24 interface.↲
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆┆a1┆3. INTERRUPT HANDLING↲
↲
When the RC 39, COM 601, SBC selftest has finished the memory ↓
test, a set of default interrupt vectors are placed in the ↓
memory. These vectors are used to handle both expected and ↓
unexpected interrupts. There are two kind of unexpected ↓
interrupts. One is handled by the interrupt procedure for ↓
internal iAPX 8088 instruction interrupts, and the other is ↓
handled by the interrupt procedure for illegal device ↓
interrupts.↲
↲
↲
┆b0┆┆a1┆3.1 Instruction Exception.↲
↲
If an Instruction Exception interrupt occurs, it is likely to ↓
believe that this was caused by a malfunction of the iAPX ↓
8088, because this interrupt is related to some CPU ↓
instruction. If this error happens the test program writes ↓
the following message to the buffer :↲
↲
┆b0┆EXCEPTION : instruction interrupt↲
↲
↲
┆a1┆┆b0┆3.2 Illegal Interrupts.↲
↲
Once upon completion of each test program the reception of ↓
interrupts are enabeled. Only two of the interrupt request ↓
lines will be used in the selftest as legal interrupts. This ↓
is the timer0 and the timer1 interrupts, they are both real ↓
time clocks generated by the 8254 progammable interval ↓
timer.Timer 0 is connected to interrupt request IR0 amd ↓
timer1 to IR4. All the other interrupts will be decoded as ↓
illegal, and the following message are copied to the buffer :↲
↲
┆b0┆EXCEPTION : illegal interrupt level IRSR↲
↲
┆8c┆┆83┆┆b0┆↓
The level information is ┆b0┆not┆f0┆ corresponding to the interrupt ↓
┆19┆┄┆81┆┄request level. Instead "SR" is the hexadecimal content of the ↓
┆19┆┄┆81┆┄8259A interrupt controllers interrupt In Service Register ↓
┆19┆┄┆81┆┄(ISR), and "IR" is the hexadecimal content of the Interrupt ↓
┆19┆┄┆81┆┄Request Register (IRR). In both ISR and IRR interrupt request ↓
┆19┆┄┆81┆┄0 corresponds to bit 0 (least significant bit), IR7 to bit 7 ↓
┆19┆┄┆81┆┄and so on. When an interrupt is serviced thecorresponding bit ↓
┆19┆┄┆81┆┄in the ISR register should be set, and when an interrupt is ↓
┆19┆┄┆81┆┄requested the corresponding bit in the IRR registers should ↓
┆19┆┄┆81┆┄be set. If an illegal interrupt is srviced and the content of ↓
┆19┆┄┆81┆┄the ISR register is 00, indicating no interrupt in service, ↓
┆19┆┄┆81┆┄then the interrupt is a result of a spike on one of the 8 ↓
┆19┆┄┆81┆┄interrupt request lines, and ↓
════════════════════════════════════════════════════════════════════════
↓
╱0400274e0c0008000000000301483160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
╱0400274e0a00060000000003013c3160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
↓
┆a1┆Request line Interrupt name Vector type Related instructions ↲
↲
internal Divide error╞ ╞ 0 ╞ ╞ ╞ DIV, IDIV↲
↲
internal Single step╞ ╞ 1 ╞ ╞ ╞ ALL↲
↲
internal NMI╞ ╞ ╞ 2╞ ╞ ╞ ALL↲
↲
internal Breakpoint╞ 3 ╞ ╞ ╞ INT 3↲
↲
internal Owerflow┆07┆╞ 4 ╞ ╞ ╞ INT0↲
↲
internal not used╞ ╞ ╞ 5↲
↲
not used╞ ╞ 6↲
↲
not used╞ ╞ 7↲
┆a1┆ ↲
↲
↲
↲
R┆a1┆equest line Interrupt name Vector type Related interrupt level ↲
↲
IR0 timer0╞ ╞ ╞ 32 ╞ 32↲
↲
IR1 8274int╞ ╞ ╞ 33╞ ╞ ╞ 33↲
↲
IR2 8273RXint 34╞ ╞ ╞ 34↲
↲
IR3 8273TXint╞ ╞ 35╞ ╞ ╞ 35↲
↲
IR4 timer1 36 36↲
↲
IR5 OB flag int╞ 37╞ ╞ ╞ 37↲
↲
IR6 SBX int0 or SBX int1 38╞ ╞ ╞ 38↲
↲
IR7 EOP int 39╞ ╞ ╞ 39↲
┆a1┆ ↲
↲
↲
┆a1┆┆e1┆╞ ╞ ┆a1┆Interrupt Level Table.↲
╱0400274e0a00060000000003013c3160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
╱0400274e0c0008000000000301483160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
↓
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆4 BUSTEST.↲
↲
As a part of the initialization a simple CPU to memory ↓
bustest is made.↲
↲
The bustest uses one word in RAM-memory. This word is ↓
initialized with a zero, whereafter a one-bit is shifted ↓
from the LSB towards the MSB. For every shift, the pattern ↓
is read back and checked. Should it happen, that the pattern ↓
was not written, the program will loop countinuosly trying ↓
to read the correct pattern. This means that if the ↓
bussignals are checked by an oscilloscope and the word read ↓
is found to have bits 0 and 1 to the one level and the rest ↓
to the zero level, it must be bit 2, that contains the ↓
error.↲
↲
When the one bit has been shifted trough the entire word, ↓
this word is reinitialized to all ones and a zero-bit is ↓
shifted trough it. ↲
↲
This test is unable to produce any error-message, and is ↓
only run as a result of power on or external reset.↲
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆5. ┆b0┆Test 0 = ┆f0┆┆b0┆MEMORY TEST.↲
↲
The memory test of the RC 39, COM 601 SBC selftest consists ↓
of two parts, a PROM checksum test and a RAM memory test. ↓
The PROM checksum test is only run once at power up or ↓
external reset, whereas the RAM memory test may be run ↓
several times, if requested by the operator.↲
↲
↲
┆b0┆┆a1┆5.1 PROM Checksum Test.↲
↲
The content of the PROM are summarized bytewise and the ↓
result must be a zero. For that reason the PROM contains a ↓
compensation byte in the second byte of the PROM. Below is ↓
shown the error description that may be generated by the ↓
checksum test.↲
↲
╱0400274e0c0008000000000301503160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
╱0400274e0a00060000000003013c3160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
↓
↲
┆a1┆┆a1┆┆e1┆┆a2┆┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆┆84┆- -↲
! ERR.! LED ! INTRODUCTION ! ERROR ! AUXILLARY !↲
┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆! NO. ! NO. ! TEXT ! TEXT ! TEXT !↲
! ! ! ! ! !↲
┆a1┆! 1 ! 1 ! RAM/ROM test : ! checksum error ! exp.=0000 rec.=00XX !↲
╱0400274e0c0006000000000301483160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
╱0400274e0c0008000000000301503160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
↓
↲
↲
╱0400274e0a00060000000003013c3160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
╱0400274e0c0006000000000301483160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
↓
Error 1, checksum error, usually means that the content of ↓
the PROM has not been maintained and that the PROM must be ↓
changed.↲
↲
↲
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆5.2 RAM Memory Test.↲
↲
The RAM memory test of the RC 39, COM 601 SBC selftest ↓
verifies the on board memory.↲
↲
The RAM memory size is fixed and is 64 K-bytes.↲
↲
The memory test is a register based test and uses no memory ↓
space at all, neither for variables nor stack. The test ↓
verifies every single byte of the on-board memory.↲
↲
This fact lets only one register for test variables survive ↓
the memory test. That variable contains all the test ↓
switches and the test number. ↲
↲
↲
┆a1┆┆b0┆5.2.1 Memory Test Pattern.↲
↲
The on board Dual Ported RAM memory consists of memory chips ↓
of 1 bit * 64 K. The memory test executes 4 passes trough ↓
the entire memory, two times writing and two times reading.↲
↲
The test pattern is the convenient modulus 3 pattern ↓
consisting of three times 0000 followed by three times FFFF ↓
(hexadecimal).↲
↲
↲
┆b0┆┆a1┆5.2.2 Memory Test Flow.↲
↲
The test starts in the highest RAM addresses and inserts the ↓
pattern towards lower addresses.↲
↲
When all memory words have been written and verified, they ↓
are tested again with the inversed pattern, this means, that ↓
all bits are tested for "zero" and "one" insertion. If an ↓
error occur an attempt to send the following message, to the ↓
"test-master", is made :↲
↲
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001060b10151a1f24292e33383d4247ff04╱
╱0400274e0a00060000000003013c3160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
↓
┆8c┆┆83┆┆c8┆↓
┆84┆┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆- -↲
! ERR.! LED ! INTRODUCTION ! ERROR ! SECONDARY !↲
┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆! NO. ! NO. ! TEXT ! TEXT ! TEXT !↲
! ! ! ! ! segm.:<ssss>,adr.:<aaaa>┆07┆!↲
┆a1┆! 2 ! 2 ! RAM/ROM test : ! RAM error ! exp.:<eeee>, rec.:<rrrr> !↲
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001060b10151a1f24292e33383d4247ff04╱
↓
↲
The secondary text is interpreted like this :↲
↲
<ssss> is the segment address↲
<aaaa> is the offset address↲
<eeee> ┆84┆is the expected pattern, should allways be 0000 or ↓
┆19┆┆87┆┄┄FFFF.↲
<rrrr> is the received pattern.↲
↲
The above mentioned information may be used to find a ↓
defective RAM memory chip from the knowledge of the RAM-↓
layout. Say the error message goes like this :↲
↲
╱0400274e0c00060000000003014b316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
┆b0┆RAM/ROM test : RAM error segm.:0000, addr.:0002, exp.:0000, rec.:0101↲
↲
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0c00060000000003014b316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
Allthough the memory test is based on 16 bit word ↓
manipulation, the memory is organized bytewise, bit 0 and 8 ↓
is stored in chip U 200, bit 1 and 9 in U201 and so on. The ↓
above error might indicate that chip U 200 is defect.↲
↲
NOTE that the error message routines are based on RAM memory ↓
buffers, therefore some peculiar situation may occur during ↓
RAM faults. ↲
↲
The error message is always written to the light emitting ↓
diodes, this means that if the message communication fails, ↓
there is still written a led error code = 2 to the leds. ↓
This means that led number 2 from the right will be lit, and ↓
the 3 others blank when a RAM error occur.↲
↲
════════════════════════════════════════════════════════════════════════
↓
When the RAM error message passing goes wrong, there is a ↓
possibility to force the RAM test to loop on error. This is ↓
done by strapping W11 low. Then the RAM test will try again ↓
and again to read from the first erronous cell is finds. If ↓
the pattern sometime happens to be correct the test will ↓
proceed further trough the test, and if the RAM is OK, the ↓
test will enter the testadministrator when it terminates. ↲
↲
Upon succesful completion of the RAM test, the ↓
testadministrator always takes over and controls the flow of ↓
the rest of the test.↲
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆6. ┆b0┆TEST 1 = ┆f0┆┆b0┆CHIP SELECT TEST↲
↲
To ease complex debugging, a simple chip select loop, ↓
combined with a RAM write/read, is supplied. ↲
↲
This test generates chip selects to all peripheral devices ↓
by executing input instructions to all relevant I/O-devices. ↓
These are :↲
↲
Port A0H, E1H, 90H, 80H, D0H, F0H, C0H , B0H↲
↲
When all the chip selects are made, a pattern AA55 hex. is ↓
written to a RAM cell and immediately read back.↲
↲
This test is unable to generate any error messages. It is ↓
meant only as a special fast scope loop test.↲
↲
There are several ways to make this test loop. One is to set ↓
the loop-bit = "Y" and the test number to 1, then the test ↓
will loop and write OK to the console whenever the test has ↓
finished. In this case the console output increases the loop ↓
time significantly. The console output routine may be ↓
suppressed by setting the suppress data check = "Y" and the ↓
suppress status check = "Y". Note that now there is only one ↓
way back to the console output, to press RESET. This loop ↓
runs even faster if you strap W11 low. Note that this is the ↓
same strap that causes the RAM test to loop on error.↲
════════════════════════════════════════════════════════════════════════
↓
┆a2┆┆e2┆┆a1┆┆b0┆7.┆b0┆ TEST 2 =┆f0┆ ┆b0┆8255A PARALLEL PORT TEST↲
↲
The 8255A PPI test writes a pattern 10100000 binary to the ↓
output port B ( ioadr. A1H ). Then it reads the pattern back ↓
and verifies it. If no error is detected the pattern is ↓
shifted one bit to the right, and the write/read verify ↓
procedure is repeated until the pattern becomes zero. If an ↓
error is detected this message is written to the ↓
communication buffer :↲
↲
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
┆e1┆┆a2┆┆b0┆┆e2┆┆b0┆┆84┆┆a2┆┆e2┆┆a1┆┆f0┆- -↲
! ERR.! LED ! INTRODUCTION ! ERROR ! SECONDARY !↲
┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆! NO. ! NO. ! TEXT ! TEXT ! TEXT !↲
! ! ! ! ! !↲
┆a1┆! 3 ! 3 ! PPI test : ! port error ! exp.:00ee, rec.:00rr !↲
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
↲
Expected and received pattern tells you what bits went wrong ↓
with the test.↲
↲
This error might be caused by malfunction of the 8255A chip, ↓
by an initialization fault (I/O space error ), or by ↓
something else. ↓
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆8. ┆b0┆TEST 3 =┆f0┆ ┆b0┆8254 PROGRAMMABLE INTERVAL TIMER TEST↲
↲
The 8254 timer test verifies that both the real time timers ↓
generated interrupts. This means that both the 8254 timer ↓
chip and the timer interrupt request IR0 and IR4 on the ↓
8259A interrupt controller is checked. The test may produce ↓
the following error text.↲
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
↲
┆84┆┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆- -↲
! ERR.! LED ! INTRODUCTION ! ERROR ! AUXILLARY !↲
┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆! NO. ! NO. ! TEXT ! TEXT ! TEXT !↲
! ! ! ! both interrupts ! !↲
┆a1┆! 4 ! 4 ! PIT test: ! missing ! !↲
! ! ! ! one interrupt ! !↲
┆a2┆┆e2┆┆a1┆! 5 ! 5 ! PIT test: ! missing ! !↲
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆9. ┆b0┆TEST 4 =┆f0┆┆b0┆ 8237A DIRECT MEMORY ACCESS CONTROLLER TEST↲
↲
The 8237A DMA test is the last test that is run by default, ↓
the rest of the tests are ┆b0┆extended tests ┆f0┆and are only run ↓
┆19┆┄┆81┆┄when requested explicit by a test person. ↲
↲
The DMA test performs a memory to memory data transport ↓
between channel 0 and channel 1. An 8 K-byte buffer ↓
initialized with a counting pattern is transferred to ↓
another buffer, which is cleared before the transfer begins. ↓
The test also verifies the DMA terminal count interrupt, ↓
which must occur on the 8259A interrupt controller IR7. If ↓
the DMA transport, when started, dont sets the terminal ↓
count bit high within 100 milliseconds, the routine ↓
generates a timeout message. The terminal count bit is also ↓
checked not to be set high before the transport is started. ↲
↲
If the DMA transport turns out to be successful, and the ↓
terminal count interrupt has been serviced, then the receive ↓
buffer is compared with the transmit buffer, and if not ↓
equal an error message is issued, otherwise the DMA chip is ↓
said to be OK.↲
↲
If the memory size is 192 K-bytes, the DMA transfer is made ↓
in 3 passes. One in each 64 K-byte segment. Note that 8255A ↓
portc bit 4 and 5 is used to select the DMA transfer page. ↓
The DMA test may produce the following error messages.↲
↲
════════════════════════════════════════════════════════════════════════
↓
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
┆84┆┆e2┆┆e2┆┆e2┆┆a1┆┆e1┆┆a2┆┆a1┆┆f0┆┆e1┆┆e2┆┆e2┆┆a1┆- -↲
! ERR.! LED ! INTRODUCTION ! ERROR ! AUXILLARY !↲
┆e2┆┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆! NO. ! NO. ! TEXT ! TEXT ! TEXT !↲
! ! ! ! ! !↲
┆a1┆! 8 ! 8 ! DMA test: ! TC before start ! !↲
! ! ! ! ! !↲
┆a2┆┆e2┆┆a1┆! 9 ! 9 ! DMA test: ! timeout ! exp.:<0000>, rec.:<rrrr> !↲
! ! ! ! ! segm.:<ssss>, adr.:<aaaa>!↲
┆a1┆! 10 ! 10 ! DMA test: ! data error ! exp.:<eeee>, rec.:<rrrr> !↲
! ! ! ! ! !↲
┆a1┆! 11 ! 11 ! DMA test: ! missing interrupt ! level.:0007 !↲
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
↲
Error message 9, timeout, writes the DMA count value as ↓
auxillary data. The initial count value is 1FBA hex. (8 K-↓
bytes), and the expected count is zero, when all transfers ↓
have been made. ↲
↲
Note that the other DMA channels are not tested by this ↓
routine, the are tested by the controllers, to whom they are ↓
dedicated.↲
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆10. ┆b0┆TEST 5 =┆f0┆ ┆f0┆┆b0┆8274 CHANNEL A TEST↲
↲
The rest of the tests are ┆b0┆extended tests ┆f0┆and are only run ↓
┆19┆┄┆81┆┄when requested explicit by a test person. NOTE that it may ↓
┆19┆┄┆81┆┄disturb seriel lines seriously if the communication line ↓
┆19┆┄┆81┆┄tests are started when the lines are connected to MODEMS. ↓
┆19┆┄┆81┆┄The circuit line must be open, and a loop back cable must be ↓
┆19┆┄┆81┆┄connected to J3 and J4. See appendix A.↲
↲
The 8274 chA implements the RC-circuit communication line. ↓
This test must be executed with an open J2 connector, or ↓
with the connected terminals shut off, otherwise some ↓
terminal migth disturb the line.↲
↲
The 8274 chA RC-circuit test perform a serial transport of ↓
an 8 K-byte buffer with a counting pattern to a receive ↓
buffer, which is cleared before the transport takes place.↲
↲
The 8274 chA is initialized to SDLC mode, with DMA receive, ↓
and polled data transmit. When the chip has completed a ↓
transfer it also generates an end of message interrupt. The ↓
test naturally verifies if this interrupt really is serviced ↓
or not.↲
↲
A timeout message is generated if the transmit buffer never ↓
gets empty during the polled transmission. ↲
↲
When all characters have been send, and the interrupt also ↓
has been serviced, then the transmit and receive buffers are ↓
compared. If an error is detected, an error message is ↓
written to the "test-master", otherwise the RC-circuit ↓
channel is said to be OK. Below is a list of all possible ↓
error messages generated by this test :↲
↲
════════════════════════════════════════════════════════════════════════
↓
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
┆e2┆┆e1┆┆f0┆┆e2┆┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆┆84┆- -↲
! ERR.! LED ! INTRODUCTION ! ERROR ! SECONDARY !↲
┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆! NO. ! NO. ! TEXT ! TEXT ! TEXT !↲
! ! ! ! ! segm.:<ssss>, adr.:<aaaa>!↲
┆a1┆! 20 ! 20 ! 8274 chA test: ! data error ! exp.:<eeee>, rec.:<rrrr> !↲
! ! ! ! ! !↲
┆a2┆┆e2┆┆a1┆! 21 ! 21 ! 8274 chA test: ! timeout ! !↲
! ! ! ! ! !↲
┆a1┆! 22 ! 22 ! 8274 chA test: ! transfer error ! rec.:<rrrr> !↲
! ! ! ! ! !↲
┆a1┆! 23 ! 23 ! 8274 chA test: ! missing interrupt ! !↲
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
↲
The test is run at full speed, 250 K baud.↓
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆11. ┆b0┆TEST 6 =┆f0┆ ┆b0┆8274 CHANNEL B TEST↲
↲
The 8274 chB implements the BSC communication line. This ↓
test must be executed with a loopback cable connected. See ↓
appendix A.↲
↲
↲
┆b0┆┆a1┆11.1 Status Signals Check.↲
↲
Before any serial data transport is started, the V.24 ↓
interface status signals as well as the X.21 status signals ↓
are checked. The status signals are connected like this : ↲
┆82┆┆82┆↲
┆a1┆┆b0┆V.24 Status Signals.↲
↲
Request To Send, RTSb --->┆84┆┆84┆-┆84┆↓
┆81┆↲
Clear To Send, CTSb ---<-↓
↲
Data Set Ready, DSRb ---<-↓
↲
↲
Data Terminal Ready, DTRB --->-↓
↲
Data Carrier Detect, DCDB ---<-↓
↲
Calling Indicator, CIB ---<-↓
↲
↲
════════════════════════════════════════════════════════════════════════
↓
┆81┆ ┆a1┆┆b0┆X.21 Status Signals.↲
↲
Control (A), C(A)B -->-↓
↲
Indication (A), I(A)B --<- ↓
↲
Control (B), C(B)B -->- ↓
↲
Indication (B), I(B)B --<-↓
↲
A status error during V.24 test might look like this :↲
↲
┆b0┆8274 chB test: V24 status error rec.: 0001 exp.: 0000↲
↲
Only the three least significant bits are used, and must be ↓
interpreted like this :↲
↲
Bit 0 = -,DSRB ; Bit 1 = -,CIB ; Bit 2 = -,CTSB↲
↲
The message above indicates that something is wrong with the ↓
V.24 Data Set Ready status signal, which is toggled by the ↓
Request To Send signal by the test program.↲
↲
A status error during the X.21 test allways looks like this:↲
↲
┆b0┆8274 chB test: X21 Control-Indication error↲
↲
This message indicates that something is wrong with the X.21 ↓
status signal I = Clear To Send, which is controlled by the ↓
signal called C = Data Terminal Ready.↲
↲
↲
════════════════════════════════════════════════════════════════════════
↓
┆b0┆┆a1┆11.2 V.24/X.21 Select.↲
↲
Selection of V.24/-,X.21 mode is done from the 8273 SDLC ↓
controller via the loopback cable, see below.↲
↲
┆a1┆ J3. ┆e1┆ ┆84┆┆a1┆ J4. ↲
↲
-,X.21B ---<----------- ---<- RTSC↲
↲
The diode and the resistor prevents negative voltage on the ↓
-,X.21 pin.↲
↲
NOTE that the 8273 chip may desturb the 8274 chB test ↓
seriously if the V.24/X.21 selection logic fails.↲
↲
↲
┆a1┆┆b0┆11.3 Loop Back Test.↲
↲
The 8274 chB BSC test perform a serial data transport of an ↓
8 K-byte buffer initialized with a counting pattern to a ↓
receive buffer, which is cleared before the transport takes ↓
place. First the transport is made trough the V.24 ↓
interface, and then repeated trough the X.21 interface ↓
circuits.↲
↲
The 8274 chB is initialized to SDLC mode, with polled data ↓
transmit, and interrupt controlled data receive. ↲
↲
If the transmit buffer internal to the 8274 chip never gets ↓
empty during polled transmit, a timeout error message is ↓
generated.↲
↲
If none interrupts from the 8274 chip is serviced, a missing ↓
interrupt message is generated.↲
↲
════════════════════════════════════════════════════════════════════════
↓
When all data has been sent, and also the interrupts has ↓
been serviced, the test program compares the transmit and ↓
the receive buffer. If an error is detected a data error ↓
message is reported to the "test-master", otherwise the BSC ↓
channel is said to be OK.↲
↲
Below is a complete list of possible error messages ↓
generated by this test.↲
↲
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
┆a1┆-┆e2┆┆e1┆┆f0┆┆e2┆┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆ -↲
! ERR.! LED ! INTRODUCTION ! ERROR ! SECONDARY !↲
┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆! NO. ! NO. ! TEXT ! TEXT ! TEXT╞ !↲
! ! ! ! ! segm.:<ssss>, adr.:<aaaa>!↲
┆a1┆! 24 ! 24 ! 8274 chB test: ! data error ! exp.:<eeee>, rec.:<rrrr> !↲
! ! ! ! ! !↲
┆a2┆┆e2┆┆a1┆! 25 ! 25 ! 8274 chB test: ! timeout ! !↲
! ! ! ! ! !↲
┆a1┆! 26 ! 26 ! 8274 chB test: ! transfer error ! rec.:<rrrr> !↲
! ! ! ! ! !↲
┆a1┆! 27 ! 27 ! 8274 chB test: ! missing interrupt ! !↲
! ! ! ! ! !↲
┆a1┆! 28 ! 28 ! 8274 chB test: ! V.24 status error ! exp.:<000e>, rec.:<000r> !↲
! ! ! ! X.21 Control- ! !↲
┆a1┆! 29 ! 29 ! 8274 chB test: ! Indication-error ! !↲
! ! ! ! X.21 dial error !╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
┆a1┆! 30 ! 30 ! 8274 chB test: ! circuit failure ! !↲
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
↲
The test is run at a baud rate of 64 Kb/s.↲
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆12. ┆b0┆TEST 7 =┆f0┆┆b0┆ 8273 CHANNEL C TEST↲
↲
The 8273 chC implements the SDLC communication line. This ↓
test must be executed with a loop back cable connected. See ↓
appendix A.↲
↲
↲
┆a1┆┆b0┆12.1 Status Signal Check.↲
↲
Before any serial data transport is started, the V.24 ↓
interface status signals as well as the X.21 status signals ↓
are checked. The status signals are connected like this : ↲
┆82┆┆82┆↲
┆a1┆┆b0┆V.24 Status Signals.↲
↲
Request To Send, RTSC --->┆84┆┆84┆-┆84┆┆81┆↲
Clear To Send, CTSC ---<-↲
Data Set Ready, DSRC ---<-↲
↲
Data Terminal Ready, DTRC --->-↲
Calling Indicator, CIC ---<-↲
↲
╱0400274e0c00060000000003014e316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
┆81┆ Data Carrier Detect, DCDC ---<---------<--- DTRB, Data Terminal Ready↲
↲
╱0400274e0a00060000000003013d316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0c00060000000003014e316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
NOTE that the DCDC signal is toggled from the 8274 chip via ↓
the loopback cable.↲
↲
┆a1┆┆b0┆X.21 Status Signals.↲
↲
Control (A), C(A)B -->-↲
Indication (A), I(A)B --<- ↲
↲
┆8c┆┆83┆┄↓
Control (B), C(B)B -->- ↲
Indication (B), I(B)B --<-↲
↲
A status error during V.24 test might look like this :↲
↲
┆b0┆8273 chC test: V.24 status error rec.:0008 exp.: 0000↲
↲
Only the four least significant bits are used, and must be ↓
interpreted like this :↲
↲
Bit 0 = -,CTSC ; Bit 1 = -;CDC ; Bit 2 = -,CICC ; ↲
Bit 3 = -,DSRC↲
↲
The message above indicates that something is wrong with the ↓
V.24 Data Set Ready status signal, which is toggled from the ↓
Request To Send signal by the test program.↲
↲
An X.21 status error may look like this :↲
↲
┆b0┆8273 chC test: X.21 status error rec.: 0003 exp.: 0002↲
↲
Only the two least significant bits are used and must be ↓
interpreted like this :↲
↲
Bit 0 = -,CTSC ; Bit 1 = -,CDC↲
↲
The message above indicates that something is wrong with the ↓
X.21 status signal I = Clear To Send, which is toggled from ↓
the Data Terminal Ready signal by the test program.↲
↲
↲
┆8c┆┆82┆┆f4┆↓
┆a1┆┆b0┆12.2 V.24/X.21 Select.↲
↲
NOTE that the V.24/-,X.21 test select is done from the 8274 ↓
MPSC controller, see below.↲
↲
┆a1┆ J4. ┆e1┆ ┆e1┆┆a1┆┆84┆ J3. ↲
↲
-,X.21C ---<---------- ----<- RTSB↲
↲
The diode and the resistor prevents negative voltage on the -↓
,X.21 pin. NOTE that the 8274 chip may desturb the 8273 chC ↓
test seriously if the V.24/-,X.21 selection logic fails.↲
↲
The 8273 chC is initialized to SDLC mode, with both DMA ↓
controlled data transmit and receive. The DMA channel 1 is ↓
dedicated as receive channel, and DMA channel 2 as transmit ↓
channel.↲
↲
↲
┆a2┆┆a1┆┆e2┆┆b0┆12.3 Loop Back Test.↲
↲
The 8273 chC SDLC test perform a serial data transport of an ↓
8 K-byte buffer initialized with a counting pattern to a ↓
receive buffer, which is cleared before the transport takes ↓
place. First the transport is made trough the V.24 interface, ↓
and then repeated trough the X.21 interface circuits.↲
↲
The 8273 SDLC controller also generates both an RX- and a TX-↓
interrupt result, when it has finished a command, or expired ↓
some unusual condition.↲
↲
════════════════════════════════════════════════════════════════════════
↓
The only valid RX-interrupt result is the generel receive ↓
result, which indicates that a valid SDLC frame has been ↓
detected, and transferred to memory by the DMA channel, ↓
hopefully.↲
↲
If an RX-interrupt result is read, and if it dont indicate ↓
transfer complete, the following error message is generated :↲
↲
┆b0┆┆b0┆8273 chC test: RX error rec.: 00rr↲
↲
The RX-interrupt result must be interpreted this way :↲
↲
Result = B7,B6,B5,B4,B3,B2,B1,B0 binary = rr hex↲
╱0400274e0c00060000000003014d316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0a00060000000003013d316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
↲
┆a2┆┆e2┆┆a1┆- -↲
┆a1┆B7 , B6 , B5 , B4 , B3 , B2 , B1 , B0 ! RX-interrupt result code !↲
D7 , D6 , D5 , 0 , 0 , 0 , 0 , 0 ! A1 match or generel receive↲
D7 , D6 , D5 , 0 , 0 , 0 , 0 , 1 ! A2 match↲
0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 ! CRC error↲
0 , 0 , 0 , 0 , 0 , 1 , 0 , 0 ! Abort detected↲
0 , 0 , 0 , 0 , 0 , 1 , 0 , 1 ! Idle detect↲
0 , 0 , 0 , 0 , 0 , 1 , 1 , 0 ! EOP detected↲
0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 ! Frame less than 32 bit↲
0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 ! DMA overrun detected↲
0 , 0 , 0 , 0 , 1 , 0 , 0 , 1 ! Memory buffer overflow↲
0 , 0 , 0 , 0 , 1 , 0 , 1 , 0 ! Carrier Detect failure↲
0 , 0 , 0 , 0 , 1 , 0 , 1 , 1 ! Receive Interrupt overrun↲
↲
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0c00060000000003014d316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
════════════════════════════════════════════════════════════════════════
↓
D7,D6 and D5 must be taken from the table below.↲
↲
┆a1┆- -↲
┆a1┆D7 , D6 , D5 ! Bits received in last byte ↲
1 , 1 , 1 ! All 8 bits received↲
0 , 0 , 0 ! D0 received↲
1 , 0 , 0 ! D1-D0 received↲
0 , 1 , 0 ! D2-D0 received↲
1 , 1 , 0 ! D3-D0 received↲
0 , 0 , 1 ! D4-D0 received↲
1 , 0 , 1 ! D5-D0 received↲
0 , 1 , 1 ! D6-D0 received↲
↲
The only allowed RX-interrupt result in this test is the E0 ↓
hex. result, which means 8 bits in last byte received and ↓
frame OK. ↲
↲
The only valid TX-interrupt result is the Frame Transmit ↓
Complete result, which indicates that transmit frame is ↓
complete. If another result is read the following error ↓
message is generated.↲
↲
┆b0┆8273 chC test: TX error rec.: 00rr↲
↲
The low order byte of the received data is significant, and ↓
must be interpreted like this :↲
↲
Result = B7,B6,B5,B4,B3,B2,B1,B0 binary = rr hex.↲
╱0400274e0c00060000000003014b316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
↲
┆a2┆┆e2┆┆a1┆┆a1┆- -↲
┆a1┆B7 , B6 , B5 , B4 , B3 , B2 , B1 , B0 ! TX-interrupt result code !↲
0 , 0 , 0 , 0 , 1 , 1 , 0 , 0 ! Early transmit interrupt↲
0 , 0 , 0 , 0 , 1 , 1 , 0 , 1 ! Frame transmit complete↲
0 , 0 , 0 , 0 , 1 , 1 , 1 , 0 ! DMA underrun↲
0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 ! Clear To Send (CTS) error↲
0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 ! Abort complete↲
↲
════════════════════════════════════════════════════════════════════════
↓
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0c00060000000003014b316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
The only valid TX-interrupt result in this program is D0 ↓
hex., the rest are treated like errors.↲
↲
If none interrupts from the 8273 controller is serviced, a ↓
missing interrupt message is generated.↲
↲
When commands are written to, or parameters read from the ↓
8273 SDLC controller, the program must wait until parameters ↓
are valid, or until the controller is ready to accept ↓
commands. If the controller dont get ready to accept a ↓
command, or deliver some parameters, in a reasonable time, ↓
the following error massage is generated :↲
↲
┆b0┆8273 chC test: command timeout↲
↲
When all data has been sent, and also the interrupts has ↓
been serviced, then the test program compares the transmit ↓
and the receive buffer. If an error is detected a data error ↓
message is reported to the "test-master", otherwise the SDLC ↓
channel is said to be OK.↲
↲
Below is a complete list of possible error messages ↓
generated by this test.↲
↲
════════════════════════════════════════════════════════════════════════
↓
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
┆e2┆┆e2┆┆e1┆┆f0┆┆e2┆┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆- -↲
! ERR.! LED ! INTRODUCTION ! ERROR ! SECONDARY !↲
┆a1┆┆e1┆┆a2┆┆e2┆┆a1┆! NO. ! NO. ! TEXT ! TEXT ! TEXT !↲
! ! ! ! ! !↲
┆a1┆! 12 ! 12 ! 8273 chC test: ! command timeout ! !↲
! ! ! ! ! !↲
┆a2┆┆e2┆┆a1┆! 13 ! 13 ! 8273 chC test: ! transfer timeout ! !↲
! ! ! ! ! !↲
┆a1┆! 14 ! 14 ! 8273 chC test: ! RX error ! rec.:<00rr> !↲
! ! ! ! ! !↲
┆a1┆! 15 ! 15 ! 8273 chC test: ! TX error ! rec.:<00rr> !↲
! ! ! ! ! !↲
┆a1┆! 16 ! 16 ! 8273 chC test: ! V.24 status error ! exp.:<000e>, rec.:<000r> !↲
! ! ! ! ! !↲
┆a1┆! 17 ! 17 ! 8273 chC test: ! X.21 status error ! exp.:<000e>, rec.:<000r> !↲
! ! ! ! ! !↲
┆a2┆┆e2┆┆a1┆! 18 ! 18 ! 8273 chC test: ! missing interrupt ! rec.:<00rr> !↲
! ! ! ! ! adr.:<aaaa>, rec.:<rrrr> !↲
┆a1┆! 19 ! 19 ! 8273 chC test: ! data error ! exp.:<eeee> !↲
! ! ! ! X.21 dial error ! !↲
┆a1┆! 31 ! 31 ! 8273 chC test: ! circuit failure ! !↲
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0c000800000000030150316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
↲
The test is run at a baud rate of 64 Kb/s.↲
════════════════════════════════════════════════════════════════════════
↓
┆a2┆┆e2┆┆a1┆┆a1┆┆b0┆┆b0┆A. REFERENCES↲
↲
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
RCSL. 991 10092↲
RC 39 Selftest Concept, ↲
User's manual ╞ ╞ ↲
↲
RCSL. 991 10096↲
RC 3931 ETC611 hardware selftest, ↲
User's manual ↲
↲
RCSL. 991 10095↲
ITC 602 hardware selftest, ↲
User's manual ╞ ↲
↲
RCSL. 991 10094↲
RC3902 CPU 691 hardware selftest, ↲
User's manual ↲
↲
RCSL. 991 10134↲
RC39 monitor 8086 version, ↲
Reference manual╞ ↲
↲
RCSL. 991 10093↲
RC39 monitor 80286 version, ↲
Reference manual ↲
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆B. ┆b0┆LOOP BACK CABLE↲
↲
Both the 8274 channel B and the 8273 test relies on the fact ↓
that a loop back cable is connected to the COM 601 edge ↓
connectors J3 and J4. On the next page you will find diagram ↓
and part number of the loop back cable.↲
╱0400274e0c0007000000000301503160000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464bff04╱
╱0400274e0a00060000000003013c316000000000000000000000000000000000000000000000000001050a0f14191e23282d32373c4146ff04╱
↓
════════════════════════════════════════════════════════════════════════
↓
┆a1┆ J3 pin pin J4 ↲
↲
RTSB 7 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 7 RTSC↲
CTSB 9 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 9 CTSC↲
DSRB 11 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 11 DSRC↲
↲
TXDB╞ ╞ ╞ 3 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 3 TXDC↲
RXDB╞ ╞ ╞ 5 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 5 RXDC↲
↲
DTRB╞ ╞ ╞ 14 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 14 DTRC↲
DCDB╞ ╞ ╞ 15 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 15 DCDC↲
CIB╞ ╞ ╞ ╞ 18 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 18 CIC↲
↲
GND╞ ╞ ╞ ╞ 13 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 13 GND↲
↲
R(A)B ╞ ╞ ╞ 16 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 16 R(A)C↲
T(A)B╞ ╞ ╞ 17 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 17 T(A)C↲
↲
R(B)B╞ ╞ ╞ 12 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 12 R(B)C↲
T(B)B ╞ ╞ ╞ 23 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 23 T(B)C↲
↲
C(A)B╞ ╞ ╞ 24 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 24 C(A)C↲
I(A)B╞ ╞ ╞ 19 -╞ ╞ ╞ ╞ ╞ ╞ -╞ 19 I(A)C↲
↲
C(B)B╞ ╞ ╞ 2 -╞ ╞ ╞ ╞ ╞ ╞ - 2 C(B)C↲
I(B)B╞ ╞ ╞ 22 -╞ ╞ ╞ ╞ ╞ ╞ - 22 I(B)C↲
↲
S(A)B╞ ╞ ╞ 10 -╞ ╞ ╞ ╞ ╞ ╞ - 10 S(A)C↲
S(B)B╞ ╞ ╞ 6 -╞ ╞ ╞ ╞ ╞ ╞ - 6 S(B)C↲
X.21 TEST CLK. B╞ 20 -╞ ╞ ╞ ╞ ╞ ╞ - 20 X.21 TEST CLK. C↲
↲
V.24 TEST CLK. B╞ 25 -╞ ╞ ╞ ╞ ╞ ╞ - 25 V.24 TEST CLK. C↲
REC. CLK. B╞ ╞ 8 -╞ ╞ ╞ ╞ ╞ ╞ - 8 REC. CLK. C ↲
TRANS. CLK. B╞ ╞ 4 -╞ ╞ ╞ ╞ ╞ ╞ - 4 TRANS. CLK. C↲
↲
X.21 SEL. B 21 -╞ ╞ ╞ ╞ ╞ ╞ - 21 X.21 SEL. C↲
↲
┆b0┆part number : KBL 609↲
↲
╞ ╞ ╞ ╞ ┆a1┆COM 601 Card edge loop back cable. ↲
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆a1┆┆a1┆┆b0┆C. COMPLETE ERROR LIST↲
↲
!-----------------------------------------------------------------------------!↲
! Err. No !╞ ╞ ╞ ╞ Error Text╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
! 0 ! OK╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
No error detected.↲
↲
!-----------------------------------------------------------------------------!↲
! 1 ! RAM/ROM test : checksum error╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The calculated EPROM checksum was not zero.↲
↲
!-----------------------------------------------------------------------------!↲
! 2╞ ! RAM/ROM test : RAM error╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The RAM-test did not read back the same pattern as written.↲
↲
!-----------------------------------------------------------------------------!↲
! 3 ! PPI test: port error╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The parallel port test did not read back the same pattern as written.↲
↲
!-----------------------------------------------------------------------------!↲
! 4 ! PIT test: both interrupts missing ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
Both 8254 timer interrupts were either not generated or serviced.↲
↲
!-----------------------------------------------------------------------------!↲
! 5 ! PIT test: one interrupt missing╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
One of the 8254 timer interrupts was not generated or serviced.↲
↲
════════════════════════════════════════════════════════════════════════
↓
!-----------------------------------------------------------------------------!↲
! 8 ! DMA test: TC before start╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The 8237A DMA chip indicates Terminal Count reached before any transport is ↲
started.↲
↲
!-----------------------------------------------------------------------------!↲
! 9 ! DMA test: timeout╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The DMA transport has not finished within app. 100 milliseconds.↲
↲
!-----------------------------------------------------------------------------;↲
! 10 ! DMA test: data error╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The DMA data transport has finished, but the received data is different from ↲
the data sent.↲
↲
!-----------------------------------------------------------------------------!↲
! 11 ! DMA test: missing interrupt╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
No DMA Terminal Count interrupt generated or serviced.↲
↲
!-----------------------------------------------------------------------------!↲
! 12 ! 8273 chC test: command timeout╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The 8273 SDLC controller chip did not accept the command issued.↲
↲
!-----------------------------------------------------------------------------!↲
! 13 ! 8273 chC test: transfer timeout╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The serial data transport (DMA controlled) did not complete within 2.5 seconds.↲
↲
!-----------------------------------------------------------------------------!↲
! 14 ! 8273 chC test: RX error╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The RX-interrupt result was not a general frame received result as expected.↲
↲
!-----------------------------------------------------------------------------!↲
┆8c┆┆83┆┆c2┆↓
! 15 ! 8273 chC test: TX error╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The TX-interrupt result was not a frame transmit completed result as expected.↲
↲
!-----------------------------------------------------------------------------!↲
! 16 ! 8273 chC test: V.24 status error╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The V.24 status signals, which is toggled via the loop back cable, fails.↲
↲
!-----------------------------------------------------------------------------!↲
! 17 ! 8273 chC test: X.21 status error╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The X.21 status signals, which is toggled via the loop back cable, fails.↲
↲
!-----------------------------------------------------------------------------!↲
! 18 ! 8273 chC test: missing interrupt╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
RX-interrupt or TX-interrupt or both are missing.↲
↲
!-----------------------------------------------------------------------------!↲
! 19 ! 8273 chC test: data error╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The data transmitted via the loop back cable in full duplex mode was not recei-↲
ved properly.↲
↲
!-----------------------------------------------------------------------------!↲
! 20 ! 8274 chA test: data error╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The data transmitted in full duplex mode was not received properly.↲
↲
!-----------------------------------------------------------------------------!↲
! 21 ! 8274 chA test: timeout╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
════════════════════════════════════════════════════════════════════════
↓
The 8274 HDLC/MPSC chip did not get ready for data within app. 5 milliseconds (↲
polled transmit).↲
↲
!-----------------------------------------------------------------------------!↲
! 22 ! 8274 chA test: transfer error ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
Illegal interrupt condition has arised during the data transfer.↲
↲
!-----------------------------------------------------------------------------!↲
! 23 ! 8274 chA test: missing interrupt╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
No 8274 HDLC/MPSC chip interrupt was generated or serviced.↲
↲
!-----------------------------------------------------------------------------!↲
! 24 ! 8274 chB test: data error╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The data transmitted via the loop back cable in full duplex mode was not ↓
received properly.↲
↲
!-----------------------------------------------------------------------------!↲
! 25 ! 8274 chB test: timeout╞ ╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The 8274 HDLC/MPSC chip did not get ready for data within app. 5 milliseconds (↲
polled transmit).↲
↲
!-----------------------------------------------------------------------------!↲
! 26 ! 8274 chB test: transfer error╞ ╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
Illegal interrupt condition has arised during the data transfer.↲
↲
!-----------------------------------------------------------------------------!↲
! 27 ! 8274 chB test: missing interrupt╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
No 8274 HDLC/MPSC chip interrupt was generated or serviced.↲
↲
!-----------------------------------------------------------------------------!↲
! 28 ! 8274 chB test: V.24 status error╞ ╞ ╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
════════════════════════════════════════════════════════════════════════
↓
The V.24 status signals, which is toggled via the loop back cable, fails.↲
↲
!-----------------------------------------------------------------------------!↲
! 29 ! 8274 chB test: X.21 Control-Indication error╞ ╞ ╞ ╞ !↲
!-----------------------------------------------------------------------------!↲
↲
The X.21 status signals, which is toggled via the loop back cable, fails.↲
┆1a┆┆1a┆---------!↲
!