1. 개요
사전적 정의로는 "디지털 신호를 처리하는 연산기" 라고 한다. 즉 디지털 신호면 무엇이든 처리하는 장치를 말한다. 일상 생활에서 DSP가 사용되는 곳은 주로 오디오 신호 처리, 영상 신호 처리 분야이다. 그래픽 카드에 들어가는 GPU도 DSP의 일종에서 출발했다.음성 신호를 예로 들면, ADC를 통해 디지털 신호로 변환된 음성 신호를 DSP로 보내 신호를 가공하는 역할을 한다. DSP가 하는 처리에는 노이즈 제거, 의도적인 왜곡, 또는 디스플레이를 위한 분석 기능 등이 있다. 기타나 베이스를 연주하는 사람들이 흔히 접했을 디지털 이펙터, 멀티 이펙터의 핵심 부품이 바로 이 DSP이다.
지금은 이 의미가 확대되어 주 프로세서를 대신하여 여러가지 복잡한 연산들을 진행하는 데에 쓰이는 특수 프로세서라는 의미를 가지는 경우가 많다. 흔히 카메라에 보면 캐논엔 디직 엔진, 소니엔 비온즈 엔진, 시그마엔 TRUE II 엔진이 들어가는데, 이것도 자사 제품을 위해 특별 설계한 DSP이다. 범용 DSP는 보통 TI 제품을 높이 쳐 주는데, 군용 무전 장비나 광역수신기 등 1500~3000만원대 사이의 제품들에게 놀라운 신호 분석 능력을 안겨주고 있다.[1]
현재 디지털 회로 시스템, 기기에서 구현되어 사용되는 형태를 보면 애초부터 맨바닥에서 설계하는 경우는 매우 드물며, 소프트웨어로 구현된 프로그램을 초고속으로 처리하기 위하여 필요로 하는 만큼의 성능을 보장하는 범용 DSP 개발 킷에 전용 프로그램을 작성하고 탑재하는 형태를 취한다. 즉 특정 기능을 수행하는데 소프트웨어 만으로도 가능은 하지만 엄청나게 빠른 처리 속도가 필요한 경우, 이를 하드웨어로 구현하여 빠른 속도로 처리할 때 쓰인다. 이쯤 되면 CPU, 메모리와 함께 디지털 시대의 꽃이라고 할 만하다. 이런 특성 탓에 실시간으로 무언가를 처리해야 하는 기기에는 필수 요소로, 당연히 여러 개가 들어간다. 일상생활에서 사용하는 기기는 물론, 디지털 회로가 장착된 통신 분야, 항공기, 유도탄, 레이더 등에도 반드시 들어간다.
2. 하드웨어 코덱과의 차이
DSP가 하드웨어 코덱과 다른 점은, 하드웨어 코덱의 경우 하드웨어 단계부터 해당 파일 형식을 고려하여 설계되어 있기 때문에 프로그램을 변경하는 것은 불가능하지만, DSP의 경우 필요할 때 여러 프로그램을 메모리에 올려 리프로그래밍을 할 수 있다는 점이다. 이 차이는 간단하게 휴대폰의 SoC에서도 설명이 되는데, 초기 nVIDIA Tegra 동영상 코덱 지원의 경우 내부에 내장된 동영상 코덱이 하드웨어 코덱이기 때문에 어떤 논리적 꼼수를 쓰더라도 하드웨어 가속 프로그램을 변경할 수 없었다. 그러나 DSP는 메모리에 프로그램을 올리면 바로 다른 데이터를 처리할 수 있다. 캡처보드에 DSP가 몇 개 안 보이는데 수십 가지 인코더와 디코더를 지원하는 이유이다.하지만 범용 컴퓨터인 DSP는 전용 하드웨어 코덱보다 일반적으로 성능은 떨어진다. 암호화폐 채굴기에 전용 ASIC를 사용하면 채굴 속도가 더 빨라지는 것을 생각하면 된다.
일반적으로 성능은 하드웨어 코덱>FPGA>DSP>CPU이고 범용성은 그 반대라고 생각하면 된다.
3. 실생활에서 접하는 DSP
3.1. 카메라
이미지 프로세싱용 DSP가 없던 초창기 디지털 카메라( 캐논 EOS 1D Mark I 등)는 이미지 센서에 들어온 데이터를 CPU가 무식하게 EXIF 넣고 이미지 보간 정도로만 자동 보정한 뒤 CF나 플로피 디스크에 넣는 비효율적인 방식을 택했다. 이 때문에 사진을 촬영하면 CPU의 보정, 데이터 삽입, 저장까지 수 십초가 소요되었다. 디지털 카메라 제조사들은 이미지 스케일링 작업의 고속화와 인물, 사물 등에 더 정확히 AF할 수 있도록 얼굴 인식, Eye-AF 기술을 담당하는 프로세서를 개발하여 채용했다. 캐논은 2002년부터 자사 iXUS 제품군에 이미지 자동 보정 기능을 탑재한 DiGiC[2]프로세서를[3][4], 소니는 비슷한 기능을 가진 BIONZ(비욘즈)프로세서[5]를, 니콘은 EXPEED 프로세서를, Sigma는 TRUE 프로세서를 탑재한다.[6]우리가 사용하는 카메라에서 얼굴 인식, 콘트라스트 포커싱이 2010년대 초중반에 출시된 스마트폰에서는 느리거나 지원되지 않지만, 2000년대 똑딱이부터 일반적인 디지털 카메라에서까지 다 되는 모습을 볼 수 있다. 초창기 휴대폰과 달리 그냥 똑딱이도 내부에 상술한 이니지 프로세서가 장착되어 있어 휴대폰은 쌈싸먹을 정도의 속도로 라이브 뷰를 위한 데이터를 처리하고, 이러는 동안에 대비 분석에 얼굴 이미지 매칭까지 모든 것을 진행한다. 그러나 스마트폰 제조사들도 이 문제를 해결하기 위해 별도의 모바일용 이미지 처리 프로세서를 탑재하거나, 퀄컴도 스냅드래곤 SoC에 Hexagon이라는 DSP를 2010년대 중반부터 출시되는 AP에 내장시키기 시작했다. 모바일용 프로세서 성능이 극도로 발전한 지금은 깡CPU/GPU 성능만으로도 기존 디지털 카메라의 DSP가 수행하는 모든 기능을 구현할 수 있기에 저가형 스마트폰부터 고가형 스마트폰 모두 위 기능들을 탑재하고 있으며, Apple의 iPhone의 경우 Neurual Engine이 DSP 기능을 겸하여 인공 신경망과 결합해 이미지를 고해상도로 업스케일링하고 얼굴 자동 매칭, HDR 처리 등을 불과 1초도 안되는 시간 내에 수행한다.
위 이미지는 TRUE II ENGINE인데, 이 프로세서는 프로그램을 짜 넣는 것에 따라 이미지 센서에서 온 데이터에 LPF를 걸고 컬러 인터폴레이싱을 하는 프로그램이 빠지기도 하고 들어가기도 한다. 모델 별로 쓰이는 이미지 센서가 다르기 때문.
3.2. 음향기기
그 외에 노래방에 있으면 반주기의 DSP에 의해 MIDI 반주가 재생되고, 마이크 믹싱 및 음향 효과가 들어간다. 또한 노래방의 TV 화면에 보면 배경 그래픽 위에 가사 및 UI가 합쳐지는데, 이 역시 DSP에서 텍스트가 이미지로 변환되고 배경 영상과 합성되어 내보내어 지는 것이다.2000년대 후반에 들어서는 범용 CPU의 성능도 크게 향상되어 기기 구동 자체는 임베디드용 AP를 사용하고, 레이턴시에 민감한 음향처리 부분만 전용 DSP를 사용하는 경우가 많다.
대형 디지털 오디오 믹서 같은 경우는 아예 PC에 들어가는 범용 CPU를 사용하고 전용 DSP를 사용하지 않는 경우도 있다. 범용 CPU는 DSP 대비 가성비는 떨어지나 개발 편의성과 확장성에서 이점이 있다. 소형 제품의 경우 그렇게 많은 확장성을 요구하지 않기에 여전히 가성비가 좋은 전용 DSP를 선호한다.
Pro Tools 같은 DAW의 경우에는 과거에는 성능과 안정성 때문에 전용 DSP가 선호되었지만 현재는 CPU에서 처리해도 레이턴시를 제외하고는 딱히 문제가 없다. 다만 레이턴시에 있어서는 소프트웨어적 문제로 인해 아직까지 DSP가 우세하기 때문에 오디오 인터페이스에는 대부분 간단한 DSP가 탑재되고 있고, 여전히 DAW를 위한 DSP 확장 카드도 존재하고 있다.
3.3. DSP 수신기
일부 중국 라디오 제조 업체( TECSUN 등)에서는 DSP 칩을 장착한 아날로그 단파수신기를 발매하고 있다 (순수 디지털 방식인 DRM 단파 수신기와는 다르다). 기존의 재래식 아날로그 단파 수신기에 비해서중파, 단파 대역에서는 DSP 수신기의 성능에 이런저런 논란이 있지만( 단파수신기 문서의 해당 단락 및 DSP 수신기를 참조할 것) FM 대역에서 만큼은 재래식 수신기에 비해 절대적인 우위를 지닌다. FM 수신 상태가 안 좋은 곳에 살고 있다면 단파 청취 목적이 아니더라도 소형의 DSP 단파 수신기의 구입을 검토해 보자.
MP3 플레이어나 일부 스마트폰, 최신형 카 오디오에 내장된 FM 튜너는 재래식 아날로그 RF 회로가 아닌 이 DSP 회로를 이용한다.
[1]
아예 해당 제품군을 개발하는 업계쪽에서는 그냥 DSP라고 언급되면 TI의 TMS320시리즈를 지칭하는 경우가 많다.
[2]
영상용 바디에는 DiGiC DV 사용.
[3]
얼굴 인식은 DiGiC III부터, Eye AF는 DiGiC 8부터 지원.
[4]
마케팅에는 I 자리를 !로 바꾼 DiG!C 명칭이 사용된다.
[5]
BIONZ X부터 Eye-AF, BIONZ XR부터 인텔리전트 AF 등 지원.
[6]
DiGiC은 VxWorks
RTOS에서 자체
리눅스 커널 운영체제 DRY OS를 사용하며 BIONZ는 초기 자체 RTOS에서 BIONZ X에 들어
안드로이드 운영체제를 사용한다.
[7]
중파, 단파 대역대에서는 논란의 소지가 있다.
[8]
설계가 잘 된 경우 한정