機能
8ビット双方向バスx2ポートの機能コード.標準TTL74245のNSL記述版
信号機能
Port_A = 8ビット双方向バス
Port_B = 8ビット双方向バス
DIR = 転送方向.1のときはAポートからBポートへ,0のときはBポートからAポートへ
nOE = 出力イネーブル.0のときにDIRの要求に応じた信号伝達.1のときはHi-Z
記述特徴
any{・・・}のなかで,nOEとDIRの状態の組合せによって,信号の伝達を行います.
NSL合成ツールは,inout宣言された出力信号に対する制御が**行われていない**時(未使用時)には,Hi-Zにするコードを生成します.
備考
記述量が最も少ない.Verilog HDL/VHDLにおけるネット記述と同等
NSL記述例
/* ************************************************************ */
declare TTL_74245_TypeC {
    inout       Port_A[8] ;
    inout       Port_B[8] ;
    input       DIR ;       // Direction. 0 = Port B -> A, 1 = PortA -> PortB
    input       nOE ;
}
/* ************************************************************ */
module  TTL_74245_TypeC {
/* Equation for biridection pin */
    {
        if ( ~nOE ) {
            any {
                ~DIR    : Port_B = Port_A ;
                else    : Port_A = Port_B ;
            }
        }
    }
}Verilog変換例
/*
 Produced by NSL Core, IP ARCH, Inc. Fri Jun 04 17:56:16 2010
 Licensed to :EVALUATION USER:
*/
module TTL_74245_TypeC ( p_reset , m_clock , Port_A , Port_B , DIR , nOE );
  input p_reset, m_clock;
inout [7:0] Port_A;
inout [7:0] Port_B;
  input DIR;
  input nOE;
  wire _net_0;
  wire _net_1;
   assign  _net_0 = ~nOE;
   assign  _net_1 = ~DIR;
   assign  Port_A = (_net_0&(~_net_1))? ((_net_0&(~_net_1))?Port_B:8'bZ):8'bz;
   assign  Port_B = (_net_0&_net_1)? ((_net_0&_net_1)?Port_A:8'bZ):8'bz;
endmodule
/*
 Produced by NSL Core, IP ARCH, Inc. Fri Jun 04 17:56:16 2010
 Licensed to
*/