The course gives an introduction to organisation architecture of computers, both functional and physical components. It gives a detailed knowledge about the computer hardware and logic design of digital computer systems. 


Parallel computing is a type of computation where many calculations or the execution of processes are carried out simultaneously.[1] Large problems can often be divided into smaller ones, which can then be solved at the same time. There are several different forms of parallel computing: bit-level, instruction-level, data, and task parallelism. Parallelism has long been employed in high-performance computing, but has gained broader interest due to the physical constraints preventing frequency scaling....

Source: https://en.wikipedia.org/wiki/Parallel_computing


This course is about principles, concepts, and ideas that underlie programming languages. The course is purely conceptual aimed at making the student familiar with the general concepts common to all programming languages so as to facilitate learning new languages. The main topics of this course include a comparative study of programming language features, an introduction to programming language design and implementation, and an introduction to the theory of formal languages.