410 likes | 691 Views
COURSE CODE : IAS 2123 COURSE NAME : COMPUTER ORGANIZATION LECTURER : MDM ROZIYANI HAJI SETIK HP NO : 019-6181835/019-3170659 EMAIL : roziyani@unisel.edu.my. INTRODUCTION TO COMPUTER ORGANIZATION. Typical Computer Ad. Is the computer fast enough to run necessary programs?
E N D
COURSE CODE : IAS 2123 COURSE NAME : COMPUTER ORGANIZATION LECTURER : MDM ROZIYANI HAJI SETIK HP NO : 019-6181835/019-3170659 EMAIL : roziyani@unisel.edu.my INTRODUCTION TO COMPUTER ORGANIZATION
Typical Computer Ad • Is the computer fast enough to run necessary programs? • Is the computer cost-effective? • 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 • 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
Input-Process-Output Model (IPO) • Input: keyboard, mouse, scanner, punch cards • Processing: CPU executes the computer program • Output: monitor, printer, fax machine • Storage: hard drive, optical media, diskettes, magnetic tape
Difference between computer organization and computer architecture • Computer Architecture • 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 to the programmers (William Stalling,1996)
Example • 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. • 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. • The computer organization and features also affect the power consumption and the cost of the processor
Architecture Components • 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 • Short-term storage for CPU calculations
Scanner • CPU (Microprocessor) • Primary storage (RAM) • Expansion cards (graphics cards, etc.) • Power supply • Optical disc drive • Secondary storage (Hard disk) • Motherboard • Speakers • Monitor • System software • Application software • Keyboard • Mouse • External hard disk • Printer
CPU: Central Processing Unit • 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) • Holds both instructions and data of a computer program (stored program concept)
Software Component • Applications • Operating System • 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 • 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 • 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 AT Attachment with Packet Interface
ATAPI • standardinterface used to connect storage devices drives inside personal computers • 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
Early History • 1642: Blaise Pascal invents a calculating machine • 1801: Joseph Marie Jacquard invents a loom that uses punch cards • 1800’s: • 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 Babbage’s Analytical Engine
Programmable: punch cardsJoseph Jacquard (1752-1834): punch card loom punch card tabulator
Modern Computer Development • 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: • 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
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
Virtual Machine Concept • Virtual Machines • 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. 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: • 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); Assembly Language: mov eax,A mul B add eax,C call WriteInt Intel Machine Language: A1 00000000 F7 25 00000004 03 05 00000008 E8 00500000
High-Level Language • Level 5 • Application-oriented languages • C++, Java, Pascal, Visual Basic . . . • Programs compile into assembly language (Level 4)
Assembly Language • 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 • Translated and run at the instruction set architecture level (Level 2)
Instruction Set Architecture • Level 2 • Also known as conventional machine language • Executed by Level 1 (microarchitecture) program
Microarchitecture • Level 1 • Interprets conventional machine instructions (Level 2) • Executed by digital hardware (Level 0)
Digital Logic • Level 0 • CPU, constructed from digital logic gates • System bus • Memory • Implemented using bipolar transistors