논리 시뮬레이션

Logic simulation

논리 시뮬레이션시뮬레이션 소프트웨어를 사용하여 디지털 회로와 하드웨어 기술 [1][2]언어의 동작을 예측하는 것입니다.시뮬레이션은 트랜지스터 레벨, 게이트 레벨, Register-Transfer Level(RTL; 레지스터 전송 레벨), Electronic System Level(ESL; 전자 시스템 레벨) 또는 동작 레벨 등 다양한 수준의 물리적 추상화에서 실행할 수 있습니다.

검증에 사용

논리 시뮬레이션은 하드웨어 설계 시 검증 프로세스의 일부로 사용할 수 있다.

시뮬레이션은 설계에 사용되는 동일한 언어와 기호로 구성된다는 점에서 사용자에게 익숙한 모양과 느낌을 제공한다는 장점이 있습니다.사용자가 설계와 직접 상호작용할 수 있도록 함으로써 시뮬레이션은 설계자가 설계에 대한 피드백을 얻을 수 있는 자연스러운 방법입니다.

시뮬레이션 길이

설계를 디버깅하고 검증하는 데 필요한 작업 수준은 설계의 완성도에 비례합니다.즉, 설계의 초기 단계에서 버그나 잘못된 동작은 일반적으로 빠르게 발견됩니다.설계가 성숙함에 따라 시뮬레이션 실행에 더 많은 시간과 리소스가 필요하며 오류를 발견하는 데 점점 더 오랜 시간이 걸립니다.이는 현대 시스템의 컴포넌트를 시뮬레이션할 때 특히 문제가 됩니다.시뮬레이션에서 단일 클럭 사이클로 상태를 변경하는 각 컴포넌트는 시뮬레이션을 위해 여러 클럭 사이클이 필요합니다.

이 문제에 대한 간단한 접근법은 필드 프로그래머블게이트 어레이로 회선을 에뮬레이트하는 것입니다.형식적인 증거가 항상 가능하거나 편리한 것은 아니지만 시뮬레이션의 대안으로 공식 검증을 탐구할 수도 있다.

논리 시뮬레이션을 가속화하는 예상 방법은 분산 및 병렬 [3]계산을 사용하는 것입니다.

시뮬레이션의 완전성을 측정하기 위해 코드 커버리지, 기능 커버리지 및 논리 커버리지툴을 평가하는 툴이 존재합니다.

이벤트 시뮬레이션과 사이클 시뮬레이션

이벤트 시뮬레이션을 사용하면 신호가 한 장소에서 다른 곳으로 이동하는 데 필요한 지연 시간인 단순한 타이밍 정보를 설계에 포함할 수 있습니다.시뮬레이션 중에 신호 변화는 이벤트 형태로 추적됩니다.특정 시간에 변경되면 특정 지연 후 이벤트가 트리거됩니다.이벤트는 발생 시간별로 정렬되며 특정 시간 동안의 모든 이벤트가 처리되면 시뮬레이션된 시간이 다음 일정된 이벤트의 시간으로 앞당겨집니다.이벤트 시뮬레이션의 실행 속도는 처리할 이벤트의 수(모델의 액티비티 양)에 따라 달라집니다.

이벤트 시뮬레이션은 신호 타이밍에 관한 피드백을 제공할 수 있지만 정적 타이밍 분석을 대체하는 것은 아닙니다.

사이클 시뮬레이션에서는 지연을 지정할 수 없습니다.사이클 정밀도 모델을 사용하여 모든 게이트를 사이클별로 평가합니다.따라서 사이클 시뮬레이션은 모델의 활동에 관계없이 일정한 속도로 실행됩니다.최적화된 구현은 입력이 변경되지 않은 게이트의 평가를 건너뛰어 시뮬레이션 속도를 높이기 위해 낮은 모델 활동을 활용할 수 있습니다.이벤트 시뮬레이션에 비해 사이클 시뮬레이션은 더 빠르고 확장성이 뛰어나며 하드웨어 가속/에뮬레이션에 더 적합합니다.

단, 칩 설계 경향에서는 (클럭 게이트전력 게이트 등의 기술이 전력 소모를 줄이기 위해 많이 사용되고 있기 때문에) 회선의 액티비티 팩터 감소에 의해 이벤트 시뮬레이션이 상대적인 퍼포먼스를 얻고 있는 것을 알 수 있습니다.이러한 경우, 이벤트 시뮬레이션은 필요한 이벤트만 시뮬레이션하기 때문에 성능은 더 이상 사이클 시뮬레이션에 대한 단점이 아닐 수 있습니다.또한 이벤트 시뮬레이션은 비동기 로직이나 부정합 클럭과 같은 사이클 시뮬레이션으로 처리하기가 어려운 설계 기능을 보다 유연하게 처리할 수 있다는 이점도 있습니다.이러한 고려사항으로 인해, 대부분의 상용 논리 시뮬레이터는 주로 사이클 기반 [4]기술에 의존하는 경우에도 이벤트 기반 기능을 가지고 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Laung-Terng Wang; Yao-Wen Chang; Kwang-Ting (Tim) Cheng (11 March 2009). Electronic Design Automation: Synthesis, Verification, and Test. Morgan Kaufmann. ISBN 978-0-08-092200-3.
  2. ^ V. Litovski; Mark Zwolinski (31 December 1996). VLSI Circuit Simulation and Optimization. Springer Science & Business Media. ISBN 978-0-412-63860-2.
  3. ^ 분산 이벤트 기반 논리 시뮬레이션을 위한 소프트웨어 시스템.Ladyzhensky Y.V., Popoff Y.V. IEEE 동서 설계 및 테스트 워크숍 진행(EWDTW'05)IEEE EWDTW, 2005, 페이지 119-122 ISBN 966-659-113-8
  4. ^ Lavagno, Martin 및 Scheffer의 집적회로를 위한 전자설계 자동화 핸드북, ISBN 0-8493-3096-3, EDA 분야의 조사.위의 요약은 John Sanguetti가 제1권 디지털 시뮬레이션 16장에서 인용한 것입니다.