From c7e2e6e8edb1536135e4cb6d307d5817e73b3bae Mon Sep 17 00:00:00 2001 From: Your Name Date: Fri, 17 Jul 2026 16:15:44 -0700 Subject: SPICE crossbar generator in C --- src/crossbar_generator.h | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 src/crossbar_generator.h (limited to 'src/crossbar_generator.h') diff --git a/src/crossbar_generator.h b/src/crossbar_generator.h new file mode 100644 index 0000000..b7ec072 --- /dev/null +++ b/src/crossbar_generator.h @@ -0,0 +1,38 @@ +#ifndef CROSSBAR_GENERATOR_H +#define CROSSBAR_GENERATOR_H + +#include + +typedef struct { + size_t rows; + size_t columns; + + //array of row input voltages. + //length must equal rows (# of rows) + const double *input_voltages; + + //array of initial resistances + //stored in row-major order + const double *initial_resistance; + + //path to the memory component path + const char *model_path; + + //name of subcircuit(specific model) + const char *subcircuit_name; + + //resistance from each column to ground + double load_resistance; + + //transient sim settings + double time_step; + double stop_time; + + //1 = true | 0 = false + int print_state_nodes; +} Crossbar_Config; + +int generate_crossbar(const char *output_filename, + const Crossbar_Config *config); + +#endif -- cgit v1.2.3