xbtorch.devices.presets
Predefined device model presets for analog crossbar simulations.
This module provides ready-to-use instances of analytical and tabular device models with fixed parameters for benchmarking, testing, or hardware-aware training. Each preset wraps a specific device configuration and provides attribute forwarding to the underlying device instance.
Classes
AnalyticalIdeal: Ideal analytical device with zero variations.AnalyticalReal: Realistic analytical device with typical c2c variations.TabularAnalyticalReal: Synthetic tabular device mimicking realistic analytical behavior.TabularCompactFeFETKriging: Compact FeFET tabular device with Kriging interpolation.TabularExperimentalFemFETKriging: Experimental FeFET tabular device based on measured data.
Notes
All preset devices wrap the corresponding AnalyticalDevice or
TabularDevice and forward attribute access using __getattr__
and __setattr__. This allows presets to behave like normal device
instances while keeping the preset parameters fixed.
Classes
Ideal analytical device with zero device-to-device (d2d) and cycle-to-cycle (c2c) variations. |
|
Realistic analytical device with typical cycle-to-cycle variations. |
|
Synthetic tabular device simulating realistic analytical behavior. |
|
Compact FeFET tabular device using Kriging interpolation. |
|
Experimental FeFET tabular device model based on measured data. |
- class xbtorch.devices.presets.AnalyticalIdeal[source]
Bases:
AnalyticalDeviceIdeal analytical device with zero device-to-device (d2d) and cycle-to-cycle (c2c) variations.
Conductance range: 3 nS to 38 nS. Nonlinearity: set to zero. Maximum pulse level: 500.
- class xbtorch.devices.presets.AnalyticalReal[source]
Bases:
AnalyticalDeviceRealistic analytical device with typical cycle-to-cycle variations.
Conductance range: 3 nS to 38 nS. Nonlinearity: set = 2.4, reset = -4.88. c2c variation: 0.035. Maximum pulse level: 500.
- class xbtorch.devices.presets.TabularAnalyticalReal[source]
Bases:
TabularDeviceSynthetic tabular device simulating realistic analytical behavior.
Uses predefined target tables with linear mean and constant standard deviation. Equivalent to NeuroSim synthetic dataset with 10,000 samples. Maximum pulse level: 500.
- class xbtorch.devices.presets.TabularCompactFeFETKriging(name)[source]
Bases:
TabularDeviceCompact FeFET tabular device using Kriging interpolation.
- Parameters:
name (str) – Name encoding voltage and standard deviation, e.g., ‘fefet_reset_1.2V_32_SD’.
Notes
Uses 10,000 data points to construct the tabular model, consistent with synthetic Neuromorphic simulations. Maximum pulse level: 32.
- class xbtorch.devices.presets.TabularExperimentalFemFETKriging(name)[source]
Bases:
TabularDeviceExperimental FeFET tabular device model based on measured data.
- Parameters:
name (str) – Name encoding gate voltage, e.g., ‘femfet_vg3’.
Notes
Uses experimental data for reset/set conductances, dG, and CDF tables. Maximum pulse level: 50.