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

 
 
> Помогите с PCI, Схема, размещение, дрова
plis
сообщение Oct 4 2006, 21:59
Сообщение #1


Участник
*

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



Необходимо создать PCI устройство, реализующее обычный UART порт, через шину PCI.

Требования:

использовать ПЛИС.
язык VHDL

Дрова под ДОС

Спецификацию читал.
Нужны советы опытных, а ещё лучше примеры, чем проще тем лучше.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Elresearch
сообщение Oct 6 2006, 09:30
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 29-12-04
Пользователь №: 1 730



простейший вариант PCI это Target. для ознакомления на VHDL можете использовать этот проект http://www.addone.co.kr/a/products/interfa...ci_esy_tar.html
про "обычный UART порт" можно посмотреть здесь http://www.opencores.org/projects.cgi/web/uart16550/overview
Ну а драйвер под дос это просто резидент. можно на Ц можно на Асме http://intel386.narod.ru/doc/asm/index.html
Go to the top of the page
 
+Quote Post
plis
сообщение Oct 8 2006, 18:58
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 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 с детсвта корейский не помню blink.gif
Знаю что нужен таргет, нужен любой пример таргет устройства, ато я запарился спЕСифИкасиЮ читать, на ломовском руском, а на буржуйском долго, но читаю.

Объясните на пальцах, как работать с таргет.
Что нужно что бы его БИОС увидал.
И что нужно задать что бы потом с ним из доса работать.

Насчёт дров тоже знаю что резидент, мне пример нужен как их писать.

А уарт уже давно реализован
Go to the top of the page
 
+Quote Post
Elresearch
сообщение Oct 9 2006, 10:53
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 29-12-04
Пользователь №: 1 730



Цитата(plis @ Oct 8 2006, 22:58) *
По поводу PCI проекта на VHDL с детсвта корейский не помню blink.gif


так там на VHDL, а не на корейском написано ;-)

Цитата
Объясните на пальцах, как работать с таргет.


если по IO, то через команды чтения/записи порта
если через память, то с командами чтения/записи памяти
:-D

Цитата
Что нужно что бы его БИОС увидал.


нужно чтоб Ваша плата "отрабатывала" команды Configuration Read (C/BE[3::0]# =1010) и Configuration Write (1011).

ЗЫ: FAQ http://fpga-faq.narod.ru/
Go to the top of the page
 
+Quote Post
plis
сообщение Oct 16 2006, 07:50
Сообщение #5


Участник
*

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



Цитата(Elresearch @ Oct 9 2006, 14:53) *
если по IO, то через команды чтения/записи порта
если через память, то с командами чтения/записи памяти
:-D


По поводу IO можно поподробней, как это работае, что и в какой последовательности идёт.
И вообще какая разница и что лучше.

Сообщение отредактировал plis - Oct 16 2006, 07:53
Go to the top of the page
 
+Quote Post
Elresearch
сообщение Oct 16 2006, 10:00
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 214
Регистрация: 29-12-04
Пользователь №: 1 730



Цитата
По поводу IO можно поподробней, как это работае, что и в какой последовательности идёт.
И вообще какая разница и что лучше.


Если Вы имеете ввиду драйвера, то Вам знакомы такие команды (асм)

"Команда:
IN приемник, источник

Назначение:
Считать данные из порта

Процессор:
8086

Копирует число из порта ввода-вывода, номер которого указан в источнике, в приемник. Приемником может быть только AL, АХ или ЕАХ. Источник — или непосредственный операнд, или DX, причем можно указывать только номера портов не больше 255.

Команда:
OUT приемник, источник

Назначение:
Записать данные в порт

Процессор:
8086

Копирует число из источника (AL, АХ или ЕАХ) в порт ввода-вывода, номер которого указан в приемнике. Приемник может быть либо непосредственным номером порта, либо регистром DX. На командах IN и OUT строится все общение процессора с устройствами ввода-вывода — клавиатурой, жесткими дисками, различными контроллерами, и используются они, в первую очередь, в драйверах устройств."

Или Вас интересует что происходит в "железке"?
Go to the top of the page
 
+Quote Post
plis
сообщение Oct 17 2006, 18:56
Сообщение #7


Участник
*

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



Что происходит в "железке"? И желательно на всём протяжение работы, т.е. запись/чтение конфигурации и данных, и если устройство работает как PCI то как в программе опрелелить его и какой у него порт или адрес? Устройство используется как I/O девайс.
Go to the top of the page
 
+Quote Post
hobgoblin
сообщение Oct 18 2006, 06:10
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 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
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 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


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

 


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


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