Jump to content

    
Sign in to follow this  
Sl.Hunter

PC104+

Recommended Posts

Здравствуйте! Где можно найти документацию по теме, в частности распиновку разёмов и сами разёмы, и что какой выход значит. И что-нибудь как можно более подробное по шине PCI, ещё хотелось бы найти примеры на языке VHDL устройсв PCI...

 

Можно ссылки на темы форума, я искал ничего, что нужно не нашёл! На Википедии в разделах посвещённых данным темам был.

Share this post


Link to post
Share on other sites

Спасибо там есть PC-104, а мне надо PC-104+, там как я понял разница в шине хотя разём один и тот же, возникает вопрос контакты то получаеться будут разные, раз разные шины или я не прав?

Share this post


Link to post
Share on other sites
Здравствуйте! Где можно найти документацию по теме, в частности распиновку разёмов и сами разёмы, и что какой выход значит. И что-нибудь как можно более подробное по шине PCI, ещё хотелось бы найти примеры на языке VHDL устройсв PCI...

 

Можно ссылки на темы форума, я искал ничего, что нужно не нашёл! На Википедии в разделах посвещённых данным темам был.

 

 

вот документация и здесь есть распайка шины РС104+

http://f.ipc2u.ru/files/add/doc/843/CME147...M610000061A.pdf

(разъем CN16)

Edited by 3ABXO3

Share this post


Link to post
Share on other sites
А почему бы не обратиться к оригиналу? http://www.pc104.org/pc104_plus_specs.php

 

 

Спасибо, это то что мне нужно было, есть ещё вопрос, а разъём на шине PC104+ который под шину ISA, он присутсвет только для совместимости с PC104? или его линии так же используютсья?

Share this post


Link to post
Share on other sites
Спасибо, это то что мне нужно было, есть ещё вопрос, а разъём на шине PC104+ который под шину ISA, он присутсвет только для совместимости с PC104? или его линии так же используютсья?

если это процессорная плата РС104+, то имеет полную совместимость с РС104 и поддерживает две системные шины ISA и PCI. РС104 (16 бит два разъема на плате) поддерживаеют только шину ISA хотя могут иметь в своей внутреней организации (на уровне процессора) шину РСI. Бывает еще 8-битная шина ISA формафаторе РC104.

Edited by 3ABXO3

Share this post


Link to post
Share on other sites
Спасибо, это то что мне нужно было, есть ещё вопрос, а разъём на шине PC104+ который под шину ISA, он присутсвет только для совместимости с PC104? или его линии так же используютсья?

Есть очень хороший рисуночек объясняющий что есть (используется) и как называется ;)

http://www.pc104.org/images/pci_6.jpg

Share this post


Link to post
Share on other sites

То что конектор есть я уже видел, но по нему идут какие-нибудь сигналы необходимые для функционирования данной платы или он необходим только для того что бы эту плату можно было вставлять в блоки с платами PC104.

 

 

Народ кто может расскзаать как происходит иниализация новго устройсва на шине PCI, как и почему биос распределяет ресурсы, как заполняеться 256 байт пространсва конфигурации оно должно быть энерго независимым? Т.е. БИОС из него получает какаю-либо информаци по которой происходит конфигурация устройтсва? или БИОС сам прописывает все данные? Как реализовывать эту область на базе ППЗУ? или на базе регистров, но устанавливаемых изначально при подаче питания?? Где можно почитать? ОЧень желательно на русском, но можено и на английском? Что где там записано я вроде понимаю... Опять же еа что влияет Идификатор устройства и Индификатор производителя? Т.е. первые 4 байта? Их кто-нибудь считывает?

 

А и ещё вот там есть "Основные адрессные регистры" куда биос заносит выделяемое адрессное пространство, а откуда он узнает, что необходмо туда внести? Ну точнее вот мне для устройсва нужно получить только пространстово ввода/вывода, а вот пространство памяти мне не нужно, как мне это сообщить БИОСу?

Share this post


Link to post
Share on other sites
сигналы необходимые для функционирования данной платы

кому как не Вам (разработчику) знать используются у вас сигналы с разъёма или нет ;)

а наличие (отсутствие) разъёма завистит от Вашей платы + по какой спецификации Вы её позиционируете :) от этого будет зависеть как в конечном изделии Ваша плата будет смонтирована (http://www.pc104.org/images/pci_down_5.jpg)

 

Народ кто может расскзаать как происходит иниализация новго устройсва на шине PCI, как и почему биос распределяет ресурсы, как заполняеться 256 байт пространсва конфигурации оно должно быть энерго независимым? Т.е. БИОС из него получает какаю-либо информаци по которой происходит конфигурация устройтсва? или БИОС сам прописывает все данные? Как реализовывать эту область на базе ППЗУ? или на базе регистров, но устанавливаемых изначально при подаче питания?? Где можно почитать? ОЧень желательно на русском, но можено и на английском? Что где там записано я вроде понимаю... Опять же еа что влияет Идификатор устройства и Индификатор производителя? Т.е. первые 4 байта? Их кто-нибудь считывает?

 

А и ещё вот там есть "Основные адрессные регистры" куда биос заносит выделяемое адрессное пространство, а откуда он узнает, что необходмо туда внести? Ну точнее вот мне для устройсва нужно получить только пространстово ввода/вывода, а вот пространство памяти мне не нужно, как мне это сообщить БИОСу?

 

На эти вопросы очень правильные ответы даёт http://fpga-faq.narod.ru/PCI_Rev_20_rus.zip и http://fpga-faq.narod.ru/PCI_Rev_30.pdf ;)

Share this post


Link to post
Share on other sites
То что конектор есть я уже видел, но по нему идут какие-нибудь сигналы необходимые для функционирования данной платы или он необходим только для того что бы эту плату можно было вставлять в блоки с платами PC104.

это вроде не просто коннектор, это больше похоже на системную шину... (если рассматривать процессорную плату) :)

если это не процессорная плата (блок питания), то системная шина может быть почти не подключена (питание) к нему...

 

как и почему биос распределяет ресурсы

ну вроде технологию такую придумали Plug and Play называется, облегчает жизнь пользователям

 

как заполняеться 256 байт пространства конфигурации оно должно быть энерго независимым?

можно посмотреть главу 6 Рис. 6-1 часть

ID устройства, ID поставщика, Код Класса надо будет хранить остальная область представляет собой обычное ОЗУ

 

Как реализовывать эту область на базе ППЗУ? или на базе регистров, но устанавливаемых изначально при подаче питания??

есть ПЛИС, есть готовые PLX микрушки

 

Опять же еа что влияет Идификатор устройства и Индификатор производителя? Т.е. первые 4 байта? Их кто-нибудь считывает?

считывают если надо определить присутствие вашего устройства на шине

 

А и ещё вот там есть "Основные адрессные регистры" куда биос заносит выделяемое адрессное пространство, а откуда он узнает, что необходмо туда внести? Ну точнее вот мне для устройсва нужно получить только пространстово ввода/вывода, а вот пространство памяти мне не нужно, как мне это сообщить БИОСу?

ну вроде у каждого BAR есть несколько последних бит они и задают режим работы вашего девайса в режиме ввода/вывода либо выделяют вам пространство памяти

 

дополните меня если что не так :)

Edited by 3ABXO3

Share this post


Link to post
Share on other sites

Ничего новго не нашёл + в Русской версии большие проблемы с кодировкой, не знаю с чем свзяано либо как то не так скачался файл, либо ещё что-то... Я так и не нашёл отвтет на вопрос как мне попросить у Биоса дать мне пространсов ввода вывода? Допустим мне надо получить 4 адреса по байту в области ввода вывода, получаеться я должен записать оп адресу 10h: что то типа: 10000000_00000000_00000000_00000001 получаеться так?? или вот так: 11111111_11111111_11111111_11111001 или ещё как-нибудь?

 

Что ещё я должен заполнить в области конфигурации? Кроме индификатора устройства, индификатора производителя, типа заголовка, и кода класса. Регистр состояни и регистр команд я так понял при запуске выставвляеться в 0? или я не правильно понял

 

Я просто уже много чего прочитал как организован обмен я более менее разобрался и то тут появились новые инетресные моменты. А вот с инициализацие и 3 видами адресации пока не очень.

 

Может у кого есть примеры реализации какого-нить простенького устройсва PCI на языке VHDL?

 

P.S. 3ABXO3, в принципе всё так всё понятно на половину вопросов вы ответили, я просто по глупости отправил сообщение раньше, чем вы написали, остался вопрос в том, что записать в BAR. Блок питание у меня будет на плате, причём по заданию он должен питать всю ситсему... Ну это уже отдельный разговор к нему я пока не приступал.

Share this post


Link to post
Share on other sites
Я так и не нашёл отвтет на вопрос как мне попросить у Биоса дать мне пространсов ввода вывода?

вроде ничего просить не надо он сам все даст

в те самые BARы которые вы предварительно сконфигурируете...

 

получаеться я должен записать оп адресу 10h

хорошо бы записать 0хFFFF FFFF FFFF FFFD

 

Может у кого есть примеры реализации какого-нить простенького устройсва PCI на языке VHDL?

может у кого то есть

тытс

(тут в новостях сказали, что каждый 5 в России жадный)

тытс

Share this post


Link to post
Share on other sites

Мда... Это всё таки жесть начинать изучать VHDL с шины PCI... Ладно буду думать)) Всем спасибо пока вопросов нет ))

 

Народ кто может расшифровать, что хотели сказать в данном куске спецификации:

 

"Информация, содержащаяся в двух младших битах адреса (AD[1::0]), определяется адресным пространством. Чтобы обеспечить полный адрес байта, в адресном пространстве ввода - вывода используются все 32 линии. Это позволяет агенту, требующему разрешение адресации на уровне байта, завершить дешифрирование адреса и начать свой цикл4 без дополнительного цикла ожидания разрешения адресации байта (таким образом осуществляется задержка всех циклов вычитающего дешифрирования дополнительным тактом). AD[1::0] используются только для генерирования сигнала DEVSEL#, указывающего при передаче последний допустимый байт. Например, если BE0# были активны, то AD[1::0] будет 00; если были активны только BE3#, то AD[1::0] будет 11. Как только целевое устройство установило запрос на ввод - вывод (используя AD[1::0]), оно может определить, можно ли завершить запрос, как это указано разрешением байта. Если все выбранные байты оказались вне выбранного целевым устройством адресного интервала, то данный запрос не может быть завершен. В этом случае целевое устройство не может передать никакие данные, но прекращает свою работу с аварийным завершением. "

 

Это из пунтка 3.2.2 адресация

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this