ID articolo: 000086590 Tipo di contenuto: Risoluzione dei problemi Ultima recensione: 24/06/2021

Cosa si deve considerare quando si posizionano i pin I2C in Intel Agilex® 7 dispositivi, dato il vincolo di ciascun gruppo DQ x4 che condivide lo stesso segnale OE?

Ambiente

  • Intel® Quartus® Prime Pro Edition
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    Descrizione

    In base ai requisiti di posizionamento dei pin in Intel Agilex® 7 FPGA guida utente di I/O di uso generale e LVDS SERDES, ogni gruppo DQ x4 condivide lo stesso segnale OE, reset e clock enable, pertanto non è possibile dividere i segnali OE, Reset o clock enable all'interno di un gruppo DQ x4. Dato il vincolo, ecco alcune considerazioni quando si posizionano i pin I2C.

     


     

      Risoluzione

      1. FPGA viene utilizzato come master I2C, che richiede la modalità multi-master:

      (i) Un'implementazione tipica di I2C sta utilizzando OE su SCL e SDA, come mostrato di seguito. Pertanto, non è possibile inserire SCL e SDA nello stesso gruppo DQ x4.

      assegnare i2c_serial_scl_in = arduino_adc_scl;

      assegnare arduino_adc_scl = i2c_serial_scl_oe ? 1'b0: 1'bz;

      assegnare i2c_serial_sda_in = arduino_adc_sda;

      assegnare arduino_adc_sda = i2c_serial_sda_oe ? 1'b0: 1'bz;

      (ii) Un altro modo è utilizzare Intel FPGA IP GPIO. È possibile attivare lo scarico aperto per SCL e SDA, collegare entrambe le porte OE per SCL e SDA a 1 (alto) e collegare i segnali invertiti dei segnali di controllo OE originali. In questo modo, è possibile aggirare il vincolo. Di seguito è riportato un esempio:

            

      gpioip_scl gpioip (

      .dout (i2c_serial_scl_in),

      .din (~i2c_serial_scl_oe),

      .oe (1'b1),

      .pad_io (arduino_adc_scl)

      );

      gpioip_sda gpioip (

      .dout (i2c_serial_sda_in),

      .din (~i2c_serial_sda_oe),

      .oe (1'b1),

      .pad_io (arduino_adc_sda)

      );

       

      2. FPGA viene utilizzato come modalità singola master I2C:

      SCL è un pin di output senza OE. L'SDA è un pin bidirezionale con OE.

       

      3. FPGA viene utilizzato come slave I2C:

      SCL è un pin di input senza OE. L'SDA è un pin bidirezionale con OE.

       

      In 2 e 3 sopra, perché SCL non ha OE,

      • Un SCL e un SDA possono essere assegnati nello stesso gruppo DQ x4
      • Più SCL e un SDA possono essere assegnati nello stesso gruppo DQ x4
      • Non è possibile assegnare più SDA nello stesso gruppo DQ x4
      • Quando più SDA sono assegnati nello stesso gruppo DQ x4, l'utilizzo di GPIO Intel FPGA IP come sopra indicato è anche una soluzione alternativa.

      Prodotti correlati

      Questo articolo si applica a 1 prodotti

      FPGA e FPGA SoC Intel® Agilex™

      Disclaimer

      1

      Tutti i post e l'utilizzo dei contenuti su questo sito sono soggetti ai Termini di utilizzo Intel.com.

      Il contenuto di questa pagina è il risultato della combinazione tra la traduzione umana e quella automatica del contenuto originale in lingua inglese. Questo contenuto è fornito soltanto a titolo di informazione generale e non ha pretese di completezza o accuratezza. In presenza di contraddizioni tra la versione in lingua inglese di questa pagina e la sua traduzione, fa fede la versione inglese. Visualizza la versione in lingua inglese di questa pagina.