|
Как избавиться от ступеньки?, посмотрите модуль и тестбенч в приложении |
|
|
|
Aug 4 2010, 08:15
|
Частый гость
 
Группа: Участник
Сообщений: 103
Регистрация: 21-06-09
Пользователь №: 50 494

|
Добрый день. Не могу избавиться от ступеньки:
В приложении модуль и тесбенч к нему. Используются неблокирующие операторы, но почему результат появляется только на следующем фронте тактовой частоты? Где я неправ? Спасибо.
Quadrature_Modulator.v ( 3.19 килобайт )
Кол-во скачиваний: 264
QM_tb.v ( 1.57 килобайт )
Кол-во скачиваний: 170
|
|
|
|
|
 |
Ответов
|
Aug 4 2010, 14:04
|
Частый гость
 
Группа: Участник
Сообщений: 103
Регистрация: 21-06-09
Пользователь №: 50 494

|
Цитата(des333 @ Aug 4 2010, 13:32)  У меня в ответ вопрос - а какого результата Вы ждете? я хочу, чтобы по первому фронту с1 после выставления locked начинался прием данных data_gen и по этим данным формировались остальные сигналы. Я так понимаю, что неблокирующее присваивание работает сразу при применении, но не могу понять, почему при одном событии: Код always @(posedge c1 or posedge Reset) begin if (Reset) begin rSseq = 1'b0; rCseq = 1'b0; rSmod_seq = 1'b0; rCmod_seq = 1'b0; Qseq = 7'b1111110; Iseq = 7'b1110011; end else if (locked) begin Qseq = {Qseq[5:0], Qseq[6]}; Iseq = {Iseq[5:0], Iseq[6]}; rSseq = (oddOne && Qseq[0]) || (oddZero && Qseq[0]) || (evenOne && (~Qseq[0])) || (evenZero && (~Qseq[0])); rCseq = (oddOne && Iseq[0]) || (oddZero && Iseq[0]) || (evenOne && (~Iseq[0])) || (evenZero && (~Iseq[0])); rSmod_seq = (rSseq && oddClock) || (~oddClock && rCseq); rCmod_seq = (rSseq && ~oddClock) || (oddClock && rCseq); end end регистры Qseq и Iseq формируются как мне нужно (по первому фронту), а регистры rSseq, rCseq, rSmod_seq и rCmod_seq формируются на второй фронт с1. Хочу, чтобы они тоже формировались по первому фронту. Я не гуру, подскажите, где я заблуждаюсь? Спасибо.
|
|
|
|
|
Aug 4 2010, 14:26
|
Частый гость
 
Группа: Участник
Сообщений: 103
Регистрация: 21-06-09
Пользователь №: 50 494

|
Цитата(sazh @ Aug 4 2010, 18:18)  У Вас используется блокируещее присваивание, но не суть. У Вас по описанию две тактовые, да еще по фронтам. Поиграйте ими, посмотрите, что получиться. А лучше - один клок использовать. Да, я уже вычитал, что с термином ошибся. По тактовой с2 принимается информационный бит. А в информационном бите есть семь бит последовательности Баркера (частота с1).... Так что мне только попробовать с2 сделать из с1, но я мыслил, что эти частоты получу из PLL модуля.
|
|
|
|
Сообщений в этой теме
Shaienn Как избавиться от ступеньки? Aug 4 2010, 08:15 iosifk Цитата(Shaienn @ Aug 4 2010, 12:15) В при... Aug 4 2010, 08:37 sazh Цитата(iosifk @ Aug 4 2010, 11:37) У меня... Aug 4 2010, 09:16  iosifk Цитата(sazh @ Aug 4 2010, 13:16) Искал, н... Aug 4 2010, 09:44   sazh Цитата(iosifk @ Aug 4 2010, 12:44) http:/... Aug 4 2010, 10:07
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|