Skip to content

Activity propagation for power should also support propagation assuming signal switches on posedge and negedge #335

@hongted

Description

@hongted

For more pessimistic power propagation for combinational circuits, the user should be able to enable a mode assume signals can switch on both posedge and negedge of the relevant clock.

For example, consider a NAND2 Z=!(AB) with density(A)=density(B)=0.5 toggles/cycle, duty(A)=0.5.

Assuming A, B, and Z can toggle only on the posedge clock should give a density(Z)=0.375.


Assuming they can toggle on either posedge or negedge gives a density(Z)=0.4375 according to:

  1. The clock toggles twice in each cycle
  2. For any given edge, the probability of A or B switching is 0.25, and all signals are equally likely.
  3. There are 6 possible transitions out of 16 where Z where the probability of each transition is given below for a sum of 0.21875
 00 to 11 | 0.5*0.5*0.25*0.25 = 0.015625
 01 to 11 | 0.5*0.5*0.25*0.75 = 0.046875
 10 to 11 | 0.046875
 11 to 00 | 0.015625
 11 to 01 | 0.046875
 11 to 10 | 0.046875
  1. For a given cycle, there are two chances for a transition so the density of Z is 2 * 0.21875 = 0.4375

This issue is to add a command where the user can switch propagation to the 2nd mode described above.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions