HW/SW/FW Allocation – Page 1 of 14CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Allocation of Hardware, Software, and Firmware.

Slides:



Advertisements
Similar presentations
Software Design Deriving a solution which satisfies software requirements.
Advertisements

Chapter 1 The Systems Development Environment
Where Do the 7 layers “fit”? Or, where is the dividing line between hdw & s/w? ? ?
1 School of Computing Science Simon Fraser University CMPT 300: Operating Systems I Dr. Mohamed Hefeeda.
Ch3: Software Engineering Principles 1 What is a principle?  Definition:  Goals of accounting principles:  Goals of software engineering principles?
1 Building with Assurance CSSE 490 Computer Security Mark Ardis, Rose-Hulman Institute May 10, 2004.
1/28/2004CSCI 315 Operating Systems Design1 Operating System Structures & Processes Notice: The slides for this lecture have been largely based on those.
Distributed Information Systems - The Client server model
Chapter 2: Impact of Machine Architectures What is the Relationship Between Programs, Programming Languages, and Computers.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
Supplement 02 (a)Systems Theory1 Supplement 02 (a) Systems Theory And Franchise Colleges By MANSHA NAWAZ.
Course Instructor: Aisha Azeem
8/5/2015\course\cpeg323-08F\Topic1.ppt1 Topic I Introduction to Computer Architecture and Organization.
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access memory.
1.1 1 Introduction Foundations of Computer Science  Cengage Learning.
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
1/19 Component Design On-demand Learning Series Software Engineering of Web Application - Principles of Good Component Design Hunan University, Software.
Intro to Architecture – Page 1 of 22CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: Introduction Reading: Chapter 1.
4/2/03I-1 © 2001 T. Horton CS 494 Object-Oriented Analysis & Design Software Architecture and Design Readings: Ambler, Chap. 7 (Sections to start.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 09. Review Introduction to architectural styles Distributed architectures – Client Server Architecture – Multi-tier.
Cosc 2150: Computer Organization
Computer Architecture And Organization UNIT-II Multilevel View Point Of A Machine.
SOFTWARE DESIGN.
INTRODUCTION SOFTWARE HARDWARE DIFFERENCE BETWEEN THE S/W AND H/W.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 6 System Calls OS System.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 7 OS System Structure.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
Chapter 2 Database System Concepts and Architecture Dr. Bernard Chen Ph.D. University of Central Arkansas.
Operating Systems Structure what is the organizational principle?
The Nature of Computing INEL 4206 – Microprocessors Lecture 3 Bienvenido Vélez Ph. D. School of Engineering University of Puerto Rico - Mayagüez.
The basics of the programming process The development of programming languages to improve software development Programming languages that the average user.
CS 346 – Chapter 2 OS services –OS user interface –System calls –System programs How to make an OS –Implementation –Structure –Virtual machines Commitment.
Software Design Process
The Nature of Computing INEL 4206 – Microprocessors Lecture 2 Bienvenido Vélez Ph. D. School of Engineering University of Puerto Rico - Mayagüez.
Chapter 6 – Architectural Design Lecture 1 1Chapter 6 Architectural design.
Silberschatz, Galvin and Gagne  Operating System Concepts UNIT II Operating System Services.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
CSE 303 – Software Design and Architecture
1 Data Structures CSCI 132, Spring 2014 Lecture 1 Big Ideas in Data Structures Course website:
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
2.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition System Programs (p73) System programs provide a convenient environment.
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
System Programming Basics Cha#2 H.M.Bilal. Operating Systems An operating system is the software on a computer that manages the way different programs.
PROGRAMMING FUNDAMENTALS INTRODUCTION TO PROGRAMMING. Computer Programming Concepts. Flowchart. Structured Programming Design. Implementation Documentation.
7.1 Operating Systems. 7.2 A computer is a system composed of two major components: hardware and software. Computer hardware is the physical equipment.
Victoria Ibarra Mat:  Generally, Computer hardware is divided into four main functional areas. These are:  Input devices Input devices  Output.
Computer Architecture Organization and Architecture
1.3 Operating system services An operating system provide services to programs and to the users of the program. It provides an environment for the execution.
OPERATING SYSTEM CONCEPTS AND PRACTISE
DDC 2223 SYSTEM SOFTWARE DDC2223 SYSTEM SOFTWARE.
Fluency with Information Technology
Modularity Most useful abstractions an OS wants to offer can’t be directly realized by hardware Modularity is one technique the OS uses to provide better.
Operating System Structures
Chapter 2 Database System Concepts and Architecture
Software Design and Architecture
Part 3 Design What does design mean in different fields?
GEOMATIKA UNIVERSITY COLLEGE CHAPTER 2 OPERATING SYSTEM PRINCIPLES
What is an Operating System?
Algorithm An algorithm is a finite set of steps required to solve a problem. An algorithm must have following properties: Input: An algorithm must have.
T Computer Architecture, Autumn 2005
Chapter 2: System Structures
An Introduction to Software Architecture
Outline Chapter 2 (cont) OS Design OS structure
Paper by D.L Parnas And D.P.Siewiorek Prepared by Xi Chen May 16,2003
System calls….. C-program->POSIX call
Introduction to Operating Systems
 Is a machine that is able to take information (input), do some work on (process), and to make new information (output) COMPUTER.
Presentation transcript:

HW/SW/FW Allocation – Page 1 of 14CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Allocation of Hardware, Software, and Firmware to System Components

HW/SW/FW Allocation – Page 2 of 14CSCI 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

HW/SW/FW Allocation – Page 3 of 14CSCI 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

HW/SW/FW Allocation – Page 4 of 14CSCI 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

HW/SW/FW Allocation – Page 5 of 14CSCI 4717 – Computer Architecture Modular System Design (continued) There are two methods to use toward a designing a modular system: –Top down –Bottom up

HW/SW/FW Allocation – Page 6 of 14CSCI 4717 – Computer Architecture Top Down System Design Solving a problem by dividing the system into individual functions and building a component to satisfy each function. Benefits of Top Down Design –Efficient use of components –Easier to meet performance goals of the system specification Drawbacks of Top Down Design –More expensive and time consuming

HW/SW/FW Allocation – Page 7 of 14CSCI 4717 – Computer Architecture Bottom Up System Design Solving a problem using an existing system (e.g., using DLL's to create a new application) Cheaper in small quantities Design time is reduced Past experiences can be drawn upon

HW/SW/FW Allocation – Page 8 of 14CSCI 4717 – Computer Architecture Concept of Black Boxes This is the building block of the hierarchical system design. If inputs, outputs, and functions are well defined, the designer doesn't need to know about anything above or below in the system

HW/SW/FW Allocation – Page 9 of 14CSCI 4717 – Computer Architecture Implementation of components There are three basic ways to implement a system component –Hardware (HW) –Software (SW) –Firmware (FW)

HW/SW/FW Allocation – Page 10 of 14CSCI 4717 – Computer Architecture Hardware The permanent, physical implementation of circuits and devices Hardware is required for all systems

HW/SW/FW Allocation – Page 11 of 14CSCI 4717 – Computer Architecture Software The programs contained in read/write memory ranging from machine language to high-level languages Requires a processor to run (hardware dependent)

HW/SW/FW Allocation – Page 12 of 14CSCI 4717 – Computer Architecture Firmware Lies between hardware and software Programs (usually machine code) contained in read only memory

HW/SW/FW Allocation – Page 13 of 14CSCI 4717 – Computer Architecture Performance Characteristics Throughput/speed – HW best; FW average; SW worst Development Cost – HW best; FW average; SW worst Adaptability – HW worst; FW average; SW best Reliability – HW best; FW average; SW average

HW/SW/FW Allocation – Page 14 of 14CSCI 4717 – Computer Architecture In-Class Exercise In groups of three or four, discuss the performance characteristics of hardware, software, and firmware for the following system measures: –Security –User interface requirements –Remote connectivity –Regulatory standards