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

Имеется проект на NiosII c SDRAM. В SDRAM организован кадровый буфер. Поставлена задача считать данные с АЦП, записать данные в SDRAM и затем отобразить их на мониторе. Возник вопрос каким образом тактировать АЦП и считывать данные с него? Просто через PIO? Какой способ эффективнее для решения такой задачи?

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


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

если у вас есть ниос, то у вас и остальная FPGA имеется. Естественно сделать автономный блок сбора данных с АЦП обычно предпочтительнее чем процом его дергать.

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


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

Естественно сделать автономный блок сбора данных с АЦП обычно предпочтительнее чем процом его дергать.

А как данные с автономного блока попадут в Nios и далее в SDRAM? Через чтение PIO?

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


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

А как данные с автономного блока попадут в Nios и далее в SDRAM? Через чтение PIO?

 

Avalon Master

 

пишите в SDRAM (типа DMA), выставляете прерывание по окончании записи, а в Nios считываете данные из SDRAM

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


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

Avalon Master

 

пишите в SDRAM (типа DMA), выставляете прерывание по окончании записи, а в Nios считываете данные из SDRAM

Неподскажите пример подобной реализации?

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


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

Неподскажите пример подобной реализации?

 

думаю разберетесь

 

только в mm_bridge

 

s0 - надо export

m0 - на s1 sdram контроллера

adc2sdram.rar

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


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

если не надо буфера данных собирать можно и без ДМА просто ниосом читать. Из ниоса выходит системная шина, ее надо поддержать в автономном блоке.

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


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

если не надо буфера данных собирать можно и без ДМА просто ниосом читать. Из ниоса выходит системная шина, ее надо поддержать в автономном блоке.

 

если АЦП медленный)))

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


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

если автономный блок проводит первичную обработку, фильтрацию и децимацию данных то иногда и для быстрых АЦП ДМА не понадобится.

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


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

пишите в SDRAM (типа DMA), выставляете прерывание по окончании записи

Т.е. запись в SDRAM и прерывание нужно производить без участия NIOS?

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


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

Т.е. запись в SDRAM и прерывание нужно производить без участия NIOS?

 

да, на "железном" уровне

 

не нужно, а можно))) это как захочется

 

только не забудь прерывание снимать из NIOS (они там уровневые)

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


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

да, на "железном" уровне

Тогда выходит нужно будет ещё и контроллер SDRAM написать в железе

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


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

Тогда выходит нужно будет ещё и контроллер SDRAM написать в железе

 

нет не надо

я же прикладыва qsys

 

там все есть

общение из FPGA с SDRAM через mm_bridge (Avalon-MM Pipeline Bridge)

 

а шина авалон - простейшая

 

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


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

нет не надо

я же прикладыва qsys

 

там все есть

общение из FPGA с SDRAM через mm_bridge (Avalon-MM Pipeline Bridge)

 

а шина авалон - простейшая

 

А теперь все сразу и заново. Есть АЦП, с которого данные считываются автономным блоком, далее автономный блок передает данные в Nios через Avalon Master. Nios через какой-то mm_bridge записывает данные в SDRAM, а потом опять Nios читает данные из SDRAM. Так?

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


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

А теперь все сразу и заново. Есть АЦП, с которого данные считываются автономным блоком, далее автономный блок передает данные в Nios через Avalon Master. Nios через какой-то mm_bridge записывает данные в SDRAM, а потом опять Nios читает данные из SDRAM. Так?

 

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

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


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

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

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

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

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

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

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

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

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

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