단기강좌 - SoCs and practicing HW IP Design

SoC 이해 및 HW IP Design (SoC_이론)

htaekjung 2024. 8. 10. 15:28

들어가기에 앞서..

아래의 이전 포스트에서 회로 설계의 필요성과 회로설계의 종류에 대해 설명을 했습니다.

반도체 공정 & 회로설계 개념 (tistory.com)

 

반도체 공정 & 회로설계 개념

● 목차1. 회로설계 & 웨이퍼/반도체 제조공정의 상호 관계2. 반도체 회로 설계의 종류 1. 회로설계 & 웨이퍼/반도체 제조공정의 상호 관계'삼성전자'가 참 쉽게 알려주는 '반도체 8대공

htaekjung.tistory.com

 


1. ASIC

이전 포스트에서 SoC 설계에 ASIC 기술을 사용한다고 했다. 그렇다면 ASIC가 무엇일까?

ASIC의 특성

위의 사진에서 볼 수 있듯이 ASIC는 다른 computer architecture에 비해 Flexibility가 낮지만 Energy-efficiency가 높다는 것을 알 수 있다.

 

다시 말해 특정 응용 프로그램이나 작업을 수행하기 위해 특화된 성능, 전력, 소모, 크기를 가지고 있다는 것이다.

 


 

2. SoC(System on Chip)

 

  • 정의 : 핵심 IP(intellectual Property)를 한 곳에 담은 기술 집약적 반도체 칩

 

 

 

  • 쓰는 이유 : PPA (Power, Performance, Area)
    • 단일 칩 형태로 면적이 줄어 공간 확보에 용이
    • 하나의 칩을 사용하면 데이터 전송을 위한 대역폭 제한 없고 전송 시간 감소로 성능 저하, 통합적인 전력 제어 쉬워 개별 전력 소모 감소로 배터리 효율 증가

 

  •  Example
    • AP(Application Processor) - Samsung Exynos
      • 스마트폰이나 태블릿에서 무언가를 할 때 사용되는 프로세서
    • CP(Communication Processor) - Qualcomm Snapdragon
      •  스마트폰이나 태블릿이 통신을 할 수 있게 함(전화, 메시지, 데이터 통신)

 

위의 SoC를 좀 더 세부적으로 살펴보자

 위 SoC의 구성요소

  • CPU Subsystem 
    • 4 cores, 2 L2 caches
      • L2 cache 역할 : CPU와 메인 메모리 사이에 위치하는 중간 단계의 캐시, 메모리 접근 속도 향상, 메모리 병목현상 해결, 멀티코어 CPU 지원
    • SW로 설계 가능 - (OS, Platform SW, Driver SW)
  • Infrastructure HW
    • DDR3, USB3.0, PCIe Gen3, Ethernet 등의 인터페이스 제공
  • Peripherals
    • HDMI, SATA, MIPI, LTE 등 다양한 주변장치 인터페이스
    • GPIO, UART, Timer 등의 로우 레벨 주변장치
  • CMU(Clock Management Unit)
    • 칩 내부의 클럭 생성 및 관리
  • PMU(Power management Unit)
    • 파워 도메인 관리, 전력 소모 최적화
  • Modem
    • 무선 통신을 위한 패킷 처리 모듈
    •  
  • Application Specific Components
    • 3D GFX: 3D 그래픽스 가속
    • DSP: 디지털 신호 처리 (Digital signal Processing)
    • Apps Accel: 애플리케이션 가속 엔진
    • TCP / Stack

 


 

3. HW IP in SoC

 

3-1) Functional view of CP & AP : SW IP & HW IP mixed

   전체적으로는 수신 안테나에서 들어온 RF 신호가 단계적 신호처리의 프로토콜 처리를 거쳐 사용자 어플리케이션에 전달되는 end-to-end 신호 흐름

Functional view of CP & AP : SW IP & HW IP mixed

 

빨간 박스는 HW IP, 파란 박스는 SW IP, 초록색 박스는 Mixed IP입니다.

 

 

다음은 단계적 신호처리 과정들을 하나씩 설명하겠습니다.

  • HW IP
    • RF I/F(interface)
      • RF 신호를 처리하고 안테나와 연결
    • Timing Synchronization
      • 송수신 시스템의 타이밍을 맞추어 신호를 정확하게 처리
    • Demodulation (OFDM)
      • OFDM (Orthogonal Frequency Division Multiplexing) 신호를 복조하여 데이터를 추출
    • CCH/SCH Decoding
      • 제어 채널(CCH)과 공유 채널(SCH)의 정보 해독
    • Packet Processing (w/ HW NAT) on the AP side
      • 하드웨어 기반의 네트워크 주소 변환(NAT)을 수행하여 패킷을 처리
    • Ext. I/F (PCIe Gen2/3/4 Lane1~4) or Bus I/F (AXI w/ gate keeper)
      • PCIe Gen2/3/4 또는 AXI 버스를 통해 외부 장치와 통신
    • Ext. Mem. (DRAM) - both on the CP (Communication Processor) and AP (Application Processor) sides
      • 통신 프로세서(CP)와 애플리케이션 프로세서(AP) 모두에서 DRAM을 사용
  • SW IP
    • CP stack (w/ SW NAT) on the AP side
      • 소프트웨어 기반의 네트워크 주소 변환을 AP에서 수행
    • User App. #1 to User App. #N on the AP side
      • AP에서 다양한 사용자 어플리케이션을 실행
  • MIXED IP
    • Channel Estimation
      • 무선 채널 상태를 추정하여 신호 처리에 활용
    • L2 processor (MAC/RLC/PDCP/SDAP)
      • MAC, RLC, PDCP, SDAP와 같은 계층 2 프로토콜을 처리
    • CP interface between the CP and AP sides
      • 통신 프로세서와 애플리케이션 프로세서 간의 인터페이스를 제공

 

3-2) HW IP with bus interface in SoC : Block & Interface diagram

  전체적으로 명령어 Fetch, Decoding, executing 과정을 통해 프로그램을 수행하는 전형적인

Processor Architecture  구성

HW IP with bus interface in SoC : Block & Interface diagram

  • APB interface : 주변 장치와의 통신을 담당하며, 저속 장치와 연결할 때 사용
  • 제어 레지스터(Control Register): 장치의 제어 신호를 설정합니다.
  • 상태 레지스터(Status Register): 장치의 상태를 나타냅니다.
  • 메모리 맵 레지스터(Memory Mapped Register): 메모리 주소에 매핑된 레지스터를 나타냅니다.
  • 인터럽트 관련 레지스터(Interrupt Related Register): 인터럽트 발생 시 정보를 저장합니다.
  • 메인 컨트롤러(Main Controller): 시스템 전체의 동작을 관리하고 제어하는 중앙 제어 장치입니다.
  • 입력 및 출력 버퍼(InBuf. & OutBuf.):
    • 입력 버퍼 #1, #2(InBuf. #1, #2): 외부 데이터를 임시 저장하는 공간입니다.
    • 출력 버퍼 #1, #2(OutBuf. #1, #2): 처리된 데이터를 임시 저장하는 공간입니다.
  • 데이터 처리 블록:
    • 블록 #1, #N(Block #1, #N): 데이터 처리 기능을 수행하는 블록들입니다. 각 블록은 여러 개의 하위 블록(SubBlk)을 포함하여 세부적인 작업을 처리합니다.
  • AXI 인터페이스: 고속 데이터 전송을 지원하며, DMA를 통해 직접 메모리 접근이 가능합니다.

 

3-3) ASIC Flow - Task view

○ ASIC 개발 프로세스 과정

ASIC Flow - Task view

 

Motivation

  • 표준 (New standard): 새로운 표준이 정의됩니다. 이 표준은 하드웨어 및 소프트웨어 개발의 기준이 됩니다.
  • Internal Plan (내부 계획): 내부적으로 개발 계획이 수립됩니다. 이 계획에는 새로운 표준에 맞춘 하드웨어 및 소프트웨어 개발 계획이 포함됩니다.
  • Customer Requirement (고객 요구사항): 고객의 요구 사항이 접수되고 이를 바탕으로 ASIC 개발이 시작됩니다.

Design Specification, formulation

  • Algorithm (알고리즘): 하드웨어 IP 및 인프라스트럭처 구현에 사용될 알고리즘이 개발됩니다.
  • HW Implementation (하드웨어 구현): 하드웨어 IP와 인프라스트럭처가 설계 및 구현됩니다.
  • Platform & Protocol SW (플랫폼 및 프로토콜 소프트웨어): 하드웨어가 원활하게 동작할 수 있도록 필요한 플랫폼 및 프로토콜 소프트웨어가 개발됩니다.

Design Entry

  • HW IP w/ SW Interface (소프트웨어 인터페이스를 갖춘 하드웨어 IP): 하드웨어 IP가 소프트웨어 인터페이스와 함께 설계됩니다. 이 과정에서 하드웨어소프트웨어호환되도록 설계됩니다.
  • SoC Platform (CPU/Bus/HIS/Peripherals): SoC 플랫폼이 설계됩니다. 여기에는 CPU, 버스, HIS(하드웨어 추상화 계층), 주변 장치 등이 포함됩니다.
  • SW IP (소프트웨어 IP): 플랫폼 및 프로토콜과 관련된 소프트웨어 IP가 설계 및 구현됩니다.

Function verification

  • Verification (검증): 설계된 하드웨어 및 소프트웨어가 올바르게 동작하는지 검증하는 과정입니다. 이 단계에서는 HW IP와 SoC 플랫폼이 검증됩니다.
  • Verified SoC Platform / Verified HW IP (검증된 SoC 플랫폼 / 검증된 하드웨어 IP): 검증이 완료된 SoC 플랫폼 및 하드웨어 IP는 최종적으로 검증된 상태로 진행됩니다.

 

  • PI (Physical Implementation, 물리적 구현): 검증된 하드웨어와 소프트웨어를 물리적으로 구현하는 단계입니다. 여기에서는 ASIC이 실제 물리적 형태로 만들어집니다.

 

  • ASIC (Unverified, w/o SW, 미검증된 상태, 소프트웨어 미포함): 물리적으로 구현된 ASIC은 처음에는 미검증된 상태이며, 소프트웨어가 포함되지 않은 상태로 시작합니다.

 

  • HW & SW Verification / SW Development (하드웨어 및 소프트웨어 검증 / 소프트웨어 개발): 물리적으로 구현된 ASIC을 검증하고 소프트웨어를 추가 개발합니다.

 

  • ASIC (Verified, w/ SW, 검증된 상태, 소프트웨어 포함): 검증된 하드웨어와 소프트웨어를 포함한 최종 ASIC이 만들어지고, 이 상태에서 고객에게 인도됩니다.

 

이번 포스트가 생각보다 길어져 4,5번(실습과정)에 대해서는 다음 포스트에 쓰겠습니다


본 자료들은 혁신공유대학 차세대반도체학과 강의자료에서 발췌하였으며, 교수님의 승인 하에 사용되었습니다.