SSL Tempest engine
Solid state logic 사의 방송 및 레코딩 스튜디오 용 디지털 콘솔인 System-T 의 DSP 엔진.
https://www.solidstatelogic.com/assets/uploads/downloads/s300/The-SSL-Tempest-Engine.pdf
3줄 요약
CPU는 DSP보다 훨씬 더 높은 성능을 내도록 발전했기 때문에, 우리는 이제부터 CPU를 사용하여 오디오 프로세싱을 처리한다. 멀티코어 CPU를 활용하면 코어 1개는 소프트웨어와 UI 등을 돌리기 위해 사용하고, 나머지 코어 1개를 오디오 프로세싱 전용으로 돌리기 위해 사용할 수 있다. DSP 연산을 위해 우리가 특별히 개발한 옵티멀 프로세싱 엔진을 사용하여 레이턴시를 최소화하였다.
번역
일부 업계에서는 CPU 기술만으로는 대규모 오디오 처리에 필요한 안정성과 성능을 제공할 수 없다고 제안했습니다. SSL의 특허 받은 Optimal Core Processing을 사용하는 Tempest 엔진은 그것이 사실이 아님을 증명합니다. 이 문서는 SSL의 접근 방식과 그것이 작동하는 이유를 설명합니다. 2011년, SSL의 R&D 엔지니어 그룹은 디지털 제품 범위의 미래를 고민할 때 다양한 규모의 다양한 전문 애플리케이션을 위한 새로운 시스템 범위의 기반이 될 수 있는 플랫폼의 요구 사항을 평가하는 데 여러 달을 보냈습니다. 플랫폼은 적응 가능하고, 산업적 강점과 신뢰성을 갖고, 엄청난 처리 능력을 제공하고, 타의 추종을 불허하는 소프트웨어 및 아키텍처 유연성이 있어야 합니다. SSL C 시리즈 콘솔(C10, C100, C200 및 C300)은 SSL의 Centuri 프로세서와 최신 Blackrock 프로세서를 기반으로 합니다. 둘 다 Sharc DSP 및 FPGA 칩 어레이를 사용하고 이 목적을 위해 특별히 설계된 사내 운영 체제를 사용합니다. 다른 고급 디지털 오디오 콘솔 제조업체와 유사한 이 접근 방식의 장점은 DSP 어레이의 결정론적 동작과 OS에 대한 절대적인 제어입니다. 단점은 DSP 리소스를 확장하는 복잡성과 비용이 있으며 소프트웨어의 경우 표준 산업 리소스를 활용할 수 없다는 점입니다.
최근 10년 동안 개별 프로세서의 기술이 몇 가지 근본적인 물리적 제약에 가까워지고 무어의 법칙이 고갈되면서 IT 산업 처리 하드웨어의 힘은 멀티 코어 프로세서의 개발을 통해 계속해서 크게 성장했습니다. 이 새로운 멀티 코어 프로세서의 전체 처리량은 개별 DSP 칩으로 현명하게 달성할 수 있는 수준을 초과했지만 IT 산업은 대체로 전문 오디오 장비만큼 실시간 결정론적 성능에 관심이 없기 때문에 문제는 다음과 같습니다. 필요한 성능을 제공하기 위해 멀티 코어 프로세서를 관리할 수 있으며, 그렇다면 이론적으로 사용할 수 있는 최대 전력을 얼마나 사용할 수 있는지 알 수 있습니다. 우리는 널리 채택된 프로그래밍 언어를 사용하여 소프트웨어를 훨씬 더 효율적으로 개발할 수 있다는 것을 인식하고 처리 리소스를 관리하는 데 가장 도움이 될 수 있는 실시간 운영 체제(RTOS)에 집중했습니다.
멀티코어 프로세서 사용에 대한 두 가지 주목할만한 접근 방식이 경쟁합니다. 첫 번째는 코어가 일부 코어에서 비실시간 운영 체제를 실행하는 반면 다른 코어는 독립적으로 RTOS를 실행할 수 있도록 하는 “감독자” 프로그램을 사용합니다. “감독자”는 비실시간 코어보다 실시간 코어에 우선순위를 부여하고 저수준 인터럽트 및 메모리 교환의 우선순위를 규제해야 합니다. 두 번째 옵션 두 개의 개별 멀티 코어 프로세서를 사용하는 것입니다. 하나는 오디오 처리 전용이고 다른 하나는 컨트롤 및 디스플레이와 인터페이스하기 위한 것입니다. 2개의 개별 멀티코어 프로세서를 사용하면 비실시간 코어와 실시간 코어 간의 상호 작용이 없고 초대형 처리 시스템을 위한 강력한 실시간 성능을 확보할 수 있습니다. 두 시스템에 대한 오랜 실험과 평가 후에 우리는 대규모 전문 오디오 응용 프로그램에서 가장 중요한 고려 사항인 결정적 동작과 안정성 때문에 후자를 선택했습니다.
멀티 코어 프로세서의 주요 제약은 사용 가능한 메모리에 액세스하는 방식입니다. 각 코어에는 소량의 전용 로컬(L-레벨) 캐시 메모리가 있지만 주 외부 메모리는 공유됩니다. 캐시가 클수록 적중률은 더 높지만 대기 시간은 더 길다는 점을 감안할 때 캐시 대기 시간과 적중률 사이에는 근본적인 균형이 있습니다. 실시간 오디오 신호 처리의 경우 L 레벨 메모리를 엄격하게 관리하여 더 높은 수준의 성능을 달성할 수 있습니다. 디지털 콘솔은 필터, 다이내믹스, 지연, 믹싱, 라우팅, 클로킹, 미터링, 디스플레이 및 제어 상호 작용과 같이 동시에 발생하는 다양한 작업에 처리 리소스를 할당해야 합니다. 일반적으로 사용 가능한 처리 리소스를 최대한 활용하여 이러한 기능을 지정된 코어에 할당합니다.
오랜 연구 끝에 RTOS와 함께 작동하여 메모리 교환 로드가 많은 경우에도 결정적 실시간 성능을 보장하기 위해 특허를 받은 일부 기술을 개발했습니다. 이를 Optimal Core Processing이라고 하며 처리에 할당된 리소스와 메모리 교환에 할당된 리소스의 비율을 최적화합니다. 이를 통해 우리는 여러 64비트 부동소수점 연산을 수행하여 매우 짧은 대기 시간으로 복잡한 고해상도 알고리즘을 실행할 수 있습니다. 또한 이 코드는 수천 개의 곱셈-가산-누적 명령어를 제공하도록 설계되었으므로 추가 FPGA 버스 합산 또는 광범위한 외부 라우팅 하드웨어에 의존할 필요가 없습니다.
우리가 사용하는 멀티 코어 프로세서는 '일반' PC 하드웨어보다 더 넓은 온도 범위에서 작동하도록 설계된 산업용 등급 장치입니다. Tempest 프로세서는 OCP 소프트웨어 기술과 함께 RTOS를 사용합니다. 우리가 컨트롤러에 부여한 이름인 오디오 서버는 임베디드 운영 체제를 실행하는 별도의 멀티 코어 프로세서에서 실행됩니다. 이 조합은 많은 이점을 제공합니다. 시스템은 탄력적입니다. 오디오 서버에 문제가 발생해도 DSP는 계속되고 오디오도 마찬가지입니다. DSP 부팅 시간이 빠릅니다. Audio Server는 여러 전면 패널이 동일한 엔진을 제어할 수 있도록 하는 하나 이상의 제어 표면에 연결할 수 있습니다. 표준 IT 산업 토폴로지를 사용하여 미러링된 전체 이중화를 제공할 수 있습니다. 그리고 많은 사람들이 이해하는 프로그래밍 언어에서 유용한 코드의 산업적 강점 라이브러리를 널리 사용할 수 있으므로 개발을 가속화하고 변경 사항과 특별 요청을 더 쉽게 수용할 수 있으며 프로그래밍 팀의 규모를 늘려 흥미로운 제품을 제공할 수 있습니다.
그 중 첫 번째는 L500 및 L300 Live 콘솔로 유연성, 사용 용이성, 신뢰성 및 음질면에서 큰 인기를 얻었습니다. Tempest 엔진은 현재 최신 방송 오디오 프로덕션 시스템인 System T용으로 설계되었습니다. System T의 핵심 기술은 라이브 콘솔에 사용되는 것이지만 오늘날의 주요 TV 제작에 필요한 높은 채널 및 버스 수를 제공하기 위해 800개 경로를 제공하고 3,000개 이상의 신호를 라우팅할 수 있는 Tempest 엔진 버전이 있습니다. 그리고 밖으로. 전용 방송 전용 아키텍처 및 알고리즘을 통해 System T용 소프트웨어는 Live 콘솔의 소프트웨어와도 다르며 방송사가 요구하는 견고성과 보안과 함께 대규모 방송 제작에 필요한 기능을 제공합니다.
[공지]회원 가입 방법
[공지]글 작성 및 수정 방법