реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> как такое может быть ?
DASM
сообщение Jan 26 2011, 16:27
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



На tri-state bridge прицеплено устройство. В verilog его описании стоит assign avs_data[31:0] = (avs_outputenable_n) ? {16'hzzzz,outLatch} : 32'hzzzzzzzz;
Ну то есть контролируем только OE с шины avalon. Работоспособность не проверял, но NIOS по крайней мере виден отладчику. Потом пишу
assign avs_data[31:0] = (!avs_read_n && !avs_outputenable_n) ? {16'hzzzz,outLatch} : 32'hzzzzzzzz;, то бишь хочу чтобы и OE и сигнал read учитывался. Система виснет наглухо (Eclipse пишет, что не может остановить проц). Q10.1. Кстати посмотрел RTL - ужаснулся, он куда-то пооткусывал кучу буферов, хотя они однозначно нужны (avalon export). Q9 сгенрел нормальный на вид RTL , с работоспособностью завтра буду разбираться. Вообще это хоть правильная конструкция "(!avs_read_n && !avs_outputenable_n) " ?
Go to the top of the page
 
+Quote Post
des00
сообщение Jan 27 2011, 06:24
Сообщение #2


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(DASM @ Jan 26 2011, 10:27) *
assign avs_data[31:0] = (avs_outputenable_n) ? {16'hzzzz,outLatch} : 32'hzzzzzzzz;
...
assign avs_data[31:0] = (!avs_read_n && !avs_outputenable_n) ? {16'hzzzz,outLatch} : 32'hzzzzzzzz;

хммм, а вы с полярностью сигналов не напутали? в первом случае данные буду выданы на шину когда avs_outputenable_n == 1, а во втором когда avs_read_n == 0 и avs_outputenable_n == 0


--------------------
Go to the top of the page
 
+Quote Post
DASM
сообщение Jan 27 2011, 07:45
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



да, кажется напутал, но во втором случае то почему шина виснет и проц не виден ?
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Jan 27 2011, 07:49
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



Цитата(DASM @ Jan 27 2011, 13:45) *
да, кажется напутал, но во втором случае то почему шина виснет и проц не виден ?

кто-то занял системную шину и не дает другим
Go to the top of the page
 
+Quote Post
DASM
сообщение Jan 27 2011, 07:57
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



так в том и дело, что этот кто-то и есть мой модуль, если assign avs_data убрать - все OK. Но вот вопрос - почему же он занимает шину, ведь при неактивных read_n и output_enable я делаю assign к 32'hZZZZZZZZ
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Jan 27 2011, 08:24
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



ну, посимулировать это дело или сигналтапом посмотреть. да, еще вспомнил - был у меня один самописный компонент с придурью, затирал память программ ниоса, тоже все наглухо вешалось sm.gif
Go to the top of the page
 
+Quote Post
DASM
сообщение Jan 27 2011, 08:37
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



да мой компонент по-сути проходной - сплошной export и все.
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Jan 27 2011, 13:01
Сообщение #8


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(DASM @ Jan 27 2011, 10:57) *
так в том и дело, что этот кто-то и есть мой модуль, если assign avs_data убрать - все OK. Но вот вопрос - почему же он занимает шину, ведь при неактивных read_n и output_enable я делаю assign к 32'hZZZZZZZZ

Внутри ПЛИСа (то биш на авалоне) Z-состояний не бывает. Может в этом дело?


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
Adv
сообщение Jan 27 2011, 13:32
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 108
Регистрация: 6-08-05
Из: Винница
Пользователь №: 7 407



Цитата(DASM @ Jan 27 2011, 10:57) *
так в том и дело, что этот кто-то и есть мой модуль, если assign avs_data убрать - все OK. Но вот вопрос - почему же он занимает шину, ведь при неактивных read_n и output_enable я делаю assign к 32'hZZZZZZZZ



А он выборку имеет (select)? Или наглухо выбран?? Тут остальное уже всё рассказали. Посмотрите прикрепл. файл. Может, поможет. Он - очень простой. И как раз на улицу шину делает 32-х разрядную двунаправленную.
Прикрепленные файлы
Прикрепленный файл  pms_interface_32.v ( 4.85 килобайт ) Кол-во скачиваний: 179
 
Go to the top of the page
 
+Quote Post
DASM
сообщение Jan 27 2011, 15:26
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



Выборку имеет. Вобщем откатил проект с Q10_1 на Q9_0 - все заработало нормально
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 15th July 2025 - 17:31
Рейтинг@Mail.ru


Страница сгенерированна за 0.01451 секунд с 7
ELECTRONIX ©2004-2016