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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> PCI, Разработка исоздание платы.
PaulB
сообщение Aug 20 2006, 07:29
Сообщение #1


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



Здравствуйте.
Нужно разработать плату к PCI слоту, чтоб эта плата обменивалась данными с другими платами, датчиками и прочим. Головная программа находящаяся в самом компе должна всем этим рулить.
Пожалуйсто подскажите как это воплатить в жизнь? help.gif


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
makc
сообщение Aug 20 2006, 07:57
Сообщение #2


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



Эта тема уже обсуждалась. Воспользуйтесь поиском по форуму.


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
PaulB
сообщение Aug 20 2006, 08:09
Сообщение #3


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



Как эта тема называется? А то я искал но не чего стоищего так и не нашёл.


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
HardJoker
сообщение Aug 20 2006, 08:18
Сообщение #4


Знающий
****

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



Цитата(PaulB @ Aug 20 2006, 12:09) *
Как эта тема называется? А то я искал но не чего стоищего так и не нашёл.


А какая требуется периферия. У меня есть одно изделие: два Etherneta'а (SMSC9115) + USB Device + RS-232 + 256MB SDRAM + 512MB Flash. С другой стороны ПЛИС (LatticeXP) PCI
Go to the top of the page
 
+Quote Post
PaulB
сообщение Aug 20 2006, 08:50
Сообщение #5


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



В принципе любая. Особых ограничений нет лишбы могла общаться.


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
makc
сообщение Aug 20 2006, 08:57
Сообщение #6


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



Цитата(makc @ Aug 20 2006, 11:57) *
Эта тема уже обсуждалась. Воспользуйтесь поиском по форуму.


Например:
http://electronix.ru/forum/index.php?showt...9837&hl=PCI
http://electronix.ru/forum/index.php?showtopic=17142&hl=
И еще тема, очень созвучная Вашей - http://electronix.ru/forum/index.php?showtopic=15105&hl=


Цитата(PaulB @ Aug 20 2006, 12:50) *
В принципе любая. Особых ограничений нет лишбы могла общаться.


"Общение" подразумевает реализацию специфичных интерфейсов. Вы же не указали ни одного... А ведь тип интерфейсов определяет требования к интерфейсу на шине PCI (Master или Target, величины латентности и т.п.).


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
PaulB
сообщение Aug 20 2006, 12:59
Сообщение #7


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



>makc
Я конечно в этой теме ещё мало чего знаю, но насколько мне стало известно то, что оба этих устройства (Master & Target) должны присутствовать в PCI устройстве, так как через них осуществляется транзакция. Хотя может я неправ.

В общем, я понял так: чтобы сделать устройство (плату) к PCI шине надо на плату поместить контроллер, у которого одни порты должны идти к PCI шине, а другие к второстепенным деталям. Но чтобы всё это работало ещё надо сначала запрограммировать микроконтроллер, а потом написать драйвер для всего этого.
Так?
Поправьте меня если я чего не так понял.


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
DS
сообщение Aug 20 2006, 14:01
Сообщение #8


Гуру
******

Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250



Нет, Вы не правы. Master и Target - это типы интефейсов PCI. Основное отличие - Master может инициировать транзакции на PCI шине, target - нет, он может выполнять только то, что от него требует Master.

На плате должен быть контроллер PCI, это конечный автомат, а не микроконтроллер. Поэтому, если контроллер покупной, PLX например, для не программируется только конфигурация в небольшой ПЗУ.
Если самодельный, как правило, ничего не надо программировать.

Драйвер, естественно, нужен, для полноценной работы, скажем под Windows, но в принципе можно и нахально писать в регистры / память устройства прямо из программы, тут PCI устройство ничем не отличается от любой другой периферии.


--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
Go to the top of the page
 
+Quote Post
PaulB
сообщение Aug 20 2006, 14:49
Сообщение #9


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



>DS
Cпасибо.

Я вот ещё на один pdf файл наткнулся http://www.platan.ru/shem/pdf/pci.pdf

Что думаете? Что лучше, проще и дешовей?


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
DS
сообщение Aug 20 2006, 15:04
Сообщение #10


Гуру
******

Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250



Если Вам надо изготовить в пределах тысяч плат - лучше покупать готовую микросхему типа PLX9052 за 25 - 30$ или что-то похожее. Вы будете гарантированы, что если сразу не заработало, то просто плохо припаяна микросхема к плате. Иначе обязательно будут проблемы - в упрощенных версиях PCI всегда что-то "незаконно" пропущено, что может привести, например, к тому, что некоторые материнские платы не будут подключать сигнал CLK к Вашей плате или еще хуже - вообще на одной плате работает, а другая не запускается даже.

Если будете работать с PLX (ими, кстати, даже CISCO в серийных устройствах не брезгует, они пользуют PLX9050 +Xilinxовский CPLD на своих 802.11 карточках), то не придется изучать аппаратную спецификацию PCI, а конфигурируется она уже в собранном виде при работе, ПЗУ записывается/считывается через специальный регистр. И примеров драйверов довольно много.


--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
Go to the top of the page
 
+Quote Post
PaulB
сообщение Aug 20 2006, 17:02
Сообщение #11


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



Схемку не дадите? А при написания драйвера к каким портам обращаться и как?


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
DS
сообщение Aug 20 2006, 17:37
Сообщение #12


Гуру
******

Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250



Вот Вам документация по 9052, изучайте.

Со стороны PCI все однозначно, со стороны Вашей схемы - сами конфигурируете что и как должно быть.
Адреса назначаются в зависимости от материнской плате и положения разъема. Они считываются через BIOS или средствами ОС.
Прикрепленные файлы
Прикрепленный файл  plx9052.pdf ( 2.43 мегабайт ) Кол-во скачиваний: 357
 


--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
Go to the top of the page
 
+Quote Post
ishergin
сообщение Aug 20 2006, 20:00
Сообщение #13


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

Группа: Свой
Сообщений: 130
Регистрация: 16-06-05
Из: Оренбург
Пользователь №: 6 039



Доброго врмени суток!

Схема есть в формате Accel EDA, PCAD 2001 для ПЛИС Xilinx, если надо, то могу выслать.

Для начала надо определиться с ПЛИС или контроллером, исходя из Ваших задач и требований. Такой вот ответ на такой вопрос cheers.gif

Вообще я бы Вам посоветовал тот путь, который проделал я
1. Прочитать этот форум (подходящие тематические разделы) -- самая полезная вещь smile.gif
2. Прочитать спецификацию PCI
3. Прочитать книгу(и) по Verilog или VHDL
3.1. Научится разрабатывать драйвера для оборудования
4. Точно сформулировать цели и задачи
5. .... и т.д.

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

Удачи!

Сообщение отредактировал ishergin - Aug 20 2006, 20:05


--------------------
Программа выполнила невыполнимое и допустила недопустимое
Go to the top of the page
 
+Quote Post
PaulB
сообщение Aug 21 2006, 07:44
Сообщение #14


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



>DS
За документацию спасибо.

Недавно нашёл статью, называется «Адаптер интерфейса PCI для периферийных устройств.» журнал «Радио». Там используется микросхема 9040, но также упоминается и 9052. Так же приведена схема адаптера. В принципе схема не сложная, но вот то, что касается микросхемы 9052 конечно дороговато. Жалко, что эту статью не как не могу найти, хотя где то на этом форуме я её видал.

А на PCI нельзя сделать, так как на LTP? Например: чтобы включить светодиод на ЛПТ надо один вывод светодиода подключить к источнику электроэнергии, а другой конец к одному из выводов ЛПТ порта. Потом просто посылается в порт сигнал и светодиод загорается. Можно ли такое сделать на PCI без применения моста, и получится ли обратная связь, если с внешнего устройства послать сигнал на PCI шину?


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
makc
сообщение Aug 21 2006, 09:00
Сообщение #15


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



PCI - это шина для нескольких устройств, а не примитивный интерфейс типа LPT. Так что ответ - НЕТ.
Самое простое - взять CPLD и реализовать на нем простейший интерфейс, как сделано в примерах на www.fpga4fun.com. Но работать это будет далеко не везде.


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post
sazh
сообщение Aug 21 2006, 09:27
Сообщение #16


Гуру
******

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



Нужно разработать плату к PCI слоту, чтоб эта плата обменивалась данными с другими платами, датчиками и прочим. Головная программа находящаяся в самом компе должна всем этим рулить.
Можно взять (как черный ящик) IP CORE PCI. Минимальные знания протокола + описание этого IPCORE( Если еще чего либо надо реализовать на FPGA). Несомненный плюс, клок PCI шины достается только FPGA.
Go to the top of the page
 
+Quote Post
PaulB
сообщение Aug 21 2006, 13:29
Сообщение #17


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



А программировать 9052 надо или нет? В каком режиме работает эта микросхема master или target и можно поподробнее об этих режимах и как они различаются?


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
DS
сообщение Aug 21 2006, 13:40
Сообщение #18


Гуру
******

Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250



Цитата(PaulB @ Aug 21 2006, 17:29) *
А программировать 9052 надо или нет? В каком режиме работает эта микросхема master или target и можно поподробнее об этих режимах и как они различаются?


Надо программировать после сборки устройства отображение адресов шины PCI на локальную шину. Это делается на собранной PCI плате путем записи побитно в ПЗУ, которое подцеплено к 9052. ПЗУ можно, конечно, и заранее в программаторе зашить.
Это микросхема может работать только в режиме Target, для master нужна существенно более дорогая 9080. Это фактически означает, что по инициативе Вашего устройства нельзя будет переписать данные с устройства в память компьютера без участия процессора этого компьютера. т.е. target работает примерно так - устройство готово - прерывание на PCI, процессор вычитывает данные. Для master - данные готовы - переписываются в ОЗУ компьютера - потом прерывание, и процессор может с ними работать уже не обращаясь к Вашему устройству.


--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
Go to the top of the page
 
+Quote Post
PaulB
сообщение Aug 21 2006, 14:05
Сообщение #19


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



Мне кажется, что для моего устройства хватит микросхемы с режимом target. Вот только всё же какую выбрать 2040, 9052 или какую другую посоветуете? На 2040 у меня есть схема, а на 9052 нет ни чего кроме документации (и то которая на английском), но первую на сколько мне известно уже сняли с производства и её наверное труднее найти, вторую не знаю.
А вообще как, эти микросхемы в свободной продаже или надо заказывать у производителя?


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
DS
сообщение Aug 21 2006, 14:14
Сообщение #20


Гуру
******

Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250



9052 одно время продавалась в Техно - www.techno.ru. Схему я Вам могу дать - но и самому догадаться легко.
Прикрепленные файлы
Прикрепленный файл  PCI.pdf ( 96.63 килобайт ) Кол-во скачиваний: 225
 


--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
Go to the top of the page
 
+Quote Post
PaulB
сообщение Aug 21 2006, 16:09
Сообщение #21


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



P1, P2 это в PCI слот, если я правильно понял. D0 - D28 – это линии ввода – вывода,
а линии LBE0 – LBE3, RD, WR, CS0, CS1, LCLK, INT1, INT2, RST- это к программатору, хотя почему - то их больно много.
Всё так?


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
DS
сообщение Aug 21 2006, 16:15
Сообщение #22


Гуру
******

Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250



Цитата(PaulB @ Aug 21 2006, 20:09) *
P1, P2 это в PCI слот, если я правильно понял. D0 - D28 – это линии ввода – вывода,
а линии LBE0 – LBE3, RD, WR, CS0, CS1, LCLK, INT1, INT2, RST- это к программатору, хотя почему - то их больно много.
Всё так?

Нет, это линии управления - lbe0 - lbe3 - активна, когда на шине идет передача соответствубщего байта (d0-d7, d8-15, d16 -d23, d24-d31). CS - выборка устройств пользователя. Внутри микросхемы есть селектор адреса, и когда адрес на шине PCI поадает в нужный диапазон, выставляется соответствующий CS. RD и WR - соответственно чтение и запись устройств пользователя. INT - запросы прерывания от устройства пользователя, RST - сброс. Программатор вообще не нужен.

Вы хоть картинки и временные диаграммы в документации внимательно изучите

PS А темку я перенесу в Интерфейсы, а то к ПЛИС она уже никак не относится.


--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
Go to the top of the page
 
+Quote Post
Илья Игоревич
сообщение Aug 31 2006, 17:27
Сообщение #23


Участник
*

Группа: Новичок
Сообщений: 34
Регистрация: 8-08-06
Из: Жуковский
Пользователь №: 19 404



А вот я бы посоветовал автору темы сначала внимательно прочитать спецификацию PCI, а потом _хорошо_ подумать, нужно ли оно ему вообще.
Так, например, в разделе Electrical Specifications (rev. 3.0, p. 138) рассказывают, что шина работает на "отраженной волне" - т.е. например, драйвер шины поднимает напряжение не до трех вольт, а до полутора, но с высоким уровнем нарастания. Полученная волна отражается от "конца" шины (он без терминаторов) и складывается с начальным напряжением, в итоге получаются желаемые три вольта. Что это дает в практическом плане, кроме скорости? Необходимость очень аккуратно разводить плату, работающую с PCI. И точно, дальше в том же документе указывают конечные размеры и конфигурацию разведенных на плате сигналов, например, дорожка CLK должна быть длиной в 2.5+-1 дюймов.
Нет, не поймите меня неправильно, я не хочу никого пугатьsmile.gif Я лишь хотел предупредить, что сделать полностью совместимое со стандартом PCI устройство гораздо сложнее, чем с ISA или, тем более, LPT. Столь же сложнее, сколь и интереснее.
Go to the top of the page
 
+Quote Post
PaulB
сообщение Sep 30 2006, 05:10
Сообщение #24


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



>А вот я бы посоветовал автору темы сначала внимательно прочитать спецификацию PCI, а потом _хорошо_ подумать, нужно ли оно ему вообще.
У меня с англ-яз плоховато будет. Нужно. Почитав все сообщения я это кокраз и понял. Для моей "штуковены" это как мне кажется самое простое решение. Вот теперь стоит вопрос где её достать?


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
Oldring
сообщение Sep 30 2006, 07:42
Сообщение #25


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(Илья Игоревич @ Aug 31 2006, 21:27) *
А вот я бы посоветовал автору темы сначала внимательно прочитать спецификацию PCI, а потом _хорошо_ подумать, нужно ли оно ему вообще.


Ага. Нужно в FAQ внести. Ни в коем случае не беритесь за PCI плату если для решения задачи достаточно USB устройства biggrin.gif


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
PaulB
сообщение Sep 30 2006, 13:12
Сообщение #26


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

Группа: Участник
Сообщений: 147
Регистрация: 20-08-06
Пользователь №: 19 681



USB конечно интересно, но PCI ещё интереснее т. к. у него больше вожможностей, темболее для моего устройства это только в данный момент достаточно простого обмена данными, а потом могут потребоваться более сложные функции.
>Ага. Нужно в FAQ внести.
НУЖНО! smile.gif


--------------------
Мой канал: CybernetSystems
Go to the top of the page
 
+Quote Post
Георгий
сообщение Oct 18 2006, 08:45
Сообщение #27


Местный
***

Группа: Свой
Сообщений: 269
Регистрация: 17-11-05
Из: Киров-Москва
Пользователь №: 10 957



А продает кто нибудь типа оценочных плат на PLX9052?


--------------------
Обычно последним смеется тот, кто хуже соображает!
Go to the top of the page
 
+Quote Post
iosifk
сообщение Oct 18 2006, 09:15
Сообщение #28


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(Георгий @ Oct 18 2006, 12:45) *
А продает кто нибудь типа оценочных плат на PLX9052?

Прежде чем хвататься за разработку PCI неплохо сначала ознакомиться с микроконтроллерами, которые уже имеют в своем составе порт PCI. Это по цене соизмеримо с покупкой "голого" контроллера
PCI, а по производительности - намного лучше. Да и плату экономит сильно.
Всех я конечно не знаю, но вот только некоторые:
BlackFin у ADI,
KSZ8695P и PX

Что-то есть у IDT и у Broadcom....


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Георгий
сообщение Oct 18 2006, 09:32
Сообщение #29


Местный
***

Группа: Свой
Сообщений: 269
Регистрация: 17-11-05
Из: Киров-Москва
Пользователь №: 10 957



Ну и что из того, чтоя приобрету контроллер с PCI на борту, полноценную плату я все рано изготовить не смогу. А так я поимею готовую плату с хорошо знакомым ISA интерфейсом.


--------------------
Обычно последним смеется тот, кто хуже соображает!
Go to the top of the page
 
+Quote Post

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

 


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


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