2017-04-07 6 views
1

시스템 이미지 semaphore은 실제로 절반 굽습니다.systemverilog, 재설정 처리 방법은 무엇입니까?

reset 일 경우 .flush()과 같은 것일 경우 어떤 방법으로도 세마포를 해제 할 수 없습니까? uvm_tlm_fifo?

얼마나 많은 세마포어가 잠겨 있는지 알 수있는 방법이 없습니까?

UVM에 사용할 수있는 래퍼가 있습니까? uvm_event은 기본 세마포어 기능을 확장합니까?

사람들은 더 많은 기능을 위해 mailbox/tlm_fifo를 사용하도록 제안했지만 1을 할당하는 대신 세마포어를 대체 할 수 없습니다. keyCount.

의견이 있으면 알려 주시기 바랍니다.

미리 감사드립니다.

답변

2

SystemVerilog의 세마포 및 사서함은 필요에 맞게 확장 할 수있는 기본 제공 클래스입니다. 세마포는 기본 키 잠금 및 잠금 해제 메커니즘을 제공하지만 키를 관리하는 것은 사용자의 책임입니다.


나는 세마포어를 확장하거나 캡슐화하여 누가 키에 액세스 할 수 있고 얼마나 많은 키가 사용되는지를 제어 할 수 있다는 것을 의미했습니다.

1

그냥 세마포어와 관련된 모든 오래된 스레드를 죽이고 그 자리에 새로운 세마포어를 만들고 이전의 세마포어를 잊어 버리십시오. 이전에 실행중인 스레드를 정리하는 것보다 재설정을 처리하는 것이 더 쉬운 방법 일 것입니다.