Reducebit width. 最简单的比如 4 个10 bits数相加,也许就会有人得出需要13bit的结论 C code: F= A+B+C+D Wire [10:0] F_pre1 = A[9:0] + B[9:0]; Wire [11:0] F_pre2 = F_pre1 + C[9:0]; Wire [12:0]F = F_pre2 + D[9:0]; //sum of four10bit only need 12bit result.
特别是有些计算,如果能够通过简单推导或者合并降低位宽,那会既省面积又省power.
Hardmacrovs Register:Tsmc 40 nm工艺下面,简单对比单个寄存器和sram的大小, SDFCNQD1BWP 5.2u2 (Min size ) SDFCNQD2BWP 5.9 u2 For 1prf128x36=5458u2, each bit is 1.18u2 Forsparm576x32=12884, each bit is 0.69u2 Forspram 896x48=23515u2, each bit is 0.546u2 通过查手册,知道单次读写的power, 以便在大量数据需要寄存时,分析到底是用hardmaco 还是 DFF. |