| |
Software Architecture
The Rifle’s software architecture
is hierarchically organized to hide the implementation details
and, by means of different programming languages, to create
a powerful and user-friedly environment. At the lowest level, just above the hardware, there
is the instrument driver, it belongs to the PC Operating System.
At a higher layer there is the API, it’s a library of functions
that works as an interface between the driver routines and
the higher level programming languages. The first layer that
can be modified by the user is the Chip Dependent Interface,
it consists of a library of functions specific for the DUT.
It’s written in “C” or “C++” to achieve high efficiency and must be implemented for any
new device. The High Level Program Interface is written in
the “G” language of the National Instrument LabVIEW program
and it’s the interface with the final user. |
High Level Program Interface
RIFLE software has been designed
to run a lot of different measurements on non volatile memories
with a very simple interface. That gives to the user an immediate
graphical representation of the results, but it’s always possible
to save the results in a formatted ASCII mode. The software
also permits to store results and settings in different location
for every user autenticated with a basic login identification
(this permits i.e. to separate settings and results for every
member of a researchers team).
Basically RIFLE software gives to
the user a various set of analysis tools, born from a long
experience on non volatile memories characterization in academic
ambit, but also from feedback with the most important european
reasearchers teams and memories constructors. Our clients
defines the RIFLE software’s main advantages as:
-
Best Time-to-Result
-
Versatility (parameters, algorithms)
-
Stability, reliable results
-
Rich set of analysis tools
-
User friendly, comprehensive
set of features
-
Immediate understanding of the
results
-
Fast implementation of test
flows
|
Device characteristics
definition Across a dedicated interface
the user must give a simple constrains descripion of every
device (topological areas, voltage constrains, device pinout...)
and it can also enable or disable functions, function’s parameters
and analysis tools. These settings, stored in a device specific
folder, will be loaded at every device initialization.
|
|
Navigator
After the DUT’s initialization the
software loads the device driver and all the parameters and
settings for the “Selected device”. The Navigator window becomes
ready to start the measurement session. In the tree “Available
functions” the user can select all the enabled measurements
for the specific DUT. Double clicking a displayed function
name the user can directly perform the operations and analyze
the data at the same time on a dedicated panel. That kind
of measurement is an On-line measurement. The user
can also decide to combine together a set of operations using
the Rifle’s Measurement cycles.
|

(click
to enlarge) |
Run on-line measurements
On-line measurements denote experiments
that can be run by simply clicking on a start key. Results
are immediately available on the screen.
Several standard measures are already
implemented in RIFLE and divided in main sets: Cell
characteristics, Digital operations, Array operation, Stresses, Specific tests, Write operations.
-
Cell characteristics include operations
that can be performed on a single cell, as threshold
calculations and 2D and 3D IV characteristics.
-
Digital operations include digital
measures, as binary maps, differential maps, standard
verify, store memory to file and multilevel digital bitmap.
-
Array operations include all measures
that are meaningful only when considering a selected array
of cells: threshold and current distributions and maps as well as identifications of cells featuring
specific characteristics.
-
Stresses include gate
and drain stresses to be applied to selected arrays
of cells.
-
Specific tests activate an on-line continuity test
-
Write operations denote program,
erase and cycling operations, to be performed
on selected arrays of cells.
-
User functions are on-line measurements
that can be easily added by the user using a standard customizable
iterface.
Every standard function can be integrated
by the user in accord with the device specific requests using
a fully customizable ADVANCED panel (The Advanced panels editing
requires a basic knowledge of the LabVIEW language) |
|

(click
to enlarge)
|
|
Create
and run measurements cycles
All RIFLE’s basic features and on-line
operations can be combined together to run automatically personalized
sequences of operations (hundreds or thousands) denoted as cycles. The user will make his cycle diagram connecting
the Rifle’s specific icons and/or Labview specific tools.
Rifle software will run this Labiew cycle and during its
execution, relatives data are automatically saved for future
analysis (specific panels are included in the standard Rifle
package). In facts, when a cycle has been executed, results
can be analyzed by means of several specifically designed
algorithms. |

(click
to enlarge) |
|