S2D-CIM: A 22nm 128Kb systolic digital compute-in-memory macro with domino data path for flexible vector operation and 2-D weight update in edge AI applications