UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Participant gandics
Participant
1,422 Views
Registered: ‎05-02-2018

microblaze project failure : multi vpss+tpg

Jump to solution

Hi,

 

I'm trying to build a multi-channel video processing project (2tpg+2vpss+2vtc+2vid_out) by imitating the vpss example design.

 

SDK died after running XPeriph_configtpg()->XV_tpg_start().

 

Code&diagram&chipscope wave& channl0 screen-out below.

 

What's the problem?Thanks!

捕获.PNGsdk程序.pngsdk2.pngchipscope_看图王.jpgIMG_20180503_095141_看图王.jpg

0 Kudos
1 Solution

Accepted Solutions
Moderator
Moderator
1,753 Views
Registered: ‎10-04-2017

回复: microblaze project failure : multi vpss+tpg

Jump to solution

Hi @gandics,

 

Were you able to get your program up and running again?

 

Can you describe your process for -  "Re-running sythesis and implementation,sdk cannot into main() function,as if no .elf file download."

 

This sounds like your processor may be held in reset, can you provide the console output for the problem?

 

Other questions:

Did you make any changes to your hardware project?

Are you using a Xililnx development board?

Do you export your hdf file again?

Have you power cycled your board?

Are you programming the bitstream through SDK or Vivado?

 

Regards,

Sam

 

 

 

 

Don't forget to reply, kudo, and accept as solution.

Xilinx Video Design Hub
6 Replies
Participant gandics
Participant
1,384 Views
Registered: ‎05-02-2018

回复: microblaze project failure : multi vpss+tpg

Jump to solution

 

Here is sdk terminal&memory&sdk log

 

sdk terminal:

Connected to COM3 at 115200


--------------------------------------------------------
  Video Processing Subsystem Example Design v2.00
  (c) 2015, 2016 by Xilinx Inc.
FrameBufBaseaddr 90000000
FrameBufBaseaddr A0000000
--------------------------------------------------------
Topology is Full, case 1
--------------------------------------------------------
Topology is Full, case 1

setup pipmode
Set up Video0 Input and Output streams.
Set up Video1 Input and Output streams.
Start VPSS0.
Start VPSS1.


------ SUBSYSTEM INPUT/OUTPUT CONFIG ------
->INPUT
	Color Format:     RGB
	Color Depth:      8
	Pixels Per Clock: 1
	Mode:             Progressive
	Frame Rate:       60Hz
	Resolution:       800x600@60Hz
	Pixel Clock:      39790080

->OUTPUT
	Color Format:     RGB
	Color Depth:      8
	Pixels Per Clock: 1
	Mode:             Progressive
	Frame Rate:       60Hz
	Resolution:       1920x1080@60Hz
	Pixel Clock:      148500000

Zoom Mode: OFF
Pip Mode: ON
   Start X    = 0
   Start Y    = 0
   Win Width  = 960
   Win Height = 540


   HStep Size = 16

Data Flow Map: VidIn -> SCALER-H -> SCALER-V -> VDMA -> LBOX -> CSC -> VidOut

------ SUBSYSTEM INPUT/OUTPUT CONFIG ------
->INPUT
	Color Format:     RGB
	Color Depth:      8
	Pixels Per Clock: 1
	Mode:             Progressive
	Frame Rate:       60Hz
	Resolution:       800x600@60Hz
	Pixel Clock:      39790080

->OUTPUT
	Color Format:     RGB
	Color Depth:      8
	Pixels Per Clock: 1
	Mode:             Progressive
	Frame Rate:       60Hz
	Resolution:       1920x1080@60Hz
	Pixel Clock:      148500000

Zoom Mode: OFF
Pip Mode: ON
   Start X    = 0
   Start Y    = 0
   Win Width  = 960
   Win Height = 540

   HStep Size = 16


Data Flow Map: VidIn -> SCALER-H -> SCALER-V -> VDMA -> LBOX -> CSC -> VidOut
Start VTC0.
Start VTC1.

Start TPG0.


----->TPG STATUS<----
IsDone:  0
IsIdle:  1

IsReady: 1

Ctrl:    0x4

Width:        800
Height:       600
Backgnd Id:   9
Color Format: 0
Start TPG

 

  memory register:

2vpss2tpg error
vpss0
0x44A00000 <Hex Integer>
  Address   0 - 3     4 - 7     8 - B     C - F               
  44A00000  0001008B  00011000  00000000  00000000          
  44A00010  00000000  00000000  00000000  00000000          
  44A00020  00000000  00000000  00030000  62000050          
  44A00030  00010003  00010000  00000000  00000000          
  44A00040  00000000  00000000  00000000  00000000          
  44A00050  00000438  00001680  01001680  90000000          
  44A00060  905EEC00  90BDD800  911CC400  00000000          
  44A00070  00000000  00000000  00000000  00000000          
  44A00080  00000000  00000000  00000000  00000000          
  44A00090  00000000  00000000  00000000  00000000          
  44A000A0  0000021C  00000B40  00001680  90000000          
  44A000B0  905EEC00  90BDD800  911CC400  00000000          
  44A000C0  00000000  00000000  00000000  00000000          
  44A000D0  00000000  00000000  00000000  00000000          
  44A000E0  00000000  00000000  00000000  00000001          
  44A000F0  00000000  00000000  00000000  00000000          
  44A00100  0001008B  00011000  00000000  00000000          
                                                                                                                                                          
  vpss1
  0x44C00000 : 0x44C00000 <Hex Integer>
  Address   0 - 3     4 - 7     8 - B     C - F               
  44C00000  0001008B  00011000  00000000  00000000          
  44C00010  00000000  00000000  00000000  00000000          
  44C00020  00000000  00000000  00030000  62000050          
  44C00030  00010003  00010000  00000000  00000000          
  44C00040  00000000  00000000  00000000  00000000          
  44C00050  00000438  00001680  01001680  A0000000          
  44C00060  A05EEC00  A0BDD800  A11CC400  00000000          
  44C00070  00000000  00000000  00000000  00000000          
  44C00080  00000000  00000000  00000000  00000000          
  44C00090  00000000  00000000  00000000  00000000          
  44C000A0  0000021C  00000B40  00001680  A0000000          
  44C000B0  A05EEC00  A0BDD800  A11CC400  00000000          
  44C000C0  00000000  00000000  00000000  00000000          
  44C000D0  00000000  00000000  00000000  00000000          
  44C000E0  00000000  00000000  00000000  00000001          
  44C000F0  00000000  00000000  00000000  00000000          
                                                                                                                                                                                                

  vtc0
  0x44B00000 : 0x44B00000 <Hex Integer>
  Address   0 - 3     4 - 7     8 - B     C - F               
  44B00000  07FFEF07  00013200  00000000  00000000          
  44B00010  0601000B  00000000  00000000  00000000          
  44B00020  00000000  00000000  00000000  00000000          
  44B00030  00000000  00000000  00000000  00000000          
  44B00040  00000000  00000000  00000000  00000000          
  44B00050  00000000  00000000  00000000  00000000          
  44B00060  04380780  00000004  00000002  0000003F          
  44B00070  00000898  04650465  080407D8  07800780          
  44B00080  0440043B  07D807D8  07800780  0440043B          
  44B00090  07D807D8  00000000  00000000  00000000          
  44B000A0  00000000  00000000  00000000  00000000          
  44B000B0  00000000  00000000  00000000  00000000          
  44B000C0  00000000  00000000  00000000  00000000          
  44B000D0  00000000  00000000  00000000  00000000          
  44B000E0  00000000  00000000  00000000  00000000          
  44B000F0  00000000  00000000  00000000  00000000          

  vtc1
  0x44B20000 : 0x44B20000 <Hex Integer>
  Address   0 - 3     4 - 7     8 - B     C - F               
  44B20000  07FFEF07  00013200  00000000  00000000          
  44B20010  0601000B  00000000  00000000  00000000          
  44B20020  00000000  00000000  00000000  00000000          
  44B20030  00000000  00000000  00000000  00000000          
  44B20040  00000000  00000000  00000000  00000000          
  44B20050  00000000  00000000  00000000  00000000          
  44B20060  04380780  00000004  00000002  0000003F          
  44B20070  00000898  04650465  080407D8  07800780          
  44B20080  0440043B  07D807D8  07800780  0440043B          
  44B20090  07D807D8  00000000  00000000  00000000          
  44B200A0  00000000  00000000  00000000  00000000          
  44B200B0  00000000  00000000  00000000  00000000          
  44B200C0  00000000  00000000  00000000  00000000          
  44B200D0  00000000  00000000  00000000  00000000          
  44B200E0  00000000  00000000  00000000  00000000          
  44B200F0  00000000  00000000  00000000  00000000          

  tpg0
  0x44B10000 : 0x44B10000 <Hex Integer>
  Address   0 - 3     4 - 7     8 - B     C - F               
  44B10000  00000081  00000000  00000000  00000000          
  44B10010  00000258  00000000  00000320  00000000          
  44B10020  00000009  00000000  00000000  00000000          
  44B10030  00000000  00000000  00000000  00000000          
  44B10040  00000000  00000000  00000000  00000000          
  44B10050  00000000  00000000  00000000  00000000          
  44B10060  00000000  00000000  00000000  00000000          
  44B10070  00000000  00000000  00000000  00000000          
  44B10080  00000000  00000000  00000000  00000000          
  44B10090  00000000  00000000  00000000  00000000          
  44B100A0  00000000  00000000  00000000  00000000          
  44B100B0  00000000  00000000  00000000  00000000          
  44B100C0  00000000  00000000  00000000  00000000          
  44B100D0  00000000  00000000  00000000  00000000          
  44B100E0  00000000  00000000  00000000  00000000          
  44B100F0  00000000  00000000  00000000  00000000          

  tpg1
  0x44B30000 : 0x44B30000 <Hex Integer>
  Address   0 - 3     4 - 7     8 - B     C - F               
  44B30000  00000004  00000000  00000000  00000000          
  44B30010  00000000  00000000  00000000  00000000          
  44B30020  00000000  00000000  00000000  00000000          
  44B30030  00000000  00000000  00000000  00000000          
  44B30040  00000000  00000000  00000000  00000000          
  44B30050  00000000  00000000  00000000  00000000          
  44B30060  00000000  00000000  00000000  00000000          
  44B30070  00000000  00000000  00000000  00000000          
  44B30080  00000000  00000000  00000000  00000000          
  44B30090  00000000  00000000  00000000  00000000          
  44B300A0  00000000  00000000  00000000  00000000          
  44B300B0  00000000  00000000  00000000  00000000          
  44B300C0  00000000  00000000  00000000  00000000          
  44B300D0  00000000  00000000  00000000  00000000          
  44B300E0  00000000  00000000  00000000  00000000          
  44B300F0  00000000  00000000  00000000  00000000          

sdk log:

09:39:28 INFO	: Registering command handlers for SDK TCF services
09:39:29 INFO	: Launching XSCT server: xsct.bat -interactive D:\GD\v_procx2_tpgx2_only_tpg_error\v_proc_ssx2_tpgx2_pip\v_proc_ss_0_ex\v_proc_ss_0_ex.sdk\temp_xsdb_launch_script.tcl
09:39:30 INFO	: XSCT server has started successfully.
09:39:30 INFO	: Successfully done setting XSCT server connection channel  
09:39:30 INFO	: Successfully done setting SDK workspace  
09:39:30 INFO	: Processing command line option -hwspec D:/GD/v_procx2_tpgx2_only_tpg_error/v_proc_ssx2_tpgx2_pip/v_proc_ss_0_ex/v_proc_ss_0_ex.sdk/top.hdf.
09:39:30 INFO	: Checking for hwspec changes in the project top_hw_platform_0.
09:39:52 INFO	: Connected to target on host '127.0.0.1' and port '3121'.
09:40:01 INFO	: ----------------XSDB Script----------------
connect -url tcp:127.0.0.1:3121
----------------End of Script----------------

09:40:05 INFO	: Connected to target on host '127.0.0.1' and port '3121'.
09:40:05 INFO	: Jtag cable 'Platform Cable USB 00000000000000' is selected.
09:40:05 INFO	: 'jtag frequency' command is executed.
09:40:05 INFO	: 'targets -set -filter {jtag_cable_name =~ "Platform Cable USB 00000000000000" && level==0} -index 0' command is executed.
09:40:13 INFO	: FPGA configured successfully with bitstream "D:/GD/v_procx2_tpgx2_only_tpg_error/v_proc_ssx2_tpgx2_pip/v_proc_ss_0_ex/v_proc_ss_0_ex.runs/impl_1/top.bit"
09:40:13 INFO	: Context for processor 'microblaze_ss_microblaze_0' is selected.
09:40:13 INFO	: System reset is completed.
09:40:16 INFO	: 'after 3000' command is executed.
09:40:16 INFO	: Context for processor 'microblaze_ss_microblaze_0' is selected.
09:40:20 INFO	: The application 'D:/GD/v_procx2_tpgx2_only_tpg_error/v_proc_ssx2_tpgx2_pip/v_proc_ss_0_ex/v_proc_ss_0_ex.sdk/test/Debug/test.elf' is downloaded to processor 'microblaze_ss_microblaze_0'.
09:40:20 INFO	: ----------------XSDB Script----------------
connect -url tcp:127.0.0.1:3121
targets -set -filter {jtag_cable_name =~ "Platform Cable USB 00000000000000" && level==0} -index 0
fpga -file D:/GD/v_procx2_tpgx2_only_tpg_error/v_proc_ssx2_tpgx2_pip/v_proc_ss_0_ex/v_proc_ss_0_ex.runs/impl_1/top.bit
targets -set -nocase -filter {name =~ "microblaze*#0" && bscan=="USER2"  && jtag_cable_name =~ "Platform Cable USB 00000000000000"} -index 0
rst -system
after 3000
targets -set -nocase -filter {name =~ "microblaze*#0" && bscan=="USER2"  && jtag_cable_name =~ "Platform Cable USB 00000000000000"} -index 0
dow D:/GD/v_procx2_tpgx2_only_tpg_error/v_proc_ssx2_tpgx2_pip/v_proc_ss_0_ex/v_proc_ss_0_ex.sdk/test/Debug/test.elf
----------------End of Script----------------

09:40:20 INFO	: Memory regions updated for context MicroBlaze #0
09:40:20 INFO	: Memory regions updated for context MicroBlaze #0
09:40:20 INFO	: Context for processor 'microblaze_ss_microblaze_0' is selected.
09:40:21 INFO	: 'con' command is executed.
09:40:21 INFO	: ----------------XSDB Script (After Launch)----------------
targets -set -nocase -filter {name =~ "microblaze*#0" && bscan=="USER2"  && jtag_cable_name =~ "Platform Cable USB 00000000000000"} -index 0
con
----------------End of Script----------------

09:40:21 INFO	: Launch script is exported to file 'D:\GD\v_procx2_tpgx2_only_tpg_error\v_proc_ssx2_tpgx2_pip\v_proc_ss_0_ex\v_proc_ss_0_ex.sdk\.sdk\launch_scripts\xilinx_c-c++_application_(system_debugger)\system_debugger_using_debug_test.elf_on_local.tcl'

 

0 Kudos
Moderator
Moderator
1,344 Views
Registered: ‎10-04-2017

回复: microblaze project failure : multi vpss+tpg

Jump to solution

Hi @gandics,

 

This looks like there may be an addressing issue to the IP. If the processor sends a command to an incorrect AXI address, it is possible that the software will not be able to continue because it is waiting for a response that does not come back.

 

In your IPI project are all the addresses assigned?

Is your HDF (exported hardware file) up to date for your BSP and application?

 

Is the address in the XPeriph_configtpg()->XV_tpg_start() function correct?

 

Thank you,

Sam

 

Don't forget to reply, kudo, and accept as solution.

Xilinx Video Design Hub
0 Kudos
Participant gandics
Participant
1,325 Views
Registered: ‎05-02-2018

回复: microblaze project failure : multi vpss+tpg

Jump to solution

 Hi @samk,
 It's my first time to use sdk,thanks for your help!
 
 Following your suggestions,I check the address setting: 

 1.There are no unassigned addresses in my project,as shown in picture 1.
 2.HDF file is right,as shown in picture 1&2.

 3.In debug mode, the address in the XPeriph_configtpg()->XV_tpg_start() function is correct,as shown in picture 3.

 

 MB local memory contrl size:8k, .elf file size:200k.Instruction and data part are running in the DDR memory.

 Re-running sythesis and implementation,sdk cannot into main() function,as if no .elf file download.

 

 Expecting your answer,thanks!

 

 Picture 1:address.png

 

Picture 2:

bsp.png

 

Picture 3:

debug.PNG

0 Kudos
Moderator
Moderator
1,754 Views
Registered: ‎10-04-2017

回复: microblaze project failure : multi vpss+tpg

Jump to solution

Hi @gandics,

 

Were you able to get your program up and running again?

 

Can you describe your process for -  "Re-running sythesis and implementation,sdk cannot into main() function,as if no .elf file download."

 

This sounds like your processor may be held in reset, can you provide the console output for the problem?

 

Other questions:

Did you make any changes to your hardware project?

Are you using a Xililnx development board?

Do you export your hdf file again?

Have you power cycled your board?

Are you programming the bitstream through SDK or Vivado?

 

Regards,

Sam

 

 

 

 

Don't forget to reply, kudo, and accept as solution.

Xilinx Video Design Hub
Participant gandics
Participant
1,213 Views
Registered: ‎05-02-2018

回复: microblaze project failure : multi vpss+tpg

Jump to solution

Hi,  @samk

The problem have been solved finally,thanks for your advise!

 

Project running in the A7 development board beginning,so timing violation and  device resources utilization are severely when i build multi-vpss.As the source of stream flow,that's why program collapsed when i turned tpg on.

 

Migrated to the kc705 board,the same HW and SW,project is running correctly! 

 

I'm still have some questions:

1.I wanna put the multi-vpss outputs to one mixed ip,by using it streaming layer interface directly(not the mm-layer interface),combining to a mixed 1080p output.How can i config the mix or osd ip?(which ip more easily?)

 

2.Sometimes,the .elf file will not download when i debug or run sdk,noticed from sdk log.why?

 

My English is not good enough,thanks again!

 

 

0 Kudos
Moderator
Moderator
1,202 Views
Registered: ‎10-04-2017

回复: microblaze project failure : multi vpss+tpg

Jump to solution

Hi @gandics,

 

No problem!

 

1. Please use the Video Mixer v3.0. This OSD IP is in maintenance mode and is not recommended for new designs.

Please see this PG for the Video Mixer. This IP is used with Streaming interfaces.

 

2. This is a good question for the Embedded Boot and Configuration board.  Please post your question here and they will be able to help you more!

 

Regards,

Sam

 

 

Don't forget to reply, kudo, and accept as solution.

Xilinx Video Design Hub