Lattice: Wann ist ein Signal (Takt) auch ein Clock?

Gast #3788345
Lesenswert?

Hallo,

ich verwende Neuerdings Lattice Diamond und habe Probleme mit den Clock 
Ressourcen.

Im Spreadsheet View werden mir unter "Clock Ressource" einige 
Clock-Signale angezeigt, aber leider auch einige nicht.

Wann ist denn ein Signal auch ein Clock?

Z.B. habe ich ein Output-Signal aus der EPLLD Komponente namens 
CLKOP_OUT

>PLL : EPLLD port map(
> CLKI => CLK_IN,
> ...
> CLKOP => CLKOP_OUT,
> CLKINTFB => iClkIntFB);

Kommischerweise wird unter "Clock Ressource" iClkIntFB als Clock erkannt 
aber CLKOP_OUT ist nicht aufzufinden...

Oder ist es gar nicht notwendig CLKOP_OUT zu definieren weil es über die 
PLL bereits definiert ist? So würde es von Xilinx kennen aber da ich mir 
nicht sicher bin wollte ich das Signal einfach definieren...

Danke,
Seb
Gast #3788980
Lesenswert?

Sebastian schrieb:
> Hallo,
>
> ich verwende Neuerdings Lattice Diamond und habe Probleme mit den Clock
> Ressourcen.
>
> Im Spreadsheet View werden mir unter "Clock Ressource" einige
> Clock-Signale angezeigt, aber leider auch einige nicht.
>
> Wann ist denn ein Signal auch ein Clock?
>
> Z.B. habe ich ein Output-Signal aus der EPLLD Komponente namens
> CLKOP_OUT
>
>>PLL : EPLLD port map(
>> CLKI => CLK_IN,
>> ...
>> CLKOP => CLKOP_OUT,
>> CLKINTFB => iClkIntFB);
>
> Kommischerweise wird unter "Clock Ressource" iClkIntFB als Clock erkannt
> aber CLKOP_OUT ist nicht aufzufinden...
>
> Oder ist es gar nicht notwendig CLKOP_OUT zu definieren weil es über die
> PLL bereits definiert ist? So würde es von Xilinx kennen aber da ich mir
> nicht sicher bin wollte ich das Signal einfach definieren...
>
> Danke,
> Seb

Warum verwendest du nicht IPExpress um die PLL aufzusetzen?

Davon abgesehen hultigt Synplify dem McMurphy Prinzip: bei mehreren 
Namem für ein Signal verwende für die Clock immer den, mit dem der 
Benutzer am wenigsten was anfangen kann. Ach ja, und nach der nächsten 
Änderung einen anderen.  (Es gibt das Attribut keep um Namen zu 
erzwingen)

Schau dir den ClockReport nach P&R an, der zeigt alle Clocksignale mit 
tasächlicher Quelle und Verwendung an.
Gast #3789631
Lesenswert?

Hallo Lattice User,

danke für dein Feedback. Wie verwendet man das Attribut keep?
Im Namen als z.B. statt clk, dann clk_keep oder meinst du "attribute 
syn_keep", aber bei letzterem geht meines Wissens nicht um die 
Namensgebung...

Danke,
Seb
Gast #3790197
Lesenswert?

Wenn du in deiner nachfolgenden Schaltung einen Clock gar nicht 
verwendest, dann wird dieser auch nicht auf den Clock-Tree geroutet und 
erscheint somit auch nicht im Floorplanner.
Das Signal wird einfach wegoptimiert.

Könnte das die Ursache sein?
Gast #3790383
Lesenswert?

Sebastian schrieb:
> Hallo Lattice User,
>
> danke für dein Feedback. Wie verwendet man das Attribut keep?
> Im Namen als z.B. statt clk, dann clk_keep oder meinst du "attribute
> syn_keep", aber bei letzterem geht meines Wissens nicht um die
> Namensgebung...
>

Ich meinte syn_keep, da geht es zwar primär nicht um die Namensgebung, 
hat mit bei Clocks bisher mit einer Ausnahme immer geholfen.
Ich mache es auf dem toplevel signal.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren