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

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> Можно ли победить Timing Errors, На глобальном клоке 400МГц
des00
сообщение Jan 30 2012, 14:05
Сообщение #31


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(TABKP @ Jan 30 2012, 07:28) *
Не знаю что такое retiming. Где он включается?

это разрешение синтезатору, мапперу, фитеру передвигать регистры, которые вы уже описали в коде, между слоями логики, для обеспечения быстродействия. Штука полезная, но порой опасная.
Цитата
"Мультицикловые констрейны и те, которые можно сунуть в игнор" - можно для чайника рассказать что это?

мультициклы


--------------------
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Jan 30 2012, 16:13
Сообщение #32


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Цитата(TABKP @ Jan 30 2012, 17:28) *
И его еще дорабатывать сильно надо, но при добавлении чего-либо в него, количество ошибок снова растет.

Еще раз: сделайте в floorplan в PlanAhead, разбейте проект на партиции - вы сможете предотвратить перемещение тех кусков проекта, которые уже размещены правильно.

Цитата(TABKP @ Jan 30 2012, 17:28) *
Не знаю что такое retiming. Где он включается?

Register retiming, в настройках PAR.

Цитата(TABKP @ Jan 30 2012, 17:28) *
Осознаю, что добавление триггеров увеличивает скорость работы. Но как их добавить? В ручную через FPGAEditor?

Нет конечно.
У вас есть код типа:
Код
always @(posedge clk)
   begin
      a<=b+c+d+e+f+g+h+i;
   end

То есть много логики в один такт.
Вы из него делаете
Код
always @(posedge clk)
   begin
      a1<=b+c;
      a2<=d+e;
      a3<=f+g;
      a4<=h+i;
      a12<=a1+a2;
      a34<=a3+a4;
      a<=a12+a34;
   end

Добавили 2 ступени триггеров.

Цитата(TABKP @ Jan 30 2012, 17:28) *
"Мультицикловые констрейны и те, которые можно сунуть в игнор" - можно для чайника рассказать что это??

Например, вы знаете, что enable некой группы триггеров у вас по дизайну работает четко не чаще, чем раз в два такта. Вы можете пути между этими триггерами объявить в два цикла, и компилятор будет знать, что эти пути можно укладывать в 5 ns, несмотря на тактовую в 400MHz.
Go to the top of the page
 
+Quote Post
alxkon
сообщение Feb 1 2012, 08:32
Сообщение #33


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 16-11-10
Пользователь №: 60 920



Цитата(Мур @ Jan 24 2012, 17:24) *
Хочу рассказать о моем изумлении при встрече с одним уникумом, который достигал ошеломительных цифр применяя Матлаб. Он там разрисовывал макроячейку своей микросхемы и вел на основании такого элемента и её маски(для переноса!) моделирование в Матлабе. Он получал и фильтры и ФФТ на 600МГц тактовой. Сам контролировал укладку в чипе всех элементов.

Интересно, а можно подробнее?
Go to the top of the page
 
+Quote Post
TRILLER
сообщение Feb 1 2012, 11:17
Сообщение #34


Частый гость
**

Группа: Свой
Сообщений: 180
Регистрация: 17-02-09
Из: Санкт-Петербург
Пользователь №: 45 001



Если честно, прочитал только завязку дискусии и последнюю страницу, так что может чего и пропустил. Но нет сил просто.. )
Так вот.
Всё это, если честно, полный бред. И про 400МГц на V-4, и про 600(это вообще отжиг)) ). И даже фильтры на DSP не работают на таких частота, если их число больше, чем в одном столбце приходится на один фильтр. Для V-4 со скоростью -10 при 85% забитии кристалла максимум, что выжимал(хотя стараля, использовал только 2-х!! входовые мультиплексоры и т.д.) это 270 МГц. Дальше роутер начинает проводить совершенно нереальные соединения, и в итоге, ещё ухудшает времянку. Для -11, ну ещё 50 МГц - это потолок. Так что, поменьше иллюзий.
Go to the top of the page
 
+Quote Post
dm.pogrebnoy
сообщение Feb 1 2012, 11:44
Сообщение #35


Знающий
****

Группа: Свой
Сообщений: 747
Регистрация: 11-04-07
Пользователь №: 26 933



Цитата(TRILLER @ Feb 1 2012, 15:17) *
Если честно, прочитал только завязку дискусии и последнюю страницу, так что может чего и пропустил. Но нет сил просто.. )
Так вот.
Всё это, если честно, полный бред. И про 400МГц на V-4, и про 600(это вообще отжиг)) ). И даже фильтры на DSP не работают на таких частота, если их число больше, чем в одном столбце приходится на один фильтр. Для V-4 со скоростью -10 при 85% забитии кристалла максимум, что выжимал(хотя стараля, использовал только 2-х!! входовые мультиплексоры и т.д.) это 270 МГц. Дальше роутер начинает проводить совершенно нереальные соединения, и в итоге, ещё ухудшает времянку. Для -11, ну ещё 50 МГц - это потолок. Так что, поменьше иллюзий.


Тут на самом деле не так все просто. Про 600 МГц я думаю имели ввиду только теоретическую скорость работы небольшой или плотноуложенной схемы. Просто в V4 даже такт такой не завести.
Что касается 450 МГц и фильтра на DSP, так он у меня был еще и полностью комплЕксный высокго порядка, и одно умножение занимало 4 DSP48, и 4 столбца сразу было использовано. Но и архитектура этого фильтра была не простой, использующей все возможности архитектуры, другое дело что логики практически никакой больше не было использовано, поэтому и такие цифры. Многое зависит от плотности логики и качества разводочных ресурсов. Ув. des00 утверждает что у Alter'ы с этим получше чем у Xilinx, хотя мы это еще не проверили.


--------------------
Go to the top of the page
 
+Quote Post
TRILLER
сообщение Feb 1 2012, 11:56
Сообщение #36


Частый гость
**

Группа: Свой
Сообщений: 180
Регистрация: 17-02-09
Из: Санкт-Петербург
Пользователь №: 45 001



И что, работал фильтр, занимающий 2 столбца на 400 МГц?! Извините, но не верю. Если можно, киньте усечённый кусочек( чего не жалко) на ZalilovTimur87@gmail.com). Мне было бы очень полезно.
Go to the top of the page
 
+Quote Post
Мур
сообщение Feb 1 2012, 12:06
Сообщение #37


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(antsu88 @ Feb 1 2012, 11:32) *
Интересно, а можно подробнее?


Это было пару лет назад. Знаю, что связывался с альтерой о применении параметров маски , после чего сделал эксперимент для всех вариантов масок, чтобы убедиться в выгодности и преимущества по быстродействию при переносе.
Его любимым режимом был тогда ВИЗИВИНГ(как рисую, так и разводится!). Он отслеживал расположение внутренней топологии ФПЖА, чтобы оптимально легли ответственные ножки. Речь о "столбиках"(близко расположенные макроячейки) внутри ПЛИС. Так достигалось предельное быстродействие!..

У меня на это руки не дошли,-занят был, а потом поменял работу и связь только по тлф. По праздникам....
-------- Это бомба! Колюсь...
Кстати, он утверждал, что в маске весь секрет! Что пользователю не дают возможности разогнать ячейку до предельного значения быстродействия!!!!!!
На самом деле это из недокументированного.... Так что его заявление о 1000МГц при встрече на осенней выставке меня не смутили.
Go to the top of the page
 
+Quote Post
des00
сообщение Feb 1 2012, 12:54
Сообщение #38


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(dm.pogrebnoy @ Feb 1 2012, 06:44) *
Ув. des00 утверждает что у Alter'ы с этим получше чем у Xilinx, хотя мы это еще не проверили.

как бы начали проверять в соседней теме, но народ как то не шибко этим интересуется.


--------------------
Go to the top of the page
 
+Quote Post
dm.pogrebnoy
сообщение Feb 1 2012, 13:21
Сообщение #39


Знающий
****

Группа: Свой
Сообщений: 747
Регистрация: 11-04-07
Пользователь №: 26 933



Цитата(TRILLER @ Feb 1 2012, 15:56) *
И что, работал фильтр, занимающий 2 столбца на 400 МГц?! Извините, но не верю. Если можно, киньте усечённый кусочек( чего не жалко) на ZalilovTimur87@gmail.com). Мне было бы очень полезно.


Конечно работал, собственно чему там не работать? Все элементы на этой частоте работают по даташиту, все полностью законвейерезировано было, разводочные ресурсы в основном использованы специальные, которые между DSP48 проложены. Выкладывать не буду, лень. Там половина в схематике была сделана - зеленый еще был.

Цитата(des00 @ Feb 1 2012, 16:54) *
как бы начали проверять в соседней теме, но народ как то не шибко этим интересуется.


пример не очень удачный наверно получился у вас, не заработал из коробки. может быть еще появится какой-нибудь, я бы попробовал.


--------------------
Go to the top of the page
 
+Quote Post
TABKP
сообщение Feb 2 2012, 08:12
Сообщение #40


Участник
*

Группа: Участник
Сообщений: 24
Регистрация: 19-05-11
Пользователь №: 65 130



Продолжим. Ошибки побеждены. Минимальный запас по setup есть.
Посмотрел как 400МГц часть разложилась на кристалл - схема раскинулась аж на пол кристалла.
Есть желание сделать 2 вещи:
1) создать Pblock и указать чтобы вся 400МГц часть располагалась в этом блоке
2) создать partition с 400МГц частью, чтобы раз и навсегда отладить этот кусок и не зависеть от того как будет написана остальная часть проекта

Читаю мануал к PlanAhead. Прочитал Hierarchical_Design_Methodology_Guide и PlanAhead_Tutorial_Design_Preservation. Да, и видео посмотрел с оф. сайта.
Вроде все просто, но применить эти знания не могу. Не могу понять как выделить нужные компоненты проекта для создания partition - если коры идут отдельным списком, то компоненты написанные мной на VHDL автоматичеки разбиваются на примитивы. Нужно все примитивы компонента выискивать?
Go to the top of the page
 
+Quote Post
TABKP
сообщение Feb 2 2012, 15:58
Сообщение #41


Участник
*

Группа: Участник
Сообщений: 24
Регистрация: 19-05-11
Пользователь №: 65 130



Разобрался. В настройках компилятора в ISE надо галку поставить keep hierarchy. Создал один единственный компонент внутрь которого запихнул все, что связано с 400МГц. Pblock создал. Плохо что нельзя его создавать произвольным по форме - у меня почти все DSP48 использованы, поэтому блок получился длиной почти на вест кристал. После имплемента получил запас по setup 32пС. Затем этот же модуль назначил как partition. Снова сдела имплемент - и получил запас по setup равным 0. Это почему так?
Ну да ладно. Нажал remote partitions. Вроде как должен был создаться компонент для вставки в свой проект, но я так и не понял где он и как его вставить в общий проект. Подскажите!
Go to the top of the page
 
+Quote Post
RobFPGA
сообщение Feb 2 2012, 17:09
Сообщение #42


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

Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643



Приветствую!

Цитата(TABKP @ Feb 2 2012, 17:58) *
Плохо что нельзя его создавать произвольным по форме - у меня почти все DSP48 использованы, поэтому блок получился длиной почти на вест кристал. После имплемента получил запас по


Почему нельзя - все можно - просто задаете несколько прямоугольников для одного pblock (Add Pblock rectange) можно даже не перекрывающихся.
Так можно нарисовать какую угодно форму. Причем необязательно чтобы в контур для LUT попадали все DSP или BRAM - это независимые друг от друга контуры

Удачи! Rob.
Go to the top of the page
 
+Quote Post
TABKP
сообщение Feb 3 2012, 06:35
Сообщение #43


Участник
*

Группа: Участник
Сообщений: 24
Регистрация: 19-05-11
Пользователь №: 65 130



Так и не понимаю как сформированный partition из PlanAhead вставить обратно в ISE проект
Go to the top of the page
 
+Quote Post
Мур
сообщение Feb 3 2012, 07:14
Сообщение #44


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(TABKP @ Feb 3 2012, 09:35) *
Так и не понимаю как сформированный partition из PlanAhead вставить обратно в ISE проект


След вашего пребывания в PlanAhead остается в *.ucf. Все там. Тупо перенесите в редакторе...
Go to the top of the page
 
+Quote Post
TABKP
сообщение Feb 3 2012, 07:57
Сообщение #45


Участник
*

Группа: Участник
Сообщений: 24
Регистрация: 19-05-11
Пользователь №: 65 130



В UCF файле появился только констрейм AREA_GROUP, который относится к Pblock. А как с partition то быть. Мне надо чтобы модуль на 400МГц стал черным ящиком с неизменным размещением примитивов на кристалле.
Кстати при попытке скомпилировать в ISE тот же проект с новым UCF (добавлен только AREA_GROUP) - ISE выдал что недостаточно ресурсов, в то время как Planahead нормально развел. Чудеса.
Go to the top of the page
 
+Quote Post

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

 


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


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