34
Introdução Capítulo 1 Referência: Capítulo 1, Structured Computer Organization, A.S. Tanenbaum, (c) 2006 Pearson Education Inc Orlando Loques setembro 2006

cap1

Embed Size (px)

DESCRIPTION

ACM2

Citation preview

  • Introduo

    Captulo 1

    Referncia:

    Captulo 1, Structured Computer Organization, A.S. Tanenbaum, (c) 2006 Pearson Education Inc

    Orlando Loquessetembro 2006

  • Linguagens, Nveis, Mquinas Virtuais (i)

    Mquina multi-nvel

  • Computadores executam instrues

    Programa: sequncia de instrues descrevendo como executar uma tarefa

    Em geral, as instrues no so mais complicadas que: Somar dois nmeros Verificar se o nmero zero Copia um dado de um lugar na memria para outro

    O conjunto (bsico) de instrues define uma linguagem de mquina

    Podemos dizer que um computador constitudo de vrios nveis: cada nvel representa uma mquina virtual

    Uma mquina define uma linguagem: ou seja, o conjunto de instrues que a mquina pode executar

    Nos nveis baixos, a linguagem no deve ser complicada, seno a mquina ser muito complexa para ser construda, considerando a tecnologia atual

    O projetista tem que decidir que instrues incluir na mquina

    Linguagens, Nveis, Mquinas Virtuais (ii)

  • Pessoas querem fazer X, mas computadores fazem somente Y (utilizando L0)

    Soluo: projetar um conjunto de instrues (linguagem L1) mais adequado para o suporte de X; duas possiblidades:

    Traduo (compilao): substituir cada instruo de L1 por uma sequnciaequivalente em L0

    Interpretao: escrever um programa (interpretador) em L0, que pegue as instrues em L1 e as execute atravs de sequncias de instrues equivalentes em L0

    Na prtica traduo e interpretao podem ser combinadas

    O programador de um nvel no se preocupa com os nveis inferiores

    Uma mquina para uma linguagem tipo C++ ou COBOL seria muito complicada, mas poderia ser construda com a tecnologia atual

    Custo e flexibilidade

    Linguagens, Nveis, Mquinas Virtuais (ii)

  • Mquinas Multi-nveis atuais

    Computador com seis nveis (existe mais um: componentes das portas lgicas)

  • ISA Level

    The ISA level is the interface between the compilers and the hardware.

  • Mquinas Multi-nveis atuais Digital logic level: portas, registros, decodificadores, multiplexadores, etc

    Microarchitecture Level: Registros, ULA, vias de dados -> UCP

    Microprogramao controle das operaes das unidades da UCP Controle fixo (hardwired)

    Instruction Set Architecture Level (ISA level): linguagem de mquina

    Operating System machine level: (hbrido) inclui as instrues do nvel anterior e suporte para organizao de memria, concorrncia, interrupo

    Usado por systems programmers

    Assembly Language Level: linguagem simblica (substitui os bits das linguagens dos nveis inferiores)

    assembler: programa tradutor

    Problem-oriented Language Level: linguagens de alto nvel

    BASIC, C, C++, Java, LISP, Prolog, etc Traduo / interpretao / mista

  • Cada nvel representa uma abstrao distinta, com diferentes objetos e operaes. Isso permite que os detalhes irrelevantes sejam suprimidos, reduzindo a complexidade e facilitando o entendimento

    O conjunto de tipos de dados, operaes e caractersticas de cada nvel define sua arquitetura, que mostra os detalhes visveis ao usurio daquele nvel, eg, espao de memria, registros

    A tecnologia do chip no faz parte da arquitetura

    O estudo de como projetar as partes de um computador visveis para o programador se chama Arquitetura de Computadores

    Arquitetura de Computadores

  • Architecture & Organization

    Architecture is those attributes visible to the programmer Instruction set, number of bits used for data representation,

    I/O mechanisms, addressing techniques. e.g. Is there a multiply instruction?

    Organization is how features are implemented Control signals, interfaces, memory technology. e.g. Is there a hardware multiply unit or is it done by

    repeated addition?

  • Evoluo das Mquinas Multi-nveis (i) Invention of microprogramming 1951/Wilkes

    simplificar o hardware / instrues mais poderosas

    Invention of operating system 1960 reduzir o tempo intil / otimizar o uso dos recursos batch system / timesharing

    Migration of functionality to microcode - 1970 instrues complexas - CISC lentido, flexibilidade Exagero: DEC-VAX com centenas de instrues

    Elimination of microprogramming reduo de nmero e execuo direta das instrues RISC arquiteturas hbridas

  • Tarefas do Sistema Operacional

    A sample job for the FMS (FORTRAN Monitor System) operating systemautomatiza as tarefas feitas pelo operador

    cartes especiais usados para instruir o sistema operacional

    definiam uma mquina virtual

  • Evoluo das Mquinas Multi-nveis (ii) Hardware: circuitos eletrnicos e dispositivos de E/S Software: algoritmos (instrues detalhadas sobre

    como fazer algo) e suas representaes em termos de computador (programas)

    Hardware e Software so logicamente equivalentes qualquer operao feita por software pode ser feita

    diretamente por hardware (depois de ser entendida) hardware is just petrified software

    Software is a gas. It expands to fill the container holding it Troff ocupa dezenas de kilobytes de memria Processadores de texto atuais ocupam dezenas de megabytes

    de memria

  • Milestones in Computer Architecture (1)

    Some milestones in the development of the modern digital computer.

    Pascal: com 19 anos (1642) soma e subtraoLeibniz: +,-,*,/ (1672)

  • Milestones in Computer Architecture (2)

    Some milestones in the development of the modern digital computer.

  • Computer Generations Zeroth Generation

    Mechanical Computers (1642 1945)

    First GenerationVacuum Tubes (1945 1955)

    Second GenerationTransistors (1955 1965)

    Third GenerationIntegrated Circuits (1965 1980)

    Fourth GenerationVery Large Scale Integration (1980 ?)

  • Von Neumann Machine

    The original Von Neumann machine.

  • Structure of IAS - Von Neumann

    MainMemory

    Arithmetic and Logic Unit

    Program Control Unit

    InputOutputEquipment

    MBR

    Arithmetic & Logic Circuits

    MQAccumulator

    MARControlCircuits

    IBR

    IR

    PC

    Address

    Instructions& Data

    Central Processing Unit

  • IAS - details 1000 x 40 bit words

    Binary numbers 2 x 20 bit instructions

    Set of registers (storage in CPU) Memory Buffer Register Memory Address Register Instruction Register Instruction Buffer Register Program Counter Accumulator Multiplier Quotient

  • Instruction Execution Steps

    Fetch next instruction from memory into Instruction Register

    Change Program Counter to point to next instruction

    Determine type of instruction just fetched

    If instructions uses word in memory, determine where

    Fetch word, if needed, into CPU register

    Execute the instruction

    Go to step 1 to begin executing following instruction

  • PDP-8 Innovation Single Bus

    The PDP-8 omnibus

  • DEC PDP-8 1964 First minicomputer (after miniskirt!) Did not need air conditioned room Small enough to sit on a lab bench $16,000

    $100k+ for IBM 360 Embedded applications & OEM BUS STRUCTURE

  • CPU Chips

    The logical pinout of a generic CPU The arrows indicate input signals and output signals The short diagonal lines indicate that multiple pins are used For a specific CPU, a number will be given to tell how many.

  • Modern Computer Buses: PCI, ISA

  • IBM 360

    The initial offering of the IBM product line.

  • Technological and Economic Forces

    Moores law predicts a 60-percent annual increase in the number of transistors that can be put on a chip (should hold up to 2020); the data points given in this figure are memory sizes, in bits

    Cria um circulo virtuoso: produtos bons, baratos, novas aplicaes, novosmercados, novas empresas, mais competio, melhoria na tecnologia

  • The Computer Spectrum

    The current spectrum of computers available. The prices should be taken with a grain (or better yet, a metric ton) of salt.

  • Personal Computer

    A printed circuit board is at the heart of every personal computer. This figure is a photograph of the Intel D875PBZ board

    The photograph is copyrighted by the Intel Corporation, 2003 and is used by permission

    1. Pentium 4 socket2. 875P Support chip3. Memory sockets4. AGP connector5. Disk interface6. Gigabit Ethernet7. Five PCI slots8. USB 2.0 ports9. Cooling technology10. BIOS

  • Example Computer Families

    Pentium 4 by Intel

    UltraSPARC III by Sun Microsystems

    The 8051 chip by Intel, used for embedded systems

  • Intel Computer Family (1)

    The Intel CPU family. Clock speeds are measured in MHz (megahertz) where 1 MHZ is 1 million cycles/sec.

  • Intel Computer Family (2)

    The Pentium 4 chip The photograph is copyrighted by the Intel Corporation, 2003 and is used by permission

  • Intel Computer Family (3)

    Moores law for (Intel) CPU chips.

  • MCS-51 Family

    members of the MCS-51 family

  • The 8051 Instruction Formats

    The 8051 instruction formats.

  • Metric Units

    The principal metric prefixes.