With every generation, chips have become more complex and transistor counts have increased exponentially (according to the famous Moore’s Law). This exponential growth in complexity and size has led to a corresponding growth in EDA tool data-base sizes (HDL files, simulation logs, waveform dumps, net-lists, timing reports, GDSII etc) as well as compute power required to processes these data-bases. Most EDA tools are compute intensive as well as memory intensive; demanding high performance from a compute as well as capacity standpoint.
Given the very stringent performance requirements of EDA tools, is it a good idea to use Python as a mainstream development language for EDA tools? We will try to answer this question by sharing some experiences from a tool development project at Arrow Devices.