The demise of Moore's Law and Dennard Scaling has revived interest in specialized computer architectures and accelerators. Verification and testing of this hardware heavily uses cycle-accurate simulation of register-transfer-level (RTL) designs. The best software RTL simulators can simulate designs at 1--1000~kHz, i.e., more than three orders of magnitude slower than hardware. Faster simulation can increase productivity by speeding design iterations and permitting more exhaustive exploration. One possibility is to use parallelism as RTL exposes considerable fine-grain concurrency. However, state-of-the-art RTL simulators generally perform best when single-threaded since modern processors cannot effectively exploit fine-grain parallelism. This work presents Manticore: a parallel computer designed to accelerate RTL simulation. Manticore uses a static bulk-synchronous parallel (BSP) execution model to eliminate runtime synchronization barriers among many simple processors. Manticore relies entirely on its compiler to schedule resources and communication. Because RTL code is practically free of long divergent execution paths, static scheduling is feasible. Communication and synchronization no longer incur runtime overhead, enabling efficient fine-grain parallelism. Moreover, static scheduling dramatically simplifies the physical implementation, significantly increasing the potential parallelism on a chip. Our 225-core FPGA prototype running at 475 MHz outperforms a state-of-the-art RTL simulator on an Intel Xeon processor running at $\approx$ 3.3 GHz by up to 27.9$\times$ (geomean 5.3$\times$) in nine Verilog benchmarks.
翻译:Moore 法律和 Dennard 缩略语的消亡重新唤醒了人们对专门计算机架构和加速器的兴趣。 但是,由于现代处理器无法有效地利用细重平行的模拟,最佳的软件 RTL 模拟器可以模拟1-1000~kHz 的设计,即比硬件慢了三个以上的数量级。 更快的模拟可以通过加速设计迭代和允许更详尽的探索来提高生产率。 一种可能性是使用平行法,因为RTL 暴露了大量精细的货币货币。 然而,由于现代处理器无法有效地利用微细平行的模拟器,因此,最先进的RTL 模拟器一般在单读时表现得最好。 这项工作显示的是:一个平行计算机,旨在加速RTL 模拟。 Manticore使用一个静态散态平行执行模型,以便消除许多简单处理器之间的运行同步障碍。 Manticorecore Centrial 完全依靠它的编译器来安排资源与通信。 由于TRL STL 代码几乎免费运行着一个长期的同步运行, 正在不断运行的运行的磁性平流轨道。