Jump to content

u24c02

Members
  • Content Count

    8
  • Joined

  • Last visited

About u24c02

  • Rank
    Member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Dear All, I'm trying to record the transaction of UVM by using Irun(Candence). But I can't find any usage for that. But I find one tcl script as the below when I googling, #Probe waveforms database -open -shm -into waves.shm waves -default # -event probe -create -database waves top -all -depth all # -memories probe -create -database waves $uvm:{uvm_test_top} -all -depth all -dynamic #stop at the end of the build phase and enable full verbosity #messaging and transaction recording uvm_phase -stop_at -build_done run uvm_message UVM_FULL * #Enable transaction recording uvm_set "*" "recording_detail" UVM_FULL if {!$simvision_attached} { run; exit; }; But I really don't know how to use above tcl code in my uvm running code. This is my running code This is list.f -uvmhome $UVM_HOME -incdir ../sv +UVM_VERBOSITY=UVM_LOW ../sv/yapp_pkg.sv ./top.sv ~ and I run by using this way irun -f list.f ans here is what I've got the error message ncsim> database -open -shm -into waves.shm waves -default -event Created default SHM database waves ncsim> ncsim> #Probe all signals at all levels ( be careful for lager designs) ncsim> probe -create -database waves uart_ctrl_top -all -depth all ncsim: *E,PNOOBJ: Path element could not be found: uart_ctrl_top. ncsim> ncsim> #Probe assertion as transactions ncsim> probe -create -datebase waves uart_ctrl_top.uart_dut.reg.receiver -assertions -transaction -depth all ncsim: *E,UNKOPT: unrecognized option for the probe [-create] command (-datebase). ncsim> probe -create -datebase waves uart_ctrl_top.uart_dut.reg.transmitter -assertions -transaction ncsim: *E,UNKOPT: unrecognized option for the probe [-create] command (-datebase). ncsim> ncsim> #Probe my arrays ncsim> probe -create -datebase waves md_top -all -memories -depth all ncsim: *E,UNKOPT: unrecognized option for the probe [-create] command (-datebase). ncsim> ncsim> #Probe the entire UVM Testbench hierachy ncsim> probe -create -database waves uvm_pkg::uvm_top -all -depth all ncsim: *E,OBJACC: Object must have read access: uvm_pkg::uvm_top. ncsim> ncsim> #Run to end of build ncsim> uvm_phase -stop_at -end connect Created stop 1:907b0a6e:uvm ncsim> run Would you please help me How do I record all transaction of UVM by using irun? Thanks in advanded
  2. Dear All, I'd like to dump the waveform using irun in UVM env. Currently I'm working on uvm-1.1d/examples/simple/basic_examples/module directory and INSICIVE152. the problem is that I don't know how to make wave dump file. Would you please help me let me know how to get the wave dump file with any example ?
  3. Dear All, I'm trying to compile the uvm-1.2 example. Basically, there examples in /uvm-1.2/example/simple/trivial/ Makefile.ius When I run " make -f Makefile.ius" then I've got the below error messages. m_handles[stream]=1; | ncvlog: *E,UNDIDN (INCISIVE151/tools/methodology/UVM/CDNS-1.1d/additions/sv//cdns_recording.svh,79|16): 'm_handles': undeclared identifier [12.5(IEEE)]. irun: *E,VLGERR: An error occurred during parsing. Review the log file for errors with the code *E and fix those identified problems to proceed. Exiting with code (status 1). irun: *E,UVMCXF: The process to compile the uvm extensions has failed. Add -uvmnocdnsextra to disable the addon package or point to the right version using -uvmexthome. What am I supposed to do to resolve this problem?
  4. Dear All, Currently, I'm trying to make multiple burst on systemverilog especially the code with cadence's VIPCAT tool. The below code which is I've got at all `timescale 1ps/1ps import DenaliSvMem::*; import DenaliSvCdn_ahb::*; class myAhbInstance extends denaliCdn_ahbInstance; denaliMemInstance regInst ; // Handle to the register-space function new(string instName); super.new(instName); regInst = new( { instName, "(registers)" } ); endfunction endclass // Test module module pstest; // Import the DDVAPI ACE SV interface and the generic Mem inetrface import DenaliSvCdn_ahb::*; import DenaliSvMem::*; ahb_top ahb_top(); test2 M0( .HCLK(ahb_top.hclk), .HRESET(ahb_top.hresetn), .HADDR(ahb_top.haddr0), .HTRANS(ahb_top.htrans0), .HWRITE(ahb_top.hwrite0), .HSIZE(ahb_top.hsize0), .HBURST(ahb_top.hburst0), .HPROT(ahb_top.hprot0), .HWDATA(ahb_top.hwdata0), .HRDATA(ahb_top.hrdata), .HREADY(ahb_top.hready), .HRESP(ahb_top.hresp), .HLOCK(ahb_top.hlock0), .HBUSREQ(ahb_top.hbusreq0), .HGRANT(ahb_top.hgrant0) ); myAhbInstance activeMaster1; denaliCdn_ahbTransaction burst1; task sendTransfers; burst1= new; burst1.pInst = activeMaster1; burst1.FirstAddress = 32'h0 burst1.Direction = DENALI_CDN_AHB_DIRECTION_WRITE; burst1.Kind = DENALI_CDN_AHB_BURSTKIND_INCR4; burst1.Size = DENALI_CDN_AHB_TRANSFERSIZE_HALFWORD; burst1.Data = new [8]; foreach (burst1.Data[ii]) burst1.Data[ii] = ii; void'(activeMaster1.transAdd(burst1,0)); endtask // sendTransfer initial begin activeMaster1 = new ("pstest.M0"); //the default master activeMaster1.regWrite(DENALI_CDN_AHB_REG_Verbosity, DENALI_CDN_AHB_MESSAGEVERBOSITY_MEDIUM); $display("Going to create new wires "); activeMaster1.regWrite(DENALI_CDN_AHB_REG_ContinueOnError, 1); sendTransfers; //sendTransfers; //sendTransfers; //sendTransfers; #10000000; $finish; end But I came across above code just make a one burst transaction. I want to make multiple burst transaction. Especially, Start address which is from 0x00000000 to 0x10000000 with random data. I can make that way by just use multiple 'sendTransfers' . but I think this is not a good way. I think there is more efficient way. How do I make multiple burst transaction.?
  5. Dear all. Now I'm trying to digging the systemverilog as the below denaliCdn_ahbTransaction burst1; task sendTransfers; burst1= new; burst1.Direction = DENALI_CDN_AHB_DIRECTION_WRITE; burst1.FirstAddress = 32'h4020;//16416 M3 and M0 to S1 burst1.Kind = DENALI_CDN_AHB_BURSTKIND_INCR4; burst1.Size = DENALI_CDN_AHB_TRANSFERSIZE_HALFWORD; burst1.Data = new [8]; foreach (burst1.Data[ii]) burst1.Data[ii] = ii; void'(activeMaster1.transAdd(burst1,0)); .... endtask From here , how does ii be decided it's value without initialized ? how does a variable to be decided it's value without it's initialize in systemverilog?
  6. Thanks for replay. I've update the test1.v and executing script. Would you please help me how to resolve this? tar.zip
  7. Hi, I'm trying to verify the simple AHB block by using VIPCAT, so I made simple test.v as the below `timescale 1ps/1ps module test2( HCLK, HRESET, HADDR, HTRANS, ... HLOCK, HGRANT ); parameter interface_soma = "test2.soma"; parameter init_file = ""; parameter sim_control = ""; input HCLK; input HRESET; output [31:0] HADDR; ... assign HBUSREQ = den_HBUSREQ; output HLOCK; reg den_HLOCK; assign HLOCK = den_HLOCK; input HGRANT; initial $cdn_ahb_access(HCLK,HRESET,den_HADDR,den_HTRANS,den_HWRITE,den_HSIZE,den_HBURST,den_HPROT,den_HWDATA,HRDATA,HREADY,HRESP,den_HBUSREQ,den_HLOCK,HGRANT); endmodule I want to use the VIPCAT to generate a BFM file for the AHB interfacing test. But I'm stuck in the below process. How do I resolve this problem? $ncverilog +access+wrc test2.v $cdn_ahb_access(HCLK,HRESET,den_HADDR,den_HTRANS,den_HWRITE,den_HSIZE,den_HBURST,den_HPROT,den_HWDATA,HRDATA,HREADY,HRESP,den_HBUSREQ,den_HLOCK,HGRANT); | ncelab: *W,MISSYST (./test1.v,70|18): Unrecognized system task or function: $cdn_ahb_access (did not match built-in or user-defined names) [2.7.4(IEEE Std 1364-2001)] Could you please help me how can I resolve this problem?.
×