General purpose on-chip processors have become ubiquitous today. These processors range from extremely small and low power micro-controllers (used in motor controls, robotic platforms, home-appliances, etc.) to hefty and high-performance multi-core processors (used in servers and supercomputers). However, the growth of modern domain-specific languages (like Caffe, Tensorflow, etc.) and the need for more specialized features like machine-learning, enhanced security, etc. has forced the industry to look beyond general purpose solutions and towards mass-customization. While a large number of companies today can develop custom ASICs (Application Specific Integrated Chips) and license specific silicon blocks from chip-vendors to develop a customized SoCs (System on Chips), at the heart of every design is the processor and the associated hardware. To serve modern workloads better, these processors also need to be customized, upgraded, re-designed and augmented suitably. This requires that vendors/consumers have access to relevant processor variants and the flexibility to make modifications and ship them at an endurable cost. Today, a fair share of the processor market is dominated by just a few giants like Intel, ARM, AMD, etc. Each of these companies have an impressive IP portfolio of processors catering to various market trends. Almost all of the IP offerings of these companies fall under a licensing model which varies significantly. For example, Intel licenses its ISA only to limited users like AMD. ARM on the other hand offers a broad of range of licenses from ISA to architectural licenses. Apart from just license fees, these companies also charge royalties on devices using their IPs. Having sustained a successful IP model, today some of these licenses can go up to 1-10\$ Million in addition to strict NDAs which may restrict the user from making any proprietary changes or even publishing relevant numbers. All these aspects of the licensing model, while benefiting the respective companies, has made is difficult for consumers to develop truly customized solutions for modern day workloads. Some of these customizations cater to too low a market sector for the giants themselves to invest in, thereby prohibiting growth and novelty. In essence, the closed-source IP model in the processor community is proving to be a hindrance to build scalable solutions. A similar struggle in the software industry against closed-source IP led to the rise of the open-source Linux kernel in the 1990s. Since then the software community has seen a plethora of open-source software and tool-chains which have been adopted by industry and academia both. The hardware community however, hasn't seen such a revolution yet and is probably in dire need of the same. An open-source processor ecosystem will not only boost customization but also allow bright minds of the industry and academia to collaborate and provide a stable and viable framework competent enough with modern-day products. SHAKTI, an open-source initiative by IIT-Madras (Indian Institute of Technology Madras) is primarily aimed at building such open-source processor development ecosystems which can equip the community with enough ammunition to build custom and industrial grade processors without the hassle of licensing, NDAs, royalties or any other sort of restrictions.
The SHAKTI Processor Program, was started as an academic initiative back in 2014 by the RISE group at IIT-Madras. Realizing the limitations of the processor industry mentioned above, the initiative aimed at not only creating open-source industrial grade processors but also building associated components of a bigger ecosystem - like interconnect fabrics, scalable verification platforms, peripheral IPs, etc. - which enables rapid adoption of the processors. Some of the major highlights of the program which make it a viable option for adoption are: