Применить огибающую затухания к форме волны без умножения - PullRequest
2 голосов
/ 28 ноября 2011

Я пытаюсь применить огибающую затухания к синусоидальной форме волны, используя Verilog.Аппаратные ограничения не позволяют использовать умножение для простого умножения на конверт.Значения синуса и значения конверта, для которых я просто использую 1-exp (-x), хранятся в ПЗУ, чтобы ускорить все.

Прямо сейчас я просто вычисляю выходную выборку, вычитая экспоненциальное значение из значения синуса, если значение синуса больше.Если экспоненциальное значение больше значения синуса, выходная выборка равна нулю.Это работает довольно хорошо, но текущее экспоненциальное значение для вычитания должно модулироваться текущим местоположением на синусоиде, так что полное значение вычитается, когда синус максимален, и ноль вычитается, когда синус равен нулю.

Буду признателен за любые советы, которые может дать каждый, и, если потребуется, предоставлю более подробную информацию.Если это не подходящее место для вопросов Verilog, есть ли где-нибудь еще лучше?

Спасибо!

1 Ответ

1 голос
/ 27 января 2013

Если ваша FPGA не имеет аппаратного множителя, и если вы можете допустить некоторую задержку, вы можете захотеть реализовать простой множитель, используя накопитель масштаба.

...