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

cyclone 2 работает с ошибками на частоте 60 МГц

Всем привет! В проекте столкнулся с ошибками, которые возникают из-за высокой частоты тактирования, не все элементы логики успевают срабатывать, какие методы решения таких проблем?

Screen_Shot_11_24_15_at_02_14_PM.jpg

 

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


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

Всем привет! В проекте столкнулся с ошибками, которые возникают из-за высокой частоты тактирования, не все элементы логики успевают срабатывать, какие методы решения таких проблем?

Убрать лишнюю логику

сделать конвейеры

разрешить дублировать регистры

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

 

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


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

Можно поставить Cyclone III.

А по теме... Вы что делаете? Вопрос типа: "Я сделал так, как сделать лучше?" - смотрелся бы уместнее.

 

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


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

Спасибо!

Можно поставить Cyclone III.

А по теме... Вы что делаете? Вопрос типа: "Я сделал так, как сделать лучше?" - смотрелся бы уместнее.

Задача следующая, есть поток данных, разрядностью 16 бит, частота 40МГц, пустить этот поток в синхронный фифо 245 интерфейс на частоте 60 МГц, все это делается на MorhIC-II.

Вот здесь примерная структура проекта.

 

IMG_20151125_223540_8_CS.jpg

 

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

 

А есть пример конвейера организованного на плис?

А где можно разрешить дублирование регистров?

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


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

Спасибо!

 

Задача следующая, есть поток данных, разрядностью 16 бит, частота 40МГц, пустить этот поток в синхронный фифо 245 интерфейс на частоте 60 МГц, все это делается на MorhIC-II.

Вот здесь примерная структура проекта.

 

 

 

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

 

А есть пример конвейера организованного на плис?

А где можно разрешить дублирование регистров?

Навскидку... Память можно сделать с одной стороны 8 бит, а с другой - 1 бит. при этом "сдвиговый регистр " окажется не нужен... И я думаю, что таких мест может быть много. А потому что блок-схема - на мятой бумажке...

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

 

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


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

Не берусь категорично утверждать, но при работе с морфиком, возникло ощущение о том, что используемая частота 60 МГц, обладает плохой стабильностью.

В конечном итоге, запустил ПЛЛ с формированием частоты 300 МГц (из 50 МГц) и стробировал ею входную частоту.

Сделали несколько плат, часть из которых на циклоне 2, а часть на циклоне 3, нареканий по работе не возникло.

У Вас данные на частоте 40МГц, будут литься непрерывно? Если да, то как хотите согласовать переход от 16бит к 8 на входе FT2232H с частотй 60МГц?

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


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

Не берусь категорично утверждать, но при работе с морфиком, возникло ощущение о том, что используемая частота 60 МГц, обладает плохой стабильностью.

В конечном итоге, запустил ПЛЛ с формированием частоты 300 МГц (из 50 МГц) и стробировал ею входную частоту.

Сделали несколько плат, часть из которых на циклоне 2, а часть на циклоне 3, нареканий по работе не возникло.

У Вас данные на частоте 40МГц, будут литься непрерывно? Если да, то как хотите согласовать переход от 16бит к 8 на входе FT2232H с частотй 60МГц?

У автора по сетапу проблеммы. 60 мгц - это не большая частота. Тут дизайн редактировать надо, правильно сказали - конвееры, минимизация логики. Просмотреть имплементацию - регистры в I/O, задание правильных констрейнов. Нестабильность тактовой тут не причем...

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


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

А есть пример конвейера организованного на плис?

А где можно разрешить дублирование регистров?

пример простого конвеера

 

Разрешение на дублирование определяется в настройках синтезатора.

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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