Building the Efinix firmware (Mesa 7i92T)

More
27 Apr 2023 12:10 #270059 by kuknick
Hello. I've been trying to refresh my FPGA knowledge for a few days now. Last time played with them in the university, more than a decade ago.
Currently struggling to make a configuration firmware for a 7i92tm+7i76+7i85s combo.
TheĀ 7i92t.zip archive from mesanet.com includes source files which do open in the efinity software, and the only error I get when compiling it is in the Interface Designer: "Post-divider should be greater than 1 when there are multiple output clocks."
The obvious dumb fix is to set Post Divider to 2, which lets you successfully compile the project and flash the bin file. After that the board seems to boot successfully with LEDs working normally. But the ethernet stops working, I assume because the frequency is now halved thanks to my previous 'fix'. The fallback fw loads successfully and lets you flash the working user fw.
Can someone show the proper way to compile the firmware?
I guess I could just ask for a ready bin file, but I'll probably want to make a custom connections in the future instead of daughter cards, and I would much rather make the files myself, than ping the forum each time I need to make a small change :)

The software I used: efinity-2022.2.322-windows-x64 under windows 10

Please Log in or Create an account to join the conversation.

More
27 Apr 2023 12:29 - 27 Apr 2023 12:31 #270062 by PCW
Yeah, for whatever reason the older Efinity versions accept a PLL post divider of one.
I will fix the distributed source, but in the mean time:

1. Open the interface designer and in the PLL section, change the hm2fastclock output
to 175 MHz, then in the IDROMConst.vhd file, change:

constant ClockHigh92T: integer := 180000000; -- 7I92T high speed clock
to
constant ClockHigh92T: integer := 175000000; -- 7I92T high speed clock
Last edit: 27 Apr 2023 12:31 by PCW.
The following user(s) said Thank You: kuknick

Please Log in or Create an account to join the conversation.

More
27 Apr 2023 13:49 #270065 by kuknick
Any reason it shouldn't be 200MHz like most of the other boards?
Looks like it's the easiest change:
reference multiplier 16
post divider 2
procclk divider 4
hm2fastclock divider 2

It seems to work fine. Although it's just an empty board right now without any load.
Or am I doing something completely wrong?

Please Log in or Create an account to join the conversation.

More
27 Apr 2023 14:00 #270066 by PCW
It can be but if you have more than a few say PWMgens it wont meet timing
(I chose a value that could work with more configurations)

Please Log in or Create an account to join the conversation.

More
27 Apr 2023 15:09 #270067 by kuknick
Ok, I've set the clocks to 100/175.
Seems to be working.
Thanks for your help!

Please Log in or Create an account to join the conversation.

Moderators: PCWjmelson
Time to create page: 0.189 seconds
Powered by Kunena Forum