!!!!    6    0    1  986748712  Vbe07                                         

! Device           : 10143
! Function         : Static RAM oc 8 x 2
! revision         : B.01.00
! safeguard        : standard_ecl
! Modifications    : Modified for AwareTest xi
!
  warning           "This library has not been verified with hardware."

sequential

assign    VCC1            to pins   1,24,23
assign    VCC2            to pins   1,24,23
assign    VEE             to pins   12

assign    Address_A       to pins   13,15,14
assign    Address_B       to pins   5,7,6
assign    Address_C       to pins   18,16,17

assign    Data_0_in       to pins   10
assign    Data_1_in       to pins   11

assign    Data_B_out      to pins   2,3
assign    Data_B_0_out    to pins   3       !AT Added for minimum pin test.
assign    Data_B_1_out    to pins   2       !AT Added for minimum pin test.

assign    Data_C_out      to pins   22,21
assign    Data_C_0_out    to pins   21      !AT Added for minimum pin test.
assign    Data_C_1_out    to pins   22      !AT Added for minimum pin test.

assign    Read_B_enable_bar       to pins   4
assign    Read_C_enable_bar       to pins   20

assign    Write_0_enable_bar      to pins   9
assign    Write_1_enable_bar      to pins   8

assign    Clock                   to pins   19

family    ECL

power     VCC1, VCC2, VEE

inputs    Address_A, Address_B, Address_C
inputs    Data_0_in, Data_1_in
inputs    Read_B_enable_bar, Read_C_enable_bar
inputs    Write_0_enable_bar, Write_1_enable_bar
inputs    Clock

outputs   Data_B_out, Data_C_out
outputs   Data_B_0_out, Data_B_1_out        !AT Added for minimum pin test.
outputs   Data_C_0_out, Data_C_1_out        !AT Added for minimum pin test.

disable   Data_B_out    with   Read_B_enable_bar    to   "1"
disable   Data_C_out    with   Read_C_enable_bar    to   "1"

trace  Data_B_out to   Address_A, Address_B, Address_C
trace  Data_B_out to   Data_0_in, Data_1_in,Clock
trace  Data_B_out to   Read_B_enable_bar, Read_C_enable_bar
trace  Data_B_out to   Write_0_enable_bar, Write_1_enable_bar

trace  Data_C_out to   Address_A, Address_B, Address_C
trace  Data_C_out to   Data_0_in, Data_1_in,Clock
trace  Data_C_out to   Read_B_enable_bar, Read_C_enable_bar
trace  Data_C_out to   Write_0_enable_bar, Write_1_enable_bar

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

vector    Disable
     set  Clock               to   "0"
     set  Write_0_enable_bar  to   "1"
     set  Write_1_enable_bar  to   "1"
     set  Read_B_enable_bar   to   "1"
     set  Read_C_enable_bar   to   "1"
end vector

vector    Write_0
     set  Clock               to   "0"
     set  Address_A           to   "kkk"
     set  Read_B_enable_bar   to   "1"
     set  Read_C_enable_bar   to   "1"
     set  Write_0_enable_bar  to   "0"
     set  Write_1_enable_bar  to   "1"
end vector

vector    Write_1
     set  Clock               to   "0"
     set  Address_A           to   "kkk"
     set  Read_B_enable_bar   to   "1"
     set  Read_C_enable_bar   to   "1"
     set  Write_0_enable_bar  to   "1"
     set  Write_1_enable_bar  to   "0"
end vector

vector    Write_0_WE_false
     set  Clock               to   "0"
     set  Address_A           to   "kkk"
     set  Read_B_enable_bar   to   "1"
     set  Read_C_enable_bar   to   "1"
     set  Write_0_enable_bar  to   "1"
     set  Write_1_enable_bar  to   "1"
end vector

vector    Write_1_WE_false
     set  Clock               to   "0"
     set  Address_A           to   "kkk"
     set  Read_B_enable_bar   to   "1"
     set  Read_C_enable_bar   to   "1"
     set  Write_0_enable_bar  to   "1"
     set  Write_1_enable_bar  to   "1"
end vector

vector    Read_B
     set  Clock               to   "1"
     set  Address_B           to   "kkk"
     set  Read_B_enable_bar   to   "0"
     set  Read_C_enable_bar   to   "1"
     set  Write_0_enable_bar  to   "1"
     set  Write_1_enable_bar  to   "1"
end vector

vector    Read_C
     set  Clock               to   "1"
     set  Address_C           to   "kkk"
     set  Read_B_enable_bar   to   "1"
     set  Read_C_enable_bar   to   "0"
     set  Write_0_enable_bar  to   "1"
     set  Write_1_enable_bar  to   "1"
end vector

vector    Clock_0_high
     set  Clock               to   "1"
     set  Address_A           to   "kkk"
     set  Read_B_enable_bar   to   "K"
     set  Read_C_enable_bar   to   "K"
     set  Write_0_enable_bar  to   "K"
     set  Write_1_enable_bar  to   "K"
     set  Data_0_in           to   "K"
end vector

vector    Clock_0_low
     set  Clock               to   "0"
     set  Address_A           to   "kkk"
     set  Read_B_enable_bar   to   "K"
     set  Read_C_enable_bar   to   "K"
     set  Write_0_enable_bar  to   "K"
     set  Write_1_enable_bar  to   "K"
     set  Data_0_in           to   "K"
end vector

vector    Clock_1_high
     set  Clock               to   "1"
     set  Address_A           to   "kkk"
     set  Read_B_enable_bar   to   "K"
     set  Read_C_enable_bar   to   "K"
     set  Write_0_enable_bar  to   "K"
     set  Write_1_enable_bar  to   "K"
     set  Data_1_in           to   "K"
end vector

vector    Clock_1_low
     set  Clock               to   "0"
     set  Address_A           to   "kkk"
     set  Read_B_enable_bar   to   "K"
     set  Read_C_enable_bar   to   "K"
     set  Write_0_enable_bar  to   "K"
     set  Write_1_enable_bar  to   "K"
     set  Data_1_in           to   "K"
end vector

vector    Address_A_000
     initialize to  Disable
     set  Address_A           to   "000"
end vector

vector    Address_A_001
     initialize to  Disable
     set  Address_A           to   "001"
end vector

vector    Address_A_010
     initialize to  Disable
     set  Address_A           to   "010"
end vector

vector    Address_A_011
     initialize to  Disable
     set  Address_A           to   "011"
end vector

vector    Address_A_100
     initialize to  Disable
     set  Address_A           to   "100"
end vector

vector    Address_A_101
     initialize to  Disable
     set  Address_A           to   "101"
end vector

vector    Address_A_110
     initialize to  Disable
     set  Address_A           to   "110"
end vector

vector    Address_A_111
     initialize to  Disable
     set  Address_A           to   "111"
end vector

vector    Address_B_000
     initialize to  Disable
     set  Address_B           to   "000"
end vector

vector    Address_B_001
     initialize to  Disable
     set  Address_B           to   "001"
end vector

vector    Address_B_010
     initialize to  Disable
     set  Address_B           to   "010"
end vector

vector    Address_B_011
     initialize to  Disable
     set  Address_B           to   "011"
end vector

vector    Address_B_100
     initialize to  Disable
     set  Address_B           to   "100"
end vector

vector    Address_B_101
     initialize to  Disable
     set  Address_B           to   "101"
end vector

vector    Address_B_110
     initialize to  Disable
     set  Address_B           to   "110"
end vector

vector    Address_B_111
     initialize to  Disable
     set  Address_B           to   "111"
end vector

vector    Address_C_000
     initialize to  Disable
     set  Address_C           to   "000"
end vector

vector    Address_C_001
     initialize to  Disable
     set  Address_C           to   "001"
end vector

vector    Address_C_010
     initialize to  Disable
     set  Address_C           to   "010"
end vector

vector    Address_C_011
     initialize to  Disable
     set  Address_C           to   "011"
end vector

vector    Address_C_100
     initialize to  Disable
     set  Address_C           to   "100"
end vector

vector    Address_C_101
     initialize to  Disable
     set  Address_C           to   "101"
end vector

vector    Address_C_110
     initialize to  Disable
     set  Address_C           to   "110"
end vector

vector    Address_C_111
     initialize to  Disable
     set  Address_C           to   "111"
end vector

vector    Data_0_write_0
     initialize to  Write_0
     set Data_0_in            to   "0"
end vector

vector    Data_0_write_1
     initialize to  Write_0
     set Data_0_in            to   "1"
end vector

vector    Data_1_write_0
     initialize to  Write_1
     set Data_1_in            to   "0"
end vector

vector    Data_1_write_1
     initialize to  Write_1
     set Data_1_in            to   "1"
end vector

vector    Data_0_write_0_WE_false
     initialize to  Write_0_WE_false
     set Data_0_in            to   "0"
end vector

vector    Data_1_write_0_WE_false
     initialize to  Write_1_WE_false
     set Data_1_in            to   "0"
end vector

vector    Data_B_0_read_0
     initialize to  Read_B
     set Data_B_0_out         to   "0" !AT Modified the group name and x0 state
end vector

vector    Data_B_0_read_1
     initialize to  Read_B
     set Data_B_0_out         to   "1" !AT Modified the group name and x1 state
end vector

vector    Data_B_1_read_0
     initialize to  Read_B
     set Data_B_1_out         to   "0" !AT Modified the group name and 0x state
end vector

vector    Data_B_1_read_1
     initialize to  Read_B
     set Data_B_1_out         to   "1" !AT Modified the group name and 1x state
end vector

vector    Data_C_0_read_0
     initialize to  Read_C
     set Data_C_0_out         to   "0" !AT Modified the group name and x0 state
end vector

vector    Data_C_0_read_1
     initialize to  Read_C
     set Data_C_0_out         to   "1" !AT Modified the group name and x1 state
end vector

vector    Data_C_1_read_0
     initialize to  Read_C
     set Data_C_1_out         to   "0" !AT Modified the group name and 0x state
end vector

vector    Data_C_1_read_1
     initialize to  Read_C
     set Data_C_1_out         to   "1" !AT Modified the group name and 1x state
end vector

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

sub  Write_data_0 (Address, Data)
     execute   Address
     execute   Data
     execute   Clock_0_high
     execute   Clock_0_low
end sub

sub  Write_data_1 (Address, Data)
     execute   Address
     execute   Data
     execute   Clock_1_high
     execute   Clock_1_low
end sub


sub  Read_B_data (Address, Data)
     execute   Address
     execute   Data
end sub

sub  Read_C_data (Address, Data)
     execute   Address
     execute   Data
end sub

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

!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 Data_B_0_output with Data_0_input Test"

     call Write_data_0 (Address_A_000, Data_0_write_0)
     call Read_B_data (Address_B_000, Data_B_0_read_0)

     call Write_data_0 (Address_A_000, Data_0_write_1)
     call Read_B_data (Address_B_000, Data_B_0_read_1)

end unit

unit   "awaretest Data_B_1_output with Data_1_input Test"

     call Write_data_1 (Address_A_000, Data_1_write_0)
     call Read_B_data (Address_B_000, Data_B_1_read_0)

     call Write_data_1 (Address_A_000, Data_1_write_1)
     call Read_B_data (Address_B_000, Data_B_1_read_1)

end unit

unit   "awaretest Data_C_0_output with Data_0_input Test"

     call Write_data_0 (Address_A_000, Data_0_write_0)
     call Read_C_data (Address_C_000, Data_C_0_read_0)

     call Write_data_0 (Address_A_000, Data_0_write_1)
     call Read_C_data (Address_C_000, Data_C_0_read_1)

end unit

unit   "awaretest Data_C_1_output with Data_1_input Test"

     call Write_data_1 (Address_A_000, Data_1_write_0)
     call Read_C_data (Address_C_000, Data_C_1_read_0)

     call Write_data_1 (Address_A_000, Data_1_write_1)
     call Read_C_data (Address_C_000, Data_C_1_read_1)

end unit

unit "RAM test, Data_B_0_output with Data_0_input"

!  writes zeros
     call Write_data_0 (Address_A_000, Data_0_write_0)
     call Write_data_0 (Address_A_001, Data_0_write_0)
     call Write_data_0 (Address_A_011, Data_0_write_0)
     call Write_data_0 (Address_A_010, Data_0_write_0)
     call Write_data_0 (Address_A_110, Data_0_write_0)
     call Write_data_0 (Address_A_111, Data_0_write_0)
     call Write_data_0 (Address_A_101, Data_0_write_0)
     call Write_data_0 (Address_A_100, Data_0_write_0)

!  Test Address 000 Output_B_0
     call Write_data_0 (Address_A_000, Data_0_write_1)
     call Read_B_data (Address_B_000, Data_B_0_read_1)
     call Read_B_data (Address_B_001, Data_B_0_read_0)
     call Read_B_data (Address_B_011, Data_B_0_read_0)
     call Read_B_data (Address_B_010, Data_B_0_read_0)
     call Read_B_data (Address_B_110, Data_B_0_read_0)
     call Read_B_data (Address_B_111, Data_B_0_read_0)
     call Read_B_data (Address_B_101, Data_B_0_read_0)
     call Read_B_data (Address_B_100, Data_B_0_read_0)
     call Write_data_0 (Address_A_000, Data_0_write_0)

!  Test Address 001 Output_B_0
     call Write_data_0 (Address_A_001, Data_0_write_1)
     call Read_B_data (Address_B_000, Data_B_0_read_0)
     call Read_B_data (Address_B_001, Data_B_0_read_1)
     call Read_B_data (Address_B_011, Data_B_0_read_0)
     call Read_B_data (Address_B_010, Data_B_0_read_0)
     call Read_B_data (Address_B_110, Data_B_0_read_0)
     call Read_B_data (Address_B_111, Data_B_0_read_0)
     call Read_B_data (Address_B_101, Data_B_0_read_0)
     call Read_B_data (Address_B_100, Data_B_0_read_0)
     call Write_data_0 (Address_A_001, Data_0_write_0)

!  Test Address 010 Output_B_0
     call Write_data_0 (Address_A_010, Data_0_write_1)
     call Read_B_data (Address_B_000, Data_B_0_read_0)
     call Read_B_data (Address_B_001, Data_B_0_read_0)
     call Read_B_data (Address_B_011, Data_B_0_read_0)
     call Read_B_data (Address_B_010, Data_B_0_read_1)
     call Read_B_data (Address_B_110, Data_B_0_read_0)
     call Read_B_data (Address_B_111, Data_B_0_read_0)
     call Read_B_data (Address_B_101, Data_B_0_read_0)
     call Read_B_data (Address_B_100, Data_B_0_read_0)
     call Write_data_0 (Address_A_010, Data_0_write_0)

!  Test Address 011 Output_B_0
     call Write_data_0 (Address_A_011, Data_0_write_1)
     call Read_B_data (Address_B_000, Data_B_0_read_0)
     call Read_B_data (Address_B_001, Data_B_0_read_0)
     call Read_B_data (Address_B_011, Data_B_0_read_1)
     call Read_B_data (Address_B_010, Data_B_0_read_0)
     call Read_B_data (Address_B_110, Data_B_0_read_0)
     call Read_B_data (Address_B_111, Data_B_0_read_0)
     call Read_B_data (Address_B_101, Data_B_0_read_0)
     call Read_B_data (Address_B_100, Data_B_0_read_0)
     call Write_data_0 (Address_A_011, Data_0_write_0)

!  Test Address 100 Output_B_0
     call Write_data_0 (Address_A_100, Data_0_write_1)
     call Read_B_data (Address_B_000, Data_B_0_read_0)
     call Read_B_data (Address_B_001, Data_B_0_read_0)
     call Read_B_data (Address_B_011, Data_B_0_read_0)
     call Read_B_data (Address_B_010, Data_B_0_read_0)
     call Read_B_data (Address_B_110, Data_B_0_read_0)
     call Read_B_data (Address_B_111, Data_B_0_read_0)
     call Read_B_data (Address_B_101, Data_B_0_read_0)
     call Read_B_data (Address_B_100, Data_B_0_read_1)
     call Write_data_0 (Address_A_100, Data_0_write_0)

!  Test Address 101 Output_B_0
     call Write_data_0 (Address_A_101, Data_0_write_1)
     call Read_B_data (Address_B_000, Data_B_0_read_0)
     call Read_B_data (Address_B_001, Data_B_0_read_0)
     call Read_B_data (Address_B_011, Data_B_0_read_0)
     call Read_B_data (Address_B_010, Data_B_0_read_0)
     call Read_B_data (Address_B_110, Data_B_0_read_0)
     call Read_B_data (Address_B_111, Data_B_0_read_0)
     call Read_B_data (Address_B_101, Data_B_0_read_1)
     call Read_B_data (Address_B_100, Data_B_0_read_0)
     call Write_data_0 (Address_A_101, Data_0_write_0)

!  Test Address 110 Output_B_0
     call Write_data_0 (Address_A_110, Data_0_write_1)
     call Read_B_data (Address_B_000, Data_B_0_read_0)
     call Read_B_data (Address_B_001, Data_B_0_read_0)
     call Read_B_data (Address_B_011, Data_B_0_read_0)
     call Read_B_data (Address_B_010, Data_B_0_read_0)
     call Read_B_data (Address_B_110, Data_B_0_read_1)
     call Read_B_data (Address_B_111, Data_B_0_read_0)
     call Read_B_data (Address_B_101, Data_B_0_read_0)
     call Read_B_data (Address_B_100, Data_B_0_read_0)
     call Write_data_0 (Address_A_110, Data_0_write_0)

!  Test Address 111 Output_B_0
     call Write_data_0 (Address_A_111, Data_0_write_1)
     call Read_B_data (Address_B_000, Data_B_0_read_0)
     call Read_B_data (Address_B_001, Data_B_0_read_0)
     call Read_B_data (Address_B_011, Data_B_0_read_0)
     call Read_B_data (Address_B_010, Data_B_0_read_0)
     call Read_B_data (Address_B_110, Data_B_0_read_0)
     call Read_B_data (Address_B_111, Data_B_0_read_1)
     call Read_B_data (Address_B_101, Data_B_0_read_0)
     call Read_B_data (Address_B_100, Data_B_0_read_0)
     call Write_data_0 (Address_A_111, Data_0_write_0)

! Test Write_0_false
     call Write_data_0 (Address_A_111, Data_0_write_1)
     execute   Address_A_111
     execute   Data_0_write_0_WE_false
     execute   Clock_0_high
     execute   Clock_0_low
     call Read_B_data (Address_B_111, Data_B_0_read_1)

end unit

unit "RAM test, Data_B_1_output with Data_1_input"

!  writes zeros
     call Write_data_1 (Address_A_000, Data_1_write_0)
     call Write_data_1 (Address_A_001, Data_1_write_0)
     call Write_data_1 (Address_A_011, Data_1_write_0)
     call Write_data_1 (Address_A_010, Data_1_write_0)
     call Write_data_1 (Address_A_110, Data_1_write_0)
     call Write_data_1 (Address_A_111, Data_1_write_0)
     call Write_data_1 (Address_A_101, Data_1_write_0)
     call Write_data_1 (Address_A_100, Data_1_write_0)

!  Test Address 000 Output_B_1
     call Write_data_1 (Address_A_000, Data_1_write_1)
     call Read_B_data (Address_B_000, Data_B_1_read_1)
     call Read_B_data (Address_B_001, Data_B_1_read_0)
     call Read_B_data (Address_B_011, Data_B_1_read_0)
     call Read_B_data (Address_B_010, Data_B_1_read_0)
     call Read_B_data (Address_B_110, Data_B_1_read_0)
     call Read_B_data (Address_B_111, Data_B_1_read_0)
     call Read_B_data (Address_B_101, Data_B_1_read_0)
     call Read_B_data (Address_B_100, Data_B_1_read_0)
     call Write_data_1 (Address_A_000, Data_1_write_0)

!  Test Address 001 Output_B_1
     call Write_data_1 (Address_A_001, Data_1_write_1)
     call Read_B_data (Address_B_000, Data_B_1_read_0)
     call Read_B_data (Address_B_001, Data_B_1_read_1)
     call Read_B_data (Address_B_011, Data_B_1_read_0)
     call Read_B_data (Address_B_010, Data_B_1_read_0)
     call Read_B_data (Address_B_110, Data_B_1_read_0)
     call Read_B_data (Address_B_111, Data_B_1_read_0)
     call Read_B_data (Address_B_101, Data_B_1_read_0)
     call Read_B_data (Address_B_100, Data_B_1_read_0)
     call Write_data_1 (Address_A_001, Data_1_write_0)

!  Test Address 010 Output_B_1
     call Write_data_1 (Address_A_010, Data_1_write_1)
     call Read_B_data (Address_B_000, Data_B_1_read_0)
     call Read_B_data (Address_B_001, Data_B_1_read_0)
     call Read_B_data (Address_B_011, Data_B_1_read_0)
     call Read_B_data (Address_B_010, Data_B_1_read_1)
     call Read_B_data (Address_B_110, Data_B_1_read_0)
     call Read_B_data (Address_B_111, Data_B_1_read_0)
     call Read_B_data (Address_B_101, Data_B_1_read_0)
     call Read_B_data (Address_B_100, Data_B_1_read_0)
     call Write_data_1 (Address_A_010, Data_1_write_0)

!  Test Address 011 Output_B_1
     call Write_data_1 (Address_A_011, Data_1_write_1)
     call Read_B_data (Address_B_000, Data_B_1_read_0)
     call Read_B_data (Address_B_001, Data_B_1_read_0)
     call Read_B_data (Address_B_011, Data_B_1_read_1)
     call Read_B_data (Address_B_010, Data_B_1_read_0)
     call Read_B_data (Address_B_110, Data_B_1_read_0)
     call Read_B_data (Address_B_111, Data_B_1_read_0)
     call Read_B_data (Address_B_101, Data_B_1_read_0)
     call Read_B_data (Address_B_100, Data_B_1_read_0)
     call Write_data_1 (Address_A_011, Data_1_write_0)

!  Test Address 100 Output_B_1
     call Write_data_1 (Address_A_100, Data_1_write_1)
     call Read_B_data (Address_B_000, Data_B_1_read_0)
     call Read_B_data (Address_B_001, Data_B_1_read_0)
     call Read_B_data (Address_B_011, Data_B_1_read_0)
     call Read_B_data (Address_B_010, Data_B_1_read_0)
     call Read_B_data (Address_B_110, Data_B_1_read_0)
     call Read_B_data (Address_B_111, Data_B_1_read_0)
     call Read_B_data (Address_B_101, Data_B_1_read_0)
     call Read_B_data (Address_B_100, Data_B_1_read_1)
     call Write_data_1 (Address_A_100, Data_1_write_0)

!  Test Address 101 Output_B_1
     call Write_data_1 (Address_A_101, Data_1_write_1)
     call Read_B_data (Address_B_000, Data_B_1_read_0)
     call Read_B_data (Address_B_001, Data_B_1_read_0)
     call Read_B_data (Address_B_011, Data_B_1_read_0)
     call Read_B_data (Address_B_010, Data_B_1_read_0)
     call Read_B_data (Address_B_110, Data_B_1_read_0)
     call Read_B_data (Address_B_111, Data_B_1_read_0)
     call Read_B_data (Address_B_101, Data_B_1_read_1)
     call Read_B_data (Address_B_100, Data_B_1_read_0)
     call Write_data_1 (Address_A_101, Data_1_write_0)

!  Test Address 110 Output_B_1
     call Write_data_1 (Address_A_110, Data_1_write_1)
     call Read_B_data (Address_B_000, Data_B_1_read_0)
     call Read_B_data (Address_B_001, Data_B_1_read_0)
     call Read_B_data (Address_B_011, Data_B_1_read_0)
     call Read_B_data (Address_B_010, Data_B_1_read_0)
     call Read_B_data (Address_B_110, Data_B_1_read_1)
     call Read_B_data (Address_B_111, Data_B_1_read_0)
     call Read_B_data (Address_B_101, Data_B_1_read_0)
     call Read_B_data (Address_B_100, Data_B_1_read_0)
     call Write_data_1 (Address_A_110, Data_1_write_0)

!  Test Address 111 Output_B_1
     call Write_data_1 (Address_A_111, Data_1_write_1)
     call Read_B_data (Address_B_000, Data_B_1_read_0)
     call Read_B_data (Address_B_001, Data_B_1_read_0)
     call Read_B_data (Address_B_011, Data_B_1_read_0)
     call Read_B_data (Address_B_010, Data_B_1_read_0)
     call Read_B_data (Address_B_110, Data_B_1_read_0)
     call Read_B_data (Address_B_111, Data_B_1_read_1)
     call Read_B_data (Address_B_101, Data_B_1_read_0)
     call Read_B_data (Address_B_100, Data_B_1_read_0)
     call Write_data_1 (Address_A_111, Data_1_write_0)

! Test Write_1_false
     call Write_data_1 (Address_A_111, Data_1_write_1)
     execute   Address_A_111
     execute   Data_1_write_0_WE_false
     execute   Clock_1_high
     execute   Clock_1_low
     call Read_B_data (Address_B_111, Data_B_1_read_1)
end unit

unit "RAM test, Data_C_0_output with Data_0_input"

!  writes zeros
     call Write_data_0 (Address_A_000, Data_0_write_0)
     call Write_data_0 (Address_A_001, Data_0_write_0)
     call Write_data_0 (Address_A_011, Data_0_write_0)
     call Write_data_0 (Address_A_010, Data_0_write_0)
     call Write_data_0 (Address_A_110, Data_0_write_0)
     call Write_data_0 (Address_A_111, Data_0_write_0)
     call Write_data_0 (Address_A_101, Data_0_write_0)
     call Write_data_0 (Address_A_100, Data_0_write_0)

!  Test Address 000 Output_C_0
     call Write_data_0 (Address_A_000, Data_0_write_1)
     call Read_C_data (Address_C_000, Data_C_0_read_1)
     call Read_C_data (Address_C_001, Data_C_0_read_0)
     call Read_C_data (Address_C_011, Data_C_0_read_0)
     call Read_C_data (Address_C_010, Data_C_0_read_0)
     call Read_C_data (Address_C_110, Data_C_0_read_0)
     call Read_C_data (Address_C_111, Data_C_0_read_0)
     call Read_C_data (Address_C_101, Data_C_0_read_0)
     call Read_C_data (Address_C_100, Data_C_0_read_0)
     call Write_data_0 (Address_A_000, Data_0_write_0)

!  Test Address 001 Output_C_0
     call Write_data_0 (Address_A_001, Data_0_write_1)
     call Read_C_data (Address_C_000, Data_C_0_read_0)
     call Read_C_data (Address_C_001, Data_C_0_read_1)
     call Read_C_data (Address_C_011, Data_C_0_read_0)
     call Read_C_data (Address_C_010, Data_C_0_read_0)
     call Read_C_data (Address_C_110, Data_C_0_read_0)
     call Read_C_data (Address_C_111, Data_C_0_read_0)
     call Read_C_data (Address_C_101, Data_C_0_read_0)
     call Read_C_data (Address_C_100, Data_C_0_read_0)
     call Write_data_0 (Address_A_001, Data_0_write_0)

!  Test Address 010 Output_C_0
    call Write_data_0 (Address_A_010, Data_0_write_1)
    call Read_C_data (Address_C_000, Data_C_0_read_0)
     call Read_C_data (Address_C_001, Data_C_0_read_0)
     call Read_C_data (Address_C_011, Data_C_0_read_0)
     call Read_C_data (Address_C_010, Data_C_0_read_1)
     call Read_C_data (Address_C_110, Data_C_0_read_0)
     call Read_C_data (Address_C_111, Data_C_0_read_0)
     call Read_C_data (Address_C_101, Data_C_0_read_0)
     call Read_C_data (Address_C_100, Data_C_0_read_0)
     call Write_data_0 (Address_A_010, Data_0_write_0)

!  Test Address 011 Output_C_0
     call Write_data_0 (Address_A_011, Data_0_write_1)
     call Read_C_data (Address_C_000, Data_C_0_read_0)
     call Read_C_data (Address_C_001, Data_C_0_read_0)
     call Read_C_data (Address_C_011, Data_C_0_read_1)
     call Read_C_data (Address_C_010, Data_C_0_read_0)
     call Read_C_data (Address_C_110, Data_C_0_read_0)
     call Read_C_data (Address_C_111, Data_C_0_read_0)
     call Read_C_data (Address_C_101, Data_C_0_read_0)
     call Read_C_data (Address_C_100, Data_C_0_read_0)
     call Write_data_0 (Address_A_011, Data_0_write_0)

!  Test Address 100 Output_C_0
    call Write_data_0 (Address_A_100, Data_0_write_1)
    call Read_C_data (Address_C_000, Data_C_0_read_0)
     call Read_C_data (Address_C_001, Data_C_0_read_0)
     call Read_C_data (Address_C_011, Data_C_0_read_0)
     call Read_C_data (Address_C_010, Data_C_0_read_0)
     call Read_C_data (Address_C_110, Data_C_0_read_0)
     call Read_C_data (Address_C_111, Data_C_0_read_0)
     call Read_C_data (Address_C_101, Data_C_0_read_0)
     call Read_C_data (Address_C_100, Data_C_0_read_1)
     call Write_data_0 (Address_A_100, Data_0_write_0)

!  Test Address 101 Output_C_0
     call Write_data_0 (Address_A_101, Data_0_write_1)
     call Read_C_data (Address_C_000, Data_C_0_read_0)
     call Read_C_data (Address_C_001, Data_C_0_read_0)
     call Read_C_data (Address_C_011, Data_C_0_read_0)
     call Read_C_data (Address_C_010, Data_C_0_read_0)
     call Read_C_data (Address_C_110, Data_C_0_read_0)
     call Read_C_data (Address_C_111, Data_C_0_read_0)
     call Read_C_data (Address_C_101, Data_C_0_read_1)
     call Read_C_data (Address_C_100, Data_C_0_read_0)
     call Write_data_0 (Address_A_101, Data_0_write_0)

!  Test Address 110 Output_C_0
     call Write_data_0 (Address_A_110, Data_0_write_1)
     call Read_C_data (Address_C_000, Data_C_0_read_0)
     call Read_C_data (Address_C_001, Data_C_0_read_0)
     call Read_C_data (Address_C_011, Data_C_0_read_0)
     call Read_C_data (Address_C_010, Data_C_0_read_0)
     call Read_C_data (Address_C_110, Data_C_0_read_1)
     call Read_C_data (Address_C_111, Data_C_0_read_0)
     call Read_C_data (Address_C_101, Data_C_0_read_0)
     call Read_C_data (Address_C_100, Data_C_0_read_0)
     call Write_data_0 (Address_A_110, Data_0_write_0)

!  Test Address 111 Output_C_0
     call Write_data_0 (Address_A_111, Data_0_write_1)
     call Read_C_data (Address_C_000, Data_C_0_read_0)
     call Read_C_data (Address_C_001, Data_C_0_read_0)
     call Read_C_data (Address_C_011, Data_C_0_read_0)
     call Read_C_data (Address_C_010, Data_C_0_read_0)
     call Read_C_data (Address_C_110, Data_C_0_read_0)
     call Read_C_data (Address_C_111, Data_C_0_read_1)
     call Read_C_data (Address_C_101, Data_C_0_read_0)
     call Read_C_data (Address_C_100, Data_C_0_read_0)
     call Write_data_0 (Address_A_111, Data_0_write_0)

end unit

unit "RAM test, Data_C_1_output with Data_1_input"

!  writes zeros
     call Write_data_1 (Address_A_000, Data_1_write_0)
     call Write_data_1 (Address_A_001, Data_1_write_0)
     call Write_data_1 (Address_A_011, Data_1_write_0)
     call Write_data_1 (Address_A_010, Data_1_write_0)
     call Write_data_1 (Address_A_110, Data_1_write_0)
     call Write_data_1 (Address_A_111, Data_1_write_0)
     call Write_data_1 (Address_A_101, Data_1_write_0)
     call Write_data_1 (Address_A_100, Data_1_write_0)

!  Test Address 000 Output_C_1
     call Write_data_1 (Address_A_000, Data_1_write_1)
     call Read_C_data (Address_C_000, Data_C_1_read_1)
     call Read_C_data (Address_C_001, Data_C_1_read_0)
     call Read_C_data (Address_C_011, Data_C_1_read_0)
     call Read_C_data (Address_C_010, Data_C_1_read_0)
     call Read_C_data (Address_C_110, Data_C_1_read_0)
     call Read_C_data (Address_C_111, Data_C_1_read_0)
     call Read_C_data (Address_C_101, Data_C_1_read_0)
     call Read_C_data (Address_C_100, Data_C_1_read_0)
     call Write_data_1 (Address_A_000, Data_1_write_0)

!  Test Address 001 Output_C_1
     call Write_data_1 (Address_A_001, Data_1_write_1)
     call Read_C_data (Address_C_000, Data_C_1_read_0)
     call Read_C_data (Address_C_001, Data_C_1_read_1)
     call Read_C_data (Address_C_011, Data_C_1_read_0)
     call Read_C_data (Address_C_010, Data_C_1_read_0)
     call Read_C_data (Address_C_110, Data_C_1_read_0)
     call Read_C_data (Address_C_111, Data_C_1_read_0)
     call Read_C_data (Address_C_101, Data_C_1_read_0)
     call Read_C_data (Address_C_100, Data_C_1_read_0)
     call Write_data_1 (Address_A_001, Data_1_write_0)

!  Test Address 010 Output_C_1
     call Write_data_1 (Address_A_010, Data_1_write_1)
     call Read_C_data (Address_C_000, Data_C_1_read_0)
     call Read_C_data (Address_C_001, Data_C_1_read_0)
     call Read_C_data (Address_C_011, Data_C_1_read_0)
     call Read_C_data (Address_C_010, Data_C_1_read_1)
     call Read_C_data (Address_C_110, Data_C_1_read_0)
     call Read_C_data (Address_C_111, Data_C_1_read_0)
     call Read_C_data (Address_C_101, Data_C_1_read_0)
     call Read_C_data (Address_C_100, Data_C_1_read_0)
     call Write_data_1 (Address_A_010, Data_1_write_0)

!  Test Address 011 Output_C_1
     call Write_data_1 (Address_A_011, Data_1_write_1)
     call Read_C_data (Address_C_000, Data_C_1_read_0)
     call Read_C_data (Address_C_001, Data_C_1_read_0)
     call Read_C_data (Address_C_011, Data_C_1_read_1)
     call Read_C_data (Address_C_010, Data_C_1_read_0)
     call Read_C_data (Address_C_110, Data_C_1_read_0)
     call Read_C_data (Address_C_111, Data_C_1_read_0)
     call Read_C_data (Address_C_101, Data_C_1_read_0)
     call Read_C_data (Address_C_100, Data_C_1_read_0)
     call Write_data_1 (Address_A_011, Data_1_write_0)

!  Test Address 100 Output_C_1
     call Write_data_1 (Address_A_100, Data_1_write_1)
     call Read_C_data (Address_C_000, Data_C_1_read_0)
     call Read_C_data (Address_C_001, Data_C_1_read_0)
     call Read_C_data (Address_C_011, Data_C_1_read_0)
     call Read_C_data (Address_C_010, Data_C_1_read_0)
     call Read_C_data (Address_C_110, Data_C_1_read_0)
     call Read_C_data (Address_C_111, Data_C_1_read_0)
     call Read_C_data (Address_C_101, Data_C_1_read_0)
     call Read_C_data (Address_C_100, Data_C_1_read_1)
     call Write_data_1 (Address_A_100, Data_1_write_0)

!  Test Address 101 Output_C_1
     call Write_data_1 (Address_A_101, Data_1_write_1)
     call Read_C_data (Address_C_000, Data_C_1_read_0)
     call Read_C_data (Address_C_001, Data_C_1_read_0)
     call Read_C_data (Address_C_011, Data_C_1_read_0)
     call Read_C_data (Address_C_010, Data_C_1_read_0)
     call Read_C_data (Address_C_110, Data_C_1_read_0)
     call Read_C_data (Address_C_111, Data_C_1_read_0)
     call Read_C_data (Address_C_101, Data_C_1_read_1)
     call Read_C_data (Address_C_100, Data_C_1_read_0)
     call Write_data_1 (Address_A_101, Data_1_write_0)

!  Test Address 110 Output_C_1
     call Write_data_1 (Address_A_110, Data_1_write_1)
     call Read_C_data (Address_C_000, Data_C_1_read_0)
     call Read_C_data (Address_C_001, Data_C_1_read_0)
     call Read_C_data (Address_C_011, Data_C_1_read_0)
     call Read_C_data (Address_C_010, Data_C_1_read_0)
     call Read_C_data (Address_C_110, Data_C_1_read_1)
     call Read_C_data (Address_C_111, Data_C_1_read_0)
     call Read_C_data (Address_C_101, Data_C_1_read_0)
     call Read_C_data (Address_C_100, Data_C_1_read_0)
     call Write_data_1 (Address_A_110, Data_1_write_0)

!  Test Address 111 Output_C_1
     call Write_data_1 (Address_A_111, Data_1_write_1)
     call Read_C_data (Address_C_000, Data_C_1_read_0)
     call Read_C_data (Address_C_001, Data_C_1_read_0)
     call Read_C_data (Address_C_011, Data_C_1_read_0)
     call Read_C_data (Address_C_010, Data_C_1_read_0)
     call Read_C_data (Address_C_110, Data_C_1_read_0)
     call Read_C_data (Address_C_111, Data_C_1_read_1)
     call Read_C_data (Address_C_101, Data_C_1_read_0)
     call Read_C_data (Address_C_100, Data_C_1_read_0)
     call Write_data_1 (Address_A_111, Data_1_write_0)
end unit

!    End of test
