Hi, how do I access the magic device menu? I am trying to place a photodiode but I didn't see it in ...
c
Hi, how do I access the magic device menu? I am trying to place a photodiode but I didn't see it in the skywater 130 magic files. In the open pdk documentation, it says there was a photodiode added to the magic device generator, but I'm not sure how to use that? Any help would be appreciated! Thanks!
h
Do you see these dropdowns? If not please check and fix your install.
image.png
BTW, the “photodiode” is one of the standard PN-junctions. You can implement them any way you want. The advantage of using the pre-made cell is that (1) this is a layout that is probably silicon-proven, and (2) I guess there is a simulation model for that. I am not totally sure, but this looks like an n-well-to-substrate diode, which makes sense, as this is the deepest PN junction, and good for visible light (if this is what you want to use).
t
FYI, one of the main reasons for not seeing the "Device" menus is not starting magic using
magic -rcfile $PDK_ROOT/sky130A/libs.tech/magic/sky130A.magicrc
. The startup script adds the PDK-specific menu items.
1
h
BTW, thanks @User for adding the Rsquare values for res and metal in the 2nd dropdown. Super handy 😀
c
@User I am using magic version 8.3 revision 290 and the sky130A.magicrc file from Oct 2021, but my device1 menu seems to have everything except the photodiode (attached)? Do you know if this is a problem with the install or the rc file? Thanks!
h
@User it looks to me like a version issue. Oct’21 might be too old. You should try to upgrade to latest PDK and magic (or the versions you need according to a recent OpenLane) and try that. I am using OpenLane from Apr’22, and it has the photodiode.
@User the relevant component version here is probably
open_pdks
. You could look into the GitHub changes, or @User knows this.
c
@User to upgrade to the latest PDK, can I just run the open pdk installation steps or do I need to uninstall and reinstall OpenPDK?
h
@User I would also upgrade open_pdks.
If you cloned from GitHub, just do
git pull
inside the relevant directories.
c
Okay, I will try that. Thanks !
@User sorry for all the follow-up, but when I run git pull on my skywater_pdk directory, I have the following error
Copy code
connie@connie-GE75-Raider-10SE:~/skywater-pdk$ git remote -v
origin	<https://github.com/google/skywater-pdk> (fetch)
origin	<https://github.com/google/skywater-pdk> (push)
connie@connie-GE75-Raider-10SE:~/skywater-pdk$ git pull
Fetching submodule libraries/sky130_fd_io/latest
Could not access submodule 'third_party/make-env'
Fetching submodule libraries/sky130_fd_sc_hvl/latest
where it says it can't access a submodule, even though I have the branch checked out?
h
@User puh, good question. Maybe it is best to start all over with the install and follow the install instructions?
t
@User, @User: You're correct about the nature of the problem. The photodiode device is a relatively recent addition to the PDK. Originally I did not have enough documentation to figure out the correct dimensions for the device, but later I managed to get hold of an example layout for the device, and added it to the device generator.
@User: I have recently stopped pulling and installing skywater-pdk myself, but now I just let open_pdks automatically pull all the repositories, which it puts in the
sources
directory, and
make update
will update all repositories if needed. I ran that just now and didn't encounter any errors, so I'm not sure why you're getting an error on
git pull
. Like Harald, I can only suggest deleting skywater-pdk and reinstalling (or, as I said at the beginning, just let open_pdks do it for you). BTW, there was no need for you to update the skywater-pdk repository (which hasn't ever changed except for the guys at Google constantly messing around with the documentation), or uninstall anything. All you needed to do was to cd to open_pdks, do
git pull
and
make
and
sudo make install
.
c
@User @User Thanks! I will give it a try. And if I used the video from Stefan Schippers for the open pdk installation, I would have to specify the same ./configure setting before running make and make install?
@User@User Thanks for all your help! I was able to update my open-pdk and pdk library and use the photodiode in magic
👍 1
k
@Tim Edwards @Connie Duong @Harald Pretl I have a question to all of You. Would You be be so kind and take a look at the following cross sectional view of a photo diode made in 180 nm and confirm that the device (the photo diode) generated by magic
has the same cross sectional view. Kind regards
pd.pdf
t
Not exactly. Where does that drawing come from? I had no layout of a photodiode, so I worked entirely from the diagram in the DRC document, which is found here: https://skywater-pdk.readthedocs.io/en/main/rules/periphery.html#photo According to that diagram and the associated rules, the N+ (N-tap) region in the center is 0.41um x 0.41um, sits in a small local N-well, and takes up only a small area in the middle of the photodiode. It is surrounded by a "photo" layer (which is apparently just a marker as there is no mask data associated with it that I can see). There is no mention in the DRC document or diagram of any biasing of the P-well (Vx in your drawing), but then there is no mention of a connection to the center tap, either.
I am not an expert in photodiode physics, so it would be helpful to have somebody knowledgeable weigh in on the interpretation of SkyWater's photodiode rules.
k
1-s2.0-S0026269213001754-main.pdf
@Tim Edwards here goes the article where I have found the cross section. In fact I was looking for the mask associated with the photo layer however, as You have mentioned, seems that it does not exist. It seems also that the photo active PN junction is between deep N-well and the P-well. Do You know anybody here, who could those rules and give some hints about the device ?