UVM015 - UART_Tx, uvm_minimal

HW 2026. 7. 19. 04:39
728x90

이전

https://hdnua.tistory.com/266

 

UVM014 - UART_Tx, sv_analysis_port

이전https://hdnua.tistory.com/265 UVM013 - UART_Tx, sv_seq_item_port이전https://hdnua.tistory.com/264 UVM012 - UART_Tx, sv_class_uvc이전https://hdnua.tistory.com/263 UVM011 - UART_Tx, mailbox_channel이전https://hdnua.tistory.com/262 UVM010 - UART_T

hdnua.tistory.com

.

.

이번의 목표

// =============================================================================
// m15_uvm_minimal : 실제 UVM object, component, phase와 TLM port
//
// m14_sv_analysis_port 대비 변화:
//   - sequence item과 sequence가 uvm_sequence_item / uvm_sequence를 상속한다.
//   - driver, sequencer, monitor, scoreboard, agent, env와 test가 UVM component가 된다.
//   - constructor 기반 실행을 build/connect/run phase와 factory 생성으로 바꾼다.
//   - virtual interface는 uvm_config_db로 전달한다.
//   - request와 expected/actual 경로는 실제 UVM TLM port를 사용한다.
//
// 핵심:
//   - m14의 역할과 데이터 ownership이 UVM 표준 구조에 어떻게 매핑되는지 보여준다.
//   - config object, factory override와 register model은 아직 도입하지 않는다.
// =============================================================================

.

.

Testbench

.

.

Waveform

.

.

이전과의 비교

.

.

.

.

.

.

.

.

.

.

.

728x90

'HW' 카테고리의 다른 글

UVM014 - UART_Tx, sv_analysis_port  (0) 2026.07.19
UVM013 - UART_Tx, sv_seq_item_port  (0) 2026.07.19
UVM012 - UART_Tx, sv_class_uvc  (0) 2026.07.19
UVM011 - UART_Tx, mailbox_channel  (0) 2026.07.19
UVM010 - UART_Tx, uvc_block  (0) 2026.07.19
Posted by 누아니
,
728x90

이전

https://hdnua.tistory.com/265

 

UVM013 - UART_Tx, sv_seq_item_port

이전https://hdnua.tistory.com/264 UVM012 - UART_Tx, sv_class_uvc이전https://hdnua.tistory.com/263 UVM011 - UART_Tx, mailbox_channel이전https://hdnua.tistory.com/262 UVM010 - UART_Tx, uvc_block이전https://hdnua.tistory.com/261 UVM009 - UART_Tx, if_s

hdnua.tistory.com

.

.

이번의 목표

// =============================================================================
// m14_sv_analysis_port : 순수 SystemVerilog analysis port bridge
//
// m13_sv_seq_item_port 대비 변화:
//   - sequence-driver의 seq_item_port / req 경로는 그대로 유지한다.
//   - monitor는 actual mailbox 대신 analysis_port.write(item)을 호출한다.
//   - env가 monitor port와 scoreboard imp를 연결한다.
//   - scoreboard는 write(actual) callback에서 expected와 actual을 비교한다.
//
// 핵심:
//   - expected item은 계속 sequence가 생성해 typed mailbox로 전달한다.
//   - 아직 UVM library는 사용하지 않는다.
//   - 다음 단계에서는 helper class를 실제 UVM component와 TLM port로 바꾼다.
// =============================================================================

.

.

Testbench

.

.

Waveform

.

.

이전과의 비교

.

.

.

.

.

.

.

.

728x90

'HW' 카테고리의 다른 글

UVM015 - UART_Tx, uvm_minimal  (0) 2026.07.19
UVM013 - UART_Tx, sv_seq_item_port  (0) 2026.07.19
UVM012 - UART_Tx, sv_class_uvc  (0) 2026.07.19
UVM011 - UART_Tx, mailbox_channel  (0) 2026.07.19
UVM010 - UART_Tx, uvc_block  (0) 2026.07.19
Posted by 누아니
,
728x90

이전

https://hdnua.tistory.com/264

 

UVM012 - UART_Tx, sv_class_uvc

이전https://hdnua.tistory.com/263 UVM011 - UART_Tx, mailbox_channel이전https://hdnua.tistory.com/262 UVM010 - UART_Tx, uvc_block이전https://hdnua.tistory.com/261 UVM009 - UART_Tx, if_seqitem_sequencer이전https://hdnua.tistory.com/260 UVM008 - UART_

hdnua.tistory.com

.

.

이번의 목표

// =============================================================================
// m13_sv_seq_item_port : 순수 SystemVerilog seq_item_port bridge
//
// m12_sv_class_uvc 대비 변화:
//   - sequence는 이전처럼 sequencer에 item을 넣는다.
//   - driver는 sequencer를 직접 알지 않고 seq_item_port를 통해 req를 받는다.
//   - get_next_item(req) -> drive_item(req) -> item_done() 순서를 사용한다.
//
// 핵심:
//   - class UVC, virtual interface, typed mailbox 구조는 그대로 유지한다.
//   - 아직 UVM library는 사용하지 않는다.
//   - 다음 단계에서는 monitor의 actual 경로에 analysis_port 모양을 도입한다.
// =============================================================================

.

.

Testbench

.

.

Waveform

.

.

이전과의 비교

.

.

.

.

.

.

.

728x90

'HW' 카테고리의 다른 글

UVM015 - UART_Tx, uvm_minimal  (0) 2026.07.19
UVM014 - UART_Tx, sv_analysis_port  (0) 2026.07.19
UVM012 - UART_Tx, sv_class_uvc  (0) 2026.07.19
UVM011 - UART_Tx, mailbox_channel  (0) 2026.07.19
UVM010 - UART_Tx, uvc_block  (0) 2026.07.19
Posted by 누아니
,