|
помогите разобраться с кодом |
|
|
|
Sep 30 2015, 09:05
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 1-04-15
Из: Тверь
Пользователь №: 86 019

|
Видимо эти 2 таблицы это таблица значений и таблица коэфициентов для линейной поправки. Если берем 16 бит фазы phase[15:0], то старшие 8 бит будут использоваться для выбора значений из таблиц, а младшие 8 бит для линейной поправки. Если таблица A - значения, а B - коэфициенты, то что-то типа: A[phase[15:8]] + B[phase[15:8]]*phase[7:0]/256
|
|
|
|
|
Oct 12 2015, 08:25
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 1-04-15
Из: Тверь
Пользователь №: 86 019

|
Ну, я это вариант не предлагал, а только написал свое объяснение (возможно, неточное или даже неверное  ). Кстати, в варианте: A[phase[15:8]] + (A[phase[15:8] + 1'b1] - A[phase[15:8]]) * phase[7:0] / 256 будет два обращения к памяти по адресу phase[15:8] и phase[15:8] + 1'b1, соответственно, нужно либо 2 такта, либо опять две таблицы. 4 счетчика, видимо (я опять только предполагаю), относится к самому началу темы, когда ТС спрашивал, зачем делить один счетчик на 10 маленьких.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|