Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
INTRODUCTION TO COMPUTER ORGANIZATION COURSE CODE COURSE NAME LECTURER HP NO EMAIL : : : : : IAS 2123 COMPUTER ORGANIZATION MDM ROZIYANI HAJI SETIK 019-6181835/019-3170659 [email protected] TYPICAL COMPUTER AD Is the computer fast enough to run necessary programs? Is the computer cost-effective? 2 Will it be obsolete in 6 months? WHY STUDY COMPUTER ORGANIZATION? User • Understand system capabilities and limitations • Make informed decisions • Improve communications with information technology professionals Systems Analyst • Conduct surveys, determine feasibility and define and document user requirements • Specify computer systems to meet application requirements Programmer 3 • Create efficient application software for specific processing needs WHY STUDY COMPUTER ORGANIZATION? System Administrator / Manager • Install, configure, maintain, and upgrade computer systems • Maximize system availability • Optimize system performance • Ensure system security Web Designer Optimize customer accessibility to Web services System administration of Web servers Select appropriate data formats Design efficient Web pages 4 • • • • INPUT-PROCESS-OUTPUT MODEL (IPO) •Input: keyboard, mouse, scanner, punch cards •Processing: CPU executes the computer program •Output: monitor, printer, fax machine 5 •Storage: hard drive, optical media, diskettes, magnetic tape DIFFERENCE BETWEEN COMPUTER ORGANIZATION AND COMPUTER ARCHITECTURE Computer Architecture 6 • Attributes of a system visible to a programmer or those attributes that have direct impact on the logical execution of program • Eg. Instruction set, no. of bit used to represent various data types (no., characters), I/O mechanism, techniques for addressing memory • Eg. of Issue: Whether a computer will have multiply instruction • Many computer manufacturer offers a family of computer model with same architecture but with differences organization, with different price and different performance. • Eg. IBM System/370 Architecture COMPUTER ORGANIZATION • Study on • internal computer systems such as the hardware resources available, • the function and the objective of the resources and their relationship. • Focusing on • the organization and relationship between computer physical resources, • the integration of the system function, and the communication and data flow controlling between the physical component. • Operational units and their interconnections that realize the architectural specification and hardware detail transparent 7 to the programmers (William Stalling,1996) EXAMPLE 8 • control signals, interfaces between the computer and peripheral, and the memory technology used • Issue: • Whether that instruction will be implemented by a special multiply unit. • Organizational decision may be based on the anticipated frequency of use of the multiply instruction, the speed between two approaches, the cost and physical size of a special multiply unit. COMPUTER ORGANIZATION helps optimize performance-based products. For example, software engineers need to know the processing ability of processors. They may need to optimize software in order to gain the most performance at the least expense. This can require quite detailed analysis of the computer organization. 9 For example, in a multimedia decoder, the designers might need to arrange for most data to be processed in the fastest data path. CONT.. Computer organization also helps plan the selection of a processor for a particular project. Multimedia projects may need very rapid data access, while supervisory software may need fast interrupts. Sometimes certain tasks need additional components as well. For example, a computer capable of virtualization needs virtual memory hardware so that the memory of different simulated computers can be kept separated. 10 The computer organization and features also affect the power consumption and the cost of the processor ARCHITECTURE COMPONENTS 11 Hardware • Processes data by executing instructions • Provides input and output Software • Instructions executed by the system Data • Fundamental representation of facts and observations Communications • Sharing data and processing among different systems HARDWARE COMPONENT Input/Output devices Storage Devices CPU • ALU: arithmetic/logic unit • CU: control unit • Interface unit Memory 12 • Short-term storage for CPU calculations 13 TYPICAL PERSONAL COMPUTER SYSTEM 14 15 1. Scanner 2. CPU (Microprocessor) 3. Primary storage (RAM) 4. Expansion cards (graphics cards, etc.) 5. Power supply 6. Optical disc drive 7. Secondary storage (Hard disk) 8. Motherboard 9. Speakers 10. Monitor 11. System software 12. Application software 13. Keyboard 14. Mouse 15. External hard disk 16. Printer CPU: CENTRAL PROCESSING UNIT 16 ALU: arithmetic/logic unit • Performs arithmetic and Boolean logical calculations CU: control unit • Controls processing of instructions • Controls movement of data within the CPU Interface unit • Moves instructions and data between the CPU and other hardware components • Bus: bundle of wires that carry signals and power between different components MEMORY Also known as primary storage, working storage, and RAM (random access memory) Consists of bits, each of which hold a value of either 0 or 1 (8 bits = 1 byte) 17 Holds both instructions and data of a computer program (stored program concept) SOFTWARE COMPONENT Applications Operating System • • • • 18 API: application program interface File management I/O Kernel • Memory management • Resource scheduling • Program communication • Security • Network Module COMMUNICATIONS COMPONENT Hardware • Communication channels • Physical connections between computer systems • Examples: wire cable, phone lines, fiber optic cable, infrared light, radio waves • Interface hardware • Handles communication between the computer and the communication channel • Modem or network interface card (NIC) Software 19 • Network protocols: HTTP, TCP/IP, ATAPI COMPUTER SYSTEMS All computer systems, no matter how complex, consists of the following: At least one CPU Memory to hold programs and data I/O devices 20 Long-term storage PROTOCOLS Common ground rules of communication between computers, I/O devices, and many software programs Examples • HTTP: between Web servers and Web browsers • TCP/IP: between computers on the Internet and local area networks • ATAPI: between a CPU and CD-ROMs 21 AT Attachment with Packet Interface ATAPI standard interface used to connect storage devices drives inside personal computers 22 ATA connector on the left, with two motherboard ATA connectors on the right. STANDARDS Created to ensure universal compatibility of data formats and protocols May be created by committee or may become a de facto standard through popular use Examples: Computer languages: Java, SQL, C, JavaScript Display standards: Postscript, MPEG-2, JPEG, GIF Character set standards: ASCII, Unicode, EBCDIC Video standards: VGA, XGA, RGB 23 • • • • EARLY HISTORY 1642: Blaise Pascal invents a calculating machine 1801: Joseph Marie Jacquard invents a loom that uses punch cards 1800’s: 24 • Charles Babbage attempts to build an analytical engine (mechanical computer) • Augusta Ada Byron develops many of the fundamental concepts of programming • George Boole invents Boolean logic. EARLY COMPUTERS ENIAC 25 Babbage’s Analytical Engine PROGRAMMABLE: PUNCH CARDS JOSEPH JACQUARD (1752-1834): PUNCH CARD LOOM 26 punch card tabulator MODERN COMPUTER DEVELOPMENT 27 1937: Mark I is built (Aiken, Harvard University, IBM). • First electronic computer using relays. 1939: ABC is built • First fully electronic digital computer. Used vacuum tubes. 1943-46: ENIAC (Mauchly, Eckert, University of Pennsylvania). • First general purpose digital computer. 1945: Von Neumann architecture proposed. • Still the standard for present day computers. 1947: Creation of transistor • (Bardeen, Shockley, Brattain, Bell Labs). 1951: UNIVAC. • First commercially available computer. VON NEUMANN ARCHITECTURE Three key concepts: 28 • Data and instruction are stored in a single read-write memory • The content of this memory are addressable by location, without regard to the type of data contained there • Execution occurs in a sequential fashion (unless explicitly modified) from one instruction to the next 29 CPU is the central processor unit (Arithmetic unit), ROM is a read only memory, RAM is a random access memory and the I/O-units are the input- and output devices 30 THE VON NEUMANN COMPUTER ARCHITECTURE MODEL VIRTUAL MACHINE CONCEPT Virtual Machines 31 Specific Machine Levels VIRTUAL MACHINES Tanenbaum: Virtual machine concept a virtual machine (VM) is a software implementation of a machine (computer) that executes programs like a real machine. [Popek and Goldberg] an efficient, isolated duplicate of a real machine. 32 Current use includes virtual machines which have no direct correspondence to any real hardware An essential characteristic of a virtual machine is that the software running inside is limited to the resources and abstractions provided by the virtual machine—it cannot break out of its virtual world. VIRTUAL MACHINES Programming Language analogy: ◦ Each computer has a native machine language (language L0) that runs directly on its hardware ◦ A more human-friendly language is usually constructed above machine language, called Language L1 Programs written in L1 can run two different ways: 33 ◦ Interpretation – L0 program interprets and executes L1 instructions one by one ◦ Translation – L1 program is completely translated into an L0 program, which then runs on the computer hardware TRANSLATING LANGUAGES English: Display the sum of A times B plus C. C++: cout << (A * B + C); Intel Machine Language: A1 00000000 F7 25 00000004 03 05 00000008 E8 00500000 34 Assembly Language: mov eax,A mul B add eax,C call WriteInt VIRTUAL MACHINE LEVELS High-Level Language Level 5 Assembly Language Level 4 Level 3 Instruction Set Architecture Level 2 Microarchitecture Level 1 Digital Logic Level 0 35 Operating System HIGH-LEVEL LANGUAGE Level 5 Application-oriented languages • C++, Java, Pascal, Visual Basic . . . 36 Programs compile into assembly language (Level 4) ASSEMBLY LANGUAGE 37 Level 4 Instruction mnemonics that have a one-to-one correspondence to machine language Calls functions written at the operating system level (Level 3) Programs are translated into machine language (Level 2) OPERATING SYSTEM Level 3 Provides services to Level 4 programs 38 Translated and run at the instruction set architecture level (Level 2) INSTRUCTION SET ARCHITECTURE Level 2 Also known as conventional machine language 39 Executed by Level 1 (microarchitecture) program MICROARCHITECTURE Level 1 Interprets conventional machine instructions (Level 2) 40 Executed by digital hardware (Level 0) DIGITAL LOGIC Level 0 CPU, constructed from digital logic gates System bus Memory Implemented using bipolar transistors 41