Mudanças entre as edições de "MIC-2013-1-CST Introdução aos Microcoprocessadores"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 59: Linha 59:
  
 
[[imagem:DiagramaTempoAcessoEscrita.jpg|800px|center]]
 
[[imagem:DiagramaTempoAcessoEscrita.jpg|800px|center]]
 +
 +
 +
 +
=AULA 2=
 +
 +
==Objetivos==
 +
 +
* apresentar, através de um exercício, um sistema hipotético de microprocessamento;
 +
* desenvolver a noção do que é a linguagem de máquina e do que é linguagem assembly;
 +
 +
==Sistema de microprocessamento hipotético==
 +
 +
Seja um sistema hipotético de processamento com os seguintes componentes:
 +
 +
 +
Uma CPU contendo:
 +
*Unidade de Controle;
 +
*Unidade Lógica e Aritmética;
 +
*Registradores:
 +
**Registrador de Instrução (IR) de palavra de 6 bits: Armazena a instrução que será executada pela CPU;
 +
**Contador de Programa (PC) de palavra de 4 bits: Armazena o endereço da próxima instrução a ser executada;
 +
**Registrador A e Registrador B, ambos de 6 bits: Registros temporários para transferência de dados da memória e operações de lógica e aritmética.
 +
*Barramentos:
 +
**Barramento de Dados - 6 bits : D5, D4, D3, D2, D1, D0.
 +
**Barramento de Endereço - 4 bits : A3, A2, A1, A0.
 +
**Barramento de Controle:
 +
***WR - Escrever RAM (memória de dados);
 +
***RD - Ler RAM (memória de dados);
 +
***PSEN - Ler ROM (memória de programa)
 +
*Memória externa de Dados: 16 posições de 6 bits;
 +
*Memória externa de Programa: 16 posições de 6 bits;
 +
 +
 +
As condições de ``reset'' do sistem são as seguintes: Registros A, B, PC e IR
 +
são zerados.
 +
 +
A CPU executará eternamente a sequência:\textbf{ ciclo de busca} e \textbf{ciclo
 +
de execução de instrução}. O ciclo de busca consiste basicamente em:
 +
\begin{enumerate}
 +
\item Colocar o endereço do PC no Barramento de Endereços;
 +
\item Enviar o controle de leitura $\overline{PSEN}$ para Memória de Programa;
 +
\item Ler a instrução do Barramento de Dados através da aplicação de
 +
um comando de escrita no Registrador de Instrução (IR);
 +
\item Incrementar o PC em função do número de palavras da instrução.
 +
\end{enumerate}
 +
 +
O ciclo de execução é basicamente a decoficação da instrução que está no
 +
Registrador de Instrução (IR), atualizando os registros ou dados da memória,
 +
dependendo da instrução em questão.

Edição das 15h57min de 22 de abril de 2013

DADOS GERAIS DA DISCIPLINA

Cronograma

AULA DATA Descriçao
1 2/4/2013
2 9/4/2013

AULA 1 - Dia 22/04/2013

OBS: aula improvisada pelo fato de ter sido repassada na última sexta.

Objetivos

  • apresentar os objetivos da disciplina
  • trabalhar memórias na forma de diagrama em blocos
  • apresentar barramentos de endereço/dados/controle
  • diferenciar conteúdo de endereço de memória;
  • apresentar o procedimento de acesso para escrita e para a leitura;
  • apresentar um diagrama de tempo simplificado de acesso a memória;
  • apresentar a CPU/microcontrolador como a "entidade" que acessa a memória

Diagrama em blocos da memória e barramentos

No diagrama abaixo está representado um bloco de memória primária de 16x8 (dezesseis endereços por 8 bits).

  • Note que uma posição de memória pode ser vista como uma caixa que possue um endereço e um conteúdo.
  • O conteúdo associado a posição de memória é uma palavra binária e, neste caso, possui 8 bits.
DiagramaBlocosMemorias.jpg

Para que us dispositivo externo possa "acessar" a memória para leitura ou escrita, ele deve se utilizar de um conjunto de fios que chamamos de barramentos.

Barramento de Endereços

Este barramento permite determinar o endereço de uma posição a ser acessada na memória. Um barramento de 4 linhas de endereço é designado por A3,A2,A1 e A0.

Supondo uma memória com endereços designados da forma hexadecimal de 0h a Fh. Supondo que A3 seja associado ao bit mais significativo e A0 ao bit menos significativo. Então, para acessar a posição Bh de memória, deve-se injetar A3=1, A2=0, A1=1 e A0=1. Note que

O termo "injetar" significa aqui que um dispositivo externo deve forçar tensão nas linhas do barramento. Esta tensão depende da tecnologia utilizada. Poderia ser, por exemplo, 5V para o nível lógico 1 e 0V par ao nível lógico 0.,

Diagrama de Tempo - Acesso para escrita

DiagramaTempoAcessoEscrita.jpg


AULA 2

Objetivos

  • apresentar, através de um exercício, um sistema hipotético de microprocessamento;
  • desenvolver a noção do que é a linguagem de máquina e do que é linguagem assembly;

Sistema de microprocessamento hipotético

Seja um sistema hipotético de processamento com os seguintes componentes:


Uma CPU contendo:

  • Unidade de Controle;
  • Unidade Lógica e Aritmética;
  • Registradores:
    • Registrador de Instrução (IR) de palavra de 6 bits: Armazena a instrução que será executada pela CPU;
    • Contador de Programa (PC) de palavra de 4 bits: Armazena o endereço da próxima instrução a ser executada;
    • Registrador A e Registrador B, ambos de 6 bits: Registros temporários para transferência de dados da memória e operações de lógica e aritmética.
  • Barramentos:
    • Barramento de Dados - 6 bits : D5, D4, D3, D2, D1, D0.
    • Barramento de Endereço - 4 bits : A3, A2, A1, A0.
    • Barramento de Controle:
      • WR - Escrever RAM (memória de dados);
      • RD - Ler RAM (memória de dados);
      • PSEN - Ler ROM (memória de programa)
  • Memória externa de Dados: 16 posições de 6 bits;
  • Memória externa de Programa: 16 posições de 6 bits;


As condições de ``reset do sistem são as seguintes: Registros A, B, PC e IR são zerados.

A CPU executará eternamente a sequência:\textbf{ ciclo de busca} e \textbf{ciclo de execução de instrução}. O ciclo de busca consiste basicamente em: \begin{enumerate}

\item Colocar o endereço do PC no Barramento de Endereços;
\item Enviar o controle de leitura $\overline{PSEN}$ para Memória de Programa;
\item Ler a instrução do Barramento de Dados através da aplicação de
um comando de escrita no Registrador de Instrução (IR);
\item Incrementar o PC em função do número de palavras da instrução.

\end{enumerate}

O ciclo de execução é basicamente a decoficação da instrução que está no Registrador de Instrução (IR), atualizando os registros ou dados da memória, dependendo da instrução em questão.