FPGA Design | Beyond dev boards: your own custom PCB

  Переглядів 5,903

Psychogenic Technologies

Psychogenic Technologies

3 місяці тому

Dive into FPGA schematic design, moving beyond the comfort of development boards to create our very own custom PCB. OPEN hardware, schematic is online: check links below.
This video is perfect for anyone new to integrating FPGAs into their circuits. I'll guide you through the process as I design and layout a board centered around the iCE40 UP5k, as a drop in replacement for the TinyTapeout ASIC carrier boards.
The goal is to have a PCB with its own FPGA and supporting components, and set it up in a way that we can get a bootloader running that will allow for easy updates through USB, without any extra hardware or external programmers.
The idea here is to provide a means to iterate designs, right on the tinytapeout demoboards, prior to actually taping out. Though this application is very specific, it's easy to go from this circuit to pretty much any board built-around or including an FPGA.
The schematic is open hardware and (a version that's already been improved since this video was recorded) is available now.
The schematic may be viewed in
github.com/psychogenic/carave...
and the entire project is available in that repository, at
github.com/psychogenic/carave...

КОМЕНТАРІ: 36
@Clark-Mills
@Clark-Mills 3 місяці тому
Slightly over my head but invaluable information for all the people of the planet, thank you.
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
Clark! Thanks so much! Even if this is over your head right now, you do seem to have an interest: I do start off with some assumptions about proficiency with CAD and such, but please do let me know if anything in here wasn't actually clear. I spend the time making these in the hopes they open new doors for others, but it's hard to keep a beginner mind after a while in something.
@Clark-Mills
@Clark-Mills 3 місяці тому
@@PsychogenicTechnologies Seriously concentrated good stuff. I'm an old UNIX/Linux dude in his 60's but have just recently been playing with the Ice 40 stick 1k USB board. FPGAs have been on my bucket list... :) TinyTapeout also seems like a highly worthy project and this project seems like a perfect companion to it. A big "Thank You" again.
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
Well *nix is a really great place to start with this, 'cause a whole lot of us are too and the tooling is plentiful for us :) FPGAs are a really nice place to start--if you don't know it, the oss-cad-suite (github.com/YosysHQ/oss-cad-suite-build) has a whole lot of useful tools. If you'd like to come into from the Python side--which I think is really nice--you can see my videos on the neptune project and @RobertBaruch has some really nice playlists using nMigen (Amaranth's old name, see www.youtube.com/@RobertBaruch/playlists ) that go deep into both the dev and the formal verification if you want to get fancy. Once you've played with a few FPGA projects, regardless if verilog or amaranth, you'll be more than ready to tapeout on real silicon (crazy how much we can do, here, living in the future!). Have fun!
@flomojo2u
@flomojo2u 3 місяці тому
Thanks for the video! The subject matter wasn't new to me, but what I really enjoyed was seeing a KiCAD power-user at work. There are so many cool shortcuts and tricks, and they keep adding more, so it's great seeing some of them in action.
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
Thanks!! Ah, kicad--I'm finding there are some corners of my beloved cad that aren't all that well covered, so have decided I'm going to try and make a few focused on particular bits, and maybe one walkthrough that goes from A-Z--have another little FPGA project in mind for that one. Should be fun :) Thanks again for the feedback, cheers.
@CoruscationsOfIneptitude
@CoruscationsOfIneptitude День тому
Is it possible to create a virtual processor/fpga, a software processor?
@Cerololo
@Cerololo 3 місяці тому
Thank you for open source. Good info.
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
It's my great pleasure: I learn from many OSS projects and love when I get to share some myself. Thanks for the feedback :)
@markpitts5194
@markpitts5194 3 місяці тому
Looking forward to the rest of the series. I'm a bit older, and my split ends are a lot worse.
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
hahah, yeah haven't been the best at maintaining the mane! For the series: I've got the boards and made some changes to the schem (which are reflected in the released version) and going to focus just on the bootloader in the next one. It's a really cool system, works a treat and is easy to setup. Will whip up the presentation soon.
@finnbin1
@finnbin1 3 місяці тому
Cool ... looking fwd to next episode....
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
Thanks! Next is in the works: got the bootloader running and it's so sweet! :)
@dfloper
@dfloper 26 днів тому
Great video. Keep making these.
@damny0utoobe
@damny0utoobe 18 днів тому
Agree. Exactly what I was looking for designing a FPGA board
@PsychogenicTechnologies
@PsychogenicTechnologies 17 днів тому
Thanks! I actually have a couple of FPGA-related boards I've designed and fabbed but not yet assembled tested. I'll be documenting that process as well and, when I've got some results, will put out a vid. Cheers!
@yoctoflop
@yoctoflop 3 місяці тому
Sweet timing. Just finished up the HDL for a project and need to make a board for it
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
Wow, perfect. Are you going for an iCE40? If you followed along, do go and check the links above for the actual project repo and schematic: I've advanced in there since putting out the video and, though a lot of it is related to the specific application (the TT demoboards), it's worth looking at the newer stuff. And I was crunched while doing this: if/when I re-work it for real I'd add some ESD on the USB lines and a bit of stuff like that. Also, the TinyFPGA boards might be good inspiration as well. Finally, I have the bootloader running now and it's awesome, will try to record and edit that really quick so keep an eye out, I think it's worth it. Cheers!
@yoctoflop
@yoctoflop 3 місяці тому
@@PsychogenicTechnologies It's actually for an Efinix Trion T20, but the general concepts are still helpful. Their Efinity IDE is barebones but capable, and my design (1500 logic elements) generates a bitstream fairly quickly. They have pretty good documentation and although their forum loads slowly, they tend to be pretty helpful over there. Certainly was good enough for an FPGA "advanced beginner" like me to create a functional design.
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
Hm, interesting! Haven't used those but after seeing yosys has a "synth_efinix" command, I'm curious. If you have an eval board or dev kit you would recommend for these, let me know.
@atomic14
@atomic14 3 місяці тому
I used an FPGA for my final year project - it only had 320 logic blocks - managed to use every single one of them. Tempted to recreate it with modern kit.
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
Yeah, go for it! Your challenge now is to use every one of the 5280 in the UP5k! hah
@E4tHam
@E4tHam 3 місяці тому
Nice!
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
Thank you, Ethan. The feedback is much appreciated :)
@adamarzo559
@adamarzo559 3 місяці тому
A few years ago I made some pcb's to flash some led's and it was cool, things happened but now I want to get back into it and I'm really interested in the whole arm32 thing and want to make my own boards because I think it's extremely cool and I had fun routing my board back when I did it for the leds. However, I'm still so very lost when it comes to things like smoothing caps or pull up/down resisters. Would taking a beginner course on electrical engineering and going from there benefit me in learning all of this?
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
Short version is my opinion is: yes, go for it. We're very lucky now, with so many open source tools and projects and experts willing to share what they know. Back in the day when I started, I had no one to turn to and was stumped on many points, couldn't figure out which components/values actually mattered and which ones were amenable to a wider range of selections, and generally had a very slow start because of it. If you're talking building a whole SoC from scratch, I think that's a very worthy goal, maybe a lot to chew from the start (e.g. dealing with RAM and even just the BGA packages for CPUs can be a something of challenge). I'd recommend you start playing immediately, keeping the barrier to entry low, by leveraging open tools like Kicad, and say relatively simple microcontroller circuits to start. @PhilsLab has some really excellent tutorials. If you can follow along with, say, ukposts.info/have/v-deo/mYaGpZd5Z39-yWg.html or ukposts.info/have/v-deo/ppt5eqWvnGae04k.html you'll see that he shares lots of expertise along the way, specifically about things like decoupling and such. From there, you'll be less rusty, have some solid basics and a good idea of what exactly still stumps you and can decide if going for a course would be worth it (and which one). Good luck and have fun!
@EuphoricDan
@EuphoricDan 2 місяці тому
The plugin that you're using @ 10:06, what is it? I'd like to try it myself
@PsychogenicTechnologies
@PsychogenicTechnologies 2 місяці тому
Yeah, it's really cool: "interactive HTML BOM", available through the plugin manager, super simple to install and use.
@EuphoricDan
@EuphoricDan 2 місяці тому
@@PsychogenicTechnologies Sweet, installed. Would you mind if I appropriated your FPGA design with some usecase-appropriate modifications and put it on an inductive load controller I'm making for a personal project (not a commercial product). I'm a bricklayer that's been teaching myself EE for about a year so that I can build some components I need for a larger invention. The specific board I'd use it on is a 2kamp/12v inductive load controller with active flyback control (parallel mosfets instead of a freewheel diode). I need an FPGA to handle the switching logics and tbh I'm not good enough yet to start from scratch with my own FPGA design.
@PsychogenicTechnologies
@PsychogenicTechnologies 2 місяці тому
​@@EuphoricDan Oh, there's hardly any secret sauce in there, and I'd invite you to look at it, as well as the TinyFPGA, UPDuino, and other open source projects as sources of inspiration. Main question would be: why not start with a pre-built module--there are tons--do you PoC on the part that's really specific to your requirements, see everything working, figure out if anything needs improvement and then start doing integrated solutions. I find it's a good way to keep my attention on the wheels that don't exist yet, when ramping up. Have to tell you: my heart skipped a beat when I read "teaching myself EE" followed by "2k Amp"--whoah! Starting a little steep there (48V is high V in my life, and 50 Amps is getting way up there--I've been happy in low power land, mostly). Going to assume you're a sane and responsible adult there, but still: keep one hand in your pocket and be careful. oof.
@jstro-hobbytech
@jstro-hobbytech 3 місяці тому
My only issue with buying stuff from professional makers is the price. There are so many incredible makers using tindie to sell a trinket or bauble for half a week's pay. I ununderstand overhead and how economies of scale work but most people do not need a 10 thousand dollar pnp machine. I don't say that because you have one. I'm sure you need it.
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
I hear you on that. I've actually been thinking of putting stuff on Tindie lately, and the overhead of making and dealing with that stuff really is huge. However, I think in many cases, it comes down to patronage: a way to support a creator you would like to see keep producing content and widgets, and get something cool out of it. If bitluni or whoever is making a thing, and yeah it's way more expensive than the equivalent on aliexpress, I might still get it. To be part of the community, to show that I appreciate what they're doing, to make sure they keep doing it...stuff like that. I'd much rather get a tool or even a blinky module rather than another coffee mug while doing so. Anyway, for my part, I'm glad I can afford to provide information and content I think is useful, and there's never an obligation to pay to play.
@jstro-hobbytech
@jstro-hobbytech 3 місяці тому
@PsychogenicTechnologies cool. I apologize I came off as abrasive. There's this software enabled breadboard on there that is absolutely incredible but it's 299usd and I live in Canada so it would be 475 by the time I got it. I'm really close to saying frig it any buying it haha. I just bought a new 7 string headless guitar, laser cutter/engraver, expensive 3d printer. I also send learning kits to people in the US or Canada for free. No strings attached other than if I give them a decent soldering station and a brymen meter I'd like to pay the shipping to have them back if they don't feel the hobby is for them. They can keep the rest but it lowers the burden on me. I enjoy it immensely as this hobby saved my life, along with music. I'd I can enable one person find a similar passion out of all the people I send kits to then I'm happy.
@PsychogenicTechnologies
@PsychogenicTechnologies 3 місяці тому
​@@jstro-hobbytech ugh, don't get me started about being in Canada: the exchange rate's pretty awful and then extra shipping costs, and then the duties thugs come in and want their tribute on top (NAFTA? pffft, that free trade stuff was never for you, small fry). Ugh. The learning kits: wow, ok, that's some dedication. That's really awesome. Did something similar, the *one* time. I can see we have similar perspectives on this: it's an "ikigai" thing to me, and I hope that I can enable others to grab that spark too. Do I see some custom made guitar pedals in your future? heh, have fun with all the tooling, it's great to live in the future :)
@jstro-hobbytech
@jstro-hobbytech 3 місяці тому
@@PsychogenicTechnologies haha yea. I ordered a bunch of germanium diodes from the eastern block haha. I have a friend locally who is a retired engineer who tunes pianos for a living. I'm going to share my gear with him and we're going to start designing pedals and some other stuff. I hope you're a fan of the Individual Thought Patterns album? If you know, you know hahaha. I usually send 2 kits away on a good month. I can comfortably send 2 good ones but I go 2 months without anyone looking for one. If anyone ever emails you and can't afford to get started, just give them my channel name and tell them to email me. I don't have any strings attached and never mention money. It's my honor to help people.
@jstro-hobbytech
@jstro-hobbytech 3 місяці тому
@@PsychogenicTechnologies I have ptsd brother and it makes me ramble. Pay it no mind unless I say something offensive (by mistake I assure you) and call me out on it. Personal growth is something I focus on heavily when dealing with my mental ilness. Accountability helps me alot.
Cheap Pick and Place + OpenPnP: CHM-T36VA upgrade guide
18:06
Psychogenic Technologies
Переглядів 21 тис.
Use the very attractive new ATTINY chips for your projects
14:34
Andreas Spiess
Переглядів 192 тис.
Помилка,  яку зробило військове керівництво 🙄
01:00
Радіо Байрактар
Переглядів 436 тис.
Build Your Own Drone Tracking Radar:  Part 1
20:08
Jon Kraft
Переглядів 415 тис.
Top Fifteen Mistakes People Make When Designing Prototype PCBs
12:26
Cosplay Light and Sound
Переглядів 121 тис.
My Top 10 PCB Design Tips
6:53
Dustin Watts
Переглядів 55 тис.
Software Emulators vs FPGAs
27:08
What's Ken Making
Переглядів 264 тис.
Get Started With FPGAs and Verilog in 13 Minutes!
13:30
Doctor Volt
Переглядів 28 тис.
Which ESP32 is Best for Your Project?
11:12
Predictable Designs
Переглядів 15 тис.
Making Professional PCB at Home
12:04
DD ElectroTech
Переглядів 1,2 млн
Has Generative AI Already Peaked? - Computerphile
12:48
Computerphile
Переглядів 147 тис.
FPGA/SoC Board Bring-Up Tutorial (Zynq Part 1) - Phil's Lab #96
30:15
Phil’s Lab
Переглядів 51 тис.
Arduino in a commercial product?
7:17
Predictable Designs
Переглядів 16 тис.
Creepy Samsung Alarm cannot be turned off 😱🤣 #shorts
0:14
Adani Family
Переглядів 972 тис.
САМЫЙ дешевый ПК с OZON на RTX 4070
16:16
Мой Компьютер
Переглядів 93 тис.