-
SerDes 2/24MS Dairy/MS study 2023. 2. 24. 17:57반응형
equalizer를 이전에 보면서 filter 얘기가 나오서 digital signal processing에 대해서 간략하게나마 공부를 해야할 것 같아서 filter에 대한 것 위주로 찾아보게 되었다.
우선 modulation에 대해서 간략히 공부를 하였다.
IQ modulation이 기초로 필요했는데, 이 부분의 핵심은 바로 sin과 cos으로 모든 신호를 표현할 수 있다는 것이다. 직교성이라는 특징때문이다. 위와 같이 동위상 성분과, 직교 성분으로 나타낼 수 있는 것이다.
변조는 보내자고하는 정보 신호로 반송파(carrier)의 진폭/주파수/위상 을 변화시켜서 정보 신호를 spectrum이 높은 쪽으로 보내는 것이다.
그런 변조 방식에는 ASK, FSK, PSK, QAM 등이 있다.
ASK의 경우는 amplitude를 변조하는 것으로 0과 1의 데이터에 따라서 carrier의 진폭을 변화하는 것이다. 변화를 시키면 같은 I축에 존재하고 위상차가 존재하지 않는다. (데이터 0과 1을 표현하는 방식이 amplitude 값에 따라서 달라지는 것)
FSK는 frequency, PSK는 phase, QAM은 phase+amplitude를 통해서 0과 1의 값을 해당하는 변조로 표시하는 것이다.
BPSK는 binary PSK로 0과 1을 표현하는데 phase가 180도 차이가 난다. amplitude도 동일하다.
거기서 발전이 돼서 QPSK(quadrature phase shift keying)이 나온다. 4개의 digital signal symbol을 나타낼 수 있고, 각 위상이 pi/2 만큼씩 차이가 난다. IQ그래프로 보면 원을 기준으로 4등분 해서 값을 표현한다.
그렇게 8-PSK까지 가려니까 위상만으로는 값을 구분하기 힘들어서 나온 것이 QAM modulation이다. I와 Q가 독립적으로 구분이 되어서 16QAM은 4bit를 표현할 수 있는 것이다. 위의 사진처럼 data의 표현하는 양이 많아지는 것이다.
DSP는 digital signal processing으로 ADC를 지나 data 연산을 위해서 filter나 spectrum 분석등을 FPGA에서 진행을 하는 신호처리를 얘기한다.
그 중에서 FIR filter와 IIR filter를 얘기하려고 한다.
FIR filter부터 보면 N차 FIR filter로 차등방정식이 소개되어있다. 이는 내가 원하는 조건에 맞춰서 N과 필터계수를 설계하면 되는 것이다.
FIR은 선형위상의 특성을 가지고 있으며, 이를 위해서 대칭 계수를 가져야한다.
선형위상은 기울기가 시간 지연을 나타내고, 이게 sample 지연과 직결이 되니 일정한 것이 좋다. (이부분은 내가 equalizer를 보면서 다시 볼 필요도 있을 것 같다)
그래서 설계 계수의 대칭에 따라서 가능한 필터가 다르다.
그래서 아마 이런 설계를 digital화하면서 조합으로 EQ를 설계하는게 아닐까 싶다.
FIR을 구현하는 방법으로 window방식이 있다.
사실 이상적인 fitler의 임펄스 응답은 구현이 힘들다. 그래서 무한한 임퍼스 수를 N개로 window로 잘라서 사용을 한다. 그 다음 과거의 입력은 말이 안되니까 우측 이동을 해서 필터를 근사화하는 것이다.
N의 개수에 (차수에 따라) 따라서 필터의 ripple 정도가 다르게 된다.
window의 종류도 다양하고, 보통 hamming window를 사용한다.
matlab에서 이를 함수로 구현이 되어서 사용이 가능하다. 위와 같이 fir1을 이용해서 차수, 차단주파수, 필터 유형, window 를 지정해서 설계가 가능하다. 이를 시각화하기 위해서 freqz 함수로 그리면 된다. 결과를 보면 선형 위상의 특징을 볼 수 있다.
cf) 3dB감소는 절반의 신호 감소
주파수 샘플링 방식으로 필터를 설계가 가능한데, 이는 임의의 filter를 설계가 가능하다. fir2 함수로 설계를 할 수 있다.
또 다른 방식으로 최적 등맥동 설계법이다. 이는 sampling 설계법과 반대로 맥동의 (ripple) 크기가 동일하다는 것이다.
오차를 최소화하는 transfer function을 수치적으로 구해서 sampling 방식에 비해 낮은 차수로 설계가 가능하다.
realization은 수식을 block화를 한 것인데, 이로 digital 설계가 가능한 것이다.
이어서 IIR filter를 보면 infinite impulse response로 무한한 impulse가 존재한다. 그래서 feedback구조로 구현이 되고, 장점으로 노이즈에 강하고 비선형왜곡이 적은 것이다. 단점은 시스템이 unstable 해질 수 있다는 것이다.
FIR대비 적은 소자로 동일한 특성을 만들 수 있지만 finite wordlength effect의 영향도 크고 선형위상 구현이 힘들다.
finite wordlength effect는 무한의 값이 유한치로 되면서 주파수응답이 변하는 것이다. 즉 pole/zero가 살짝 바뀌는 것이다.
IIR도 마찬가지로 차등방정식과 특성방정식이 존재하고, 필터계수과 feedback까지 포함이 돼서 2가지가 존재한다. 그래서 ripple의 정도와 stopband의 감쇄량의 설정이 가능하다.
IIR filter는 analog filter를 디지털 filter로 변환하는 과정이 필요하다. 그 방식으로 2가지가 있고, 식에 맞춰서 변환을 하는 것이다. pre-wrapping이 포함된 수식으로 왜곡을 방지하기 위해서 들어가며, 아날로그와 차이가 생길 수 있다.
matlab으로 마찬가지로 구현이 가능하고 z-plane으로 stability도 확인가능하다.
또 realization으로 block화를 하는 방식도 여럿 있는 것을 볼 수 있다.
이어서 simulink에 대해서 간단히 만져보았다.
그리고 FFT에 대해서도 살펴보았다. discrete fourier transform으로 주파수축으로 보는 것을 말한다. 즉 얘기를 해보자면, 위와 같이 여러 신호가 섞였을 때의 신호의 주파수를 알 수 있게끔 분석을 하는 것이다.
'MS Dairy > MS study' 카테고리의 다른 글
SerDes 3/2 (0) 2023.03.02 SerDes 2/22 (0) 2023.02.22 SerDes 2/21 (0) 2023.02.21 Power Integrity - real world (0) 2023.02.16 Power Integrity - overview (0) 2023.02.16