SHAKTI (microprocessor)
   HOME

TheInfoList



OR:

Shakti (stylized as SHAKTI) is an
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
initiative by the Reconfigurable Intelligent Systems Engineering (RISE) group at
IIT Madras The Indian Institute of Technology Madras (IIT Madras or IIT-M) is a public technical university located in Chennai, Tamil Nadu, India. It is one of the eight public Institutes of Eminence of India. As an Indian Institute of Technology (IIT), ...
to develop the first indigenous industrial-grade processor. The aims of the Shakti initiative include building an
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
production-grade processor, complete systems on a chip,
microprocessor development board A microprocessor development board is a printed circuit board containing a microprocessor and the minimal support logic needed for an electronic engineer or any person who wants to become acquainted with the microprocessor on the board and to lea ...
s, and a Shakti-based
software platform A computing platform, digital platform, or software platform is the infrastructure on which software is executed. While the individual components of a computing platform may be obfuscated under layers of abstraction, the ''summation of the requi ...
. The main focus of the team is computer architecture research to develop SoCs, which are competitive with commercial offerings in the market in area, power, and performance. The
source code In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer. Since a computer, at base, only ...
for Shakti is open-sourced under the
Modified BSD License BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD licen ...
. V. Kamakoti carried out the SHAKTI Microprocessor Project, at Prathap Subrahmanyam Centre for Digital Intelligence and Secure Hardware Architecture (Department of Computer Science & Engineering, IIT Madras). The
Ministry of Electronics and Information Technology The Ministry of Electronics and Information Technology (MEITy) is an executive agency of the Government of India, Union Government of the India, Republic of India. It was carved out of the Ministry of Communications and Information Technology (I ...
supports it through its Digital India RISC-V initiative.


Processors

Shakti processors are based on the
RISC-V RISC-V (pronounced "risk-five") is an open standard instruction set architecture (ISA) based on established reduced instruction set computer (RISC) principles. The project commenced in 2010 at the University of California, Berkeley. It transfer ...
instruction set architecture In computer science, an instruction set architecture (ISA) is an abstract model that generally defines how software controls the CPU in a computer or a family of computers. A device or program that executes instructions described by that ISA, ...
(ISA). The processors are designed to have either 22 nm process fin field-effect transistor (FinFET) or
180 nm process The 180 nm process is a MOSFET (CMOS) semiconductor process technology that was commercialized around the 1998–2000 timeframe by leading semiconductor companies, starting with TSMC and Fujitsu, then followed by Sony, Toshiba, Intel, AMD, Texas ...
complementary metal–oxide–semiconductor (
CMOS Complementary metal–oxide–semiconductor (CMOS, pronounced "sea-moss ", , ) is a type of MOSFET, metal–oxide–semiconductor field-effect transistor (MOSFET) semiconductor device fabrication, fabrication process that uses complementary an ...
) technology nodes depending on the manufacturing
semiconductor fabrication plant In the microelectronics industry, a semiconductor fabrication plant, also called a ''fab'' or a ''foundry'', is a factory where integrated circuits (ICs) are manufactured. The ''cleanroom'' is where all fabrication takes place and contains th ...
(foundry). Shakti plans a family of processors as part of its road-map, catering to different segments of the market. They have been broadly categorized into "Base Processors", "Multi-Core Processors" and "Experimental Processors". The E and C-classes core are for
Internet of things Internet of things (IoT) describes devices with sensors, processing ability, software and other technologies that connect and exchange data with other devices and systems over the Internet or other communication networks. The IoT encompasse ...
(IoT),
embedded system An embedded system is a specialized computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is e ...
, and
desktop computer A desktop computer, often abbreviated as desktop, is a personal computer designed for regular use at a stationary location on or near a desk (as opposed to a portable computer) due to its size and power requirements. The most common configuratio ...
markets. The processor design is free of any royalty and is
open-source license Open-source licenses are software licenses that allow content to be used, modified, and shared. They facilitate free and open-source software (FOSS) development. Intellectual property (IP) laws restrict the modification and sharing of creative ...
d under the modified
BSD License BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD lic ...
. E-class and C-class cores are both implemented in
Bluespec Bluespec, Inc. is an American semiconductor device electronic design automation company based in Framingham, Massachusetts, and co-founded in June 2003 by computer scientists Arvind Mithal, professor of the Massachusetts Institute of Technology (M ...
SystemVerilog SystemVerilog, standardized as IEEE 1800 by the Institute of Electrical and Electronics Engineers (IEEE), is a hardware description and hardware verification language commonly used to model, design, simulate, test and implement electronic sy ...
(BSV) language, a
Haskell Haskell () is a general-purpose, statically typed, purely functional programming language with type inference and lazy evaluation. Designed for teaching, research, and industrial applications, Haskell pioneered several programming language ...
dialect. The Shakti project aims to build 6 variants of processors based on the RISC-V ISA.


Base classes of processors


E-class

The E-class are 32- and
64-bit In computer architecture, 64-bit integers, memory addresses, or other data units are those that are 64 bits wide. Also, 64-bit central processing units (CPU) and arithmetic logic units (ALU) are those that are based on processor registers, a ...
microcontroller A microcontroller (MC, uC, or μC) or microcontroller unit (MCU) is a small computer on a single integrated circuit. A microcontroller contains one or more CPUs (processor cores) along with memory and programmable input/output peripherals. Pro ...
s able to support all extensions of the RISC-V ISA, for low-power and low computer applications. The E-class is an in-order 3 stage
pipeline A pipeline is a system of Pipe (fluid conveyance), pipes for long-distance transportation of a liquid or gas, typically to a market area for consumption. The latest data from 2014 gives a total of slightly less than of pipeline in 120 countries ...
having an operational frequency of less than 200 MHz on silicon. It is positioned against
ARM In human anatomy, the arm refers to the upper limb in common usage, although academically the term specifically means the upper arm between the glenohumeral joint (shoulder joint) and the elbow joint. The distal part of the upper limb between ...
's M-class ( Cortex-M series) cores. It can run
real-time operating system A real-time operating system (RTOS) is an operating system (OS) for real-time computing applications that processes data and events that have critically defined time constraints. A RTOS is distinct from a time-sharing operating system, such as Unix ...
s like
FreeRTOS FreeRTOS is a real-time operating system Kernel (operating system), kernel for embedded devices that has been ported to 40 microcontroller platforms. It is distributed under the MIT License. History The FreeRTOS kernel was originally developed ...
,
Zephyr In European tradition, a zephyr is a light wind or a west wind, named after Zephyrus, the Greek god or personification of the west wind. Zephyr may also refer to: Arts and media Fictional characters * Zephyr (comics), in the Marvel Comics univers ...
, and eChronos. Market segments of E-class processor support
smart card A smart card (SC), chip card, or integrated circuit card (ICC or IC card), is a card used to control access to a resource. It is typically a plastic credit card-sized card with an Embedded system, embedded integrated circuit (IC) chip. Many smart ...
s, IoT devices, motor controls, and robotic platforms. E-arty35T is a SoC built around E-class. The E-arty35T SoC is a single-chip
32-bit In computer architecture, 32-bit computing refers to computer systems with a processor, memory, and other major system components that operate on data in a maximum of 32- bit units. Compared to smaller bit widths, 32-bit computers can perform la ...
E-class microcontroller with 128kB RAM. It has 32
general-purpose input/output A general-purpose input/output (GPIO) is an uncommitted digital signal pin on an integrated circuit or electronic circuit (e.g. MCUs/ MPUs) board that can be used as an input or output, or both, and is controllable by software. GPIOs have no p ...
(GPIO) pins (out of which upper 16 GPIO pins are dedicated to onboard LEDs and switches), a platform level interrupt controller (PLIC), a Counter, 2
Serial Peripheral Interface Serial Peripheral Interface (SPI) is a de facto standard (with many variants) for synchronous serial communication, used primarily in embedded systems for short-distance wired communication between integrated circuits. SPI follows a masterâ ...
(SPI), 2
universal asynchronous receiver-transmitter A universal asynchronous receiver-transmitter (UART ) is a peripheral device for asynchronous serial communication in which the data format and transmission speeds are configurable. It sends data bits one by one, from the least significant to ...
(UART), 1 Inter-Integrated Circuit (
I²C I2C (Inter-Integrated Circuit; pronounced as "" or ""), alternatively known as I2C and IIC, is a synchronous, multi-master/multi-slave, single-ended, serial communication bus invented in 1980 by Philips Semiconductors (now NXP Semiconduct ...
), 6 pulse-width modulator (PWM) and an inbuilt Xilinx
analog-to-digital converter In electronics, an analog-to-digital converter (ADC, A/D, or A-to-D) is a system that converts an analog signal, such as a sound picked up by a microphone or light entering a digital camera, into a Digital signal (signal processing), digi ...
(X-ADC).


C-class

The C-class is a
64-bit In computer architecture, 64-bit integers, memory addresses, or other data units are those that are 64 bits wide. Also, 64-bit central processing units (CPU) and arithmetic logic units (ALU) are those that are based on processor registers, a ...
controller class of processor, for mid-range embedded application. The core is highly optimized, 6-stage in-order design with MMU support and the capability to run operating systems like
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
and Sel4. It is extremely configurable with the support of the standard RV64GC ISA extensions. It is for mid-range compute systems running over 200-800 MHz. It can also be customized up to 2 GHz. It is positioned against ARM's Cortex A35/A55. The application domain of this class ranges from embedded systems, motor-control, IoT, storage, industrial applications to low-cost high-performance Linux based applications such as networking, gateways etc. C-arty100T is a SoC built around the C-class. The C-arty100T SoC is a single-chip 64-bit C-class microcontroller with 128MB DDR3 RAM, 16 General Purpose Input Output (GPIO) pins, a Platform Level Interrupt Controller (PLIC), a Counter, 1 Universal Asynchronous Receiver Transmitter (UART) and 1 Inter-Integrated Circuit (I²C). It is for mid-range application workloads with a very low power use and support for optional memory protection.


I-class

The I-class is a 64-bit processor for the compute, mobile, storage, and networking platforms. Its features include
out-of-order execution In computer engineering, out-of-order execution (or more formally dynamic execution) is an instruction scheduling paradigm used in high-performance central processing units to make use of instruction cycles that would otherwise be wasted. In t ...
, multithreading, aggressive
branch prediction In computer architecture, a branch predictor is a digital circuit that tries to guess which way a branch (e.g., an if–then–else structure) will go before this is known definitively. The purpose of the branch predictor is to improve the flow ...
, non-blocking caches and deep
instruction pipelining In computer engineering, instruction pipelining is a technique for implementing instruction-level parallelism within a single processor. Pipelining attempts to keep every part of the processor busy with some instruction by dividing incoming in ...
stages. The operational clock frequency of this processor is 1.5-2.5 GHz. As of April 2020, the team was working on implementing atomics, memory dependence prediction, instruction window/scheduler optimizations, implementation of some functional units, performance analysis/projections, optimizations to meet first-cut target frequency on 1 GHz on 22 nm processor.


Multicore processors


M-class

A mobile class processor with a maximum of eight cores, the cores being a combination of C and I class cores. The M-class processors are for general-purpose compute, low-end server and mobile applications. The operation frequency ranges up to 2.5 GHz. It supports large issue size, quad-threaded and optional NoC fabric. The M-class processors are optimized for various power and performance goals.


S-class

The S-Class is a 64-bit
superscalar A superscalar processor (or multiple-issue processor) is a CPU that implements a form of parallelism called instruction-level parallelism within a single processor. In contrast to a scalar processor, which can execute at most one single in ...
,
multi-threaded In computer architecture, multithreading is the ability of a central processing unit (CPU) (or a single core in a multi-core processor) to provide multiple threads of execution. Overview The multithreading paradigm has become more popular a ...
variant for desktop and enterprise server uses. Its supports 2–16 cores with a clock frequency of about 1.2–3 GHz.


H-class

The H-class is a 64-bit processor for highly parallel enterprise, HPC, and analytics applications. The cores can be a combination of C or I class, single-thread performance driving the core choice. The H-class has up to 128 cores with multiple accelerators per core.


Experimental processors

These are experimental/research projects which focus on developing a high security and fault tolerant processor.


T-class

The T-class is aimed to provide additional hardware support for securing information from memory-based attacks. Its design focuses on a unified hardware framework for mitigating spatial and temporal memory attacks.


F-class

The F-class is a fault-tolerant version of the base class processor. Features include redundant compute blocks (like DMR and TMR), temporal redundancy modules to detect permanent faults, lock-step core configurations, fault localization circuits, ECC for critical memory blocks and redundant bus fabrics.


Tapeouts

Two C-class processors (codenamed ''RIMO'' and ''Risecreek'') and one E-class processor (''Moushik'') have been taped-out so far.


RIMO

RIMO is the code name of the Shakti C-class based SoC that has been taped-out at Semi-Conductor Laboratory at Mohali using 180 nm process technology. The 144 sq.mm. chip has been tested to operate at a frequency of up to 70 MHz. The chip has been packaged on a 208-pin Ceramic Quad Flat Pack (CQFP).


Risecreek

CREEK is the code name of the Shakti C-class based SoC that has been taped-out at Intel's Oregon fab using a 22nm FinFET process. The 16mm² chip has been tested to operate at a frequency of up to 350 MHz. The chip has been packaged on a 208-pin Ball Grid Array (BGA).


Moushik

Moushik is the code name of the Shakti E-class based SoC that has been taped-out at SCL using 180 nm process technology. It operates in frequency of 100 MHz and developed along with a motherboard called Ardonyx 1.0.


IRIS

IIT Madras The Indian Institute of Technology Madras (IIT Madras or IIT-M) is a public technical university located in Chennai, Tamil Nadu, India. It is one of the eight public Institutes of Eminence of India. As an Indian Institute of Technology (IIT), ...
and ISRO Inertial Systems Unit successfully designed and booted a 64-bit IRIS (Indigenous RISC-V Controller for Space Applications) chip based on the SHAKTI baseline processor in February 2025. The chip configuration takes into account the processing power and functional needs of the devices and sensors utilized in ISRO missions. To improve dependability, fault-tolerant internal memory were interfaced with the SHAKTI core. IRIS is the third chip produced by SCL using 180 nm process, following RIMO in 2018 and MOUSHIK in 2020. The chip packaging process was handled by
Tata Advanced Systems Tata Advanced Systems Limited (TASL) is an Indian aerospace manufacturing, military engineering and defense technology company. It is a fully owned subsidiary of Tata Sons, a holding company for the Tata Group. History TASL entered into a j ...
. Syrma SGS finished the installation and assembly, while PCB Power developed the motherboard. Chip design, fabrication, packaging, motherboard design and fabrication, software, and boot were all completed in India validating the presence of expertise and complete semiconductor ecosystem. To validate chip performance, a flight test is scheduled.


Features of RIMO and Risecreek

Some of the features of RIMO and Risecreek are as follows: * In-order 5 stage 64-bit
microcontroller A microcontroller (MC, uC, or μC) or microcontroller unit (MCU) is a small computer on a single integrated circuit. A microcontroller contains one or more CPUs (processor cores) along with memory and programmable input/output peripherals. Pro ...
supporting the entire stable RISC-V ISA(RV64IMAFD). * Compatible with privilege spec (v1.10) of RISC-V ISA and supports the sv39 virtualisation scheme. * Includes a branch predictor with a Return-Address-Stack. * Pipelined IEEE-754 compliant single and double-precision floating point units and Multi-channel
direct memory access Direct memory access (DMA) is a feature of computer systems that allows certain hardware subsystems to access main system computer memory, memory independently of the central processing unit (CPU). Without DMA, when the CPU is using programmed i ...
(DMA) support. * Peripherals like 2 x
I²C I2C (Inter-Integrated Circuit; pronounced as "" or ""), alternatively known as I2C and IIC, is a synchronous, multi-master/multi-slave, single-ended, serial communication bus invented in 1980 by Philips Semiconductors (now NXP Semiconduct ...
, 2 x
UART A universal asynchronous receiver-transmitter (UART ) is a peripheral device for asynchronous serial communication in which the data format and transmission speeds are configurable. It sends data bits one by one, from the least significant to ...
, 2 x QSPI, a
debugger A debugger is a computer program used to test and debug other programs (the "target" programs). Common features of debuggers include the ability to run or halt the target program using breakpoints, step through code line by line, and display ...
, a 256KB tightly coupled memory, 32-bit GPIOs and an expansion bus that can be connected to a field-programmable gate array (FPGA).


Development boards

There are development boards for both E and C-class of processors. The details on the board support for different classes of processors are given below.


E-arty35T

* E-arty35Tis a SoC based on Shakti E class 4 * E-arty35Tis supported on Artix 7 35T board. * It has an abridged version of 32-bit E class. It includes I, M, A and C.


C-arty100T

* C-arty100Tis a SoC based on Shakti C-class. * C-arty100Tis supported on Artix 7 100T board. * It has an abridged version of 64-bit C-class. It includes I, M, A, F, D and C.


Commercial support

Altair Engineering Altair Engineering Inc. is an American Multinational corporation, multinational information technology company headquartered in Troy, Michigan. It provides software and cloud solutions for simulation, Internet of Things, IoT, high performance com ...
from July 2021, included E-Class processor in its embedded system firmware support portfolio for its global customers.


Swadeshi Microprocessor Challenge

On December 7, 2021, the Ministry of Electronics and Information Technology honored the Swadeshi Microprocessor Challenge winners. At different phases of the challenge, participants get up to ₹4.40
crore Crore (; abbreviated cr) denotes the quantity ten million (107) and is equal to 100 lakh in the Indian numbering system. In many international contexts, the decimal quantity is formatted as 10,000,000, but when used in the context of the India ...
in funding for the development of a hardware prototype and the incubation of a start-up by participating teams. C-DAC and
IIT Madras The Indian Institute of Technology Madras (IIT Madras or IIT-M) is a public technical university located in Chennai, Tamil Nadu, India. It is one of the eight public Institutes of Eminence of India. As an Indian Institute of Technology (IIT), ...
made accessible for the challenge their SoCs, THEJAS32 and THEJAS64, based on VEGA 32-bit and 64-bit processors and Shakti. The participating teams successfully implemented the SoCs in a variety of designs. Ten teams became victorious from the 30 finalist teams. Team VEGA FCS FT (AI drone), received a ₹35 lakh cheque for their drone application; second-place winners, Team HWDL, received ₹30 lakh for FM Radio Data System Utilities; and third-place winners, Cytox, received ₹25 lakh for their ''cell count'' project. Each of the other teams received a check for ₹20 lakh for sharing fourth place. The teams are Astrek Innovations (lower limb exosuit for
disabled Disability is the experience of any condition that makes it more difficult for a person to do certain activities or have equitable access within a given society. Disabilities may be cognitive, developmental, intellectual, mental, physica ...
), Team 6E Resources (remote monitoring and optimization of
sewage treatment Sewage treatment is a type of wastewater treatment which aims to remove contaminants from sewage to produce an effluent that is suitable to discharge to the surrounding environment or an intended reuse application, thereby preventing water p ...
plant), Team Anshashodhak (unique calibration system for
nuclear spectroscopy Nuclear spectroscopy is a superordinate concept of methods that uses properties of a Nuclide, nucleus to probe material properties. By Radiation emission, emission or Absorption (electromagnetic radiation), absorption of radiation from the nucleus ...
applications), Team Quicproc (wireless maternal monitoring system), Team Avrio Energy (AI Energy Meter with intelligence at edge and
deep learning Deep learning is a subset of machine learning that focuses on utilizing multilayered neural networks to perform tasks such as classification, regression, and representation learning. The field takes inspiration from biological neuroscience a ...
), and Team JayHawks (
anti-theft Anti-theft systems protect valuables such as vehicles and personal property like wallets, phones, and jewelry. They are also used in retail settings to protect merchandise in the form of security tags and labels. Anti-theft systems include devices ...
geofencing A geofence is a Virtuality, virtual "perimeter" or "fence" around a given geographic feature. A geofence can be dynamically generated (as in a radius around a point location) or match a predefined set of boundaries (such as school zones or nei ...
based locking system). Thirty finalist teams of the Swadeshi Microprocessor Challenge have been awarded incubation support by Maker Village, the largest electronic system design and production center in India.


References


External links

*
Official blog
* {{YouTube, channel=UCW_zRvcYedhikIfRRZczyrg Microcontrollers Embedded microprocessors 32-bit microprocessors 64-bit microprocessors Technology companies of India Science and technology in India Indian inventions