산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial Internet of Things >> 임베디드

RISC-V SoC 설계에서 맞춤 확장의 미스터리 제거

SoC(System on Chip)에서 하드웨어-소프트웨어 설계 절충점을 해결하기 위해 기본 프로세서를 구성하거나 맞춤형 확장을 추가하는 것은 새로운 일이 아닙니다. 이것은 RISC-V 커뮤니티에서 지지하는 가치 제안의 핵심 부분이었습니다. "가이드 적합한 RISC-V 맞춤형 지침으로 애플리케이션 가속화 .”

오늘날 많은 제품을 위한 시스템을 설계할 때 전력 소비, 성능 및 다이 면적은 복잡한 인공(AI) 및 기계 학습(ML) SoC 요구 사항을 많이 제한합니다.

오픈 소스 RISC-V 명령어 세트 아키텍처(ISA) 확장은 이러한 제약을 해결하기 위한 효과적인 수단으로 간과되는 경우가 많습니다. 반도체 산업을 위한 설계 서비스 회사인 Quantum Leap Solutions가 이끄는 최근 웨비나 패널은 SoC 설계를 위한 RISC-V ISA 확장의 미스터리를 풀기 위해 시도했습니다. "RISC-V 유연성 – 맞춤형 확장 기능이라는 제목의 웨비나 ," 100명 이상의 참석자로부터 질문을 받았습니다.

패널리스트는 새로운 애플리케이션을 위한 설계에서 수정된 ISA의 역할과 디자이너가 새로운 RISC-V 명령어 세트 아키텍처에 대한 확장을 보는 방법에 대한 통찰력을 제공하려고 시도했습니다.

Quantum Leap Solutions의 창립자이자 사장인 Mike Ingster가 사회를 맡은 패널은 다음과 같습니다.

<울>
  • John Min, Andes Technology의 FAE 이사
  • Larry Lapides, Imperas Software 영업 부사장
  • 남택, 멘토의 수석 애플리케이션 엔지니어
  • 마이크 잉스터: RISC-V가 다른 CPU 아키텍처보다 AI 및 ML 학습 애플리케이션에 더 나은 옵션인 이유는 무엇입니까?

    존 민 :RISC-V가 발명된 시기는 AI가 주류가 되는 시기와 맞물려 있습니다. RISC-V 벡터 명령어 세트는 AI 및 VR 유형의 애플리케이션을 염두에 두고 설계되었습니다.

    래리 라피데스 :이기종 프로세서의 다중 배열이 있는 AI 응용 프로그램(우리가 한 번 이상 구현한 아키텍처)에서 디자이너는 배열 내에서 스칼라 및 벡터 프로세서를 결합할 수 있다고 덧붙입니다. 둘째, RISC-V 아키텍처를 통해 설계자는 벡터 명령을 보존하면서 불필요한 기능을 제거할 수 있습니다. 이는 더 나은 가격, 성능 및 면적(PPA)을 제공합니다.

    잉스터 :벡터 확장이 있는 RISC-V 코어도 사용자 지정 지침으로 확장할 수 있습니까?

    최소 :네. 한 가지 예는 추가 버퍼를 추가하기 위해 고객 확장을 사용하는 참조 구현이 있는 RISC-V 벡터 코어입니다. 이렇게 하면 데이터 부족으로 인한 벡터 단위 실속을 방지할 수 있습니다.

    라피데스 :Imperas와 Andes는 이 분야에 도움이 되도록 맞춤형 기능을 구현한 공동 고객을 보유하고 있습니다.

    잉스터 :다중 프로세서 어레이에서 모든 CPU가 동일한 구성이어야 합니까? 아니면 다른 사용자 지정 지침을 가질 수 있나요?

    라피데스 :예, SoC 설계에서 이기종 프로세서는 일반적입니다. 또한 프로세서마다 다를 수 있는 것은 사용자 지정 명령어만이 아닙니다. 각 프로세서의 기본 명령어도 다를 수 있습니다. 예를 들어, 한 프로세서에는 벡터 명령어와 다른 프로세서 스칼라 명령어가 있을 수 있습니다. 이들은 인터리브 및 결합될 수 있습니다.

    최소 :멀티플렉스 어레이에서 CPU와 시뮬레이터는 모두 이기종이어서 멀티코어 시뮬레이션이 가능합니다.

    잉스터 :시장에 서버급 RISC-V 프로세서가 있습니까?

    최소 :오고 있다. 시간이 지남에 따라 CPU 설계는 여러 면에서 더 빨라집니다. 하나는 주파수를 높이는 것입니다. 다른 하나는 CPU 파이프라인을 확장하는 것입니다. 또 다른 방법은 프로세서가 명령을 순서 없이 실행하도록 설계하는 것입니다. 그리고 더 슈퍼 스칼라 조직 또는 수천 개의 멀티코어를 사용하는 설계(오늘날 일반화되고 있음)를 제공하기 위해 실행 폭이 넓어질 것입니다. AI 엔터프라이즈 애플리케이션을 위한 차세대 RISC-V 프로세서에 이러한 요소가 통합되는 것을 보는 것은 시간 문제일 뿐입니다.

    라피데스 :RISC-V의 과거 역사를 보면 처음에는 32비트와 64비트의 개념 증명 SoC가 있었지만 약 2년 전부터 보안과 IoT에 중점을 둔 SoC가 보이기 시작했습니다. 32비트 SoC의 경쟁력 마이크로컨트롤러로. 이제 우리는 최초의 애플리케이션급 프로세서를 보기 시작했습니다. 서버급은 아니지만 고급 애플리케이션을 바라보는 실제 RTOS를 실행하는 64비트 RISC-V 프로세서의 초기 실리콘을 보고 있습니다. 일부 잘못된 파이프라인이 구축되는 것을 보기 시작했습니다. 앞으로 2~3년 안에 최초의 서버급 RISC-V 프로세서가 나올 것으로 예상합니다.

    잉스터 :맞춤 확장 프로그램이 기기 보안 및 수명 주기 관리를 제공할 수 있나요?

    최소 :예, 구현에 따라 다릅니다. 예를 들어 명령 확장을 활성화하여 검사를 수행합니다. 프로그램은 사용자 정의 확장을 확인합니다. 존재하지 않으면 소프트웨어가 실행되지 않습니다. 또 다른 옵션은 메모리에 대한 사용자 지정 포트를 구현하는 것입니다. 따라서 RISC-V CPU는 메인 버스를 사용하지 않고 메모리에 대한 전용 버스를 갖게 됩니다.

    남택 :설계자는 맞춤형 확장 기능이 있는 SoC의 보안 및 수명 주기 관리를 위해 Tessent 내장 분석 IP를 사용할 수 있습니다.

    잉스터 :사용자 지정 지침에 대한 RISC-V 접근 방식이 ARC 및 Tensilica와 같은 다른 접근 방식과 다른 이유는 무엇입니까?

    최소 :CPU는 사용자 지정 확장을 사용하여 특정 작업을 가속화합니다. RISC-V가 다른 점은 사용자 지정 확장을 표준에 통합하는 공식 메커니즘을 제공한다는 것입니다.

    잉스터 :개발자는 어떻게 고객 또는 파트너와 사용자 지정 지침을 공유할 수 있습니까?

    최소 :세 가지 옵션이 있습니다. 첫째, 비공개로 유지하십시오. 둘째, 표준에 포함하기 위해 RISC-V International에 추가할 것을 제안합니다. 예를 들어 Andes는 DSP 명령어 세트를 RISC-V International에 기증했습니다. 이들은 이제 RISC-V 표준의 P 확장입니다. 셋째, 다른 사람과 명령어 사용법을 공유하면 내장 파일과 헤더 파일을 공유하게 됩니다. 사용자 지정 지침의 구현을 공유하려는 경우 3방향 NDA를 수행해야 할 수도 있습니다.

    라피데스 :맞춤형 확장 개발자는 초기 실리콘 소프트웨어 개발에 사용할 수 있는 오픈 소스 또는 바이너리 모델, ISS 또는 명령어 정확한 프로세서 모델로 고객이나 파트너에게 모델을 전달할 수 있습니다.

    잉스터 :사용자 지정 확장이 RISC-V 커뮤니티 내에서 호환성 문제로 이어집니까?

    최소 :사용자 지정 지침을 사용하는 방법에 따라 다릅니다. 사용자 정의 명령이 독점적으로 유지되는 경우 정의상 개발자가 이를 사용하는 유일한 사람이기 때문에 단편화를 일으키지 않습니다. 사용자 지정 지침이 성공을 거두면 다른 많은 사람들이 사용하고 있으므로 기본 RISC-V 세트에 통합해야 할 때입니다. 공개로 만들지 소유권을 유지할지 결정은 작성자에게 달려 있습니다. 어느 쪽이든 조각화가 발생하지 않습니다.

    잉스터 :현재 버전에서 컴파일러가 벡터 프로세서를 지원합니까?

    최소 :RISC-V 벡터 확장 버전 0.8은 컴파일러가 지원할 정도로 안정적입니다. GCC와 LLVM은 모두 기존 0.8 버전의 사양을 지원합니다. 컴파일러의 최종 버전은 RISC-V 벡터 확장 사양이 완성되면 사용할 수 있습니다.

    잉스터 :소프트웨어 도구 체인에서 맞춤 확장이 어떻게 지원되나요?

    라피데스 :설계자는 RISC-V 모델에 맞춤형 확장을 추가하여 소프트웨어 개발에 사용할 수 있는 명령어 세트 시뮬레이터를 제공합니다. 도구 체인 측면에서 새로운 사용자 정의 확장에 대한 지원을 GCC 및 LLVM에 추가할 수 있습니다. 둘 다 오픈 소스 도구 체인이며 고객의 재량에 따라 수정할 수 있습니다. 디자이너는 매크로 구현을 조합하여 맞춤형 명령어를 지원할 수도 있습니다.

    잉스터 :컴파일러는 새로 생성된 사용자 지정 명령어를 어떻게 인식합니까?

    라피데스 :소프트웨어 팀은 컴파일러에서 명령어를 구현해야 합니다.

    최소 :특별히 명령을 독점적으로 유지하려는 의도가 있는 경우 추가 작업을 수행하지 않는 대안은 사용자 정의 명령을 라이브러리처럼 처리하는 것입니다(예:DSP 라이브러리). 그런 다음 프로그램 실행에서 사용자 정의 명령이 필요할 때 헤더 파일로 라이브러리를 호출합니다. 따라서 최소한의 작업으로 디자인 팀은 사용자 지정 기능을 생성함으로써 기대되는 많은 이점을 얻을 수 있습니다.

    잉스터 :RISC-V에서 지원되는 OS는 무엇이며 Android도 지원합니까?

    라피데스 :안드로이드가 지원되는 것을 본 적은 없지만 RISC-V로 설계된 웨어러블 기기가 있습니다. Linux 무료 RTOS인 Zephyr RTOS가 기본적으로 지원됩니다. 지원되는 다른 실시간 운영 체제가 있습니다. RISC-V International의 소프트웨어 웹 페이지에는 전체 목록이 있습니다.

    최소 :Android OS는 RISC-V 프로세서에서 검증되지 않았습니다. 나는 그것이 실행할 수 있는지의 문제라기보다 이식 연습이라고 생각합니다. RISC-V 코어는 현재 Linux를 실행합니다.

    잉스터 :사용자 정의 확장은 어떻게 확인됩니까?

    라피데스 :사용자 정의 확장은 디자인의 RTL에 추가되지만 프로세서 모델에도 추가되어야 합니다. 이 기능을 사용하여 사용자 지정 명령과 사용자 지정 레지스터를 확인할 수 있습니다. 일반적으로 명령어 세트 시뮬레이터에서 실행되는 프로세서 모델에 확장을 추가하면 소프트웨어 개발이 가능합니다.

    택: 우리는 최근 고객이 SoC에서 맞춤형 지침을 구현하도록 했습니다. 임베디드 분석 IP를 사용하여 그들의 목표는 맞춤형 확장을 추가하여 소프트웨어 성능 향상을 확인하는 것이었습니다. 이는 데이터 및 명령 실행을 추적하기 위해 추적을 사용하여 수행되었습니다. 이는 성능 향상을 검증하는 효과적인 수단입니다.

    잉스터 :임베디드 분석 IP를 추가하려면 얼마나 많은 영역이 필요합니까?

    택: 표준 답변은 없지만 임베디드 분석 IP 전용 영역에 대한 일반적인 견적은 1%입니다. 이 추정에는 이러한 요소를 연결하는 분석 모델, 커뮤니케이터 및 메시지 구조가 포함됩니다. 블록에는 여러 옵션이 있으므로 다른 구성이 가능합니다. 각 고객의 설계를 평가하고 내장된 분석 IP를 설계에 구현하도록 구성합니다. 이 방법으로 전체 면적이 추정됩니다. 주어진 디자인에 최고의 가치를 제공하기 위해 면적 영향을 최소화할 수 있는 솔루션을 결정합니다.

    다음은 패널의 하이라이트이며 에서 전체 버전을 호스팅합니다. 양자 도약 솔루션 .


    임베디드

    1. 자석의 '리치 아웃'이란 무엇입니까?
    2. 3D 프린팅에서 CAD(Computer-Aided Design)의 역할
    3. 제품 디자인의 과제
    4. PCB 설계에서 RF 급전선 최적화
    5. Bluetooth 5.1 SoC는 설계 크기와 비용을 줄이도록 설계되었습니다.
    6. PCB 디자인 패키지를 클라우드로 가져옴
    7. PCB 프로토타이핑의 이점
    8. "마더보드용 맞춤형 인클로저를 설계하는 방법" 리소스를 업데이트했습니다.
    9. 맞춤형 제조가 미래인 이유
    10. 회사에서 작업 지침의 역할