COL861 Special Topics in Hardware Systems

II Semester 2020-21

M. Balakrishnan

 

A.      Background:  It is well known that growth of VLSI technology and computing devices have been strongly inter-linked since the discovery of transistors. This linkage became even stronger especially since all computing shifted to microprocessors. Initially increase in performance was the sole driving factor but soon performance per watt started becoming an important metric for a wide-range of applications. This has strongly influenced all hardware design including processor design.

Hardware-firmware-software has always represented one continuum for implementing the required functionality. System designers choose one of them depending on what is a suitable design point for a specific application in the “performance-power-flexibility-cost” design space available at that point in time. This continuity implies that performance of current computing devices (often called SoCs) is closely linked to accelerators and special interfaces which were separate ASICs not very long back.

This course is an attempt to give a holistic view of developments in processors and associated devices with the objective of enhancing performance while working within certain power constraints.

 

B.      Learning outcome: A unified hardware development perspective based on performance and power consumption of modern processors and hardware systems. 

 

C.      Pre-requisites: A basic course in “computer architecture/organization” and a basic course in “digital circuits/digital systems”. 

 

D.      Contents:

1.       Introduction (6 Hours):   The lectures would track the historical development of hardware systems initially with performance as a key metric but increasingly performance/watt as the key metric. Specifically the following questions would be addressed.  

Why did mainframes disappear? Why is performance important? Whether power or energy consumption is important? Has battery technology kept pace with VLSI technology? How are today’s compute clusters different from mainframes of the 70’s? Low power is important for embedded devices but whether low power consumption important also for compute clusters also?

2.       Processors (6 Hours + 3 Hours + 3 hours): In the period from early 70s to late 90s, VLSI technology growth helped increase performance of processors by just increasing the clock frequency. Various factors with sustainable power density being one of the critical factors, put a halt to increase in processor frequency. This brought in an era where the performance increase is being sustained through multi-core processors. Specifically the following would be addressed.

Enhancing performance – beyond pipelining; Performance and power consumption: CISC(Intel) vs RISC(ARM/MIPS); Performance enhancement through multicores – what are the bottlenecks; Are there any limits?

Guest speaker 1: Prof V Kamakoti (IIT Madras): Prof. Kamakoti’s group has designed, fabricated and tested what can perhaps be called the first Indian microprocessor. He would introduce the Shakti processor and discuss the power/performance challenges faced in building the same.

Guest speaker 2: Prof Anshul Kumar (IIT Delhi): Very often for critical applications performance of “off the shelf processors” are inadequate. To meet the performance requirements of such applications, designers have been customizing processors including through extension of the instruction set. Such extended instructions often require to be supported by additional hardware. Prof Anshul would present methodologies for the same as well as challenges in doing such customization. 

3.       Memories (6 hours + 3 hours): Memories with its very regular structure have continuously grown in density and performance with the growth in VLSI technology. On the other hand they have still been a bottleneck in getting application performance which lead to the design of memory hierarchy. Today most systems support three to five levels of memory comprising multiple-levels of cache. Specifically the following would be addressed.

 Growth of memory hierarchy for uni-processors; Memory challenges in multi-core systems; Low power memories

Guest speaker 3: Prof Preeti Ranjan Panda (IIT Delhi): Prof. Panda would introduce some of the newer memory technologies that are being designed again with a view to enhance performance or reduce power consumption.

4.       Special processors and accelerators (3 hours + 3 hours + 3 hours): DSPs as well as GPUs which have become “standard” processors were once developed as specialized processors for certain applications. In fact they are being used in many more applications than initially envisaged. Specifically the following would be addressed.

Growth of accelerators and custom processors; Growth of DSP processors and their special characteristics; Growth of GPUs and reasons for their wider acceptance;

Guest speaker 4: Prof Kolin Paul (IIT Delhi):  There are many situations where processors have to adapt to “external” changes. Typically this is achieved simply through software but very often that is not effective for meeting the application performance requirements.   Prof. Kolin would discuss the opportunities and challenges of reconfigurable computing.

Guest speaker 5: Prof Smruti Sarangi (IIT Delhi):  Clearly one of the major growth domains is machine learning and Prof. Smruti would discuss the emerging architectures for machine learning.

5.       Presentation by Students (6 hours): Topics to be decided with mutual discussions

 


 

 

 

S.No.

Topic

Hours

Details

Instructor

1

Introduction

6

The lectures would track the historical development of hardware systems initially with performance as a key metric but increasingly performance/watt as the key metric. Specifically the following questions would be addressed. 

Why did mainframes disappear? Why is performance important? Whether power or energy consumption is important? Has battery technology kept pace with VLSI technology? How are today’s compute clusters different from mainframes of the 70’s? Low power is important for embedded devices but whether low power consumption important also for compute clusters also?

M Balakrishnan

2

Processors

 

6

In the period from early 70s to late 90s, VLSI technology growth helped increase performance of processors by just increasing the clock frequency. Various factors with sustainable power density being one of the critical factors, put a halt to increase in processor frequency. This brought in an era where the performance increase is being sustained through multi-core processors. Specifically the following would be addressed.

Enhancing performance – beyond pipelining; Performance and power consumption: CISC(Intel) vs RISC(ARM/MIPS); Performance enhancement through multicores – what are the bottlenecks; Are there any limits?

M Balakrishnan

3

3

Prof. Kamakoti’s group has designed, fabricated and tested what can perhaps be called the first Indian microprocessor. He would introduce the Shaktimaan processor and discuss the power/performance challenges faced in building the same.

V. Kamakoti (IIT Madras)

4

3

Very often for critical applications performance of the shelf processors are inadequate. To meet the performance requirements of such applications, designers have been customizing processors including through extension of the instruction set. Such extended instructions often require to be supported by additional hardware. Prof Anshul would present methodologies for the same as well as challenges in doing such customization. 

Prof. Anshul Kumar

5

Memories

6

Memories with its very regular structure have continuously grown in density and performance with the growth in VLSI technology. On the other hand they have still been a bottleneck in getting application performance which lead to the design of memory hierarchy. Today most systems support three to five levels of memory comprising multiple-levels of cache. Specifically the following would be addressed.

 Growth of memory hierarchy for uni-processors; Memory challenges in multi-core systems; Low power memories

M Balakrishnan

6

3

Prof. Panda would introduce some of the newer memory technologies that are being designed again with a view to enhance performance or reduce power consumption.

Preeti Ranjan Panda

7

 Special processors and accelerators

3

DSPs as well as GPUs which have become “standard” processors were once developed as specialized processors for certain applications. In fact they are being used in many more applications than initially envisaged. Specifically the following would be addressed.

Growth of accelerators and custom processors; Growth of DSP processors and their special characteristics; Growth of GPUs and reasons for their wider acceptance;

Prof. M. Balakrishnan

8

3

There are many situations where processors have to adapt to “external” changes. Typically this is achieved simply through software but very often that is not effective for meeting the application performance requirements.   Prof. Kolin would discuss the opportunities and challenges of reconfigurable computing.

Kolin Paul

9

3

Clearly one of the major growth domains in machine learning and Prof. Smruti would  discuss the emerging architectures for machine learning.

Smruti Sarangi

10

Student presentations

6

To be decided in consultation with students