FPGA cannot receive data from fx3 in stream out mode in synchronous_ slave_fifo_2bit

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hello, everyone.

I have related development experience with cyusb3014. In order to quickly integrate FX3 to our system, we used CYUSB3KIT-003. And it worked normally.

About three weeks ago, the CYUSB3KIT-003 was broken. and I bought another board to replace it. but something strange happened.

It couldn't work as expected. But we just used the same FPGA, same Verilog program, same connection with CYUSB3KIT, same fireware image file.

In our system, the synchronous slave fifo mode is used. However, FPGA cannot receive the data from FX3. according to the sampling of the signal line by chipscope,

the control signals are normal, that is, slcs is low, slwr is high, and sloe, slrd is low, flagc turns low. but there is no validate data on the data bus although  Control Center has sent data to FX3.

and for the previous broken board, the system just run normally.

why can this happen? how to figure this out? any ideas? Thank you very much.

yz

0 Likes
1 Solution

Hello Zheng,

The PKEND pin is a GPIO pin on the FX3.By default, the GPIOs on the FX3 board are floating. So, the PKEND pin may be treated as HIGH or LOW and may cause erroneous results as it happened in your case. To overcome this, you should have to pull the PKEND pin HIGH or modify the state machine to be independent of PKEND pin.

Best regards,

Srinath S

View solution in original post

0 Likes
10 Replies
Anonymous
Not applicable

Plus: the broken CYUSB3KIT-003 version is CYUSB3014-BZX I 1437 and the new one is C 1719

0 Likes

Hello Zheng,

Please check if the PKEND pin of the FX3 is pulled HIGH. The state machine expects this pin to be HIGH to switch the state so that the data is driven out to FPGA.

Best regards,

Srinath S

0 Likes
Anonymous
Not applicable

Hello Srinath S,

First, I want to say thanks to you. I have tried again according to your reminder. it works now. But I still have some questions that i want to talk with you.

In my system, I just use control center on upper computer to send data to FX3, and then FPGA read from FX3. so I choose the streamOUT mode. According to 65974, This PKTEND signal is asserted to write a short packet or a zero-length packet to Slave FIFO. So it will always keep high in streamOUT mode.

Based on this, So we left the PKTEND line unconnected between FX3  and FPGA in the previous board. and in the verilog program, I declare the signal PKTEND always keeps high. The system run normally. FPGA could read from FX3.

For the new CYUSB3KIT-003, it has no response on the databus while the PKTEND line leaves unconnected. But when I keep the PKTEND line connected, FPGA can read from FX3 successfully.

Fortunately, it can work now. but why it could happen? Looking forward to listening to your ideas.

Many thanks,

yz

0 Likes

Hello Zheng,

The PKEND pin is a GPIO pin on the FX3.By default, the GPIOs on the FX3 board are floating. So, the PKEND pin may be treated as HIGH or LOW and may cause erroneous results as it happened in your case. To overcome this, you should have to pull the PKEND pin HIGH or modify the state machine to be independent of PKEND pin.

Best regards,

Srinath S

0 Likes
Anonymous
Not applicable

Plus: actually, I have another new CYUSB3KIT-003 board. and for this board, I have the PKTEND line connected between FC3 and PFGA. and I used chipscope to sample the signals. all the control signal and flag signal were normal. and the state machine successfully skip to the read state.  But there are no data on the databus. Why?

The situation is getting more and more confused according to above descriptions. ANY IDEAS? Thank you very much.

0 Likes
Anonymous
Not applicable

Plus: actually, I have another new CYUSB3KIT-003 board. and for this board, I have the PKTEND line connected between FC3 and PFGA. and I used chipscope to sample the signals. all the control signal and flag signal were normal. and the state machine successfully skip to the read state.  But there are no data on the databus. Why?

The situation is getting more and more confused according to above descriptions. ANY IDEAS? Thank you very much.

0 Likes

Hello Zheng,

- Can you please check if the Address lines A[1:0] are connected properly?

- In case you still face issues, kindly, capture the UART logs using the on-board USB-Serial chip and share the same.

Best regards,

Srinath S

0 Likes
Anonymous
Not applicable

The address line are assigned 11. and they connected properly. Thank you so much, sir.

0 Likes

Hello Zheng,

Can you please obtain the UART traces using the on-board USB-Serial device?

Best regards,

Srinath S

0 Likes
Anonymous
Not applicable

Thank you very much.

0 Likes