!!!!    6    0    1  990112736  Vd705                                         

! Device           : 3624
! Function         : 4k(512x8) high-speed prom  3 state outputs
! 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."

assign VCC            to pins  24,22
assign GND            to pins  12

assign Address        to pins  8,7,6,5,4,3,2,1,23
assign Data           to pins  9,10,11,13,14,15,16,17
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_sel_1_bar to pins  21
assign Chip_sel_2_bar to pins  20
assign Chip_sel_3     to pins  19
assign Chip_sel_4     to pins  18

family TTL

power VCC, GND

inputs Address,Chip_sel_1_bar,Chip_sel_2_bar,Chip_sel_3,Chip_sel_4

outputs Data
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_sel_1_bar is "1" inactive    Data
when    Chip_sel_2_bar is "1" inactive    Data
when    Chip_sel_3     is "0" inactive    Data
when    Chip_sel_4     is "0" inactive    Data

trace   Data  to  Address,Chip_sel_1_bar,Chip_sel_2_bar
trace   Data  to  Chip_sel_3,Chip_sel_4

disable Data with Chip_sel_1_bar to "1"
disable Data with Chip_sel_2_bar to "1"
disable Data with Chip_sel_3     to "0"
disable Data with Chip_sel_4     to "0"

set load on    groups Data to pull up

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

vector   Gray_address_counter
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "1"
     set  Data             to "00000000"
     set  Address          to "000000000"
     graycounter             Address
end vector

vector   Chip_Deselected
     set  Chip_sel_1_bar   to  "1"
     set  Chip_sel_2_bar   to  "1"
     set  Chip_sel_3       to  "0"
     set  Chip_sel_4       to  "0"
end vector

vector   Deselect_with_CS_1_bar
     set  Chip_sel_1_bar   to  "1"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "1"
     set  Data             to "11111111"
     set  Address          to "000000000"
end vector

vector   Deselect_with_CS_2_bar
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "1"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "1"
     set  Data             to "11111111"
     set  Address          to "000000000"
end vector

vector   Deselect_with_CS_3
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "0"
     set  Chip_sel_4       to  "1"
     set  Data             to "11111111"
     set  Address          to "000000000"
end vector

vector   Deselect_with_CS_4
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "0"
     set  Data             to "11111111"
     set  Address          to "000000000"
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   Gray_address_counter_D0
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "1"
     set  Data_D0          to "0"
     set  Address          to "000000000"
     graycounter             Address
end vector

vector   Gray_address_counter_D1
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "1"
     set  Data_D1          to "0"
     set  Address          to "000000000"
     graycounter             Address
end vector

vector   Gray_address_counter_D2
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "1"
     set  Data_D2          to "0"
     set  Address          to "000000000"
     graycounter             Address
end vector

vector   Gray_address_counter_D3
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "1"
     set  Data_D3          to "0"
     set  Address          to "000000000"
     graycounter             Address
end vector

vector   Gray_address_counter_D4
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "1"
     set  Data_D4          to "0"
     set  Address          to "000000000"
     graycounter             Address
end vector

vector   Gray_address_counter_D5
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "1"
     set  Data_D5          to "0"
     set  Address          to "000000000"
     graycounter             Address
end vector

vector   Gray_address_counter_D6
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "1"
     set  Data_D6          to "0"
     set  Address          to "000000000"
     graycounter             Address
end vector

vector   Gray_address_counter_D7
     set  Chip_sel_1_bar   to  "0"
     set  Chip_sel_2_bar   to  "0"
     set  Chip_sel_3       to  "1"
     set  Chip_sel_4       to  "1"
     set  Data_D7          to "0"
     set  Address          to "000000000"
     graycounter             Address
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"
     preset counter          Gray_address_counter_D0     compress
     repeat            255 times
           count             Gray_address_counter_D0     compress
           execute  Chip_deselected compress
     end repeat
end unit

unit "awaretest D1 Test"
     preset counter          Gray_address_counter_D1     compress
     repeat            255 times
           count             Gray_address_counter_D1     compress
           execute  Chip_deselected compress
     end repeat
end unit

unit "awaretest D2 Test"
     preset counter          Gray_address_counter_D2     compress
     repeat            255 times
           count             Gray_address_counter_D2     compress
           execute  Chip_deselected compress
     end repeat
end unit

unit "awaretest D3 Test"
     preset counter          Gray_address_counter_D3     compress
     repeat            255 times
           count             Gray_address_counter_D3     compress
           execute  Chip_deselected compress
     end repeat
end unit

unit "awaretest D4 Test"
     preset counter          Gray_address_counter_D4     compress
     repeat            255 times
           count             Gray_address_counter_D4     compress
           execute  Chip_deselected compress
     end repeat
end unit

unit "awaretest D5 Test"
     preset counter          Gray_address_counter_D5     compress
     repeat            255 times
           count             Gray_address_counter_D5     compress
           execute  Chip_deselected compress
     end repeat
end unit

unit "awaretest D6 Test"
     preset counter          Gray_address_counter_D6     compress
     repeat            255 times
           count             Gray_address_counter_D6     compress
           execute  Chip_deselected compress
     end repeat
end unit

unit "awaretest D7 Test"
     preset counter          Gray_address_counter_D7     compress
     repeat            255 times
           count             Gray_address_counter_D7     compress
           execute  Chip_deselected compress
     end repeat
end unit

unit  "3624 PROM Test"
     preset counter          Gray_address_counter        compress
     repeat            511 times
           count             Gray_address_counter        compress
           execute  Chip_deselected compress
     end repeat
end unit

!  If PULL-UPS exist on the outputs AND the data in the first
!  address is NOT all 1's the following units can be included
!  to verify that the Chip_sel_bar pins are not stuck-at-0
!  and the Chip_enable pins are not stuck-at-1.

 unit "Deselect with Chip_sel_1_bar"
       execute   Deselect_with_CS_1_bar
 end unit

 unit "Deselect with Chip_sel_2_bar"
       execute   Deselect_with_CS_2_bar
 end unit

 unit "Deselect with Chip_sel_3"
       execute   Deselect_with_CS_3
 end unit

 unit "Deselect with Chip_sel_4"
       execute   Deselect_with_CS_4
 end unit



! End Of Test


