Clk Enable Beschreiben

Gast #4347122
Lesenswert?

Hallo zusammen,


ich frage mich gerade, wie ich am Besten mein Clock Enable beschreibe, 
damit es sicher als solches erkannt wird.

Eine Beschreibung habe ich hier gefunden:
https://www.mikrocontroller.net/articles/Taktung_FPGA/CPLD#Clock_Enable

aber geht auch folgendes?
1
process(clk)
2
begin
3
  if rising_edge(clk) and ce='1' then
4
    -- Mein Code
5
  end if;
6
end process;
Gast #4349130
Lesenswert?

Hallo in die Runde,

diesbezüglich hätte ich nochmal eine Frage: Wäre die Bezeichnung Data 
Input Enable nicht treffender? In den Technologien mit denen ich immer 
gearbeitet habe wurde dieses CE-FF immer mit einem Multiplexer vor dem D 
eingang zwischen Q und Dneu aufgebaut. Gibt es diesbezüglich überhaupt 
richtige CE-FF, die den Takt richtig abschalten?

Vielen Dank,
Andreas
Gast #4349343
Lesenswert?

Andreas schrieb:

> diesbezüglich hätte ich nochmal eine Frage: Wäre die Bezeichnung Data
> Input Enable nicht treffender? In den Technologien mit denen ich immer
> gearbeitet habe wurde dieses CE-FF immer mit einem Multiplexer vor dem D
> eingang zwischen Q und Dneu aufgebaut. Gibt es diesbezüglich überhaupt
> richtige CE-FF, die den Takt richtig abschalten?

CE wird auch gern als "Chip Enable" ausgesprochen, vielleicht ist der 
bessere Ausdruck. Und andersrum bezeichnet man "geschaltete Clocks" 
nicht als enabled clock sondern als "Gated Clock".
Letzlich soll ja die Funktion des Inputs und nicht seine interne 
Realisierung Namensgeber sein.

Einzeln abgeschaltete FF sind auch mir noch nicht begegnet, wenn dann 
werden teile des clock trees zum Strom sparen abgeschaltet.

Data Input Enable deckt IMHO nicht die FF mit synchronen 
Rucksetzeingängen ab, da CE sich nur den D Eingang aber nicht auf die R- 
und S-Eingänge auswirkt. die aber wie D das gespeicherte datum 
verändern.

MfG,
Gast #4349345
Lesenswert?

Klaus schrieb:

> ich frage mich gerade, wie ich am Besten mein Clock Enable beschreibe,
> damit es sicher als solches erkannt wird.
>
> Eine Beschreibung habe ich hier gefunden:
> https://www.mikrocontroller.net/articles/Taktung_FPGA/CPLD#Clock_Enable
>
> aber geht auch folgendes?
>
1
> process(clk)
2
> begin
3
>   if rising_edge(clk) and ce='1' then
4
>     -- Mein Code
5
>   end if;
6
> end process;
7
>

Das ist von Synthesetool zu Synthesetool anders, da hilft dir nur der 
jeweilige synthesis style guide weiter. An die Vorgaben dort sollte man 
sich strikt halten, sonst kann man schnell LUT's vors FF setzen wo keine 
nötig sind.

Dazu sollte man unbedingt S.6 und S.8 des White Paper - Klassikers 
Xilinx WP275 anschauen: 
http://www.xilinx.com/support/documentation/white_papers/wp275.pdf

MfG,

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