Перейти к содержанию
    

В always идет только проверка условия, равен ли enable 0 или 1, присвоения нет.

 

Делаю следующим образом:

 

wire SYNC_OUT;

 

assign enable = SYNC_OUT;

 

ila ILA

(

.CLK (clk),

.CONTROL (control0),

.TRIG0 (block_5V),

.TRIG1 (cod),

.TRIG2 (comand),

.TRIG3 (ready),

.TRIG4 (enable)

 

);

 

vio VIO

(

.CLK (clk),

.CONTROL (control1),

.SYNC_IN(SYNC_IN), // IN BUS [7:0]

.SYNC_OUT(SYNC_OUT)

);

 

Т.е. enable используется только здесь, в остальных случаях идет лишь условие проверки его значения.

 

Может быть здесь что-то не то? Хотя вроде бы логично, я завожу кнопку на VIO, при ее нажатии ей должно присваиваться значение единицы, потом завожу на ILA и там значение кнопки выводится на осциллографе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может быть с типами переменных что-то не то?

 

enable у меня является входом:

input enable

 

SYNC_OUT переменной типа wire.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может быть с типами переменных что-то не то?

 

enable у меня является входом:

input enable

 

SYNC_OUT переменной типа wire.

Не то, если enable - input, то вход модуля является одним из драйверов этого сигнала, а вторым - assign. enable надо объявлять как wire.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А если я не могу его объявить как wire? Мне нужно, чтобы он был входом в моей программе. Можно как-то иначе?

Может быть какую-то промежуточную переменную ввести? Пока не поняла как.

Изменено пользователем RinettaFox

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А если я не могу его объявить как wire? Мне нужно, чтобы он был входом в моей программе. Можно как-то иначе?

Может быть какую-то промежуточную переменную ввести? Пока не поняла как.

 

Можно сделать его inout портом, но это не очень хорошая практика, лучше как-то так:

 

....

input  external_enable
wire external_enable

wire temp_enable, internal_enable 

assign temp_enable = то, что вам надо.

assign internal_enable  = external_enable | temp_enable;

 

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

Изменено пользователем Tausinov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...