Languages

CommunityCategory: XMODEL“No connectivity found for the circuit primitive port …” 에러메시지
SA Support Team Staff asked 6 years ago

XMODEL 시뮬레이션을 하다가 “No connectivity found for the circuit primitive port …” 에러가 났습니다. 이 에러메시지는 무슨 의미이고 어떻게 해결해야 하나요?

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

해당 에러메시지는 하나 이상의 circuit primitive에 연결된 xreal type 신호가 있는데, 그 신호의 값을 결정하는 driver위치를 찾을 수 없다는 뜻입니다. 많은 경우, module instance를 기술하는데, 포트 이름이나 순서, 타잎 등에 어떤 오류가 있어서, xreal-type의 input 포트가 연결되지 않은 채로 남겨져 있을때 발생합니다.

예를 들어, 아래와 같이 에러메시지가 발생하는 경우:

*** ERROR: [CLM] No connectivity found for the circuit primitive port 'tb.TB1.X3.M2.d'. It might be open or connected to a non-xreal-typed signal.
*** ERROR: [CLM] The following xreal-type ports are not being driven by a proper variable driver:
tb.TB1.X3.M2.d
tb.TB1.X3.M2.g
tb.TB1.X3.M2.s
tb.TB1.X3.M2.b
tb.TB1.X3.a
tb.TB1.X3.y
tb.TB1.X3.vdd
tb.TB1.X3.vss
tb.TB1.a
tb.TB1.y
tb.TB1.vdd
tb.TB1.vss

첫번째 에러메시지에서 tb.TB1.X3.M2.d 포트에 연결된 신호가 문제라는 것을 알 수 있습니다. 그런데, 이 신호가 여러 hierarchy를 거쳐서 여러개의 다른 module instance에 연결된 경우, 이 신호가 잘못 연결된 곳을 찾기가 쉽지 않습니다. 이를 위해, XMODEL 2018.12 이후 버전부터는 두번째 에러메시지를 함께 출력합니다. 두번째 메시지는 문제의 지점부터 상위 hierarchy로 거슬러 올라가면서 driver가 찾아지지 않는 포트들을 모두 나열해줍니다. 이 예제의 경우에는, 최상위 module인 tb.TB1의 포트들인 a, y, vdd, vss가 아무 신호에도 연결되지 않은채 floating 되어 있거나, xreal type이 아닌 신호에 연결되어 있었습니다. 이 모듈의 연결관계와 관련하여 시뮬레이터가 출력한 warning 또는 error 메시지가 있었는지 로그파일을 찾아보는 것도 좋은 디버깅 요령입니다.