  Computing in-memory (CiM) has emerged as an attractive technique to mitigate
the von-Neumann bottleneck. Current digital CiM approaches for in-memory
operands are based on multi-wordline assertion for computing bit-wise Boolean
functions and arithmetic functions such as addition. However, most of these
techniques, due to the many-to-one mapping of input vectors to bitline
voltages, are limited to CiM of commutative functions, leaving out an important
class of computations such as subtraction. In this paper, we propose a CiM
approach, which solves the mapping problem through an asymmetric wordline
biasing scheme, enabling (a) simultaneous single-cycle memory read and CiM of
primitive Boolean functions (b) computation of any Boolean function and (c) CiM
of non-commutative functions such as subtraction and comparison. While the
proposed technique is technology-agnostic, we show its utility for
ferroelectric transistor (FeFET)-based non-volatile memory. Compared to the
standard near-memory methods (which require two full memory accesses per
operation), we show that our method can achieve a full scale two-operand
digital CiM using just one memory access, leading to a 23.2% - 72.6% decrease
in energy-delay product (EDP).
