Leon3 on Xilinx ML605

Hello! :slight_smile:

Today I’ve tried to get the Leon3 processor running on a Xilinx Evaluation board (ML605) to familiarize myself with the Leon. From the grlib-gpl-2020.4-b4261 I used the leon3-xilinx-ml605 design and compiled it using xst tool from ISE 14.7:

cd grlib-gpl-2020.4-b4261/designs/leon3-xilinx-ml605
make ise-map
make ise

While make ise-map gets executed successfully with 0 errors, the make ise command returned with 4 errors:

ERROR:ConstraintSystem:58 - Constraint <NET
"mig_gen.ddr3ctrl/u_memc_ui_top/u_mem_intfc/phy_top0/clk_rsync(?)" TNM_NET =
TNM_clk_rsync;> [leon3mp.ucf(66)]: NET
"mig_gen.ddr3ctrl/u_memc_ui_top/u_mem_intfc/phy_top0/clk_rsync(?)" does not
match any design objects.

ERROR:ConstraintSystem:59 - Constraint <INST
"mig_gen.ddr3ctrl/u_memc_ui_top/u_mem_intfc/phy_top0/u_phy_init/u_ff_phy_init
_data_sel" TNM = "TNM_PHY_INIT_SEL";> [leon3mp.ucf(86)]: INST
"mig_gen.ddr3ctrl/u_memc_ui_top/u_mem_intfc/phy_top0/u_phy_init/u_ff_phy_init
_data_sel" not found.  Please verify that:
1. The specified design element actually exists in the original design.
2. The specified object is spelled correctly in the constraint source file.

ERROR:NgdBuild:604 - logical block 'mig_gen.ddr3ctrl' with type 'mig_37' could
not be resolved. A pin name misspelling can cause this, a missing edif or ngc
file, case mismatch between the block name and the edif or ngc file name, or
the misspelling of a type name. Symbol 'mig_37' is not supported in target
'virtex6'.

ERROR:NgdBuild:604 - logical block
'nosh.cpu[0].l3s.u0/leon3x0/vhdl.nofpshare.grfpw1gen.fpu0/x1.grfpw0/uni.grfpw
0' with type 'grfpw_0_unisim' could not be resolved. A pin name misspelling
can cause this, a missing edif or ngc file, case mismatch between the block
name and the edif or ngc file name, or the misspelling of a type name. Symbol
'grfpw_0_unisim' is not supported in target 'virtex6'.

Partition Implementation Status
-------------------------------

No Partitions were found in this design.

-------------------------------

NGDBUILD Design Results Summary:
Number of errors:     4
Number of warnings:  40

I have not changed anything with the xconfig tool and executed only the above mentioned commands. I don’t know why the design is not compiling with its default configuration.

Any help is appreciated! :slight_smile:

Best Regards,
Julian

Not 100% sure, but don’t you have to run make mig?

Thanks for the hint. The README gives even more instructions… Should have considered reading it in the first place. :wink:

The leon3-xilinx-ml605 design also has the GRFPU enabled by default, so in order to build it from a GPL distribution, you need to disable the FPU. This can be done through xconfig.

Best regards,
Martin