Цитата(Пушкин @ Mar 3 2007, 11:54)

Всем привет.
Вот возникла такая проблема...
Работают с памятью у меня два мастера.Один это ниос, а второй моя логика, которой нужен равномерный поток около 40 МБайт/сек, причем читает он подряд по 64 байта.
Так вот когда ниос ничего не делает, то производительности хватает, но как он что-то начинает, так сразу ддр немного не упевает выдать те 40 мбайт на логику.
Все это работает на частоте 75мгц, если поднимать частоту, то становится нормально. Но как я понимаю пиковая производительность памяти 300Мбайт/сек, неужели этого мало?Тем более что байти не в разнобой читаются а группами по 64 байта.
В чем тут может быть дело?
маловато данных
не хватает ширины шины
но если очень грубо...
допустим при ширине 32 - 40 МБайт/сек получаем 10 МВыборок/сек при частоте 75М вполне понятно что это 7.5% от пропускной. при барсте 16 выборок(кстати не помню я у ддр такого барста) добавим примерно 3-5% на командные циклы и (в зависимости от алгоритмя арбитра) 1-2% на арбитраж. (все это для случая когда специальных мер по увеличению производительности не применяется)
итого - загрузка вашей шины 15-16%.
либо вы гдето лохонулись либо ниос зажирает все остальное без остатка.
однако..