Lattice Diamond Source File Organization


I am new to Lattice Diamond and wondering how one organizes the “Input Files” for an implementation?

A small project is fine to keep all source files in the “Input Files”, but what happens when you start to get lots of files and test benches? I don’t see an option to create folders.

Do you need to include all source files in the “Input Files” section? The image below shows there is no option to create new folders. Or does it find the source files that it needs to compile or synthesize the design without adding it to the “Input Files” in the IDE?



I usually use a different IDE to edit my Verilog. You can organize your files into different folders, but the folders will not appear in the “File List” view. Instead you’ll see a relative path for each of your input files like the screenshot below.


Thanks for the reply. Could you share what IDE you prefer to use? Do you already have notes or tutorials on your workflow for the A1 or A2 boards for larger projects like your USB bootloader for the other board you have?


I tend to use gvim quite a bit. However, I am warming up to Atom IDE with the APIO plugin. I based the TinyFPGA BX User Guide on it.