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

 
 
 
Reply to this topicStart new topic
> NIOS + 16-bit внешняя память программ, возможна такая конфигурация?
confflex
сообщение Aug 23 2009, 12:01
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 19-11-05
Пользователь №: 11 082



Привет Всем! Вопрос знающим Nios.
Необходимо запустить Nios на Cyclone 1C12, загрузка программы Nios из EPCS в 16-битную асинхронную(синхронную) внешнюю SRAM. Просьба не критиковать за использование в 2009-м первого Циклона и асинхронной памяти. Так надо, 16-битная память, а не 32-битная рассматривается из-за отсутсвия лишних IO в Cyclone. В связи с этим вопросы никогда не юзавшего Ниос.
Возможна ли такая конфигурация?
Если возможна, то контроллер SRAM делать самому? В Quartus 9.0 в SOPC в разделе SRAM я вижу только 32-битные контроллеры для асинхронной IDT71V416 и синхронной CY7C1380.
Если всё же возможно применение 16-битной памяти, плиз, ткните носом в примеры такого использования.
Go to the top of the page
 
+Quote Post
EugeneS
сообщение Aug 23 2009, 18:36
Сообщение #2


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

Группа: Свой
Сообщений: 181
Регистрация: 28-08-04
Пользователь №: 557



Цитата(confflex @ Aug 23 2009, 16:01) *
Привет Всем! Вопрос знающим Nios.
Необходимо запустить Nios на Cyclone 1C12, загрузка программы Nios из EPCS в 16-битную асинхронную(синхронную) внешнюю SRAM. Просьба не критиковать за использование в 2009-м первого Циклона и асинхронной памяти. Так надо, 16-битная память, а не 32-битная рассматривается из-за отсутсвия лишних IO в Cyclone. В связи с этим вопросы никогда не юзавшего Ниос.
Возможна ли такая конфигурация?
Если возможна, то контроллер SRAM делать самому? В Quartus 9.0 в SOPC в разделе SRAM я вижу только 32-битные контроллеры для асинхронной IDT71V416 и синхронной CY7C1380.
Если всё же возможно применение 16-битной памяти, плиз, ткните носом в примеры такого использования.


Конфигурация возможна. Если затрудняешся создать свой компонент, в niosforum
были примеры. При подключении 16-бит контроллера почитай насчет
word alignment.
Go to the top of the page
 
+Quote Post
torik
сообщение Aug 23 2009, 18:50
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Можно использовать контроллер SDRAM и динамическую память 16 бит. Готовый контроллер уже есть в SOPC Builder. Можно хоть 8 бит память...


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
confflex
сообщение Aug 23 2009, 20:26
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 19-11-05
Пользователь №: 11 082



Наверное и правда с простейшей 16-битной SDRAM побыстрей стартануть можно, т.к. контроллер в SOPC есть, а IO не больше, вроде, чем для асинхронной требуется.
А где бы взять пример программы-загрузчика для SDRAM(SRAM) 16-bit, которая как я понял должна размещаться в RAM-блоках, и переписывать программу для Ниоса из EPCS во внешнюю память, и инициализировать запуск основной програмы? Ещё бы лучше кто бы тнул носом в ссылку на какой-нибудь дизайн для какой-то демо платы или может кто вышлет простой проект. Сам пока не нашёл ничего хорошего, хотя много перерыл.
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Aug 23 2009, 22:55
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



Цитата(confflex @ Aug 24 2009, 03:26) *
А где бы взять пример программы-загрузчика для SDRAM(SRAM) 16-bit, которая как я понял должна размещаться в RAM-блоках, и переписывать программу для Ниоса из EPCS во внешнюю память, и инициализировать запуск основной програмы? Ещё бы лучше кто бы тнул носом в ссылку на какой-нибудь дизайн для какой-то демо платы или может кто вышлет простой проект. Сам пока не нашёл ничего хорошего, хотя много перерыл.

эта программа (бутлодер) вшита в корку epcs-контроллера. поищите в папке квартуса (или ниос-иде?), там есть сорцы на асме. вам только reset-вектор надо нацелить на epcs, а в настройках линкера указать внешнюю память. примеры идут с ниос-иде.
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Aug 24 2009, 09:11
Сообщение #6


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(torik @ Aug 23 2009, 22:50) *
Можно использовать контроллер SDRAM и динамическую память 16 бит. Готовый контроллер уже есть в SOPC Builder. Можно хоть 8 бит память...

Не надо SDRAM'а, особенно для первого проекта. smile.gif
Для внешней SRAM (что синхронной, что асинхронной) не нужен никакой контроллер. Для ее подключения используется Avalon Tristate bridge и модуль Tristate Slave (нужной разрядности), который выбирается в компонент эдиторе из заготовок (Template).
Никакого геморроя, и все готово за три минуты. И все выравнивания слов, как говорится, "украдены до нас" smile.gif


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
torik
сообщение Aug 24 2009, 09:37
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Цитата
Не надо SDRAM'а, особенно для первого проекта. smile.gif
Для внешней SRAM (что синхронной, что асинхронной) не нужен никакой контроллер. Для ее подключения используется Avalon Tristate bridge и модуль Tristate Slave (нужной разрядности), который выбирается в компонент эдиторе из заготовок (Template).
Никакого геморроя, и все готово за три минуты. И все выравнивания слов, как говорится, "украдены до нас" smile.gif


Пожалуй, соглашусь. Единственное, SDRAM позволить выводы сэкономить...


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
confflex
сообщение Aug 24 2009, 14:42
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 19-11-05
Пользователь №: 11 082



А можно подробней, чем плох SDRAM ? Собрался было уже применить какую-нибудь 64 МБит(1М*4*16).
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Aug 24 2009, 16:44
Сообщение #9


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(confflex @ Aug 24 2009, 18:42) *
А можно подробней, чем плох SDRAM ? Собрался было уже применить какую-нибудь 64 МБит(1М*4*16).

Да ничем не плох. Но для него нужен контроллер, а для SRAM контроллер не нужен. Также для SDRAM, скорее всего, придется ставить терминирующие резсторы.


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
confflex
сообщение Aug 24 2009, 16:59
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 19-11-05
Пользователь №: 11 082



Да вроде бы для SDRAM без терминаторов обходятся, по крайней мере в нескольких схемах бордов я их не увидел.
А на какой минимальной частоте можно использовать, например 100МГц-ую SDRAM? Вроде бы есть ограничение минимальной частоты.
Go to the top of the page
 
+Quote Post
torik
сообщение Aug 25 2009, 04:53
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Цитата
Да ничем не плох. Но для него нужен контроллер, а для SRAM контроллер не нужен.

Контроллер есть готовый в SOPC...

Цитата
Также для SDRAM, скорее всего, придется ставить терминирующие резсторы.

Для 16-битной я не ставил терминирующих резисторов, не выравнивал длины (и так проводники короткие получились) и при этом все заработало на 100МГц сразу же.
Для 32-битной выравнивал длины и ставил резисторы - раскачегаривается до 200 МГц.

Цитата
Вроде бы есть ограничение минимальной частоты.

Работал начиная от 50 МГц, проблем не замечал.


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Aug 25 2009, 10:06
Сообщение #12


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(torik @ Aug 25 2009, 08:53) *
Контроллер есть готовый в SOPC...

Есть, но это дополнительный расход ресурсов ПЛИС (хоть и не большой).
А вообще-то в задаче спрашивалось про подключение асинхронной SRAM, а не о том, какая память круче. smile.gif
Чего бодаться-то? beer.gif


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
torik
сообщение Aug 25 2009, 12:14
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 2 113
Регистрация: 1-11-05
Пользователь №: 10 359



Действительно, не будем бодаться beer.gif


--------------------
Быть. torizin-liteha@yandex.ru
Go to the top of the page
 
+Quote Post
confflex
сообщение Aug 25 2009, 16:55
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 19-11-05
Пользователь №: 11 082



Большое спасибо всем ответившим! Вроде стало понемногу проясняться!
Go to the top of the page
 
+Quote Post
EvgenyNik
сообщение Aug 27 2009, 07:24
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 597
Регистрация: 24-05-06
Из: г. Чебоксары
Пользователь №: 17 402



Цитата
Для ее подключения используется Avalon Tristate bridge и модуль Tristate Slave (нужной разрядности), который выбирается в компонент эдиторе из заготовок (Template).

А таким же путём, но контроллер CFI (из вкладки Memories & memory controllers > Flash > Flash memory) для подключения к нему SRAM приспособить нельзя? Разрядность настраивается, времянки - тоже...


--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
Go to the top of the page
 
+Quote Post

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

 


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


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