|
Помогите с PCI, Схема, размещение, дрова |
|
|
|
Oct 4 2006, 21:59
|
Участник

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

|
Необходимо создать PCI устройство, реализующее обычный UART порт, через шину PCI.
Требования:
использовать ПЛИС. язык VHDL
Дрова под ДОС
Спецификацию читал. Нужны советы опытных, а ещё лучше примеры, чем проще тем лучше.
|
|
|
|
|
 |
Ответов
|
Oct 8 2006, 18:58
|
Участник

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

|
Цитата(Elresearch @ Oct 6 2006, 13:30)  простейший вариант PCI это Target. для ознакомления на VHDL можете использовать этот проект http://www.addone.co.kr/a/products/interfa...ci_esy_tar.htmlПо поводу PCI проекта на VHDL с детсвта корейский не помню Знаю что нужен таргет, нужен любой пример таргет устройства, ато я запарился спЕСифИкасиЮ читать, на ломовском руском, а на буржуйском долго, но читаю. Объясните на пальцах, как работать с таргет. Что нужно что бы его БИОС увидал. И что нужно задать что бы потом с ним из доса работать. Насчёт дров тоже знаю что резидент, мне пример нужен как их писать. А уарт уже давно реализован
|
|
|
|
|
Oct 9 2006, 10:53
|
Местный
  
Группа: Свой
Сообщений: 214
Регистрация: 29-12-04
Пользователь №: 1 730

|
Цитата(plis @ Oct 8 2006, 22:58)  По поводу PCI проекта на VHDL с детсвта корейский не помню  так там на VHDL, а не на корейском написано ;-) Цитата Объясните на пальцах, как работать с таргет. если по IO, то через команды чтения/записи порта если через память, то с командами чтения/записи памяти :-D Цитата Что нужно что бы его БИОС увидал. нужно чтоб Ваша плата "отрабатывала" команды Configuration Read (C/BE[3::0]# =1010) и Configuration Write (1011). ЗЫ: FAQ http://fpga-faq.narod.ru/
|
|
|
|
|
Oct 16 2006, 07:50
|
Участник

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

|
Цитата(Elresearch @ Oct 9 2006, 14:53)  если по IO, то через команды чтения/записи порта если через память, то с командами чтения/записи памяти :-D По поводу IO можно поподробней, как это работае, что и в какой последовательности идёт. И вообще какая разница и что лучше.
Сообщение отредактировал plis - Oct 16 2006, 07:53
|
|
|
|
|
Oct 16 2006, 10:00
|
Местный
  
Группа: Свой
Сообщений: 214
Регистрация: 29-12-04
Пользователь №: 1 730

|
Цитата По поводу IO можно поподробней, как это работае, что и в какой последовательности идёт. И вообще какая разница и что лучше. Если Вы имеете ввиду драйвера, то Вам знакомы такие команды (асм) "Команда: IN приемник, источник Назначение: Считать данные из порта Процессор: 8086 Копирует число из порта ввода-вывода, номер которого указан в источнике, в приемник. Приемником может быть только AL, АХ или ЕАХ. Источник — или непосредственный операнд, или DX, причем можно указывать только номера портов не больше 255. Команда: OUT приемник, источник Назначение: Записать данные в порт Процессор: 8086 Копирует число из источника (AL, АХ или ЕАХ) в порт ввода-вывода, номер которого указан в приемнике. Приемник может быть либо непосредственным номером порта, либо регистром DX. На командах IN и OUT строится все общение процессора с устройствами ввода-вывода — клавиатурой, жесткими дисками, различными контроллерами, и используются они, в первую очередь, в драйверах устройств." Или Вас интересует что происходит в "железке"?
|
|
|
|
|
Oct 17 2006, 18:56
|
Участник

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

|
Что происходит в "железке"? И желательно на всём протяжение работы, т.е. запись/чтение конфигурации и данных, и если устройство работает как PCI то как в программе опрелелить его и какой у него порт или адрес? Устройство используется как I/O девайс.
|
|
|
|
|
Oct 18 2006, 06:10
|

Местный
  
Группа: Свой
Сообщений: 202
Регистрация: 2-10-06
Из: Петербург
Пользователь №: 20 881

|
Цитата(plis @ Oct 17 2006, 22:56)  Что происходит в "железке"? "В стандарт заложены возможности автоматического конфигурирования системных ресурсов (пространств памяти и ввода-вывода и линий запроса прерываний). Автоматическое конфигурирование устройств (выбор адресов и прерываний) поддерживается средствами BIOS и ориентировано на технологию PnP. ...После аппаратного сброса (или при включении питания) устройства PCI не отвечают на обращения к пространству памяти и ввода-вывода, они доступны только для операций конфигурационного считывания и записи. В этих операциях устройства выбираются по индивидуальным сигналам IDSEL и сообщают о потребностях в ресурсах и возможных вариантах конфигурирования. После распределения ресурсов, выполняемого программой конфигурирования (во время теста POST), в конфигурационные регистры устройства записываются параметры конфигурирования. Только после этого к устройствам становится возможным доступ по командам обращения к памяти и портам ввода-вывода". Если вы будете делать свой девайс на ПЛИС, то можете посмотреть пример ping, поставляемый с ядром Xilinx PCI. Он достаточно простой и наглядный, есть там и IO, и память. Если промоделировать в ModelSIM, то увидите что, как и куда пишется и откуда читается при конфигурировании и после. Цитата(plis @ Oct 17 2006, 22:56)  если устройство работает как PCI то как в программе опрелелить его и какой у него порт или адрес? Устройство ищется по Vendor ID, коду класса или чтением конфигурационной информации всех установленных устройств через функции PCI BIOS. Вызываются через прерывание lAh. Более подробно см. в книге В. Кулаков "Программирование на аппаратном уровне" Спб:Питер 2003
|
|
|
|
Сообщений в этой теме
plis Помогите с PCI Oct 4 2006, 21:59 plis А подскажите пожалуйста по поводу конфигурирования... Oct 31 2006, 19:26 iosifk Цитата(plis @ Oct 31 2006, 23:26) А подск... Nov 1 2006, 06:08  plis Цитата(Elresearch @ Nov 1 2006, 13:37) [я... Nov 1 2006, 16:39   Elresearch ЦитатаИ там явно не сказано, что жёстко что можно ... Nov 2 2006, 12:22    plis Спасибо.
Цитата(Elresearch @ Nov 2 2006, 16... Nov 2 2006, 15:59 Elresearch Цитата(plis @ Oct 31 2006, 23:26) А подск... Nov 1 2006, 09:37 Elresearch Вы не можете задать системе диапазон который Вам н... Nov 3 2006, 09:00 plis Цитата(Elresearch @ Nov 3 2006, 12:00) Im... Nov 8 2006, 14:59 Elresearch смотрите спецификацию пункт Bus Transactions, а дл... Nov 9 2006, 09:15 plis Цитата(Elresearch @ Nov 9 2006, 12:15) см... Nov 15 2006, 15:27  makc Цитата(plis @ Nov 15 2006, 18:27) Цитата(... Nov 15 2006, 15:39   -Al- Цитата(makc @ Nov 15 2006, 15:39) Цитата(... Nov 28 2006, 10:20 URANst Обьясните, пожалуйста !!!
Я сделал P... Nov 27 2006, 21:06 vmp Цитата(URANst @ Nov 27 2006, 21:06) Я сде... Nov 28 2006, 11:11 URANst Я видел что ниже об этом что-то говорилось, но есл... Nov 27 2006, 21:21 o-henry Цитата(URANst @ Nov 27 2006, 20:21) Так в... Nov 28 2006, 09:55  Oldring Цитата(o-henry @ Nov 28 2006, 09:55)... Nov 28 2006, 11:54 URANst Всем СПАСИБО за ответы ! Но все очень печально... Nov 29 2006, 23:38
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|