This is great! Usually these tools have some not terribly obvious parameters or error messages that waste a lot of time trying to figure out. You have saved people some time otherwise wasted being confused.
@prjthkmr9 жыл бұрын
Thank you for the tutorial. This is the only useful video related to Lattice semiconductor board I found on youtube. Looking forward for you next video on the delta sigma ADC
@nicholasleahy96007 жыл бұрын
I'm looking for a ADC guide too
@BlindManBert6 жыл бұрын
I really appreciated the clarity and depth of this tutorial: It’s gotten me up past several hurdles already. I’ve been working with Xilinx FPGAs for a few years now, but decided to take the plunge with the low-cost MachXO2 and MachXO3 breakout boards from Lattice. The MachXO2 board arrived first, but I kept encountering problems when I attempted to select the .jed/.bit files produced by Lattice Diamond 3.10.2.115; the programmer kept saying they didn't match the files made by the project. The problem seems to stem from the misidentification of the FPGA, which the presenter encounters at 20:25 in the video. If you use the default “Create a new [programming] project from a JTAG scan” mode, then the FPGA is identified as an LCMXO2-7000ZE device, and not the LCMXO2-7000HE, as the board contains. Even if you flip to the proper device, you may still have problems selecting the proper .jed/.bit files (but not always, which is odd). Most of the time I could only use Flash programming modes, not the SRAM programming mode I’d usually prefer to use. The workaround for me is to select the second mode, “Create a new blank project” in which case the FPGA target device is identified from the project (assuming you chose the correct chip to begin with), not across the JTAG connection. All of the problems go away and you still have a “Detect cable” button available in the Cable Settings section at the right if you need to diagnose USB connection issues. I’ve gone back over a couple of older Diamond projects and have been able to fix them, but more often than not I end up trashing them, staring over and using the “Create a new blank project” selection. It seems that this problem has persisted between Diamond and the MachXO2 breakout board for at least two and a half years since this video was posted. I’d like to submit a bug report to Lattice Semiconductor, but they seem to have a policy of not accepting bug reports from those with “public” email addresses, like Gmail, .edu, or ISP addresses as I do. This is unfortunate, since it excludes the maker community, by and large, from making bug reports to fix simple problems like this one. And so, the bug persists…. :-(
@Myndale5 жыл бұрын
I've experienced this persistently for the 3 or 4 years I've been using this tool-chain, it's infuriating. The only thing that reliably works for me 100% is manually editing the xcf file (which is plain XML) and changing the and tags to whatever I want.
@nonicnik4 жыл бұрын
This was a really good beginners guide for the MachXO2. Thanks to you I was able to write my first programs and even was able to debug my SPI slave with reveal. Thank you so much. Unfortunately they aren't as cheap anymore. I paid around 90€ for this same board, but I needed the exact one for a university project.
@nezbrun8728 жыл бұрын
Thank you, the content is levelled at precisely the right level for someone with a reasonable electronics background but have struggled to get to a stage to be comfortable with writing their own code. I've been trying to crack this nut for over ten years, and finally you've done it! I have had an understanding of the concepts for some time, but converting that into being able to write and deploy my own HDL has proved elusive until now. This has largely been down to giving up when the horrendously complex tools don't work, or that important details are glossed over, i.e., you end up being a script monkey where you follow the tutorial but it doesn't give you enough to be able to go further on your own. Another problem of most FPGA tutorials, in fact all of them that I've encountered, is that they're written by individuals who already know all the answers but have forgotten what it was like as a noob. One comment for others, I found that I needed to use the exact version of Lattice Diamond quoted, 3.6, as I couldn't get the latest to even install on Windows 10 x64. You can find archived versions by googling "Lattice Diamond archive", there doesn't seem to be an immediately obvious link on the Lattice website to older versions. Thanks again, your video has proven invaluable.
@upgrdman8 жыл бұрын
Thanks, glad you liked the video. I'm currently using Lattice Diamond 3.7 in Windows 10 and do not recall having any problems while installing it. Was the installer hanging? Anyway, if you're up and running with 3.6 you could just leave it as is. Good luck!
@nezbrun8728 жыл бұрын
upgrdman The error was early on, 0x80070002 which appears to be a Windows Update error, I assume the installer is trying to install some prereqs or something as it's very early in the install. The machine is fully up to date with updates, and I rebooted a number of times too. After half an hour of getting nowhere with 3.8, I used 3.6, but finding it wasn't straightforward!
@nezbrun8728 жыл бұрын
Flushed with the success earlier this week. I built my own board today based on an LCMXO2-1200HC, coded up some noob Verilog, programmed it up, worked almost first time - just one error, I needed to pull up JTAGENB to make it work with my ispDOWNLOAD programmer, but wow am I happy! Thanks again, like I said earlier the level of explanation in your video is just perfect. Now to do battle with the PLL...
@domoncar67828 жыл бұрын
A massive thumbs up for exactly what +Nezbrun said. I was also in the same boat as him. Knew enough to get excited about fpga, but not enough to get started on my own.
@mpag61957 жыл бұрын
Great job! Been wanting to get my dev board working for a few years now, but had no real world tutorials to help me out. Thank you
@aksharvastarpara75633 жыл бұрын
Damn! This is a first tutorial i have seen with perfect details!
@pluszakpluszak52262 жыл бұрын
Fantastic video. Lattice should share it on their channel.
@christsuch3 жыл бұрын
I realy like this video. I helped me very much to get used to the Lattice Diamond tool. It's realy good to get your 1st little project started.
@danielwait85553 жыл бұрын
Dude, I couldn't figure out how to use the board without you! Please do as many as you can manage.
@britishideas6 жыл бұрын
Many thanks for adding this video. It enabled me to quickly get started with the tools and my LatticeXP2 board. I think I would have struggled without this!
@MbeeTech9 ай бұрын
Great tutorial - thank you. Was looking in particular for something on getting started with Reveal in Diamond, and it fit the bill perfectly.
@hubmartin9 жыл бұрын
Thank you for this tutorial. It is really hard to find even a complete text explanation how to synthesise, RTL simulate and Flash. Thanks for the SRAM "Flashing" explanation. Now I can go back to my notebook LVDS project and improve/simulate it with thiw knowledge.
@sriganeshduraikannu73645 жыл бұрын
Thank for this video. This is only video available for lattice diamond. Please make more video on it, something like timing constraints, floorplanning and how to use synplify pro and Active HDL in Lattice or how to become a pro user in Lattice Diamond.!!
@klofisch5 жыл бұрын
Huge thanks for your tutorial. I got one LatticeXP2 Brevia 2 Dev Kit 5-6 year ago and couldnt use it for a proper thing. Just for the reason that there where no good tutorials for lattice. I think i can give it try now!!
@holgerhartenstein67355 жыл бұрын
www.latticesemi.com/en/Products/DevelopmentBoardsAndKits/LatticeXP2Brevia2DevelopmentKitscoll down ...Chose Downloads Design File ....Reference Design
@danielfenner75587 жыл бұрын
Thanks a lot for the video! This was *really* helpful to get started with the MachXO3LF development board. I merely needed to change the pin designators. All the other stuff applies there as well.
@JaapioNL8 жыл бұрын
I love this lil board. It's got so many nice features, especially considering how cheap it is.
@robertwatsonbath6 жыл бұрын
Thanks, got me quickly up and running with Lattice Diamond.
@davidrose16147 жыл бұрын
Very good job. one of the best demos on the subject.
@upgrdman7 жыл бұрын
Thanks!
@jayashreemm2491 Жыл бұрын
Thanks for the video.I am new to Lattice Diamond software and now I have clear idea on how to use it. Can you please make a video on using using I2C and SPI Lattice hardened IP cores in Lattice?
@nsknyc6 жыл бұрын
Great Hello World tutorial. I don't use lattice, but this applies to other fpga boards. Thanks!
@matthewprestine19748 жыл бұрын
next video please! wish I would have had such a video years ago when I started with lattice. they have great stuff and tools, very under known by beginners as the other two companies grab the markets.
@carriersignal5 жыл бұрын
Thank you so much for taking the time to make this helpful video!
@mohit31897 жыл бұрын
Suitable for MACHXO3 as well, Thanks!
@DrTune7 жыл бұрын
Awesome thanks, I just read your blog page and it worked (almost) first time. Great work
@edsonmanoel52634 жыл бұрын
Thanks for the video. Really well done. Have you ever made the video about the ADC? I am trying that now in the MACHXO3 board
@maksudulhossainjewel3786 жыл бұрын
After running the testbench the Active-HDl shows error message: # Error: VSIM: cannot select specified top-level
@christopherjholland6 жыл бұрын
Great introductory Video. (Should be sponsored by Lattice)
@sonjae87023 жыл бұрын
thank you very much for your video. I have some question about this evaluation board. Maybe you can help me with that. 1. What happens to Program when the voltage is interrupted? 2. What does an FPGA with 74 EBR SRAM (kbits) mean, is that internal memory?
@sm00thiee5 жыл бұрын
Thanks for this tutorial! I just got the board recently to start on a project and this was the best step-by-step guide! Any chance you'd be doing more tutorials? For example how to implement the SPI embedded function block? Thanks!
@upgrdman5 жыл бұрын
Thanks. I have been thinking about doing more Lattice tutorials, but not sure how soon I can do that. Good luck with your project!
@edsonmanoel52634 жыл бұрын
Great tutorial! Thanks for the video, very useful
@proxy10353 жыл бұрын
sadly i'm just getting an "incorrect pattern readout" error when trying to run the reveal analyzer.
@Артем-м9у3э3 жыл бұрын
Hi, friend. Where can I watch the second part of the video you wanted to upload?
@upgrdman3 жыл бұрын
Hi. Unfortunately I never got around to recording that.
@Micmic888548 жыл бұрын
Hi, I am using this board for my project. I got the oscillator clock to work however I need the interal (edge clock) to work. I am writing it in vhdl and seems I have instantiated it properly except the edgeclock will run in my simulation for 10 clock cycles then stays high and doesn't work. Is there any way to fix this? I instantiated it using the ipexpress module to create a 10 MHz clock. Any help would be appreciated. Thanks, Michael
@j0551167 жыл бұрын
Thank you very much! This video helps me a lot.
@TheEddie5812 жыл бұрын
Amazing how the price has gone up. I purchased this board for €85 from Mouser today. The video at 2.28 mentions that it would cost US$26 then (presumably in 2015) ..... Is this inflation or just scarcity, or a combination of the two?
@upgrdman2 жыл бұрын
Wow, that's crazy! Yes, it looks like the price has gone up a lot. I'm guessing it's mostly due to scarcity.
@shwetasawant2953 Жыл бұрын
I am continuously getting error as "design doesn't fit into device" from past 3 days... Please help
@SohailSystem6 жыл бұрын
Sir how to program lattice mach110-15jc please help me
@RenegadeFury3 жыл бұрын
Do you know how I could generate a 100mhz clock? I use a PLL, OSCH #(.NOM_FREQ("133.00")) rc_oscillator(.STDBY(1'b0), .OSC(fpga_clock)); pll pll_133 (.CLKI(fpga_clock), .CLKOP(clk_100)); I set the pll to .5% tolerance in the IP wizard. But in Synplify Pro I always have negative slack. I don't have negative slack if I use the fpga_clock directly
@upgrdman3 жыл бұрын
Hi. I have not used the PLLs yet so I don't know the answer. Hopefully someone else can comment.
@PlasmaHH8 жыл бұрын
any update on the promised video?
@MrRedghost19977 жыл бұрын
Good job for your tutorial, but when I write the code, the software says "ERROR - c:/lscc/diamond/3.9/bin/nt/top.v(8): net gnd is constantly driven from multiple places at instance rc_oscillator, on port STDBY. VDB-1000 Done: error code 2" I don't know why because I checked it's exactly the same code. Could you help me plese.
@Wtf956 жыл бұрын
what about licensing for software and IP cores?
@deepakgoyal30257 жыл бұрын
Thanks #upgrdman, this is really very helpful video to start with Lattice products by using Lattice Diamond Tool.
@gastonmelo64736 жыл бұрын
hi, im trying to install lattice mico system under linux ubuntu without succeed. Is it possible?
@prjthkmr8 жыл бұрын
@upgrdman I have a question. I have this MachXO2 breakout board. Now I need to program a MachXO2-256 chip and put it on a PCB . How do I program that chip? Is it possible to use the same breakout board to do it or do I need to buy another hardware?
@upgrdman8 жыл бұрын
+prjthkmr Hi. I have not tried it yet, but it looks like you could. There is an unpopulated JTAG header on the board. See page 14 of the Breakout Board User's Guide: www.latticesemi.com/view_document?document_id=43937
@prjthkmr8 жыл бұрын
+upgrdman Thanks. I managed to do that. But I had to buy a lattice programmer ,otherwise it was required to put an FTDI USB to serial coverter chip as well on the PCB which would have made the PCB unnecessarily bigger.
@mattengeriser12848 жыл бұрын
Excellent, thanks for doing this.
@mrithyunjaysiv48487 жыл бұрын
Make More similar useful video like this for other families of Lattice...since at Lattice You tube channel there is nothing to learn how to use the tool or hardware .
@jerod2568 жыл бұрын
Hi, I like your tutorial and its got me going pretty well with using the tool. I'm just having one issue where I can't get an answer on. Whenever I try to export files after using Reveal Inserter I get an error: "ERROR - Error in pmi elaboration : pmi_ram_dp_0". No idea why it does that. Unfortunately since I'm a hobbyist I can't get Lattice support in this, can you or anyone else help?
@jerod2568 жыл бұрын
Just an update: I managed to get it to work when I switched the synthesis engine from LSE to Synplify Pro. No idea why it worked out that way for me. Just keep in mind if you ever run into it. Thanks again for the great tutorial upgrdman!
@upgrdman8 жыл бұрын
Weird. I've never had that problem before. Glad it worked out.
@vitasound87929 жыл бұрын
When buy on lattice store, cost 26$ shipping 45$ :(
@upgrdman9 жыл бұрын
+VitaSound Hi. You might want to check with any local electronics parts suppliers. Lattice is a fairly big company, so you might be able to source their products locally without such high shipping costs.
@paranoidyoshman6 жыл бұрын
Good presentation
@HarryInTheBox5 жыл бұрын
really fine. thanks
@igor_shepelev8 жыл бұрын
Great guide, thanks.
@Arni1427 жыл бұрын
More please!
@mohit31897 жыл бұрын
Thanks a bunch!
@黃名毅-n9f6 жыл бұрын
thank you ,good job!!!
@vitasound87929 жыл бұрын
Thanks!
@hamzarguig66597 жыл бұрын
great job
@printfhello7477 жыл бұрын
Thanks so much
@pewterhacker Жыл бұрын
Was tricked and wasted a bunch of time because the installer also installed a similar app called "Diamond Programmer". This app looked enough like the app in the video to make me think that I was just using a newer release of the app described in the video. I though the video was out of date. So, make sure to launch the correct "Lattice Diamond" app.
@akaludi5 жыл бұрын
files.latticesemi.com/Diamond/3.10/3.10.0.111.2_Diamond_x64.zip Correct link Lattice diamond software