Vous êtes sur la page 1sur 7

UNIVERSIDADE FEDERAL DO ABC

Relatrio Aula Prtica 6


Lgica Programvel

Prof. Dr. Rodrigo Reina Muoz

Fbio Augusto Barcelos Teixeira

RA11079312

Paulo Csar Menegon de Castro

RA11004911

Pedro Pennachi

RA 21038414
00112233

Santo Andr
2016

1. Introduo
As memrias so dispositivos que utilizam mecanismos diversos para
armazenar informaes, tais como nmeros, letras, caracteres, instrues,
endereos, dados. Sua utilizao ocorre principalmente em computadores em geral e
subsistemas computacionais. Em funo dos diferentes processos relacionados ao
seu funcionamento e uso, as memrias podem apresentar a seguinte classificao:

Acesso: a informao acessada atravs de endereos, que so um conjunto


de bits associados s posies de memria. O tempo de acesso de uma
memria o tempo necessrio desde a entrada de um endereo at o
momento em que a informao aparea na sada. No caso de memrias de
leitura/escrita, tambm o tempo para a informao ser gravada. possvel
ter acesso a uma dada posio de memria de duas maneiras diferentes:
Seqencial: chegam posio endereada, passando por todas as
intermedirias. Exemplo: fita magntica. Aleatrio ou direto: chegam
diretamente posio endereada. Exemplo: memrias semicondutoras,
RAM.

Volatilidade: as memrias volteis so aquelas que perdem as informaes


armazenadas com corte de alimentao. Ex.: memrias semicondutoras
baseadas em Flip-Flops., RAM. As memrias no volteis so aquelas que
mesmo sem alimentao, continuam com as informaes armazenadas.
Exemplos so as memrias magnticas, ticas e as memrias ROM, PROM e
EPROM.

Escrita/Leitura: exemplos de memria de escrita/leitura so as RAMs e as de


apenas de leitura, as ROMs.

Armazenamento: Estticas: so aquelas em que o dado inserido permanece


armazenado indefinidamente. Como exemplo, armazenamento em flip-flop.
Dinmicas: necessria a reinsero do dado periodicamente para que ele
no se perca. Ex.: armazenamento em capacitores.
Uma memria armazena ou acessa informaes, por meio de endereos, em

lugares denominados localidades de memrias. Para o acesso a estas localidades, o


bloco possui uma srie de terminais de entrada de endereos que so ligados a um
conjunto de fios denominado barra de endereos (address bus).

Para a entrada e sada dos dados, o bloco possui uma srie de terminais
ligados barra de dados (data bus). Alm disto, o bloco possui terminais de controle
ligados barra de controle (control bus)

Figura 1 Memria tpica com indicao de barramentos

Uma memria ROM (ROM - do ingls read-only memory) um um tipo


de memria que permite apenas a leitura, ou seja, as suas informaes so gravadas
nica vez e aps isso no podem ser alteradas, somente acessadas. As principais
caractersticas das memrias ROM so: permitem apenas a leitura do dado
armazenado

na

fabricao;

so

constitudas

estritamente

de

circuitos

combinacionais; empregam gerador de produtos cannicos para seleo; so no


volteis; possuem acesso aleatrio (direto) e so memrias estticas.

Figura 2 Esquema interno memria ROM 16X1

2. Objetivos
Escrever o cdigo VHDL para descrever o funcionamento de uma memria
ROM 8X8.
O circuito tem os seguintes sinais de interface:

CE: entrada de habilitao de memria (CE = 0);

ADDR: entrada de endereo;

DADO: sada do mdulo de memria (representa o contedo armazenado na


ROM).

Condies de acionamento:

Se CE = 0 o contedo da memria acessado;

Caso contrario, o barramento de sada da memria colocado em alta


impedncia.

3. Resultados
3.1. Cdigo VHDL
O seguinte cdigo VHDL foi implementado:
library ieee;
use IEEE.STD_LOGIC_1164.all;
use ieee.numeric_std.all;

ENTITY mem_rom IS
PORT(ce : IN STD_LOGIC;
addr : IN STD_LOGIC_VECTOR (2 DOWNTO 0);
dado : OUT STD_LOGIC_VECTOR(7 DOWNTO 0));
END mem_rom;

ARCHITECTURE behave OF mem_rom IS


TYPE arranjo IS ARRAY (INTEGER RANGE 0 to 7) of STD_LOGIC_VECTOR(7 DOWNTO 0);
CONSTANT conteudo : arranjo :=
-- endereo 0, 1, 2, 3,
-- endereo 4, 5, 6, 7.
(x"61", x"62", x"63", x"64",
x"65", x"66", x"67", x"68");
Begin
-- Leitura do contedo armazenado:
Dado <= conteudo(to_integer(unsigned(addr))) when ce = '0' else (others => 'Z');
End behave;

3.2.1. Implementao na placa Altera DE2-115


Nome do
Sinal

Nome
PORT

Tipo de
Sinal

Nome do
Sinal
FPGA

Nmero
do Pino
FPGA

ce

ce

Entrada

SW[0]

PIN_AB28

Entrada

SW[1]

PIN_AC28

Entrada

SW[2]

PIN_AC27

addr [2]

Entrada

SW[3]

PIN_AD27

dado [0]

Sada

LEDR[0]

PIN_G19

dado [1]

Sada

LEDR[1]

PIN_F19

dado [2]

Sada

LEDR[2]

PIN_E19

Sada

LEDR[3]

PIN_F21

dado [4]

Sada

LEDR[4]

PIN_F18

dado [5]

Sada

LEDR[5]

PIN_E18

dado [6]

Sada

LEDR[6]

PIN_J19

dado [7]

Sada

LEDR[7]

PIN_H19

addr [0]
addr [1]

addr

dado [3]
dado

Tabela 1 Pinos e Sinais Utilizados na Implementao da Memria ROM

Foto 1: addr = 0, dado = X61

Foto 2: addr = 4, dado = X65

Foto 3: addr = 5, dado = X66

Foto 4: addr = 7, dado = X68

3.2.1. Simulao no ambiente Quartus II

4. Concluso
Com esta prtica foi possvel verificar a implementao de cdigo VHDL, sua
simulao e implantao em hardware. Atravs destas ferramentas foi possvel
implementar uma memria ROM. Atravs das simulaes, os resultados obtidos
foram comparados com os resultados esperados e foram compatveis. Para cada
endereo foi apresentado o dado correspondente. Quando o dado ce est em nvel
lgico alto, o barramento de dados fica em alta impedncia. O design foi implantado
em hardware. Utilizando chaves, push-buttons e indicadores luminosos, foram
simuladas as entradas e sadas. Para cada endereo foi possvel verificar o dado
armazenado na memria, verificando atravs de sinais luminosos. Estes resultados
verificados na pratica, tambm corresponderam aos resultados.

Referncias Bibliogrficas
DAMORE, Roberto; "Descrio e Sntese de Circuitos Digitais", LTC-Livros
Tcnicos e Cientficos Editora S.A., 2005.
PERRY, Douglas L.; VHDL, Programming by Example, Fourth Edition, McGraw-Hill,
2002.
SALSIC, Zoran; SMAILAGIC, A.; "Digital systems design and prototyping using field
programmable logic and hardware description languages", Kluwer Academic
Publishers, 2000.
TOCCI, Ronald J.; WIDMER, Neal S.; MOSS, Gregory L.; Sistemas digitais princpios e aplicaes; 11 Edio, Pearson, 2015
MUOZ, R. R. Sexta Aula Prtica. In: Lgica Programavel. CECS - Universidade Federal
do ABC, 2016.