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

 
 
> Система сбора данных, 60 дифференциальных каналов, дискретизация 500-2500гц
Клим
сообщение Aug 25 2010, 07:42
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 230
Регистрация: 7-04-08
Из: Украина, Запорожье
Пользователь №: 36 541



Требуется система сбора данных в комп. Необходимо с частотой дискретизации до 2500гц получать аналоговые данные с ~60 дифференциальных каналов. Точности 12 бит вполне достаточно.
Есть куча решений в виде плат PCI/PCIex, но смущает размер буфера в 1-4к. Будут ли такие карточки обеспечивать непрерывный сбор данных под windows?
Пока нашел приличные платы от NI и Advantech, но хотелось бы подешевле.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
DS
сообщение Aug 25 2010, 10:43
Сообщение #2


Гуру
******

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



Так память на плате для DMA обычно вообще прозрачна - это FIFO на случай приостановки DMA. DMA шпарит со скоростью поступающих данных, длина ограничивается только физической длиной счетчика контроллера. Зачем же копить 4К, а потом спешно их выпихивать в шину ? Для реализации кольцевого DMA вообще кроме счетчика ничего не нужно, для двухбуферной схемы нужны доп. регистры. В серийных контроллерах, конечно, используются очереди DMA, поскольку это позволяет минимизировать пересылку данных. Но для низкосокоростной платы сбора данных можно и кольцо сделать для упрощения драйвера.

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


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


Гуру
******

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



Цитата(DS @ Aug 25 2010, 14:43) *
Для реализации кольцевого DMA вообще кроме счетчика ничего не нужно, для двухбуферной схемы нужны доп. регистры.


Допустим, кроме счетчика еще нужны пороги для генерации прерываний и контроль переполнений, чтобы знать, что данные запороты, в случае чего. И регистр адреса начала буфера - тоже. Нет большой разницы, один или два.


Цитата(DS @ Aug 25 2010, 14:43) *
В общем, дальше уже холивар, поскольку конечный результат можно получить и так и так, например отдавая пользователю указатель на кусок данных в кольцевом буфере.


Вы знаете простой способ отдать пользователю указатель на кусок памяти в буфере, не аллокированного ранее самим пользователем?



--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
DS
сообщение Aug 25 2010, 10:55
Сообщение #4


Гуру
******

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



Цитата(Oldring @ Aug 25 2010, 14:49) *
Допустим, кроме счетчика еще нужны пороги для генерации прерываний и контроль переполнений, чтобы знать, что данные запороты, в случае чего. И регистр адреса начала буфера - тоже. Нет большой разницы, один или два.


Прерывание генерится по установке в 1 старшего разряда счетчика, регсистр начала обязателен в любом случае. Контроль переполнений производит драйвер, считывая значение счетчика при выходе из прерывания. Удобство в том, что запустил один раз - и забыл. Но, еще раз повторюсь, можно реализовать бесчисленным множеством вариантов. Главное - размер буфера данных должен предусматривать большую задержку обработки прерывания.

Не знаю. Я сам программизмом под Windows стараюсь поменьше вообще не заниматься. Хотя вот последние пару месяцев пришлось разбираться - умер программист, программа большая, писалась и дописывалась около 8 лет, надо хотя бы разобрать все до состояния, когда можно поручить вновь взятому человеку.


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

Сообщений в этой теме
- Клим   Система сбора данных   Aug 25 2010, 07:42
- - DS   Цитата(Клим @ Aug 25 2010, 11:42) Требует...   Aug 25 2010, 08:16
|- - Oldring   Цитата(DS @ Aug 25 2010, 12:16) Если режи...   Aug 25 2010, 08:31
|- - DS   Цитата(Oldring @ Aug 25 2010, 12:31) При ...   Aug 25 2010, 08:39
|- - Oldring   Цитата(DS @ Aug 25 2010, 12:39) 1.5 мс вс...   Aug 25 2010, 08:54
|- - DS   Цитата(Oldring @ Aug 25 2010, 12:54) 1/(6...   Aug 25 2010, 08:59
|- - Oldring   Цитата(DS @ Aug 25 2010, 12:59) Я считал,...   Aug 25 2010, 09:16
|- - DS   Цитата(Oldring @ Aug 25 2010, 13:16) 1/(2...   Aug 25 2010, 09:21
|- - Oldring   Цитата(DS @ Aug 25 2010, 13:21) Да, прошу...   Aug 25 2010, 09:24
|- - DS   Цитата(Oldring @ Aug 25 2010, 13:24) Маст...   Aug 25 2010, 09:26
|- - Oldring   Цитата(DS @ Aug 25 2010, 13:26) Ну так пр...   Aug 25 2010, 09:32
|- - DS   Цитата(Oldring @ Aug 25 2010, 13:32) Коль...   Aug 25 2010, 09:47
|- - Oldring   Цитата(DS @ Aug 25 2010, 13:47) Косвенно ...   Aug 25 2010, 09:53
|- - DS   Цитата(Oldring @ Aug 25 2010, 13:53) Не и...   Aug 25 2010, 09:57
|- - Oldring   Цитата(DS @ Aug 25 2010, 13:57) Если начи...   Aug 25 2010, 10:04
- - DS   А откуда ограничение на 4 Кбайта ? В PLX, например...   Aug 25 2010, 10:27
|- - Oldring   Цитата(DS @ Aug 25 2010, 14:27) А откуда ...   Aug 25 2010, 10:35
|- - Oldring   Цитата(DS @ Aug 25 2010, 14:55) Прерывани...   Aug 25 2010, 11:05
|- - DS   Цитата(Oldring @ Aug 25 2010, 15:03) Что,...   Aug 25 2010, 11:08
|- - Oldring   Цитата(DS @ Aug 25 2010, 15:08) В любом с...   Aug 25 2010, 11:13
- - DS   Вроде мы тут уже с разных сторон рассмотрели, что ...   Aug 25 2010, 11:15
|- - Oldring   Цитата(DS @ Aug 25 2010, 15:15) Вроде мы ...   Aug 25 2010, 11:27
- - DS   Ну и названий же их тоже нет. Так что ответить нев...   Aug 25 2010, 11:32
|- - Клим   Цитата(DS @ Aug 25 2010, 14:32) Ну и назв...   Aug 26 2010, 06:49
- - DS   Судя по описаниям, все подходят. NI получше смотри...   Sep 1 2010, 17:30


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 15:36
Рейтинг@Mail.ru


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