Product Documentation
Spectre AMS Designer and Xcelium Simulator Mixed-Signal User Guide
Product Version 22.09, September 2022

The xmshell Command

The xmshell command is used to create the Verilog-AMS wrapper and the SystemC shell.

xmshell Command Syntax

For importing Verilog-AMS modules:

xmshell_command ::=
        xmshell{xmshell_param}-ams-importverilog-into systemc
             lib . module {analogim_param}

analogim_param ::=
        -analogim child_port [@interface_mod_port]
        : lib2 . interface_mod [:view]

For importing VHDL-AMS modules:

xmshell_command ::=
        xmshell{xmshell_param}-ams -importvhdl -intosystemc
             lib . module {analogim_param}

analogim_param ::=
        -analogim child_port [@ interface_mod_port]
        : lib2 . interface_mod [:view]

xmshell Command Options

This section describes the options that you can use with the xmshell command.

xmshell_param

An additional xmshell option that you might wish to use. For a list of available options, use xmshell -help. For example, you might use the -messages or -sctype options.

lib

Library containing the Verilog-AMS or VHDL-AMS module that is to be imported into the SystemC model.

module

Verilog-AMS or VHDL-AMS module that is to be imported into the SystemC model.

-analogim

Parameter indicating that lib2.interface_mod is to be used as the interface module for child_port.

child_port

Port of the imported Verilog-AMS or VHDL-AMS for which the interface_mod module is inserted. If child_port is specified as *, the interface_mod module is inserted in the Verilog-AMS wrapper for each port of module.

interface_mod_port

Name of the interface module port to be bound to child_port. If interface_mod_port is not specified, the xmshell program uses whichever of the two ports of interface_mod is compatible with child_port: the analog port is connected to child ports declared as analog; otherwise, the discrete port is connected.

lib2

Library containing interface_mod.

interface_mod

The interface module to be used to translate analog signals from the Verilog-AMS or VHDL-AMS module into digital signals, or vice versa.

view

View of interface_mod to be used as the interface module.

Examples of the xmshell Command

The following examples illustrate different ways of using the xmshell command, in particular with the -analogim option.

Example: Connecting an Interface Module Default Port

The following example creates a Verilog-AMS wrapper with purely digital ports and a SystemC shell for lib.vlogams_child. The port p1, of the vlogams_child, is connected to the appropriate port of the work.LV2EV_64 interface module (if p1 is analog, it is connected to the analog port of the interface module; if p1 is not analog, it is connected to the non-analog port of the interface module).

xmshell -ams -mess -import verilog -into systemc -sctype p1:double
          -analogim p1:work.LV2EV_64 lib.vlogams_child

Example: Connecting a Specified Port of the Interface Module

The following example connects the appropriate port of the interface module work.L2E to the p1 port of the vlogams_child. If p1 is analog, the analog port of work.L2E is connected with p1; otherwise, the non-analog port of work.L2E is connected to p1. The explicit port map p2@Px:work.L2E connects the p2 port of lib.vlogams_child to the Px port of interface module work.L2E.

xmshell -messages -AMS -import verilog -into systemc -sctype p1:bool
          -sctype p2:sc_bit -analogim p1:work.L2E
          -analogim p2@Px:work.L2E lib.vlogams_child

Related Topic



 ⠀
X