!!!! 6 0 1 991769500 V551c ! Device : 74ls670 ! Function : Register_file 4 x 4 ! revision : B.01.00 ! safeguard : high_out_lsttl ! Modifications : Modified for AwareTest xi ! warning "This library has not been verified with hardware." sequential assign VCC to pins 16 assign GND to pins 8 assign Write_Inputs to pins 13,14 assign Write_Enable to pins 12 assign Data_Inputs to pins 3,2,1,15 assign D4 to pins 3 assign D3 to pins 2 assign D2 to pins 1 assign D1 to pins 15 assign Read_Inputs to pins 4,5 assign Read_Enable to pins 11 assign Data_Outputs to pins 6,7,9,10 assign Q4 to pins 6 assign Q3 to pins 7 assign Q2 to pins 9 assign Q1 to pins 10 power VCC, GND inputs Write_Inputs, Write_Enable, Read_Inputs, Read_Enable, Data_Inputs inputs D4, D3, D2, D1 outputs Data_Outputs, Q4, Q3, Q2, Q1 family TTL disable Data_Outputs with Read_Enable to "1" when Read_Enable is "1" inactive Data_Outputs trace Q4 to D4, Write_Inputs, Write_Enable, Read_Inputs, Read_Enable trace Q3 to D3, Write_Inputs, Write_Enable, Read_Inputs, Read_Enable trace Q2 to D2, Write_Inputs, Write_Enable, Read_Inputs, Read_Enable trace Q1 to D1, Write_Inputs, Write_Enable, Read_Inputs, Read_Enable !*************************************************************************** !*************************************************************************** vector Enable_Writing set Write_Enable to "0" set Read_Enable to "0" set Read_Inputs to "00" end vector vector Write_Word_0 set Write_Enable to "K" set Write_Inputs to "00" set Read_Enable to "K" set Read_Inputs to "00" end vector vector Write_Word_1 set Write_Enable to "K" set Write_Inputs to "01" set Read_Enable to "K" set Read_Inputs to "01" end vector vector Write_Word_2 set Write_Enable to "K" set Write_Inputs to "10" set Read_Enable to "K" set Read_Inputs to "10" end vector vector Write_Word_3 set Write_Enable to "K" set Write_Inputs to "11" set Read_Enable to "K" set Read_Inputs to "11" end vector vector Inputs_0001 set Write_Enable to "K" set Write_Inputs to "KK" set Data_Inputs to "0001" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector Inputs_0010 set Write_Enable to "K" set Write_Inputs to "KK" set Data_Inputs to "0010" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector Inputs_0100 set Write_Enable to "K" set Write_Inputs to "KK" set Data_Inputs to "0100" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector Inputs_1000 set Write_Enable to "K" set Write_Inputs to "KK" set Data_Inputs to "1000" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector Inputs_1110 set Write_Enable to "K" set Write_Inputs to "KK" set Data_Inputs to "1110" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector Inputs_1101 set Write_Enable to "K" set Write_Inputs to "KK" set Data_Inputs to "1101" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector Inputs_1011 set Write_Enable to "K" set Write_Inputs to "KK" set Data_Inputs to "1011" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector Inputs_0111 set Write_Enable to "K" set Write_Inputs to "KK" set Data_Inputs to "0111" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector Disable_Writing set Write_Enable to "1" set Write_Inputs to "KK" set Data_Inputs to "KKKK" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector Outputs_0001 set Read_Enable to "0" set Read_Inputs to "KK" set Data_Outputs to "0001" set Data_Inputs to "KKKK" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Outputs_0010 set Read_Enable to "0" set Read_Inputs to "KK" set Data_Outputs to "0010" set Data_Inputs to "KKKK" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Outputs_0100 set Read_Enable to "0" set Read_Inputs to "KK" set Data_Outputs to "0100" set Data_Inputs to "KKKK" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Outputs_1000 set Read_Enable to "0" set Read_Inputs to "KK" set Data_Outputs to "1000" set Data_Inputs to "KKKK" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Outputs_1110 set Read_Enable to "0" set Read_Inputs to "KK" set Data_Outputs to "1110" set Data_Inputs to "KKKK" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Outputs_1101 set Read_Enable to "0" set Read_Inputs to "KK" set Data_Outputs to "1101" set Data_Inputs to "KKKK" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Outputs_1011 set Read_Enable to "0" set Read_Inputs to "KK" set Data_Outputs to "1011" set Data_Inputs to "KKKK" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Outputs_0111 set Read_Enable to "0" set Read_Inputs to "KK" set Data_Outputs to "0111" set Data_Inputs to "KKKK" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Disable_Outputs set Read_Enable to "1" set Read_Inputs to "KK" set Data_Inputs to "KKKK" set Data_Outputs to "1111" 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 D1_I_0 set Write_Enable to "K" set Write_Inputs to "KK" set D1 to "0" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector D1_I_1 set Write_Enable to "K" set Write_Inputs to "KK" set D1 to "1" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector D2_I_0 set Write_Enable to "K" set Write_Inputs to "KK" set D2 to "0" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector D2_I_1 set Write_Enable to "K" set Write_Inputs to "KK" set D2 to "1" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector D3_I_0 set Write_Enable to "K" set Write_Inputs to "KK" set D3 to "0" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector D3_I_1 set Write_Enable to "K" set Write_Inputs to "KK" set D3 to "1" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector D4_I_0 set Write_Enable to "K" set Write_Inputs to "KK" set D4 to "0" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector D4_I_1 set Write_Enable to "K" set Write_Inputs to "KK" set D4 to "1" set Read_Enable to "K" set Read_Inputs to "KK" end vector vector Q1_O_0 set Read_Enable to "0" set Read_Inputs to "KK" set Q1 to "0" set D1 to "K" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Q1_O_1 set Read_Enable to "0" set Read_Inputs to "KK" set Q1 to "1" set D1 to "K" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Q2_O_0 set Read_Enable to "0" set Read_Inputs to "KK" set Q2 to "0" set D2 to "K" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Q2_O_1 set Read_Enable to "0" set Read_Inputs to "KK" set Q2 to "1" set D2 to "K" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Q3_O_0 set Read_Enable to "0" set Read_Inputs to "KK" set Q3 to "0" set D3 to "K" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Q3_O_1 set Read_Enable to "0" set Read_Inputs to "KK" set Q3 to "1" set D3 to "K" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Q4_O_0 set Read_Enable to "0" set Read_Inputs to "KK" set Q4 to "0" set D4 to "K" set Write_Enable to "K" set Write_Inputs to "KK" end vector vector Q4_O_1 set Read_Enable to "0" set Read_Inputs to "KK" set Q4 to "1" set D4 to "K" set Write_Enable to "K" set Write_Inputs to "KK" end vector !*************************************************************************** !*************************************************************************** !AT The following AwareTest units have been added for minimum pins tests. Each !AT unit tests a separate data pin starting with D1, Q1. unit "awaretest D1 Q1 Test" execute Enable_Writing execute Write_Word_0 execute D1_I_0 execute Q1_O_0 execute Enable_Writing execute Write_Word_0 execute D1_I_1 execute Q1_O_1 end unit unit "awaretest D2 Q2 Test" execute Enable_Writing execute Write_Word_1 execute D2_I_0 execute Q2_O_0 execute Enable_Writing execute Write_Word_1 execute D2_I_1 execute Q2_O_1 end unit unit "awaretest D3 Q3 Test" execute Enable_Writing execute Write_Word_2 execute D3_I_0 execute Q3_O_0 execute Enable_Writing execute Write_Word_2 execute D3_I_1 execute Q3_O_1 end unit unit "awaretest D4 Q4 Test" execute Enable_Writing execute Write_Word_3 execute D4_I_0 execute Q4_O_0 execute Enable_Writing execute Write_Word_3 execute D4_I_1 execute Q4_O_1 end unit !**************************************************************** unit "Register file test, word 0" execute Enable_Writing execute Write_Word_0 execute Inputs_0001 execute Disable_Writing execute Write_Word_0 execute Inputs_1000 execute Outputs_0001 execute Enable_Writing execute Write_Word_0 execute Inputs_1110 execute Outputs_1110 end unit unit "Register file test, word 1" execute Enable_Writing execute Write_Word_1 execute Inputs_0010 execute Disable_Writing execute Write_Word_1 execute Inputs_1101 execute Outputs_0010 execute Enable_Writing execute Write_Word_1 execute Inputs_1101 execute Outputs_1101 end unit unit "Register file test, word 2" execute Enable_Writing execute Write_Word_2 execute Inputs_0100 execute Disable_Writing execute Write_Word_2 execute Inputs_1011 execute Outputs_0100 execute Enable_Writing execute Write_Word_2 execute Inputs_1011 execute Outputs_1011 end unit unit "Register file test, word 3" execute Enable_Writing execute Write_Word_3 execute Inputs_1000 execute Disable_Writing execute Write_Word_3 execute Inputs_0111 execute Outputs_1000 execute Enable_Writing execute Write_Word_3 execute Inputs_0111 execute Outputs_0111 end unit ! End of Test