FPGA Concepts Part 1: Ye Olden Days

Sdílet
Vložit
  • čas přidán 1. 08. 2024
  • How do you program an FPGA? What does the concepts even mean? How do FPGA programming languages differ from software programming languages? These are the questions we'll tackle in this series.
    The first part deals with logic design in the pre-HDL and FPGA world. How to build an efficient circuit.
    I want to thank all of my Patreaon supporters, and especially my BBC Micro level supporters:
    Yehuda T. Deutsch
    Support the project on Patreon: / compusar
    We also have a Discord server. You can join it by following the following link: / discord
    Table of contents:
    00:00 - 7 segment decoder (on a breadboard)
    00:57 - Truth table
    04:04 - Boolean algebra
    06:42 - Manual optimizations
    09:26 - Karnaugh map
    14:04 - Undefined values
    21:06 - ROM
    23:53 - ROM downsides
    27:17 - ROM upsides
  • Věda a technologie

Komentáře • 20

  • @Thats_Mr_Random_Person_to_you
    @Thats_Mr_Random_Person_to_you Před 6 měsíci +2

    Really like this. Good overall introduction to the base concepts and first principles

  • @TheHardwareNerd
    @TheHardwareNerd Před 6 měsíci +1

    Currently in a digital circuits class and your video helped me clarify hamming distance in karnaugh maps. I didn’t correlate something that I was taught for error correction techniques to something that was lost on me earlier.
    Thank you for your video!! I am really excited for this series, FPGA is where I want to be.

    • @CompuSAR
      @CompuSAR  Před 6 měsíci +1

      I'm really glad you found it useful. Truth be told, beyond the very next video, I'm not yet sure where I want to go with this series. These two videos are mostly answers to questions I've received (some phrased as critique). I don't have a set plan for the rest of the series.
      Also, if you liked what you found here, tell your friends :-). I could certainly use the traffic.

  • @timthompson468
    @timthompson468 Před 6 měsíci +2

    Great video. You cover a lot of basic ground in an entertaining way. I just started getting into FPGAs with the BASYS 3 board. Looking forward to Part 2. Thanks.

    • @CompuSAR
      @CompuSAR  Před 6 měsíci

      I'm really glad you liked it!

  • @ebrahimkarimi1388
    @ebrahimkarimi1388 Před 5 měsíci +1

    Nice and complex 😃 thanks🙏

  • @nader2560
    @nader2560 Před 5 měsíci +2

    😢 I was waiting for the FPGA part, I almost cried when at the end he said we'll talk about FPGA in the next video 😢

    • @CompuSAR
      @CompuSAR  Před 5 měsíci

      The only good news here is that I'm already working on that next video.

    • @nader2560
      @nader2560 Před 5 měsíci

      @@CompuSAR awesome man! Thank you!

    • @CompuSAR
      @CompuSAR  Před 5 měsíci

      Second part will go up tomorrow.
      Patreon supporters got to see it a week ago.

  • @conorstewart2214
    @conorstewart2214 Před 4 měsíci

    Something you missed with the Karnaugh maps is that the loops height and width need to be powers of 2, so in most cases, 1, 2 or 4, you couldn’t use a loop that is 3 units long.

    • @CompuSAR
      @CompuSAR  Před 4 měsíci

      I don't get it. I literally say just that at 27:52, and I never form a group that does not satisfy that condition. How did you conclude I missed it?

  • @damonguzman
    @damonguzman Před 5 měsíci

    This is a great video! A quick tip, if you increase the quality of the production, you have the content that will easily reach 300k+ subscribers. Maybe a better microphone and some animations instead of hand drawn on a journal and you have BANGER content! Also, don't forget those sweet sweet thumbnaisl!

    • @CompuSAR
      @CompuSAR  Před 5 měsíci +1

      I have a decent enough mic. I just need to figure out how to configure it better. My next video will be better on that front (on second thought - this one video was recorded with the camera's built-in mic).
      As for animations, if you go back just a video or two, you'll see plenty of those. I'm not sure the effort to result ratio is worth it. Past experience has shown that that's not what brings in the subs or the watch hours. I am curious to know how you'd improve the thumbnasils (which I can only assume are something you stick in your nose :-P )

  • @m1geo
    @m1geo Před 6 měsíci

    Great recap for me from university many years ago! I work with FPGAs regularly, and still enjoy these kind of first principles.
    I was wondering if you'd expand to "don't care" (X) states in the Karnaugh map.
    FPGA wise, another interesting step from the ROM example is to connect the outputs back to the input. Great for explaining FPGAs, and also Hazards, and why feedback is a bad idea! 😂

    • @CompuSAR
      @CompuSAR  Před 6 měsíci +1

      Since synthesis tools won't really let you create combinatorial loops, I don't think that's the interesting aspect of hazards. I was more interested in something almost everyone try to do, which is use comb logic as clock source to FF (sensitivity to non-blocking assignments). In Vivado you get an error saying you can't do that, but no real explanation as to why.

    • @m1geo
      @m1geo Před 6 měsíci +1

      @@CompuSAR Very fair, yes. Possibly my own interests polluting the main story! Either way, I am enjoying the content! 😍

  • @thebrakshow7415
    @thebrakshow7415 Před 6 měsíci

    Any shopping list incase we want to follow along at home? I've been wanting to mess with FPGAs for a long time and never got around to doing it. The last time was many many years ago in college.

    • @CompuSAR
      @CompuSAR  Před 6 měsíci +1

      I have no idea how deep this series will get and how long it'll run. In any case, things covered here are probably not going to get too specific to any one FPGA. This is about concepts.
      With that said, the channel's main project is currently done on Xilinx FPGAs, and I'll _probably_ soon be switching to this board: www.aliexpress.com/item/1005005961230338.html
      It is relatively cheap, so it's not a horrible choice for first FPGA regardless of my work with it. Also, bear in mind you'll need some way to program it, which for Xilinx is recommended using a JTAG they sell.

    • @YoutubeBorkedMyOldHandle_why
      @YoutubeBorkedMyOldHandle_why Před měsícem

      @@CompuSAR QMTech makes good, relatively cheap, FPGA boards. I have 2 Altera boards from them; a core Cyclone V board, which was well under half the price of my Terrasic Cyclone V board, and also a Cyclone IV development board. They don't seem to have either of these exact boards anymore, however pretty much any of their boards is perfectly fine.
      Other boards people might want to consider are the Tang Nano series. These use Chinese (Gowin) FPGAs. The documentation is somewhat lacking, but it's available in English and they have lots of examples. Also, the community version of the Gowin software is really quite good, so it's not too hard to get up and running. The Tang Nano 9k and Tang Nano 20k, are the most popular. They sell for about $15 and $35 respectively. These boards also have a JTAG programmer built in. I was a bit nervous when I bought mine, but I have to say, I'm really impressed.