Overview of Logntk
1. LOGNTK is a program to convert diagrams in AnaLOG (.LGF files)
into network descriptions of circuits (.NTK files). When you give
the ":LOGNTK" command in AnaLOG, it reads the diagram on the
screen, treating the AnaLOG or Digital LOG transistors as NTK
transistors, other Analog gates as NTK cells, and certain labels as
LOGNTK commands. Only labels surrounded by < and > or in quotation
marks are significant to LOGNTK.
2. LOGNTK manages hierarchical definitions. The notation used for
hierarchy is the same as that used by the Digital LOG simulator.
LOGNTK sees the world as cells; each cell turns into one NTK
file. To define a cell, draw a circuit diagram, add a label which
consists of the cell name enclosed in quotes (as in "Fred"), then
define the cell's connectivity either with a template gate or with
a port list label. To put several definitions on a page, enclose
each definition in a dashed box (from the Frills menu). All of this
is described in the documentation for the digital simulator.
3. One difference is that while in Digital LOG you normally use INST
gates (like INST3), in LOGNTK you normally use "generic instance"
GINST gates (like GINST3) instead. LOGNTK recognizes both families
of instance gates, but the INST gates can connect only to digital
components, whereas the GINST gates can connect to anything.
4. A complete project in LOGNTK may include any number of cells. The
top-level cell describes the whole circuit and includes instances
of the other cells, which may themselves contain instances, etc.
Anything goes, as long as no circular references exist among the
instances. At the bottom of the hierarchy are transistors and/or
primitive gates. Examples of transistors are the AnaLOG gates
NFET5 and PFET5, and the Digital LOG gates V_NFET and V_PFET.
Examples of primitive gates are all the A_ gates from the ACTEL
gate library.
5. Each NTK file produced by LOGNTK is completely self-contained.
When you LOGNTK a cell that has instances of another cell, the
program copies the definition of that cell into the output file.
An NTK file consists of any number of cell definitions, followed
by a "main program" which calls the outermost cells. If your
top-level LOGNTK page does not include a cell name, that page
defines the "main program" for the project. If you do name your
top-level page, LOGNTK puts that page in a cell as usual, and
then creates a dummy main program which "calls" that cell once.
Most simple programs like NETCMP, the NTK file comparator, do
not care about this distinction.
6. When you give the ":LOGNTK" command, LOG converts the definition
on the current page into an NTK file. The file name is usually
derived from the cell name, with ".ntk" appended. (The name of
the LGF file that contains the circuit diagram is irrelevant.)
If there are several cell definitions on the page, LOGNTK does
each of them in turn. You can also pick a specific definition
by typing ":LOGNTK cell-name", where "cell-name" is one of the
definitions on the current page. (You can give a list of cell
names, and the names may include "*" and "?" wildcards.)
- Email
- john [dot] lazzaro [at] gmail [dot] com