// from GLIB_PADLIB.v
//-----------------------------------------------------------------------------
// soclabs generic IO pad model
// A joint work commissioned on behalf of SoC Labs, under Arm Academic Access license.
//
// Contributors
//
// David Flynn (d.w.flynn@soton.ac.uk)
//
// Copyright © 2022, SoC Labs (www.soclabs.org)
//-----------------------------------------------------------------------------
![[Up: nanosoc_chip_pads uPAD_XTAL_I]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_XTAL_O]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_NRST_I]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_SWDIO_I]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_SWDCLK_I]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_00]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_01]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_02]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_03]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_04]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_05]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_06]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_07]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_08]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_09]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_10]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_11]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_12]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_13]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_14]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P0_15]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P1_00]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P1_01]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P1_02]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P1_03]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P1_04]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P1_05]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P1_06]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P1_07]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P1_08]](v2html-up.gif)
![[Up: nanosoc_chip_pads uPAD_P1_09]](v2html-up.gif)
... (truncated)
module PAD_INOUT8MA_NOE
(
// Inouts
PAD,
// Outputs
O,
// Inputs
I,
NOE
);
inout PAD;
output I;
input O;
input NOE;
`ifdef BEHAVIORAL_PADS
assign I = PAD;
assign PAD = ~NOE ? O : 1'bz;
`else
bufif1 #2 (PAD, O, ~NOE);
buf #1 (I, PAD);
always @(PAD)
begin
if (($countdrivers(PAD) > 1) && (PAD === 1'bx))
$display("%t ++BUS CONFLICT++ : %m", $realtime);
end
`endif // ifdef BEHAVIORAL_PADS
endmodule // PAD_INOUT8MA_NOE
This page: |
Created: | Wed Feb 22 13:33:07 2023 |
|
From: |
../../../../../GLIB/pads/verilog/PAD_INOUT8MA_NOE.v |