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

 
 
 
Reply to this topicStart new topic
> Буферизация потока данных при чтении из PCI target
STT
сообщение Jul 12 2005, 16:03
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 24
Регистрация: 19-03-05
Пользователь №: 3 505



Здравствуйте. Имеется контроллер PCI от SET 32\33 Target. В документации к нему сказано, что скорость записи из целевого устройства (платы PCI) в память компьютера – 66 Мб\с. Реализации контроллера делается на XC2S100-PQ208. В ПЛИСку приходит поток данных со скоростью около 30 Мб/с. В микросхеме имеется 40 960 бит = 5120 байт. Вопрос, каким образом рассчитать буферизацию? Ну например получается два буфера по 2.5 кбайт. Будет ли машина успевать считывать данные из заполненного буфера? Или необходимо к ПЛИСе подключать дополнительную RAM (тогда какой размер?). Или можно обойтись простым FIFO буфером размером всей памяти XC2S? В компьютере на PCI шине дополнительно будет только сетевая карта.
Какая тут теория расчета ??? Заранее спасибо.
Go to the top of the page
 
+Quote Post
gab
сообщение Jul 12 2005, 21:18
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 376
Регистрация: 30-06-04
Из: Moskow
Пользователь №: 218



Цитата(STT @ Jul 12 2005, 19:03)
Здравствуйте. Имеется контроллер PCI от SET 32\33 Target. В документации к нему сказано, что скорость записи из целевого устройства (платы PCI) в память компьютера – 66 Мб\с. Реализации контроллера делается на XC2S100-PQ208. В ПЛИСку приходит поток данных со скоростью около 30 Мб/с. В микросхеме имеется 40 960 бит = 5120 байт. Вопрос, каким образом рассчитать буферизацию? Ну например  получается два буфера по 2.5 кбайт. Будет ли машина успевать считывать данные из заполненного буфера? Или необходимо к ПЛИСе подключать дополнительную RAM (тогда какой размер?). Или можно обойтись простым FIFO буфером размером всей памяти XC2S? В компьютере на PCI шине дополнительно будет только сетевая карта.
Какая тут теория расчета ??? Заранее спасибо.
*


Боюсь, что никакой. Хотя, если иметь модель PCI для нескольких устройств (соотносящуюся с логикой мат.платы компа smile.gif), можно преположить, что сетевушка не займёт более 50% ресурсов PCI, и уже от этого плясать. Я таким некоторое время страдал (из тестбенча для opencore's pci core сделал тест устройство+драйвер+несколько мастеров на pci шине). Оказалось, что проще (и быстрее!) "вживую" поглядеть sad.gif.

Цитата(STT @ Jul 12 2005, 19:03)
Имеется контроллер PCI от SET 32\33 Target.
*

Совсем забыл!
SET'у не особо верьте sad.gif.


--------------------
serpents on the way to paradise -
dying for love, fighting for ages.

Go to the top of the page
 
+Quote Post
FLTI
сообщение Jul 13 2005, 05:55
Сообщение #3


Местный
***

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



А какому ядру PCI можно “верить” ?
Go to the top of the page
 
+Quote Post
Novich
сообщение Mar 3 2007, 00:32
Сообщение #4





Группа: Новичок
Сообщений: 8
Регистрация: 2-03-07
Пользователь №: 25 832



Здравствуйте.
Случайно наткнулся на данную тему.
Вопрос к qab:
Что за ТЕСТ УСТРОЙСТВО+ДРАЙВЕР+НЕСКОЛЬКО МАСТЕРОВ на PCI-ШИНЕ?
Мне помощь нужна! help.gif
Разработка ТЕСТ УСТРОЙСТВА!
http://electronix.ru/forum/index.php?showtopic=28130
Заранее благодарю, что откликнулся.
Go to the top of the page
 
+Quote Post
Vitёk
сообщение Mar 5 2007, 23:55
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 272
Регистрация: 17-01-05
Из: Ростов-на-Дону
Пользователь №: 2 018



Цитата
В ПЛИСку приходит поток данных со скоростью около 30 Мб/с. В микросхеме имеется 40 960 бит = 5120 байт.
В такой ситуации Вас может спасти PCI-master. Возьмите ядро от Xilinx и добавьте к нему свой контроллер ПДП. Часть памяти ПЛИС отведите под хранние цепочки дескрипторов ПДП (каждый дескриптор описывает одну непрерывную пересылку). Тогда будет гарантия того, что данные будут пересланы вовремя.


--------------------
/* Всё хорошо в меру. */
Go to the top of the page
 
+Quote Post
klop
сообщение Mar 7 2007, 13:28
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 433
Регистрация: 28-02-06
Пользователь №: 14 788



Цитата(STT @ Jul 12 2005, 16:03) *
Здравствуйте. Имеется контроллер PCI от SET 32\33 Target. В документации к нему сказано, что скорость записи из целевого устройства (платы PCI) в память компьютера – 66 Мб\с. Реализации контроллера делается на XC2S100-PQ208. В ПЛИСку приходит поток данных со скоростью около 30 Мб/с. В микросхеме имеется 40 960 бит = 5120 байт. Вопрос, каким образом рассчитать буферизацию? Ну например получается два буфера по 2.5 кбайт. Будет ли машина успевать считывать данные из заполненного буфера? Или необходимо к ПЛИСе подключать дополнительную RAM (тогда какой размер?). Или можно обойтись простым FIFO буфером размером всей памяти XC2S? В компьютере на PCI шине дополнительно будет только сетевая карта.
Какая тут теория расчета ??? Заранее спасибо.

Я что то не догоняю речь идет о Master или о Target ???
Go to the top of the page
 
+Quote Post
Oldring
сообщение Mar 12 2007, 12:47
Сообщение #7


Гуру
******

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



Цитата(STT @ Jul 12 2005, 16:03) *
Здравствуйте. Имеется контроллер PCI от SET 32\33 Target. В документации к нему сказано, что скорость записи из целевого устройства (платы PCI) в память компьютера – 66 Мб\с. Реализации контроллера делается на XC2S100-PQ208. В ПЛИСку приходит поток данных со скоростью около 30 Мб/с. В микросхеме имеется 40 960 бит = 5120 байт. Вопрос, каким образом рассчитать буферизацию? Ну например получается два буфера по 2.5 кбайт. Будет ли машина успевать считывать данные из заполненного буфера? Или необходимо к ПЛИСе подключать дополнительную RAM (тогда какой размер?). Или можно обойтись простым FIFO буфером размером всей памяти XC2S? В компьютере на PCI шине дополнительно будет только сетевая карта.
Какая тут теория расчета ??? Заранее спасибо.


PCI target может быть и потянет - но обычные компы нет. Делайте PCI master.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
Tosha
сообщение Mar 14 2007, 07:13
Сообщение #8


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

Группа: Свой
Сообщений: 97
Регистрация: 10-09-04
Пользователь №: 633



Нужно конечно делать мастера. Но и мастер не прокачает такую скорость с такими буферами.
Нужно ставить внешнюю память. Сколько ставить зависит от того, насколько страшно потерять данные.

На самом деле в любом компе все устройсва грубо говоря сидят на одной шине. Это все порты USB, сеть, винчестеры и пр. Многие из них умеют писать в DMA режиме, поэтому заранее точно определить загруженность шины невозможно. Конечно если можно приостанавливать поток, то таких буферов хватит. Если нет нужно закладывать что-то внешнее. А с размером сложнее smile.gif
Go to the top of the page
 
+Quote Post
v_mirgorodsky
сообщение Mar 22 2007, 16:05
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 342
Регистрация: 21-02-05
Пользователь №: 2 804



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

Цитата
PCI target может быть и потянет - но обычные компы нет. Делайте PCI master.
Такую штука будет даже не фокусом. 66MB/s легко достижимы практически на любом чипсете. Необходимо просто предпринять очень специфические меры по обеспечению доступа бурстами в драйвере устройства.

Цитата
На самом деле в любом компе все устройсва грубо говоря сидят на одной шине. Это все порты USB, сеть, винчестеры и пр. Многие из них умеют писать в DMA режиме, поэтому заранее точно определить загруженность шины невозможно.
PCI шина в современном компьютере сегментирована на большое количество сегментов. Каждый из таких сегментов коммутируется на связную шину южного моста, имеющую среднюю пропускную способность в районе 266MB/s. Посему разные мастера совсем даже и не мешают работе друг друга. BTW, 266MB/s - это очень старая информация, сейчас вероятно уже больше. Проверить сие утверждение просто - ставим мощного PCI потребителя данных типа старой видеокарты или платы захвата видео и наслаждаемся совсем даже и незамедленной записью на винчестера во время работы грабера. Из своего опыта - вынимал из порта USB порядка 45MB/s и одновременно работал с винтом - еще метров 60 в секунду - и никаких особых вопросов не возникало.


--------------------
WBR,
V. Mirgorodsky
Go to the top of the page
 
+Quote Post
xyzzy
сообщение Mar 22 2007, 21:53
Сообщение #10


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

Группа: Свой
Сообщений: 95
Регистрация: 10-04-05
Пользователь №: 4 003



Цитата(v_mirgorodsky @ Mar 22 2007, 06:05) *
PCI шина в современном компьютере сегментирована на большое количество сегментов. Каждый из таких сегментов коммутируется на связную шину южного моста, имеющую среднюю пропускную способность в районе 266MB/s. Посему разные мастера совсем даже и не мешают работе друг друга. BTW, 266MB/s - это очень старая информация, сейчас вероятно уже больше. Проверить сие утверждение просто - ставим мощного PCI потребителя данных типа старой видеокарты или платы захвата видео и наслаждаемся совсем даже и незамедленной записью на винчестера во время работы грабера. Из своего опыта - вынимал из порта USB порядка 45MB/s и одновременно работал с винтом - еще метров 60 в секунду - и никаких особых вопросов не возникало.


Южный мост действительно имеет достаточно пропускной способности для *встроенных* устройств и они обычно не сильно мешают друг другу. Но вот устройствам сидящим в PCI разъемах все-же приходится бороться за одну единственную шину.

Вы попробуйте прицепить винчестер не ко встроенному в южный мост контроллеру, а к IDE контроллеру воткнутому в PCI слот. Там и посмотрим, как винт уживется с граббером. А еще можно и гигабитный ethernet в соседний слот воткнуть.. wacko.gif


--------------------
--xyzzy
Go to the top of the page
 
+Quote Post

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

 


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


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