Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
  • Страница:
  • 1

ТЕМА: Совмещение чтения из файла и сдвига регистра.

Совмещение чтения из файла и сдвига регистра. 7 года 5 мес. назад #7154

  • Bermud
  • Bermud аватар Автор темы
  • Не в сети
  • Новый участник
  • Новый участник
  • Сообщений: 7
  • Спасибо получено: 0
День добрый!
Подскажите как возможно решить такую хоть и тривиальную задачу:
Существует файл наполненный N количеством чисел с него происходит чтение этих чисел, и после поступление в сумматор и "вычитатор" таким образом, что берутся 5 чисел и "1", "2","4","5" поступают в сумматор, а "3" (как среднее значение) идёт в "вычитатор" и после всех манипуляций и получения ответа с этих 5 чисел, происходит смещение на 1 значение таким образом что это так называемое окно берёт уже не "1","2","4","5" и отсылает их в сумматор, а "3" в "вычитатор", а уже "2","3","5","6" идут в сумматор, а "4" идёт в "вычитатор".
Я так предполагаю что это необходимо сделать через сдвиг регистра, но я просто не представляю как это реализовать и как совместить.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Последнее редактирование: от Bermud.

Совмещение чтения из файла и сдвига регистра. 7 года 5 мес. назад #7157

  • Meteor
  • Meteor аватар
  • Не в сети
  • Осваиваюсь на форуме
  • Осваиваюсь на форуме
  • Сообщений: 31
  • Спасибо получено: 18
Я так понимаю задачка "учебная" и заключается в том, что бы научить Вас работать с ЯОА и при этом не будет реализовываться в "железе".(файлы нужны для симуляции, а не для синтеза в плис)
Если это действительно так, то в рамках vhdl есть пакет std_textio, с функциями чтения и записи файлов. Вам надо:
1) создать проект с усреднителем (сумматор и вычитатель)
2) создать проект теста (тестбенч в народе)
3) научиться открывать и считывать файлы в тесте и подсовывать эти данные усреднителю.
Если же задача стоит реализовать в железке, то боюсь единственный вариант - записать содержимое файла в файл постоянной памяти, и далее в проекте читать из памяти и подсовывать усреднителю.
Есть еще один вариант для реализации в железе, то же память, но оперативная и двухпортовая. Далееделается узел записи данных в ОЗУ (прием от ПК по какому-нибудь UARTу, с декодированием протокола верхнего уровня), далее расчет, запись результатов в другую/другие ОЗУ, и последующая выдача в ПК (опять протокол верхнего уровня, программка на ПК) Но такие решения делаются с пониманием и энтузиазмом.
Спасибо сказали: Bermud

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Страница:
  • 1
Время создания страницы: 0.090 секунд
Работает на Kunena форум