- Posts: 42
- Thank you received: 0
ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
- wuyatom
- Offline
- Senior Member
-
Less
More
3 years 11 months ago #256494
by wuyatom
Why can't I use stepgen_improvement and main to compile into firmware, only the encoder can be used to compile successfully
The picture above shows the result, I don't know what's wrong, I've reverted countless times with virtual machine snapshots, still the same problem, I installed it according to DePrutser's instructions
Replied by wuyatom on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
Why can't I use stepgen_improvement and main to compile into firmware, only the encoder can be used to compile successfully
The picture above shows the result, I don't know what's wrong, I've reverted countless times with virtual machine snapshots, still the same problem, I installed it according to DePrutser's instructions
- sensille
- Offline
- Senior Member
-
Less
More
- Posts: 58
- Thank you received: 17
3 years 11 months ago #256497
by sensille
Replied by sensille on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
5A-75E builds, but it fails timing:
Warning: Max frequency for clock '$glbnet$crg_clkout0': 42.97 MHz (FAIL at 50.00 MHz)
Warning: Max frequency for clock '$glbnet$eth_clocks_rx$TRELLIS_IO_IN': 107.31 MHz (FAIL at 125.00 MHz)
Warning: Max frequency for clock '$glbnet$crg_clkout0': 42.97 MHz (FAIL at 50.00 MHz)
Warning: Max frequency for clock '$glbnet$eth_clocks_rx$TRELLIS_IO_IN': 107.31 MHz (FAIL at 125.00 MHz)
- TOLP2
- Offline
- Elite Member
-
Less
More
- Posts: 225
- Thank you received: 178
3 years 11 months ago - 3 years 11 months ago #256498
by TOLP2
Replied by TOLP2 on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
Please use Python 3.8 or later. That will solve the import error.
About timing: this happened with the last commit on stepgen_improvement. Have to revert that commit (or you can try to pull using the commit hash of the commit before). Try to solve that tonight.
About timing: this happened with the last commit on stepgen_improvement. Have to revert that commit (or you can try to pull using the commit hash of the commit before). Try to solve that tonight.
Last edit: 3 years 11 months ago by TOLP2. Reason: Added info on timing fail
- sensille
- Offline
- Senior Member
-
Less
More
- Posts: 58
- Thank you received: 17
3 years 11 months ago #256510
by sensille
Replied by sensille on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
Okay, I think I see what you're doing here. To be able to use the MESA-protocol it would be necessary to replace etherbone by our own Ethernet/WB controller, which is not very attractive. Also the memory would need remapping.
Another question that popped up in my mind while reading through the sources ... why not bake the json-config into the firmware and make it available to the host? This way we would get a completely self-identifying card, only the IP address would have to be known to the host.
Regarding timing: is it imperative that the general clock stays at 50MHz? Why not reduce it to 25MHz to relax the timing requirements? Ethernet clock has to stay at 125MHz, of course, but with the right setting I have been able to meet that.
Another question that popped up in my mind while reading through the sources ... why not bake the json-config into the firmware and make it available to the host? This way we would get a completely self-identifying card, only the IP address would have to be known to the host.
Regarding timing: is it imperative that the general clock stays at 50MHz? Why not reduce it to 25MHz to relax the timing requirements? Ethernet clock has to stay at 125MHz, of course, but with the right setting I have been able to meet that.
- muvideo
- Offline
- Senior Member
-
Less
More
- Posts: 62
- Thank you received: 30
3 years 11 months ago #256521
by muvideo
Hi, about the self identification, this is what I'm working on right now on my version of the driver ( github.com/faeboli/Lcnc ).
The idea is to report in a pair of registers the firmware contents in the form of Number of each peripheral, and make the driver adapt to It.
My firmware Is also failing the timing closure on 50MHz, but my board (5a75e) seem to be working ok. I think the clock can be lowered to 40MHz or less without issues.
Fabio
Replied by muvideo on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
Another question that popped up in my mind while reading through the sources ... why not bake the json-config into the firmware and make it available to the host? This way we would get a completely self-identifying card, only the IP address would have to be known to the host.
Regarding timing: is it imperative that the general clock stays at 50MHz? Why not reduce it to 25MHz to relax the timing requirements?
Hi, about the self identification, this is what I'm working on right now on my version of the driver ( github.com/faeboli/Lcnc ).
The idea is to report in a pair of registers the firmware contents in the form of Number of each peripheral, and make the driver adapt to It.
My firmware Is also failing the timing closure on 50MHz, but my board (5a75e) seem to be working ok. I think the clock can be lowered to 40MHz or less without issues.
Fabio
- TOLP2
- Offline
- Elite Member
-
Less
More
- Posts: 225
- Thank you received: 178
3 years 11 months ago #256545
by TOLP2
Replied by TOLP2 on topic ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board
I'm not sure yet about self identification, because the config file also allows a user to create names for pins. This might make the HAL a little bit more accessible then the numbers. Another thing which is in the configuration is the IP-address of the card, which is required to start. However, one can always set the IP-address ass a parameter for the component. For now I see the JSON a part of the HAL-structure of LinuxCNC, just as the ini-file and the hal-files.
For slowing down the clock if timing issues are not met: in the JSON-file you can set the parameter "clock_frequency" to a lower value when necessary. Please note, you need to pull the latest version to be able to do this.
Made a chance in the steogen-config in order to make it more flexible (adding more stepper types such as differential, unipolar, etc.). When pulling the latest, please note that the format of the JSON has changed. Please refer to the stepgen example for the correct format.
For slowing down the clock if timing issues are not met: in the JSON-file you can set the parameter "clock_frequency" to a lower value when necessary. Please note, you need to pull the latest version to be able to do this.
Made a chance in the steogen-config in order to make it more flexible (adding more stepper types such as differential, unipolar, etc.). When pulling the latest, please note that the format of the JSON has changed. Please refer to the stepgen example for the correct format.
Moderators: PCW, jmelson
Time to create page: 2.178 seconds