Languages

CommunityCategory: XMODEL주기적으로 값이 계단식으로 증가하는 신호 생성방법
SA Support Team Staff asked 6 years ago

XMODEL primitive들을 활용해서 주기적으로 값이 일정하게 계단식으로 증가하는 신호를 생성할 수 있나요?

1 Answers
Best Answer
SA Support Team Staff answered 6 years ago

생성을 원하시는 신호는 그 자체로는 주기적인 신호가 아니라 어려움이 있으신 것 같습니다. 여러가지 방법이 있겠습니다만, 대표적으로 두가지를 소개합니다.

1. integ primitive 을 활용한 모델링

먼저 pwl_gen primitive를 사용해 주기적인 펄스 신호를 만들고, 그 신호를 integ primitive를 통해 적분하여 계단식으로 값이 증가하는 신호를 생성하는 방법입니다. pwl_gen primitive로 생성되는 각 펄스의 면적과 integ primitive의 gain은 각 step당 증가되는 변화량을, 각 펄스의 폭은 그 값이 변화되는 시간을, 그리고 integ primitive의 init_value는 출력신호의 초기값을 결정합니다.

예를 들어, 200ns마다 한 스텝당 10mV씩 값이 증가하는 신호를 만들기 위해서 다음과 같이 모델링 할 수 있습니다.




2. sample primitive를 활용한 모델링

다른 방법은 sample primitive를 활용하는 방법입니다. 예를 들어, 아래 그림에 보인 모델의 경우, add primitive 은 현재 출력값에 기초해서 다음 주기에 출력할 출력값을 계산하고, sample primitive은 그 값이 실제로 출력에 전달되는 타이밍을 결정합니다. 따라서 add primitive가 더하는 값을 통해 스텝당 변화량을, sample primitive가 trigger되는 주기를 통해 변화주기를 정할 수 있습니다. 참고로, buffer primitive는 init_value라는 파라메터를 통해 초기값을 결정하기 위해 사용되었습니다. 아래의 예는 200ns마다 한 스텝당 10mV씩 값이 증가하는 신호를 생성합니다.