Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Ошибки в синхронной схеме при нарушении времянок
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
toshas
Добрый день!

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

Сделан простой проект для отладочной платы на Kintex 7:

1. генератор меандра на триггере
2. две параллельных цепи триггеров
3. сравнение значений на выходе триггеров
4. заданы временные ограничения (5 нс) и соответственно этому триггеры тактируются
5. один из триггеров вынесен максимально далеко от остальных для нарушения таймингов.
6. подключен chipscope для наблюдения ошибок и их подсчета

В результате - по отчету тайминг нарушен (при разном размещении от 10 пс до 2 нс) а ошибки не возникают.

Что сделано неверно ? Как максимально просто сделать такую демонстрацию ?







Gorby
Цитата(toshas @ Dec 2 2014, 10:32) *
В результате - по отчету тайминг нарушен (при разном размещении от 10 пс до 2 нс) а ошибки не возникают.
Что сделано неверно ? Как максимально просто сделать такую демонстрацию ?


Неверно выбраны условия запуска в железе.
Времянка считается для самых жестких условий (процесс-напряжение-температура).
И сбои легко увидеть во временнОй симуляции - после такого триггера сигнал становится неопределенным.

А вы вот выберите самый худший кристалл из партии, занизьте ему питание ядра и нагрейте. Гарантирую - засбоит.
SM
Цитата(toshas @ Dec 2 2014, 10:32) *
Что сделано неверно ? Как максимально просто сделать такую демонстрацию ?


Мало нарушили. Если хотите, чтобы тайминг стабильно нарушился, то надо анализировать сетапы на фаст корнере (а по умолчанию оно делается на worst case). И вот если там будет нарушение - то и в железе оно гарантировано... А так - повезет/не повезет.
Amurak
Частоту тактирования побольше сделайте (времянки станут жостче).
TRILLER
Здравствуйте.
Недавно проводил эксперимент с передачей данных из доменов не кратных частот одного и того же DCMа как раз на К7. А конкретно из 300 МГц передавал в 400. Соответственно ограничение было 0,833 нс.
Наблюдал устойчивую ошибку только при превышении тайминга на >0.4 нс. Потом грел феном кристалл - число ошибок росло, однако они появлялись далеко не во всех битах шины. Советую для подобного эксперимента использовать широкую шину >32, с большим диапазоном нарушений. Ну и погреть можно для наглядности(если есть отображение температуры).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.