C++의 SDR DVB-T2 μˆ˜μ‹ κΈ°

μ†Œν”„νŠΈμ›¨μ–΄ μ •μ˜ λΌλ””μ˜€(Software Defined Radio)λŠ” μ‹€μ œλ‘œ 건강에 쒋은 κΈˆμ† μž‘μ—…μ„ ν”„λ‘œκ·Έλž˜λ°μ˜ 골치 μ•„ν”ˆ μž‘μ—…μœΌλ‘œ λŒ€μ²΄ν•˜λŠ” λ°©λ²•μž…λ‹ˆλ‹€. SDR은 큰 미래λ₯Ό μ˜ˆμΈ‘ν•˜λ©° μ£Όμš” 이점은 무선 ν”„λ‘œν† μ½œ κ΅¬ν˜„μ— λŒ€ν•œ μ œν•œμ„ μ œκ±°ν•˜λŠ” κ²ƒμœΌλ‘œ κ°„μ£Όλ©λ‹ˆλ‹€. SDR λ°©μ‹μ—μ„œλ§Œ κ°€λŠ₯ν•œ OFDM(Orthogonal Frequency-Division Multiplexing) λ³€μ‘° 방식이 κ·Έ μ˜ˆμž…λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ SDRμ—λŠ” μ΅œμ†Œν•œμ˜ λ…Έλ ₯으둜 μž„μ˜μ˜ μ§€μ μ—μ„œ μ‹ ν˜Έλ₯Ό μ œμ–΄ν•˜κ³  μ‹œκ°ν™”ν•  수 μžˆλŠ” μˆœμˆ˜ν•œ μ—”μ§€λ‹ˆμ–΄λ§ κΈ°νšŒκ°€ ν•˜λ‚˜ 더 μžˆμŠ΅λ‹ˆλ‹€.

ν₯미둜운 톡신 ν‘œμ€€ 쀑 ν•˜λ‚˜λŠ” μ§€μƒνŒŒ μ§€μƒνŒŒ TV DVB-T2μž…λ‹ˆλ‹€.
무엇을 μœ„ν•΄? λ¬Όλ‘  μΌμ–΄λ‚˜μ§€ μ•Šκ³ λ„ TVλ₯Ό μΌ€ 수 μžˆμ§€λ§Œ κ±°κΈ°μ—λŠ” λ³Ό 것이 μ „ν˜€ μ—†μœΌλ©° 이것은 더 이상 λ‚΄ 의견이 μ•„λ‹ˆλΌ μ˜ν•™μ  μ‚¬μ‹€μž…λ‹ˆλ‹€.

DVB-T2λŠ” λ‹€μŒμ„ ν¬ν•¨ν•˜μ—¬ 맀우 κ΄‘λ²”μœ„ν•œ κΈ°λŠ₯을 갖도둝 μ„€κ³„λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

  • μ‹€λ‚΄ μ‘μš©
  • QPSKμ—μ„œ 256QAM으둜 λ³€μ‘°
  • 1,7MHz~8MHz의 λŒ€μ—­ν­

λ‚˜λŠ” SDR 원리λ₯Ό μ‚¬μš©ν•˜μ—¬ λ””μ§€ν„Έ TVλ₯Ό μˆ˜μ‹ ν•œ κ²½ν—˜μ΄ μžˆμŠ΅λ‹ˆλ‹€. DVB-T ν‘œμ€€μ€ 잘 μ•Œλ €μ§„ GNURadio ν”„λ‘œμ νŠΈμ— ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. DVB-T2 ν‘œμ€€μ„ μœ„ν•œ gr-dvbs2rx 블둝(λͺ¨λ‘ λ™μΌν•œ GNURadio에 λŒ€ν•œ)이 μžˆμ§€λ§Œ μ˜ˆλΉ„ μ‹ ν˜Έ 동기화가 ν•„μš”ν•˜λ©° μ΄λŠ” κ³ λ¬΄μ μž…λ‹ˆλ‹€(Ron Economosμ—κ²Œ νŠΉλ³„νžˆ κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€).

μš°λ¦¬κ°€ κ°€μ§„ 것.

전솑은 μžμ„Ένžˆ μ„€λͺ…ν•˜μ§€λ§Œ μˆ˜μ‹ μ€ μžμ„Ένžˆ μ„€λͺ…ν•˜μ§€ μ•ŠλŠ” ETSI EN 302 755 ν‘œμ€€μ΄ μžˆμŠ΅λ‹ˆλ‹€.

μ‹ ν˜ΈλŠ” 9,14285714285714285714 MHz의 μƒ˜ν”Œλ§ 주파수둜 λ°©μ†‘λ˜κ³  있으며 32768 MHZ λŒ€μ—­μ—μ„œ 8 캐리어λ₯Ό μ‚¬μš©ν•˜μ—¬ COFDM으둜 λ³€μ‘°λ©λ‹ˆλ‹€.

둜컬 λ°œμ§„κΈ°μ˜ 직λ₯˜(DC) μ˜€ν”„μ…‹κ³Ό "λˆ„μ„€"을 μ œκ±°ν•˜λ €λ©΄ μƒ˜ν”Œλ§ 주파수λ₯Ό 두 배둜 늘리고(아무 것도 μžƒμ§€ μ•Šλ„λ‘) 쀑간 μ£ΌνŒŒμˆ˜μ—μ„œ 더 λ§Žμ€ λŒ€μ—­ν­(μŠˆνΌν—€ν…Œλ‘œλ‹€μΈ μˆ˜μ‹ )을 μ‚¬μš©ν•˜μ—¬ μ΄λŸ¬ν•œ μ‹ ν˜Έλ₯Ό μˆ˜μ‹ ν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. (LO)λ₯Ό μˆ˜μ‹ κΈ° μž…λ ₯에 μ—°κ²°ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ 쑰건을 μΆ©μ‘±ν•˜λŠ” μž₯μΉ˜λŠ” λ‹¨μˆœνžˆ ν˜ΈκΈ°μ‹¬μ„ κ°–κΈ°μ—λŠ” λ„ˆλ¬΄ λΉ„μŒ‰λ‹ˆλ‹€.

10Msps 10bitλ₯Ό μ‚¬μš©ν•˜λŠ” SdrPlay λ˜λŠ” λΉ„μŠ·ν•œ νŠΉμ„±μ„ κ°€μ§„ AirSpyκ°€ 훨씬 μ €λ ΄ν•©λ‹ˆλ‹€. μ—¬κΈ°μ„œ μƒ˜ν”Œλ§ 주파수λ₯Ό 두 배둜 λŠ˜λ¦¬λŠ” 것은 의문의 μ—¬μ§€κ°€ μ—†μœΌλ©° μˆ˜μ‹ μ€ 직접 λ³€ν™˜(Zero IF)을 ν†΅ν•΄μ„œλ§Œ μˆ˜ν–‰λ  수 μžˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ (κΈˆμ „μ μΈ 이유둜) μš°λ¦¬λŠ” μ΅œμ†Œν•œμ˜ ν•˜λ“œμ›¨μ–΄ λ³€ν™˜μ„ 톡해 "μˆœμˆ˜ν•œ" SDR을 μ§€μ§€ν•˜λŠ” μͺ½μœΌλ‘œ μ „ν™˜ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

두 κ°€μ§€ 문제λ₯Ό ν•΄κ²°ν•΄μ•Ό ν–ˆμŠ΅λ‹ˆλ‹€.

  1. 동기화. μ •ν™•ν•œ μœ„μƒ 정확도 RF νŽΈμ°¨μ™€ μƒ˜ν”Œλ§ 주파수 편차λ₯Ό μ•Œμ•„λ³΄μ„Έμš”.
  2. DVB-T2 ν‘œμ€€μ„ 거꾸둜 λ‹€μ‹œ μž‘μ„±ν•©λ‹ˆλ‹€.

두 번째 μž‘μ—…μ—λŠ” 훨씬 더 λ§Žμ€ μ½”λ“œκ°€ ν•„μš”ν•˜μ§€λ§Œ 인내심을 κ°–κ³  ν•΄κ²°ν•  수 있으며 ν…ŒμŠ€νŠΈ μ‹ ν˜Έλ₯Ό μ‚¬μš©ν•˜μ—¬ μ‰½κ²Œ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

ν…ŒμŠ€νŠΈ μ‹ ν˜ΈλŠ” μžμ„Έν•œ μ§€μΉ¨κ³Ό ν•¨κ»˜ BBC μ„œλ²„ ftp://ftp.kw.bbc.co.uk/t2refs/μ—μ„œ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

첫 번째 λ¬Έμ œμ— λŒ€ν•œ 해결책은 SDR μž₯치의 νŠΉμ„±κ³Ό μ œμ–΄ κΈ°λŠ₯에 따라 크게 λ‹¬λΌμ§‘λ‹ˆλ‹€. ꢌμž₯λ˜λŠ” 주파수 μ œμ–΄ κΈ°λŠ₯을 μ‚¬μš©ν•˜λŠ” 것은 μ„±κ³΅ν•˜μ§€ λͺ»ν–ˆμ§€λ§Œ 이λ₯Ό μ½λŠ” 데 λ§Žμ€ κ²½ν—˜μ„ μ œκ³΅ν–ˆμŠ΅λ‹ˆλ‹€. λ¬Έμ„œν™”, ν”„λ‘œκ·Έλž˜λ°, TV μ‹œλ¦¬μ¦ˆ μ‹œμ²­, 철학적 질문 ν•΄κ²°... ν•œλ§ˆλ””λ‘œ ν”„λ‘œμ νŠΈλ₯Ό ν¬κΈ°ν•˜λŠ” 것은 λΆˆκ°€λŠ₯ν–ˆμŠ΅λ‹ˆλ‹€.

β€œμˆœμˆ˜ν•œ SDR”에 λŒ€ν•œ λ―ΏμŒμ€ λ”μš± κ°•ν•΄μ‘ŒμŠ΅λ‹ˆλ‹€.

μš°λ¦¬λŠ” μ‹ ν˜Έλ₯Ό μžˆλŠ” κ·ΈλŒ€λ‘œ μ·¨ν•˜μ—¬ 거의 μ•„λ‚ λ‘œκ·Έλ‘œ λ³΄κ°„ν•˜κ³  이산 μ‹ ν˜Έλ₯Ό κΊΌλ‚΄μ§€λ§Œ μ‹€μ œ μ‹ ν˜Έμ™€ μœ μ‚¬ν•©λ‹ˆλ‹€.

동기화 블둝 λ‹€μ΄μ–΄κ·Έλž¨:

C++의 SDR DVB-T2 μˆ˜μ‹ κΈ°

μ—¬κΈ°μ˜ λͺ¨λ“  것은 κ΅κ³Όμ„œμ— λ”°λ₯Έ κ²ƒμž…λ‹ˆλ‹€. λ‹€μŒμ€ 쑰금 더 λ³΅μž‘ν•©λ‹ˆλ‹€. 편차λ₯Ό 계산해야 ν•©λ‹ˆλ‹€. λ‹€μ–‘ν•œ λ°©λ²•μ˜ μž₯점과 단점을 λΉ„κ΅ν•˜λŠ” λ§Žμ€ λ¬Έν—Œκ³Ό 연ꡬ 기사가 μžˆμŠ΅λ‹ˆλ‹€. κ³ μ „μ—μ„œ - 이것은 "Michael Speth, Stefan Fechtel, Gunnar Fock, Heinrich Meyr, OFDM 기반 κ΄‘λŒ€μ—­ 전솑을 μœ„ν•œ 졜적의 μˆ˜μ‹ κΈ° 섀계 - XNUMXλΆ€ 및 XNUMXλΆ€"μž…λ‹ˆλ‹€. ν•˜μ§€λ§Œ μ…€ 수 있고 μ‹Άμ–΄ν•˜λŠ” μ—”μ§€λ‹ˆμ–΄λ₯Ό ν•œ λͺ…도 λ§Œλ‚˜μ§€ λͺ»ν–ˆκΈ° λ•Œλ¬Έμ— μ—”μ§€λ‹ˆμ–΄λ§ μ ‘κ·Ό 방식이 μ‚¬μš©λ˜μ—ˆμŠ΅λ‹ˆλ‹€. λ™μΌν•œ 동기화 방법을 μ‚¬μš©ν•˜μ—¬ ν…ŒμŠ€νŠΈ μ‹ ν˜Έμ— λ””νŠœλ‹μ΄ λ„μž…λ˜μ—ˆμŠ΅λ‹ˆλ‹€. μ•Œλ €μ§„ 편차(κ·Έκ°€ 직접 μ†Œκ°œν•¨)와 λ‹€μ–‘ν•œ μΈ‘μ •ν•­λͺ©μ„ λΉ„κ΅ν•˜μ—¬ μ„±λŠ₯κ³Ό κ΅¬ν˜„ μš©μ΄μ„±μ„ μœ„ν•΄ κ°€μž₯ 쒋은 μΈ‘μ •ν•­λͺ©μ„ μ„ νƒν–ˆμŠ΅λ‹ˆλ‹€. κ°€λ“œ μΈν„°λ²Œκ³Ό κ·Έ 반볡 뢀뢄을 λΉ„κ΅ν•˜μ—¬ μˆ˜μ‹  주파수 편차λ₯Ό κ³„μ‚°ν•œλ‹€. μˆ˜μ‹  주파수의 μœ„μƒκ³Ό μƒ˜ν”Œλ§ μ£ΌνŒŒμˆ˜λŠ” 파일럿 μ‹ ν˜Έμ˜ μœ„μƒ νŽΈμ°¨λ‘œλΆ€ν„° μΆ”μ •λ˜λ©° μ΄λŠ” OFDM μ‹ ν˜Έμ˜ κ°„λ‹¨ν•œ μ„ ν˜• 등화기에도 μ‚¬μš©λ©λ‹ˆλ‹€.

이퀄라이저 νŠΉμ„±:

C++의 SDR DVB-T2 μˆ˜μ‹ κΈ°

DVB-T2 ν”„λ ˆμž„μ΄ μ–Έμ œ μ‹œμž‘λ˜λŠ”μ§€ μ•Œλ©΄ 이 λͺ¨λ“  것이 잘 μž‘λ™ν•©λ‹ˆλ‹€. 이λ₯Ό μœ„ν•΄ 프리앰블 심볼 P1이 μ‹ ν˜Έμ— μ „μ†‘λ©λ‹ˆλ‹€. P1 기호λ₯Ό κ°μ§€ν•˜κ³  λ””μ½”λ”©ν•˜λŠ” 방법은 기술 사양 ETSI TS 102 831에 μ„€λͺ…λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€(μˆ˜μ‹ μ— λŒ€ν•œ μœ μš©ν•œ ꢌμž₯ 사항도 많이 있음).

P1 μ‹ ν˜Έμ˜ μžκΈ°μƒκ΄€(ν”„λ ˆμž„ μ‹œμž‘ λΆ€λΆ„μ˜ κ°€μž₯ 높은 지점):

C++의 SDR DVB-T2 μˆ˜μ‹ κΈ°

첫 번째 사진 (λ™μ˜μƒκΉŒμ§€ XNUMXκ°œμ›” λ‚¨μ•˜μŠ΅λ‹ˆλ‹€...):

C++의 SDR DVB-T2 μˆ˜μ‹ κΈ°

μ—¬κΈ°μ„œλŠ” IQ λΆˆκ· ν˜•, DC μ˜€ν”„μ…‹ 및 LO λˆ„μΆœμ΄ 무엇인지 μ•Œμ•„λ΄…λ‹ˆλ‹€. 일반적으둜 직접 λ³€ν™˜κ³Ό κ΄€λ ¨λœ μ΄λŸ¬ν•œ μ™œκ³‘μ— λŒ€ν•œ 보상은 SDR μž₯치 λ“œλΌμ΄λ²„μ—μ„œ κ΅¬ν˜„λ©λ‹ˆλ‹€. λ”°λΌμ„œ μ΄ν•΄ν•˜λŠ” 데 였랜 μ‹œκ°„μ΄ κ±Έλ ΈμŠ΅λ‹ˆλ‹€. μΉœμˆ™ν•œ QAM64 λ³„μžλ¦¬μ—μ„œ 별을 μ œκ±°ν•˜λŠ” 것은 보상 κΈ°λŠ₯의 μž‘μ—…μž…λ‹ˆλ‹€. λ‚˜λŠ” λͺ¨λ“  것을 끄고 μžμ „κ±°λ₯Ό μ¨μ•Όν–ˆμŠ΅λ‹ˆλ‹€.

그리고 사진이 μ›€μ§μ˜€μŠ΅λ‹ˆλ‹€.

C++의 SDR DVB-T2 μˆ˜μ‹ κΈ°

DVB-T64 ν‘œμ€€μ˜ νŠΉμ • μ„±μ’Œ νšŒμ „μ„ μ‚¬μš©ν•œ QAM2 λ³€μ‘°:

C++의 SDR DVB-T2 μˆ˜μ‹ κΈ°

κ°„λ‹¨νžˆ λ§ν•΄μ„œ λ‹€μ§„ κ³ κΈ°λ₯Ό κ³ κΈ° 뢄쇄기에 λ‹€μ‹œ ν†΅κ³Όμ‹œν‚¨ κ²°κ³Όμž…λ‹ˆλ‹€. 이 ν‘œμ€€μ€ λ„€ κ°€μ§€ μœ ν˜•μ˜ ν˜Όν•©μ„ μ œκ³΅ν•©λ‹ˆλ‹€.

  • λΉ„νŠΈ 인터리빙
  • μ…€ 인터리빙(μ½”λ”© λΈ”λ‘μ—μ„œ μ…€ ν˜Όν•©)
  • μ‹œκ°„ 인터리빙(인코딩 블둝 그룹에도 속함)
  • 주파수 인터리빙(OFDM 기호의 주파수 ν˜Όν•©)

결과적으둜 μž…λ ₯μ—λŠ” λ‹€μŒκ³Ό 같은 μ‹ ν˜Έκ°€ λ‚˜νƒ€λ‚©λ‹ˆλ‹€.

C++의 SDR DVB-T2 μˆ˜μ‹ κΈ°

이 λͺ¨λ“  것은 μΈμ½”λ”©λœ μ‹ ν˜Έμ˜ 작음 내성을 μœ„ν•œ νˆ¬μŸμž…λ‹ˆλ‹€.

합계

이제 μ‹ ν˜Έ μžμ²΄μ™€ λͺ¨μ–‘λΏλ§Œ μ•„λ‹ˆλΌ μ„œλΉ„μŠ€ 정보도 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.
λ°©μ†‘μ—λŠ” 두 개의 λ©€ν‹°ν”Œλ ‰μŠ€κ°€ μžˆμŠ΅λ‹ˆλ‹€. κ°κ°μ—λŠ” 두 개의 물리적 채널(PLP)이 μžˆμŠ΅λ‹ˆλ‹€.

첫 번째 λ©€ν‹°ν”Œλ ‰μŠ€μ—μ„œ ν•œ κ°€μ§€ μ΄μƒν•œ 점이 λ°œκ²¬λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 첫 번째 PLPμ—λŠ” "닀쀑"μ΄λΌλŠ” λ ˆμ΄λΈ”μ΄ μ§€μ •λ˜μ–΄ μžˆλŠ”λ°, μ΄λŠ” λ©€ν‹°ν”Œλ ‰μŠ€μ— 두 개 μ΄μƒμ˜ PLPκ°€ 있고 두 번째 PLPμ—λŠ” "단일"μ΄λΌλŠ” λ ˆμ΄λΈ”μ΄ μ§€μ •λ˜μ–΄ 있기 λ•Œλ¬Έμ— λ…Όλ¦¬μ μž…λ‹ˆλ‹€.
훨씬 더 ν₯미둜운 점은 두 번째 λ©€ν‹°ν”Œλ ‰μŠ€μ˜ 두 번째 μ΄μƒν•œ μ μž…λ‹ˆλ‹€. λͺ¨λ“  ν”„λ‘œκ·Έλž¨μ€ 첫 번째 PLP에 μžˆμ§€λ§Œ 두 번째 PLPμ—λŠ” μ €μ†μ—μ„œ μ•Œ 수 μ—†λŠ” νŠΉμ„±μ˜ μ‹ ν˜Έκ°€ μžˆμŠ΅λ‹ˆλ‹€. 적어도 μ•½ XNUMX개의 λΉ„λ””μ˜€ ν˜•μ‹κ³Ό λ™μΌν•œ μ–‘μ˜ μ˜€λ””μ˜€λ₯Ό μ΄ν•΄ν•˜λŠ” VLC ν”Œλ ˆμ΄μ–΄λŠ” 이λ₯Ό μΈμ‹ν•˜μ§€ λͺ»ν•©λ‹ˆλ‹€.

ν”„λ‘œμ νŠΈ μžμ²΄λŠ” μ—¬κΈ°μ—μ„œ 찾을 수 μžˆμŠ΅λ‹ˆλ‹€..

이 ν”„λ‘œμ νŠΈλŠ” SdrPlay(ν˜„μž¬λŠ” AirSpy)λ₯Ό μ‚¬μš©ν•˜μ—¬ DVB-T2λ₯Ό λ””μ½”λ”©ν•  κ°€λŠ₯성을 ν™•μΈν•˜λŠ” 것을 λͺ©ν‘œλ‘œ λ§Œλ“€μ–΄μ‘ŒμœΌλ―€λ‘œ μ΄λŠ” μ•ŒνŒŒ 버전도 μ•„λ‹™λ‹ˆλ‹€.

μΆ”μ‹ : νž˜λ“€κ²Œ 기사λ₯Ό μž‘μ„±ν•˜λŠ” λ™μ•ˆ PlutoSDR을 ν”„λ‘œμ νŠΈμ— ν†΅ν•©ν•˜λŠ” 데 μ„±κ³΅ν–ˆμŠ΅λ‹ˆλ‹€.

λˆ„κ΅°κ°€λŠ” USB6 좜λ ₯의 IQ μ‹ ν˜Έμ— λŒ€ν•΄ 2.0Msps만 μžˆλ‹€κ³  μ¦‰μ‹œ 말할 κ²ƒμ΄μ§€λ§Œ μ΅œμ†Œν•œ 9,2Mspsκ°€ ν•„μš”ν•˜μ§€λ§Œ 이것은 λ³„λ„μ˜ μ£Όμ œμž…λ‹ˆλ‹€.

좜처 : habr.com

DDoS 보호, VPS VDS μ„œλ²„κ°€ μžˆλŠ” μ‚¬μ΄νŠΈλ₯Ό μœ„ν•œ μ•ˆμ •μ μΈ ν˜ΈμŠ€νŒ… κ΅¬μž… πŸ”₯ DDoS 곡격 λ°©μ§€ κΈ°λŠ₯이 νƒ‘μž¬λœ μ•ˆμ •μ μΈ μ›Ήμ‚¬μ΄νŠΈ ν˜ΈμŠ€νŒ…, VPS 및 VDS μ„œλ²„λ₯Ό κ΅¬λ§€ν•˜μ„Έμš” | ProHoster