Manual optimization of Register Transfer Level (RTL) datapath is commonplace in industry but holds back development as it can be very time consuming. We utilize the fact that a complex transformation of one RTL into another equivalent RTL can be broken down into a sequence of smaller, localized transformations. By representing RTL as a graph and deploying modern graph rewriting techniques we can automate the circuit design space exploration, allowing us to discover functionally equivalent but optimized architectures. We demonstrate that modern rewriting frameworks can adequately capture a wide variety of complex optimizations performed by human designers on bit-vector manipulating code, including significant error-prone subtleties regarding the validity of transformations under complex interactions of bitwidths. The proposed automated optimization approach is able to reproduce the results of typical industrial manual optimization, resulting in a reduction in circuit area by up to 71%. Not only does our tool discover optimized RTL, but also correctly identifies that the optimal architecture to implement a given arithmetic expression can depend on the width of the operands, thus producing a library of optimized designs rather than the single design point typically generated by manual optimization. In addition, we demonstrate that prior academic work on maximally exploiting carry-save representation and on multiple constant multiplication are both generalized and extended, falling out as special cases of this paper.
翻译:手工优化登记册传输水平(RTL) 数据路径的手工优化在工业中很常见,但会阻碍开发,因为它可能非常耗时。 我们利用将一个 RTL 复杂转换成另一个等效 RTL 可以细分成一个小的局部转换序列。 通过将 RTL 代表成图表和采用现代图形重写技术, 我们可以将电路设计空间探索自动化, 使我们能够发现功能等同但优化的架构。 我们证明现代重写框架能够充分捕捉人类设计者在位子操纵代码方面完成的多种复杂优化, 包括对于在位子的复杂互动下转换的有效性, 包括大量易出错的细微细节。 拟议的自动化优化方法可以复制典型工业手工优化的结果, 导致电路区缩小到71% 。 我们的工具不仅能发现优化的 RTL, 而且正确确定执行给定的算术表达的最佳架构取决于歌织的宽度, 从而生成一个优化设计图书馆, 而不是通常由手动优化生成的单一设计点。 此外, 我们展示了以往的扩展的学术工作, 以及多重复制。