ModelSim-Altera 6.6d

Transcrição

ModelSim-Altera 6.6d
LSCAD | André Luiz | junho 2011
ModelSim-Altera 6.6d
Roteiro
Motivação
• Diretório
• Criação de Projetos
• Compilação
• Simulação
•
Motivação
•
•
•
Ferramenta independete
Maior acurácia
Ferramenta robusta
First Look
Diretório
•
Mudar o diretório padrão para o diretório do
seus projetos.
File > Change Directory
Criação de Projetos
•
Criação de projetos
File > New > Project
Criação de Projetos
Criação de Projetos
•
•
•
Project Name: Nome do Projeto
Project Location: Por padrão seu diretório
principal
Default Library Name: Por padrão work mas
pode ser qualquer nome não usado até então.
Obs: caso troque o nome, o usuário terá que
mudar seu o código.
Criação de Projetos
•
Adicionando novos itens ao projeto.
Adiciona Arquivos
novos
Adiciona Arquivos já
existentes
Criação Projetos
•
Adicionando novos itens ao projeto.
Pode também adicionar arquivos clicando com botão
direito na janela de seu projeto: Add to Project > O que
desejar adicionar.
Criação Projetos
•
Uma vez adicionado, note que o status do
arquivo fica como ‘?’ isto significa que o
ModelSim não possui conhecimento do
circuito gerado pelo arquivo fonte.
Compilação
•
ModelSim possui compilador próprio,
tornando-o independente.
Compile > Compile All
Compilação
•
Após compilação o Status do arquivo deverá
estar marcado Checked, e uma mensagem será
exibida no console.
Simulação
•
•
Simulação Manual: Neste tipo de simulação o
usuário define passo a passo os valores dos
sinais da simulação.
Simulação por Scrips: O usuario define um
arquivo .do que contem os valores dos sinais e
este arquivo é carregado pelo ModelSim.( útil
para simulação de grandes projetos).
Simulação
Simulate > Start Simulation
Simulação
Design tab: Lista todos os modelos disponíveis
para simulação.
• VHDL e Verilog tab: O usuario pode
configurar/especificar particularidades da
linguagem utilizada.
• Library tab: O usuário pode incluir qualquer
biblioteca adicional externa.
•
Simulação
•
Clicando em OK na janela Start Simulation o
ModelSim três novas abas: Objects, sim e
Processes.
Simulação
•
A Aba sim contém, de forma hierárquica, os
componentes do circuito carregado,
monstrando seu tipo e a que unidade ela
pertence.
Simulação Manual
•
Clicando na instancia desejada e selecionando
os sinais e adicione eles na Wave para sua
simulação.
Simulação Manual
•
Uma nova janela, Wave, aparecerá. Para
separa-la das outras precione o botão Undock.
Simulação Manual
Simulação Manual
•
Primeiramente mude o zoom de sua Wave
apertando R.
Simulação Manual
•
Definindo o clock do circuito, basta clicar com
o botão direito no sinal definido pelo usuário
como clock > Clock...
Simulação Manual
Restart: Reinicia a simulação
• Run: Roda Simulação pelo tempo definido no
campo Run Length.
• Continue: Continua a simulação do ponto onde
parou.
• Run –All: Começa a simulação
• Break : Interrompe a simulaçao
•
Simulação Manual
•
Mudança do valor de um sinal.
Simulação Manual
Value: Valor cujo qual o usuário deseja atribuir
ao sinal.
• Kind: freeze, drive, deposit.
• Delay For: Quanto tempo apos ter forçado o
sinal o mesmo, deve alterar o valor.
• Cancel After: Quanto tempo após a mudança
do valor do sinal, o mesmo deve retornar ao
seu valor original.
•
Simulação Manual
Simulação Scrips
•
Imagine toda vez que o usuário fizer uma
modificação em seu projeto. Logo ele terá que
refazer todo esse processo para simular seu
projeto, isto demanda uma grande quantidade
de tempo diminuido sua produtividade.
Simulação Scrips
•
Criando um arquivo .do.
Simulação Scrips
•
Abrirá uma nova janela para a criação de seu
arquivo .do.
Simulação Scrips
•
Iniciando a simulação
vsim <entity>
Ex: vsim sirene
•
Adicionando sinais a wave
add <local> <object>
Ex: add wave chave
add dataflow sirene
Simulação Scrips
•
Modificação do estado de um sinal.
Force [-freeze | -drive | -deposit] [-cancel <time>] [-repeat
<time>] <item_name> <value> [<time>] [, <value> <time> ...]
•
•
•
-freeze: Congela este sinal até que o mesmo
seja forçado a outro valor OU pelo comando
noforce.
-drive: define um Driver para o sinal.
-deposit: define o valor para o sinal até que
algum driver mude seu valor OU pelo
comando noforce.
Simulação Scrips
Caso não escolha uma das três opções(freeze,
drive, deposit) –freeze é escolhido por padrão.
• -cancel <time>: cancela o comando force em
exatamente <time> unidades de tempo.
• -repeat <time>: repete o comando force até o
final da simulação com intervalos de <time>
unidades de tempo (pode ser cancelado pelo
comando noforce).
•
Simulação Scrips
•
•
<item_name>: O nome do sinal a ser forçado.
<value>: valor desejado para o sinal.
Value
Descrição
1111
Literal
2#1111
Binario
10#15
Decimal
16#F
Hexadecimal
Simulação Scrips
Ex 1: force chave 1 ( force o sinal chave e congele-o em
1).
Ex: force clk 0 0, 1 {30ps} –r 100 ps ( force o sinal clk de 0
com offset 0 para 1 e sua borda de descida em 30 ps, e
repita este comando no intervalo de 100 unidades de
tempo no saco ps.
Duvidas?

Documentos relacionados