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
Adventurer
Adventurer
331 Views
Registered: ‎06-22-2018

Interface to a 3-wire SPI using Zynq-7's SPI at PS side

I need to interface to a PGA with 3-wire SPI, SCK, SDIO, and CS. I know Zynq-7 has two full-duplex SPI at PS side, that is, 4-wire SPI. I wonder if the hardware and SDK support the 3-wire SPI?  I'm now considering connect both MISO and MOSI to the SDIO pin, when read data, temply disable the MISO, does the SDK support this?

 

1.png

Tags (2)
0 Kudos
1 Reply
Participant hayk.petr
Participant
284 Views
Registered: ‎10-04-2018

Re: Interface to a 3-wire SPI using Zynq-7's SPI at PS side

How about putting buffer, something like:

 

  IOBUF #(
    .DRIVE(12), // Specify the output drive strength
    .IBUF_DELAY_VALUE("0"), // Specify the amount of added input delay for the buffer
    .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input register

    .IOSTANDARD("DEFAULT"), // Specify the I/O standard

    .SLEW("SLOW") // Specify the output slew rate
  )

  IOBUF_inst (
    .O(MOSI), // Buffer output
    .IO(SDIO), // Buffer inout port (connect directly to top-level port)
    .I(MISO), // Buffer input
    .T(CTRL) // 3-state enable input, high=input, low=output
  );
// End of IOBUF_inst instantiation

 

 

0 Kudos