W
wangjill
Guest
Alterações ao Produto 5.5bA função mti_GetSignalType FLI () foi alterada de modo que para uma
para lidar com um sinal de que foi porta desmoronado ele retorna o tipo ID
da formalização do porto, não o tipo ID do sinal real a que se
foi desmoronado.
(Isto mantém o tipo ID coerente com o nome
que você começa a partir do mesmo sinal punho.)
A função mti_SetSignalValue FLI () deixou de granulados atômica
array sinais.
Estabelece o valor inteiro array diretamente sobre o topo
nível atômico, em vez de array sinal iteração através da subelementos.
(Note que, para os não-atômica arrays ainda itera através da
subelementos.)
A otimização foi feito para várias funções de motorista FLI
fim de permitir a condução de arrays atômica (o que é mais rápido do que
o método normal de condução arrays no nível subelement).
Arrays são atômica se os seus subelementos são um tipo de enumeração, se
não têm mais de um condutor, se forem conduzidos apenas em zero atraso,
se eles não estão ligados ao OUT ou INOUT portos, e se eles não têm
qualquer associado ou tipo compósito resolução conversão funções.
As seguintes funções foram mudados, afirmou:mti_CreateDriver () agora cria atômica motoristas sobre atômica array sinais.
Vai cristalizar uma matriz atômica sinal só se mais de um motorista
É criado sobre ele.mti_FindDriver () deixou de granulados atômica array sinais.mti_GetDriverSubelements () irá agora cristalizar uma matriz atômica sinal
a fim de obter o driver subelementos.mti_ScheduleDriver () irá agora unidade atômica sinais array com zero atraso.
Programando com um não-zero pode causar um atraso atômica array sinal a ser
granulado.Note que mti_GetDriverNames () e mti_GetDriverValues ()
não irá retornar todas as informações para a matriz atômica sinais.
Observe também que mti_GetSignalSubelements () granulação forças de um
atómica array sinal.
O VHDL e Verilog compiladores foram alterados para não exibir pleno uso
informações quando ocorre um erro de utilização.
A plena utilização recebe mensagem exibida
somente quando o parâmetro é utilizado-ajuda.A tela agora aparece em versões OEM do ModelSim identificação
lo de forma diferente a partir do regular ModelSim PE produto.
OEM (apenas)Adicionado Novos recursos para 5.5bUm recurso foi adicionado para permitir Solaris memória partilhada.
O recurso pode aumentar
desempenho das grandes simulações.
Veja abaixo para mais detalhes.Dois programas para facilitar o Solaris têm característica de memória partilhada
foram adicionados à "sunos5" e "sunos5v9" plataformas.
Os executáveis são
localizado sob o título "sunos5" e "sunos5v9" diretórios na árvore modeltech
e são nomeadas vshminit e vshminf.Para aprender a usar esse recurso, invocar vsim e clique no menu Ajuda
Ajuda> Technotes> Solaris_Shared_Memory
O cursor tempo botão na Janela Wave foi reforçada.O cursor botão tempo é o tempo valor exibido na coluna e os valores
cursor para a linha de onda Janela.Um clique direito do rato (RMB) sobre este botão irá transformá-lo em uma entrada campo
onde você pode digitar um novo valor temporal.
Então, o cursor (e visualização)
vai passar para a nova época.
Existe uma nova função FLI, mti_CreateTimeType (), que é utilizado para obter
uma alça para um descritor para um tipo VHDL tempo tipo.
Uma aplicação útil
é para imprimir a hora actual.
Por exemplo,curr_time_str = mti_Image (mti_NowIndirect (& curr_time),
mti_CreateTimeType ());
mti_PrintFormatted ( "Tempo delta% s% d: Sinal% s /% s é% dn",
curr_time_str, mti_Delta (),
region_name, mti_GetSignalName (sigid), sigval);
Definir o novo preferência variável PrefMain (stallKernel) para 1 fará com que o
simulação do kernel para fazer uma pausa enquanto Wave Janela atualizações ocorrem.
Se o simulador
não está em execução ou a variável é definido como 0, não haverá efeito.
O valor padrão é 0.
O runStatus comando tem uma nova opção denominada-cheia que
retornará ao estado e à razão (estado).
VSIM 5> when clk {stop}
VSIM 6> run
# Simulation stop requested
VSIM 7> runStatus
# break
VSIM 8> runStatus -full
# break user_stop
A possível razão valores são:bkpt
bkpt_builtin
fim
fatal_error
iteration_limit
silent_halt
etapa
step_builtin
step_wait_suspend
user_break
user_halt
user_stop
desconhecido
A razão valor só tem sentido após a executar o comando ou passo
retorna.
Chamando runStatus enquanto ela ainda está em funcionamento
estado (ou seja, quando no interior de um organismo) irá retornar o valor anterior razão.Neste ponto, o usuário é avisado que você pode obter os resultados que você não
esperar.
Com a forma de quebra-chave obras, é possível obter uma razão
código de volta que pode ser tanto user_break ou user_stop.
Isto porque
a ruptura pode ocorrer em diferentes pontos do ciclo de simulação.
Se o
simulador é um processo de avaliação no momento da interrupção, um user_break
será devolvido, porém, se o simulador foi concluída e processos
sinal está atualizando os valores, então user_stop serão devolvidos.
A sutil
maneira como você vê isso no sistema atual é com a Fonte Janela.
Em
o primeiro caso, a Fonte Janela indica um arquivo com a linha
seta azul, enquanto no último caso nenhuma fonte linha é mostrada.
Um novo conjunto de compilador interruptores foram adicionadas para permitir uma maior
portão de nível otimizações para ocorrer em Verilog célula bibliotecas.Nas versões iniciais de 5,5, essas otimizações foram extremamente conservadora
no que se refere à otimização ou não foi permitido.
Com 5.5b,
vários parâmetros foram adicionados ao desativar alguns destes controlos.
Os parâmetros são especificados para o vlog sobre o compilador de linha de comando.
Eles só têm efeito quando compilando portão de nível celular bibliotecas, usando
a rápida mudança.
Você também pode especificar o-debugCellOpt
parâmetro para verificar se as otimizações estão ocorrendo.nocheckCLUP
Essa opção permite conectividade alças na célula a ser otimizada.
nocheckOPRD
Essa opção permite que uma porta de saída para serem lidos internamente pela célula.
Nota, se o valor
ler é o único valor contribuído para a saída da célula e se houver
um driver na net fora da célula, o valor lido não reflectem
o valor resolvido.
nocheckDNET
Esta opção permitir que tanto o porto e os retardados porto (criada para a negativa setup / hold)
a ser utilizado na secção funcional da célula.
nocheckSUDP
Essa opção permite que um seqüencial UDP para outra unidade seqüencial UDP.
Se você especificar nocheckALL, todas estas bandeiras serão ativados.
Note também a
funcionalidade da célula deve ser verificada após o uso de uma dessas
interruptores.
O vlog-fast mudar agora lida com células com $ setuphold
e US $ recrem timingchecks que usam o tstamp_cond ou
tcheck_cond argumentos.Adicionado elaboração um aviso quando genéricos / parâmetros especificados no comando
consonância com-g-G ou não estão presentes no design.VHDL desempenho foram adicionados ao Std_Developerskit std_mempak
pacote.
O Mem_Load e Mem_Dump procedimentos já estão sobrecarregados por padrão com
acelerada versões desses procedimentos.
A recompilação de qualquer código usando VHDL
estes procedimentos irão resultar no uso do espaço construído, em procedimentos acelerados.
Compilando com o noaccel-std_mempak vcom opção resultará na
utilização do código VHDL original do pacote.A capacidade foi adicionado à ModelSim PE e produtos OEM (ModelSim SE já
tem esse recurso) para telhas e janelas em cascata a partir da linha de comando.
Este
funcionalidade só foi possível a partir do GUI anteriormente.Verilog 2001 apoio para interligar atrasos.
Esse recurso é ativado com o v2k_intr_delay-chave.
O switch
causas do atraso a ser visível no porto de carga (anteriormente, o usuário tinha de
conectar um tampão no interior do módulo de carga para ver o atraso).
Se você tem
$sdf_annotate() solicita, em seu projeto que não estão recebendo executado
então você deve adicionar a tarefa Verilog $sdf_done() depois da sua última
$sdf_annotate() para remover qualquer atraso zero-MIPDs que possam ter sido
criada.
[Esta mensagem foi editada por: ssyang em 2001-06-02 22:00]
para lidar com um sinal de que foi porta desmoronado ele retorna o tipo ID
da formalização do porto, não o tipo ID do sinal real a que se
foi desmoronado.
(Isto mantém o tipo ID coerente com o nome
que você começa a partir do mesmo sinal punho.)
A função mti_SetSignalValue FLI () deixou de granulados atômica
array sinais.
Estabelece o valor inteiro array diretamente sobre o topo
nível atômico, em vez de array sinal iteração através da subelementos.
(Note que, para os não-atômica arrays ainda itera através da
subelementos.)
A otimização foi feito para várias funções de motorista FLI
fim de permitir a condução de arrays atômica (o que é mais rápido do que
o método normal de condução arrays no nível subelement).
Arrays são atômica se os seus subelementos são um tipo de enumeração, se
não têm mais de um condutor, se forem conduzidos apenas em zero atraso,
se eles não estão ligados ao OUT ou INOUT portos, e se eles não têm
qualquer associado ou tipo compósito resolução conversão funções.
As seguintes funções foram mudados, afirmou:mti_CreateDriver () agora cria atômica motoristas sobre atômica array sinais.
Vai cristalizar uma matriz atômica sinal só se mais de um motorista
É criado sobre ele.mti_FindDriver () deixou de granulados atômica array sinais.mti_GetDriverSubelements () irá agora cristalizar uma matriz atômica sinal
a fim de obter o driver subelementos.mti_ScheduleDriver () irá agora unidade atômica sinais array com zero atraso.
Programando com um não-zero pode causar um atraso atômica array sinal a ser
granulado.Note que mti_GetDriverNames () e mti_GetDriverValues ()
não irá retornar todas as informações para a matriz atômica sinais.
Observe também que mti_GetSignalSubelements () granulação forças de um
atómica array sinal.
O VHDL e Verilog compiladores foram alterados para não exibir pleno uso
informações quando ocorre um erro de utilização.
A plena utilização recebe mensagem exibida
somente quando o parâmetro é utilizado-ajuda.A tela agora aparece em versões OEM do ModelSim identificação
lo de forma diferente a partir do regular ModelSim PE produto.
OEM (apenas)Adicionado Novos recursos para 5.5bUm recurso foi adicionado para permitir Solaris memória partilhada.
O recurso pode aumentar
desempenho das grandes simulações.
Veja abaixo para mais detalhes.Dois programas para facilitar o Solaris têm característica de memória partilhada
foram adicionados à "sunos5" e "sunos5v9" plataformas.
Os executáveis são
localizado sob o título "sunos5" e "sunos5v9" diretórios na árvore modeltech
e são nomeadas vshminit e vshminf.Para aprender a usar esse recurso, invocar vsim e clique no menu Ajuda
Ajuda> Technotes> Solaris_Shared_Memory
O cursor tempo botão na Janela Wave foi reforçada.O cursor botão tempo é o tempo valor exibido na coluna e os valores
cursor para a linha de onda Janela.Um clique direito do rato (RMB) sobre este botão irá transformá-lo em uma entrada campo
onde você pode digitar um novo valor temporal.
Então, o cursor (e visualização)
vai passar para a nova época.
Existe uma nova função FLI, mti_CreateTimeType (), que é utilizado para obter
uma alça para um descritor para um tipo VHDL tempo tipo.
Uma aplicação útil
é para imprimir a hora actual.
Por exemplo,curr_time_str = mti_Image (mti_NowIndirect (& curr_time),
mti_CreateTimeType ());
mti_PrintFormatted ( "Tempo delta% s% d: Sinal% s /% s é% dn",
curr_time_str, mti_Delta (),
region_name, mti_GetSignalName (sigid), sigval);
Definir o novo preferência variável PrefMain (stallKernel) para 1 fará com que o
simulação do kernel para fazer uma pausa enquanto Wave Janela atualizações ocorrem.
Se o simulador
não está em execução ou a variável é definido como 0, não haverá efeito.
O valor padrão é 0.
O runStatus comando tem uma nova opção denominada-cheia que
retornará ao estado e à razão (estado).
VSIM 5> when clk {stop}
VSIM 6> run
# Simulation stop requested
VSIM 7> runStatus
# break
VSIM 8> runStatus -full
# break user_stop
A possível razão valores são:bkpt
bkpt_builtin
fim
fatal_error
iteration_limit
silent_halt
etapa
step_builtin
step_wait_suspend
user_break
user_halt
user_stop
desconhecido
A razão valor só tem sentido após a executar o comando ou passo
retorna.
Chamando runStatus enquanto ela ainda está em funcionamento
estado (ou seja, quando no interior de um organismo) irá retornar o valor anterior razão.Neste ponto, o usuário é avisado que você pode obter os resultados que você não
esperar.
Com a forma de quebra-chave obras, é possível obter uma razão
código de volta que pode ser tanto user_break ou user_stop.
Isto porque
a ruptura pode ocorrer em diferentes pontos do ciclo de simulação.
Se o
simulador é um processo de avaliação no momento da interrupção, um user_break
será devolvido, porém, se o simulador foi concluída e processos
sinal está atualizando os valores, então user_stop serão devolvidos.
A sutil
maneira como você vê isso no sistema atual é com a Fonte Janela.
Em
o primeiro caso, a Fonte Janela indica um arquivo com a linha
seta azul, enquanto no último caso nenhuma fonte linha é mostrada.
Um novo conjunto de compilador interruptores foram adicionadas para permitir uma maior
portão de nível otimizações para ocorrer em Verilog célula bibliotecas.Nas versões iniciais de 5,5, essas otimizações foram extremamente conservadora
no que se refere à otimização ou não foi permitido.
Com 5.5b,
vários parâmetros foram adicionados ao desativar alguns destes controlos.
Os parâmetros são especificados para o vlog sobre o compilador de linha de comando.
Eles só têm efeito quando compilando portão de nível celular bibliotecas, usando
a rápida mudança.
Você também pode especificar o-debugCellOpt
parâmetro para verificar se as otimizações estão ocorrendo.nocheckCLUP
Essa opção permite conectividade alças na célula a ser otimizada.
nocheckOPRD
Essa opção permite que uma porta de saída para serem lidos internamente pela célula.
Nota, se o valor
ler é o único valor contribuído para a saída da célula e se houver
um driver na net fora da célula, o valor lido não reflectem
o valor resolvido.
nocheckDNET
Esta opção permitir que tanto o porto e os retardados porto (criada para a negativa setup / hold)
a ser utilizado na secção funcional da célula.
nocheckSUDP
Essa opção permite que um seqüencial UDP para outra unidade seqüencial UDP.
Se você especificar nocheckALL, todas estas bandeiras serão ativados.
Note também a
funcionalidade da célula deve ser verificada após o uso de uma dessas
interruptores.
O vlog-fast mudar agora lida com células com $ setuphold
e US $ recrem timingchecks que usam o tstamp_cond ou
tcheck_cond argumentos.Adicionado elaboração um aviso quando genéricos / parâmetros especificados no comando
consonância com-g-G ou não estão presentes no design.VHDL desempenho foram adicionados ao Std_Developerskit std_mempak
pacote.
O Mem_Load e Mem_Dump procedimentos já estão sobrecarregados por padrão com
acelerada versões desses procedimentos.
A recompilação de qualquer código usando VHDL
estes procedimentos irão resultar no uso do espaço construído, em procedimentos acelerados.
Compilando com o noaccel-std_mempak vcom opção resultará na
utilização do código VHDL original do pacote.A capacidade foi adicionado à ModelSim PE e produtos OEM (ModelSim SE já
tem esse recurso) para telhas e janelas em cascata a partir da linha de comando.
Este
funcionalidade só foi possível a partir do GUI anteriormente.Verilog 2001 apoio para interligar atrasos.
Esse recurso é ativado com o v2k_intr_delay-chave.
O switch
causas do atraso a ser visível no porto de carga (anteriormente, o usuário tinha de
conectar um tampão no interior do módulo de carga para ver o atraso).
Se você tem
$sdf_annotate() solicita, em seu projeto que não estão recebendo executado
então você deve adicionar a tarefa Verilog $sdf_done() depois da sua última
$sdf_annotate() para remover qualquer atraso zero-MIPDs que possam ter sido
criada.
[Esta mensagem foi editada por: ssyang em 2001-06-02 22:00]