Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding comparison against simulation for nfet #26

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

atorkmabrains
Copy link
Collaborator

@atorkmabrains atorkmabrains commented May 7, 2023

Fixes #25
Adding comparison against simulation for nfet. Please note that the plot is interactive and you would need to run it on Google colab for example to view it. We noted that most of the sites are close to the measurements with the exception of one site 5290.

cc @akinakturk @mithro @QuantamHD @mohamedmonem123

@google-cla
Copy link

google-cla bot commented May 7, 2023

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

@atorkmabrains
Copy link
Collaborator Author

@mohamedmonem123 Could you please add some screenshots of the plots for different sites here specially the one that has high error?

@mohamedmonem123
Copy link

  • Here are some plots for site 5290 with different drain pins:
    image
    image
    image

it is noticed that a large difference between simulated current (Blues) & measured current (Reds).

  • Here some screenshots for plots captured from other sites and in which simulated current (Blues) is close to measured current (Reds)

image
image
image

@mithro mithro requested a review from proppy May 8, 2023 17:28
@mithro
Copy link
Contributor

mithro commented May 8, 2023

This looks super interesting!

@mithro
Copy link
Contributor

mithro commented May 8, 2023

@msaligane @bmurmann - As experts in the analog field, any thoughts?

@bmurmann
Copy link
Contributor

bmurmann commented May 8, 2023

Contact issues or errors in the site map?

@akinakturk
Copy link
Collaborator

akinakturk commented May 8, 2023 via email

@azwefabless
Copy link

3 guesses, all of which I've seen in the past: 1)If all of these measurements were take on a single touchdown of the probe card at a single location I'd guess that this is dirt on the probe tip. 2) If this data is repeatable across multiple locations then I'd guess there is a manufacturing or GDS problem with this test structure. If this issue happens at all locations then I'd check the Id versus the W and L of the device and do a mathematical sanity check. If it is likely a multiplier or unit issue in the model and the model number is off base. (I'd start here as I'm not aware of ANY device in S8 that was developed and characterized for half an amp of current.) ;-)

@atorkmabrains
Copy link
Collaborator Author

atorkmabrains commented May 9, 2023

@bmurmann @mithro @QuantamHD @msaligane

Here are the steps that we have followed:

  1. We read the following document row by row and filtered nfet_01v8 devices using "New Style Name".
  2. Read the device site id from "Mod #" column.
  3. Read device dimensions and parameters from "Description" that includes all parameters including stress parameters.
  4. Read data file for the site id and pin number from files.
  5. Create a netlist from template
  6. Simulate the netlist in ngspice.
  7. Plot and compare results.

The user can select the "site id" from a drop down list interactively in the noteobook and that changes the plot:
https://github.com/google/skywater-pdk-sky130-raw-data/blob/f0f38fa96332c127f46afe9f182d9de0179b36f6/notebooks/sky130_plot_simdata_compare.ipynb

I would really appreciate if someone could review our code and see if we missed anything.

@azwefabless Good point with regards to the device being characterized at 500mA. Is it possible to check if the data has incorrect scaling somehow. One comment about that specific site is that the entire site shared source and drain connection for transistors connected to that site. All other sites, shared gate and bulk connections. I have filtered out the nfet_01v8 connections here:
https://docs.google.com/spreadsheets/d/10SRKPZtcHI4L2gfeMYfPlzchbu2y6lkMRXf0wKD0xCU/edit?usp=sharing&resourcekey=0-XBt4e7MJevdHEHRvlk0gMw

@akinakturk 47mA seems kind of the correct range.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Temperature, test conditions and test layout is missing.
6 participants