Перейти к содержанию
    

Ошибки в синхронной схеме при нарушении времянок

Добрый день!

 

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

 

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

 

1. генератор меандра на триггере

2. две параллельных цепи триггеров

3. сравнение значений на выходе триггеров

4. заданы временные ограничения (5 нс) и соответственно этому триггеры тактируются

5. один из триггеров вынесен максимально далеко от остальных для нарушения таймингов.

6. подключен chipscope для наблюдения ошибок и их подсчета

 

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

 

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

 

 

 

 

 

 

 

post-14339-1417505535_thumb.png

post-14339-1417505543_thumb.png

post-14339-1417505546_thumb.png

post-14339-1417505548_thumb.png

post-14339-1417505551_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

 

Неверно выбраны условия запуска в железе.

Времянка считается для самых жестких условий (процесс-напряжение-температура).

И сбои легко увидеть во временнОй симуляции - после такого триггера сигнал становится неопределенным.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Мало нарушили. Если хотите, чтобы тайминг стабильно нарушился, то надо анализировать сетапы на фаст корнере (а по умолчанию оно делается на worst case). И вот если там будет нарушение - то и в железе оно гарантировано... А так - повезет/не повезет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте.

Недавно проводил эксперимент с передачей данных из доменов не кратных частот одного и того же DCMа как раз на К7. А конкретно из 300 МГц передавал в 400. Соответственно ограничение было 0,833 нс.

Наблюдал устойчивую ошибку только при превышении тайминга на >0.4 нс. Потом грел феном кристалл - число ошибок росло, однако они появлялись далеко не во всех битах шины. Советую для подобного эксперимента использовать широкую шину >32, с большим диапазоном нарушений. Ну и погреть можно для наглядности(если есть отображение температуры).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

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

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...