제퍼넷 로고

Siemens EDA의 확장 가능한 검증 솔루션

시간

Andy Meier 2 지멘스 에다Lauro Rizzatti는 최근 Scalable Verification Solutions Division의 제품 관리자인 Andy Meier를 인터뷰했습니다. 지멘스 EDA. Andy는 Siemens EDA의 확장 가능한 검증 솔루션 사업부의 제품 관리자입니다. Andy는 20년 경력 동안 전자 및 하이테크 분야에서 다음과 같은 직책을 맡았습니다. Siemens EDA의 선임 제품 마케팅 매니저, Mentor Graphics의 제품 마케팅 매니저, Hitachi Data Systems의 솔루션 제품 매니저, Carbon Design Systems의 애플리케이션 엔지니어링 이사 및 선임 검증 엔지니어 사이코텍스. 매사추세츠주 우스터에 있는 Worcester Polytechnic Institute에서 공학 및 컴퓨터 공학 학사 학위를 취득했습니다.

만나줘서 고마워, 앤디. 당신과 이야기하게 되어 기쁩니다. SoC 검증 및 검증 팀이 안고 있는 주요 과제 중 하나는 실제 워크로드로 올바른 시스템 작동을 보장하는 것입니다. 이 도전의 핵심은 무엇입니까?

이 문제의 핵심은 하드웨어 및 소프트웨어 팀이 올바른 시스템 작동을 보장해야 할 때 서로 다른 관점과 디버그 요구 사항을 갖고 있다는 사실에 있습니다. 종종 하드웨어 및 RTL 설계 팀은 파형에 의존하여 디버깅하는 반면 소프트웨어 개발자는 완전한 기능을 갖춘 소프트웨어 디버거가 필요합니다. 문제는 디버그와 같이 둘 다 관련되어야 하는 문제가 있을 때 각 사용자 집합이 다른 디버그 언어를 사용한다는 것입니다. 그들은 공통 디버그 언어를 말하고 하드웨어 팀과 소프트웨어 팀 모두를 상호 연관시키는 방법이 필요합니다.

그들이 그렇게 부르고 공통 언어를 말하는 것이 어떻게 가능합니까?

Codelink 제품에는 고객이 그렇게 할 수 있도록 하는 상관 관계 엔진이 있습니다. Codelink의 가장 큰 장점 중 하나입니다. 내가 말했듯이 SW 팀은 완전한 기능을 갖춘 SW 디버거를 찾고 있습니다. SoC에서 일어나는 일에 대한 소스 코드 보기, CPU 레지스터 및 메모리 보기를 보면서 SW 실행을 한 단계씩 수행할 수 있다는 것은 매우 중요합니다. 그런 다음 파도를 보고 RTL 수준에서 일어나는 일과 정확히 연관시킬 수 있다는 것은 매우 강력합니다. 이것이 진정한 HW/SW 공동 검증 사용 사례를 가능하게 하는 것입니다.

HW/SW 공동 검증 사용 사례의 실제 고객 사례를 공유할 수 있습니까?

최근에 고객님께서 독특한 도전으로 저희를 찾아오셨습니다. 이 고객은 CPU가 다른 공급업체에서 제공되는 '전원 켜기' 시퀀스를 통해 CPU에서 CPU로 이동하는 XNUMX단계 부팅 프로세스를 가지고 있었습니다. 궁극적으로 그들은 IP를 통합하고 SoC의 다단계 부팅 프로세스를 검증하는 임무를 맡았습니다. 고객의 기존 검증 및 검증 방법론에는 이 시나리오를 디버깅할 수 있는 통합된 방법이 없었습니다. 그들은 특정 단계에서 실행되는 한 시뮬레이션 또는 에뮬레이션의 파형을 살펴본 다음 다른 CPU 공급업체의 다른 도구 세트를 사용하여 다음 단계를 디버그합니다. 공통된 통합 디버그가 없었습니다. 설상가상으로 이 검증 및 검증 작업에 참여한 팀은 SoC 통합 팀이었습니다. 이 팀은 하드웨어 설계에 대한 도메인 전문 지식이 없었고 개별 블록이 무엇을 담당했는지에 대한 소프트웨어 전문 지식이 없었습니다. 그래도 그들은 SoC가 제대로 부팅되었는지 검증하고 확인하는 임무를 맡았습니다. 그들은 그들의 요구를 해결하기 위해 새로운 솔루션을 사용하는 데 관심이 있었습니다.

소스 코드 보기, 레지스터 보기, 상관 관계 엔진과 같은 Codelink의 표준 기능과 에뮬레이션 실행의 RTL Waves를 사용하여 고객은 디버그 통합에 중점을 둔 새로운 방법론을 만들고 채택했습니다. 이 새로운 방법론을 사용하여 SoC의 멀티코어 기능을 살펴보고 예상대로 작동하는지 확인하기 위해 다양한 단계를 건너뛰면서 소프트웨어 실행을 디버그할 수 있었습니다.

꽤 흥미롭네요. 방금 설명한 것 외에 다른 과제를 제시하는 현재 업계 동향은 무엇입니까?

트렌드 측면에서 볼 때 사용 사례는 기존 SW 디버그 및 HW/SW 공동 검증을 넘어 확장되고 있습니다. 고객은 SoC 요구 사항을 확장하고 있으며 이러한 요구 사항은 SW 지원 검증의 확장을 위한 새로운 기회를 주도하고 있습니다.

예를 들어, 고객은 소프트웨어가 어떻게 작동하는지 이해하려고 합니다. 그들은 다른 이벤트 핸들러 실행의 동작과 해당 이벤트 핸들러가 예산된 시간 내에서 실행되고 있는지 이해하려고 합니다. 에뮬레이션 환경에서 이 추가 사용 사례를 해결하기 위해 Codelink 도구 소프트웨어 성능 프로파일링에 추가했습니다. 이를 통해 고객은 시간이 소비되는 위치와 가장 자주 호출되는 기능을 식별할 수 있습니다. 이것은 하드웨어 및 소프트웨어 파티셔닝 작업을 하는 고객이나 SoC 성능을 조정하려는 고객에게 중요합니다. 이벤트 핸들러가 특정 시간 내에 실행되어야 하지만 이런저런 이유로 실행되지 않는 경우를 상상할 수 있습니다. 이제 고객은 소프트웨어 관점에서 시간이 소비되는 부분을 분리한 다음 성능을 조정할 수 있습니다.

우리는 또한 최근에 시뮬레이션 및 에뮬레이션 고객으로부터 SW 코드 적용 범위를 제공하는 것이 SW 검증 및 검증에 도움이 되는 것을 보았습니다. 이것이 사용된 예는 고객의 SW 지원 검증 방법론에서 무작위로 SW를 생성한 경우입니다. 무작위로 생성된 SW는 SoC에 대한 테스트 벡터처럼 작동했습니다. 무작위 특성으로 인해 고객은 어떤 SW 테스트 시나리오가 적용되고 실행되었는지 정확히 알아야 했습니다. 이러한 요구 사항을 해결하기 위해 Codelink에 SW 코드 적용 범위를 추가했습니다. 고객에게 필요한 것은 워크로드를 실행하는 데 이미 필요한 소프트웨어 실행 파일과 디버그 기호뿐이었습니다. 검증 팀은 이제 SW 코드 적용 보고서를 보고 실행 중에 어떤 명령문, 기능, 조건 또는 분기가 적용되었는지 확인할 수 있습니다.

다른 업계 동향은 무엇입니까?

자동차, IoT, 5G, 엔터프라이즈 데이터 센터 등과 같은 다양한 SoC 시장 분야에서 우리는 CPU IP 파트너와의 협력을 강화할 필요가 있음을 알게 되었습니다. 시간이 지남에 따라 다양한 IP 공급업체와 협력하여 강력한 파트너십을 구축하여 해당 CPU IP에 대한 Codelink 디버그 기능을 제공했습니다. 최근 RISC-V 커뮤니티에서 RISC-V CPU 지원 요청이 크게 증가했습니다. SiFive와 협력하여 여러 SiFive CPU에 대한 Codelink 지원을 추가할 수 있었습니다. 이것은 하나의 예일 뿐입니다. CPU IP 공급업체에 구애받지 않기 때문에 모든 IP 공급업체와 협력하여 고객의 요구 사항을 충족할 수 있습니다.

이 공간에서 진행 중인 흥미로운 작업이 있습니다. Andy. 시간 내주셔서 다시 한 번 감사드립니다. 아마도 우리는 XNUMX년 후에 따라잡을 수 있고 귀하의 지속적인 진행 상황을 볼 수 있습니다.

또한 읽기 :

고급 SoC의 전력 분석. 지멘스 EDA 관점

증분 빌드 흐름을 사용하여 RTL 시뮬레이션 시간 단축

SIP 모듈은 수많은 확장 문제를 해결하지만 새로운 문제를 야기합니다.

다음을 통해이 게시물 공유 :

spot_img

최신 인텔리전스

spot_img