!!!!    6    0    1  990118921  V0d38                                         

! Device           : 36000
! Function         : rom 8k x 8
! revision         : B.01.00
! safeguard        : med_out_mos
! Modifications    : Modified for AwareTest xi
!
  warning           "This library has not been verified with hardware."

sequential

! warning "Pull-ups are required to test high-impedance outputs."

vector cycle 1000n
receive delay 900n

assign    VCC       to pins   24
assign    GND       to pins   12

assign    Address   to pins   21,18,19,22,23,1,2
assign    Address   to pins   3,4,5,6,7,8

assign    Output    to pins   17,16,15,14,13,11,10,9
assign    Data_D0   to pins   9    !AT Added for minimum pin test.
assign    Data_D1   to pins   10   !AT Added for minimum pin test.
assign    Data_D2   to pins   11   !AT Added for minimum pin test.
assign    Data_D3   to pins   13   !AT Added for minimum pin test.
assign    Data_D4   to pins   14   !AT Added for minimum pin test.
assign    Data_D5   to pins   15   !AT Added for minimum pin test.
assign    Data_D6   to pins   16   !AT Added for minimum pin test.
assign    Data_D7   to pins   17   !AT Added for minimum pin test.

assign    Chip_enable_bar     to pins   20
family    TTL

power     VCC, GND

inputs    Address, Chip_enable_bar

outputs   Output
outputs   Data_D0, Data_D1, Data_D2, Data_D3 !AT Added for minimum pin test.
outputs   Data_D4, Data_D5, Data_D6, Data_D7 !AT Added for minimum pin test.

when     Chip_enable_bar   is    "1"   inactive    Output

trace    Output   to    Address,Chip_enable_bar

disable   Output    with Chip_enable_bar     to   "1"

set load on    groups Output to pull up

!***************************************************************
!***************************************************************

vector  Chip_enable_bar_lo
     set  Chip_enable_bar     to   "0"
     set  Address             to   "kkkkkkkkkkkkk"
end vector

vector  Chip_enable_bar_hi
     set  Chip_enable_bar     to   "1"
end vector

vector  Address_counter
     set  Chip_enable_bar     to   "1"
     set  Address             to   "0000000000000"
     upcounter         Address
end vector

vector  Address_counter_2
     set  Chip_enable_bar     to   "1"
     set  Address             to   "1111111111111"
     downcounter         Address
end vector

vector  Outputs
     set  Chip_enable_bar     to   "0"
     set  Output              to   "00000000"
end vector

!AT The following vectors have been added for a minimum pins test. Any
!AT vectors that references the data bus was copied and modified to reference
!AT only a single pin of the data bus.

vector  Outputs_D0
     set  Chip_enable_bar     to   "0"
     set  Data_D0             to   "0"
end vector

vector  Outputs_D1
     set  Chip_enable_bar     to   "0"
     set  Data_D1             to   "0"
end vector

vector  Outputs_D2
     set  Chip_enable_bar     to   "0"
     set  Data_D2             to   "0"
end vector

vector  Outputs_D3
     set  Chip_enable_bar     to   "0"
     set  Data_D3             to   "0"
end vector

vector  Outputs_D4
     set  Chip_enable_bar     to   "0"
     set  Data_D4             to   "0"
end vector

vector  Outputs_D5
     set  Chip_enable_bar     to   "0"
     set  Data_D5             to   "0"
end vector

vector  Outputs_D6
     set  Chip_enable_bar     to   "0"
     set  Data_D6             to   "0"
end vector

vector  Outputs_D7
     set  Chip_enable_bar     to   "0"
     set  Data_D7             to   "0"
end vector

!***************************************************************
!***************************************************************

!AT The following AwareTest units have been added for minimum pins tests. Each
!AT unit tests a separate data pin starting with D0.

unit "awaretest D0 Test"
          execute  Chip_enable_bar_hi
     preset counter  Address_counter
     repeat  255  times
          execute  Chip_enable_bar_lo compress
          execute  Outputs_D0   compress
          execute  Chip_enable_bar_hi compress
          count      Address_counter compress
     end repeat
end unit

unit "awaretest D1 Test"
          execute  Chip_enable_bar_hi
     preset counter  Address_counter
     repeat  255  times
          execute  Chip_enable_bar_lo compress
          execute  Outputs_D1   compress
          execute  Chip_enable_bar_hi compress
          count      Address_counter compress
     end repeat
end unit

unit "awaretest D2 Test"
          execute  Chip_enable_bar_hi
     preset counter  Address_counter
     repeat  255  times
          execute  Chip_enable_bar_lo compress
          execute  Outputs_D2   compress
          execute  Chip_enable_bar_hi compress
          count      Address_counter compress
     end repeat
end unit

unit "awaretest D3 Test"
          execute  Chip_enable_bar_hi
     preset counter  Address_counter
     repeat  255  times
          execute  Chip_enable_bar_lo compress
          execute  Outputs_D3   compress
          execute  Chip_enable_bar_hi compress
          count      Address_counter compress
     end repeat
end unit

unit "awaretest D4 Test"
          execute  Chip_enable_bar_hi
     preset counter  Address_counter
     repeat  255  times
          execute  Chip_enable_bar_lo compress
          execute  Outputs_D4   compress
          execute  Chip_enable_bar_hi compress
          count      Address_counter compress
     end repeat
end unit

unit "awaretest D5 Test"
          execute  Chip_enable_bar_hi
     preset counter  Address_counter
     repeat  255  times
          execute  Chip_enable_bar_lo compress
          execute  Outputs_D5   compress
          execute  Chip_enable_bar_hi compress
          count      Address_counter compress
     end repeat
end unit

unit "awaretest D6 Test"
          execute  Chip_enable_bar_hi
     preset counter  Address_counter
     repeat  255  times
          execute  Chip_enable_bar_lo compress
          execute  Outputs_D6   compress
          execute  Chip_enable_bar_hi compress
          count      Address_counter compress
     end repeat
end unit

unit "awaretest D7 Test"
          execute  Chip_enable_bar_hi
     preset counter  Address_counter
     repeat  255  times
          execute  Chip_enable_bar_lo compress
          execute  Outputs_D7   compress
          execute  Chip_enable_bar_hi compress
          count      Address_counter compress
     end repeat
end unit

!  The data in the first 512 addresses and in the last 512 addresses
!  are compressed and the result is compared with that learned from
!  a known good device.  More of the data can be tested by increasing
!  the value of the loop counters, which also increases test time.
!  Setting the repeat loops to 4095 causes data from all addresses
!  to be compressed, but results in a test time of almost 10ms.

unit "Compress data"
          execute  Chip_enable_bar_hi
     preset counter  Address_counter
     repeat  512  times
          execute  Chip_enable_bar_lo compress
          execute  Outputs  compress
          execute  Chip_enable_bar_hi compress
          count      Address_counter compress
     end repeat

          execute  Chip_enable_bar_hi
     preset counter  Address_counter_2
     repeat  512  times
          execute  Chip_enable_bar_lo compress
          execute  Outputs  compress
          execute  Chip_enable_bar_hi compress
          count      Address_counter_2 compress
     end repeat

end unit



!    End of test

