DPGEN_DFF(3)

πŸ“¦ version 5.1.1-unstable-2025-02, in nixos 26.05, nixpkgs unstable

πŸ’… DPGEN_DFF β€” the Dynamic Flip-Flop Macro-Generator ✨

ok so this is a page from the Alliance - genlib User's Manual, and bestie, it's literally about making dynamic flip-flops. let's get into it 🫢


🌸 NAME 🌸

DPGEN_DFF β€” the Dynamic Flip-Flop Macro-Generator. that's it, that's the name, iconic behavior πŸ‘‘


✨ SYNOPSIS ✨

#include  <genlib.h>

void GENLIB_MACRO (DPGEN_DFF, char *modelname, long flags, long N);

πŸ’– DESCRIPTION πŸ’–

okay so what this does is generate a N bits dynamic flip-flop named modelname. and when we say dynamic, we mean it fr fr β€” both of the two latches in this flip-flop are dynamic, which means the data is stored in a capacitor. no cap, it's literally just vibing in a capacitor πŸ¦‹

How it works :

  • wen when set to '1' enables the writing of the flip-flop.

that's the whole mechanic bestie, that's the tea β˜•


πŸŽ€ TERMINAL NAMES πŸŽ€

  1. wen : write enable (1 bit).
  2. ck : clock signal (1 bit).
  3. i0 : data input (N bits).
  4. q : output (N bits).
  5. vdd : power.
  6. vss : ground.

six terminals, all accounted for, we love a complete roster 🌈


πŸ”₯ EXAMPLE πŸ”₯

here's the moment you've been waiting for, the demo, the main character energy:

GENLIB_MACRO(DPGEN_DFF, "model_dff_32"
                      , F_BEHAV|F_PLACE
                      , 32
                      );

GENLIB_LOINS( "model_dff_32"
            , "instance1_dff_32"
            , "wen"
            , "ck"
            , "i0[31:0]"
            ,  "q[31:0]"
            , "vdd", "vss", NULL
            );

a 32-bit dynamic flip-flop getting born and then immediately getting instantiated. it's giving glow up ✨


πŸ‘€ SEE ALSO πŸ‘€


quick vibe check: those terminal names are not optional and that wen signal is the whole personality of this macro, so pls don't sleep on it πŸ’…

and that's the page!! written up by ASIM/LIP6, dated 30 July 2004 β€” yes bestie, this manual page is older than most of us and still serving πŸ’œ mwah, go build some dynamic flip-flops πŸ¦‹βœ¨

πŸ“¦ where this page comes from