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

 
 
 
Reply to this topicStart new topic
> Запись в RAM-память Stratix II (да и вообще в целом), Стробирование и тактирование
Ethereal
сообщение Feb 17 2009, 09:47
Сообщение #1


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

Группа: Свой
Сообщений: 114
Регистрация: 7-05-08
Из: РФ, Москва
Пользователь №: 37 354



Добрый день. Возник такой вопрос.
Необходимо записать в двухпортовую память Stratix II данные. Данные защелкиваются в сдвиговый регистр и выдаются на выход модуля через такт.
Как корректнее описать запись этих данных в память - стробом WriteEnable или отдельным клоком WriteClk?


--------------------
SystemVerilog - язык, заточенный Альтерой под свои кристаллы теми же приемами использования примитивов, что и AHDL. ©
Go to the top of the page
 
+Quote Post
andrew_b
сообщение Feb 17 2009, 10:01
Сообщение #2


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

Группа: Свой
Сообщений: 1 975
Регистрация: 30-12-04
Из: Воронеж
Пользователь №: 1 757



Цитата(Ethereal @ Feb 17 2009, 12:47) *
Как корректнее описать запись этих данных в память - стробом WriteEnable или отдельным клоком WriteClk?
WriteEnable'ом ничего не пишется. Он разрешат запись в RAM по слоку WriteClk. Память синхронная, и без клока работать не будет.
Go to the top of the page
 
+Quote Post
Ethereal
сообщение Feb 17 2009, 10:07
Сообщение #3


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

Группа: Свой
Сообщений: 114
Регистрация: 7-05-08
Из: РФ, Москва
Пользователь №: 37 354



Поправляюсь.
Строб записи WE + общий клок, либо строб записи "1" и сгенеренный клок.


--------------------
SystemVerilog - язык, заточенный Альтерой под свои кристаллы теми же приемами использования примитивов, что и AHDL. ©
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 17 2009, 10:11
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(Ethereal @ Feb 17 2009, 12:07) *
Поправляюсь.
Строб записи WE + общий клок, либо строб записи "1" и сгенеренный клок.

Клок должен быть общий. Один на всех. (это в идеале).
Go to the top of the page
 
+Quote Post
axalay
сообщение Feb 17 2009, 10:18
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 388
Регистрация: 27-02-06
Из: Москва
Пользователь №: 14 759



общий клок конечно+врайт енабля. А второй предложенный вами метод-прерывистый клок....лучше забыть про него
Go to the top of the page
 
+Quote Post
Ethereal
сообщение Feb 17 2009, 10:24
Сообщение #6


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

Группа: Свой
Сообщений: 114
Регистрация: 7-05-08
Из: РФ, Москва
Пользователь №: 37 354



Эх... я так и сделал.
Просто возникла определенная проблема с полученными после этого данными. Иногда вытащенные из памяти данные, посланные по последовательному интерфейсу и принятые на компьютере данные сбоят - в теле сообщения обнаруживается какой-то бред, контрольная сумма не совпадает.
Пока не разобрался на что грешить, но думал, может все-таки дергание WE - это неправильный подход smile.gif Теперь придется искать дальше smile.gif
Спасибо smile.gif


--------------------
SystemVerilog - язык, заточенный Альтерой под свои кристаллы теми же приемами использования примитивов, что и AHDL. ©
Go to the top of the page
 
+Quote Post
axalay
сообщение Feb 17 2009, 11:02
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 388
Регистрация: 27-02-06
Из: Москва
Пользователь №: 14 759



этот врайт енабле тоже общим клоком сотворен должен быть. Если асинхронные потоки-то переходи с одной частоты на другой через фифо, либо двухпортовый брам, где один порт работает на одной частоте, а другой на другой. Какой удобнее метод-зависит от ситуации
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 17 2009, 11:48
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(axalay @ Feb 17 2009, 13:02) *
этот врайт енабле тоже общим клоком сотворен должен быть. Если асинхронные потоки-то переходи с одной частоты на другой через фифо, либо двухпортовый брам, где один порт работает на одной частоте, а другой на другой. Какой удобнее метод-зависит от ситуации

Сразу так? Из пушки по воробьям?

http://www.edn.com/filtered/pdfs/contents/images/310388.pdf
Go to the top of the page
 
+Quote Post
axalay
сообщение Feb 17 2009, 12:48
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 388
Регистрация: 27-02-06
Из: Москва
Пользователь №: 14 759



А если разрядность данных 64 бита. Запаришься констрейны прописывать. Если же память используется, то двупортовую с разнымиклоками использовать или как однопортовую-не сильно накладно
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 17 2009, 13:10
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(axalay @ Feb 17 2009, 14:48) *
А если разрядность данных 64 бита. Запаришься констрейны прописывать. Если же память используется, то двупортовую с разнымиклоками использовать или как однопортовую-не сильно накладно

А если 1 бит, и это сигнал с какого-то энкодера? Предлагаю с телепатией заканчивать. smile.gif
Go to the top of the page
 
+Quote Post
axalay
сообщение Feb 17 2009, 13:50
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 388
Регистрация: 27-02-06
Из: Москва
Пользователь №: 14 759



ну тогда и не надо было утверждать что из пушки по воробьям smile.gif
Go to the top of the page
 
+Quote Post
Shtirlits
сообщение Feb 18 2009, 06:02
Сообщение #12


Знающий
****

Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905



Цитата(Ethereal @ Feb 17 2009, 12:47) *
Необходимо записать в двухпортовую память Stratix II данные.

Клоки чтения и записи разные?
Если разные, то искать в том месте, где обеспечивается исключение одновременного чтения и записи по одному адресу с нарушением временных требований памяти.
Лучше всего применить dual clock fifo сгенеренное quartus-ом. Либо через него передавать информацию о том, что и куда сейчас пишется, либо данные прямо через это fifo и передавать.
А еще при разных клоках нужно аккуратно реализовать переходы между доменами клоков.
Ну и не надо исключать любые логические ошибки.
Go to the top of the page
 
+Quote Post
Ethereal
сообщение Feb 18 2009, 14:30
Сообщение #13


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

Группа: Свой
Сообщений: 114
Регистрация: 7-05-08
Из: РФ, Москва
Пользователь №: 37 354



Цитата(axalay @ Feb 17 2009, 15:48) *
А если разрядность данных 64 бита. Запаришься констрейны прописывать. Если же память используется, то двупортовую с разнымиклоками использовать или как однопортовую-не сильно накладно

8 бит.

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

Разумеется.

Цитата(Shtirlits)
Клоки чтения и записи разные?

Один общий.


--------------------
SystemVerilog - язык, заточенный Альтерой под свои кристаллы теми же приемами использования примитивов, что и AHDL. ©
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 20th July 2025 - 01:06
Рейтинг@Mail.ru


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