2017-12-12 1 views
-2

perl에서 가져 오기 오류가 발생했다고 생각합니다.Verilog :: VCD :: Writer 오류 수정 : 개체 메서드 addSignal을 찾을 수 없습니까?

직접 vcd를 덤프하도록 요청하지 마십시오. 나는 덤프하는 법을 안다. 그러나 나는 단지 이것을 묻기를 원한다.

vcd 파일을 작성하는 Perl의 모듈 Verilog :: VCD :: Writer가 있습니다. 내가 시도를 위해 사용법 코드를 복사 그러나, 그것은 항상 오류가 발생합니다 : 내 설치에 아무런 문제가 없을 것, 그래서

Can't locate object method "addSignal" via package "Verilog::VCD::Writer" at tester.pl line 10.

시놉시스는 addSignal 전에 addComment 및이 AddModule를 호출합니다. addSignal은 Verilog/vcd/writer/Module.pm에 정의 된 함수이고 다른 두 개는 Verilog/vcd/writer.pm에 정의되어 있습니다. Verilog :: VCD :: Writer : Module을 추가하더라도 여전히 디버거는 "addSignal"메서드를 찾기 위해 Writer 패키지로 이동합니다. 나는이 방법으로 "addSignal"함수를 호출하는 경우

는 :

$writer->Verilog::VCD::Writer::Module::addSignal("TX",7,0); 

Can't locate object method "signals_push" via package "Verilog::VCD::Writer" at /home/cqsun/lib/perl5/lib/site_perl/5.18.2/Verilog/VCD/Writer/Module.pm line 41.

는 Module.pm는 해시에 signals_push을 정의하고 명확하게 디버거를 찾지 못했습니다.

나는 뭔가 이상하다고 생각하지만, 나는 그것이 어디 있는지 모른다.

이 패키지에 대한 웹 페이지 이것은 문서 버그 http://search.cpan.org/~jvs/Verilog-VCD-Writer-0.002/lib/Verilog/VCD/Writer.pm

답변

0

입니다.

POD의 SYNOPSIS 섹션에있는 코드에 구문 오류가 있습니다. 다음은 오류없이 실행되며 VCD 출력 파일을 생성하는 코드의 수정 버전입니다 :

use Verilog::VCD::Writer; 

my $writer = Verilog::VCD::Writer->new(timescale=>'1 ns',vcdfile=>"test.vcd"); 
$writer->addComment("Author:Vijayvithal"); 

my $top = $writer->addModule("top"); # Create toplevel module 
my $TX = $top->addSignal("TX",7,0); #Add Signals to top 
my $RX = $top->addSignal("RX",7,0); 

my $dut = $writer->addModule("DUT"); #Create SubModule 
$dut->dupSignal($TX,"TX",7,0); #Duplicate signals from Top in submodule 
$dut->dupSignal($RX,"RX",7,0); 

$writer->writeHeaders(); # Output the VCD Header. 
$writer->setTime(0); # Time 0 
$writer->addValue($TX,0); # Record Transition 
$writer->addValue($RX,0); 
$writer->setTime(5); # Time 1ns 
$writer->addValue($TX,1); 
$writer->addValue($RX,0); 

이 코드는 addSignal에 대한 잘못된 객체 핸들을 사용은; $writer 대신 $top을 사용해야합니다. 헬프 toolic에 대한 https://rt.cpan.org/Ticket/Display.html?id=123724

+1

감사 :

나는 버그 열었던 보고서에 패치를 업로드! –

+0

@MichaelSun : 천만에요. 모듈 작성자는 이것을 새로운 버전 (0.004)으로 수정했습니다. – toolic

관련 문제