FPGAs for Beginners
FPGAs for Beginners
  • 48
  • 293 282
AXI-Stream Arbiter example
Hi, I'm Stacey, and in this video I go over my AXI-Stream Arbiter example
Collaboration: th-cam.com/video/78tkdc6Lq_8/w-d-xo.html
Toolbox: github.com/HDLForBeginners/Toolbox/tree/main
Ethernet video: th-cam.com/video/zTsHbEIOM2A/w-d-xo.html
UART video: th-cam.com/video/hVMeU2ThgNw/w-d-xo.html
AXI Stream video: th-cam.com/video/GyYmSZZor1s/w-d-xo.html
Generate statement video: th-cam.com/video/3tUp621Lf7o/w-d-xo.html
FPGA essentials (sync/async logic): th-cam.com/video/9umFgzntXTw/w-d-xo.html
0:00 Intro
2:38 Arbiter introduction
5:48 Arbiter top-level
21:33 Outro
Buy me a coffee to support my channel: www.buymeacoffee.com/FPGAsforbeginners
มุมมอง: 1 218

วีดีโอ

Collaboration with Robert Feranec and new open source SystemVerilog toolbox
มุมมอง 1.9K21 วันที่ผ่านมา
Hi, I'm Stacey, and in this video I talk about my collaboration with Robert Feranec and new open source SystemVerilog toolbox Collaboration: th-cam.com/video/78tkdc6Lq_8/w-d-xo.html Toolbox: github.com/HDLForBeginners/Toolbox/tree/main Ethernet video: th-cam.com/video/zTsHbEIOM2A/w-d-xo.html UART video: th-cam.com/video/hVMeU2ThgNw/w-d-xo.html Buy me a coffee to support my channel: www.buymeaco...
The Critical FPGA Basics: Always blocks, Inferred latches, and why the FPGA needs a clock, anyway?!
มุมมอง 3.2K21 วันที่ผ่านมา
Hi, I'm Stacey, and in this video I talk about everything from asynchronous logic, why the FPGA even needs a clock, and inferred latches! 0:00 Intro 0:38 Always blocks 8:27: Why the FPGA needs a clock, and static timing analysis 13:00 Registers and their function 16:00 Synchronus and Asynchronus logic 18:40 Asynchronus loopback paths and inferred latches 23:50 Avoiding inferred latches 27:05 Su...
5000 Subscribers! Answering your frequently-asked questions!
มุมมอง 1.9K10 หลายเดือนก่อน
Hi, I'm Stacey, and in this video I answer some of your questions! Online language learning: hdlbits.01xz.net/wiki/Main_Page chipdev.io/ edaplayground.com/ www.makerchip.com/ Risc-V courses: www.edx.org/learn/computer-science/the-linux-foundation-introduction-to-risc-v www.edx.org/learn/design/the-linux-foundation-building-a-risc-v-cpu-core www.edx.org/learn/computer-programming/the-linux-found...
Free FPGA training and resources!
มุมมอง 5K10 หลายเดือนก่อน
Hi, I'm Stacey, and in this video I share some free webinar series! Links: bltinc.com/homepage/xilinx-training/blt-webinar-series/ www.doulos.com/webinars/ www.intel.com/content/www/us/en/developer/learn/webinars.html Buy me a coffee to support my channel: www.buymeacoffee.com/fpgasforbeginners
Zynq Part 3: Combining my own HDL with the Vivado block diagram!
มุมมอง 8K11 หลายเดือนก่อน
Hi, I'm Stacey, and in this video I show how I add my own logic beside the block diagram in Vivado. Github Code: github.com/HDLForBeginners/Examples/tree/main/ZynqSeries Buy me a coffee to support my channel: www.buymeacoffee.com/fpgasforbeginners
ILA in a Zynq: View signals in hardware!
มุมมอง 6Kปีที่แล้ว
Hi, I'm Stacey, and in this video I show you how to add an ILA in a zynq! (Also works for other Vivado-based Xilinx devices! Buy me a coffee to support my channel: www.buymeacoffee.com/fpgasforbeginners
Zynq Part 2: Zynq Vitis Example with PL Fabric GPIO and BRAM
มุมมอง 14Kปีที่แล้ว
Hi, I'm Stacey, and in this video I go over part 2 in my zynq series, using Vitis! Part 1: th-cam.com/video/UZ3FnZNlcWk/w-d-xo.html Github Code: github.com/HDLForBeginners/Examples/tree/main/ZynqSeries Buy me a coffee to support my channel: www.buymeacoffee.com/fpgasforbeginners
Zynq Part 1: Vivado block diagram (no Verilog/VHDL necessary!)
มุมมอง 22Kปีที่แล้ว
Hi, I'm Stacey, and in this video I show the vivado side of a basic Zynq project with no VHDL/Verilog required. Not Sponsored, I just use this software a lot! Download vivado here: www.xilinx.com/support/download.html Buy me a coffee to support my channel: www.buymeacoffee.com/fpgasforbeginners
Is chatGPT going to take my job? How well can chatGPT write Verilog?
มุมมอง 2.5Kปีที่แล้ว
Music and Editing by @CapoXProductions Buy me a coffee to support my channel: www.buymeacoffee.com/fpgasforbeginners
AXI Part 3: AXI-Lite testbench (briefly)
มุมมอง 2.2Kปีที่แล้ว
Hi, I'm Stacey, and in this video I go over the axi tb briefly First 2 parts: th-cam.com/video/p5RIVEuxUds/w-d-xo.html th-cam.com/video/y0z5Cg4gp6k/w-d-xo.html Github Code: github.com/HDLForBeginners/Examples/blob/main/axi_lite/ Buy me a coffee to support my channel: www.buymeacoffee.com/fpgasforbeginners
AXI Introduction Part 2: AXI-Lite state machine example explained!
มุมมอง 4.8Kปีที่แล้ว
AXI Introduction Part 2: AXI-Lite state machine example explained!
AXI Introduction Part 1: How AXI works and AXI-Lite transaction example
มุมมอง 16Kปีที่แล้ว
AXI Introduction Part 1: How AXI works and AXI-Lite transaction example
Reading from and writing to file: My PDM testbench from start to finish.
มุมมอง 2.3Kปีที่แล้ว
Reading from and writing to file: My PDM testbench from start to finish.
When and how to use the Multiplier IP core
มุมมอง 4.2K2 ปีที่แล้ว
When and how to use the Multiplier IP core
FPGA Audio to my PC over Ethernet! PDM Microphone and CIC filter explained!
มุมมอง 8K2 ปีที่แล้ว
FPGA Audio to my PC over Ethernet! PDM Microphone and CIC filter explained!
Handling Ethernet FIFO overflows in SystemVerilog! How to keep packets intact above line rate!
มุมมอง 8K2 ปีที่แล้ว
Handling Ethernet FIFO overflows in SystemVerilog! How to keep packets intact above line rate!
Receiving packets over Ethernet using Python
มุมมอง 6K2 ปีที่แล้ว
Receiving packets over Ethernet using Python
How to use the clocking wizard IP: creating a 50Mhz clock from 100Mhz
มุมมอง 7K2 ปีที่แล้ว
How to use the clocking wizard IP: creating a 50Mhz clock from 100Mhz
A quick and easy Ethernet Frame state machine, explained from start to finish!
มุมมอง 10K2 ปีที่แล้ว
A quick and easy Ethernet Frame state machine, explained from start to finish!
Digilent Nexys A7-100T Review!
มุมมอง 2.7K2 ปีที่แล้ว
Digilent Nexys A7-100T Review!
My Linux + Vivado development environment!
มุมมอง 3.7K2 ปีที่แล้ว
My Linux Vivado development environment!
Bloopers
มุมมอง 8042 ปีที่แล้ว
Bloopers
Flashing a LED with Vivado and a Nexys A7 FPGA board: Step by step walkthrough!
มุมมอง 7K2 ปีที่แล้ว
Flashing a LED with Vivado and a Nexys A7 FPGA board: Step by step walkthrough!
Setting up a Nexys board in Linux!
มุมมอง 2.4K2 ปีที่แล้ว
Setting up a Nexys board in Linux!
Polynomial example part 2! Final window code with pipelining!
มุมมอง 2.1K2 ปีที่แล้ว
Polynomial example part 2! Final window code with pipelining!
Tips for working on a engineering design team as an intern or new graduate!
มุมมอง 1.9K2 ปีที่แล้ว
Tips for working on a engineering design team as an intern or new graduate!
Fixing failed timing, a practical example in verilog!
มุมมอง 4.9K2 ปีที่แล้ว
Fixing failed timing, a practical example in verilog!
FPGA unboxing and chat: Why I started this channel and future plans!
มุมมอง 1.5K2 ปีที่แล้ว
FPGA unboxing and chat: Why I started this channel and future plans!
Fixed point basics in Verilog for Beginners! Continuation of polynomial example.
มุมมอง 7K2 ปีที่แล้ว
Fixed point basics in Verilog for Beginners! Continuation of polynomial example.

ความคิดเห็น

  • @edkemp6287
    @edkemp6287 ชั่วโมงที่ผ่านมา

    afrikaans is my favorite accent

  • @martinnjoroge6006
    @martinnjoroge6006 วันที่ผ่านมา

    The block design or Altera's Platform Designer are very impressive tools to design. However, knowing that a microblaze/nios connects to an interrupt controller for example is what I still don't understand. Do you need to take a course/learn about computer architecture to understand all those blocks or do the vendors provide them. I feel like if you told me to design LED toggling, I wouldn't know which blocks to connect or how to connect them even though I know where to click on the software to access them. How would I go about that?

  • @canadianrepublican1185
    @canadianrepublican1185 2 วันที่ผ่านมา

    You should consider teaching as a job.

  • @labgsm8185
    @labgsm8185 3 วันที่ผ่านมา

    TOP

  • @labgsm8185
    @labgsm8185 3 วันที่ผ่านมา

    Thank you

  • @Chris-hi2hn
    @Chris-hi2hn 4 วันที่ผ่านมา

    Hi Stacy, I just discovered your channel. I was wondering if you have an example streaming UDP data to a remote host. I'm trying to receive the stream with a python socket, and account of dropped packets (where I'm using a Zynq to transfer the data). Thank you so much!

  • @sathviknandyala8413
    @sathviknandyala8413 4 วันที่ผ่านมา

    For XBram_WriteReg as well as for ReadReg, why you have used device_id instead of base_address, please answer as i am going crazy abt it

  • @emiliomartineziii2980
    @emiliomartineziii2980 5 วันที่ผ่านมา

    Is there a video showing how to use a pmod pin as an external clock? Sometimes I think I works for some pins and not for others and I dont completely understand why

  • @cucciolo182
    @cucciolo182 7 วันที่ผ่านมา

    THIS WAS ONE YEAR AGO ... WHAT ABOUT NOW ?

  • @dongwonlee1372
    @dongwonlee1372 8 วันที่ผ่านมา

    Thank you for useful video !! ^^

  • @MrKrishnanandaKHegde
    @MrKrishnanandaKHegde 8 วันที่ผ่านมา

    When you hit Run and Launch, where actually is the program running?

    • @FPGAsforBeginners
      @FPGAsforBeginners 8 วันที่ผ่านมา

      On the processor on my Zybo board!

  • @abhisheksingh-db4kk
    @abhisheksingh-db4kk 9 วันที่ผ่านมา

    Can you share basic videos of explaining the inter clock and intra clock issue

  • @trevinvaughan5411
    @trevinvaughan5411 9 วันที่ผ่านมา

    Finally, a tutoral on Xilinix SoC's that makes sense.

  • @popuassmf
    @popuassmf 9 วันที่ผ่านมา

    Don't know if it is easy to do but can you make videos with higher resolution? I mean it's a bit hard to read the code in 720p. Overall it's a nice lecture, good job!

  • @brajitpaul5679
    @brajitpaul5679 9 วันที่ผ่านมา

    I absolutely love how involved you are throughout. Amazing.

  • @likeshareandsubscribe7536
    @likeshareandsubscribe7536 10 วันที่ผ่านมา

    great

  • @TahaAlars
    @TahaAlars 10 วันที่ผ่านมา

    Nice video

  • @cccmmm1234
    @cccmmm1234 10 วันที่ผ่านมา

    Hands up everyone who has a favorite state machine! 👍

  • @zoidbergVII
    @zoidbergVII 10 วันที่ผ่านมา

    Interesting video, the idea of axi was alien to me until yesterday when I binged your videos. I understand it more and it makes a lot more sense for how more complex FPGA designs can exist. A question I do have though, when it comes to design architecture. If we look at your microphone to udp example. If you wanted to have a programmable gain or frequency response, or anything about the design to be programmable, how would you incorporate that? My thought would be you could use registers in a memory block to hold configuration data and through the axi stream set those registers over udp. Then your microphone or other elements can read those configuration registers. Is this how it would be done or am I completely off?

  • @samg4564
    @samg4564 10 วันที่ผ่านมา

    Really nice vid, was just struggling with this. Would be interested to learn about pipelining an axi stream without breaking the backpressure

    • @cccmmm1234
      @cccmmm1234 10 วันที่ผ่านมา

      That is essentially what the FIFO does. AXI is a very strict specification. You can't really modify it.

    • @cccmmm1234
      @cccmmm1234 10 วันที่ผ่านมา

      Another method is using skid buffers - essentially 1 deep FIFOs.

    • @FPGAsforBeginners
      @FPGAsforBeginners 10 วันที่ผ่านมา

      Exactly what I was going to say. Skid buffer.

  • @davidcache
    @davidcache 10 วันที่ผ่านมา

    Hi stacy, would you be inclined to do private lessons via zoom call?

    • @FPGAsforBeginners
      @FPGAsforBeginners 10 วันที่ผ่านมา

      Hi David, I'm not taking on any more clients at the moment, but will be making more videos in my spare time. You're welcome to suggest a video idea if there's anything specific you're interested in.

    • @davidcache
      @davidcache 9 วันที่ผ่านมา

      @@FPGAsforBeginners I struggle with vivado.. petalux.. the mpsoc platform has alluded me. I have a good grasp on fundamentals, system Verilog, verilog, hdl, that I can do fine, hard logic coding also isnt a struggle. Its Xilinx's software stack that's always humbling me. I find myself in Quartus alot, just to avoid feeling bloated and inefficient with vivado. Could you do a fresh onboarding video? perhaps targeting an mpsoc platform, perhaps a zcu102.. A hands on with Xilinx primitives would be cool, DSP preferably. Thanks for being awesome 💖

  • @user-xz7qq2vm3h
    @user-xz7qq2vm3h 10 วันที่ผ่านมา

    It's really helpful for beginner like me. Have you implement that neural network on fpga. Thanks

  • @johndick996
    @johndick996 11 วันที่ผ่านมา

    Thank you very much for your materials! ❤

  • @wolpumba4099
    @wolpumba4099 11 วันที่ผ่านมา

    *Summary* * *(**0:00**)* *Purpose:* The video explains an AXI-Stream Arbiter example designed to debug data streams. It combines multiple AXI-Stream inputs and outputs them to a single UART interface for monitoring. * *(**2:38**)* *Key Components:* * *AXI-Stream Snoop Ports:* Non-intrusive interfaces that allow observation of data on the AXI-Stream bus without affecting data flow. * *FIFOs (First-In, First-Out):* Buffers used to store incoming data packets from each of the four input AXI-Stream interfaces. * *Arbiter:* Logic that manages the selection and prioritization of data from the different FIFOs to send to the UART output. * *State Machine:* Controls the overall operation of the arbiter, with states like IDLE and WRITING, ensuring data is transmitted in complete packets. * *(**2:38**)* *Arbiter Logic:* The arbiter employs a priority scheme to choose which FIFO's data to send out first. In this example, FIFO 0 has the highest priority and FIFO 3 has the lowest. * *(**2:38**)* *Data Flow:* Data comes in through four AXI-Stream Snoop Ports, is stored in individual FIFOs, then the arbiter selects which FIFO to read from based on priority and data availability, finally outputting that data to a UART for debugging. * *(**6:11**)* *Important Concepts:* The video emphasizes understanding: * *AXI-Stream Handshaking:* The use of 'ready' and 'valid' signals for data transfer. * *Synchronous and Asynchronous Logic:* Different types of logic and their importance in FPGA design, especially for state machines. * *Packet Integrity:* Ensuring complete data packets are transferred without interruption. Summarized by AI model: gemini-1.5-pro-exp-0801 Cost (if I didn't use the free tier): $0.0675 Input tokens: 16454 Output tokens: 941

  • @aakarshithasuresh3096
    @aakarshithasuresh3096 11 วันที่ผ่านมา

    Loved this video stacey! Your way of looking at systemverilog and why we use certain constructs in certain way, is amazing, easy to understand and remember too. Thanks a ton....😇

  • @user-pb3lv8iy3u
    @user-pb3lv8iy3u 14 วันที่ผ่านมา

    Lovely video! you're the best when it comes to FPGAs! Can you make a video about Dynamic Function Exchange (Partial Reconfiguration) please?

  • @ElectroWolf_Arts
    @ElectroWolf_Arts 14 วันที่ผ่านมา

    Hello Stacey, Hello FPGA devs, i have a GOWIN Tang Nano 1K , on board it is equipped with crystal oscillator that outputs 27MHz as clock frequency. my question is: is that 27 MHz is "exactly" 27000000 Hz ?, or it's something closer if you know what i mean ,,,,,, i dont have an oscilloscope to test the purity of that 27MHz

  • @NishantKumar-iv9uy
    @NishantKumar-iv9uy 15 วันที่ผ่านมา

    Hi, www.youtube.com/@FPGAsforBeginners, In the advance level of out assignment, I think there should be some correction, If we follow the above examples. According to me it should be written as "assign out[(NUM_BYTE-i +1)*BYTE_SIZE-1 -:BYTE_SIZE] = in[(i*BYTE_SIZE)-1 -: BYTE_SIZE]". Please correct me if I am wrong! It might be correct If we ignore the previous examples :)

  • @DaryllDixonnn
    @DaryllDixonnn 15 วันที่ผ่านมา

    I have some problems. Can I use this design with Vivado 2018.2 Stacey ?

  • @10e999
    @10e999 16 วันที่ผ่านมา

    I didn't know about this new series ! As an embedded engineer (not fpga, more MCU, MPU) they get me a feel for the field! Thanks Stacey

  • @ksbs2036
    @ksbs2036 17 วันที่ผ่านมา

    Nice work Stacey!

  • @peterschmidt-nielsen3577
    @peterschmidt-nielsen3577 18 วันที่ผ่านมา

    Wow, this is super helpful, you really simplified it down, thanks!

  • @sanjivvinodkumar740
    @sanjivvinodkumar740 18 วันที่ผ่านมา

    Hello ma'am, the website is not responding ...... please help!!

  • @orzamarius3537
    @orzamarius3537 19 วันที่ผ่านมา

    You connect your peripherals to the interconnect_aresetn, when the Processor System Reset has a dedicated output called peripheral_aresetn. Is this going to be a problem? The instinct tells us that there are differences between these two resets generated by the reset IP. What can you tell us about that? Thanks!

    • @FPGAsforBeginners
      @FPGAsforBeginners 9 วันที่ผ่านมา

      There is a slight delay, as far as I know, between the peripheral reset and the interconnect reset. So that the interconnects can come out of reset first. However, unless your peripheral specifically needs this reset timing, it doesn't really matter in practice which is connected.

  • @mehtubbhai9709
    @mehtubbhai9709 19 วันที่ผ่านมา

    Thanks Stacey!

  • @EngineerAnandu
    @EngineerAnandu 19 วันที่ผ่านมา

    good

  • @subodhgulhane3405
    @subodhgulhane3405 20 วันที่ผ่านมา

    thanks to start posting video after long time

  • @cccmmm1234
    @cccmmm1234 20 วันที่ผ่านมา

    Hi Stacey what sort of throughput could you get? I am thinking of using ethernet RMII between an FPGA and a SOC without using a PHY.

  • @harithanbalachandra1571
    @harithanbalachandra1571 20 วันที่ผ่านมา

    Great Job Stacey...

  • @michael.wilspang
    @michael.wilspang 20 วันที่ผ่านมา

    Great job, Stacey. You do it very well. It pleases me that women also choose to geek out in these fields. I wish you all the best.

  • @thomasparker4109
    @thomasparker4109 20 วันที่ผ่านมา

    yeay ! )

  • @sammyiyi7136
    @sammyiyi7136 20 วันที่ผ่านมา

    Great Stacey! Stacey I just wanna ask: I currently code in VHDL as I find it very intuitive and engaging. I see you use verilog and system verilog most of the time. Is verilog (system verilog) easier to use in HDL design than VHDL or what is your reason for your choice of HDL? Thanks.

    • @thomasparker4109
      @thomasparker4109 20 วันที่ผ่านมา

      sv is now leading lang in industry

    • @michael.wilspang
      @michael.wilspang 20 วันที่ผ่านมา

      Yes, I have used VHDL for many years, but in recent years, I have gradually switched to Verilog because more and more of my customers are also switching to/using Verilog. That's why I recommend junior engineers start learning Verilog instead of VDHL.

    • @cccmmm1234
      @cccmmm1234 20 วันที่ผ่านมา

      System Verilog is better than Verilog and adds some of the neat features in VHDL such as structures.

    • @michael.wilspang
      @michael.wilspang 20 วันที่ผ่านมา

      @@cccmmm1234 Agreed

  • @miguelflores-acton8581
    @miguelflores-acton8581 21 วันที่ผ่านมา

    It awsome that you’re helping so much to open source FPGA design. I remember when I first started designing circuit boards and having great tools and recourses to learn from. Your videos are gonna be my goto now that I’m trying learn about FPGAs 😁

  • @popuassmf
    @popuassmf 21 วันที่ผ่านมา

    Top news! Well done!

  • @MrHeatification
    @MrHeatification 21 วันที่ผ่านมา

    Really nice, thank you very much

  • @TahaAlars
    @TahaAlars 21 วันที่ผ่านมา

    As usual, very useful video. Thank you. is there any chance that you can use one ETH IP with Zynq? and show us the source code for the ETH configuration. Also, PCIe is very common these days. you could use it with ZYNQ as well. Thank you so much for your videos

  • @BobBeatski71
    @BobBeatski71 23 วันที่ผ่านมา

    Am a PCB layout / PLM database guy by day and a Verilog noob by night. Have been playing with Verilog over the past few weeks on my Spartan3A Digilent board and have now managed to interface a WD65C816 (memories of C64 asm!). There's now a UART'ish thing with Tx & Rx and I'm just about to finish implementing Steve Wozniak's WozMon. So glad the YT algorithm suggested you as now I can see how it should be done. Looking forward to studying your series.

  • @anonymouscommentator
    @anonymouscommentator 23 วันที่ผ่านมา

    loved the video, thank you very much 😊

  • @hjvanderlinden
    @hjvanderlinden 24 วันที่ผ่านมา

    Bedankt

  • @Arjun_Choudahry
    @Arjun_Choudahry 24 วันที่ผ่านมา

    Absolutely great explanation👏👏