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

 
 
> Aletra, Qsys, работа двух dma-котроллеров с одной памятью
novartis
сообщение Dec 20 2014, 14:30
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 375
Регистрация: 9-10-09
Из: Свердловский регион
Пользователь №: 52 845



Набросал в qsys такую систему: pcie, on-chip memory, два dma controller. Прикрепил картинку
Прикрепленное изображение
.

Если контроллеру 0 дать задание перекачивать большой объем данных, например, из памяти в pcie, а контроллеу 1 в это время давать маленькие команды тоже на перекачку данных из памяти в pcie, не возникнут ли конфликты и как будет осуществляться работа такой системы? контроллеры будут получать доступ к памяти по очереди (в рамках своих burst пакетов) или кто первый начал качать данные, тот и будет их качать, пока все не выкачает?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
novartis
сообщение Dec 25 2014, 05:05
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 375
Регистрация: 9-10-09
Из: Свердловский регион
Пользователь №: 52 845



Спасибо за ссылку, как я понял, они там описывают проблему с дма и предлагают ее решить, задавая размер блока дма кратным размеру burst.
Попробовал так сделать - не помогло.

Стал копать альтеровскую Knowledge Base > Browse Knowledge Base, нашел такую ссылку:
http://www.altera.com/support/kdb/solution...032006_770.html

Цитата
Title
When I enable burst for the SOPC Builder DMA component, why are some of my DMA transfers truncated or stalled?
Description
For the SOPC Builder DMA component when burst transfers are enabled, the maximum amount of data that can be transferred is limited to the maximum burst transfer length (The Burst Transactions “Maximum Burst Size” setting in the DMA parameters tab). For a width N of burstcount, the maximum burst length is 2(N-1).

Any transfers larger than the maximum burst count length are truncated by the DMA component and may stall the DMA burst transfer operation.

Workarounds:
1) Increase the DMA component’s “Maximum Burst Size” words to be greater than the largest DMA transfer length that will be used in your system. The maximum burst size value must be a power of 2.
2) Limit the DMA transfers to be no larger than the “Maximum Burst Size” setting in the DMA parameters tab.

Note: This issue only affects the SOPC Builder DMA component when burst is enabled. This does not affect the DMA in non-burst mode.

All versions of the DMA controller are affected by this burst issue.


Нехилый такой косяк. Подсунули бяку maniac.gif .

Go to the top of the page
 
+Quote Post



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

 


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


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