Author Topic: My FPGA tutorials  (Read 23904 times)

0 Members and 1 Guest are viewing this topic.

Offline marshallh

  • Supporter
  • ****
  • Posts: 1462
  • Country: us
    • retroactive
Re: My FPGA tutorials
« Reply #25 on: August 16, 2013, 09:29:38 pm »
I'm writing a USB 3.0 5gbps IP core right now. Minimal simulation.

Really, how do you simulate extremely complex and non deterministic behavior of a 5gbit PHY? You don't. I use embedded logic analyzer and my brain.

There is a small amount of internal logic I did verification against. But even then you're only verifying against what your brain can come up with, not reality, which is always nastier.


Now if all you're doing is plugging together various bits of licensed IP and maybe doing some internal logic, sure simulation might work there if the vendor provide a functional equivalent. But it's right out of the question many times.
Verilog tips
BGA soldering intro

11:37 <@ktemkin> c4757p: marshall has transcended communications media
11:37 <@ktemkin> He speaks protocols directly.
 

Offline jeroen74

  • Frequent Contributor
  • **
  • Posts: 397
  • Country: nl
Re: My FPGA tutorials
« Reply #26 on: August 17, 2013, 09:55:27 am »
Gospel is that you write a testbench... I just read a book about it ("Writing testbenches - Function verification of HDL models" by Janick Bergeron - ISBN 0-7923-7766-4). If you can stare at hundreds of waveforms all day long and (hope to) find problems that way, you probably can also come up with a way to describe that functionality and capture it in a function model. VHDL and Verilog provide loads of non-synthesizable constructs to aid in that. You don't write RTL in a testbench of course.

I think ASIC companies won't commit a design to silicon without extensive testbenches that completely test a design and that allow regression testing. You simply can't test a complex design by staring at (captured) waveforms. And can you remember how they need to look like? Isn't there a specification document to which you can test your widget against? List of use-cases? Expected behaviour?

And what if there is no hardware available at all? ;)
 

Offline jancumps

  • Supporter
  • ****
  • Posts: 1250
  • Country: be
  • New Low
Re: My FPGA tutorials
« Reply #27 on: August 17, 2013, 10:39:42 am »
Hm, i don't find this music distracting. I actually coding while hearing such kind of music....=)
A tad too commercial? ;)
 

Offline LtDrogo

  • Newbie
  • Posts: 2
  • Country: us
  • CPU design engineer
Re: My FPGA tutorials
« Reply #28 on: August 19, 2013, 08:56:44 pm »
Gospel is that you write a testbench... I just read a book about it ("Writing testbenches - Function verification of HDL models" by Janick Bergeron - ISBN 0-7923-7766-4). If you can stare at hundreds of waveforms all day long and (hope to) find problems that way, you probably can also come up with a way to describe that functionality and capture it in a function model. VHDL and Verilog provide loads of non-synthesizable constructs to aid in that. You don't write RTL in a testbench of course.

I think ASIC companies won't commit a design to silicon without extensive testbenches that completely test a design and that allow regression testing. You simply can't test a complex design by staring at (captured) waveforms. And can you remember how they need to look like? Isn't there a specification document to which you can test your widget against? List of use-cases? Expected behaviour?

And what if there is no hardware available at all? ;)

Absolutely correct. I have worked as an RTL design / verification engineer for major microprocessor companies throughout my career, and you can be absolutely sure that no chip; no matter how small; ever gets manufactured without a very extensive verification effort. Verification is the longest step in the design process of any modern SoC. Verifying a modern, state of the art x86 microprocessor is typically a two-year effort involving regressions with testbenches, random code generators and directed tests. There are usually 2-4 verification engineers (testbench writers/debuggers) per RTL design engineer (who writes the Verilog/VHDL logic); and design verification is usually the first career step for architects or RTL designers.

And there is a huge industry around this; as well as dedicated languages such as System Verilog, Specman etc. to write testbenches and checkers.

Even the smallest designs in the industry are verified in this manner through dedicated verification code (testbenches, checkers and random stimulus generators, etc.) It blows my mind that any FPGA/ASIC engineer can claim that a complex ASIC or FPGA implementation can be released to production without a well-planned verification effort through testbenches.

« Last Edit: August 19, 2013, 09:00:15 pm by LtDrogo »
 

Offline marshallh

  • Supporter
  • ****
  • Posts: 1462
  • Country: us
    • retroactive
Re: My FPGA tutorials
« Reply #29 on: August 20, 2013, 07:37:02 pm »
It blows my mind that any FPGA/ASIC engineer can claim that a complex ASIC or FPGA implementation can be released to production without a well-planned verification effort through testbenches.
You are absolutely right, however the circumstances under which I'm doing this are:
1. One man operation
2. Produced under gubbmint R&D funding on a shoestring budget
3. Experimental and research driven
Verification IP ain't in the cards, so I'm doing what I can with unit tests and live protocol analysis.
Verilog tips
BGA soldering intro

11:37 <@ktemkin> c4757p: marshall has transcended communications media
11:37 <@ktemkin> He speaks protocols directly.
 

Offline LtDrogo

  • Newbie
  • Posts: 2
  • Country: us
  • CPU design engineer
Re: My FPGA tutorials
« Reply #30 on: August 21, 2013, 04:28:31 am »
You are absolutely right, however the circumstances under which I'm doing this are:
...
My comment was not specifically directed at you, sorry if it sounded like that. I just took a peek at your Web site and was thoroughly impressed, I have little doubt that you figured out a way to do a sufficient baseline level of verification through your unit tests.
 

Offline EEVblog

  • Administrator
  • *****
  • Posts: 32055
  • Country: au
    • EEVblog
Re: My FPGA tutorials
« Reply #31 on: August 21, 2013, 05:47:14 am »
I found it distracting, but maybe other people find the music helpful. Only more feedback will tell. :)

+1 for distracting
Unless I'm absolutely desperate I will stop watching any such video with background music.
 

Citizen

  • Guest
Re: My FPGA tutorials
« Reply #32 on: August 27, 2013, 11:41:29 am »



New video! VGA interface in Vhdl+simple game!
 

Offline deephaven

  • Frequent Contributor
  • **
  • Posts: 783
  • Country: gb
  • Civilization is just one big bootstrap
    • Deephaven Ltd
Re: My FPGA tutorials
« Reply #33 on: August 27, 2013, 11:53:47 am »
PLEASE stop the music - you're spoiling an otherwise good tutorial.
 

Offline jancumps

  • Supporter
  • ****
  • Posts: 1250
  • Country: be
  • New Low
Re: My FPGA tutorials
« Reply #34 on: August 27, 2013, 11:55:41 am »
<duckingforcover>
the music is louder than the talk. Is it the theme music from LSL1?
</duckingforcover>
 

Offline dr.diesel

  • Super Contributor
  • ***
  • Posts: 2193
  • Country: us
  • Cramming the magic smoke back in...
Re: My FPGA tutorials
« Reply #35 on: August 27, 2013, 12:10:14 pm »
Yup, due to the music I couldn't make it past the first minute.

Citizen

  • Guest
Re: My FPGA tutorials
« Reply #36 on: August 27, 2013, 12:28:43 pm »
Lol, the intro music dissapear after 40sec. Then it gets not so loud and almost disappear when i speak. Otherwise the video will get lots of silence...which is really stupid.
 

Offline jancumps

  • Supporter
  • ****
  • Posts: 1250
  • Country: be
  • New Low
Re: My FPGA tutorials
« Reply #37 on: August 27, 2013, 12:38:54 pm »
I know the music goes smoother after half a minute, but by that time I had to subdue three impulses to close my browser. It seems that the frequency of the music you are using resonates with my flimsy computer speakers and with my skull. I'm still recovering.
 

Offline rastro

  • Frequent Contributor
  • **
  • Posts: 380
  • Country: 00
Re: My FPGA tutorials
« Reply #38 on: August 27, 2013, 12:54:11 pm »
Is it possible to only use one channel Left/Right to add background music and voice narration on both channels.  Wouldn't this leave your audience the option to listen to voice only - granted in only one speaker.
 

Offline dr.diesel

  • Super Contributor
  • ***
  • Posts: 2193
  • Country: us
  • Cramming the magic smoke back in...
Re: My FPGA tutorials
« Reply #39 on: August 27, 2013, 12:54:50 pm »
Lol, the intro music dissapear after 40sec.

By then you're too late.  As a viewer I have no way to know how long I'll have to endure the horrid music, so I just close the browser.


Citizen

  • Guest
Re: My FPGA tutorials
« Reply #40 on: August 27, 2013, 01:09:58 pm »
As a real interested viewer you  will certanly stay longer, because you would really want to know how to program vga in vhdl. ..and you wouldnt give up so fast:)
« Last Edit: August 27, 2013, 01:11:30 pm by Citizen »
 

Offline envisionelec

  • Frequent Contributor
  • **
  • Posts: 271
  • Country: us
Re: My FPGA tutorials
« Reply #41 on: August 27, 2013, 01:44:27 pm »
As the others, I didn't like the intro music. But I'm a fan of ambient music and the video kept my attention because I know nothing about VHDL. It seems simpler than C??
 

Citizen

  • Guest
Re: My FPGA tutorials
« Reply #42 on: August 27, 2013, 01:56:52 pm »
Yes, i admit, the intro music in all my videos i a bit funky, but i think should drag viewes attention. At the beginning a wanted to use " R√∂yksopp - In Space" as background music, but they wanted  about 1000 euro for no-commercial usage in youtube:(
Yes, i also find vhdl easier then C, especialy the syntax and all those pointers....
 

Offline mrflibble

  • Super Contributor
  • ***
  • Posts: 2024
  • Country: nl
Re: My FPGA tutorials
« Reply #43 on: August 27, 2013, 07:03:33 pm »
As a real interested viewer you  will certanly stay longer, because you would really want to know how to program vga in vhdl. ..and you wouldnt give up so fast:)

Keep telling yourself that. The rest of the world judges a vid real quick, closes it when annoying, and hops on to the next one that doesn't suck. Welcome to the internet. ;)

Why watch annoying vids when the people at Doulos have VHDL and other HDL material that is not annoying. ;)
 

Offline jahonen

  • Super Contributor
  • ***
  • Posts: 1046
  • Country: fi
Re: My FPGA tutorials
« Reply #44 on: August 27, 2013, 07:16:11 pm »
Just watched it, besides the background music, I wonder why did you use Qsys to generate the PLL function instead of just using MegaWizard Plug-In manager to generate variation of PLL megafunction? Same result and input dialogs but I think that MegaWizard is recommended by Altera. Unless of course if one wants to instantiate the whole Qsys component.

Regards,
Janne
 

Citizen

  • Guest
Re: My FPGA tutorials
« Reply #45 on: August 27, 2013, 07:28:53 pm »
Oh, cmon, as I did my first steps in FPGA/VHDL  i searched LOTS of websites and videos  for clear, undestandable, practical tutorial from scratch (like my videos for example).
Most of youtube "tutorials" should be called " demos" , because  they  don't teach you anything.Also Doulos hasn't  got any real tutorials for VHDL/FPGA. Just  naked theory.

My videos are more educative then entertaining (unlike Dave's blog, which became more entertaining then educative  with time, but this is another story).
That is why i am concerned, if anyone  has found my video , then he surely want to learn something, and not just spend 10-15 Min  watching  random interesting video while eating.
In this case he will see that my video is long, the thumnail is showing the real result,  there is source code=> everything is pointing that he will find what he looked for.So he would stay or at least rewind the intro.

"he rest of the world judges a vid real quick, closes it when annoying"-- that behaviour is more likely for someone, who dont search for anything in particular..more like cats video or fail compilation...





 

Citizen

  • Guest
Re: My FPGA tutorials
« Reply #46 on: August 27, 2013, 07:31:37 pm »
Just watched it, besides the background music, I wonder why did you use Qsys to generate the PLL function instead of just using MegaWizard Plug-In manager to generate variation of PLL megafunction? Same result and input dialogs but I think that MegaWizard is recommended by Altera. Unless of course if one wants to instantiate the whole Qsys component.

Regards,
Janne

I heard that megawizard  was replaced by Qsys, but i am not sure. Anyway it will lead you to the  same result;)
« Last Edit: August 27, 2013, 07:36:12 pm by Citizen »
 

Offline jancumps

  • Supporter
  • ****
  • Posts: 1250
  • Country: be
  • New Low
Re: My FPGA tutorials
« Reply #47 on: August 27, 2013, 07:47:46 pm »
Oh, cmon, ...

In the end they are your video's. You can make them as you please. If we think we can do better, we should proove that. And as viewers, we'll make up for ourselves if we watch them or not.
 

Offline jahonen

  • Super Contributor
  • ***
  • Posts: 1046
  • Country: fi
Re: My FPGA tutorials
« Reply #48 on: August 27, 2013, 07:54:54 pm »
I heard that megawizard  was replaced by Qsys, but i am not sure. Anyway it will lead you to the  same result;)

I think it was SOPC builder which was replaced by Qsys, MegaWizard is a quite different thing (and also used internally by Qsys).

Regards,
Janne
 

Citizen

  • Guest
Re: My FPGA tutorials
« Reply #49 on: August 27, 2013, 08:00:12 pm »
Yes, it was SOPC:)
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf