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

 
 
> Как клок коммутируют?, Че-то затык с этим
alexPec
сообщение Feb 21 2011, 22:15
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Добрый день всем. Подскажите, а как клок коммутировать? Хочу на sgdma подавать данные с разных источников. данные скоммутировать проблем нет-мультиплексором, а каждый источник данных свой клок имеет, и его надо на sgdma подавать. Переходные процессы при коммутировании значения не имеют. Если через логику - типа "И" - так ведь задержка на этом И будет, и на выходе совсем другой клок, сдвинутый уже, а оба источника - синхронные схемы. Вобщем неправильным такой способ мне кажется. Пробовал ставить altclkctrl и указывать 2 входа - ругается, говорит что на входы с клоковых ног подавать надо. А у меня оба клока с плл-ов идут. Как быть?

Сообщение отредактировал alexPec - Feb 21 2011, 22:16
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Bad0512
сообщение Feb 22 2011, 05:04
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Цитата(alexPec @ Feb 22 2011, 04:15) *
Добрый день всем. Подскажите, а как клок коммутировать? Хочу на sgdma подавать данные с разных источников. данные скоммутировать проблем нет-мультиплексором, а каждый источник данных свой клок имеет, и его надо на sgdma подавать. Переходные процессы при коммутировании значения не имеют. Если через логику - типа "И" - так ведь задержка на этом И будет, и на выходе совсем другой клок, сдвинутый уже, а оба источника - синхронные схемы. Вобщем неправильным такой способ мне кажется. Пробовал ставить altclkctrl и указывать 2 входа - ругается, говорит что на входы с клоковых ног подавать надо. А у меня оба клока с плл-ов идут. Как быть?

Всё зависит от того, насколько быстрые потоки идут с каждого из ваших источников данных. Если потоки не слишком быстрые (по сравнению со скоростью DMA) то можно использовать "простой" способ, а именно : между источником и доменом клоков DMA ставятся фифошки с асинхронными клоками(по входу - клоки источников, по выходу - клоки DMA) для приведения к одному клоковому домену (DMA). Далее делается арбитр, который будет разруливать входящие потоки с фифошек и по очереди отправлять их на DMA машину. Тут необходимо ещё озадачиться проблемой как такую "колбасу" из данных потом в хосте разгребать, т.е. понимать где чьи данные в мультиплексированном потоке.Если потоки достаточно серьёзные (маденьких фифошек, построенных на RAM блочках уже не хвататет - они переполняются), то есть более сложная схема : тут нужен контроллер памяти (как правило DDR). Источники данных через промежуточные фифошки пишут данные в память (каждый - в свой буфер, буфер моежт быть круговым) и выдают наружу флажки заполненности для каждого конкретного буфера. Хост также имеет доступ к DDR через отдельный порт контроллера. Хост при необходимости (по флажкам, прерываниям и т д) заряжает DMA на область данных в DDR, где лежат данные источников. Буфера обслуживаются последовательно. DMA машинка работает только в памятью DDR. Схема посложнее будет, кроме того необходимо построить всё так, чтобы связка DDR controller - DMA engine работала с максимальной производительностью. Там есть хитрые моменты, связанные с латентностью DDR, особенно актуально при чтении из внешней памяти.
Для тупого мультиплексирования клоков у Xilinx есть макрос BUFGMUX. Но использовать его для данной задачи, ИМХО, неправильно.
Go to the top of the page
 
+Quote Post
alexPec
сообщение Feb 22 2011, 13:30
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Ну у меня все проще - надо коммутировать поток данных на ДМА либо до фильтра с интерполятором, либо после, т.е. коммутируется поток. Причем скоммутировали один раз (выбрали источник) и забыли до тех пор пока пункт в меню не поменяется (переключение режима). Поэтому переходные процессы при коммутировании не важны - переключение режимов относительно редко происходит. М/с - цыклон3, потоки - 20 и 5,18... МГц.

Сообщение отредактировал alexPec - Feb 22 2011, 13:31
Go to the top of the page
 
+Quote Post
Victor®
сообщение Feb 22 2011, 15:24
Сообщение #4


Lazy
******

Группа: Свой
Сообщений: 2 070
Регистрация: 21-06-04
Из: Ukraine
Пользователь №: 76



Цитата(alexPec @ Feb 22 2011, 16:30) *
Ну у меня все проще - надо коммутировать поток данных на ДМА либо до фильтра с интерполятором, либо после, т.е. коммутируется поток. Причем скоммутировали один раз (выбрали источник) и забыли до тех пор пока пункт в меню не поменяется (переключение режима). Поэтому переходные процессы при коммутировании не важны - переключение режимов относительно редко происходит. М/с - цыклон3, потоки - 20 и 5,18... МГц.


Посмотрите либу примитивов - там наверняка есть какой-то "клок мукс"


--------------------
"Everything should be made as simple as possible, but not simpler." - Albert Einstein
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- alexPec   Как клок коммутируют?   Feb 21 2011, 22:15
- - Shtirlits   Какая микросхема? Правильно использовать clock con...   Feb 21 2011, 22:58
|- - warrior-2001   Цитата(alexPec @ Feb 22 2011, 16:30) ... ...   Feb 24 2011, 08:48
|- - alexPec   Цитата(warrior-2001 @ Feb 24 2011, 11...   Feb 24 2011, 10:53
|- - Sergey'F   Цитата(alexPec @ Feb 24 2011, 13:53) а пр...   Mar 6 2011, 20:45
||- - alexPec   Цитата(Sergey'F @ Mar 6 2011, 23:45) ...   Mar 6 2011, 23:37
||- - Sergey'F   Цитата(alexPec @ Mar 7 2011, 02:37) DMA в...   Mar 7 2011, 07:46
||- - alexPec   Цитата(Sergey'F @ Mar 7 2011, 10:46) ...   Mar 7 2011, 09:49
|- - des00   Цитата(alexPec @ Feb 24 2011, 04:53) Все ...   Mar 7 2011, 15:32
|- - alexadmin   Цитата(des00 @ Mar 7 2011, 18:32) это кто...   Mar 9 2011, 14:35
||- - des00   Цитата(alexadmin @ Mar 9 2011, 08:35) С с...   Mar 9 2011, 16:22
||- - alexadmin   Цитата(des00 @ Mar 9 2011, 19:22) я вас у...   Mar 10 2011, 12:11
||- - des00   Цитата(alexadmin @ Mar 10 2011, 06:11) Та...   Mar 10 2011, 13:36
|- - Andr2I   Цитата(des00 @ Mar 7 2011, 18:32) а ничег...   Mar 9 2011, 16:57
|- - bogaev_roman   Цитата(Andr2I @ Mar 9 2011, 19:57) Каковы...   Mar 9 2011, 17:05
|- - Andr2I   Цитата(bogaev_roman @ Mar 9 2011, 20:05) ...   Mar 9 2011, 18:18
|- - bogaev_roman   Цитата(Andr2I @ Mar 9 2011, 21:18) Однако...   Mar 10 2011, 11:52
|- - Andr2I   Цитата(bogaev_roman @ Mar 10 2011, 14:52)...   Mar 10 2011, 12:22
||- - bogaev_roman   Цитата(Andr2I @ Mar 10 2011, 15:22) Если ...   Mar 10 2011, 12:56
|- - Andr2I   Цитата(bogaev_roman @ Mar 10 2011, 14:52)...   Mar 10 2011, 18:53
|- - bogaev_roman   Цитата(Andr2I @ Mar 10 2011, 21:53) Как и...   Mar 11 2011, 11:12
- - slawikg   ЦитатаПробовал ставить altclkctrl и указывать 2 вх...   Feb 23 2011, 13:14
|- - alexPec   Цитата(slawikg @ Feb 23 2011, 16:14) Все ...   Feb 23 2011, 22:06
- - slawikg   ЦитатаА поподробней можно? С одной стороны это как...   Feb 26 2011, 08:58
|- - Anatol'   Не знаю как у Альтеры, а у Xilinx есть такой элеме...   Mar 4 2011, 06:40
- - Sergey'F   alexadmin, des00, извините, а вы не о разных вещах...   Mar 10 2011, 15:07


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

 


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


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