НПО Системы Безопасности
(499)340-94-73 График работы:
ПН-ПТ: 10:00-19:00
СБ-ВС: выходной

Главная » Периодика » Безопасность

0 ... 119120121122123124125 ... 233


3. Выходной файл:

CSIM: CUPL Simulation Program Version 4.2a Serial* ...

Copyright (c) 1996 Protel International CREATED Wed Dec 04 03:00:11 1991 LISTING FOR SIMULATION FILE: barrel22.si

Name Barrel22;

Partno CA0006;

Date 05/11/89;

Revision 02;

Designer Kahl;

Company Protel International;

Assembly None;

Location None;

Device g20v8a;

FIELD input = [D7,D6,D5,D4,D3,D2,Dl,D01; FIELD output = [Q7,Q6,Q5,Q4,Q3,Q2,Q1,Q0]; FIELD shift = [S2,S1,S0];

ORDER: CLOCK, %3, 0E, %3, shift, %1, input, %2, output;

var X = Q7; var Y = Q7 . . 4;

input

output

= = =:=:==: = = =

= =;=: = = =: = = = = == = = = =: = = = = = = = = :

0001:

хххххххх

LLLLLLLL

0002:

10000000

HLLLLLLL

0003:

10000000

LHLLLLLL

0004:

10000000

LLHLLLLL

0005:

10000000

LLLHLLLL

0006:

10000000

LLLLHLLL

0007:

10000000

LLLLLHLL

0008:

10000000

LLLLLLHL

0009:

10000000

LLLLLLLH

0010:

01111111

LHHHHHHH

0011:

01111111

HLHHHHHH

0012:

01111111

HHLHHHHH

0013:

01111111

HHHLHHHH

0014:

01111111

HHHHLHHH

0015:

01111111

HHHHHLHH

0016:

01111111

HHHHHHLH

0017:

01111111

HHHHHHHL

Существует одно обстоятельство, которое надо всегда учитывать при создании входного файла моделирования новым синтаксическим способом.

Если перед операторами проверки условий (IF, WHILE, UNTIL) стоят один или несколько операторов $SET или $СОМР без промежуточного оператора $OUT, то задавае-



мые ими значения не будут учитываться при проверке условий, так как условия проверяются только для значений используемых переменных, полученных в результате последнего моделирования.

Например, вы хотите получить на выходе следующий результат:

ORDER: CLOCK,clr,dir,! 0E,%2,count,%1,carry; var mode = clr,dir; VECTORS:

LLLL

synchronous

clear

state 0

LLLH

count up

state

LLHL

count up

state

LLHH

count up

state

LHLL

count up

state

LHLH

count up

state

LHHL

count up

state

LHHH

count up

state

HLLL

count up

state

HLLH

count up

state

9

- carry

Приведенная ниже последовательность операторов будет генерировать неправильный результат:

ORDER: CLOCK,clr,dir, ! 0E,%2,count,%1,carry; var mode = clr,dir; VECTORS:

С 100 LLLL L $set mode = 0;

$for i=l..9 :

$comp count = count + 1;

$if count="9":

$set carry = H;

$endif;

$out;

$endf;

который будет иметь вид:

0001:

LLLL

0002 :

LLLH

0003 :

LLHL

0004:

LLHH

0005:

LHLL

0006:

LHLH

0007:

LHHL

0008:

LHHH

0009:

HLLL

0010:

HLLH

[0019sa] user expected (L) for carry

Неправильный результат был получен из-за того, что значение счетчика count, используемое при проверке условия в операторе IF для вектора 10, в то время было текущим смоделированным значением (показанным в векторе 9) и не устанавливалось с помощью команды $сотр.



Правильная последовательность операторов будет выглядеть так:

с 100 LLLL L $set mode = О; $for i=l..9 : $if count="8": $set carry = H; $endif;

$comp count = count + 1,-

$out;

$endf;

Виртуальное моделирование

Виртуальное моделирование позволяет создавать и моделировать проект без указания целевой микросхемы. Таким образом, появляется возможность получить работающий проект еще до выбора архитектуры, на которой он будет осуществлен. Это особенно полезно для разработок, которые в последствии могут быть разделены на несколько отдельных частей.

Применение виртуального моделирования не вызывает особых сложностей. Нет необходимости в изучении новых команд и синтаксиса, просто нужно использовать мнемонические обозначения виртуальных (VIRTUAL) устройств при компиляции и моделировании для выполнения программы виртуального моделирования.

Программа виртуального моделирования также используется для моделирования проектов на базе устройств FPGA. Если полное архитектурное моделирование невозможно по причинам прав собственности внутренних блоков схемы или из-за сложности внутренних логических ресурсов, тогда виртуальное моделирование является лучщим вариантом на стадии тестирования схемы.

Моделирование неисправностей

Для любых конъюнктивных членов может быть смоделирована внутренняя ошибка, что позволяет определить зону действия такой ошибки. Формат оператора:

STUCKL п ;

STUCKH п ;

где п - номер JEDEC перемычки для первой перемычки в конъюнктивном члене.

В файл документации с расширением .DOC входит карта перемычек, в которой перечислены номера первых перемычек для всех конъюнктивных членов микросхемы.

Формат 1 принудительно устанавливает конъюнктивный член в 0.

Формат 2 принудительно устанавливает конъюнктивный член в 1. Команда STUCK должна быть расположена между операторами ORDER и VECTORS.



0 ... 119120121122123124125 ... 233