Kostochkin 0 Posted March 22, 2021 · Report post Здравствуйте. Я новичок в теме ЦОС. Но мне интересна данная тема. Хотел бы спросить знающих людей по поводу работы передатчика OFDM, без использования блоков коррекции ошибок. Передатчик состоит из модуля serial-to-parallel, допустим 16QAM, IFFT, допустим на 64 точки, DDS, два умножителя и сумматор. Преобразуем 1битный поток в 4битный поток с частотой в 4 раза ниже. 16QAM согласно сигнальному созвездию преобразует 4бита в пару числел I, Q значения которых могут быть: -3/-1/1/3. Далее накапливаем 64 пары чисел I, Q и подаём их на модуль IFFT и на выходе тоже имеем 64 пары чисел I, Q. Теперь последовательно одно за другим эти пары чисел умножаем на сгенерированный в DDS синус и косинус. Частота sin и cos должна быть намного ниже, чем частота битового потока на входе в передатчик (эта частота рассчитывается). На выходе имеем последовательно 64 значения (Q*sin + I*cos). Так же нужен защитный интервал перед каждым символом, длиной 1/8 или 1/16 от длины символа. Это конец каждого символа, например 1/8 от длины, копируется и вставляется в начало символа. В приёмнике защитный интервал отбрасывается. Если что не правильно, прошу поправить. Вопрос такой, а какие поворачивающие коэффициенты надо брать для блока IFFT? И какой размерности числа I, Q надо подавать на модуль IFFT? Надо ли перед подачей чисел I, Q на модуль IFFT умножать их на коэффициент для 16QAM c = (1/√ 10)? Благодарю. Quote Ответить с цитированием Share this post Link to post Share on other sites
Grizzly 0 Posted March 22, 2021 · Report post 38 минут назад, Kostochkin сказал: Теперь последовательно одно за другим эти пары чисел умножаем на сгенерированный в DDS синус и косинус. Частота sin и cos должна быть намного ниже, чем частота битового потока на входе в передатчик (эта частота рассчитывается). На выходе имеем последовательно 64 значения (Q*sin + I*cos). Это лишнее. 38 минут назад, Kostochkin сказал: Вопрос такой, а какие поворачивающие коэффициенты надо брать для блока IFFT? Рассчитываются в виде матрицы FFT: https://www.mathworks.com/help/signal/ref/dftmtx.html Для iift там же есть формула с комплексным сопряжением и нормированием. 41 минуту назад, Kostochkin сказал: И какой размерности числа I, Q надо подавать на модуль IFFT? Все зависит от того, какая у вас реализация. Например, на DSP типичная разрядность 16 бит. Для QAM-16 должно хватить и 8 бит. 44 минуты назад, Kostochkin сказал: Надо ли перед подачей чисел I, Q на модуль IFFT умножать их на коэффициент для 16QAM c = (1/√ 10)? Вовсе не обязательно. Для реализации проще, если у вас будет целочисленная сетка. 46 минут назад, Kostochkin сказал: длиной 1/8 или 1/16 Могут быть и другие значения. Длина определяется характеристикой канала, для которого создаётся система связи. Quote Ответить с цитированием Share this post Link to post Share on other sites
Kostochkin 0 Posted March 23, 2021 · Report post 8 hours ago, Grizzly said: Это лишнее. Рассчитываются в виде матрицы FFT: https://www.mathworks.com/help/signal/ref/dftmtx.html Для iift там же есть формула с комплексным сопряжением и нормированием. Все зависит от того, какая у вас реализация. Например, на DSP типичная разрядность 16 бит. Для QAM-16 должно хватить и 8 бит. Вовсе не обязательно. Для реализации проще, если у вас будет целочисленная сетка. Могут быть и другие значения. Длина определяется характеристикой канала, для которого создаётся система связи. Благодарю. А почему часть DDS лишняя? Выполняется в аналоговом тракте? И всё же хочу еще спросить. Длина одно символа равна целому числу периодов синусоиды или косинусоиды. А какое число периодов лучше брать за один символ? 1? Quote Ответить с цитированием Share this post Link to post Share on other sites
Grizzly 0 Posted March 23, 2021 · Report post А зачем требуется DDS? Вы формируете видеосигнал в цифре, а перенос на несущую будет, как вы правильно сказали, в аналоге. Длина OFDM символа никак не связана с периодом несущей. Quote Ответить с цитированием Share this post Link to post Share on other sites
Kostochkin 0 Posted March 23, 2021 · Report post 2 hours ago, Grizzly said: А зачем требуется DDS? Вы формируете видеосигнал в цифре, а перенос на несущую будет, как вы правильно сказали, в аналоге. Длина OFDM символа никак не связана с периодом несущей. Хорошо, если у меня битовый поток на входе с частотой 1МГц, 64 выборки, значит длина символа равна 64 мкс? Какая тогда будет частота несущего колебания? как ее подобрать или рассчитать? Quote Ответить с цитированием Share this post Link to post Share on other sites
quato_a 0 Posted March 23, 2021 · Report post 41 minutes ago, Kostochkin said: Хорошо, если у меня битовый поток на входе с частотой 1МГц, 64 выборки, значит длина символа равна 64 мкс? Да, в этом случае 1 МГц - это частота дискретизации (fs). 43 minutes ago, Kostochkin said: Какая тогда будет частота несущего колебания? как ее подобрать или рассчитать? Тут формируется так называемый baseband сигнал в рамках ограничения частоты дискретизации от -fs/2 до +fs/2. Формируемый сигнал никак не связан с частотой несущей. На несущую переносится сигнал уже после ЦАП посредством модулятора/смесителя. Если вы спрашиваете про колебания сигнала поднесущих OFDM, то их частоты зависят от порядкового номера поднесущей в частотной сетке IFFT. Если fs = 1 МГц, а IFFT размером в 64, то шаг сетки частот поднесущих равен dF = 1 МГц / 64 = 15,625 кГц. То есть 0-я поднесущая имеет частоту DC - 0 Гц, 1-я - 15,625 кГц, 2-я - 31,25 кГц, ... 63-я - 984,375 кГц. Quote Ответить с цитированием Share this post Link to post Share on other sites
Kostochkin 0 Posted March 23, 2021 · Report post Благодарю всех за ответы. Quote Ответить с цитированием Share this post Link to post Share on other sites
dragonfly 0 Posted March 24, 2021 · Report post On 3/23/2021 at 12:56 PM, Kostochkin said: Хорошо, если у меня битовый поток на входе с частотой 1МГц, 64 выборки, значит длина символа равна 64 мкс? в 4 раза больше в Вашем случае (т.к. QAM16) + циклический префикс/суффикс Quote Ответить с цитированием Share this post Link to post Share on other sites