diff --git a/techlibs/nanoxplore/cells_bb.v b/techlibs/nanoxplore/cells_bb.v index 1955f590b..42953b6b2 100644 --- a/techlibs/nanoxplore/cells_bb.v +++ b/techlibs/nanoxplore/cells_bb.v @@ -91,92 +91,6 @@ module NX_BFR(I, O); parameter ring = 0; endmodule -(* blackbox *) -module NX_IOB(I, C, T, O, IO); - input C; - input I; - inout IO; - output O; - input T; - parameter differential = ""; - parameter drive = ""; - parameter dynDrive = ""; - parameter dynInput = ""; - parameter dynTerm = ""; - parameter extra = 3; - parameter inputDelayLine = ""; - parameter inputDelayOn = ""; - parameter inputSignalSlope = ""; - parameter location = ""; - parameter locked = 1'b0; - parameter outputCapacity = ""; - parameter outputDelayLine = ""; - parameter outputDelayOn = ""; - parameter slewRate = ""; - parameter standard = ""; - parameter termination = ""; - parameter terminationReference = ""; - parameter turbo = ""; - parameter weakTermination = ""; -endmodule - -(* blackbox *) -module NX_IOB_I(C, T, IO, O); - input C; - input IO; - output O; - input T; - parameter differential = ""; - parameter drive = ""; - parameter dynDrive = ""; - parameter dynInput = ""; - parameter dynTerm = ""; - parameter extra = 1; - parameter inputDelayLine = ""; - parameter inputDelayOn = ""; - parameter inputSignalSlope = ""; - parameter location = ""; - parameter locked = 1'b0; - parameter outputCapacity = ""; - parameter outputDelayLine = ""; - parameter outputDelayOn = ""; - parameter slewRate = ""; - parameter standard = ""; - parameter termination = ""; - parameter terminationReference = ""; - parameter turbo = ""; - parameter weakTermination = ""; -endmodule - -(* blackbox *) -module NX_IOB_O(I, C, T, IO); - input C; - input I; - output IO; - input T; - parameter differential = ""; - parameter drive = ""; - parameter dynDrive = ""; - parameter dynInput = ""; - parameter dynTerm = ""; - parameter extra = 2; - parameter inputDelayLine = ""; - parameter inputDelayOn = ""; - parameter inputSignalSlope = ""; - parameter location = ""; - parameter locked = 1'b0; - parameter outputCapacity = ""; - parameter outputDelayLine = ""; - parameter outputDelayOn = ""; - parameter slewRate = ""; - parameter standard = ""; - parameter termination = ""; - parameter terminationReference = ""; - parameter turbo = ""; - parameter weakTermination = ""; -endmodule - - (* blackbox *) module NX_RAM(ACK, ACKC, ACKD, ACKR, BCK, BCKC, BCKD, BCKR, AI1, AI2, AI3, AI4, AI5, AI6, AI7, AI8, AI9, AI10, AI11, AI12, AI13 , AI14, AI15, AI16, AI17, AI18, AI19, AI20, AI21, AI22, AI23, AI24, BI1, BI2, BI3, BI4, BI5, BI6, BI7, BI8, BI9, BI10 diff --git a/techlibs/nanoxplore/cells_sim.v b/techlibs/nanoxplore/cells_sim.v index 35b1574ba..88ec78b5c 100644 --- a/techlibs/nanoxplore/cells_sim.v +++ b/techlibs/nanoxplore/cells_sim.v @@ -91,3 +91,97 @@ always @(posedge clock) assign O = mem[RA]; endmodule + +module NX_IOB(I, C, T, O, IO); + input C; + input I; + (* iopad_external_pin *) + inout IO; + output O; + input T; + parameter differential = ""; + parameter drive = ""; + parameter dynDrive = ""; + parameter dynInput = ""; + parameter dynTerm = ""; + parameter extra = 3; + parameter inputDelayLine = ""; + parameter inputDelayOn = ""; + parameter inputSignalSlope = ""; + parameter location = ""; + parameter locked = 1'b0; + parameter outputCapacity = ""; + parameter outputDelayLine = ""; + parameter outputDelayOn = ""; + parameter slewRate = ""; + parameter standard = ""; + parameter termination = ""; + parameter terminationReference = ""; + parameter turbo = ""; + parameter weakTermination = ""; + + assign O = IO; + assign IO = C ? I : 1'bz; +endmodule + +module NX_IOB_I(C, T, IO, O); + input C; + (* iopad_external_pin *) + input IO; + output O; + input T; + parameter differential = ""; + parameter drive = ""; + parameter dynDrive = ""; + parameter dynInput = ""; + parameter dynTerm = ""; + parameter extra = 1; + parameter inputDelayLine = ""; + parameter inputDelayOn = ""; + parameter inputSignalSlope = ""; + parameter location = ""; + parameter locked = 1'b0; + parameter outputCapacity = ""; + parameter outputDelayLine = ""; + parameter outputDelayOn = ""; + parameter slewRate = ""; + parameter standard = ""; + parameter termination = ""; + parameter terminationReference = ""; + parameter turbo = ""; + parameter weakTermination = ""; + + assign O = IO; +endmodule + +module NX_IOB_O(I, C, T, IO); + input C; + input I; + (* iopad_external_pin *) + output IO; + input T; + parameter differential = ""; + parameter drive = ""; + parameter dynDrive = ""; + parameter dynInput = ""; + parameter dynTerm = ""; + parameter extra = 2; + parameter inputDelayLine = ""; + parameter inputDelayOn = ""; + parameter inputSignalSlope = ""; + parameter location = ""; + parameter locked = 1'b0; + parameter outputCapacity = ""; + parameter outputDelayLine = ""; + parameter outputDelayOn = ""; + parameter slewRate = ""; + parameter standard = ""; + parameter termination = ""; + parameter terminationReference = ""; + parameter turbo = ""; + parameter weakTermination = ""; + + assign IO = C ? I : 1'bz; +endmodule + +