Большое спасибо за замечания, обязательно исправлю и учту. Про блочную память слышал, просто в этом случае хотелось написать универсальное решение, которое на зависело бы от выбора производителя и модели ПЛИС, поэтому и пришлось прибегнуть к такому решению. Также не совсем было понятно, поддерживает ли IVerilog мегафункции как, например в Xilinx ISE.
Спасибо за комментарий. Да, верно. С одной оговоркой, что это — максимальная разрешающая способность для минимальной частоты сигнала на выходе. С ростом частоты аккумулятор фазы будет накапливаться всё быстрее, поэтому количество точек на период становится меньше, соответственно разрешающая способность тоже падает (сигнал на последнем рисунке меньше похож на синус и спектр его будет не идеальной «палкой» на частоте синуса). Возможно, неидеальность сигнала вследствие малого разрешения — это тот шум, о котором вы говорите, но не следует путать его с шумом квантования.
Параметры шума квантования определяются только разрядностью ЦАП, дисперсия = q^2/12, мат. ожидание = q/2, где q — шаг квантования (q=A/2^N), A — максимум напряжения, N — разрядность ЦАП.
Параметры шума квантования определяются только разрядностью ЦАП, дисперсия = q^2/12, мат. ожидание = q/2, где q — шаг квантования (q=A/2^N), A — максимум напряжения, N — разрядность ЦАП.