Download Lecture Slides on Architecture and Organization | CSCI 4717 and more Assignments Computer Architecture and Organization in PDF only on Docsity! 1 Intro to Architecture – Page 1 of 22CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: Introduction Reading: Chapter 1 Intro to Architecture – Page 2 of 22CSCI 4717 – Computer Architecture Architecture vs. Organization • Architecture is the set of attributes visible to the programmer – Instruction set, number of bits used for data representation, I/O mechanisms, addressing techniques. – Examples: • Does this processor have a multiply instr.? • How does the compiler create object code? • How best is memory handled by the O/S? Intro to Architecture – Page 3 of 22CSCI 4717 – Computer Architecture Architecture vs. Organization (continued) • Organization is how features are implemented – Control signals, interfaces, memory technology. – Examples: • Is there a hardware multiply unit or is it done by repeated addition? • What type of non-volatile memory is used to store the BIOS? Intro to Architecture – Page 4 of 22CSCI 4717 – Computer Architecture Architecture vs. Organization (continued) • All Intel x86 family share the same basic architecture • The IBM System/370 family share the same basic architecture • Consistent architecture gives code compatibility, at least backwards, thus protecting user’s software investment • Organization differs between different versions Intro to Architecture – Page 5 of 22CSCI 4717 – Computer Architecture In-class Exercise • Assume you are part of a processor manufacturer's marketing group, and you've been asked to generate specifications for a processor that comes in three versions: economy, mid-range, and high-end. • In groups of three or four, discuss the differences you would have between the three versions of this processor. Intro to Architecture – Page 6 of 22CSCI 4717 – Computer Architecture Differences in organization but not architecture leads to “families” • Different cost and performance • Run same code • Families may span years of technological advancement 2 Intro to Architecture – Page 7 of 22CSCI 4717 – Computer Architecture How do CSCI 2150 and CSCI 2160 relate to CSCI 4717? •Theoretical •Top-down design •Problem solving with: –block diagrams –flow diagrams –performance measures •Implementation •Bottom-up design •Problem solving with: –bits –bytes –code CSCI 4717CSCI 2150/2160 Intro to Architecture – Page 8 of 22CSCI 4717 – Computer Architecture How do CSCI 2150 and CSCI 2160 relate to CSCI 4717? (continued) • Understanding digital logic: – offers ideas as to how architecture is implemented – reveals some of the difficulties encountered when trying to realize an architecture. • Understanding assembly language: – helps explain needs of architecture – provides foundation for understanding execution of instructions – provides insight to compiler design Intro to Architecture – Page 9 of 22CSCI 4717 – Computer Architecture In-Class Exercise In groups of three or four, discuss methods for optimizing a fast food drive thru lane. Be sure to address: – Menus (both content and presentation) – Number of steps patrons must go through – Resources needed for: • Ordering • Methods of payment • Cooking • Pickup Intro to Architecture – Page 10 of 22CSCI 4717 – Computer Architecture Hierarchical Nature of Complex Systems • Each level of system hierarchy consists of set of components and their interrelationships – Operation of components Function – Interrelation of components Structure • Each successively higher layer describes simplified/more abstract view of lower levels Intro to Architecture – Page 11 of 22CSCI 4717 – Computer Architecture Hierarchical Nature of Complex Systems (continued) • Breaking system into components or modules forces designer to develop a detailed understanding of the data that is passed between them • Working within the hierarchy, a designer needs to only concern him/herself with the details of his or her module at that specific level • Working with a well-defined set of inputs, outputs, and function definition, designers can completely design their module without any knowledge of how rest of system is made Intro to Architecture – Page 12 of 22CSCI 4717 – Computer Architecture Modular System Design Applying a modular methodology to system design results in: – a more manageable project – quicker design time by allowing multiple people with differing expertise to participate (although up-front investment of time feels like a drawback) – a higher quality system – a more maintainable system – increased module reusability