New DE10_lite Max10 FPGA board perfect forr P1v experiments
ozpropdev
Posts: 2,793
Here's a nice little FPGA board for those playing with P1V's.
Features:
Max10 10M50 FPGA
10 leds
10 switches
2 buttons
6 x 7 segment displays
4 bit VGA
64MB SDRAM
Accelerometer
Arduino header
40 pin header
http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=english&No=1021
Here's the resource usage for a 64IO,32Kb Hub,8 cog P1V
Board should fit 2 x 8 cog P1V's easily.
Features:
Max10 10M50 FPGA
10 leds
10 switches
2 buttons
6 x 7 segment displays
4 bit VGA
64MB SDRAM
Accelerometer
Arduino header
40 pin header
http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=english&No=1021
Here's the resource usage for a 64IO,32Kb Hub,8 cog P1V
Family MAX 10 Device 10M50DAF484C7G Total logic elements 17,207 / 49,760 ( 35 % ) Total registers 5973 Total pins 74 / 360 ( 21 % ) Total memory bits 655,360 / 1,677,312 ( 39 % ) Total PLLs 1 / 4 ( 25 % )
Board should fit 2 x 8 cog P1V's easily.
Comments
I have found that Max10 compiles ~ 3x faster than a Cyclone V compiles.
The closer you get to maxing out (pardon the pun) your resources the more the compile time blows out.
I purchased this PC just to get Quartus moving along quicker.
I still have had cyclone V compiles > 1 hout.
It also still has plain SDRAM which I had found on DE-0 nano and the BeMicroMAX10 boards could be customized easier to interface with the P1V than trying to use the DDR type memories using inbuilt controller block IP.
Thanks for sharing ozpropdev!
A close up photo I saw in the user manual showed the slower/cheaper -7ns part fitted so its a fair bet that it is going to be that part used in production too. In theory that part is rated only up to 143MHz though you also may be able to push to 160 if you get lucky. The current DE0 nano and BeMicroMAX10 boards I have both use a 7ns part.
It's the -7 version.
I'm placing a mouser order tomorrow and they have the -6 grade in stock, should we give it a try?
Cheers.
Cyclone V is notably slower on all of my builds.
Why not just use Boot Camp on his Mac to install Windows or Linux?
Surely that is the cheapest option, even if it means reboots to switch.
Another alternative would be to use a VM to run the software, which gives better integration between work environments, no reboots to switch, but might suffer some performance loss.
DE0 nano is hair cheaper, but I guess this has more features?
BTW: The cheapest board on Digikey looks to be the "MachXO3L Starter Kit" from Lattice.
It's only $25...
Any chance the P1V would work on that?
https://9to5mac.com/2017/08/31/how-windows-10-mac-boot-camp-external-drive-video/
HDD may need replaced, depends on its age/size. If it's already a 200 GB or bigger then try using it. A SSD does wonders for load times but that is a relative premium.
The big downer at the moment is DRAM prices are peaking. Which is a frustration because DRAM is the one thing you can easily have excess of and is well worth it ... normally.
In fact, it seems all chip prices are all on their way up. Even nVidia have said people should only buy the GPUs they need because they can't keep up with demand.
I see it for $55 on Terasic, but that's for Academia.
Otherwise they sell for $85 or more where I've seen them.
The low cost MachXO3L thing doesn't appear to have anywhere near the needed capacity...
Does the original post show capacity with the P1 ROM Character Map included?
It looks like they had to leave this off in order to fit in the DE0 nano...
The original build shown above does include 32k hub, character rom and math tables too. (39% memory bits used)
I guess that you folks who use this on a regular basis at some point have all or most of the kinks worked out, right?
It makes me appreciate (again) the simplicity and directness of the Parallax software. Back when I was learning digital logic, we had TTL or CMOS gates and latches, to connect with wires. Now they have to learn even the basics using tools for building skyscrapers, not cottages.
I suspect this lab would have an easier time using small Lattice FPGAs and the Free and Open Source IceStorm tools. Easy to install, quick and easy to use. Surely their projects will not be so big as to need more than that.
However, Lattice software was a PITA to install. Required lots of searching and also Comms with Lattice to eventually get it running, and I don't mean compiling!!! Their protection mechanism is totally awful.
Part of the uni course is to use software, and to that end that means proper software used by business. Here, I would have to say, Lattice software is not ready for prime time. IMHO only Quartus and Xilinx (forget what it's called these days) comply. The Open Source software is no in any way ready for prime time, so it's a waste teaching it. And while Lattice FPGAs are prime time, their software is just unusable, installation wise!
Certainly the tools available for creating FPGA designs are currently very limited. Basically only IceStorm/Yosys which are only usable for a few specific Lattice devices. Hardly surprising since the inner workings of FPGA's are all a closely guarded secret and a few guys had to reverse engineer the whole thing. An amazing feat by the way.
If the purpose of the course is to teach electronics, logic design, Verilog, getting FPGA's working etc then I would suggest the Open Source tools are perfectly adequate. The simulators GHDL, Verilator, Icarus work very well. IceStorm/Yosys is very easy to get working and create beginner level designs in actual FPGA's.
It's certainly worth teaching such things at uni. Surely the purpose of higher education is to aim somewhat higher than just following the current state of play in the industry?
Lattice FPGAs might be good, but the software is severely hampered by over enthusiastic copy protection, and on free software to boot! Something's not right here!
I had no problems to install Diamond and IceCube2 on my Windows 7 PC. All you need is the MAC number of your Ethernet port for the copy protection.
But I have not installed the Active-HDL simulator, maybe it has its own copy protection. I just don't need it.
It may be more problematic to install it on Linux or MAC.
The free icestorm tools are command line tools and not well comparable with an IDE. I use it on a RasPI with Geany. Geany's editor has Verilog highlighting and starts a makefile for the project, so it's all automated. To synthesize and download a modified Verilog project, I need to press a single function key. Easier than every other tool. The whole synth-, place and route takes about 1/3 of the time of IceCube (and that is on a PI, while Icecube runs on a 2 GHz PC).
Andy
But why the copy protection that is tied to the MAC address on your pc/laptop when it's free software??? It just doesn't make any sense!!!
Lattice wants to keep control. The license is valid for one year only. You have to renew it every year. So they can always decide that it is no longer free.
For sure they will not do it as long as the competitors have free tools.
The competitors do have free tools but Lattice still does that.
Using the Lattice tools have you been able to get a P1V design to compile okay for any of their FPGAs, like the ECP5 family for example? I didn't have any luck with getting hold timing met when I tried myself some months back (with the Linux version of Diamond).
I think we will probably get those FleaFPGA Ohm boards delivered soon. Be real nice to get P1V going for that board but after my earlier battles with the Lattice tools and several days of experimenting I'm now convinced I do not have sufficient FPGA tool experience/knowledge to get all the required the timing constraints specifications figured out to make a P1V meet its clock timing (assuming the ECP5 can get there), and there is no support that I know of - I think Lattice has closed down their forums too. Maybe someone else has had more luck there and understands the timing syntax and issues well enough to have more success than I did...well I hope anyway.
Once some baseline P1V is working it is much easier to then make all the other changes one may want to do, and a P1V on the FleaFPGA ohm with HDMI and USB would be just about a perfect P1V platform (well for some anyway). I've had way more success with Quartus so far when beginning from a stable design, as would be expected, but I still hope Lattice ECP5 FPGAs and their design tools will ultimately support a P1V.
Roger.