Skip to content

Conversation

@GMM-7550
Copy link

Cologne Chip GateMate FPGA support is updated from the proprietary p_r tool to nextpnr and migrated from the old Tool API to the Flow API

Copy link
Owner

@olofk olofk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this! A few things that need to be fixed and I would appreciate some simple tests also. Looks great otherwise.


_flow = {
"yosys": {"fdto": {"arch": "gatemate", "output_format": "json",
"yosys_synth_options": ["-luttree", "-nomx8"],
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these options strictly needed? We try to avoid hardcoding any options unless necessary since that makes it harder for users to change to another value.

}},
"nextpnr": {"deps": ["yosys"],
"fdto": {"arch": "gatemate",
"nextpnr_options": ["--router router2"],
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this option strictly needed? We try to avoid hardcoding any options unless necessary since that makes it harder for users to change to another value.

"-lib",
"ccag",
" ".join(self.tool_options.get("p_r_options", "")),
"$(NEXTPNR)",
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's better to just have nextpnr-himbaechel here directly. This allows us to run a containerized version of nextpnr through the EDALIZE_LAUNCHER mechanism like we can do with the other nextpnr versions already.

commands.add(command, [cfg_target], [synth_out])

commands.set_default_target(targets)
commands.add_var("GMPACK := $(shell which gmpack)")
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use gmpack directly. We can use an EDALIZE_LAUNCHER to override the name if we want instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants