From 6b018c491565e597479060df2fa4aca8f4b73e77 Mon Sep 17 00:00:00 2001 From: Gwenhael Goavec-Merou Date: Thu, 31 Aug 2023 16:07:12 +0200 Subject: [PATCH] soc/cores/clock/efinix: don't hardcore create_clock (fix warning because clock is created after set_false_path), explicit clock name (fix warning when signal is absorbed) --- litex/soc/cores/clock/efinix.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/litex/soc/cores/clock/efinix.py b/litex/soc/cores/clock/efinix.py index 9b07aa4ba..14794294b 100644 --- a/litex/soc/cores/clock/efinix.py +++ b/litex/soc/cores/clock/efinix.py @@ -96,11 +96,13 @@ class EFINIXPLL(LiteXModule): assert self.nclkouts < self.nclkouts_max clk_out_name = f"{self.name}_clkout{self.nclkouts}" if name == "" else name - self.platform.toolchain.additional_sdc_commands.append(f"create_clock -period {1e9/freq} {clk_out_name}") if cd is not None: self.platform.add_extension([(clk_out_name, 0, Pins(1))]) - self.comb += cd.clk.eq(self.platform.request(clk_out_name)) + clk_name = f"{cd.name}_clk" + clk_out = self.platform.request(clk_out_name) + self.comb += cd.clk.eq(clk_out) + self.platform.add_period_constraint(clk=clk_out, period=1e9/freq, name=clk_name) if with_reset: self.specials += AsyncResetSynchronizer(cd, ~self.locked) self.platform.toolchain.excluded_ios.append(clk_out_name)