FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
Announcements
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.
5988 Discussions

CVI overflow and CVO underflow

Altera_Forum
Honored Contributor II
873 Views

Hi, 

 

CVI(run control) -- CVO(run control) , 

 

cvi always overflow,cvo always underflow. why? How to set the fifo depth? 

 

 

nios config code is as follows, 

 

 

/**************************** CTI **************************************/ 

printf("/*******************************************\n"); 

printf("CTI_control is %x!\n",CTI->control ); 

printf("CTI_STATUS is %x!\n",CTI->status ); 

printf("\n"); 

 

 

// 

// updata control data 

// 

CTI->control = 0x0006; 

 

 

// 

// set go bit 1 

// 

CTI->control = CTI->control | 0x0001; 

 

 

 

printf("After config.\n"); 

printf("CTI_control is %x!\n",CTI->control ); 

printf("CTI_STATUS is %x!\n",CTI->status ); 

printf("\n"); 

 

 

 

 

// /************************** ITC ****************************************/ 

 

printf("/*******************************************\n"); 

// 

// mode1 HD 

 

 

// disable mode1_valid 

ITC->mode1_valid = 0; 

// set mode1 registers 

ITC->mode1_control = 1; 

ITC->mode1_sample_count = 1920; 

ITC->mode1_f0_line_count = 540; 

ITC->mode1_f1_line_count = 540; 

ITC->mode1_hfront_porch = 0; 

ITC->mode1_hsyn_length = 0; 

ITC->mode1_h_blanking = 720; 

ITC->mode1_vfront_porch = 0; 

ITC->mode1_vsync_length = 0; 

ITC->mode1_v_blanking = 22; 

ITC->mode1_f0_vfront_porch = 0; 

ITC->mode1_f0_vsync_length = 0; 

ITC->mode1_f0_v_blanking = 23; 

ITC->mode1_active_picture_line = 21; 

ITC->mode1_f0_v_rising = 561; 

ITC->mode1_field_rising = 564; 

ITC->mode1_field_falling = 1; 

ITC->mode1_std = 0; 

// ITC->mode1_sof_sample; 

// ITC->mode1_sof_line; 

// ITC->mode1_vcoclk_div; 

ITC->mode1_ancillary_line = 9; 

ITC->mode1_f0_ancillary_line = 571; 

 

 

// enable mode1_valid 

ITC->mode1_valid = 1; 

 

 

// 

// mode2 SD 

 

 

// disbale mode1_valid 

ITC->mode2_valid = 0; 

 

 

// set mode1 registers 

ITC->mode2_control = 3; 

ITC->mode2_sample_count = 720; 

ITC->mode2_f0_line_count = 288; 

ITC->mode2_f1_line_count = 288; 

ITC->mode2_hfront_porch = 0; 

ITC->mode2_hsyn_length = 0; 

ITC->mode2_h_blanking = 144; 

ITC->mode2_vfront_porch = 0; 

ITC->mode2_vsync_length = 0; 

ITC->mode2_v_blanking = 24; 

ITC->mode2_f0_vfront_porch = 0; 

ITC->mode2_f0_vsync_length = 0; 

ITC->mode2_f0_v_blanking = 25; 

ITC->mode2_active_picture_line = 23; 

ITC->mode2_f0_v_rising = 311; 

ITC->mode2_field_rising = 313; 

ITC->mode2_field_falling = 1; 

ITC->mode2_std = 0; 

// ITC->mode2_sof_sample; 

// ITC->mode2_sof_line; 

// ITC->mode2_vcoclk_div; 

ITC->mode2_ancillary_line = 8; 

ITC->mode2_f0_ancillary_line = 321; 

 

 

// enable mode2_valid 

ITC->mode2_valid = 1; 

 

 

printf("ITC control is %x!\n",ITC->control ); 

printf("ITC status is %x!\n",ITC->status ); 

 

 

// enbale control, cvo output data 

ITC->control = 0x1e; 

ITC->control = ITC->control | 0x01;
0 Kudos
1 Reply
Altera_Forum
Honored Contributor II
137 Views

Hi,  

 

This is normal that the CVI overflow or CVO underflow if without a frame buffer at between.  

 

In the real system this is suggested to have a frame buffer: CVI-> FB -> CVO.  

 

 

Best Regards, 

Terence 

 

(This message was posted on behalf of Intel Corporation)
Reply