hp93000,testflow,0.1 language_revision = 1; % program = options[:program] % if program information % program.information.each do |key, val| % unless key == "test_revision" <%= key %> = <%= val %> % end % end end % else %# Disabled for now, SMT master file doesn't like it %#-- STOPDIFF %#test_revision = "<%= Origen.app.version %>"; %#-- STARTDIFF % end %#-------------------------------------------------- %#declarations %# %#% if program %#% program.declarations.each do |key, val| %#<%= key %> = <%= val %> %#% end %#% else %#% flow_control_variables.each do |var| %#% if var.is_a?(Array) %#@<%= var[0].to_s.upcase %> = <%= var[1].is_a?(String) || var[1].is_a?(Symbol) ? "\"#{var[1]}\"" : var[1] %>; %#% else %#@<%= var.to_s.upcase %> = -1; %#% end %#% end %#% runtime_control_variables.each do |var| %#% if var.is_a?(Array) %#@<%= var[0].to_s.upcase %> = <%= var[1].is_a?(String) || var[1].is_a?(Symbol) ? "\"#{var[1]}\"" : var[1] %>; %#% else %#@<%= var.to_s.upcase %> = -1; %#% end %#% end %#% end %#end %#----------------------------------------------------------------- %#implicit_declarations %# %#end %#----------------------------------------------------------------- %#flags %# %#% if program %#% program.flags.each do |key, val| %#<%= key %> = <%= val %> %#% end %#% else %#datalog_formatter = 0; %#datalog_sample_size = 1; %#graphic_result_displa = 1; %#state_display = 0; %#print_wafermap = 0; %#ink_wafer = 0; %#max_reprobes = 1; %#temp_monitor = 1; %#calib_age_monitor = 1; %#diag_monitor = 1; %#current_monitor = 1; %#log_events_enable = 1; %#set_pass_level = 0; %#set_fail_level = 0; %#set_bypass_level = 0; %#hold_on_fail = 0; %#global_hold = 0; %#debug_mode = 0; %#debug_analog = 0; %#parallel_mode = 1; %#site_match_mode = 2; %#global_overon = 0; %#limits_enable = 0; %#test_number_enable = 1; %#test_number_inc = 1; %#log_cycles_before = 0; %#log_cycles_after = 0; %#unburst_mode = 0; %#sqst_mode = 0; %#warn_as_fail = 1; %#use_hw_dsp = 0; %#dsp_file_enable = 0; %#buffer_testflow_log = 0; %#check_testmethod_api = 0; %#stdf_generation = 1; %#tm_crash_as_fatal = 1; %#hidden_datalog_mode = 0; %#multibin_mode = 0; %#% end %#end %#----------------------------------------------------------------- testmethodparameters % if program % program.testmethodparameters.each do |id, parameters| % if parameters <%= id %>: % parameters.each do |key, val| <%= key %> = <%= val %> % end % end % end % else % unless test_methods.collection.empty? % test_methods.sorted_collection.each do |method| % unless method.parameters.empty? <%= method.id %>: % method.sorted_parameters.each do |param| % name = param[0] "<%= name.is_a?(String) ? name : name.to_s[0] == '_' ? name.to_s.camelize(:upper) : name.to_s.camelize(:lower) %>" = "<%= method.format(name) %>"; % end % end % end % end % end end ----------------------------------------------------------------- testmethodlimits % if program % program.testmethodlimits.each do |id, parameters| <%= id %>: % parameters.each do |key, val| <%= key %> = <%= val %> % end % end % else % test_methods.sorted_collection.each do |method| % if method.respond_to?(:limits) && method.limits <%= method.id %>: <%= method.limits %>; % end % end % end end ----------------------------------------------------------------- testmethods % if program % program.testmethods.each do |id, parameters| <%= id %>: % parameters.each do |key, val| <%= key %> = <%= val %> % end % end % else % test_methods.sorted_collection.each do |method| <%= method.id %>: testmethod_class = "<%= method.klass %>"; % end % end end ----------------------------------------------------------------- test_suites % if program % program.test_suites.each do |id, parameters| <%= id %>: % parameters.each do |key, val| <%= key %> = <%= val %> % end % end % else % test_suites.sorted_collection.each do |suite| <%= suite.name %>: % suite.lines.each do |line| <%= line %> % end % end % end end ----------------------------------------------------------------- test_flow % if program % program.test_flow.each do |line| <%= line %> % end % else % flow_header.each do |line| <%= line %> % end % lines.each do |line| <%= line %> % end % flow_footer.each do |line| <%= line %> % end % end end ----------------------------------------------------------------- binning % if program % program.binning.each do |line| <%= line %> % end % else %#otherwise bin = "db", "", , bad, noreprobe, red, , not_over_on; % end end ----------------------------------------------------------------- oocrule end ----------------------------------------------------------------- context end ----------------------------------------------------------------- hardware_bin_descriptions % if program % program.hardware_bin_descriptions.each do |key, val| <%= key %> = <%= val %> % end % else % hardware_bin_descriptions.each do |bin, desc| <%= bin %> = "<%= desc %>"; % end % end end -----------------------------------------------------------------