From 10e0c53890701abe53c80f1da4a0b64bbd05914c Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Tue, 28 Mar 2023 21:27:05 +0300 Subject: Initial commit --- digital/atk16_alu.dig | 2651 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 2651 insertions(+) create mode 100644 digital/atk16_alu.dig (limited to 'digital/atk16_alu.dig') diff --git a/digital/atk16_alu.dig b/digital/atk16_alu.dig new file mode 100644 index 0000000..09e0e1b --- /dev/null +++ b/digital/atk16_alu.dig @@ -0,0 +1,2651 @@ + + + 2 + + + + 74382.dig + + + + + 74382.dig + + + + + 74382.dig + + + + + 74382.dig + + + + + VDD + + + rotation + + + + + + + VDD + + + rotation + + + + + + + VDD + + + rotation + + + + + + + VDD + + + rotation + + + + + + + Ground + + + rotation + + + + + + + Ground + + + rotation + + + + + + + Ground + + + rotation + + + + + + + Ground + + + rotation + + + + + + + Splitter + + + mirror + true + + + Input Splitting + 16 + + + Output Splitting + 1*16 + + + + + + In + + + Description + LHS of binary ALU operation + + + Label + A + + + Bits + 16 + + + + + + In + + + Description + RHS of binary ALU operation + + + Label + B + + + Bits + 16 + + + + + + Tunnel + + + NetName + A0 + + + + + + Tunnel + + + NetName + A1 + + + + + + Tunnel + + + NetName + A2 + + + + + + Tunnel + + + NetName + A3 + + + + + + Tunnel + + + NetName + A4 + + + + + + Tunnel + + + NetName + A5 + + + + + + Tunnel + + + NetName + A6 + + + + + + Tunnel + + + NetName + A7 + + + + + + Tunnel + + + NetName + A8 + + + + + + Tunnel + + + NetName + A9 + + + + + + Tunnel + + + NetName + A10 + + + + + + Tunnel + + + NetName + A11 + + + + + + Tunnel + + + NetName + A12 + + + + + + Tunnel + + + NetName + A13 + + + + + + Tunnel + + + NetName + A14 + + + + + + Tunnel + + + NetName + A15 + + + + + + In + + + Description + ALU operation code + + + Label + S + + + Bits + 4 + + + + + + Splitter + + + Input Splitting + 3 + + + Output Splitting + 1*3 + + + + + + Splitter + + + mirror + true + + + Input Splitting + 16 + + + Output Splitting + 1*16 + + + + + + Tunnel + + + NetName + B0 + + + + + + Tunnel + + + NetName + B1 + + + + + + Tunnel + + + NetName + B2 + + + + + + Tunnel + + + NetName + B3 + + + + + + Tunnel + + + NetName + B4 + + + + + + Tunnel + + + NetName + B5 + + + + + + Tunnel + + + NetName + B6 + + + + + + Tunnel + + + NetName + B7 + + + + + + Tunnel + + + NetName + B8 + + + + + + Tunnel + + + NetName + B9 + + + + + + Tunnel + + + NetName + B10 + + + + + + Tunnel + + + NetName + B11 + + + + + + Tunnel + + + NetName + B12 + + + + + + Tunnel + + + NetName + B13 + + + + + + Tunnel + + + NetName + B14 + + + + + + Tunnel + + + NetName + B15 + + + + + + Tunnel + + + rotation + + + + NetName + A0 + + + + + + Tunnel + + + rotation + + + + NetName + A1 + + + + + + Tunnel + + + NetName + A2 + + + + + + Tunnel + + + NetName + A3 + + + + + + Tunnel + + + rotation + + + + NetName + B0 + + + + + + Tunnel + + + rotation + + + + NetName + B1 + + + + + + Tunnel + + + NetName + B2 + + + + + + Tunnel + + + NetName + B3 + + + + + + Tunnel + + + rotation + + + + NetName + Y0 + + + + + + Tunnel + + + rotation + + + + NetName + Y1 + + + + + + Tunnel + + + NetName + Y2 + + + + + + Tunnel + + + NetName + Y3 + + + + + + Tunnel + + + rotation + + + + NetName + Y4 + + + + + + Tunnel + + + rotation + + + + NetName + Y5 + + + + + + Tunnel + + + NetName + Y6 + + + + + + Tunnel + + + NetName + Y7 + + + + + + Tunnel + + + rotation + + + + NetName + Y8 + + + + + + Tunnel + + + rotation + + + + NetName + Y9 + + + + + + Tunnel + + + NetName + Y10 + + + + + + Tunnel + + + NetName + Y11 + + + + + + Tunnel + + + rotation + + + + NetName + Y12 + + + + + + Tunnel + + + rotation + + + + NetName + Y13 + + + + + + Tunnel + + + NetName + Y14 + + + + + + Tunnel + + + NetName + Y15 + + + + + + Tunnel + + + rotation + + + + NetName + A4 + + + + + + Tunnel + + + rotation + + + + NetName + A5 + + + + + + Tunnel + + + NetName + A6 + + + + + + Tunnel + + + NetName + A7 + + + + + + Tunnel + + + rotation + + + + NetName + A8 + + + + + + Tunnel + + + rotation + + + + NetName + A9 + + + + + + Tunnel + + + NetName + A10 + + + + + + Tunnel + + + NetName + A11 + + + + + + Tunnel + + + rotation + + + + NetName + A12 + + + + + + Tunnel + + + rotation + + + + NetName + A13 + + + + + + Tunnel + + + NetName + A14 + + + + + + Tunnel + + + NetName + A15 + + + + + + Tunnel + + + rotation + + + + NetName + B4 + + + + + + Tunnel + + + rotation + + + + NetName + B5 + + + + + + Tunnel + + + NetName + B6 + + + + + + Tunnel + + + NetName + B7 + + + + + + Tunnel + + + rotation + + + + NetName + B8 + + + + + + Tunnel + + + rotation + + + + NetName + B9 + + + + + + Tunnel + + + NetName + B10 + + + + + + Tunnel + + + NetName + B11 + + + + + + Tunnel + + + rotation + + + + NetName + B12 + + + + + + Tunnel + + + rotation + + + + NetName + B13 + + + + + + Tunnel + + + NetName + B14 + + + + + + Tunnel + + + NetName + B15 + + + + + + Out + + + Description + ALU output + + + Label + Y + + + Bits + 16 + + + + + + Splitter + + + Input Splitting + 1*16 + + + Output Splitting + 16 + + + + + + Tunnel + + + rotation + + + + NetName + Y0 + + + + + + Tunnel + + + rotation + + + + NetName + Y1 + + + + + + Tunnel + + + rotation + + + + NetName + Y2 + + + + + + Tunnel + + + rotation + + + + NetName + Y3 + + + + + + Tunnel + + + rotation + + + + NetName + Y4 + + + + + + Tunnel + + + rotation + + + + NetName + Y5 + + + + + + Tunnel + + + rotation + + + + NetName + Y6 + + + + + + Tunnel + + + rotation + + + + NetName + Y7 + + + + + + Tunnel + + + rotation + + + + NetName + Y8 + + + + + + Tunnel + + + rotation + + + + NetName + Y9 + + + + + + Tunnel + + + rotation + + + + NetName + Y10 + + + + + + Tunnel + + + rotation + + + + NetName + Y11 + + + + + + Tunnel + + + rotation + + + + NetName + Y12 + + + + + + Tunnel + + + rotation + + + + NetName + Y13 + + + + + + Tunnel + + + rotation + + + + NetName + Y14 + + + + + + Tunnel + + + rotation + + + + NetName + Y15 + + + + + + BarrelShifter + + + Label + SRL + + + Bits + 16 + + + direction + right + + + + + + Demultiplexer + + + Bits + 3 + + + + + + Splitter + + + Input Splitting + 4 + + + Output Splitting + 3,1 + + + + + + Demultiplexer + + + Selector Bits + 3 + + + Bits + 16 + + + + + + Tunnel + + + rotation + + + + NetName + A + + + + + + Tunnel + + + rotation + + + + NetName + B + + + + + + Tunnel + + + rotation + + + + NetName + A + + + + + + Splitter + + + Input Splitting + 16 + + + Output Splitting + 5, + + + + + + Tunnel + + + rotation + + + + NetName + B + + + + + + Decoder + + + Selector Bits + 3 + + + + + + Driver + + + Bits + 16 + + + flipSelPos + true + + + + + + Tunnel + + + rotation + + + + NetName + ALS_E + + + + + + Driver + + + Bits + 16 + + + flipSelPos + true + + + + + + Tunnel + + + rotation + + + + NetName + ALS_E + + + + + + DriverInvSel + + + Bits + 16 + + + + + + BarrelShifter + + + Label + SRA + + + Bits + 16 + + + barrelShifterMode + arithmetic + + + direction + right + + + + + + Driver + + + Bits + 16 + + + flipSelPos + true + + + + + + BarrelShifter + + + Label + SLL + + + Bits + 16 + + + + + + Driver + + + Bits + 16 + + + flipSelPos + true + + + + + + Splitter + + + Input Splitting + 1*4 + + + Output Splitting + 4 + + + + + + Out + + + Label + FLAGS + + + Bits + 4 + + + + + + Tunnel + + + NetName + ALS_E + + + + + + Splitter + + + splitterSpreading + 2 + + + Input Splitting + 16 + + + Output Splitting + 8*2 + + + + + + BitSelector + + + Selector Bits + 4 + + + + + + Const + + + rotation + + + + Value + 15 + + + Bits + 4 + + + + + + Splitter + + + splitterSpreading + 2 + + + Input Splitting + 8 + + + Output Splitting + 4*2 + + + + + + Testcase + + + Label + Add test 1 + + + Testdata + + A B S FLAGS Y +0x1 0x2 3 0b0000 0x3 +0xff 0x1 3 0b0000 0x100 +0x1 0xffff 3 0b0101 0x0 + + + + + + + Or + + + Bits + 8 + + + + + + Or + + + Bits + 4 + + + + + + Splitter + + + splitterSpreading + 2 + + + Input Splitting + 2 + + + Output Splitting + 1*2 + + + + + + Splitter + + + splitterSpreading + 2 + + + Input Splitting + 4 + + + Output Splitting + 2*2 + + + + + + Or + + + Bits + 2 + + + + + + NOr + + + + + Testcase + + + Label + Sub test 1 + + + Testdata + + A B S FLAGS Y +0x10 0x1 2 0b0001 0xF +0x1 0x0 1 0b1000 0xFFFF + + + + + + + atk16_alu_carryfix.dig + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file -- cgit v1.3