cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
‘New to using JMP? Hit the ground running with the Early User Edition of Discovery Summit – register now, free of charge.
Register for our Discovery Summit 2024 conference, Oct. 21-24, where you’ll learn, connect, and be inspired.
Choose Language Hide Translation Bar
Neo
Neo
Level VI

How to get process parameter yield by wafer in a lot?

 I want to get process parameter yield per "Wafer ID in lot ID" from the sample data table "Semiconductor Capability.jmp". 

However, I am not able to proceed as I am getting an error: "Process Screening requires at least 7 rows of data."

 

Names Default To Here (1);
clear log ();
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");

col_names = dt << Get Column Group("Processes"); 
ps = dt << Process Screening (Process Variables( Eval( col_names )),  
                  Spec Limits Dialog( "No (skip columns with no spec limits)" ), 
                  Control Chart Type ("Indiv and MR"),
                  By( :wafer );// Just to demonstrate	
                  //By (:"Wafer ID in lot ID");I need this but this throws error in JMP 16.2.0 (Error: Process Screening requires at least 7 rows of data.). Why?
                  );

 

Where am I going wrong?

 

Once the above script works for By: Wafer ID in lot ID, I would like to get a data table (Summary?) in the form

Column1: Wafer ID in lot ID

Column2: Process names

Column3:

Process parameter yield = 100* # passing sites (per parameter which the above script gives, I think (5 - "out of spec count"))/ # sites measured per "Wafer ID in Lot ID"

(5 sites measured per wafer in this example data case)

How to do this via JSL?

When it's too good to be true, it's neither
1 ACCEPTED SOLUTION

Accepted Solutions
jthi
Super User

Re: How to get process parameter yield by wafer in a lot?

Have you tried using Group instead of By for could grouping column?

-Jarmo

View solution in original post

4 REPLIES 4
jthi
Super User

Re: How to get process parameter yield by wafer in a lot?

Have you tried using Group instead of By for could grouping column?

-Jarmo
Neo
Neo
Level VI

Re: How to get process parameter yield by wafer in a lot?

@jthi yes, I did try Grouping by  "Wafer ID in lot ID",  which gives me a table with the required data, but I have not been able to extract the parameter yield I want from it. I am thinking of using the Summarize function but am not yet sure how to use it. Any help would be very useful.

When it's too good to be true, it's neither
jthi
Super User

Re: How to get process parameter yield by wafer in a lot?

I'm not sure what you wish to use the Summarize for? You can very easily get a table like this from Process Screening and then you just add one formula and you should get what you need (or maybe I'm missing something)

jthi_0-1721149046028.png

 

-Jarmo
jthi
Super User

Re: How to get process parameter yield by wafer in a lot?

As this has been marked solved, I will also provide at least some sort of a final solution

Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");

ps = dt << Process Screening(
	Process Variables(Column Group("Processes")),
	Grouping(:Wafer ID in lot ID),
	Control Chart Type("Indiv and MR"),
	Within Sigma(0),
	Overall Sigma(0),
	Stability Index(0),
	Mean(0),
	Show Tests(0),
	Test 1(0),
	Out of Spec Rate(0),
	Latest Out of Spec(0),
	Cpk(0),
	Ppk(0)
);

dt_result = Report(ps)[Outline Box("Process Screening"), Table Box(1)] << Make Into Data Table;
ps << close window;
wait(0);

new_col = dt_result << New Column("Yield", Numeric, Continuous, Format("Percent", 12, 3), Formula(
	(:Count - :"Out of Spec Count"n) / :Count)
);
dt_result << run formulas;
new_col << delete formula;
-Jarmo