Maker Pro
Maker Pro

Shmoo Plot

entev

May 12, 2017
11
Joined
May 12, 2017
Messages
11
Hi. Does someone know how i can "calculate" the shmoo plot from the given data (nxn matrix). Thanks in advance.
 

Harald Kapp

Moderator
Moderator
Nov 17, 2011
13,747
Joined
Nov 17, 2011
Messages
13,747
As I understand you already have some data in an n-by-n matrix, right? The shmoo plot is just the graphical representation of this matrix, possibly with each matrix cell weighted according to criteria to be defined by your (e.g. pass/fail if the cell's value is above or below a certain threshold).
If you don't have the 'plot' software to generate the shmo plot from this data, you could use e.g. Excel, load the matrix into a worksheet and use conditional formatting to color the cells according to the cell's value. Make the cell content the same color as the cell's background clor, then print the worksheet.
Here's an example with cell values shown, conditions are: <=0.5=red, >0.5 = green
upload_2017-5-13_20-12-59.png
Is this what your are loking for?
 

entev

May 12, 2017
11
Joined
May 12, 2017
Messages
11
not at all.

say this is the matrix
492px-64K_DRAM_Shmoo_Plot-typical.png


it's something like 20x40 matrix, and the start and the end of the axises are given (-10 ÷ -14) and the step (-0.08). so for every cell in matrix i need to determine the pass/fail. how? what's the algorithm. and no, i need to write a code to determine that and not use excel or other software
 

(*steve*)

¡sǝpodᴉʇuɐ ǝɥʇ ɹɐǝɥd
Moderator
Jan 21, 2010
25,510
Joined
Jan 21, 2010
Messages
25,510
not at all.

Au contraire, it is exactly what Harald suggested.

Presumably you have results in all of these cells. All you need to do is to derive a method which returns one value for success and another for failure.

Harald suggested doing that with conditional formatting, your example appears to use an @if(...) to return distinct true/false values. Both are essentially equivalent.

It's your assignment, so it's up to you to determine what values represent true and false.

Whether you use Excel or something else, the method is essentially the same. Break the area of the plot into cells and determine the value at each cell.
 

entev

May 12, 2017
11
Joined
May 12, 2017
Messages
11
as i understand, if i only have the starts and ends of intervals and the step, i can generate the matrix? i.e. no need for input matrix?

and if there IS a matrix, what kind of data should it contain?
 

entev

May 12, 2017
11
Joined
May 12, 2017
Messages
11
and what about the algorithm to determine whether it's a pass or a fail? i don't know much about chip testing specifications and thresholds etc.

well, i can tell the code to plot the same shape for every input but that will not be a solution to the problem
 

(*steve*)

¡sǝpodᴉʇuɐ ǝɥʇ ɹɐǝɥd
Moderator
Jan 21, 2010
25,510
Joined
Jan 21, 2010
Messages
25,510
In practice, I believe it is normally done by quenching the flash prior to complete discharge of the capacitor.

I'm not sure exactly how that is achieved since the discharge current in very small camera flash units can be between 50 and 100A.
 

entev

May 12, 2017
11
Joined
May 12, 2017
Messages
11
well after all the algorithm depends on what is being tested righr?
 

Harald Kapp

Moderator
Moderator
Nov 17, 2011
13,747
Joined
Nov 17, 2011
Messages
13,747
what about the algorithm to determine whether it's a pass or a fail?
This is a design/test decision to be made by you. The test machine will deliver a measure for a cerain parameter for every point within the matrix. The x-axis and the y-axis are two parameters that the test machine varies according to your demands, e.g. you could have x-axis = supply voltage, y-axis = frequency of an input signal. Or whatever combination you are interested in. The tester will evaluate the response of the chip to these two input signal (plus any number of other signals that may be needed to make the chip operational, e.g. additional supply voltages).
The test machine will deliver another parameter as test result. In this example this could e.g. be the amplitude of the output signal. It is now your task as designer to define which output level is acceptable and which output level is not. This defines the threshold for a good/bad decision.

For another test the relevant parameter may be a delay time, a signal's rise time or whatever.
 

entev

May 12, 2017
11
Joined
May 12, 2017
Messages
11
okay, and what if the input is a matrix? what values should be in it and how should the pass/fail be determined in that case?
 

Harald Kapp

Moderator
Moderator
Nov 17, 2011
13,747
Joined
Nov 17, 2011
Messages
13,747
Where does the matrix come from? What is the content of the matrix cells, what are the axes?
 

entev

May 12, 2017
11
Joined
May 12, 2017
Messages
11
i don't know what it is cause that's not specified in the assignment. a matrix that contains some values probably. but im wondering what data is that and it can be helpful
 

entev

May 12, 2017
11
Joined
May 12, 2017
Messages
11
what if the matrix is something like this (and the shmoo plot isn't necessarily for testing something). just generate shmoo plot for this matrix
3.4 3.3 .....
3.2 3.3 .....
.................
this probably doesn't make sense but it's probably something like this

matrix can be very large and i guess i need to divide it into submatrices and solve the problem that way...
 

Harald Kapp

Moderator
Moderator
Nov 17, 2011
13,747
Joined
Nov 17, 2011
Messages
13,747
this probably doesn't make sense
Whatever it is that the matrix represents: It is up to you to evaluate the contents and to decide which values are pass and which values are fail.

Since this is obviously an assignment, deciding how to do this is probably part of the task you've been given. Also since this is a assignment I will move this thread to the appropriate forum section. Note that we do generally not give full solutions for such tasks, we rather try to guide you in finding your own solution.

My interpretation now is that your task is to write a program that generates a shmoo plot as shown in your post #3 from a matrix of values. The plot itself is only a graphical representation of the matrix.
So start by considering these sub-tasks (which will lead in the end to a smoo plot):
  • How would you print out a matrix of values e.g. as in your post #13?
  • When you have achieved this: how can you generate a matrix of yes/no or 1/0 or "x"/" " values from the original values? Hint: you need a treshold value which you could e.g. ask as input from the user.
  • Use the result from the first sub-task to print this modified matrix.
 

entev

May 12, 2017
11
Joined
May 12, 2017
Messages
11
okay, thanks. i'm also given the size. if i didn't have the matrix, then this would make sense (since that would mean size is the start and the end of x-axis or y-axis parameter). but what does the size represent in this case?
 

Harald Kapp

Moderator
Moderator
Nov 17, 2011
13,747
Joined
Nov 17, 2011
Messages
13,747
I'm sorry, I don't get it. First you state:
Does someone know how i can "calculate" the shmoo plot from the given data (nxn matrix).
Now you ask:
if i didn't have the matrix
And you introduce a new parameter:
i'm also given the size
And you ask:
what does the size represent in this case?

that would mean size is the start and the end of x-axis or y-axis parameter
A matrix here can be considered a mathematical 2-dimensional representation of a set of numbers. What these numbers mean and what the x-axis and the y-axis represent as well as how these axes are scaled (start, stop, length of an interval) is nothing per se mathematical. These are parameters that you need as input (e.g. from the person who generated the matrix). You don't need these parrameters to create the shmoo plot. The shmoo plot is simply the graphical representtaion of the matrix's content.
You need these parameters to give this graphical representation a meaning. In the simplest form you print these parameters as a key next to the matrix.

My crystal ball is currently out of order. Please go back to start, reconsider the task you've been given, present the solutions you've arrived at so far and ask specific questions.
I could guess that size is simply the parameter 'n' from the 'n by n'm matrix you started this thread with. But currently I get the impression you haven't understood the underlying problem/task, We might be much more of a help if you present the full task assignment so we can sort out what is required and where we can help you.

As far as it concerns the original question how to creat a shmoo plot from any n by n matrix I really think my post #14 pretty much leads to the answer.
 

entev

May 12, 2017
11
Joined
May 12, 2017
Messages
11
im sorry to confuse you. the original task is - im given a numerical matrix, also the sizes (what sizes? i don't know) and a step, and i need to generate the shmoo plot.

at first i thought that the matrix is the generated shmoo plot (that contains the pass/fail flags). plus i didn't find any example of shmoo plot which receives a matrix as its input on google, that's why i thought i only had the sizes (start, end) and the step

but when i have the matrix which contains numbers (random numbers i guess, out of some predefined order probably?), i can't see the purpose of the given SIZES. if those are the start and end, then why give it as input? i can calculate it during reading the data (for step, i guess it's the scale on axes)
 

Harald Kapp

Moderator
Moderator
Nov 17, 2011
13,747
Joined
Nov 17, 2011
Messages
13,747
what sizes? i don't know
I'm sorry, I can't make neither head nor tails of that SIZES thing. It's maybe time to ask your instructor or a classmate what this means.

Just one guess: SIZE could be the threshold which you use to make the pass/fail decision based on the matrix cells values.
 

(*steve*)

¡sǝpodᴉʇuɐ ǝɥʇ ɹɐǝɥd
Moderator
Jan 21, 2010
25,510
Joined
Jan 21, 2010
Messages
25,510
Or it could be the dimensions of the array of data. For example 30 rows of 50 columns.
 

entev

May 12, 2017
11
Joined
May 12, 2017
Messages
11
Just one guess: SIZE could be the threshold which you use to make the pass/fail decision based on the matrix cells values.
that could be true. and i haven't seen the teacher since this task had been given but sure i'll ask him when we have the class, and classmates are as lost as i am. anyways, thanks a lot for the help!
 
Top