3 ms·
... and adding an integer to a pointer would be hellaciously expensive. If you have the foundry SPICE models you can calculate these kinds of lower-limit value
by crotchfire 3y ago
... and adding an integer to a pointer would be hellaciously expensive.
If you have the foundry SPICE models you can calculate these kinds of lower-limit values. I did this for 45nm a long time ago and vaguely recall getting numbers down in the double-digit femtojoule range for 32-bit addition, measuring only transistor R+C.
But the transistors don't really cost anything; all the CV^2 is in charging and discharging the wires. And the "C" is totally geometry-dependent. It's not like software -- at least not when you're pushing all the limits -- everything affects everything else.
- nullc 3y ago> ... and adding an integer to a pointer would be hellaciously expensive. Fair, though if it were only the PC and instruction memory that were permuted that isn't much of an issue. It's not that bad the circuit looks more like a multiplier rather than an adder. (search term would be LFSR fast-forward or jump-ahead). PC is updated presumably on every cycle, while adding an an integer to it is probably a rare operation (just don't use computed jumps...).
- crotchfire 3y agoit were only the PC and instruction memory that were permuted that isn't much of an issue This is a neat idea, but you still need PC-relative jump instructions in order to have Position Independent Executables.