Computer Architecture Programming Languages and Operating System Tassadaq Hussain Riphah International University Islamabad Pakistan Microsoft Barcelona Supercomputing Center Universitat Politécnica de Catalunya Barcelona, Spain
Computer Architecture Programming Languages and Operating System
Tassadaq HussainRiphah International University
Islamabad PakistanMicrosoft Barcelona Supercomputing Center
Universitat Politécnica de CatalunyaBarcelona, Spain
Short Intro
PhD BarcelonaTech Barcelona 2014
Masters ISEP Paris 2009
B.Sc. (Electrical Engineering), RIU Islamabad 2005
A Generic System
Basic Requirements
Hardware Architecture Software Application Resource Management
5
Hardware Architecture Processors Buses Memories
6
Functional units of a computer
I/O Processor
Output
MemoryInput
Control
Arithmetic & Logic
Instr1Instr2Instr3Data1Data2
Input unit accepts information:•Human operators,•Electromechanical devices•Other computers
Output unit sends results of processing:•To a monitor display,•To a printer
Arithmetic and logic unit(ALU):•Performs the desired operations on the inputinformation as determined by instructions in the memory
Control unit coordinates various actions•Input,•Output•Processing
Stores information:•Instructions,•Data
Data Memvoid main ()
{}
Processor
Main Memory
Prog Mem
Local Bus
External Bus
DedicatedHardware GPIOs
Analog World
8
Basic introduction of Microprocessor
Function Inputs A Input B Output
0 A B A+B
1 A B A-B
9
Processor: Performance Improvement
Instruction Level ParallelismTask Level ParallelismData Level Parallelism
10
Speed and Performance
Fetch Decode
Execute Fetch
Decode E
xecute
11
Processor Architectures
Single Instruction Single Data (SISD) Single Instruction Multiple Data (SIMD) Multiple Instruction Single Data (MISD) Multiple Instruction Multiple Data (MIMD)
12
Performance Improvement
Bit Level Parallelism Parallelism at Multi Function Level Thread Level Parallelism
13
Uni-core, Multi-core CPUs, Clusters, and Grid Computing
Interconnection Network
14
Grid Computing
15
Memories
System on Chip Computer Architecture
A system on a chip or system on chip (SoC) is an integrated circuit (IC) that integrates all components of a computer or other electronic system into a single chip. It may contain digital, analog, mixed-signal, and often radio-frequency
functions—all on a single chip substrate.
The hardware system architecture of an embedded SoC (simplified)
Basic System on Chip Architecture
General architecture of today's embedded core-based system-on-a-chip
Programming Languages
Provides a set of grammatical rules (function calls) for instructing a computer to perform specific tasks.
https://en.wikipedia.org/wiki/List_of_programming_languages
Operating System
An operating system (OS) manages computer hardware and software resources. It includes:
1) Task manager2) Memory manager3) Device manager4) File manager5) Network manager
Operating System: Blocks
Hardware Architecture
A general hardware-software codesign methodology
Forces on Computer Architecture
ComputerArchitecture
Technology ProgrammingLanguages
OperatingSystems
History
ApplicationsIdea/Problem
Introduction to Programming#include "stdio.h"
int main(){printf("welcome to RIU");return 0;
}
Single Board Open source System
Evaluation Marks C/C++ Compiler installation (2) Programming, write problems discussed in
classroom (5) Write a new application and learn more (3)
Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Slide 25Slide 26Slide 27Slide 28