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

 
 
> Магический пин P143 на spartan 6, Крайне странное поведение схемы, или я сделал что-то очень глупое...
Golikov A.
сообщение Oct 16 2013, 17:54
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Всем привет!

Имеется платка со Spartan 6 (XC6SLX9), в 144 ногом корпусе.
В ней есть прошивка полностью рабочая. На ПЛИС идет клок 50 МГц, внутри он поднимается до 100 МГц.

Понадобилось добавить управление внешним ключом, который подключен к 143 ноге. Просто один из сигналов что шел внутри плис с инверсией вывели на ружу на эту ногу, и понеслось....

если пишем на эту ногу 1, 0, инверсию внутренего сигнала, ПЛИС перестает работать. Не загорается диодик подтверждения LOCKED PLL. Более того появляется сообщение о какой-то комбинаторной логике на сигнале получаемом делением основного клока.

в куске кода
Код
output port143;

assign port143 = ~reset;

if (reset)
  CLK<=1'b0;
else
  begin
    if(clk_dev < DEVIDER)
      clk_dev <= clk_dev + 1;
   else
      begin
        clk_dev <=0;
        CLK<=~CLK;
      end
  end

вот на этот CLK жалуется синтезатор.

При этом в пустом проекте на эту ногу можно вывести частоту и она будет шевелится

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

Если выводит на 143 ногу уровни, они задаются, но плис все равно мертвая....

Пробовали не включать ПЛЛ, подали внешний клок, и результат тот же

143 нога по совместительству еще и VREF 0 банка, но в нем используется уровни по умолчанию, другие сигналы на других ногах VREFE этого банка есть и работают.


Вообщем либо я сделал что-то очень глупое, либо это какая - то магия. И главное что я не представляю что можно еще проверить, что покрутить, как диагностировать в чем косяк... Не резать же из-за такой глупости дорожку, и не паяться же на другие ноги соплей...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Shivers
сообщение Oct 18 2013, 14:39
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 680
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950



Напишу по поводу асинхронного сброса.
Если сброс синхронный, это по сути еще один аргумент функции входа. А значит, более сложная комбинаторика и как следствие - медленная схема.
Недостатки асинхронного сброса (хреновая помехоустойчивость) - понятны.

Поэтому, идут на компромисс, который хорошо ложится на синтез (проверьте, что его поддерживает LUT вашей ПЛИС): сбросы в триггерах используют асинхронно, но источник сброса - выход триггера, т.е. синхронный. Причем в каждом клоковом домене должен быть свой синхронизированный к этому клоку сигнал сброса, который, как я уже писал, используется асинхронно.
Можете поэкспериментировать, на большом проекте использование асинхронного сброса повысит FMAX и уменьшит площадь.

И еще, синхронизацию лучше делать не одним триггером, а двумя, а в некоторой литературе пишут даже про три триггера.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Oct 18 2013, 17:51
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Цитата(Shivers @ Oct 18 2013, 18:39) *
Напишу по поводу асинхронного сброса.
Если сброс синхронный, это по сути еще один аргумент функции входа. А значит, более сложная комбинаторика и как следствие - медленная схема.
Недостатки асинхронного сброса (хреновая помехоустойчивость) - понятны.

Поэтому, идут на компромисс, который хорошо ложится на синтез (проверьте, что его поддерживает LUT вашей ПЛИС): сбросы в триггерах используют асинхронно, но источник сброса - выход триггера, т.е. синхронный. Причем в каждом клоковом домене должен быть свой синхронизированный к этому клоку сигнал сброса, который, как я уже писал, используется асинхронно.
Можете поэкспериментировать, на большом проекте использование асинхронного сброса повысит FMAX и уменьшит площадь.

И еще, синхронизацию лучше делать не одним триггером, а двумя, а в некоторой литературе пишут даже про три триггера.


ну синхронный сброс всяко будет меньше асинхронного или нет? Я как то не страдаю от синхронности сброса. Иногда да бывает надо, но тут как то все синхронное легко легло на проект и все...


2 триггера - это известная штука, для выравнивания фронта внешнего сигнала для всех модулей, но если сигнал идет только на один модуль, то вроде как и без триггера обойтись можно... зачем 3 нужно не знаю...
Go to the top of the page
 
+Quote Post
Victor®
сообщение Oct 18 2013, 19:34
Сообщение #4


Lazy
******

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



Цитата(Golikov A. @ Oct 18 2013, 20:51) *
ну синхронный сброс всяко будет меньше асинхронного или нет? Я как то не страдаю от синхронности сброса. Иногда да бывает надо, но тут как то все синхронное легко легло на проект и все...


2 триггера - это известная штука, для выравнивания фронта внешнего сигнала для всех модулей, но если сигнал идет только на один модуль, то вроде как и без триггера обойтись можно... зачем 3 нужно не знаю...


Гуглите.
Обсуждалось миллион раз.
В общем случае защита от метастабильности + синхронная установка сброса и асинхронное снятие.

P.S. причем для каждого клокового домена это надо делать отдельно.


--------------------
"Everything should be made as simple as possible, but not simpler." - Albert Einstein
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Oct 18 2013, 21:02
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Цитата(Victor® @ Oct 18 2013, 23:34) *
Гуглите.
Обсуждалось миллион раз.
В общем случае защита от метастабильности + синхронная установка сброса и асинхронное снятие.

P.S. причем для каждого клокового домена это надо делать отдельно.


так после миллионов обсуждений не сошлись на том что 2 хватит?



Цитата(Victor® @ Oct 18 2013, 23:34) *
синхронная установка сброса и асинхронное снятие.


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

Правильно я понимаю?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Golikov A.   Магический пин P143 на spartan 6   Oct 16 2013, 17:54
- - count_enable   Можете проверить код на любой другой плате, где эт...   Oct 16 2013, 18:39
- - Golikov A.   не жаловался до появления в проекте 143 ноги, убир...   Oct 16 2013, 18:50
|- - ASN   Golikov A Правильно ругается - gated clock это not...   Oct 17 2013, 05:19
- - count_enable   Добавьте буфер на вход, а еще лучше синхронизатор ...   Oct 16 2013, 21:41
- - Golikov A.   на вход чего!? не можете понять проблему, лучш...   Oct 17 2013, 04:56
- - Bad0512   Цитата(Golikov A. @ Oct 17 2013, 00:54) В...   Oct 17 2013, 05:00
- - Golikov A.   Еще раз! Вы не на том зациклились. я не мог...   Oct 17 2013, 05:54
|- - alexadmin   Цитата(Golikov A. @ Oct 17 2013, 09:54) я...   Oct 17 2013, 06:13
||- - Golikov A.   Цитата(alexadmin @ Oct 17 2013, 10:13) 1....   Oct 17 2013, 07:06
||- - Flood   Цитата(Golikov A. @ Oct 17 2013, 11:06) в...   Oct 17 2013, 15:08
|- - ASN   Golikov A Ещё раз - gated clock это not good desig...   Oct 17 2013, 09:22
- - vladec   Может у Вас какая нибудь "сопля" на плат...   Oct 17 2013, 06:13
- - Raven   На всякий случай добавлю - проверьте по документац...   Oct 17 2013, 07:13
- - ZASADA   еще раз все перечитал, VREF тут не причем. синтеза...   Oct 17 2013, 09:40
|- - Golikov A.   Цитата(ZASADA @ Oct 17 2013, 13:40) еще р...   Oct 17 2013, 13:02
|- - Sergey_Bekrenyov   Цитата(Golikov A. @ Oct 17 2013, 17:02) Н...   Oct 17 2013, 14:41
|- - Golikov A.   Цитата(Sergey_Bekrenyov @ Oct 17 2013, 18...   Oct 17 2013, 15:53
|- - Flood   Цитата(Golikov A. @ Oct 17 2013, 19:53) З...   Oct 17 2013, 16:53
|- - ASN   Golikov A Дайте, пожалуйста, ссылочку на где есть ...   Oct 17 2013, 16:59
- - Golikov A.   Ура! ну вообщем победа. Как собственно и думал...   Oct 17 2013, 18:17
- - Shivers   Код не слишком корректный, может поэтому синтезато...   Oct 18 2013, 06:54
- - Golikov A.   CLK и INV_CLK это борьба за 50% дути цикл. Она вес...   Oct 18 2013, 07:41
- - Victor®   Цитата(Golikov A. @ Oct 19 2013, 00:02) т...   Oct 19 2013, 07:04
- - Golikov A.   Цитата(Victor® @ Oct 19 2013, 11:04) Клас...   Oct 19 2013, 12:59


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

 


RSS Текстовая версия Сейчас: 22nd August 2025 - 00:47
Рейтинг@Mail.ru


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