Jump to content
    

SOPC Builder и его возможности

Всем привет.

 

Уважаемые специалисты :), я тут попробовал осуществлять запись в SDRAM память и читать ее для контроля. Для этого создал простенький тестовый проектик.

В нем SOPC Builder система состоит из контроллера памяти и самодельного мастера.

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

 

Но увы, со стороны мастера Авалон никакой реакции сигналов waitrequest, datavalid...

 

Кому не лень - поглядите пожалуйста, в чем я там ошибся. Наверняка с тактовыми чего напутал или еще что, мне не очевидное. На всякий случай скажу, что делаю на отладке DK-CYCII-2C20N...

 

Архив проекта прилагаю, сменить разрешение на qar

nios.rar

Share this post


Link to post
Share on other sites

1. не надо переименовывать qar в rar

2. ваш проект почему-то не открывается в 72

3. вы не приложили компонент для sopc_builder.

4. По делу:

4.1 какие значения принимают сигналы read_n и write_n после сброса? скорее всего ваш модуль пытается одновременно читать и писать.

4.2 на сигнал записи можно завести сигнал empty fifo, а waitrequest шины завести на сингал rdreq (у меня один модуль примерно так скидывает данные в озу)

4.3 не обязательно для изучения использовать sdram память, можно поэекпериментировать/помоделировать на обычной памяти(onchip).

Share this post


Link to post
Share on other sites

Привет!

1) переименовал qar в rar, т.к. здесь на форуме не дает выложить файл с другим разширением

2) Не открывается в 7.2? У меня 6.1, вроде не должно быть проблем

3) неприложил... походу он в архив не попал, щас переархивирую все

4) после сброса read_n и write_n равны "1". Вроде не одновременно запись/чтение

5) Я по сигналу empty fifo даю запрос на чтение, далее на запись и держу пока установлен empty fifo (он не бывает установлен судя по сигнал табу)

6) Меня ооочень интересует sdram, а например с PIO я уже пробовал - нормально все.

 

Итак, бросаю архив nios2.rar - просто rar архив паки с проектом, надо только разархивировать... теперь там и компонент для sopc_builder.

Посмотрите, пожалуйста, может в компоненте чего не так...

 

 

А еще, когда смотрю сигналтабом, при записи через 6 тактов на выходе readdata мастерпорта появляются записываемые данные!?!? Как так, при этом сигнал read_n держится в "1"...

nios2.rar

Share this post


Link to post
Share on other sites

Монолог продолжается... :( :)

 

Заново создал систему SOPC Builder, устранил ошибку (вместа ресета на модуль было подано фиг знает что). Добавил кроме памяти еще и PIO для наглядности.

Начало записывать память и читать ее...

 

Неужели никому неинтересно, или я настолько отстал от жизни, что для всех это пройденный этап?

Share this post


Link to post
Share on other sites

Монолог продолжается... :( :)

 

Заново создал систему SOPC Builder, устранил ошибку (вместа ресета на модуль было подано фиг знает что). Добавил кроме памяти еще и PIO для наглядности.

Начало записывать память и читать ее...

 

Неужели никому неинтересно, или я настолько отстал от жизни, что для всех это пройденный этап?

Ну, все когда-то начинали. :) лично я за вас радуюсь.

Share this post


Link to post
Share on other sites

Монолог продолжается... :( :)

 

Заново создал систему SOPC Builder, устранил ошибку (вместа ресета на модуль было подано фиг знает что). Добавил кроме памяти еще и PIO для наглядности.

Начало записывать память и читать ее...

 

Неужели никому неинтересно, или я настолько отстал от жизни, что для всех это пройденный этап?

ну почему же очень интересно. :a14: не понятно просто что Вы ожидали, какой реакции :)

а чтобы работа Ваша не была проделана зря для сообщества, взяли бы какой нить фак написали.

Share this post


Link to post
Share on other sites

ну почему же очень интересно. :a14: не понятно просто что Вы ожидали, какой реакции :)

а чтобы работа Ваша не была проделана зря для сообщества, взяли бы какой нить фак написали.

Угу. Если возьмете на себя труд начать, вспомнить возникавшие вопросы и взяться за составления, я присоединюсь в написании - попробую и поотвечать, и свои трудности вспомнить.

Share this post


Link to post
Share on other sites

Ага, только бы знать как этот ваш "фак" писать.

Еще могу выложить перевод по SOPC Builder - это конечно громко сказано, да и не весь раздел...

Share this post


Link to post
Share on other sites

Ага, только бы знать как этот ваш "фак" писать.

Еще могу выложить перевод по SOPC Builder - это конечно громко сказано, да и не весь раздел...

Мне вообще то интересно. Вот как сделать мастера для rs232? Туториал на Sopc Builder пока не читал, но прочту сейчас же. :) Читал только Introduction to the Altera Sopc Bulder.

 

Решил попробовать простейший эксперимент: создаем свой собственный компонент без HDL файлов; сигналы мастера запись/данные(10 бит), clk, reset, адрес.

 

Это где создаете компонент в квартусе или сопсе?

 

 

 

 

 

Мне вообще то интересно. Вот как сделать мастера для rs232? Туториал на Sopc Builder пока не читал, но прочту сейчас же. :) Читал только Introduction to the Altera Sopc Bulder.

Это где создаете компонент в квартусе или сопсе?

используйте мастер редактора компонентов SOPC Builder, чтобы определить интерфейс и упаковать ваши файлы HDL в компонент SOPC Builder

 

И еще один вопрос. Вместо того чтобы писать мастер порт возьму готовый, например DMA (у него мастер порт есть), а слейвом будет RS232. Или DMA тоже потребует лицензии?

 

Фокус с DMA не прошел, он сам требует авалон мастера. Прийдется самому делать мастера. :twak: буду читать дальше.

Share this post


Link to post
Share on other sites

Ради rs232 шину Авалон воспроизводить. Ниос задействовать.

Наверно это все же перебор.

проектов отврытых и так море.

Share this post


Link to post
Share on other sites

Ради rs232 шину Авалон воспроизводить. Ниос задействовать.

Наверно это все же перебор.

проектов отврытых и так море.

Да проектов реализации rs232 на *hdl и другими способами море. Но посмотрите на возможности SOPC, грех не использовать их. Это начальное изучение SOPC. Потом точно знаю, будет усложнение, добавление новых интерфейсов. Почти все интерфейсы, что мне нужны, в SOPC есть.

Share this post


Link to post
Share on other sites

1) Разберитесь что у вас там с лицензией - полная лицензия на квартус означает лицензию на SOPC кроме процессора nios

 

2) В SOPC Builder для создания внешнего интерфейса типа мастер:

- жмем file->new component

- 1, 2 вкладки просто пропускаем

- во вкладке signals выбираем templates->add типичный набор мастера

- выбираем ширину шины адреса и данных

- в принципе можно жать finish если не говорит ни о каких проблемах.

 

3) добавляем в SOPC самодельный компонент и RS232, пояляется связь между ними... Теперь можно жать кнопку генерации

 

4) в проекте квартусовом смотрите - у созданной системы быть входы/выходы оноименные с мастеринтерфейсом самодельным и rs232

 

5) читаете в хандбуке про RS232 компонент и пользуетесь им как написано.

 

Про шину авалон можно почитать даже по-русски (основы можно понять вполне) - http://www.altera.ru/cgi-bin/go?519

Про сопс билдер я даже где-т тут выкладывал что-то вроде перевода... http://electronix.ru/forum/index.php?showtopic=40086

Про все, само сабой лучше читать в оригинале

Share this post


Link to post
Share on other sites

1) Разберитесь что у вас там с лицензией - полная лицензия на квартус означает лицензию на SOPC кроме процессора nios

фул, тут все в порядке :)

 

2) В SOPC Builder для создания внешнего интерфейса типа мастер:

- жмем file->new component

- 1, 2 вкладки просто пропускаем

- во вкладке signals выбираем templates->add типичный набор мастера

- выбираем ширину шины адреса и данных

- в принципе можно жать finish если не говорит ни о каких проблемах.

 

Когда выбираешь мастера, предупреждения возникают. Читаешь их и делаешь то что требуется. Мастера научился делать. Сейчас делаю тот пример, что вы в начале привели с Pio. Только там не понятно как шину 10 разрядную сделали. Выбирать приходится из 8, 16 и т.д

 

3) добавляем в SOPC самодельный компонент и RS232, пояляется связь между ними... Теперь можно жать кнопку генерации

 

4) в проекте квартусовом смотрите - у созданной системы быть входы/выходы оноименные с мастеринтерфейсом самодельным и rs232

 

5) читаете в хандбуке про RS232 компонент и пользуетесь им как написано.

до этого еще не дошел, делаю ваш пример. если с Pio получится все ( пока не получается там при первоначальной компиляции в квартусе возникает error, разбираюсь что за ошибка) то думаю не составит труда включить rs232.

Про шину авалон можно почитать даже по-русски (основы можно понять вполне) - http://www.altera.ru/cgi-bin/go?519

Про сопс билдер я даже где-т тут выкладывал что-то вроде перевода... http://electronix.ru/forum/index.php?showtopic=40086

Это все вчера нашел, до авалона дело не дошло. :twak: Туториал в оригинале даже не читал. :)

А вот перевод ваш прочитал вчера.

Share this post


Link to post
Share on other sites

В квартусе при первоначальной компиляции выдает error: Node instance "the_untitled" instantiates undefined entity "untitled". untitled - это он так изначально именует класс -component class name в Component Wizard.

Читаем лекарство CAUSE: You attempted to compile the current design, but the specified node instance instantiates the specified undefined entity.

ACTION: Make sure that the required user library paths are specified correctly. If the project contains EDIF Input Files (.edf), make sure that you specified the EDA synthesis tool settings correctly. Otherwise, define the specified entity or change the calling entity.

Ну и как корректно создать этот путь? Единственно где путь указывается это Component Wizard, все корректно там указано (путь к папке с проектом квартуса).

 

т.е project path

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...