Pesquisar neste blogue

Mostrar mensagens com a etiqueta Resumo. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta Resumo. Mostrar todas as mensagens

terça-feira, 3 de junho de 2025

Resumo extraído do Capítulo 2 do livro Introduction to Signal Processing de Sophocles J. Orfanidis

Capítulo 2 – Quantização

2.1 Processo de Quantização

Esta secção explica o processo fundamental de quantização, etapa essencial da conversão de sinais analógicos em digitais, após a amostragem.

  • Um conversor analógico-digital (ADC) converte cada amostra do sinal x(nT)x(nT) num valor quantizado xQ(nT)x_Q(nT), representável por um número finito de bits BB, com 2B2^B níveis de quantização.

  • A resolução do quantizador, ou largura de quantização QQ, é Q=R/2BQ = R/2^B, onde RR é a gama total do sinal (full-scale range).

  • A quantização por arredondamento é preferível à truncagem, pois introduz menor viés no erro de quantização.

  • O erro de quantização e(nT)=xQ(nT)x(nT)e(nT) = x_Q(nT) - x(nT) tem amplitude máxima de Q/2Q/2, e a variância média do erro é Q2/12Q^2/12. O erro pode ser modelado como ruído branco com distribuição uniforme em [Q/2,Q/2][-Q/2, Q/2], desde que o sinal ocupe bem a gama RR.

  • O modelo aditivo de ruído considera que xQ(n)=x(n)+e(n)x_Q(n) = x(n) + e(n), sendo e(n)e(n) ruído branco, estacionário, não correlacionado com o sinal.

  • Para sinais de baixa amplitude, o erro de quantização não é ruído branco, podendo introduzir distorções chamadas granulação.

  • A técnica de dithering (adição de ruído antes da quantização) pode eliminar essas distorções, tornando o erro mais aleatório, ainda que à custa de um aumento ligeiro do ruído (3 a 6 dB).


2.2 Sobreamostragem e modelação do ruído

Esta secção apresenta técnicas para melhorar a qualidade da quantização sem aumentar o número de bits por amostra.

Conceitos principais:

  • O ruído de quantização é uniformemente distribuído no espectro (ruído branco).

  • Com sobreamostragem (oversampling), o sinal é amostrado a uma taxa fs>fsf_s' > f_s. Isto espalha o ruído por uma banda maior, reduzindo o ruído na banda útil.

  • Mesmo com menor resolução (menos bits por amostra), o desempenho pode manter-se ou até melhorar devido ao maior número de amostras.

Cálculos:

  • Com sobreamostragem, a potência de ruído dentro da banda útil é reduzida: σe2=σe2/L\sigma_e^2 = \sigma_{e'}^2 / L, com L=fs/fsL = f_s' / f_s.

  • A poupança de bits por sobreamostragem sem modelação de ruído é pequena: ΔB=0.5log2L\Delta B = 0.5 \log_2 L.

  • Para aumentar essa poupança, usa-se modelação de ruído, que filtra o ruído de quantização com um filtro HNS(f)H_{NS}(f) para "empurrar" o ruído para fora da banda útil.

  • Com quantizadores de ordem pp e sobreamostragem, a poupança é maior: ΔB=(p+0.5)log2L0.5log2(π2p2p+1)\Delta B = (p + 0.5) \log_2 L - 0.5 \log_2\left(\frac{\pi^{2p}}{2p+1}\right).

  • Por exemplo, com ordem 2 e L=128L = 128, é possível obter o equivalente a um quantizador de 16 bits usando apenas 1 bit por amostra.

Aplicações:

  • Esta técnica é usada em conversores delta-sigma, presentes em leitores de CD, sistemas de áudio digital e codificação de voz.

  • O sistema de DSP com sobreamostragem permite filtros analógicos mais simples, menor resolução nos conversores, e ainda assim manter a qualidade através de filtragem digital (interpolação e decimação).


2.3 Conversores D/A

Esta secção discute os conversores digital-analógico (DACs), focando-se nas convenções de codificação e funcionamento lógico, sem entrar em detalhes eléctricos.

  • Um DAC de BB bits converte uma palavra digital [b1,b2,...,bB][b_1, b_2, ..., b_B] num valor analógico xQx_Q dentro da gama RR.

  • Três tipos de codificação:

    1. Unipolar natural binario: xQ=Ri=1Bbi2ix_Q = R \cdot \sum_{i=1}^{B} b_i \cdot 2^{-i}

    2. Bipolar offset binario: igual ao anterior, mas com deslocamento R/2-R/2

    3. Complemento para dois: semelhante ao offset binario, mas com o bit mais significativo invertido para representar sinais negativos de forma natural.

  • As representações natural e offset têm os mesmos padrões binários, mas diferentes níveis de saída.

  • A tabela 2.3.2 mostra, por exemplo com B=4B = 4, como as palavras binárias mapeiam para níveis analógicos em cada codificação.

  • O código complemento para dois é obtido facilmente a partir da forma natural binaria, complementando os bits e somando 1 (ex: 0011 = +3 → 1101 = −3).

  • São apresentadas funções C para simular conversores DAC de  complemento para dois (usando a regra de Horner para calcular xQx_Q).


Capítulo 2 do livro Introduction to Signal Processing de Sophocles J. Orfanidis



🎓 Quer melhorar os seus resultados na universidade? 
Disponibilizamos explicações de ensino superior adaptadas às suas necessidades, com acompanhamento personalizado para diferentes disciplinas.
✔ Explore a nossa Lista de Matérias disponíveis.
🌟 Veja os testemunhos de alunos que já atingiram melhores notas com o nosso apoio.
📬 Contacte-nos por email ou pelo formulário de contacto e obtenha a ajuda que precisa para dominar os seus estudos!

EuExplico Eu Explico Explicações de Ensino Superior

domingo, 1 de junho de 2025

Resumo extraído do Capítulo 13 do livro Measurements and Instrumentation Principles de Alan S. Morris, 3 ed

Capítulo 13 – Tecnologias de Sensores 

13.1 Sensores Capacitivos e Resistivos

Sensores Capacitivos:
Funcionam com base na variação da capacidade entre duas placas metálicas paralelas. A capacidade depende da constante dieléctrica do meio entre as placas, da sua área e da distância entre elas. São frequentemente utilizados como sensores de deslocamento, onde o movimento de uma das placas altera a capacidade . Este princípio também é aplicado em sensores de pressão, som, aceleração, humidade, conteúdo de humidade e nível de líquidos, dependendo do tipo de dieléctrico utilizado.

Sensores Resistivos:
Estes sensores exploram a variação da resistência elétrica de um material quando é submetido a uma grandeza física, como temperatura ou deformação. Exemplos comuns incluem termómetros de resistência (RTDs), termistores (para temperatura) e extensómetros (para deformação e deslocamento). Alguns medidores de humidade também funcionam com base neste princípio.

13.2 Sensores Magnéticos

Sensores de Indutância:
Traduzem deslocamentos em variações na indutância mútua entre componentes magnéticos. Um exemplo comum é o transdutor de deslocamento indutivo, onde o movimento de uma placa ferromagnética altera os caminhos de fluxo magnético, alterando a corrente elétrica medida.

Sensores de Relutância Variável:
Estes sensores utilizam uma bobina enrolada num íman permanente e são frequentemente usados para medir velocidades de rotação. A passagem de dentes de uma roda ferromagnética junto ao sensor gera uma sequência de impulsos de tensão, cuja frequência é proporcional à velocidade de rotação.

Sensores de Correntes de Foucault (Eddy Currents):
Empregam uma bobina excitada a alta frequência para induzir correntes de Foucault numa superfície metálica próxima. A variação da distância entre a sonda e o alvo altera a indutância da bobina, permitindo a medição de deslocamentos com elevada resolução (até 0,1 µm). Podem também funcionar com alvos não condutores se for aplicada fita de alumínio.

13.3 Sensores de Efeito Hall

Um sensor de efeito Hall mede a intensidade de um campo magnético. Consiste num condutor com corrente elétrica perpendicular ao campo magnético aplicado, o que gera uma tensão transversal proporcional à intensidade do campo. A relação é dada por V = KIB, onde K é a constante de Hall. São geralmente fabricados com semicondutores devido à maior sensibilidade.

Aplicações comuns:

  • Sensores de proximidade com ímanes incorporados, que detetam a aproximação de objetos ferrosos;

  • Teclas de teclado com ímanes, que ao serem pressionadas movem-se sobre o sensor de Hall, gerando um sinal digital de saída. São preferidos por evitarem problemas de "contact bounce" e operarem a altas frequências.


13.4 Transdutores Piezoelétricos

Os transdutores piezoelétricos geram uma tensão elétrica quando submetidos a uma força mecânica. São utilizados como recetores de ultrassons e também para medir deslocamentos, acelerações, forças e pressões.

Princípio de funcionamento:

  • Os materiais piezoelétricos têm uma estrutura cristalina assimétrica que se distorce sob ação de uma força.

  • Esta distorção provoca uma redistribuição de cargas internas, gerando cargas superficiais opostas que podem ser medidas como uma tensão.

  • A tensão induzida V depende da força F, da espessura d e da área A do material: V = kFd / A, onde k é a constante piezoelétrica.

Considerações técnicas:

  • A impedância de entrada do instrumento de medição deve ser muito alta para evitar fugas de carga.

  • Diferentes materiais apresentam diferentes constantes piezoelétricas. Ex.: quartzo (k ≈ 2.3), titanato de bário (k ≈ 140).

  • Materiais poliméricos como o polivinilideno também apresentam efeito piezoelétrico, com alta sensibilidade, mas baixa resistência mecânica.

Aplicação reversível:

  • Ao aplicar tensão elétrica a um material piezoelétrico, este sofre distorção mecânica. Este princípio é usado em transmissores ultrassónicos.

13.5 Extensómetros 

Os extensómetros são sensores cuja resistência elétrica varia com a deformação (strain) mecânica aplicada. São capazes de detetar deslocamentos muito pequenos (0–50 µm) e são amplamente usados em transdutores de pressão (ex.: diafragmas), força e aceleração.

Tipos:

  • Tradicionalmente feitos com fios metálicos em ziguezague montados num suporte flexível.

  • Com a aplicação de esforço, o fio deforma-se, alterando a sua área de secção transversal e consequentemente a resistência.

  • A relação entre a variação de resistência ΔR e a deformação S define o fator de gauge: Fator de Gauge = ΔR / S.

Variedades modernas:

  • Extensómetros de folha metálica: usam tiras finas de metal cortadas em ziguezague — mais baratos e fáceis de fabricar.

  • Fabricados com ligas como cobre-níquel-manganês (“Advance”).

  • Extensómetros semicondutores (ver secção 13.6): apresentam fatores de gauge até 100 vezes superiores, mas têm maior sensibilidade à temperatura e são mais caros.

Montagem e medição:

  • São colados diretamente à estrutura sob teste, o que exige cuidados, especialmente com sensores semicondutores.

  • A resistência é geralmente medida com um circuito em ponte (ex.: ponte de Wheatstone), e a saída é muito pequena, necessitando de amplificação.

  • Correntes máximas permitidas: 5 a 50 mA. Isto limita a tensão aplicada e, portanto, a saída da ponte.

13.6 Sensores Piezoresistivos

Estes sensores são feitos de materiais semicondutores com regiões p e n, cuja resistência muda significativamente quando o material é sujeito a compressão ou tração. São utilizados como extensómetros de alta precisão, sensores de pressão com diafragma de silício e acelerómetros semicondutores.

Vantagens:

  • Fatores de gauge muito mais elevados do que os extensómetros metálicos (até 100 vezes superiores).

  • Maior precisão: incerteza de medição até ±0,1%.

Esclarecimento terminológico:

  • O termo “piezoresistivo” é por vezes aplicado a todos os extensómetros, incluindo os metálicos, o que é incorreto.

  • Nos sensores metálicos, apenas cerca de 10% da variação de resistência é devida ao efeito piezoresistivo; os restantes 90% devem-se à mudança dimensional.

  • Nos sensores verdadeiramente piezoresistivos (semicondutores), cerca de 90% da variação de resistência advém do efeito piezoresistivo.


13.7 Sensores Ópticos (via aérea)

Estes sensores funcionam com base na modulação de luz entre uma fonte luminosa e um detetor. A luz pode viajar pelo ar (caminho ótico em espaço aberto) ou por cabo de fibra ótica (ver secção 13.8). A modulação da luz é causada por uma variável física a medir, que afeta a intensidade, direção ou presença do feixe luminoso.

Componentes:

  • Fontes de luz: lâmpadas incandescentes, díodos laser e LEDs (preferencialmente infravermelhos para evitar interferência solar).

  • Detetores de luz: células fotoelétricas (CdS, CdSe), fototransístores e fotodíodos (com resposta sensível à luz infravermelha).

Aplicações:

  • Deteção de proximidade.

  • Medição de movimentos translacionais e rotacionais.

  • Deteção de gases (detalhado em capítulos posteriores).

Vantagens:

  • Imunidade ao ruído eletromagnético.

  • Segurança intrínseca em ambientes perigosos (sem faíscas, sem eletricidade no ponto de medição).


13.8 Sensores Ópticos (fibra ótica)

Os sensores de fibra ótica utilizam cabos óticos para transmitir luz entre a fonte e o recetor. A grandeza a medir altera uma ou mais características do feixe de luz transmitido. As fibras podem ser de vidro, plástico ou uma combinação de ambos. As fibras de plástico são mais baratas, robustas e fáceis de manusear, sendo ideais para sensores. As fibras de vidro têm maior fragilidade, mas oferecem melhor desempenho em certas aplicações.

Parâmetros da luz que podem ser modulados:

  • Intensidade.

  • Fase.

  • Polarização.

  • Comprimento de onda.

  • Tempo de trânsito.

Classificações:
a) Sensores intrínsecos:
A própria fibra ótica é o sensor. A modulação ocorre dentro da fibra. Dividem-se em:

  • Sensores de intensidade: mais simples e comuns; incluem sensores de proximidade, deslocamento (fotónicos), pressão, pH e deteção de fumo. A intensidade da luz varia com a variável medida.

  • Exemplo: sensores com diafragma deformável que altera a intensidade da luz; sensores de proximidade com variação de luz refletida.

Outros mecanismos:

  • Índice de refração: usado em deteção de fugas criogénicas e óleo na água.

  • Fluorescência: modulação da luz com materiais fluorescentes sensíveis a gases, hormonas, etc.

  • Modulação de fase, polarização, comprimento de onda e tempo de trânsito: utilizados em sensores de alta precisão, como giroscópios, sensores de temperatura e de campo elétrico/magnético.

b) Sensores extrínsecos:
A fibra ótica é apenas um canal de transmissão, conduzindo luz para e do sensor convencional (ex.: termoresistência ou cristal piezoelétrico). São úteis em locais de difícil acesso ou com alto ruído eletromagnético (ex.: motores de avião ou transformadores).

Vantagens dos sensores de fibra ótica:

  • Elevada fiabilidade e resistência a ambientes agressivos.

  • Imunidade a ruídos elétricos.

  • Tamanhos reduzidos e baixo custo (excepto quando requerem eletrónica auxiliar).

Distribuição:
É possível integrar vários sensores ao longo de uma única fibra ótica, permitindo medição distribuída (ex.: medir temperatura ao longo de 2 km com resolução de 1°C em 400 pontos).

13.9 Transdutores Ultrassónicos

Transdutores ultrassónicos operam em frequências acima de 20 kHz (ultrassom) e são amplamente utilizados para medição de:

  • Vazão de fluidos.

  • Nível de líquidos.

  • Deslocamentos lineares.

  • Imagens médicas e detecção de falhas em materiais.

Princípio de funcionamento:

  • Um transmissor emite uma onda ultrassónica.

  • A onda é recebida por um receptor.

  • A variável medida é deduzida através da diferença de tempo, fase ou frequência entre a emissão e a recepção.

Tipos de transdutores:

  • Piezoelétricos: cristais que geram ondas ultrassónicas quando excitados com tensão alternada. Podem também atuar como receptores.

  • Capacitivos: membranas dielétricas entre camadas condutoras, também funcionam em emissão e recepção.

Velocidade de propagação:

  • Depende do meio: ar (331,6 m/s), água (1440 m/s), ferro (5130 m/s), granito (6000 m/s).

  • No ar, a velocidade depende da temperatura (V = 331,6 + 0,6T), e marginalmente da humidade.

Direcionalidade:

  • A onda não é unidirecional: propaga-se em padrão esférico com máxima intensidade na direção normal ao emissor.

  • Elementos de baixa frequência (ex.: 40 kHz) têm cones de emissão amplos (±50°), enquanto os de alta frequência (400 kHz) têm feixes estreitos (±3°).

Atenuação:

  • A amplitude do sinal diminui com a distância e depende da frequência, do meio e de contaminantes (pó, humidade).

  • A atenuação pode ser expressa como: Xd/X0 = √(e−αd) / (fd), onde α é a constante de atenuação.

Sensores de distância:

  • Calculam a distância com base no tempo de voo do ultrassom: d = v × t.

  • É necessário compensar variações de temperatura.

  • A resolução depende do comprimento de onda (frequência); maior frequência, melhor resolução.

Aplicações especiais:

  • Seguimento de objetos em 3D: usam três receptores em posições conhecidas para triangular a posição do transmissor.

  • Efeito Doppler: variação na frequência do sinal recebido devido ao movimento relativo, usado em medição de velocidade (ex.: caudalímetros).

  • Imagens ultrassónicas: utilizadas na medicina e na detecção de falhas internas. As reflexões são analisadas em função do tempo e da intensidade.

Problemas e soluções:

  • Ruído ambiental (ex.: maquinaria) pode afetar o sinal. Usam-se cabos blindados e materiais absorventes.

  • Reflexões indesejadas podem causar erros. Solução: parar a contagem ao detetar o primeiro sinal e evitar sobreposição de pulsos.


13.10 Sensores Nucleares

Os sensores nucleares são instrumentos pouco comuns devido às suas exigências de segurança e ao elevado custo. Utilizam radiações (geralmente gama) para realizar medições sem contacto direto, sendo úteis em ambientes extremos ou onde métodos convencionais falham.

Princípio de funcionamento:

  • Baseiam-se na atenuação da radiação entre uma fonte e um detetor.

  • A intensidade de radiação detectada varia conforme a densidade ou nível do meio atravessado.

Componentes típicos:

  • Fonte radioativa: normalmente césio-137, que emite raios gama.

  • Detetor: geralmente um cristal de iodeto de sódio, que gera um sinal elétrico proporcional à radiação incidente.

Aplicações:

  • Medição não invasiva do nível de líquidos em tanques (ver Capítulo 17).

  • Medição de caudal mássico (ver Capítulo 16).

  • Aplicações médicas de imagem (referência: Webster, 1998).

Considerações:

  • Existem fontes de baixa radiação que minimizam riscos, mas a sua sensibilidade pode ser afetada por radiação de fundo.

  • Apesar das restrições, os sensores nucleares são indispensáveis em algumas aplicações industriais e científicas.

13.11 Microsensores

Os microsensores são sensores de dimensões reduzidas (milimétricas), produzidos por técnicas de micromaquinação, frequentemente integrados em dispositivos eletrónicos. Combinam baixo custo, alta fiabilidade, boa performance e potencial para produção em massa.

Materiais e estrutura:

  • Tipicamente construídos em silício, mas podem incluir metais, plásticos, cerâmicas e vidros.

  • O silício é preferido por ter propriedades mecânicas semelhantes ao aço, baixa expansão térmica e resistência química.

Técnicas de fabrico:

  • Usam processos semelhantes aos da microeletrónica: deposição de filmes finos, fotolitografia, gravação química, gravação a laser, entre outros.

  • Estruturas típicas incluem diafragmas, feixes em consola e pontes.

Vantagens:

  • Pequenas dimensões.

  • Alta sensibilidade e baixo consumo.

  • Possibilidade de integração com circuitos eletrónicos (sensores inteligentes).

  • Custo de produção reduzido em grandes quantidades.

Desafios:

  • Sinais de baixa amplitude e baixa capacidade tornam os microsensores sensíveis ao ruído.

  • Requerem amplificação e conversores A/D especializados (ex.: conversores sigma-delta com precisão superior a 16 bits).

  • Algumas aplicações requerem saída digital em vez de analógica.

Exemplo de sensor digital:

  • Sensor de pressão com dois ressonadores em forma de H: um comprimido e outro esticado. A diferença de frequência entre os dois dá um sinal digital proporcional à pressão diferencial.

Aplicações:

  • Automóvel (ex.: pressão de pneus, airbag) com custos unitários muito baixos.

  • Medicina (ex.: medição de pressão sanguínea).

  • Medição de força, aceleração, temperatura, campos magnéticos, radiação e parâmetros químicos.

Tecnologias utilizadas:

  • Capacitiva.

  • Piezoresistiva.

  • Variação de frequência de ressonância.

  • Indutiva.

  • Piezoelétrica.

  • Acoplamento ótico ou magnético.

Capítulo 13 do livro Measurements and Instrumentation Principles de Alan S. Morris, 3 ed


🎓 Quer melhorar os seus resultados na universidade? 
Disponibilizamos explicações de ensino superior adaptadas às suas necessidades, com acompanhamento personalizado para diferentes disciplinas.
✔ Explore a nossa Lista de Matérias disponíveis.
🌟 Veja os testemunhos de alunos que já atingiram melhores notas com o nosso apoio.
📬 Contacte-nos por email ou pelo formulário de contacto e obtenha a ajuda que precisa para dominar os seus estudos!

EuExplico Eu Explico Explicações de Ensino Superior

sexta-feira, 30 de maio de 2025

Resumo extraído do capítulo 2 do livro Modern Control Engineering de Katsuhiko Ogata, 5ª edição

Capítulo 2 – Modelos Matemáticos para Sistemas de Controlo

Este capítulo foca-se em representar sistemas físicos através de funções de transferência — uma abordagem baseada na frequência e fundamental na teoria clássica de controlo. Enquanto o Capítulo 1 se centrava na modelação no domínio do tempo (com equações diferenciais), aqui passa-se para a representação no domínio da frequência, mais especificamente usando transformadas de Laplace e funções de transferência. Esta metodologia simplifica a análise de sistemas lineares invariantes no tempo (LTI), transformando equações diferenciais em equações algébricas.

O capítulo introduz a ideia de que qualquer sistema linear descrito por equações diferenciais com coeficientes constantes pode ser analisado no domínio da frequência, o que facilita o estudo da resposta do sistema a entradas variadas, a análise de estabilidade e a síntese de controladores.


Secção 2.1: A transformada de Laplace

Esta secção introduz e define a transformada de Laplace, que converte funções no domínio do tempo f(t)f(t) em funções de variável complexa F(s)F(s) no domínio da frequência. A definição da transformada de Laplace unilateral é apresentada como:

F(s)=L[f(t)]=0estf(t)dtF(s) = \mathcal{L}[f(t)] = \int_0^\infty e^{-st} f(t) dt

São discutidas as propriedades fundamentais da transformada, incluindo:

  • Linearidade

  • Deslocamento no tempo

  • Derivadas e integrais

  • Teorema do valor inicial e final

A transformada é particularmente útil para resolver equações diferenciais, pois transforma a operação de diferenciação numa multiplicação algébrica por ss, simplificando a análise de sistemas.

Além disso, a secção fornece várias transformadas comuns e usa exemplos para mostrar como aplicar a transformada de Laplace para resolver equações diferenciais ordinárias que descrevem sistemas dinâmicos.


Secção 2.2: Função de transferência de Sistemas Lineares

Esta secção define a função de transferência como a razão entre a transformada de Laplace da saída e da entrada de um sistema, assumindo condições iniciais nulas:

G(s)=Y(s)U(s)G(s) = \frac{Y(s)}{U(s)}

São analisados diferentes tipos de sistemas físicos (mecânicos e elétricos), ilustrando como derivar as suas funções de transferência a partir das equações diferenciais que os governam. Exemplos incluem:

  • Sistemas massa-mola-amortecedor

  • Circuitos RLC

Para cada tipo de sistema, a equação diferencial é transformada numa equação algébrica via transformada de Laplace e reorganizada para obter G(s)G(s).

A função de transferência fornece uma descrição completa do comportamento dinâmico do sistema (para sistemas LTI), permitindo prever a resposta a entradas arbitrárias no domínio da frequência.


Secção 2.3: Diagrama de Blocos

Esta secção introduz os diagramas de blocos, uma ferramenta gráfica para representar a interligação de sistemas dinâmicos e os fluxos de sinal. Cada bloco representa um subsistema com a sua função de transferência associada, e as conexões entre blocos representam as relações de sinal (soma, subtração, ramificações).

São introduzidas várias regras fundamentais de simplificação de diagramas de blocos, tais como:

  • Combinação de blocos em série e paralelo

  • Realimentações (feedback)

  • Movimentação de somadores e ramos

São fornecidos exemplos para mostrar como converter uma equação diferencial num diagrama de blocos equivalente, e como simplificar esse diagrama para obter a função de transferência global de sistemas compostos. Esta técnica é essencial para a modelação modular e análise de sistemas complexos de controlo.


Secção 2.4 – Modelação no Espaço de Estados 

Esta secção introduz a abordagem moderna à modelação de sistemas dinâmicos — a representação no espaço de estados — que se tornou essencial com o aumento da complexidade dos sistemas e o uso intensivo de computadores no projeto de controlo.

Conceitos fundamentais:

  • Estado: É definido como o conjunto mínimo de variáveis necessário para descrever completamente o comportamento de um sistema dinâmico a partir de um determinado instante e entrada.

  • Variáveis de estado: São os elementos do vetor de estado, escolhidos geralmente como saídas de integradores no sistema.

  • Vector de estado: Um vetor que agrupa todas as variáveis de estado.

  • Espaço de estados: Um espaço n-dimensional em que cada eixo representa uma variável de estado.

Equações no espaço de estados:

O comportamento de sistemas dinâmicos é descrito por:

  • Equação de estado:

    x˙(t)=f(x(t),u(t),t)\dot{x}(t) = f(x(t), u(t), t)
  • Equação de saída:

    y(t)=g(x(t),u(t),t)y(t) = g(x(t), u(t), t)

Nos sistemas lineares e invariantes no tempo, estas equações assumem a forma matricial:

x˙(t)=Ax(t)+Bu(t)\dot{x}(t) = A x(t) + B u(t)
  • y(t)=Cx(t)+Du(t)y(t) = C x(t) + D u(t)

Exemplo:

A secção inclui um exemplo prático com um sistema massa-mola-amortecedor, onde se mostra como escolher as variáveis de estado (deslocamento e velocidade) e formular as equações no espaço de estados.

Esta representação é vantajosa para sistemas com múltiplas entradas e saídas (MIMO), sistemas não lineares e para o projeto de controladores em tempo real.


Secção 2.5 – Representação em Espaço de Estados de Sistemas com Equações Diferenciais Escalares 

Esta secção mostra como converter uma equação diferencial escalar de ordem n numa forma de primeira ordem no espaço de estados. Isto é essencial porque os métodos modernos de análise e controlo operam sobre sistemas de primeira ordem em forma matricial.

Casos abordados:

  1. Sem derivadas da entrada (u):
    Uma equação diferencial como

    y(n)+a1y(n1)++any=u(t)y^{(n)} + a_1 y^{(n-1)} + \cdots + a_n y = u(t)

    pode ser convertida definindo variáveis de estado sucessivas como

    x1=y,x2=y˙,,xn=y(n1)x_1 = y, \quad x_2 = \dot{y}, \quad \dots, \quad x_n = y^{(n-1)}

    resultando numa forma padrão:

    x˙=Ax+Bu,y=Cx\dot{x} = A x + B u, \quad y = C x
  2. Com derivadas da entrada (u):
    Quando a entrada também aparece com derivadas, como:

    y(n)+=b0u(n)+b1u(n1)+y^{(n)} + \cdots = b_0 u^{(n)} + b_1 u^{(n-1)} + \cdots

    O truque está em escolher variáveis de estado que absorvam as derivadas da entrada, garantindo que a equação de estado não as contenha explicitamente. A matriz B será ajustada com base nos coeficientes bib_i, calculados a partir de uma fórmula que os reexprime em função das constantes aia_i e bib_i.

Este processo é fundamental para gerar modelos equivalentes que podem ser manipulados com ferramentas modernas (como MATLAB).


Secção 2.6 – Transformação de Modelos Matemáticos com MATLAB 

Esta secção apresenta as funções básicas do MATLAB usadas para converter entre funções de transferência e representações no espaço de estados, e vice-versa.

Transformar de função de transferência para espaço de estados:

  • Comando:

    [A, B, C, D] = tf2ss(num, den)
    

    Onde num e den são os coeficientes do numerador e denominador da função de transferência.

  • Esta transformação retorna uma forma canónica controlável por padrão, mas outras formas são possíveis com manipulações adicionais.

Transformar de espaço de estados para função de transferência:

  • Comando:

    [num, den] = ss2tf(A, B, C, D)
    

    Para sistemas com múltiplas entradas, é possível indicar qual entrada usar com um argumento adicional:

    [num, den] = ss2tf(A, B, C, D, iu)
    

Exemplos:

São apresentados exemplos em MATLAB mostrando a aplicação dos comandos a sistemas simples, verificando que a conversão é consistente e mantendo a equivalência matemática entre as representações.

Esta secção destaca o poder e a utilidade das ferramentas computacionais para a análise e síntese de sistemas de controlo complexos.


Secção 2.7 – Linearização de Modelos Matemáticos Não Lineares 

Esta secção trata do processo de linearização, uma técnica essencial para lidar com sistemas não lineares, ao aproximar o comportamento do sistema em torno de um ponto de operação em equilíbrio.

Sistemas não lineares:

  • Um sistema é considerado não linear quando não obedece ao princípio da sobreposição.

  • Muitos sistemas físicos apresentam não linearidades (como saturação, zona morta, ou comportamentos quadráticos), mesmo que sejam tratados como lineares em regime limitado.

Linearização em torno de um ponto de equilíbrio:

  • Na prática, os sistemas operam muitas vezes próximos de um ponto de equilíbrio (estado estacionário), o que permite aproximar o sistema por um modelo linear válido nesse intervalo.

  • A técnica baseia-se no desenvolvimento em série de Taylor da função não linear em torno de um ponto de equilíbrio (x0,y0)(x_0, y_0), desprezando os termos de ordem superior:

    y=f(x)f(x0)+dfdxx0(xx0)y = f(x) \approx f(x_0) + \left.\frac{df}{dx}\right|_{x_0} (x - x_0)
  • Para sistemas com múltiplas variáveis de entrada (e.g. x1,x2x_1, x_2), a aproximação linear torna-se:

    yy0fx1(x1x10)+fx2(x2x20)y - y_0 \approx \frac{\partial f}{\partial x_1} (x_1 - x_{10}) + \frac{\partial f}{\partial x_2} (x_2 - x_{20})

Aplicações:

  • Esta abordagem permite aplicar as ferramentas de controlo linear a sistemas originalmente não lineares, desde que as variações em torno do ponto de equilíbrio sejam pequenas.

  • Inclui-se um exemplo de linearização da equação z=xyz = x y, mostrando o cálculo do erro ao substituir o modelo exato pelo linearizado.


Secção 2.8 – Modelos de Sistemas Dinâmicos com MATLAB 

Esta secção mostra como usar o MATLAB para criar e manipular modelos de sistemas dinâmicos representados por funções de transferência e representações em espaço de estados.

Funções principais apresentadas:

  1. Criação de uma função de transferência:

    sys = tf(num, den)
    
  2. Criação de um sistema em espaço de estados:

    sys = ss(A, B, C, D)
    
  3. Conversão de uma função de transferência para espaço de estados:

    [A, B, C, D] = tf2ss(num, den)
    
  4. Conversão inversa – espaço de estados para função de transferência:

    [num, den] = ss2tf(A, B, C, D)
    
  5. Impressão da função de transferência:

    printsys(num, den)
    

Exemplos práticos:

Incluem-se exemplos detalhados onde são aplicadas estas funções:

  • Representações de sistemas com múltiplos blocos (em cascata, paralelo ou com realimentação).

  • Verificação de equivalência entre modelos diferentes (transferência vs. espaço de estados).

  • Uso de comandos series, parallel e feedback para combinar blocos.

Esta secção prepara o leitor para análises mais avançadas com auxílio computacional.


Secção 2.9 – Observações Finais sobre a Modelação de Sistemas 

Esta secção encerra o capítulo com reflexões importantes sobre a prática de modelação.

Pontos principais:

  • Modelos matemáticos são aproximações: Um modelo é sempre uma representação simplificada da realidade. O nível de detalhe a incluir depende do objetivo da análise.

  • Validade limitada: Um modelo que é válido para uma condição de operação pode não ser adequado noutras. Isso reforça a importância de:

    • Validar o modelo com dados experimentais.

    • Reconhecer a existência de propriedades negligenciadas (não linearidades, parâmetros distribuídos, atrito, etc.).

  • Escolha da representação: Dependendo do tipo de análise (resposta no tempo, frequência, controlo ótimo), pode ser mais conveniente usar:

    • Funções de transferência para sistemas SISO lineares.

    • Espaço de estados para sistemas MIMO ou para controlo moderno.

  • Linearização como ferramenta: Permite usar métodos lineares em sistemas originalmente não lineares, desde que haja limitação no intervalo de operação.

O autor reforça que a compreensão dos princípios de modelação e das suas limitações é essencial para a análise e o projeto eficaz de sistemas de controlo.




🎓 Quer melhorar os seus resultados na universidade? 
Disponibilizamos explicações de ensino superior adaptadas às suas necessidades, com acompanhamento personalizado para diferentes disciplinas.
✔ Explore a nossa Lista de Matérias disponíveis.
🌟 Veja os testemunhos de alunos que já atingiram melhores notas com o nosso apoio.
📬 Contacte-nos por email ou pelo formulário de contacto e obtenha a ajuda que precisa para dominar os seus estudos!

EuExplico Eu Explico Explicações de Ensino Superior

quarta-feira, 28 de maio de 2025

Resumo extraído do Capítulo 1 do livro Computer Organization and Design – ARM Edition, de David Patterson e John Hennessy

Capítulo 1 - Abstrações sobre Computadores e Tecnologia

📘 1.1 – Introdução

Esta secção introduz o campo dos sistemas computacionais, destacando a sua relevância na sociedade moderna. Os autores sublinham como a computação está em constante inovação, com impactos comparáveis aos das revoluções agrícola e industrial. Referem-se ao progresso extraordinário impulsionado pela Lei de Moore, que prevê a duplicação dos recursos dos circuitos integrados a cada 18 a 24 meses.

Dá-se destaque à evolução de aplicações antes consideradas ficção científica, como:

  • Computadores em automóveis;

  • Telemóveis;

  • O Projecto Genoma Humano;

  • A Web e motores de busca;

  • Veículos autónomos e realidade aumentada.

São descritas três grandes categorias de computadores:

  1. Computadores pessoais (PCs) – focados na performance para um utilizador a baixo custo;

  2. Servidores – gerem grandes cargas de trabalho e exigem elevada fiabilidade;

  3. Computadores embebidos – são os mais comuns e estão integrados em dispositivos como automóveis, televisores, aviões, etc.

Fala-se da Era pós-PC, dominada por dispositivos móveis pessoais (PMDs), como smartphones e tablets, que usam aplicações distribuídas entre o dispositivo e a computação na nuvem (cloud computing). O conceito de Software como Serviço (SaaS) também é apresentado.

Finalmente, são introduzidos os objectivos do livro, que incluem:

  • Entender a tradução de linguagens de alto nível para linguagem de máquina;

  • Compreender o impacto do hardware e do software no desempenho;

  • Melhorar a eficiência energética;

  • Explorar o paralelismo e as técnicas modernas de projecto de hardware.


💡 1.2 – Oito Grandes Ideias da Arquitectura de Computadores

Esta secção apresenta oito princípios fundamentais que orientam o design de computadores desde há décadas:

  1. Conceber para a Lei de Moore – antecipar a evolução tecnológica ao longo do tempo.

  2. Utilizar abstracções para simplificar o design – esconder complexidades com modelos mais simples.

  3. Tornar o caso comum mais rápido – optimizar as operações mais frequentes.

  4. Performance através de paralelismo – realizar várias operações simultaneamente.

  5. Performance através de pipeline – sobrepor etapas de execução de instruções (semelhante a uma linha de montagem).

  6. Performance através de previsão (prediction) – adivinhar o caminho provável de execução para ganhar tempo.

  7. Hierarquia de memórias – combinar diferentes tipos de memória para equilibrar velocidade, custo e capacidade.

  8. Confiabilidade através de redundância – usar componentes duplicados para lidar com falhas.

Cada ideia é representada por um ícone e será usada ao longo do livro para ilustrar como essas estratégias estão presentes nas arquitecturas modernas.


🧩 1.3 – Abaixo do Teu Programa 

Esta secção explica como um programa escrito numa linguagem de alto nível é transformado até chegar ao nível do hardware:

  • As aplicações são compostas por milhões de linhas de código e usam bibliotecas sofisticadas.

  • O hardware só compreende instruções muito simples em linguagem binária (0s e 1s).

  • Várias camadas de software são necessárias para traduzir essas aplicações para uma forma compreensível pelo hardware.

Dois componentes essenciais do software de sistema são:

  1. Sistema operativo (OS) – gere os recursos, entrada/saída e memória, permitindo que múltiplos programas coexistam.

  2. Compilador – traduz programas de linguagens como C ou Java para linguagem de máquina, passando por uma fase intermédia de linguagem de montagem (assembly).

O processo é explicado assim:

  • O programador escreve código em C (alto nível);

  • O compilador traduz para assembly;

  • O assembler converte o código assembly para linguagem binária (linguagem de máquina).

As vantagens das linguagens de alto nível são:

  • Maior expressividade e produtividade;

  • Portabilidade entre computadores diferentes;

  • Redução do número de linhas necessárias para implementar uma ideia.

O conceito de abstracção é reforçado como uma das ideias-chave que tornam possível este empilhamento de camadas de software sobre hardware.


🧠 1.4 – Por Detrás da Máquina 

Esta secção introduz a estrutura interna de um computador, destacando os seus cinco componentes clássicos:

  1. Entrada (Input) – dispositivos como teclados, microfones ou sensores;

  2. Saída (Output) – ecrãs, colunas, impressoras;

  3. Memória – armazena dados e programas em execução;

  4. Caminho de dados (Datapath) – executa operações aritméticas e lógicas;

  5. Unidade de controlo (Control) – coordena as operações do datapath, memória e I/O.

As secções seguintes exploram estes componentes em mais detalhe. A memória e o processador formam o núcleo da execução, enquanto os dispositivos de entrada e saída asseguram a comunicação com o exterior.

🖥️ Dispositivos de entrada/saída:

  • Os ecrãs modernos usam LCDs com matriz activa, compostos por milhões de píxeis controlados por transístores.

  • A imagem é mantida num buffer de imagem (frame buffer), que é lido ciclicamente.

  • Tablets e smartphones utilizam ecrãs tácteis capacitivos, que detectam toques com base em alterações de campo eléctrico.

🧩 Organização física:

  • Mostra-se o exemplo do iPad 2 com os seus componentes: ecrã, câmara, sensores (giroscópio, acelerómetro), chip A5 (com dois núcleos ARM), memória, e interfaces de comunicação (Wi-Fi, Bluetooth).

💾 Memória:

  • A memória principal é baseada em DRAM, que é volátil (perde dados sem energia).

  • A memória cache, feita com SRAM, é mais rápida mas mais cara, usada como buffer entre o processador e a DRAM.

  • A memória flash, não volátil, é usada em dispositivos móveis como memória secundária. Tem limitações no número de escritas possíveis.

🌐 Redes:

  • Os computadores estão ligados por redes locais (LANs) ou redes alargadas (WANs).

  • A comunicação em rede permite:

    • Partilha de recursos;

    • Acesso remoto;

    • Comunicação eficiente.

  • O Ethernet é um exemplo de rede local, enquanto redes WAN formam a espinha dorsal da Internet.

  • O Wi-Fi (IEEE 802.11) tornou-se central na era pós-PC, sendo económico e de elevada largura de banda.

📏 Abstracção: Arquitetura e Implementação

  • Introduz-se a arquitectura do conjunto de instruções (ISA) como a interface entre o hardware e o software de baixo nível.

  • O ABI (Application Binary Interface) define a compatibilidade binária de aplicações.

  • Diferencia-se arquitectura (funções oferecidas) de implementação (como são concretizadas essas funções).


🔧 1.5 – Tecnologias para Construir Processadores e Memórias

Esta secção aborda as tecnologias físicas que permitiram a evolução dos computadores, com foco especial nos circuitos integrados.

⚙️ Evolução tecnológica:

  • Inicia-se com as válvulas (1950s), passando pelos transístores, depois os circuitos integrados (IC) e mais tarde os VLSI (Very Large Scale Integration).

  • A Lei de Moore prevê a duplicação do número de transístores num chip a cada 18-24 meses.

🏭 Processo de fabrico:

  • O fabrico começa com um lingote de silício, cortado em wafers.

  • Os wafers passam por 20 a 40 etapas de processamento, criando camadas de transístores, condutores e isoladores.

  • Cada wafer é dividido em dies (chips), que são testados. Os bons são embalados e vendidos.

  • O rendimento (yield) depende do número de dies bons por wafer, que diminui com o aumento da área do die.

🧪 Fórmulas de custo:

Apresenta-se uma fórmula simplificada para o custo por die:

Custo por die = Custo por wafer / (dies por wafer × rendimento)

E outra para estimar os dies por wafer e o rendimento com base em defeitos e área.

📏 Processo de miniaturização:

  • A escala de fabrico (ex.: 32 nm) define o tamanho mínimo de elementos no chip.

  • Chips mais pequenos e de menor consumo são mais baratos e permitem maior densidade por wafer.


🧮 1.6 – Desempenho (Performance)

Esta secção trata de como avaliar o desempenho de computadores, tanto do ponto de vista do utilizador como do engenheiro.

📊 Definir desempenho:

  • Para o utilizador: tempo de resposta (tempo entre início e fim de uma tarefa).

  • Para centros de dados: vazão (throughput) – número de tarefas concluídas por unidade de tempo.

  • Um sistema com maior vazão pode não ter menor tempo de resposta para um utilizador individual.

✈️ Exemplo ilustrativo:

  • Compara-se o desempenho com o transporte aéreo: o Concorde é o mais rápido para uma pessoa, mas o Boeing 747 tem maior vazão por transportar mais passageiros.

📐 Fórmulas e métricas:

  • Define-se "A é n vezes mais rápido que B" como:

PerformanceA / PerformanceB = TempoB / TempoA
  • São discutidas várias formas de medir desempenho, como instruções por segundo (IPS), ciclos por instrução (CPI), frequência do relógio (clock rate), etc.

📉 Vieses e armadilhas:

  • Medir mal o desempenho pode levar a conclusões erradas.

  • Benchmarks específicos, como os apresentados mais adiante (ex.: SPEC), tentam capturar métricas reais de desempenho com aplicações típicas.


🔋 1.7 – O Limite da Energia

Esta secção aborda o desafio crítico do consumo de energia e potência nos microprocessadores modernos.

  • Durante décadas, o clock rate e a potência aumentaram em paralelo, até se atingir um limite físico de dissipação térmica (limite de arrefecimento).

  • Este limite é conhecido como Power Wall, e representa uma barreira à continuação do aumento do desempenho apenas através da frequência.

⚙️ Energia e potência em chips CMOS:

  • A tecnologia dominante de fabrico é CMOS (semicondutor de óxido metálico complementar).

  • O consumo principal de energia é o consumo dinâmico, que ocorre quando os transístores mudam de estado (0↔1).

  • A energia consumida por transição é proporcional a:

    Energia12CV2\text{Energia} \propto \frac{1}{2} C \cdot V^2

    onde CC é a carga capacitiva e VV é a tensão.

  • A potência dinâmica depende também da frequência de comutação:

    Poteˆncia12CV2f\text{Potência} \propto \frac{1}{2} C \cdot V^2 \cdot f
  • Para reduzir potência, foi comum diminuir a tensão (~15% por geração). Isso permitiu aumentos no clock sem proporcional aumento de potência.

⚠️ Problemas modernos:

  • A descida de tensão tem limites: transístores tornam-se "fugas" (leaky), desperdiçando energia mesmo quando desligados.

  • Cerca de 40% da energia consumida em servidores deve-se a fugas estáticas.

  • Técnicas como desligar partes do chip e melhorar o arrefecimento são usadas, mas limitadas pelo custo, especialmente em dispositivos móveis.

🔁 Conclusão: o design de microprocessadores teve de mudar drasticamente, pois o caminho tradicional baseado em mais velocidade e transístores tornou-se insustentável.


🔄 1.8 – A mudança radical: A passagem dos uniprocessadores para os multiprocessadores

Esta secção descreve uma mudança radical na indústria: o abandono dos processadores únicos (uniprocessors) em favor dos multicore.

  • Até cerca de 2006, o desempenho melhorava com aumento da frequência e melhorias internas.

  • Com a Power Wall, os fabricantes passaram a incluir vários núcleos (cores) num único chip.

    • Exemplo: um “quad-core” tem quatro processadores num só chip.

🧠 Consequências para programadores:

  • Antigamente, bastava compilar o código de novo para obter mais desempenho.

  • Agora, é necessário reescrever os programas para que tirem partido do paralelismo.

  • O paralelismo explícito exige que o programador:

    • Divida as tarefas de forma equilibrada;

    • Minimize o tempo de sincronização e comunicação;

    • Garanta que todas as partes do programa terminam ao mesmo tempo.

🎻 Analogia:

O texto compara o software antigo a música para solista. O software para múltiplos núcleos é como escrever para uma orquestra sinfónica – mais poderoso, mas muito mais difícil.

🧩 Os capítulos seguintes do livro incluem secções sobre as implicações do paralelismo em cada domínio técnico.


🧪 1.9 – Coisas reais: Avaliação comparativa do Intel Core i7

Esta secção introduz benchmarks reais usados para medir o desempenho de computadores, com foco no Intel Core i7.

📊 Avaliar desempenho:

  • O ideal seria correr os programas reais de cada utilizador, mas isso nem sempre é prático.

  • Por isso, usam-se benchmarks, que são programas-padrão representativos de workloads típicos.

  • O mais importante é o SPEC (System Performance Evaluation Cooperative).

🧮 SPEC CPU2006:

  • Divide-se em dois conjuntos:

    • CINT2006 – 12 benchmarks para processamento inteiro (ex.: compiladores, xadrez, simulação de ADN).

    • CFP2006 – 17 benchmarks para vírgula flutuante (ex.: dinâmica molecular, álgebra linear).

  • Os factores de desempenho incluem:

    • Contagem de instruções;

    • CPI (ciclos por instrução);

    • Tempo de ciclo de clock.

  • É usado o SPECratio:

    SPECratio=Tempo de refereˆnciaTempo de execuç¸a˜o\text{SPECratio} = \frac{\text{Tempo de referência}}{\text{Tempo de execução}}

    Quanto maior o valor, melhor o desempenho.

  • Para sumarizar os resultados de múltiplos benchmarks, calcula-se a média geométrica dos SPECratios.

⚡ SPECpower:

  • Benchmark voltado para medir eficiência energética (operações por segundo por watt).

  • Mede o consumo em diferentes níveis de carga (0% a 100%).

📌 Conclusão: o desempenho real de um processador não pode ser avaliado apenas pela frequência de relógio. Benchmarks como os SPEC ajudam a avaliar a performance com base em situações práticas.



⚠️ 1.10 – Falácias e Armadilhas 

Esta secção alerta para conceitos errados (falácias) e erros frequentes (armadilhas) na análise e concepção de sistemas computacionais.

Exemplos abordados:

  • Armadilha: Pensar que melhorar um único componente de um sistema resultará numa melhoria proporcional no desempenho global.

    • Isto é desmentido pela Lei de Amdahl, que mostra que o ganho total depende da fração do tempo de execução que é efectivamente afectada pela melhoria.

    • Exemplo: se 80% do tempo é gasto em multiplicações, mesmo acelerar essas operações infinitamente não tornará o programa 5 vezes mais rápido.

  • Falácia: Supor que computadores com baixa utilização consomem pouca energia.

    • Mesmo com pouca carga, servidores consomem uma grande fração da potência máxima.

  • Falácia: Acreditar que optimizar para desempenho e para eficiência energética são objectivos incompatíveis.

    • Em muitos casos, optimizações que reduzem o tempo de execução também reduzem o consumo energético global.

  • Armadilha: Usar apenas parte da equação do desempenho para avaliar um sistema.

    • A equação completa considera contagem de instruções, ciclos por instrução (CPI) e frequência do relógio.

    • Usar apenas dois desses factores pode levar a conclusões erradas.

  • Exemplo prático: O uso de MIPS como métrica de desempenho pode ser enganador:

    • Não permite comparar arquitecturas diferentes;

    • Varia com o tipo de programa;

    • Pode não refletir o tempo de execução real.


📌 1.11 – Considerações Finais 

Esta secção fecha o capítulo com uma síntese das ideias abordadas:

  • Tempo de execução real é a única medida fiável de desempenho.

  • A abstracção é a base da concepção de sistemas computacionais modernos — em particular, a interface entre hardware e software de baixo nível (ISA).

  • Moore previa a rápida evolução dos circuitos integrados; no entanto, o desempenho melhorou também com novas ideias arquitectónicas.

  • Eficiência energética tornou-se mais importante do que a densidade de transístores, conduzindo à adopção dos processadores multicore.

  • O design de computadores modernos equilibra múltiplos factores:

    • Desempenho;

    • Energia;

    • Fiabilidade;

    • Custo total de propriedade;

    • Escalabilidade.

💡 Plano para o livro:
Os próximos capítulos abordam os cinco componentes clássicos:

  • Datapath e controlo – Cap. 3, 4 e 6;

  • Memória – Cap. 5;

  • Entrada/Saída – Cap. 5 e 6.


🕰️ 1.12 – Perspectiva Histórica e Leituras Complementares 

Esta secção remete para um suplemento online que acompanha o livro.

  • Fornece o contexto histórico das ideias apresentadas no capítulo.

  • Procura ilustrar o lado humano da evolução tecnológica, mostrando como certos conceitos se desenvolveram ao longo do tempo.

  • Ajuda a compreender melhor o presente e a antecipar o futuro da computação.

  • Inclui sugestões de leitura complementar, também disponíveis no site do livro.



Capa do livro Computer Organization and Design – ARM Edition, de David Patterson e John Hennessy

 

Capítulo 1 do livro Computer Organization and Design – ARM Edition, de David Patterson e John Hennessy


🎓 Quer melhorar os seus resultados na universidade? 
Disponibilizamos explicações de ensino superior adaptadas às suas necessidades, com acompanhamento personalizado para diferentes disciplinas.
✔ Explore a nossa Lista de Matérias disponíveis.
🌟 Veja os testemunhos de alunos que já atingiram melhores notas com o nosso apoio.
📬 Contacte-nos por email ou pelo formulário de contacto e obtenha a ajuda que precisa para dominar os seus estudos!

EuExplico Eu Explico Explicações de Ensino Superior

segunda-feira, 26 de maio de 2025

Resumo extraído do Capítulo 2 do livro Structured Computer Organization de Andrew S. Tanenbaum (5.ª edição)

Estrutura dos sistemas computacionais



2.1 PROCESSADORES

Esta secção aborda a organização e evolução dos processadores (CPUs).

  • Estrutura Básica da CPU: A CPU é composta pela UC (unidade de controlo), ALU (Unidade Aritmética e Lógica) e registos. A unidade de controlo busca instruções da memória principal, interpreta-as e executa-as. Os registos armazenam dados temporários e instruções em execução, sendo o Program Counter (PC) e o Instruction Register (IR) os mais importantes.

  • Execução de Instruções: A execução dá-se em etapas: buscar a instrução, actualizar o PC, decodificar a instrução, buscar operandos, executar a operação e escrever o resultado.

  • Caminho de Dados (Datapath): Mostra como os dados fluem dentro da CPU, entre registos e a ALU. A performance do processador depende da eficiência deste caminho.

  • Pipelining: Técnica para acelerar a execução de instruções dividindo-as em várias fases (como uma linha de montagem). Várias instruções podem ser processadas em simultâneo, uma em cada estágio.

  • Paralelismo a Nível de Instrução: Explora-se o uso de pipelines duplos (como no Pentium) ou arquitecturas superscalares com várias unidades funcionais que permitem executar múltiplas instruções por ciclo de relógio.

  • Processamento Paralelo (Array e Vector Processors): Processadores de array como o ILLIAC IV executam a mesma instrução sobre múltiplos dados em paralelo (SIMD). Os vector processors, como o Cray-1, usam registos vectoriais e pipelines para realizar operações vectoriais com alta eficiência.

  • Multiprocessadores e Multicomputadores: Multiprocessadores partilham memória comum e são fortemente acoplados, facilitando a programação. Multicomputadores têm memória separada por CPU e comunicam por troca de mensagens, sendo mais escaláveis. Sistemas híbridos tentam combinar o melhor de ambos.


2.2 MEMÓRIA PRINCIPAL

Esta secção foca-se na organização, tipos e funcionamento da memória principal de um sistema informático.

  • Bits e Codificação Binária: A unidade mínima é o bit. O sistema binário é o mais fiável devido à facilidade de distinguir entre dois estados (0 e 1). Alguns sistemas usam codificações como BCD para representar números decimais.

  • Endereços de Memória: Cada célula de memória tem um endereço único. A quantidade de bits por endereço determina o número máximo de células endereçáveis. A célula é a unidade mais pequena de endereçamento e normalmente contém um byte (8 bits).

  • Ordenação de Bytes (Byte Ordering): Define como os bytes que compõem uma palavra são armazenados na memória — por exemplo, "little-endian" versus "big-endian".

  • Correção de Erros: Utilizam-se códigos como o de Hamming para detectar e corrigir erros na memória. A verificação de paridade também pode ser usada para detecção simples.

  • Memória Cache: Pequena memória rápida usada para armazenar dados frequentemente usados. Baseia-se no princípio da localidade (temporal e espacial). A performance depende da taxa de acertos (hit ratio) e é influenciada pelo tamanho da cache, tamanho da linha, organização, separação de dados e instruções (cache unificada vs Harvard) e número de níveis de cache.

  • Empacotamento e Tipos de Memória: As memórias modernas são vendidas como módulos (SIMMs ou DIMMs), cada um contendo vários chips de memória. DIMMs transferem 64 bits por ciclo e são comuns em computadores de secretária, enquanto os SO-DIMMs são usados em portáteis. A correção de erros é opcional e pouco comum em computadores domésticos.


2.3 MEMÓRIA SECUNDÁRIA

Mesmo com memórias principais cada vez maiores, elas continuam a ser insuficientes para armazenar todos os dados desejados, especialmente com o aumento da informação digital (como livros digitalizados, vídeos, etc.). A solução clássica é utilizar uma hierarquia de memória, onde memórias mais lentas, maiores e baratas complementam as mais rápidas e pequenas.

2.3.1 Hierarquias de Memória

  • Organiza-se a memória em níveis: registos, cache, memória principal, discos magnéticos, fitas magnéticas e discos ópticos.

  • À medida que se desce na hierarquia:

    • O tempo de acesso aumenta.

    • A capacidade de armazenamento aumenta.

    • O custo por bit diminui.

2.3.2 Discos Magnéticos

  • Compostos por pratos com revestimento magnético.

  • A informação é lida/escrita por cabeças móveis que flutuam sobre os pratos.

  • Os pratos giram a velocidade constante; os dados são organizados em pistas e sectores.

  • Utilizam estratégias como zonas concêntricas com diferentes números de sectores para aumentar a capacidade (zone bit recording).

  • Discos Winchester são selados para evitar poeira.

2.3.3 Desempenho dos Discos

  • Fatores como o tempo de procura (seek time), latência rotacional e taxa de transferência afetam o desempenho.

  • Há uma grande diferença entre a taxa de pico (burst) e a taxa sustentada de transferência de dados.

2.3.4 Interfaces e Controladores

  • Interfaces como IDE, EIDE e SCSI evoluíram para suportar velocidades maiores e múltiplos dispositivos.

  • O endereçamento evoluiu de C/H/S para LBA (Logical Block Addressing) para ultrapassar limites antigos (como os 504 MB dos primeiros BIOS).

2.3.6 RAID

  • RAID (Redundant Array of Independent Disks) melhora desempenho e fiabilidade.

  • Combina múltiplos discos como se fossem um só, podendo usar técnicas como espelhamento (RAID 1) ou distribuição de paridade (RAID 5).

2.3.8 CD-Recordables (CD-R)

  • CDs graváveis foram introduzidos como meio económico para backups.

  • Utilizam discos com trilhas guia e material sensível à gravação com laser.

2.3.9 CD-Rewritables (CD-RW)

  • Usam uma liga metálica especial com dois estados estáveis (amorfo e cristalino).

  • Um laser de diferentes potências escreve, apaga e lê os dados.

2.3.10 DVD

  • Representa uma evolução do CD-ROM, com maior capacidade.

  • É mais adequado para aplicações como filmes e grandes bases de dados.


2.4 ENTRADA/SAÍDA (INPUT/OUTPUT)

A secção trata da forma como os dispositivos de entrada e saída (E/S) se ligam ao processador e à memória, com foco especial nos barramentos (buses).

2.4.1 Barramentos

  • Os barramentos são conjuntos de fios paralelos que transportam sinais de controlo, dados e endereços entre os vários componentes de um computador.

  • A estrutura física típica inclui uma motherboard com slots para módulos de memória e placas de E/S ligadas ao barramento (ex: PCI).

  • Dispositivos de E/S dividem-se entre o controlador (controlador físico/electrónico) e o dispositivo propriamente dito (ex: disco, monitor).

  • O controlador gere o dispositivo e comunica com a CPU através do barramento. Pode usar DMA (Acesso Directo à Memória) para ler/escrever dados sem intervenção da CPU.

  • Quando a transferência termina, o controlador gera uma interrupção, que suspende o programa em execução e invoca um tratador de interrupções (interrupt handler).

Arbitragem do Barramento

  • Um árbitro de barramento decide qual componente usa o barramento quando há conflito (por exemplo, CPU vs dispositivo de E/S).

  • Os dispositivos de E/S têm normalmente prioridade, pois não podem parar a sua operação física sem risco de perda de dados (ex: discos rígidos).

Problemas de Velocidade e Compatibilidade

  • À medida que os componentes ficaram mais rápidos, os barramentos tornaram-se um gargalo. Surgiram soluções com barramentos múltiplos (por exemplo, PCI e ISA).

  • A evolução para o barramento PCI, mais rápido, permitiu maior largura de banda para dispositivos como placas gráficas, som, rede e discos SCSI.


2.5 SUMÁRIO

Esta secção faz uma recapitulação dos principais conceitos abordados ao longo do capítulo:

  • Componentes dos Sistemas Computacionais: São compostos por três tipos principais de componentes:

    • Processadores: Responsáveis por buscar, decifrar e executar instruções.

    • Memórias: Armazenam instruções e dados.

    • Dispositivos de Entrada/Saída (E/S): Permitem a comunicação com o exterior (ex: teclado, ecrã, impressora, etc.).

  • Ciclo de Execução de Instruções: Consiste em buscar uma instrução da memória, decodificá-la e executá-la. Este processo pode ser descrito como um algoritmo e, por vezes, é implementado por interpretadores.

  • Melhoria de Desempenho: Muitos computadores modernos usam pipelines ou arquitecturas superscalar, com várias unidades funcionais a operar em paralelo.

  • Computação Paralela:

    • Processadores em Array: Executam a mesma operação em múltiplos dados ao mesmo tempo (SIMD).

    • Multiprocessadores: Partilham uma memória comum (memória partilhada).

    • Multicomputadores: Cada processador tem a sua própria memória, e a comunicação entre eles é feita por troca de mensagens.

  • Hierarquia de Memória:

    • Memória Principal: Rápida e usada para armazenar o programa em execução. Pode usar cache para melhorar a performance.

    • Memória Secundária: Mais lenta, usada para armazenamento a longo prazo. Inclui discos magnéticos, discos ópticos e RAID.

  • Dispositivos de Entrada/Saída: Transferem dados entre o mundo exterior e o computador. Estão ligados por meio de um ou mais barramentos. A maioria dos dispositivos usa o código ASCII, mas o UNICODE está a tornar-se o padrão global.


Capítulo 2 do livro Structured Computer Organization de Andrew S. Tanenbaum (5.ª edição)

Capa do livro Structured Computer Organization de Andrew S. Tanenbaum (5.ª edição)


🎓 Quer melhorar os seus resultados na universidade? 
Disponibilizamos explicações de ensino superior adaptadas às suas necessidades, com acompanhamento personalizado para diferentes disciplinas.
✔ Explore a nossa Lista de Matérias disponíveis.
🌟 Veja os testemunhos de alunos que já atingiram melhores notas com o nosso apoio.
📬 Contacte-nos por email ou pelo formulário de contacto e obtenha a ajuda que precisa para dominar os seus estudos!

EuExplico Eu Explico Explicações de Ensino Superior

Formulário de Contacto

Nome

Email *

Mensagem *