"공통 데이터 모델"이라는 용어는 소프트웨어 공학의 여러 분야에서 사용됩니다. 큰 틀에서 볼 때, 소프트웨어 시스템은 두 가지 부분으로 구성되어 있다고 볼 수 있습니다:
공통 데이터 모델은 여러 관련 애플리케이션이 동일한 데이터를 기반으로 작동하고 이를 공유할 수 있도록 해당 논리적 인프라를 표준화하는 것을 목표로 합니다.
공통 데이터 모델을 전자 설계 자동화(EDA) 소프트웨어에 적용하는 목적은 일반적으로 순차적으로 실행되는 설계 흐름의 관련 단계 간 정보 공유를 원활하게 하는 것입니다. 한 가지 예로 다음과 같은 작업을 포함할 수 있는 논리적/물리적 구현 흐름을 들 수 있습니다.
또 다른 예로는 다음과 같은 작업을 포함할 수 있는 시뮬레이션 및 검증 플로우가 있습니다.
공통 데이터 모델은 일관된 메타데이터 세트를 포함하여 애플리케이션 간에 데이터와 그 의미를 공유할 수 있도록 합니다. 공통 데이터 모델에는 일관된 메타데이터 외에도 엔티티, 속성, 시맨틱 메타데이터, 관계 등의 항목이 포함된 표준화되고 확장 가능한 데이터 스키마 세트가 포함됩니다.
공통 데이터 모델의 모든 요소가 정의되면, 모든 애플리케이션이 동일한 표준화된 절차를 사용할 수 있도록 데이터에 액세스하고 조작하는 방법이 개발됩니다.
공통 데이터 모델은 소프트웨어 개발 프로세스의 효율성을 높일 수 있는 다양한 기회를 제공합니다. 필요한 정보를 저장하고 처리하기 위한 데이터 구조를 별도로 정의하지 않고도 새로운 알고리즘을 개발할 수 있습니다. 공통 데이터 모델은 표준 구조를 사용하여 정보를 저장하고 표준 접근 방식을 통해 데이터를 처리할 수 있는 기능을 제공합니다.
설계 흐름 통합에는 공통 데이터 모델 없이는 구현하기 매우 어려운 또 다른 중요한 측면이 있습니다. EDA 흐름의 초기 단계 툴이 후기 단계 툴의 예측 데이터에 접근하여 초기 단계에서 사용되는 모델의 정확도를 높이는 것은 매우 유용한 경우가 많습니다. 로직 합성을 수행하는 동안 백엔드 배치 및 라우팅 툴에서 더 정확한 플로어플랜 및 라우팅 지연 정보를 가져오는 것이 그 대표적인 예입니다.
공통 데이터 모델을 사용하면 이러한 데이터 공유가 가능해집니다. 후기 단계의 정보를 활용하여 초기 단계의 결정을 내리는 프로세스를 시프트 레프트(shift-left) 접근 방식이라고 합니다.
공통 데이터 모델은 또한 설계 플로우의 효율성을 대폭 향상시킵니다. 공통 데이터 모델이 없으면 데이터 공유가 매우 어려워집니다. 자체 데이터 모델로 컴파일하는 다음 툴에 전달하기 위해 설계 데이터베이스를 내부 모델에서 표준 판독 가능 형식으로 내보내야 합니다. 이 프로세스는 런타임을 증가시키고 정보 손실을 초래할 수 있습니다. 또한 데이터 중복으로 인해 디스크 공간을 훨씬 더 많이 사용하여 NFS 파일 시스템에 문제를 일으킬 수 있습니다.
공통 데이터 모델을 통해 EDA 플로우의 초기 및 후기 단계 툴 간에 정보를 공유할 수 있습니다. 이를 통해 설계의 시프트 레프트 접근 방식이 촉진되며, 초기 단계 결과에 후기 단계의 영향이 반영됨에 따라 수렴성과 예측 가능성이 높은 설계 프로세스가 구현됩니다. 배치 정보와 배선 지연을 로직 합성 과정에서 더욱 정밀하게 모델링하는 물리 합성 개념이 이러한 접근 방식의 대표적인 예입니다. RTL 설계 의도를 플로우 전반에 전파하는 것 역시 상당한 이점을 제공합니다. 예를 들어, RTL 설계 의도를 활용하면 후기 배치 및 배선 단계의 멀티비트 리뱅킹이 훨씬 수월해집니다. 이러한 의도 정보가 없으면 툴은 뱅킹을 위해 무작위로 나열된 로직을 일일이 확인해야 합니다. 또한 공통 데이터 모델은 '설계 메모리' 효과를 구현하여, 효과가 입증되지 않은 접근 방식이 전파되도록 함으로써 향후 유사한 사례에서 이를 방지할 수 있도록 지원합니다.
수렴적 설계 플로우는 재작업을 줄이고 시장 출시 시간을 단축하여 더욱 효율적인 설계 프로세스를 이끌어냅니다. 이는 설계 중인 칩을 사용하는 시스템의 수명 주기 수익성에 중대한 긍정적 영향을 미칩니다. 잘 개발된 공통 데이터 모델을 광범위하게 사용하면 또 다른 중요한 이점이 열립니다. 모든 칩 설계 프로젝트는 저마다 다르며, 모든 설계 그룹에는 이러한 고유한 과제를 해결하는 특정한 방식이 있습니다. 팀이 잘 개발된 공통 데이터 모델을 기반으로 하는 툴을 사용하는 경우, 이제 설계 그룹은 초기 및 후기 단계 데이터를 공유하기 위한 고유한 플로우와 전략을 개발할 수 있게 됩니다.
그 결과 완벽하게 타겟팅되고 맞춤화된 설계 플로우가 탄생합니다. 당사는 이를 고객 맞춤형 초수렴 설계 플로우라고 부릅니다. 이는 복잡한 칩 설계 프로젝트의 정확한 요구 사항을 충족하는 데 사용할 수 있는 가장 강력한 툴 중 하나입니다.
Synopsys Fusion Compiler™는 공통 데이터 모델을 갖춘 단일 RTL-to-GDSII 디지털 구현 솔루션을 제공합니다.
Fusion Compiler는 디지털 설계 구현의 새로운 시대를 열어주는 혁신적인 RTL-to-GDSII 흐름을 제공합니다. 이 솔루션은 업계에서 가장 발전된 설계가 제기하는 과제를 해결하기 위해 이전과는 차원이 다른 수준의 예측 가능한 결과 품질을 제공합니다. 통합 아키텍처를 통해 RTL-to-GDSII 흐름 전반에 걸쳐 기술을 공유함으로써, 결과 품질을 20% 향상시키고 결과 도출 시간을 2배 단축하는 초융합 설계 흐름을 구현합니다.
이 기술의 장점은 다음과 같습니다: