Make. Better. Always looking for ways to up-level circuit design, prototyping, assembly, small batch production: everything that goes into making hardware. And here, I share the interesting finds I make along the way. I'm big into open-source--a lot of using and some creating/sharing--so you can expect kicad, openpnp, and recently a host of new tools to play with for VLSI and ASIC design. So if you want to get into making, or hone your skills by learning from my mistakes, I've got a lot to share. So subscribe and/or get in touch!
this is awesome. going into grad school for mixed signal design so I appreciate that there are many more intelligent people making videos like this for me to consume lol
In short, I've been getting one chip per tinytapeout run where I have a project. The cost depends on the size you want (a single "tile", enough for say 1k gates or so if doing digital) is $50, and the physical chip + the carrier board it's on and the demoboard is an extra 100... so if it's for a class, or a group, you could get many tiles and only a few chips--or do it the other way around if you wanted. See app.tinytapeout.com/ for current pricing.
@@nurahmedomar awesome. I juuuust missed the TT08 deadline (left things to last minute, crunched like an idiot, and then failed to get the project in before deadline), but am certain the next run will be announced soon and fully intend to be on that one. Hope to see you there! Cheers
You can purchase just "tiles" -- space on the chip -- and PCBs independently when you reserve your slot on a tapeout. If you go to app.tinytapeout.com/ and hit the "prepurchase space" button, you can see current pricing.
Thanks! A lot :) I'm planning to, have a few in the pipe. Going to do an FPGA thing next, and long-promised pick and place thing too, but they're coming.
What I liked best about about your video? Dunno - everything? Maybe the positive DIY vibe, the "hey, it's chip design but you can do it" spirit and the great overview over the design process. I've been working with chips for more than 30 years now, designing analog and mixed-signal ASICs and teaching stuff, and for me it was a joy to watch the video. I just started dealing with tinytapeout, can't wait for your Magic and xschem videos!
Many thanks, Christian! I'm always happy to hear someone found the video useful or fun, and from someone with a solid background it means a lot. I got sidetracked on an FPGA project I'm prepping to talk about next, but now that summer play is winding down, I want to get going on other ASIC vids and get them out there. Thanks again, cheers :)
Thanks Asako! Really, this video is an outlier on my channel, but I'm more than just an electronics guy and sometimes stumble into something really neat I think is worth sharing--a comment like this lets me know it's actually useful. Cheers!
Yes! I actually worked with a team that are doing analog neural networks for exactly that reason: such low power that they can be embedded everywhere. That was so cool: I'd like to try and figure out which parts I can actually talk about and put out some material on that, it's just so neat.
i have seen the video, and i think the production of an asic is very very very complicated. for this devices, i have learned, the physics is the most important aspect to consider, therefor the eda software is secondary. as of my understanding, if you understand the physics of such devices everything else just consequently follows. but i respect your effort.
I think you're correct. The perfect tool would be absolutely transparent, meaning it would let you get that vision into silicon without being in the way at all. To me, that transparency goes with both how well you can work with the tool, but also how much you can count on it and how many obstacles are in your way. High cost and NDAs are big pains in the butt, at least for me, and an obstacle to learning and just experimenting, which is why I really love the open source stuff and want to get the word out about it.
Ah, sorry you came out with that impression. The fact is: it's true. I could certainly have done a better job explaining things and simplifying it, but in the end, you eventually hit the fact that the universe is a complicated place where you wind up having to make trade-offs, and to make the right ones well... it's a lot to know and process, that's for certain.
Yes. The system is kinda dumb, since components are very involved and bring in lots of bits from lots of places, but the easiest way to do something like that is start a sheet as a starting template, stick whichever component you want to play with in it, and then clone it as many times as you like and/or play around with it (move it etc).
@@Timpot05 Yes :) There are some pretty big and interesting changes coming to all forms of scripting in KiCad 9. I'm going to dive into that in the near future and will be doing some work on the lib--AFAIK this will allow more than just working on dead files, so we can have true interactive scripting while in the program, as we've had on the layout side for a long time now.
I'm often pretty highly caffeinated, that much is certain, but it's true I went a little overboard in this video... I keep trying to find the sweet spot between slow/boring and way too fast, and may have missed it badly here... wish me luck in the next ones, and thanks for the feedback.
Thanks a lot! The neat thing is, with these open tools, the community and the internet, it's magic we can all learn if we want--I love living in the future :)
Thanks a lot, Gary! I took some time off this summer, but am getting back into it and hope what I'm working on now is well received and reaches lots of interested/interesting people. Thanks for the feedback! Cheers
Blast, I'm sorry to hear that--it was a good kit and machine. But time has passed... I don't know of anyone doing the liteplacer, but Stephen Hawes has a really cool pnp, completely open source, that you can build yourself or buy... see github.com/opulo-inc/lumenpnp and www.opulo.io/en-ca/products/lumenpnp
Nice, I like this is possible for a hobbyist. But I think buying a standard IC is quicker. So I don’t understand what kind of ASIC you’re want to create.
Well that's great to hear--just replied to a comment basically saying I was just an overload of jiggly energy and information, hah. Always working on my delivery, really appreciate the feedback :) Cheers!
Many thanks Bradley. I have a few in the pipe before more kicad stuff comes out, but I do want to get into some other neat corners of it this fall. Cheers!
That was great, both highly educational and very entertaining. There was obviously a lot of work behind this and a lot of work going into the video. I really appreciate the end-to-end approach as so much contents jumps right into the middle and spend two hours on one detail. I'll now go hunt for more of your videos. PS: Though I do not have any KiCad experience (and next to no EE background), I still think I could follow all of this. 👍
Hi Tommy! Thanks a lot: it is kindof a load of work to make these, and with the TT06 stuff and some summer play, I took a little break but am now working on the next ones--going to have some FPGA stuff, some KiCad and definitely some deeper dives on specific bits of ASIC land. Thanks for the great feedback, cheers!
Hi, Benjamin! I don't break the thing out every day, but I used it yesterday to get some files onto a flash PMOD to test out an FPGA project (which I just demoed on the MakerCast 30 minutes ago, heh)--such a breeze. And I met the guy behind it at Teardown in Portland a couple of months ago: really nice, and I'm not just saying that 'cause he gave me a backup unit, hah!
Hah, sorry to hear it--2 layer is great if you can get away with it: I used to try really hard for 2 layers because of the price difference but now it's come down so much that it's mostly about turnaround time--if I need something like right now, nothing beats a green two-layer! And, truth be told, I'll sometimes use layer 2 on a 4-layer as a cheat to get by something tricky, but mostly I turn to them for solid, nearby, ground planes. If you need some controlled- (or semi-controlled, anyway) impedance, it's a lot easier and the nearby plane makes them way better on EMC, too.
Jason, that's music to my ears! Thanks so much, really glad you're going to play... warning: can be addictive (it's 3am and I'm still fighting with a bug, but if it works gonna a be pretty coool! maybe some shuteye will help me solve it tho). Thanks again for the comment, have fun :)
Thanks! It's it's for a job, shoot me a message on the psychogenic contact form (psychogenic.com/contact/), otherwise just reply here and gimme an idea what we're looking at :)
@@PsychogenicTechnologies thanks for yout reply :) For a start, I would like to sort pieces very similar to LEGOs (12x12mm of square section, height varying from 12mm to 132mm) from a start location (that would be the equivalent of feeders) to an end location (that would be the equivalent of circuits). Thing is, my "feeders" are 2D plates, very much like LEGO plates, and I have no clue on how to set that up in OpenPNP... Could you help me please?
Been looking for a decent software for chip designing, potentially with the ability to design transistor library for chips smaller than 65 nanometers (or even 2 nanometers node), as I figured why not put together a general purpose RISC-V VLIW processor. Hopefully this IC CAD app will do.
Hello Hoan: I sometimes use geany or even vi but mostly use eclipse (with PyDev), as I like the project management, code completion, etc and I can write in all my fave languages.
@@HoanNguyen-kh7wr oh, actually I can't--I know nothing about this... it's a cadence thing? I've been a pure kicad guy for many years now, so I don't know. But, they make powerful software, I assume there's a way to script things. Just def not with my libraries! heh
Hah, nice. I still have a few AVR ISP programmers, including that big thing with the 12V programming--can't seem to get rid of them... you know, "just in case" but I think it's just nostalgia
Hello Deng! Well, if I've understood your question correctly, the limit is basically the pad frame/packaging, if you're doing fully custom ASICs. At some point you need to get them wirebonded and in a package, so you need to come to some sort of agreement with whoever is doing that. TinyTapeout goes through efabless and used to use the Caravel harness to stick everything in a project area, and now uses openframe instead which gives more space and flexibility with the I/O (there used to be an MCU in there and other stuff, now instead we've dedicated pads to analog, have 24 digital GPIO as well as a few pins dedicated to internal management. There's a webinar on efabless and openframe at ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-eflKFBCsor4.html if you're curious about internals on that front.
@@PsychogenicTechnologies you know im cs student but i took electronic and analog courses + i know digital design but i dont know where to start , for example creating a video encoder + i know nothing about pcb design cause im cs student
@@Jkjk-pu2vt Ah, yeah... well a lot of the most interesting projects have a pretty steep learning curve. Video's tough on a few levels, too. There's a reason the "hello world" of hardware is a blinking LED: it's a super dumb project, but once you've made it you've dealt with everything from selecting components, through programming (and flashing) a microcontroller and wiring things up, and if you do a PCB as well, then you're familiar with KiCad (or whatever) and the process of ordering a PCB. It really is a lot. I think it's well worth it, but I do suggest you start a bit smaller than video... *but* since you are interested, @atomic14 has a bunch of videos on his tiny TV project: I think that might be something worth watching... his channel is: www.youtube.com/@atomic14
@@DaHoKilla problem with building hardware is not only about designing it but verification & optimization.. which only knows after real life prototype 🤷♂️ Meanwhile I feel like these things are for EE, not someone from software
@@thanatosor ah, I’m planning on becoming a E-E so I’m tryna get ahead rn. Currently messing around with KiCad and I found his channel and now im just browsing his videos. Great channel
Hi! Well, the designs are open for these guys, so you could have a poke around on: github.com/TinyTapeout/breakout-pcb/tree/main/ASIC-simulator I'm actually playing with a more general purpose version of this right now, and I think I'll put them online in a way that you can at least have them made easily.
Software is where I started... well, some physics before that, but the point is it's mainly a question of how curious and persistent you are... there's so much info out there (to the point of being a bit overwhelming... but I'd rather that than the desert of data of my youth!). So if you want, just play and explore and you'll have all the EExperience you could ask for :)
I've never known any of this was possible. I freakin love this!! I'm scared of the rabbit hole I'll inevitable find myself going down. Thanks Pat for introducing me to the idea of custom chips!!
I'm really happy to read this--it's one of the main points of making these vids, for me... just showcasing the possibilities opens doors and options! But yeah, a word of warning is that the rabbit holes are so. incredibly. deep. I'm happy about it, but when I got into the analog stuff, had a bit of vertigo, hah. Thanks for taking the time to write, have fun!
dear god i love how quickly you went through the steps. not many things more annoying that listening to an extra 45m of why a creator fell in love with PCB design and electronics before getting to a tutorial lol. subbed.
Well that sure is great to hear! Some people hate it... I dunno, I've tried to moderate my pace a bit, but I figure it's easier to slow down a video than to skip a bunch of interspersed random fluff and filler. Depends on tastes and goals, but glad you liked :-D Cheers
Valeu! That's wonderful to hear, I do hope to make these things accessible or at least expose new possibilities. Thanks a lot for taking the time to comment, cheers.
This reminds me of 6 years ago when i was trying to figure out how to even open magic, it was not that easy. After a while i figured it out. Cool stuff.
Ah, well so you've been through it as well: good job, oof :-D What I really needed was a) a little perseverance and b) to actually go through the tutorials... it was just a bit too alien to "pick up" like I usually do with most software (since, it seems, we've come to some sort of agreements in terms of UI that I'm leaning on, hah)
No but fr, I just somehow feel like we got the same curios type of mentality about hardware. Is like , I be thinking if it could be possible to go further with HDL design but using only open source tools, and bam!! There you go. Please keep up the good work of spreading knowledge of free.
Awesome! Am glad to hear it answered some of your Qs and that you actually happened upon it :-D And yeah, I'm curious on a number of fronts and tend to hop around a lot... funny thing is that, by putting out these videos, I'm learning that there aren't tons of us but I'm certainly not alone in my eclectic hardware fascinations--so cool!
I know! I think, with this, we're finally getting pretty close to the bottom. The good news is: there's *tons* to explore and play with down there, so lots of fun to come :-D
Yes! I mean the open tooling, if you're going to be doing mixed-signal/analog, has some history to it as well (see my analog asic video) but it's alive and well maintained... so, some work to be done but it's happening and the openness means we can even help it along if we want. I think the real limiting factor may be the available PDKs, for now. I see microwind supporting things like FinFET/nsFET which, AFAIK, just aren't things any of the currently open processes support. But, my guess is more PDKs will become available and the open tooling is certainly a nice thing to have at your disposal.
Your videos are such a blessing - thanks for taking the initiative. I'm learning a lot about stuff i skipped since HS and it's encouraging to sharing own knowledge!
Suggestion, use white (light) background, with black text/wires. They always work better and easier to watch. This is basic UI, and there are a reason ink are black and paper white. What you use on your own doesn't matter, use as you want. If you want people to read the contents on the screen, light background and dark/black forground is just better.
I'd like to say I left all the interfaces as you'll find them by default, to make things realistic, but in reality I didn't even think of it. It's a good idea and I'm pretty certain there's an easy way to get xschem out of "darkmode", so I'll try to do that next time. As for magic, I never did find an easy way to play with the palette on that one but at least it's more in line with what you're saying. Thanks for the suggestion! Cheers
It has something of a learning curve, that's for sure. I'm used to it, am a big fan now and can hardly remember when I started, but I came to KiCad from EAGLE and there were lots of things I found pretty weird and difficult.
I feel like an idiot after trying out this library. I've spent like 6 hours now just trying to delete a property from a specific component. I think it's not working because I'm deleting a copy created in Namedelementcollection instead of the underlying element collection. Seems like namedelementcollection creates a new dict called _named and I can use elementRemove on that... but it leaves the underlying list of elements unchanged. Simialar problem trying to use delete(). I'm sure I'm just missing something obvious but it seems impossible to actually delete anything.
hm, I'll have to check this out... have a few pending TODOs and issues to process. Pretty sure I had *delete()* working though... however properties are weird in the sch file, maybe there's a pending bug.
@@PsychogenicTechnologies I did end up figuring it out. Deletions aren't reflected in python besides setting _deleted for removed objects. They still show up in the REPL and you can still do operations against them in a script. They just aren't written back to the tree/file when you pass the object back to write.
@@MrLareneon oh! So if you'd write it out and read it back, they'd be gone, but otherwise they hang around in Python? Hm. I really can't remember why that might be the case
@@PsychogenicTechnologies I can submit an issue with an example script if it would be helpful. But my use case now works fine so only if you consider this a bug.
I kinda left the PnP coverage behind, uncertain how much interest there'd be--but I've had one in the queue about the feeders (often a huge pain point for me), so will try to at least get that one out.
I am so glad that I found your channel. Your presentation is so welcoming and you are covering topics of extreme interest to me, and doing so with tools that are functional in a Linux ecosystem.
Hello! Just saw this and your other comments--thank you so much! You know, I mostly just cover what I find interesting/particularly useful and, to me, they form a coherent whole... but, let's say it's not everyone who would find the eclectic mix (yeah, it's all electronics stuff, sure, but bounces around a good deal from level to level) to be a good match for their interests. So I really appreciate it :-D
Super cool! I did my thesis designing a phase detector for a digital phase-locked loop in Cadence; however, it never moved beyond simulation. This video inspires me to try one day bringing it into reality 🤩.
Yeah! You get far with sim, but there's something I find magical about getting these things you've designed in your hands. About 2 months until the TT08 deadline--maybe a project for rainy summer days :) Thanks for your comment, Jeremiasz. Cheers!