* Z:\home\khalils\Downloads\files\data\raw_asc\2c3d95f383f4_PMemCell.asc
* Generated by LTspice 26.0.1 for Windows.
Q1 N005 N003 0 0 BC847B
R1 V+ N005 22k
R4 N004 N003 22k
R3 N002 N001 4.7k
Q2 N004 N005 0 0 BC847B
R2 V+ N004 22k
Q3 DO BASE 0 0 BC847B
D3 BASE DO BAT54
D4 N006 RD 1N4148
D5 N006 N004 1N4148
R7 V+ N006 470
D6 N006 N007 1N4148
D7 N007 BASE 1N4148
D2 N003 RESET 1N4148
D1 DI N001 1N4148
D8 N002 WR 1N4148
D9 N002 N003 1N4148
D10 N002 SEL 1N4148
D11 N006 SEL 1N4148
.model D D
.lib C:\users\khalils\AppData\Local\LTspice\lib\cmp\standard.dio
.model NPN NPN
.model PNP PNP
.lib C:\users\khalils\AppData\Local\LTspice\lib\cmp\standard.bjt
* The output is OpenCollector giving that junction J1 should be LOW when inactive. Since R7 is pulling up this junction \nboth D5 and D4 must be high for DO to be activated.
* Active high
* [J1]
* Active low
* Active high
* PROGRAM MEMORY
* Slow Write Fast Read
* As long as WR is low it is pulling the data down, thus inactivating \nit since D9 is only allowing a high sigal to pass.\n(Not sure if D1 is really needed)
.backanno
.end

* LTspice schematic (.asc):
Version 4
SHEET 1 1852 724
WIRE 576 96 416 96
WIRE 832 96 576 96
WIRE 848 96 832 96
WIRE 32 128 0 128
WIRE 112 128 96 128
WIRE 208 128 192 128
WIRE 224 128 208 128
WIRE 320 128 288 128
WIRE 576 128 576 96
WIRE 416 144 416 96
WIRE 832 192 832 96
WIRE 576 224 576 208
WIRE 672 224 576 224
WIRE 128 240 0 240
WIRE 208 240 208 128
WIRE 208 240 192 240
WIRE 416 240 416 224
WIRE 512 240 416 240
WIRE 512 272 512 240
WIRE 128 288 80 288
WIRE 208 288 208 240
WIRE 208 288 192 288
WIRE 320 288 320 128
WIRE 352 288 320 288
WIRE 128 368 16 368
WIRE 320 368 320 288
WIRE 320 368 192 368
WIRE 672 384 672 224
WIRE 720 384 672 384
WIRE 800 384 784 384
WIRE 832 384 832 272
WIRE 832 384 800 384
WIRE 864 384 832 384
WIRE 944 384 928 384
WIRE 1024 384 1008 384
WIRE 1040 384 1024 384
WIRE 1168 384 1104 384
WIRE 1216 384 1168 384
WIRE 320 416 320 368
WIRE 400 416 320 416
WIRE 672 416 672 384
WIRE 672 416 480 416
WIRE 1168 416 1168 384
WIRE 1024 464 1024 384
WIRE 1072 464 1024 464
WIRE 1104 464 1072 464
WIRE 720 480 -16 480
WIRE 800 480 800 384
WIRE 800 480 784 480
WIRE 80 528 80 288
WIRE 80 528 -16 528
WIRE 720 528 80 528
WIRE 800 528 800 480
WIRE 800 528 784 528
FLAG 416 336 0
FLAG 576 320 0
FLAG 1168 512 0
FLAG 1216 384 DO
IOPIN 1216 384 Out
FLAG -16 480 RD
IOPIN -16 480 In
FLAG 0 128 DI
IOPIN 0 128 In
FLAG 16 368 RESET
IOPIN 16 368 In
FLAG 848 96 V+
IOPIN 848 96 In
FLAG 0 240 WR
IOPIN 0 240 In
FLAG -16 528 SEL
IOPIN -16 528 In
FLAG 1072 464 BASE
SYMBOL npn 352 240 R0
SYMATTR InstName Q1
SYMATTR Value BC847B
SYMBOL res 400 128 R0
SYMATTR InstName R1
SYMATTR Value 22k
SYMBOL res 496 400 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R4
SYMATTR Value 22k
SYMBOL res 208 112 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R3
SYMATTR Value 4.7k
SYMBOL npn 512 224 R0
SYMATTR InstName Q2
SYMATTR Value BC847B
SYMBOL res 560 112 R0
SYMATTR InstName R2
SYMATTR Value 22k
SYMBOL npn 1104 416 R0
SYMATTR InstName Q3
SYMATTR Value BC847B
SYMBOL schottky 1040 400 R270
WINDOW 0 32 32 VTop 2
WINDOW 3 0 32 VBottom 2
SYMATTR InstName D3
SYMATTR Value BAT54
SYMATTR Description Diode
SYMATTR Type diode
SYMBOL diode 784 464 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName D4
SYMATTR Value 1N4148
SYMBOL diode 784 400 M270
WINDOW 0 32 32 VTop 2
WINDOW 3 0 32 VBottom 2
SYMATTR InstName D5
SYMATTR Value 1N4148
SYMBOL res 816 176 R0
SYMATTR InstName R7
SYMATTR Value 470
SYMBOL diode 864 368 M90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName D6
SYMATTR Value 1N4148
SYMBOL diode 944 368 M90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName D7
SYMATTR Value 1N4148
SYMBOL diode 192 352 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName D2
SYMATTR Value 1N4148
SYMBOL diode 32 112 M90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName D1
SYMATTR Value 1N4148
SYMBOL diode 192 224 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName D8
SYMATTR Value 1N4148
SYMBOL diode 224 144 R270
WINDOW 0 32 32 VTop 2
WINDOW 3 0 32 VBottom 2
SYMATTR InstName D9
SYMATTR Value 1N4148
SYMBOL diode 192 272 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName D10
SYMATTR Value 1N4148
SYMBOL diode 784 512 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName D11
SYMATTR Value 1N4148
TEXT -64 656 Left 2 ;The output is OpenCollector giving that junction J1 should be LOW when inactive.  Since R7 is pulling up this junction \nboth D5 and D4 must be high for DO to be activated.
TEXT -64 448 Left 2 ;Active high
TEXT 808 448 Left 3 ;[J1]
TEXT -72 336 Left 2 ;Active low
TEXT -48 208 Left 2 ;Active high
TEXT 312 -80 Left 5 ;PROGRAM MEMORY
TEXT 408 -40 Left 3 ;Slow Write Fast Read
TEXT -40 0 Left 2 ;As long as WR is low it is pulling the data down, thus inactivating \nit since D9 is only allowing a high sigal to pass.\n(Not sure if D1 is really needed)