inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Basic SystemVerilog Testbench ( 회로설계 검증 )

OOP 랜덤화 - 3 ( Constraint 활용하기 )

Inline constraints 관련 질문

해결된 질문

45

xo

작성한 질문수 8

0

안녕하세요, 좋은 강의 잘 수강하고 있습니다.

inline constraints 설명에 있는 예제 코드에서,
obj_a.randomize() with {x > 3 && x < 10} 관련하여 몇 가지 질문이 있습니다.

(1) 위와 같이 적용되는 randomize는 class demo 자체가 아닌, obj_a에 할당된 object memory에만 적용되는 것으로 이해했는데, 이해한 내용이 맞는지 궁금합니다.
(2) class에 정의된 x > 0; x <= 5;의 constraint와, inline constraint x>3 && x<10;이 같이 적용되는 경우, 최종적으로 x>3 && x<=5로 solve 되는 것이 맞는지 궁금합니다.
(3) 마지막으로 local::y에 대해 언급하신 건, constraint 조건을 걸 때, class의 y와 program block에 있는 y의 충돌을 피하기 위한 것인지 궁금합니다.

질문 읽어주셔서 감사합니다.

verilog-hdl system-verilog verification system-verilog-dpi

답변 1

1

MetaEncore

xo 님,

수강해 주셔서 감사드립니다.

(1) 네, 맞습니다. obj_a randomize()를 call 하므로, 해당 obj_a 에만 해당된 것입니다.

(2) 네, 맞습니다. inline constraint 가 더해지면, 기존에 있던 모든 constraint와 inline constraint가 모두 만족하는 space로 constraint가 solving이 되게 됩니다.

(3) inline constraint 를 작성할 때, 가령 y 라고 언급한다면, 예에서는 default로 obj_a 에 있는 y 를 의미하게 됩니다. 하지만 inline constraint가 속해 있는 initial begin ~ end block 안에 y 라는 변수가 있을 수 있습니다. 만약에 이 initial block의 y 를 참조하고 싶다면, local::y 로 해야 한다고 말씀드린 것입니다.

답변이 되셨는지요?

 

1

xo

이해됐습니다. 답변 주셔서 감사합니다!

[HDL 32장-2부] 참고 링크 관련

1

36

2

강의 만료일 연장 신청

0

33

2

기초예제 파일 불러오기 문의

0

26

2

Zybo 환경에서 PL RTL UART 보드 검증 방법

0

31

2

혹시 별도의 자료가 있나요?

0

34

2

queue assignment pattern 문의 건

0

33

1

Mission 5 문의 건

0

46

2

Zynq z7 FPGA single-ended 관련

0

40

1

강의자료 PDF 어떻게받나요?

0

42

2

강의 ppt 자료 요청건

0

57

2

미션tree

0

41

3

강의7 질문

0

47

2

mission1 질문

0

60

3

Verilog Testbench DB 원본

0

50

1

SystemVerilog Interface - 1에서 modport 관련 질문

0

60

1

FIFO read sequence waveform 관련 문의

0

85

2

EDAPlayground에서 코드 찾기

0

82

2

섹션 3. 20 DPI 이해하기 에서 DPI-C : Compile and Debug 부분 질문 입니다.

1

115

2

미션 3 로그 결과 문의

0

80

2

영상이 이상합니다.

0

79

1

sv에서 class에 대한 질문입니다.

1

63

1

'fork-join_none'으로 시작된 백그라운드 스레드의 종료는 어떻게 관리되나요?

0

70

1

SystemVerilog 내 program 이 top module 의 역할을 하는건가요?

2

122

2

강의문의

1

89

1