Presentation is loading. Please wait.

Presentation is loading. Please wait.

Syllabus Instructor: Dr. Wesam Ashour

Similar presentations


Presentation on theme: "Syllabus Instructor: Dr. Wesam Ashour"— Presentation transcript:

1 Syllabus Instructor: Dr. Wesam Ashour
Teaching Assistants: Eng. Eng. Ahmed Eldaly. Eng. Amal El-khalily.    Office: B223 Office Hours: Saturday, Monday :00  12:00. Sunday, Tuesday :00  12:00.

2

3 Syllabus Course: ECOM 3310 – Computer Architecture
Contents: 1- Ch.1: Introduction. 2- Ch.2: Instructions: Language of the Computer. 3- Ch.3: Arithmetic for Computers. 4- Ch.4: Assessing and Understanding Performance. 5- Ch.5: The Processor: Datapath and Control. 6- Ch.6: Enhancing Performance with Pipelining. 7- Ch.7: Large and Fast: Exploiting Memory Hierarchy 8- Ch.8: Input/Output Systems We will cover as much as we can!

4 Syllabus Description: Goals of the Course:
This course explores the design of computer systems and their architectures. Topics include central processing unit architecture, pipelining, system interconnections, memory systems, input/output systems, interrupt handling. Goals of the Course: Basic understanding of computer organization: roles of processors, main memory, and input/output devices. Understanding the concept of programs as sequences of machine instructions. Understanding the relationship between assembly language and machine language; development of skill in assembly language programming; understanding the relationship between high-level compiled languages and assembly language. Understanding arithmetic and logical operations with integer operands. Understanding floating-point number systems and operations. Understanding simple data path and control designs for processors. Understanding memory organization, including cache structures and virtual memory schemes. The course include basic machine architecture and design, digital logic circuits, digital components, central processing unit, machine representation of instructions and data, addressing techniques, memory organization, and execution of instructions at machine level.

5 Syllabus Course Outcomes:
By the end of this course, students should be able to: Write a simple program in assembler language to implement a high level program segment Design simple assembly language programs that make appropriate use of a registers and memory. Understand how the architecture affects program performance Understand the basics of computer hardware and how software interacts with computer hardware. Understanding how to implement the instruction set architecture ISA Understanding the levels and organizations of Hierarchies in Memories and cashes. Assemble a simple computer with hardware design including data format, instruction format, instruction set, addressing modes, bus structure, input/output, memory, Arithmetic/Logic unit, control unit, and data, instruction and address flow.

6 Syllabus Course web site:
Course Grading: 20% Quizzes + HWs + Teaching Assistant control. 10% Project. 20% Midterm Exam. 50% Final Exam. Midterm Exam: Tuesday, 25th November 2014, 11:00am-12:30pm Final Exam: Monday, 19th January 2015, 11:30am-14:30pm Important Notice: Sometimes (& Suddenly) I will test you by giving Quizzes at the beginning of the lecture! - To solve it easily and to get the highest mark, you should always read the last two lectures before attending the class – Good Luck. Important Advice: From first day in the semester you should work very hard and you must activate your mind to think!

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28 Chapter 2

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44 lw $t0, 1200($t1) add $t0, $s2, $t0 sw $t0, 1200($t1) What is the MIPS machine language code for these three instructions? 1200 (in base 10) = (binary) $t0 register is number 8 $t1 register is number 9 $s2 register is number 18 Opcode -> lw is 35 (100011), sw is 43 (101011), R-type (000000) add func is 32 (100000)

45 lw $t0, 1200($t1) add $t0, $s2, $t0 sw $t0, 1200($t1) What is the MIPS machine language code for these three instructions? 1200 (in base 10) = (binary) $t0 register is number 8 $t1 register is number 9 $s2 register is number 18 Opcode -> lw is 35 (100011), sw is 43 (101011), R-type (000000) add func is 32 (100000)

46 or $t0, $t1, $t2 ori $t0, $t1, 255 sll $t0, $t1, 4 and $t0, $t1, $t2

47

48

49

50

51 if (save[i] >= k) Code; Assume save[i] is stored in $t1 and k is stored in $t2

52 if (save[i] >= k) Code; Assume save[i] is stored in $t1 and k is stored in $t2 slt $t0, $t1, $t2 bne $t0, $zero, Exit Code Exit:

53 if (save[i] < k) Code; Assume save[i] is stored in $t1 and k is stored in $t2

54 if (save[i] < k) Code; Assume save[i] is stored in $t1 and k is stored in $t2 slt $t0, $t1, $t2 beq $t0, $zero, Exit Code Exit:

55 if (save[i] > k) Code; Assume save[i] is stored in $t1 and k is stored in $t2

56 if (save[i] > k) Code; Assume save[i] is stored in $t1 and k is stored in $t2 slt $t0, $t1, $t2 bne $t0, $zero, Exit beq $t1, $t2, Exit Code Exit:

57 Try it by yourself if (save[i] <= k) Code;
Assume save[i] is stored in $t1 and k is stored in $t2 Try it by yourself

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82


Download ppt "Syllabus Instructor: Dr. Wesam Ashour"

Similar presentations


Ads by Google