ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
2 мая
187826 Топик полностью
igorchem (02.04.2010 15:38 - 15:46, просмотров: 229) ответил Mahagam на представьте себе как можно обращаться физически в одно и то же время к 4-м ячейкам памяти одновременно? это ж 4 разных адреса. или по 4-м разным тактовым сигналам.
Примерно это ограничение я с Ваших слов понял, спасибо, но, с Вашим сравнением глобальной операции - полностью не согласен. Действительно, если все треды на ГПУшном мультипроцессоре хотят посчитать сумму, тут только бинарное дерево поможет, и то, часто, из-за банк конфликтов в общей памяти надо не по 2, а по 4 объединять и суммарно эта процедура на тысячу тактов тянет :((( Другое дело, что мне надо. У меня есть массив слов (например reg [63:0] RingData [0:MaxNN]) два поинтера (reg [15:0] InPointer, OutPointer;) два клока (reg InClock, OutClock;) и еще некоторый свич, по которому я могу определить записать мне сейчас в этот массив данных только одно пришедшее слово, или пришло сразу два слова. Вот эту конструкцию мне надо реализовать. Более того, времени у меня между клоками более менеее достаточно, данные сыпятся с частотой 50МГц, то есть с этой частотой мне надо либо одно, либо два 64 битных слова записать. Вопросы в том, что как это оптимально сделать? Стоит ли мне разбить все эти данные на 8-64 параллельных блока, каждый поместить в свой M9K блок, завести клок в 100МГц который то записывает, то нет: то есть когда пришло одно данное, записать только 1 раз и один раз пропустить, а когда пришло 2 данных - записать оба последовательно. Честно говоря, в моем уме это не выкристаллизовывалось как не параллельная операция, но, так как я не знаю, как какая схема реализуется, мне не понятно через что ее сконструировать. Вот в этом-то и мои загвоздки. Шарил пока по мануалам, но все еще ничего путевого не нашел. С уважением Игорь