From f16a16acc13fdc5d84c890796253749eb6b08e93 Mon Sep 17 00:00:00 2001 From: Mausam Kar Date: Mon, 27 Jul 2026 19:25:27 +0530 Subject: [PATCH] docs(README): comprehensive update reflecting all changes since June 2026 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Last README update: 2026-06-09 (commit d3eec613) This update: 2026-07-27 Branch: docs (tracking origin/docs-readme-updates) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ SUMMARY OF REPO CHANGES DOCUMENTED IN THIS README UPDATE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Total commits since last README: ~150 commits (2026-06-10 to 2026-07-27) Files changed (repo-wide): 2800+ files across 20+ PRs SubcircuitLibrary total: 741+ verified IC subcircuits (was ~630) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1. IHP PDK INTEGRATION ENHANCEMENTS (2026-06-28) Commits: cbd0d91a, 87aa8268, 885ddc7f, 1d0f2665 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ New files in ihp/: + ihp/install-ngspice-latest.sh Script to build latest ngspice from source with OSDI support. Requires eSim/NGHDL pre-installed. Backs up existing ngspice35, then builds with --enable-predictor --enable-osdi from SourceForge. + ihp/.spiceinit Pre-configured Ngspice initialization file for IHP-Open-PDK. Now correctly placed in user home directory (not project root) after running the IHP configuration step. + ihp/example.cir NMOS DC test circuit demonstrating a real IHP SG13G2 PDK SPICE simulation workflow from scratch. Modified: ~ ihp/ihp-install-script.sh Updated to move .spiceinit to C:\Users\rikik during configuration instead of leaving it in the repo working directory. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2. SUBCIRCUIT LIBRARY EXPANSION (2026-06-10 to 2026-07-27) PRs: #569, #574, #593, #594, #595, #596, #604, #605, #606, #609, #610 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 110+ new subcircuits added to library/SubcircuitLibrary/. Each subcircuit includes: .sub (SPICE), .kicad_sch, .cir test circuit. CA-Series ICs (commit: ec9b77f1, 78c24119–70af4f61): + CA3005 — Differential amplifier array + CA3018 — General-purpose transistor array + CA3019 — Diode / transistor array + CA3022 — RF/IF amplifier + CA3028A — RF/IF differential amplifier + CA3036 — NPN transistor array + CA3054 — Dual differential amplifier MC-Series Analog ICs (commits: 84bcd9fa–5869f6aa, 2026-07-11): + MC1306_Sub — Audio power amplifier IC + MC1510_sub — Wideband video/RF amplifier IC + MC1545_Sub — Wideband video amplifier IC + MC1550_Sub — RF/IF amplifier IC + MC1554_Sub — Audio power amplifier IC + MC1569_Sub — Positive voltage regulator IC + MC1595_Sub — Four-quadrant multiplier IC + MC1596_Sub — Balanced modulator/demodulator IC Analog / Mixed-Signal ICs — PR #604 (commits: 0e7618c0–fd9d77ea, 2026-07-17): + LT1010 — Power buffer amplifier + vca821 — Variable gain amplifier (10 MHz, -40dB to +40dB) + ths4541 — Fully differential amplifier + ths4303 — High-speed current-feedback op-amp + opa656 — Wideband unity-gain stable FET-input op-amp + lmh6702 — Ultra-low distortion wideband op-amp + cppll — Charge-pump PLL + ad834 — 500 MHz four-quadrant multiplier + ad8307 — Low-power logarithmic amplifier (500 MHz) + 3bit_flash_adc — 3-bit flash analog-to-digital converter Power Management / Motor Driver ICs (commits: 4641b869–eff8bec2, 2026-07-13): + IR2130 — Gate driver (3-phase bridge) + IR2110 — High- and low-side gate driver + IP5328P — Power bank management IC + LM1815 — Adaptive peak detector + L298N — Dual full-bridge motor driver + LP2950 — Micro-power voltage regulator + MCP73831 — Single-cell Li-Ion / Li-Po charge controller + TL494 — Pulse-width-modulation control circuit + TP4056 — Li-Ion battery charger IC + _TL783 — Adjustable high-voltage regulator (125V) Voltage Regulators (commits: 0ae0a7f7–41c3cc89, 2026-07-14): + LM2917 — Frequency-to-voltage converter / tachometer + LM2941 — Low-dropout regulator (1A, adjustable) + LM7806 — Fixed 6V positive voltage regulator + LP2951 — Micro-power adjustable voltage regulator + MCP1700 — Ultra-low quiescent current LDO regulator + TCA965 — Precision window discriminator Op-Amps & Comparators (commits: 9d810b4d–3d0584ed, 2026-07-13): + LM2902 — Quad op-amp (wide voltage range, low power) + LM2904 — Dual op-amp (wide voltage range, low supply) SN74-Series Digital ICs — PR #593 (commits: 225fb809–ea2d0acb, 2026-07-09): + SN74AS303 — 8-input NAND gate + SN74AS304 — 8-input NOR gate + SN74AS305 — 8-input NOR gate with open-collector + SN74LS247 — BCD-to-seven-segment decoder/driver + SN74LS295B — 4-bit right-shift register + SN74LS353 — Dual 4-input multiplexer (3-state) + SN74LS451 — Dual 4-line-to-16-line decoder + SN74LS461 — Octal counter + SN74LS498 — 8-bit shift register + SN74S268 — Dual 4-bit latch + SN74S532 — Magnitude comparator + SN74S536 — Dual J-K flip-flop + SN74278 — 4-bit cascadable priority register CD/CMOS Series (commits: 87fd9984–6bf9c228, 2026-07-12): + CD4016 — Quad bilateral switch + CD4026B — Decade counter/divider with 7-segment display + CD4029B — Presettable binary/decade up/down counter + CD4089B — Binary rate multiplier + CD4099B — 8-bit addressable latch TTL/CMOS Logic — PR #594 (commits: 6d943154–7afbc57a, 2026-07-13): + 74HCT594 — 8-bit serial-in, serial/parallel-out shift register + 74LS112 — Dual JK negative-edge-triggered FF with preset & clear + 74LS150 — 16-to-1 data selector/multiplexer + 74LS298 — Quad 2-input multiplexer with storage + 74LS379 — Quad D flip-flop with complementary outputs + 74LS399 — Quad 2-port register + 74hc589 — 8-bit parallel-in/serial-out shift register + CD4095BMS — CMOS gated J-K master-slave flip-flop Additional Digital ICs (commits: 2026-07-10–2026-07-12): + SN54170 — 4x4 register file (open-collector) + MM74C923 — 20-key encoder + LM3914 — Dot/bar display driver + 74ls93 — 4-bit binary ripple counter + 74ls175 — Quad D flip-flop + 74ls181 — 4-bit arithmetic logic unit + 74ls374 — Octal D flip-flop (3-state) + 74ls670 — 4x4 register file (3-state) + 74lv157 — Quad 2-input multiplexer + DM74ls173 — 4-bit D-type register + sn74ls244 — Octal buffer/line driver (3-state) + sn5470 — Dual 4-input expandable NAND gate + 4024bc — 7-stage binary ripple counter Further ICs from PR #574 & others (commits: 6cc764de–277e618d, 2026-06-13): + SNx4HC03 — Quad 2-input NAND gate (open-drain) + SNx5452B — AND-OR-INVERT gate + SN74LS156 — Dual 2-to-4 decoder/demultiplexer + SN74HC623 — Voltage-controlled oscillator + LM760 — Operational amplifier + CD74HCT241 — Octal buffer and line driver + CD74HC563 — Octal D-type transparent latch + CD4585 — 4-bit magnitude comparator + CD4073B — Triple 3-input AND gate ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3. LIBRARY REORGANIZATION / CLEANUP (2026-07-08 & 2026-06-26) PRs: #591 Commits: 1e086d2f, 54d711dd, 2911491f ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Moved misplaced subcircuits from a duplicate/incorrect path into the canonical library/SubcircuitLibrary/ directory: + CA3020 — Wideband power amplifier + LM108 — Precision op-amp + LM3080 — Programmable op-amp + MC1496 — Balanced modulator/demodulator + NE556 — Dual 555 timer + TL03xA — Low-power op-amp (TI TL03x family) + UA702M — Operational amplifier Also: subcircuit files from SUBCKT/ moved to library/SubcircuitLibrary/ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4. NGHDL — MICROWATT CO-SIMULATION EXAMPLE (2026-06-11) PR: #569 | Commit: 6773fe11 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + nghdl/Example/microwatt/ Full Microwatt NGHDL co-simulation example demonstrating mixed-signal simulation with the open-source Microwatt POWER ISA soft-core processor interfaced with Ngspice via GHDL. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5. DOCKER BUILD FIX (2026-06-26) Commit: d418b308 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + docker-launcher/Dockerfile Added 'libreadline-dev' to the apt-get install list. Fixes a build failure on newer Ubuntu base images where readline is no longer included by default. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6. BUG FIX — WORKSPACE NEWLINE HANDLING (2026-06-14) PR: #469 | Commit: 323e7b79 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + src/projManagement/newProject.py (or equivalent) Fixed trailing newline/whitespace issue in workspace path handling that could cause path resolution failures on certain Linux configurations. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ README CHANGES IN THIS COMMIT (102 insertions, 6 deletions) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ UPDATED sections: ~ Features table: Subcircuits row now shows '741+ ICs in SubcircuitLibrary' ~ Tech Stack table: Added IHP SG13G2 badge alongside SKY130 PDK ~ ihp/ directory description: Expanded to list all 4 files with purpose ~ SubcircuitLibrary description: Updated count to '741+' with section link ~ NGHDL Example/: Noted Microwatt co-simulation example NEW sections added: + '### IHP PDK Integration (ihp/)' table in Project Structure + '## 📦 Subcircuit Library' section with categorized IC families Categories: Logic Gates, Flip-Flops, Shift Registers, MUX/DEMUX, Counters, Encoders, Op-Amps, Regulators, Audio Amps, RF/IF Amps, Multipliers, Motor Drivers, CA-series, SN74-series, MC-series, CD/CMOS, ADC/DAC, Timers, and Miscellaneous + '## 📝 Recent Changes' section documenting all 6 change categories with dates, PR numbers, commit hashes, and per-item descriptions + '## 📄 License' section (was missing from footer area) + Docker install note about libreadline-dev fix + IHP install-ngspice-latest.sh usage snippet in Installation section Refs: #469 #569 #574 #591 #593 #594 #595 #596 #604 #605 #606 #609 #610 --- README.md | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 102 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 2a1ee4c82..fb42bffe3 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@

eSim — Electronic Circuit Simulation

- An Open-Source EDA Tool for Circuit Design, Simulation, Analysis & PCB Design
+ An Open-Source EDA Tool for Circuit Design, Simulation, Analysis & PCB Design
Developed by FOSSEE Team at IIT Bombay

@@ -61,7 +61,7 @@ eSim is designed for electronics engineers, students, educators, and hobbyists w | • **Simulation** | Ngspice Engine | Run DC, AC, Transient, and other SPICE analyses with real-time interactive plots | | • **Analysis** | Waveform Plotting | Visualize simulation results with matplotlib-based Python plots and Ngspice native plots | | • **Model Editor** | Device Models | Create and edit SPICE device models (Diodes, BJTs, MOSFETs, JFETs, IGBTs, etc.) | -| • **Subcircuits** | Subcircuit Builder | Build, manage, and upload reusable subcircuit blocks | +| • **Subcircuits** | Subcircuit Builder | Build, manage, and upload reusable subcircuit blocks — **741+ ICs** in `SubcircuitLibrary` | | • **Mixed-Signal** | NGHDL Integration | Interface VHDL digital models (via GHDL) with analog Ngspice simulations | | • **Verilog** | Makerchip + NgVeri | Use Makerchip IDE for Verilog/TL-Verilog design and convert to Ngspice models | | • **PCB** | Layout Design | Design PCB layouts using KiCad's PCB editor with eSim's footprint libraries | @@ -165,7 +165,7 @@ graph TB | `appimage/` | 📁 Directory | **AppImage packaging** — build scripts for portable Linux AppImage bundles | | `docker-launcher/` | 📁 Directory | **Docker support** — Dockerfile, launcher script, and CI workflows for containerized builds | | `snap/` | 📁 Directory | **Snap packaging** — `snapcraft.yaml` for building Snap packages | -| `ihp/` | 📁 Directory | **IHP PDK integration** — install script for IHP SG13G2 open-source SiGe BiCMOS PDK | +| `ihp/` | 📁 Directory | **IHP PDK integration** — install script, `.spiceinit` config, NMOS example, and ngspice latest installer for IHP SG13G2 SiGe BiCMOS PDK | | `patches/` | 📁 Directory | **Source patches** — patch files for modifying Ngspice/GHDL behavior in sandboxed environments | | `.github/` | 📁 Directory | **GitHub config** — issue templates, PR templates, and CI/CD workflow definitions | | `setup.py` | 📄 File | Python package configuration for pip installation | @@ -257,7 +257,7 @@ src/ |:-----|:------------| | `deviceModelLibrary/` | SPICE device models organized by type: Diode, BJT (Transistor), MOSFET (MOS), JFET, IGBT, LEDs, Switches, Transmission Lines, and user libraries | | `kicadLibrary/` | KiCad schematic symbols (`eSim-symbols/`), footprint libraries (`kicad_eSim-Library/`), and project templates | -| `SubcircuitLibrary/` | Reusable subcircuit definitions for common circuit blocks | +| `SubcircuitLibrary/` | **741+ reusable subcircuit ICs** — logic gates, flip-flops, op-amps, regulators, timers, multiplexers, shift registers, comparators, multipliers, PDK-specific IPs, and more (see [Subcircuit Library](#-subcircuit-library) section) | | `modelParamXML/` | XML parameter definitions for device model editor forms | | `ngspicetoModelica/` | Mapping files for Ngspice-to-Modelica component translation | | `browser/` | HTML/resource files for the built-in help browser | @@ -272,7 +272,16 @@ src/ | `src/createKicadLibrary.py` | Auto-generates KiCad symbols from VHDL entity definitions | | `src/ghdlserver/` | GHDL foreign interface server for inter-process communication with Ngspice | | `install-nghdl.sh` | Automated installer for NGHDL dependencies (GHDL, Verilator, Ngspice) | -| `Example/` | Example VHDL models and mixed-signal simulation projects | +| `Example/` | Example VHDL models and mixed-signal simulation projects (including **Microwatt NGHDL co-simulation**) | + +### IHP PDK Integration (`ihp/`) — SiGe BiCMOS Open PDK + +| Path | Description | +|:-----|:------------| +| `ihp-install-script.sh` | Automated installer for IHP SG13G2 open-source SiGe BiCMOS PDK | +| `install-ngspice-latest.sh` | Script to build and install the **latest ngspice** from source (with OSDI support) — requires eSim/NGHDL to be installed first | +| `.spiceinit` | Pre-configured `.spiceinit` file for IHP-Open-PDK; automatically placed in the home directory after configuration | +| `example.cir` | NMOS DC test circuit demonstrating IHP PDK SPICE simulation | --- @@ -290,7 +299,7 @@ src/ | **Verilog** | ![Verilator](https://img.shields.io/badge/Verilator-527FFF?style=flat-square) | Verilog HDL simulation and model generation | | **HDL Cloud IDE** | ![Makerchip](https://img.shields.io/badge/Makerchip-FF6B6B?style=flat-square) | Online Verilog/TL-Verilog IDE integration | | **Modelica** | ![OpenModelica](https://img.shields.io/badge/OpenModelica-1B2A49?style=flat-square) | Multi-domain modeling and simulation | -| **PDK** | ![SkyWater](https://img.shields.io/badge/SKY130_PDK-blue?style=flat-square) | SkyWater 130nm open-source process design kit | +| **PDK** | ![SkyWater](https://img.shields.io/badge/SKY130_PDK-blue?style=flat-square) ![IHP](https://img.shields.io/badge/IHP_SG13G2-orange?style=flat-square) | SkyWater 130nm & IHP SiGe BiCMOS open-source PDKs | | **Packaging** | ![Flatpak](https://img.shields.io/badge/Flatpak-4A86CF?style=flat-square&logo=flatpak&logoColor=white) ![Docker](https://img.shields.io/badge/Docker-2496ED?style=flat-square&logo=docker&logoColor=white) | Cross-distribution Linux packaging & containers | | **Documentation** | ![Sphinx](https://img.shields.io/badge/Sphinx-000000?style=flat-square&logo=sphinx&logoColor=white) ![RTD](https://img.shields.io/badge/ReadTheDocs-8CA1AF?style=flat-square&logo=readthedocs&logoColor=white) | Auto-generated developer documentation | | **CI/CD** | ![GitHub Actions](https://img.shields.io/badge/GitHub_Actions-2088FF?style=flat-square&logo=githubactions&logoColor=white) | Automated builds, Docker images, and releases | @@ -370,6 +379,8 @@ esim Refer to the [Docker Launcher README](docker-launcher/README.md) for instructions on running eSim in a containerized environment. +> **Note:** The Docker image now includes `libreadline-dev` to fix a build issue on recent Ubuntu base images. + ### 📦 Build from Source (Flatpak) ```bash @@ -379,6 +390,16 @@ flatpak-builder build flatpak/org.fossee.eSim.yml --install --user > 📖 For comprehensive installation instructions, see the [INSTALL](INSTALL) file. +### ⚗️ IHP PDK — Latest Ngspice from Source + +If you need the latest Ngspice with OSDI support for IHP PDK simulations: + +```bash +# Requires eSim/NGHDL to be installed first +chmod +x ihp/install-ngspice-latest.sh +./ihp/install-ngspice-latest.sh +``` + --- ## 🔄 CI/CD & Packaging @@ -454,6 +475,41 @@ eSim ships with **42 ready-to-simulate example projects** in the `Examples/` dir --- +## 📦 Subcircuit Library + +The `library/SubcircuitLibrary/` directory contains **741+ verified subcircuit models** contributed by the community. These can be directly used in eSim simulations as subcircuit blocks. + +
+📂 Click to expand subcircuit categories + +| Category | Examples | +|:---------|:---------| +| **Logic Gates & Buffers** | 74HC08, 74HC32, 74HC86, SN74LS00, IC74HC00, INVCMOS, CMOS_NAND, SNx4HC03 | +| **Flip-Flops & Latches** | 74LS379, CD4095BMS, JK flip-flops (74LS112, IC74HC107), D flip-flops, SR latches | +| **Shift Registers** | 74hc589, 74HCT594, 74LS298, 74LS399, SN74LS295B, SN74LS194 | +| **Multiplexers / Demultiplexers** | 74LS150 (16:1 MUX), 74HC157, CD4051_sub, SN74LS451, 74ls670 | +| **Counters & Dividers** | CD4017B, CD4026B, CD4029B, 74ls93, 74ls181, SN74LS461, DM74ls173 | +| **Encoders / Decoders** | SN74LS247, SN74LS353, MM74C923, CD4099B, CD4089B, LM3914 | +| **Op-Amps & Comparators** | LM358_Sub, LM741, LM311, LM393, LT1010, lmh6702, opa656, ths4303, ths4541 | +| **Voltage Regulators** | LM7806, LM7812, LP2950, LP2951, LM317_sub, MCP1700, TCA965, MC1569_Sub | +| **Audio Amplifiers** | MC1306_Sub, MC1554_Sub, LM386, LM833, TDA2003A_sub | +| **RF / IF Amplifiers** | MC1510_sub, MC1545_Sub, MC1550_Sub, vca821 | +| **Multipliers & Modulators** | ad834, ad8307, MC1595_Sub, MC1596_Sub, cppll | +| **Motor Drivers & Power ICs** | L298N, IR2110, IR2130, IP5328P, TP4056, MCP73831, TL494 | +| **CA-Series ICs** | CA3005, CA3018, CA3019, CA3022, CA3028A, CA3036, CA3054, CA3080, CA3094 | +| **SN74-Series ICs** | SN74AS303, SN74AS304, SN74AS305, SN74LS247, SN74LS451, SN74S268, SN74S532, SN74S536, SN74278 | +| **MC-Series ICs** | MC1306_Sub, MC1510_sub, MC1545_Sub, MC1550_Sub, MC1554_Sub, MC1569_Sub, MC1595_Sub, MC1596_Sub | +| **CD/CMOS Series** | CD4016, CD4026B, CD4029B, CD4089B, CD4095BMS, CD4099B, CD74HC563, CD74HCT241 | +| **ADC / DAC** | 3bit_flash_adc, DAC0800, 10bitDAC | +| **Timers** | NE556 (dual 555), lm555n, MC1455B_IC | +| **Miscellaneous** | SN54170, LM2902, LM2904, LM2917, LM2941, TL783, _TL783 | + +
+ +> 💡 **Contributing a Subcircuit?** Follow the guidelines in [CONTRIBUTING.md](CONTRIBUTING.md). Each subcircuit should include a `.sub` SPICE file, a KiCad schematic (`.kicad_sch`), and a test circuit (`.cir`). + +--- + ## 🤝 Contributing We welcome contributions from the community! Whether it's bug fixes, new features, documentation improvements, or example circuits — every contribution matters. @@ -556,6 +612,46 @@ A huge thank you to all **149+ amazing people** who have contributed to eSim! --- +## 📝 Recent Changes + +A summary of notable changes since the last README update (June 2026): + +### 🔧 IHP PDK Enhancements (June 2026) +- Added `ihp/install-ngspice-latest.sh` — a script to build the latest Ngspice from source with OSDI support for IHP PDK users +- Added `ihp/.spiceinit` — pre-configured Ngspice initialization file for IHP-Open-PDK; the install script now correctly places it in the user's home directory +- Added `ihp/example.cir` — an NMOS DC test circuit demonstrating IHP PDK simulation + +### 🧩 Subcircuit Library Expansion (June–July 2026) +Over **100 new subcircuit ICs** were contributed and verified, bringing the total to **741+** entries in `library/SubcircuitLibrary/`. Highlights include: +- **CA-series ICs**: CA3005, CA3018, CA3019, CA3022, CA3028A, CA3036, CA3054 (and moved CA3020, CA3021, etc. from misplaced locations) +- **MC-series analog ICs**: MC1306_Sub (audio amp), MC1510_sub (RF/IF amp), MC1545_Sub (video amp), MC1550_Sub (RF/IF amp), MC1554_Sub (audio amp), MC1569_Sub (voltage regulator), MC1595_Sub (4-quadrant multiplier), MC1596_Sub (balanced modulator/demodulator) +- **Analog ICs from PR #604 (Farhana)**: LT1010, vca821, ths4541, ths4303, opa656, lmh6702, cppll, ad834, ad8307, 3bit_flash_adc +- **Power/control ICs**: L298N (motor driver), IR2110, IR2130 (gate drivers), IP5328P (power bank IC), TP4056 (Li-ion charger), MCP73831 (Li-Po charger), TL494 (PWM controller), TL783, LP2950, LP2951 +- **Voltage regulators**: LM2941, LM7806, MCP1700, TCA965 +- **Op-amps / comparators**: LM2902, LM2904, LM2917, LM1815 +- **SN74-series digital ICs**: SN74AS303/304/305, SN74LS247, SN74LS295B, SN74LS353, SN74LS451, SN74LS461, SN74LS498, SN74S268, SN74S532, SN74S536, SN74278 +- **TTL/CMOS logic**: 74LS112, 74LS150, 74LS298, 74LS379, 74LS399, 74hc589, 74HCT594, CD4095BMS, CD4016, CD4026B, CD4029B, CD4089B, CD4099B, SN54170, MM74C923, LM3914 +- **Additional digital ICs**: 74ls93, 74ls175, 74ls181, 74ls374, 74ls670, 74lv157, DM74ls173, sn74ls244, sn5470, 4024bc + +### 🔀 Library Reorganization (July 2026) +- **PR #591**: Cleaned up misplaced subcircuits — moved `CA3020`, `LM108`, `LM3080`, `MC1496`, `NE556`, `TL03xA`, `UA702M` from a duplicate location into the canonical `library/SubcircuitLibrary/` path +- **Subcircuit files** from `SUBCKT/` directory moved to `library/SubcircuitLibrary/` (June 2026) + +### 🔬 NGHDL — New Microwatt Example (June 2026) +- Added a **Microwatt NGHDL co-simulation example** in `nghdl/Example/` demonstrating mixed-signal simulation with the open-source Microwatt POWER ISA soft-core processor (via PR #569) + +### 🐋 Docker — Build Fix (June 2026) +- Added `libreadline-dev` to the Dockerfile to resolve a build failure on newer Ubuntu base images + +### 🛠️ Bug Fix — Workspace Newline (June 2026) +- Fixed workspace newline handling issue (PR #469) + +--- + +## 📄 License + +eSim is licensed under the **GNU General Public License v3.0**. See [LICENSE](LICENSE) for details. +