Você está na página 1de 2

UFPI - UNIVERSIDADE FEDERAL DO PIAU

CENTRO DE TECNOLOGIA
CURSO DE ENGENHARIA ELTRICA
LAB. DE PROJETO DE CIRCUITOS INTEGRADOS VLSI

OSCILOSCPIO

EM

Prof. Marcos Zurita

Fevereiro/2013

SYSTEMVERILOG PROJETO

1 OBJETIVO
Implementar e prototipar um pequeno osciloscpio em SystemVerilog.
2 ENTREGVEIS

Cdigos-fonte (.sv) e arquivos de projeto (.qpf) dos componentes implementados;


Cdigos-fonte (.sv) e arquivos de projeto (.mpf) dos testbenches.

3 RESUMO TERICO

oscilloscope

122x32 pixels Graphical LCD Module

LCD_driver

graph_update

V scale
Trigger on/off
Period
sampler

trigger

Channel
V_REF

analog 1
analog 2

external_ADC

4 DESCRIO DO SISTEMA
Osciloscpio digital de dois canais, tenso de entrada fixa entre 0 e 5V, 4 taxas de amostragem
possveis (30 Ksps, 20 Ksps, 10 Ksps e 1Ksps) com trigger desabilitvel.
4.1 Blocos
4.1.1 Bloco external_ADC
Conversor analgico/digital externo ao FPGA, com 10 bits de resoluo, dois canais de entrada e taxa
de amostragem selecionvel. A partir de uma solicitao externa, este bloco realiza uma bateria de
amostragens no canal selecionado, com a taxa de amostragem selecionada e os envia, um a um para a
sada (ligada ao bloco sampler).
4.1.2 Bloco sampler
O bloco sampler responsvel por controlar o bloco external_ADC, configurando-o para a taxa de

amostragem e canal selecionados pelo usurio atravs das teclas period e channel, enviando as
amostras coletadas para o bloco trigger.
4.1.3 Bloco trigger
O bloco trigger responsvel por definir o momento de disparo da sada grfica das amostras. Sua
tarefa observar a evoluo dos valores das amostras enviadas pelo sampler, armazenando as mais
recentes em memria, e gerar um disparo quando for detectada a passagem pela tenso de referencia
de disparo (V_REF), no sentido ascendente. A partir do disparo, ele dever armazenar e enviar as 96
amostras seguintes para o bloco graph_update. O trigger poder ser desabilitado pelo usurio atravs
da tecla trigger_on/off. Neste caso, o bloco simplesmente repassar 122 amostras sequenciais
recebidas do sampler, sem nenhum critrio.
4.1.4 Bloco graph_update
O bloco graph_update responsvel por gerar a parcela da imagem do display LCD correspondente
ao grfico do osciloscpio propriamente dito, e envi-la ao bloco LCD_update. Este grfico
composto pela curva das amostras recebidas do boco trigger e por uma grade de pontos de referncia
de escala. Uma vez que as amostras so recebidas em 1024 nveis (10 bits) mas apenas 32 nveis
podem ser exibidos na tela, uma escala de converso deve ser aplicada. Esta escala pode ser alterada
pelo usurio atravs da tecla V_scale.
4.1.5 Bloco LCD_update
O bloco LCD_update comunica-se com os blocos graph_update e text_update a fim de receber
122 colunas de pixeis a serem exibidos na tela. A cada coluna de pixeis recebida o bloco a repassa
diretamente para o bloco LCD_driver a fim de atualizar a coluna correspondente de pixeis no display.
Desse modo, a frequncia de atualizao da imagem na tela definida por esse bloco
4.1.6 Bloco LCD_driver
Bloco responsvel pelo interfaceamento e comunicao em baixo nvel com o mdulo LCD externo.

Você também pode gostar