Why does an Arria 10 bidirectional pin not behave as open-drain even though the Quartus Prime fitter states that open-drain is enabled? - Why does an Arria 10 bidirectional pin not behave as open-drain even though the Quartus Prime fitter states that open-drain is enabled? Description Due to an issue in Quartus® Prime software versions 16.0.2 and earlier an I/O configured as bidirectional and open drain in Arria® 10 devices may not go Hi-Z but will drive high when ENABLE =’0', when implemented using the following construct : INOUT < = ‘0’ when ENABLE =’1’ else ‘Z’; Resolution You may use one of the following work arounds to avoid this behaviour. 1. Declare I/O as OUT rather than INOUT or 2. User Altera GPIO IO to instantiate an I/O buffer in open-drain mode 3. Use the Keep Attribute as shown below: signal zero_sig : std_logic:='0'; attribute keep : boolean; attribute keep of zero_sig : signal is true; user_pin_name <= zero_sig when ENABLE='1' else 'Z'; (Note: user_pin_name is declared as INOUT) This issue is scheduled to be fixed in a future version of Quartus Prime software. Custom Fields values: ['novalue'] Troubleshooting novalue False ['novalue'] ['novalue'] novalue novalue ['Programmable Logic Devices'] ['novalue'] ['novalue'] ['novalue'] - 2021-08-25

external_document