LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)

More
10 Dec 2024 23:54 #316438 by Zayoo
I'm trying to get the gowin toolchain up and running on rpi5. It gives me an error when execute making all.
cnc@raspberrypi:~/riocore/Output/TangNano9K_spi_rpi5/Gateware$ make clean
rm -rf rio.fs rio.json rio_pnr.json rio.tcl abc.history impl
cnc@raspberrypi:~/riocore/Output/TangNano9K_spi_rpi5/Gateware$ make all
gw_sh rio.tcl
/opt/gowin/IDE/bin/gw_sh: 2: Syntax error: Unterminated quoted string
make: *** [Makefile:34: impl/pnr/project.fs] Error 2
cnc@raspberrypi:~/riocore/Output/TangNano9K_spi_rpi5/Gateware$ 
I see you've already mentioned this error. I downloaded and cloned the dev version and it still doesn't work. Any tips...

I see there is another option 'generic_spi'. I will test that on rpi5 too just to get that toolchain working. I don't want to take the TN9 out of the device and program on windows anymore.

 

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

More
11 Dec 2024 05:57 #316451 by meister
on my system, the gowin makefile works fine, are you sure gowin is running on arm64 cpu's ?
The following user(s) said Thank You: Zayoo

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

More
11 Dec 2024 09:11 - 11 Dec 2024 09:27 #316458 by MirkoCNC
@ meister: Great. Thanks.
Last edit: 11 Dec 2024 09:27 by MirkoCNC.

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

More
11 Dec 2024 09:27 #316459 by MirkoCNC
@ Zayoo: I have the same problem with the toolchain on the Pi5.

However, you can use the IDE on a Windows PC. Just copy the files from Gateware and open the project file with the IDE rio.gprj. 

By the way, I am wondering what the maximum SPI speed on the pin headers of the Raspberary looks like to ensure transfer without errors. These are not suitable for very high frequency. Hence, even if the hardware can run very high frequency, the pin headers are the limiting factor.

What is the required SPI frequency to run the Iceshield?

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

More
11 Dec 2024 23:31 #316486 by Zayoo
I can confirm that generic_spi communicate with board.

@MirkoCNC
And not just headers, but also SPI lines. They should be as short as possible. I tested on my bord at 4Mhz no errors at 4.5Mhz wrong data and to many errors.

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

More
12 Dec 2024 15:20 - 12 Dec 2024 15:21 #316521 by Mecanix

I can confirm that generic_spi communicate with board.

@MirkoCNC
And not just headers, but also SPI lines. They should be as short as possible. I tested on my bord at 4Mhz no errors at 4.5Mhz wrong data and to many errors.
 

Something must be awfully wrong somewhere if constraint to only 4meg. I can do 50Mhz no problem with a dedicated PLL clock and differential data lines (terminated at only one end). And more or less 25Mhz over cheap/inductive dupon jumper wires... 
Last edit: 12 Dec 2024 15:21 by Mecanix.

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

More
12 Dec 2024 15:36 #316523 by Mecanix

 

Can't recommend this set-up enough. For those who aren't particularly interested in engineering hardware and want a Snap-On Ready Kit, it just won't get any better than that. That'll do 50meg, prolly capable of more. Oliver did it all for grab  github.com/multigcs/rio-tangbob

Flash the bitstream over, plug-in a shielded 100mb cat6, and be done!!

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

More
12 Dec 2024 16:00 #316526 by meister
the SPI speed depends also on the FPGA-Clock, the SPI-Slave is programmed in verilog and need some clock cycles.

So you need a higher FPGA-Clock or someone have to program a plugin based on the buildin spi slave, but this can not be ported between the different FPGA's (gowin, ice40, ...) and the pins are not freely choosable

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

More
13 Dec 2024 14:12 - 13 Dec 2024 14:16 #316578 by Mecanix
If I recall correctly I've PLL a fpga gpio at 50meg so to rid of that wizzy OSC extra part (im cheap, I know lol). If not 50M SPI then for sure it's full on 25Mhz and plenty capable kit. 

Doesn't matter, what's important to pay attention is something ain't right at 4Mhz, I suspect Lcnc won't be happy about that in fact. Perhaps the raspi is to be avoided if running on such a lazy tick?
Last edit: 13 Dec 2024 14:16 by Mecanix.

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

More
14 Dec 2024 22:06 - 14 Dec 2024 23:14 #316677 by Zayoo
What happened with enable and error hardware implementation in riocore?
Last edit: 14 Dec 2024 23:14 by Zayoo.

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

Time to create page: 0.215 seconds
Powered by Kunena Forum