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

 
 
> Spartan2 и PCI, вопрос по VHDL
dandy_ekb
сообщение Apr 16 2007, 10:16
Сообщение #1





Группа: Новичок
Сообщений: 9
Регистрация: 16-04-07
Пользователь №: 27 075



Ситуация следующая:

Есть проект на языке VHDL, его функция - обмен по шине PCI. Используется для программирования XC95144XL, все работает без вопросов.

Сейчас разрабатываю новое устройство, только на базе XC2S100. Использую тот же проект VHDL в части обмена по шине PCI, но тут возникли проблемы, видно что что то считыватся из усройства, но не все, а запись в устройство похоже не проходит.

Есть чтоли какие-то особенности в программировании Spartan2, сам алгоритм обмена описан вроде правильно и ведь работат в XC95144XL.

help.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
BSV
сообщение Apr 16 2007, 11:20
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 541
Регистрация: 11-04-05
Из: Москва
Пользователь №: 4 045



А моделировать пробовали или считаете это пустой тратой времени?


--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
Go to the top of the page
 
+Quote Post
dandy_ekb
сообщение Apr 16 2007, 12:15
Сообщение #3





Группа: Новичок
Сообщений: 9
Регистрация: 16-04-07
Пользователь №: 27 075



Цитата(Elresearch @ Apr 16 2007, 13:59) *
я так понимаю у Вас реализован слейв по IO?

да так и есть
Цитата(BSV @ Apr 16 2007, 14:20) *
А моделировать пробовали или считаете это пустой тратой времени?

да конечно моделировал, только чтоб все было нормально разделил двунаправленную шину PCI на входную и выходную, чтоб видно было что записывается и что считывается.
Go to the top of the page
 
+Quote Post
BSV
сообщение Apr 16 2007, 12:36
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 541
Регистрация: 11-04-05
Из: Москва
Пользователь №: 4 045



Цитата(dandy_ekb @ Apr 16 2007, 13:15) *
только чтоб все было нормально разделил двунаправленную шину PCI на входную и выходную, чтоб видно было что записывается и что считывается.

Это как? blink.gif И временное моделирование делали? И задержки с предустановками в соответствии со спецификацией задавали?

Устройство в списке обнаруженных появляется? Чтение/запись конфигурационного пространства в железе и в модели работает? Какие еще команды PCI используются? Каков результат их выполнения в железе и в модели?

Надо, однако, сразу было заметить, что телепаты в бессрочном отпуске!


--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
Go to the top of the page
 
+Quote Post
dandy_ekb
сообщение Apr 16 2007, 14:06
Сообщение #5





Группа: Новичок
Сообщений: 9
Регистрация: 16-04-07
Пользователь №: 27 075



Цитата(BSV @ Apr 16 2007, 15:36) *
Это как? blink.gif И временное моделирование делали? И задержки с предустановками в соответствии со спецификацией задавали?

на входной шине данных выставлял нужные уровни сигналов, которые нужно записать в конфигурацию, а на выходной шине данных смотрел результат считанный из регистров конфигурации.
Цитата(BSV @ Apr 16 2007, 15:36) *
Устройство в списке обнаруженных появляется? Чтение/запись конфигурационного пространства в железе и в модели работает? Какие еще команды PCI используются? Каков результат их выполнения в железе и в модели?

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

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

при первом запуске:
Device ID 1000
Vendor ID A400

при последующих запусках:
Device ID 006E
Vendor ID 00C1

Device ID задан константой 10EE (xilinx)
Vendor ID задан константой A4C1

регистр Command считывается по нолям, хотя в младший бит должна записываться '1'.

в регистр адреса тоже похоже не проходит запись.

из остальных регистров конфигурации информация считывается правильно.

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

Сообщение отредактировал dandy_ekb - Apr 16 2007, 14:07
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- dandy_ekb   Spartan2 и PCI   Apr 16 2007, 10:16
- - Elresearch   для HDL имхо всё равно под Spartan иль под CPLD (к...   Apr 16 2007, 10:59
- - Elresearch   ну раз IO и Цитатаа запись в устройство похоже не ...   Apr 16 2007, 12:58
- - BSV   Я Вам настоятельно советую - напишите тестбенч нор...   Apr 16 2007, 14:30
|- - dandy_ekb   Цитата(BSV @ Apr 16 2007, 17:30) Я Вам на...   Apr 16 2007, 14:42
- - BSV   Так бывает, конечно, но очень редко. Скорее всего ...   Apr 16 2007, 15:09
- - Vitёk   Судя по симптомам, у вас не в порядке временнЫе па...   Apr 16 2007, 22:08
- - kiss   Добавлю к предыдущим высказываниям еще немного по ...   Apr 17 2007, 09:27
- - IEC   Здравствуйте! Есть программа WinDriver от JUN...   Apr 17 2007, 09:57
- - dandy_ekb   все разобрался с этим делом, оказалась всеголишь б...   Apr 19 2007, 12:13
- - Дмитрий Мазунин   Буферы формируются сами, если не нужно что-то спец...   Apr 19 2007, 14:09
|- - grudinin   Здравствуйте знатоки логических кристаллов! У ...   May 4 2007, 11:20
|- - a_zh   А не пробовали проделать синтез, трассировку занов...   May 4 2007, 12:15
|- - grudinin   Цитата(a_zh @ May 4 2007, 16:15) А не про...   May 7 2007, 06:28
- - BSV   Проверьте соответствие назначения контактов ПЛИС р...   May 7 2007, 06:55
- - grudinin   Проверял назначение контактов плис разводке платы(...   May 8 2007, 07:01


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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 01:07
Рейтинг@Mail.ru


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