Introduction to FPGA Part 6 - Verilog Modules and Parameters | Digi-Key Electronics

Introduction to FPGA Part 6 - Verilog Modules and Parameters | Digi-Key Electronics

DigiKey

3 года назад

22,410 Просмотров

Ссылки и html тэги не поддерживаются


Комментарии:

@0LoneTech
@0LoneTech - 13.12.2021 18:43

[COUNT_WIDTH:0] is actually COUNT_WIDTH+1 bits wide, as 0 was included. This isn't terribly important in this case, as it just needs to be wide enough to hold MAX_COUNT and narrow enough to fit and satisfy timing; if you're lucky, the synthesizer might even tell that the top bit is constant and remove it.

Personally I prefer the #() syntax for setting parameters over defparam, e.g.:

clock_divider #(.COUNT_WIDTH(32), .MAX_COUNT(1500000-1)) div_1(.clk(clk), .rst(rst), .out(led[0]));

This avoids repeating the instance name and makes it easy to define multiple instances with the same parameters. Note that you don't have to match styles between the module definition and instantiation; they're parameters either way.

Ответить
@tanjiro3285
@tanjiro3285 - 13.12.2021 18:57

🔥🔥🔥🔥🔥

Ответить
@NotMarkKnopfler
@NotMarkKnopfler - 13.12.2021 20:18

My compliments - I'm really enjoying this series. I haven't bought the hardware yet but I'm planning to quite soon. I think the pace and level of detail in this series is perfectly pitched - there is good initial information in here, and if the student wants to learn more, well... there's a whole internet to search for material. My compliments on a genuinely useful, concise series of videos.

Ответить
@benusberghi5546
@benusberghi5546 - 14.12.2021 03:23

Get a Zynq and combine your RTOS/embedded linux series with FPGA.

Ответить
@FrankenLab
@FrankenLab - 14.12.2021 13:08

@Shawn Hymel HUGE thanks for the dark themed video, much easier on the old eyes ;-)

Ответить
@johncutler5995
@johncutler5995 - 14.12.2021 20:38

Thank ou for making this series. It is very helpful to get your concise take on using FPGA's. My question is are you going to do an episode describing how to use ICESTUDIO and/or GTK Wave?
I know you seem to be a windows guy, but many of us are linux users, and it would be very helpful to have some episodes addressing more free tools that we could use.

Ответить
@SaarN1337
@SaarN1337 - 16.12.2021 20:32

Although I already have a DE10-Standard board, I placed an order for an Ice Stick because of your tutorials.
Now all I'm missing is a breadboard with a bunch of buttons and LEDs, because this one doesn't come with much, but no complaints. Might get one of those cheap-generic "Arduino compatible" cases you generally see on Aliexpress \ Amazon and call it a day.
Would be nice to be able to show my friends what an FPGA is, beacuse I'm not taking my DE10 out of the dorms, lol.

Ответить
@JohnDoe-tk3nc
@JohnDoe-tk3nc - 20.12.2021 14:59

In the world of programming languages one can take a module written in one language (e.g. GUI written in C++), a module written in another language (e.g. a numerical library written in Fortran) and under some circumstances link them into one executable. Is it possible in the world of HDLs? If yes, could you prepare a simple tutorial? I think it is a valid question as there are many open source cores written in different HDLs and one may want to "glue" e.g. a processor described in VHDL with a peripheral described in Verilog. Greetings from Poland.

Ответить
@orb3442
@orb3442 - 02.02.2023 01:18

Excellent series Shawn. Top drawer & nice and snappy. No waiting for slow typing and droning-on! Does mean I have to occasionally rewind 🤠.

Had an .apio issue with sample code for a couple of dev boards where the verilog in other module files was included in the top.v file using the ‘include metastatement. I’m assuming needed for some tool chains but apio is doing a sweep of all files in the folder to round up other modules instantiated elsewhere. So with the file include statement(s) you get an error from apio that the module is already declared.

Might help someone…. But apio is great & enjoying Verilog instead of my usual VHDL.

Ответить
@vaniaeli4392
@vaniaeli4392 - 21.02.2024 14:42

Muito Obrigado por democratizar esse conhecimento ❤

Ответить
@ICGOODFIND
@ICGOODFIND - 20.10.2024 13:25

ICGOODFIND is a Chinese spot - distributor of electronic component chips. Contact us if needed.

Ответить
@MrDejvidkit
@MrDejvidkit - 18.01.2025 21:33

It doesn't work if two outputs from the clock divider are connected to the same wire LED; Does it short in case the output signals are opposite?
Example:
led[0] = 0
led[1] = 1
That would be "short" I know it's lookup tables, but doesnt it make sense? Or is this somehow internally implemented as an OR gate?

Ответить