Computer Science

Computer Architecture

Computer architecture refers to the design and organization of computer systems, including the structure and behavior of the hardware components such as the central processing unit (CPU), memory, and input/output devices. It encompasses the principles and methods for designing and building computer systems to achieve specific performance, power, and cost goals. Understanding computer architecture is essential for optimizing system performance and efficiency.

Written by Perlego with AI-assistance

5 Key excerpts on "Computer Architecture"

Index pages curate the most relevant extracts from our library of academic textbooks. They’ve been created using an in-house natural language model (NLM), each adding context and meaning to key research topics.
  • Design and Development of Aircraft Systems
    • Allan Seabridge, Ian Moir, Peter Belobaba, Jonathan Cooper(Authors)
    • 2019(Publication Date)
    • Wiley
      (Publisher)

    ...It is at this level of abstraction where decisions can be made about the major functional building blocks that are required and the means of communication between these blocks. For example, in computing systems the Computer Architecture is defined as the design and structure of the hardware components of computer systems. The term embraces general considerations, such as whether a system is based on serial, parallel, or distributed computing, in which several computers are linked together. It also covers more detailed aspects, such as a description of the internal structure of a central processing unit (CPU). A micro‐computer is often described as having a 16‐bit, 32‐bit or 64‐bit architecture according to the length of data word that can be processed by the CPU and the width of the data bus. Similarly, when designing systems, engineers often speak of functions, processing standards, interface standards, software languages, and standards of data bus to connect the functions. Once agreed at this level the principles are then applied at each succeeding level of detailed design by all parties involved. Figure 5.2 Example generic system architecture. A system architecture often starts life as a simple block diagrammatic representation of a system, a block diagram. This allows one to visualise the main functions to be performed, the mechanism for data interchange, and interdependencies between functions. When basic rules have been established for naming the major high‐level functions and standards for data interchange, then blocks of the architecture can be developed in more detail. This is somewhat analogous to defining the ground plan and outline of a building, and agreeing standards to be observed for construction and provision of services. Figure 5.2 illustrates this process, showing the flow down of architectural principles in a generic system architecture. The engineer who undertakes to control or set the standards for the architecture is known as a system architect...

  • Microelectronics
    eBook - ePub
    • Jerry C. Whitaker(Author)
    • 2018(Publication Date)
    • CRC Press
      (Publisher)

    ...16 Fundamental Computer Architecture Joy S. Shetler 16.1  Introduction 16.2  Defining a Computer Architecture 16.3  Single Processor Systems 16.4  Multiple Processor Systems 16.5  Memory Hierarchy 16.6  Implementation Considerations Packaging Considerations • Technology Considerations • Wafer Scale Integration (WSI) • Multichip Modules (MCMs) 16.1  Introduction The design space for Computer Architectures is fairly diverse and complicated. Each new architecture strives to fulfill a different set of goals and to carve out a niche in the computer world. A system can be composed of one or several processors. Many concepts apply to both multiple processor and single processor systems. Many researchers have concluded that further advances in computational speed and throughput will come from parallelism rather than relying heavily on technological innovation, as has occurred in the past. But implementation is still an important consideration for any computer system. 16.2  Defining a Computer Architecture Some important attributes of a computer system are as follows: •  Structure of the control path(s) •  Structure of the data path(s) •  The memory organization •  The technology used in the implementation •  The number of clocks, that is, single clocked or dual clocked •  The clock speed(s) •  The degree of pipelining of the units •  The basic topology of the system •  The degree of parallelism within the control, data paths, and interconnection networks FIGURE 16.1 Block diagram of a single processor system. In some cases, the algorithms used to execute an instruction are important as in the case of data flow architectures or systolic arrays. Some of these attributes are dependent on the other attributes and can change depending on the implementation of a system. For example, the relative clock speed may be dependent on the technology and the degree of pipelining...

  • Software Architecture Foundation

    ...composition. Galan & Perry, 1996 10 The structure of the components of a program/system, their interrelationships, and principles and guidelines governing their design and evolution over time. Tom DeMarco [DeMarco1995] An architecture is a framework for the disciplined introduction of change. Eoin Woods 11 Software architecture is the set of design decisions which, if made incorrectly, may cause your project to be canceled. Commonalities of definitions The following terms appear repeatedly in several definitions of software architecture : • Component : Structural part or building block of systems. • Structure: An arrangement of interrelated elements (aka. components or building blocks) that together perform a common task. • Relationships / dependencies: The coupling of elements, enabling them to cooperate or exchange data. • Design or architecture decisions: A system or its architecture evolves from an arbitrary number of (design or architecture) decisions of all kinds. • Cross-cutting concepts / principles: Rules or heuristics valid at several locations or points throughout the system or its development. • Decomposition of larger things into smaller things. One of the golden rules of life (and computer science): If a problem is too large to handle all at once, break it down into more manageable units. 1.1.2 Exercises Name some common elements of software architecture definitions. What kinds of things in your system might be influenced by architectural decisions? A-question: How many definitions of software architecture exist in software engineering textbooks or standards? Select the correct answer. [ ] One definition per category of IT system (e.g...

  • Handbook of Systems Engineering and Management
    • Andrew P. Sage, William B. Rouse(Authors)
    • 2011(Publication Date)

    ...12 System Architectures ALEXANDER H. LEVIS 12.1 INTRODUCTION Systems architecting has been defined as the process of creating complex, unprecedented systems (Rechtin, 1991; Rechtin and Maier, 1997). This description fits well for many of the systems that are being created or planned today, whether in industry, government, or academia. The requirements of the marketplace are ill-defined; rapidly evolving technology has allowed new services to be offered at a global level. At the same time, there is increasing uncertainty about the way in which they will be used, what components will be incorporated, and the interconnections that will be made. Generating a system architecture as part of the systems engineering process can be seen as a deliberate approach to cope with the uncertainty that characterizes these complex, unprecedented systems. More recently, the ability to interconnect systems by connecting them to information nertworks has generated the need to develop and implement architectures for systems of systems consisting of loosely coupled systems. The word architecture derives from the Greek word architecton, which means master mason or master builder. The architect, now as then, is a member of the team responsible for designing and building a system; then the systems were edifices, now they are computer-based and software intensive. Indeed, the system architect’s contribution comes in the very early stages of the systems engineering process, at the time when the operational concept is defined and the basic structure of the system is conceptualized. Consequently, the design of a system’s architecture is a top–down process, going from the abstract and general to the concrete and specific. Furthermore, it is an iterative process. The process of developing an architecture in response to requirements (that are ill-structured because of uncertainty) forces their reexamination...

  • Memory, Microprocessor, and ASIC
    • Wai-Kai Chen, Wai-Kai Chen(Authors)
    • 2003(Publication Date)
    • CRC Press
      (Publisher)

    ...11 Architecture Daniel A.Connors University of Illinois at Urbana- Champaign Wen-mei W.Hwu University of Illinois at Urbana- Champaign 11.1 Introduction 11.2 Types of Microprocessors 11.3 Major Components of a Microprocessor Central Processor • Memory Subsystem • System Interconnection 11.4 Instruction Set Architecture 11.5 Instruction-Level Parallelism Dynamic Instruction Execution • Predicated Execution • Speculative Execution 11.6 Industry Trends Computer Microprocessor Trends Embedded • Microprocessor Trends Microprocessor Market Trends 11.1 Introduction The microprocessor industry is divided into the computer and embedded sectors. Both computer and embedded microprocessors share aspects of computer design, instruction set architecture, organization, and hardware. The term “Computer Architecture” is used to describe these fundamental aspects and, more directly, refers to the hardware components in a computer system and the flow of data and control information among them. In this chapter, various types of microprocessors will be described, fundamental architecture mechanisms relevant in the operation of all microprocessors will be presented, and microprocessor industry trends discussed. 11.2 Types of Microprocessors Computer microprocessors are designed for use as the central processing units (CPU) of computer systems such as personal computers, workstations, servers, and supercomputers. Although microprocessors started as humble programmable controllers in the early 1970s, virtually all computer systems built in the 1990s use microprocessors as their central processing units. The dominating architecture in the computer microprocessor domain today is the Intel 32-bit architecture, also known as IA-32 or X86...