USB superspeed peripherals Forum Discussions
Hello,
I am opening this discussion on behalf of a colleague who can't speak English and I am not familiar with the subject here.
I hope it gets across fine enough and I appreciate any help on this.
He wants to do either of two thing below. His preference is for the second one but he feels he can't hope for it. Either one works in the end.
Please see attachments for his references.
1)
When FIFO0 is full, I want to switch from FIFO0 to FIFO1 as shown below. Is it possible to do this within 80nS (red in below diagram)?
In the manual it says that it takes several μSs, but i am not sure if I understand it right?
2)
Is it possible to send data of FIFO0 immediately when it is FULL and within 80 nSs make it ready to write next data?
Thank you very much and best regards
Sevgi
Show LessDear All:
Our FX3 connects to a lot of slave devices by I2C, and I found the general call address from the I2C spec as the following figure:
I don't realize the meaning exactly.
It means I can get ALL slave devices ID by the general call address with (0x00, 0x04)?
ex: FX3 connects to 3 devices which slave address is 0x0A, 0x0B & 0x0C respectively.
After writing (0x00, 0x04), FX3 will receive (0x0A, 0x0B, 0x0C)?
Hope guys could provide me some suggestions,
Thank you!
Hughes
Show LessHi,
I'm transfering data from FX3 to FPGA and the interface i'm using is GPIF II.
Based on AN65974 GPIF II files i have created a state machine and modified interface settings according to it.Now i'm using two flags(active low signals) flagC(DMA_READY) and flag D(watermark flag).Through Control Center i'm transfering the data to FPGA ,but the data i'm receiving on FPGA side is 0000 and here the flags are initially 1(low) and after programming flag C is 0(high) and flagD is 1. If flagC is 0 means the buffer is having some data but i'm not able to receive data on FPGA side.
Kindly,anyone let me know the reason for this issue.
Regards,
Aswini
Show LessHi all,
I'm designing a FPGA board that uses FX3 IC to communicate through USB type-C connection to PC.
I read through the forum and I've examined the gerbers for DVK and SuperSpeed Explorer Kit and I saw that the GPIF bus lines are routed with single-ended impedance of 50 ohm.
My questions are:
is the 50 ohm impedance requirement mandatory (and, eventually, why?) This requirement is to be met in addition or alternatively to length-matchng of those traces?
The center-to-center distance between FPGA and FX3 is < 900 mils, hardly the length of traces could be < 500-600mils .
So I quickly estimated the bandwidth for a 50% duty-cycle 100 MHz square wave to about 1GHz (~98% of the power), so 1/10 of the relative wavelength (and, consequently, the maximum conductor length) is ~1200mils (~3 cm).
As I said, this is a rough estimation,but is reasonable that <1500mils long traces (matched as closely as possible) could work out well?
I ask this as I could not do signal integrity analysis with my tools.
Thanks in advance for your replies.
Show Less請問FX3 AN75779 的 UART 是不是在 GPIF DATA BUS = 32 BITS 下無法作用
我在 main function 中這樣設定 uart 不會噴資料出來
可是如果將 io_cfg.isDQ32Bit 改成 false 就可以噴 debug 訊息出來
但如果我需要 32 bits 的 bus 且同時 uart 可以做用的話該怎麼調整?
Show LessHi,
I am using the below attached firmware to transfer data from P-Port to S0-Port of FX3.The data from DDR3 is sent to P-Port of FX3.Before programming FX3,it is detecting as a Bootloader device in Control Center but after programming the below firmware,it is showing nothing in control center.Can anyone please check this at your end and let me know what might be the reason?
Regards,
Aswini.
Show LessHi,
I am using PACTRON'S FX3S FPGA Dev Board REV-C. In cyfxusbuart example I want to use CyU3PDebugPrint().But its not working. After the CyFxUSBUARTAppInit(); function I put
CyU3PDebugInit (CY_U3P_LPP_SOCKET_UART_CONS, 8);
CyU3PDebugPrint(4, "value %d\r\n", value);
but it's not working.The example usbuart code gives com port in teraterm .but after adding CyU3PDebugInit(),it does not give the com port. what should I do for getting a debugprint messages in usbuart.
Thanks & Regards
S.Ravi chandrika
Show LessI need to code a timeout for making a loop non blocking using <time.h>.
I am in the EZUSB echosystem (no cmisys, ARM9269)
Please advice: here is the code exceprt
Thanks
#include <time.h> // are deines correct?
ErrorCode_t postReset(void)
{
cmd_reg_t _cmd;
uint8_t _trigger_ms = 10; /* 10ms */
const clock_t _before = clock();
{
const clock_t _delta = clock() - _before;
uint16_t _msec = _delta * 1000 / CLOCKS_PER_SEC; // CLOCK_PER_SECONDS is guarantee?
if (_msec > _trigger_ms)
{
_status = -1;
break;
}
_status = I2C_Read(sys_ctl.command_register.addr, 2, &(uint8_t)_cmd);
if(_status !=0 )
break;
} while (_cmd.ok !=1);
return _status;
}
Show LessHi,
I used the example of cycx3 UVC ov5640 of the cx3 for test ,I want to modify the dma buffer size ,but I found when I modify the other value except the 0x5FF0 and the 0x2FF0,the captured packet will become 36864, not the value 23552 I modified. I don't know why it happens .
When I modify the buffer to the value of 32768, the DMACreate function will return the error code of 0x10
Show LessHi everyone!
I have FPGA connected to FX3 over GPIF (using starndard admux protocol). I successfully can read/write over admux. I need INT# signal to detect events from FX3.
But I have a strange problem with enabling PIB interrupts using CyU3PPibSelectIntSources(...) function, PP_INTR_MASK register does NOT change.
By default register 's value is 0x2000 (RD_MB_FULL bit is high) and MailBox works perfect in both directions! But I need interrupt to detect other events, especially socket state and I have no idea why I can't enable them all.
I looked though all SDK examples, none of them use CyU3PPibSelectIntSources(...).
Thanks much!!
Show Less