자일링스가 자사의 올프로그래머블 SoC 및 MPSoC에 이용할 수 있는 SDSoC 개발 환경을 제공한다고 발표했다. SDSoC 개발 환경은 자일링스 SDx 개발 환경 제품군의 3세대 제품으로서 임베디드 소프트웨어 개발자들이 보다 광범위한 커뮤니티를 이용하여 ‘올프로그래머블’ 디바이스의 하드웨어 및 소프트웨어 강점을 향상시킬 수 있도록 해준다.
"이전에 FPGA 를 사용해본 적이 없는 개발자라도 익숙한 C/C++ 기반 워크플로우로 전체적인 스마트 비전 시스템을 신속하게 구성하고, 프로토타입을 작성 및 개발할 수 있게 되었다. 이러한 요소들을 결합함으로써 어느 설계 팀이라도 올프로그래머블 SoC 및 MPSoC의 강점과 잠재력을 최대한 활용할 수 있게 되었다"고 자일링스는 말한다.
자일링스의 징크(Zynq)-7000
올 프로그래머블 SoC와 징크 울트라스케일+(UltraScale+)
MPSoC는 시스템 성능을 높이고 시스템 전력을 낮추면서 BOM 비용까지 절감할 수 있다.
SDSoC 개발환경은 임베디드 소프트웨어 개발자들이 징크 올프로그래머블 SoC 및 MPSoC를 활용해 더욱 스마트한 시스템의 개발 속도를 높일 수 있도록 해준다.
SDSoC는 사용이 간편한 Eclipse 통합 개발 환경(IDE)과 이종 징크 올프로그래머블 SoC 및 MPSoC 구현을 위한 포괄적인 개발 플랫폼을 포함함으로써 ASSP와 유사한 프로그래밍 환경을 제공한다. 또한 업계 최초로 C/C++ 전체 시스템 최적화 컴파일러를 포함하고 있어 시스템 레벨 프로파일링, 프로그래머블 로직을 이용한 소프트웨어 가속화 및 시스템 커넥티비티를 자동 생성한다. 프로그래밍을 단축할 수 있는 라이브러리도 제공한다. 최종 사용자와 써드파티 플랫폼 개발자들이 빠르게 시스템 레벨 솔루션을 정의, 통합 및 검증할 수 있도록 해주며, 이들의 최종 고객들에게는 맞춤화된 프로그래밍 환경을 제공한다
자일링스 SDSoC 개발 환경
징크 SoC와 MPSoC의 강점을 활용하는데 필요한 RTL(VHDL이나 Verilog) 개발 전문지식이 없거나 하드웨어 자원이 미미한 개발 팀들은 그 동안 개발에 어려움을 겪어왔다. 자일링스의 새로운 C/C++ 개발 환경인 SDSoC는 이 문제를 해결하고 더 많은 개발 팀들이 징크 디바이스를 활용할 수 있도록 지원한다.
SDSoC 개발 환경은 두 가지 방식으로 징크 SoC와 MPSoC의 개발속도를 앞당겨 준다. 첫째, 소프트웨어 개발자는 자일링스, 써드파티 및 최종 사용자의 플랫폼을 활용해 기존의 하드웨어/소프트웨어 개발 흐름보다 빨리 작업에 착수할 수 있다. 둘째, SDSoC의 소프트웨어 가속기는 프로그래머블 로직을 활용하는데 필요한 하드웨어 팀과 소프트웨어 팀간의 빈번한 왕래의 필요성을 없애주므로 전체적인 시스템 개발 속도가 증대된다. 즉, 하드웨어 중심 플로우와 소프트웨어 중심 플로우를 개별적으로 시행하던 기존의 방식은 개발을 지연시키고 시스템 아키텍처와 성능 상의 불확실성을 야기할 수 있었던 반면, SDSoC는 익숙한 임베디드 개발자 프레임워크 내에서 보다 빠른 시스템 프로파일링, 프로그래머블 로직으로 소프트웨어 가속이 가능하도록 구성되어 있다.
시스템 레벨 프로파일링과 소프트웨어 가속: 첨단 소프트웨어 프로파일링 기반의 SDSoC는 시스템 레벨의 프로파일링을 추가함으로써 최적의 시스템(하드웨어 및 소프트웨어) 성능을 신속하게 예측 및 평가하여 전체 시스템 성능 및 전력을 최적화할 수 있다.
사용자는 SDSoC를 통해 "소프트웨어 기능 상의 병목 지대를 찾아내고" 가장 시간 소모적인 함수, 즉 하드웨어를 이용한 가속 후보를 찾아낼 수 있다고 자일링스 포트폴리오 및 솔루션 마케팅 담당 부사장인 휴 듈단(Hugh Durdan) 씨는 설명했다. 이것은 ARM CPU가 제공하는 성능 카운터를 이용하고, AXI 성능 모니터(APM)를 프로그래머블 로직에 자동 삽입하여 하드웨어 성능 데이터를 수집하는 방식으로 이루어진다. 이 플랫폼에서 실행되는 소프트웨어가 성능 데이터를 수집하고, SDSoC는 이 데이터를 이용해 시스템에서 성능 병목 현상이 일어나는 곳을 찾아낸다. 이렇게 이루어지는 빠른 성능 피드백을 통해 개발 프로세스에서 수 주일의 시간을 단축하면서 시스템 레벨의 성능 및 전력 요건을 충족시키는 최적의 코드 분할이 가능하다. 소프트웨어 개발자는 플랫폼 기반의 성능 예측 흐름을 활용함으로써 오랜 시간이 소요되는 실제 하드웨어 생성 없이도 소프트웨어 함수를 하드웨어로 옮겨 가속시켰을 경우의 성능 예측 결과를 수 분내에 얻을 수 있다.
사용자는 간편한 GUI 옵션을 통해 프로그래머블 로직에서 어떤 기능(함수)을 가속할 것인지 지정할 수 있으며, SDSoC는 소프트웨어 사이클을 보고하도록 C/C++ 코드를 생성하고, 데이터 전송뿐만 아니라 전반적인 애플리케이션 가속, , 하드웨어 자원 활용 등까지 신속하게 예측할 수 있다.
ASSP와 유사한 프로그래밍 경험: SDSoC는 이클립스 IDE를 제공하며 베어메탈이나 리눅스, 또는 FreeRTOS와 같은 운영체제 상에서 C/C++를 실행할 수 있다. 또한 레거시 HDL IP 블록을 C 호출가능 라이브러리로 재사용할 수 있으며, 전체적인 이종 멀티프로세싱 시스템을 생성할 수 있다.
전체 시스템 최적화 컴파일러: SDSoC에는 ARM 기반의 프로세싱 시스템과 프로그래머블 로직을 겨냥한 전체 시스템 최적화 컴파일러가 내장되어 있어 타깃 플랫폼 보드에서 손쉽게 실행시킬 수 있는 필수 하드웨어 및 소프트웨어 구성요소들을 모두 생성한다. SDSoC는 프로그래머블 로직의 고성능 저전력 가속화를 최대한 활용할 수 있도록 자일링스와 써드파티의 하드웨어 최적화 라이브러리를 선택할 수 있으며, "이러한 라이브러리는 소프트웨어 상에 있지만, 하드웨어 구현이 쉽도록 이미 최적화 되어 있다"고 자일링스 코리아의 정웅 부장은 설명했다.
플랫폼 개발자를 위한 전문가 사용 모델: SDSoC는 시스템 디자이너와 플랫폼 개발자를 위한 전문가 사용 모델을 제공하고 있다. 또한 자일링스의 비바도 디자인 수트(Vivado Design Suite)와의 조합을 통해 애플리케이션별 플랫폼을 생성할 수 있다.
SDSoC는 "30여 고객사에서 이미 초기
평가판을 사용하고 있으며, 6월경에 본격적인 출시가 이루어질
예정"이라고 자일링스 코리아의
안흥식 지사장은 밝혔다.
[열린보도원칙] 당 매체는 독자와 취재원 등 뉴스이용자의 권리 보장을 위해 반론이나 정정보도, 추후보도를 요청할 수 있는 창구를 열어두고 있음을 알려드립니다.
고충처리인 장은성 070-4699-5321 , news@e4ds.com