Skip to content

Page 1

Hardware Manual

Volume II

Flow Diagrams


Page 2

HARDWARE MANUAL

VOLUME II

FLOW DIAGRAMS

Page 3

NORD-1 Computer Systems

Hardware Manual

Volume II

Flow Diagrams

   _______     _______ 
  //      \\  //      \\
 //        \\//        \\
 ||         ||         ||
 ||         ||         ||
 ||         ||         ||
 ||         ||         ||
 ||         ||         ||
  \\_______// \\_______//
      ND          ND

A/S NORSK DATA-ELEKTRONIKK


Page 4

Table of Contents

  1. Introduction
  2. Flow Diagrams
  3. Signal Definitions

Page 5

NORD - 1

A/S NORSK DATA - ELEKTRONIKK

flowchart TB
    A(MEMORY & INTERFACE) -->|data| B(REGISTERS)
    A -->|cont| C(CONTROL)
    A((BUFFER 4x158\nCONTROL 169\nGATES 159))

    C(((TIME COUNT 151\nCYCLE COUNT 123\nCOUNTER CONTROL 124\nSHIFT COUNT 125\nSHIFT CONTROL 126\nADDRESS 130\nCONTROL 131\nREGISTER & ARITHMETIC 115\nCONTROL 2x9040\nFLIP-FLOPS 127\nINST. REG. 150\nBIT INST. 133\nASSEMBLER 122\nREGISTER TRANSFER 146\n134\nFLOATING 135\nCONTROL 136\n137)))
    C -->|cont| D(PROTECT SYSTEM)
    D -->|data| B
    D(((REGISTER 141\nCONTROL 128)))

    C -->|cont| E(INTERRUPT SYSTEM)
    E -->|data| B
    E((REGISTER 2x106\nCONTROL 132))

    C -->|cont| F(OPERATOR'S PANEL)
    F((LAMP REG. 2x140\nPANEL BUFFER 110))

    F -->|cont| G(I/O INTERFACE)
    G--> B
    G -->|cont| C

    G((I/O CONTROL 120\nOUT BUFFER 163-2x166\nIN BUFFER 164\n2x165\nTELETYPE 160-170\nTAPEREADER (\n160)))

    B((R,P,X,B 4x108\nA,D,T,L 4x102\nE,F,G,H 4x101\nMAIN ARITHMETIC 4x103))

Document Information

DRAWN BY APPROVED BY DATE
EML 31.10.69

Page 6

Introduction to NORD-1 Documentation

Summarizing the development of NORD-1 may give a coarse idea of the structure of the documentation.

The first step in the design process was to decide the number of programmer oriented registers and the instruction format and repertoire.

The next step was to draw flow diagrams of all instructions. Part of this work is also the design of CPU-arithmetic and timing control (Time Counter and Cycle Counter).

To translate the flow diagrams into logical equations is a straight forward mechanical work, and the equations may be regarded as a rewriting of the flow diagrams.

The last step, drawing of logic diagrams, is even more straightforward. The problem at this stage consists of distributing circuits on circuit boards and definition and labeling of sub-signals.

The basic operation of NORD-1 is illustrated in the figure below.

   ┌───┐
   │ + │────────── INFORMATION BUS
   └─┬─┘              (IB)
     │
     │
     │
     ▼
   ┌───┐
   │ H │
   └─┬─┘
     │
     │
     ▼
 ┌──────┐
 │ARITH-│
 │METIC │
 └──────┘
   │
   │
   ▼
  SUM (S)
   │
   ▼
BUS MEMORY (BM)

    ┌───┐
    │ A │
    └─┬─┘
      │
      │
   ┌──┴──┐
   │     │
   │     │
 ENABLING  
   │
   ▼
FROM CORE
 MEMORY

Page 7

Generation of A-Register Set Pulse

One register is enabled at a time and presented at the IB terminals, and as input to the arithmetic. Data from memory goes via the H-register and the BM input to the arithmetic. For inter-register operations, one of the operands (source) is first transferred to the H-register before IB is switched to the other operand. The output of the arithmetic is then routed back to all registers where it may be strobed into register flip-flops.

The purpose of the control logic therefore is to generate the appropriate sequence of register enabling signals and register strobe pulses and to control the arithmetic to give the desired function, all as a result of the instruction decoded.

The operation of the logic is synchronous, i.e., controlled by a common timing source (Time Counter and Cycle Counter). To avoid timing hazards, the timing signals, after being decoded from the time counter flip-flops, always passes three stages of logic circuits before reaching the register flip-flops.

Example: Generation of A-register set pulse.

flowchart TB
    t70 --> RegCont109
    t110 --> SignalsDecoded
    SignalsDecoded --> RegCont109
    RegCont109 -.-> AS20

    subgraph Signals to be decoded
        AS10 --> ShiftControl126
        AS11 --> ShiftControl126
    end

    RegCont109 --> AS30
    AS30 --> A{i}
    A --0--> A(i)
    A --1--> S(i)
    S(i) --> Register102
    Alt --> AS

    subgraph Shift control 126
        t70 --> AS9
        t110 --> AS8
        t150 --> AS10
    end

The timing synchronization of all registers in CPU is similar to the example shown for the A-register.

As further introduction to the NORD-1 documentation, three instructions will be taken as examples and all important active signals connected to each block in the flow diagrams will be described in detail.


Page 8

Instructions

The example instructions are:

  1. add 120
  2. skp dx gre zro
  3. shad rot 5

The reader is advised to find the mentioned signals in the logic diagrams, to familiarize himself with the documentation.

Add 120

Relevant flow diagrams: Pages 1 and 12

The instruction add is a two-memory cycle instruction requiring two 16-bit words to be read from core memory, first the instruction itself (C0) and then the data word (C2).

The Time Counter control signals BACK and NEXT are both 0 in both cycles, and the Time Counter therefore produces the short sequence:

t0-1-2-3-8-9-10-11-0

t0 lasts until DATA READY is received from the memory control and is approximately 800 ns with a 1.5 μs memory. All other time intervals are 100 ns.

(R) ➜ H,IR

When entering t0 in C0 the R-register contains the actual address and a Memory Request signal is generated by CPU (RQ1). (Note: Last instruction ended with a transfer of P to R). The address is enabled to the memory address input MR (158), and a Read/Restore is initiated (INIT, RRA 169). The content of the specified memory location is transferred to the MB-register (Memory Control Module) and a Data Ready signal is returned to CPU (RY1). RY1 restarts the Time Counter and t1 is entered.

The memory communication bus MJ is now equal to MB (enabled by CPUE) and is strobed into IR (IS1) and the H-register (HS1, ME1).

R + 1 ➜ P

This addition is done via the address arithmetic. First P is set to all ones (PS3) and then the appropriate zeroes are transferred to P via the flip-flop clear terminal (PS4). RE1 enables the R-register as input to the arithmetic and CY2 generates the 1 to be added as a carry input to the least significant stage of the adder.


Page 9

Technical Page Content

R + 120 ➔ R

Address arithmetic addition (RE1, HE2, SX1, RS1).

R is equal to the address of the current instruction.
120 is the displacement of the instruction with sign extension, i.e., bits 8 through 15 equal to bit 7.
120 is transferred via the H-register and SX1 controls the sign extension mechanism.

The flip-flop D-input is used since the input to R is a function of R itself.

(R) ➔ H

Similar to (R) ➔ H, IR.

A + H ➔ A

Input to the arithmetic is enabled by HE1 and AE1, which makes BM=H and IB=A.
The output of the arithmetic is the sum of BM and IB if no other control signal is active. (PLUS=XRO|D0|BD0).
The sum is strobed into A at t11 by AS2.

P ➔ R

Transfer via address arithmetic (PE1, RS1).

Diagrams

flowchart TD
    CO --> |(R) ➔ H, IR| A1
    A1 --> |R + 1 ➔ p| A2
    A2 --> |cjp| B1
    B1 -- NO --> CJP1
    CJP1 --> |I = 1| C1
    C1 -- NO --> I1
    I1 --> |B = 1| D1
    D1 -- NO --> B1
    B1 --> |X = 1| E1
    E1 -- NO --> X1
    X1 --> |R + Δ ➔ R| R1
    R1 -- NO --> |jmp + jpl| F1
    F1 -- NO --> C2
    C2 --> C2_0
flowchart TD
    C2_0 --> |(R) ➔ H| G1
    G1 --> |G0| H1
    H1 -- NO --> G01
    G01 --> |G3| I1
    I1 -- YES --> |A + H ➔ A| J1
    J1 --> |P ➔ R| K1
    K1 --> CO

Page 10

skp dx gre zro

Relevant flow diagram: Page 5

This instruction is a one cycle instruction (CO). The Time Counter control signal NEXT depends upon resulting skip condition and selects one of the following two time pulse sequences.

  • Skip not effective: t0–1–2–3–8–9–10–11–0
  • Skip effective: t0–1–2–3–8–9–10–11–12–13–14–15–0
Instruction Description
(R) ➔ H, IR same as example 1
R + 1 ➔ P same as example 1
S.R. ➔ H In the instruction above the source register code is 0, which means that no register is enabled and therefore IB=0. This zero is transferred to the H-register (IE1, HS1).
P ➔ R same as example 1

The branching conditions in the flow diagram depends upon the sum output. The active control signals engaged in producing the correct sum output are XE3, HE1, BC0, BC8 and CY1.

We want the sum to be equal to X – H, which with two's complement representation of negative numbers means that H should be complemented bit by bit (BC0, BC8) and a one added to the result (CY1). If the resulting sum is positive, i.e. S15=0, the next instruction should be skipped. This means that the content of R should be replaced by P + 1, and operation requiring additional time.

The Time Counter control signal NEXT (NX1) adds time pulses t12–13–14–15 to the "normal" sequence.

Instruction Description
P + 1 ➔ R Address arithmetic addition (PE1, CY2, RS1). RS1 is unconditionally dependent upon t15 for CO:skp since t15 in this case exists only if P + 1 ➔ R is wanted.
flowchart TD
    A((X)) -->|Complement and Add 1| B((H))
    B --> C{Sum Positive?}
    C -->|Yes| D((Skip Next Instruction))
    C -->|No| E((Replace R with P + 1))

shad rot 5

Relevant flow diagram: Page 7

Double shifts (AD connected, 32 bits) are done in two phases, 16 bits shifted at a time. SA1 is a phase control flip-flop being complemented at each shift pulse.


Page 11

Shift Operations

SA1 Control

  • SA1 = 0: Shift the D-register
  • SA1 = 1: Shift the A-register

No shift direction specified means left shift.

Shift Examples

  • (R) ➜ H, IR
    Same as example 1
  • R + 1 ➜ P
    Same as example 1

Reset and Transfer

  • 0 ➜ SA1, SC
    Reset Shift Counter (SC) and the phase control flip-flop (SA1).
  • 5 ➜ SC
    5, the number of places to be shifted, is transferred from the H-register to the shift counter via the main arithmetic (required by floating point instructions). (HE1, BD, SS8).

Decrement SC

  • SC - 1 ➜ SC
    If SA1 = 1 the shift counter is decremented.

Phase Control

  • SA0 ➜ SA
    Complement the phase control flip-flop.

Shift Operations

  • shift D

    If SA1 = 0 shift the D-register one place to the left. (DE1, IL, ID, DS2, DX1).

    • IL enables left shift of IB.
    • ID makes the output of the arithmetic equal to the IB-input and DX1 selects A15 as input to D0.
    • The discarded bit (D15) is transferred to the link flip-flop M.
  • shift A

    If SA1 = 1 shift A-register one place to the left (AE1, IL, ID, AS3, DX1).

    • In this case DX1 selects M as input to A0.
    • The discarded bit (A15), which has already been transferred to D0, replaces the previous content of M.

If the content of the shift counter is not zero go back to SC - 1 ➜ SC. This is controlled by the Time Counter control signal BACK (BK1), which repeats pulses t8-9-10-11 the required number of times, ten in our case, five for each phase.

Additional Example

  • P ➜ R
    Same as example 1

Page 12

Flow Diagrams

Below follows a list of symbols and abbreviations used in the FLOW DIAGRAMS together with a short explanation.

Symbol Explanation
AW Anything written
DP Deposit
SA Set Address
SI Single Instruction
ST Stop
TR Tape-Reader
         _________
        |         |  
  SA    |  Flip-  |  
  SI    |  flops  |  
        |  on the |  
        |Assembler|  
        |  122    |  
        |_________|
Symbol Explanation
SR Source-Register
DR Destination-Register
S DR - SR (Sum output)
(R) The contents of the cell which address is contained in the R-register
REG (j) Bit in the register
△ Displacement of the instruction (lower half of H with sign extension)
Symbol Explanation
A↔G The A- and the G-register is exchanged
T14₀ → T14 Bit 14 in the T-register is complemented
2X → X Left shift of the X-register
1/2X → X Right shift of the X-register
T15 ⊕ H15 → SG1 Exclusive or of bit 15 of the T- and the H-register. If T15 is the opposite of H15, 1 → SG1
Symbol Explanation
T15 ⊕ H15₀ → SG1 If T15 is equal to H15, 0 → SG1
A0·2¹5 + 1/2D → D Right shift of the D-register with A-register bit 0 shifted into D-register bit 15
--ooOoo--

Page 13

A/S NORSK DATA: ELEKTRONIKK

Title

FLOW DIAGRAMS

Diagram

flowchart TD
    Start(["C0"])
    A[/1 (R) = H, IR\n1 R + 1 -> P/]
    B{c jp}
    B1{I = 1}
    B2{B = 1}
    B3{X = 1}
    B4{X = 1}
    End(["jmp + jpl"])

    Start --> A 
    A --> B
    B -- NO --> B1
    B -- YES --> C([See page 2])

    B1 -- YES --> B2
    B1 -- NO --> B2

    B2 -- YES --> D1[/B + Δ -> R/]
    B2 -- NO --> B3

    D1 --> D2[/R + Δ -> R/]
    D2 --> C1
    C1["C1"]

    B3 -- NO --> D3[/R + Δ -> R/]
    B3 -- YES --> E1[/X + Δ -> R/]

    D3 --> E2["H\n(R) -> H"]
    E2 --> B4

    B4 -- YES --> F1[/H + X -> R/]
    B4 -- NO --> F2[/B + Δ -> R/]

    F1 --> F3["H -> R"]
    F3 --> End

    F2 --> End

Remarks

  • Δ = Lower half of H with sign extension.

Document Info

  • Drawn by: EML
  • Date: 14.10.69
  • Remarks: ADDRESSING SEQUENCE GO - 5

Page 14

Flow Diagrams

flowchart TD
    A(CO) --> B((R) ➔ H, IR<br>R + 1 ➔ P)
    B --> C{jpc + jnc}
    C -- NO --> D(P ➔ R<br>15)
    D --> E(CO)
    C -- YES --> F(X + 1 ➔ X<br>11)
    F --> G(R + A ➔ R<br>11)
    G --> H{jump effective}
    H -- NO --> D
    H -- YES --> E

NOTE: t12 - 15 is "inserted" only if jump not effective and does not exist with jump effective. Controlled by signal NEXT to time counter.

Drawn by EML
Date 14.10.69
Approved by C J P

Page 15

Flow Diagrams

flowchart TD
    subgraph A/S NORSK DATA - ELEKTRONIKK
    direction TB
        CO -- (R) = HI,IR | R+1 -> P --> P -> R11
        R11 --> |YES| jpL --> P -> L11 --> |YES| I = 1 --> C1 -.-> CO
        R11 --> |NO| arg --> |YES| IR10 = 1 -.-> CO
        arg --> |NO| B X + Δ -> X A T11
        IR10 = 1 -.-> B X -> X A T11 -.-> CO
        B X + Δ -> X A T11 --> bskp
        bskp --> |NO| bset --> |NO| θ1 -> K11 -.-> bsta + bstc --> |NO| θ2 -> REG(i)11 -.-> CO
        bset --> |YES| θ1 -> K11
        bskp --> |YES| SKIP EFFECTIVE --> |NO| P+1 -> R15
    end

Notes:

  • θ1 = New content of bit-accumulator dependent on instruction
  • θ2 = New content of selected bit dependent on instruction
DRAWN BY REMARKS REPLACEMENT FOR DATE
EML JPL + ARG + BOP
APPROVED BY DATE
14.10.69

Page 16

Flow Diagrams

Flowchart

flowchart TD
    A(((C0)))
    A --> B((R) = H,IR \n R+1-P) --> C[S.R. = H]
    C -->|YES| D{swap}
    D -->|NO| E{rad}
    F{cld} -->|YES| G[OR \n H AND O-D.R \n XOR]
    G -->|11| H((P -> R)) --> A
    D -->|YES| I{cld}
    I -->|YES| J[H -> D.R]
    J -->|11| H
    I -->|NO| K[H + D.R -> D.R]
    K -->|11| H
    E -->|NO| F
    F -->|NO| L{cld}
    L -->|YES| M[H -> D.R]
    M -->|11| H
    L -->|NO| N[OR \n H AND D.R-D.R \n XOR]
    N -->|11| H
    E -->|YES| I
    I -->|NO| O[O-S.R]
    O -->|NO| P[D.R-S.R]
    P -->|11| Q[H -> D.R]
    Q -->|11| H

Notes

  • If D.R.=P, P->R is replaced by S->R.
  • If IR7=1, H is replaced by one's complement of H in the diagram above.

Definitions

Command Code
swap IR10, 9, 8, 0
cld 100 (IR6)
rad 2000 (IR10)
cml 200 (IR7)

Drawn By: EML
Approved By:
Date: 15.10.69

Remarks: R O P


Page 17

A/S Norsk Data-Elektronikk

Flow Diagrams

flowchart TD
    A((CO))
    A --> B[(R) H.IR]
    B --> C[R+ P]
    C --> D[S.R H]
    D --> E[P R]
    E --> F{gre}
    F -->|NO| G{eql}
    F -->|YES| H{S ≥ 0}
    G -->|YES| I{S = 0}
    G -->|NO| J{ueq}
    H -->|YES| K[P+ R]
    H -->|NO| A
    I -->|YES| L((CO))
    I -->|NO| K[P+ R]
    J -->|NO| M{lst}
    J -->|YES| N{S = 0}
    M -->|NO| O[WHAT?]
    M -->|YES| P{S ≥ 0}
    N -->|NO| K[P+ R]
    N -->|YES| K[P+ R]
    P -->|YES| L((CO))
    P -->|NO| K[P+ R]
Symbol Description
S.R Source Register
D.R Destination Register
S D.R - S.R
See also note page 2

| gre = IR₉₁₀₀ | eql = IR₉₀₁₀ | lst = IR₉₁₀₁ | ueq = IR₉₀₁₀ |

Drawn By: EML     Approved By: SKP     Date: 16.10.69


Page 18

A/S NORSK DATA-ELEKTRONIKK

Title: FLOW DIAGRAMS

Page 6

flowchart TD
    A(CO)
    A -->|1| B((R) H,IR))
    A -->|1| C(R + 1 P)
    A -->|3| D(16 SC)
    A -->|9| E(SC + 1 SC)
    E --> F{CONNECT}
    F -- NO --> G{SC = 0}
    G -- YES --> H(P R)
    G -- NO --> E
    F -- YES --> I( DATA READY )
    I -- NO --> J(DI A)
    J --> K(P R)
    I -- YES --> L(P R)
    L --> M{SKIP}
    K --> M
    M -- YES --> N(P + 1 R)
    N --> O((CO))
    M -- NO --> P(no operation)
    P --> O

Notes

  • DI = I/O Data in bus bits 0 - 15.
DRAWN BY REMARKS APPROVED BY DATE REPLACEMENT FOR DATE REPLACED BY DATE
EML I O T 15.10.69

Page 19

Flow Diagrams

A/S Norsk Data-Elektronikk

Drawing no.: Page 7

Flowchart

flowchart TD
    A[CO] --> B{"(R) ⟵ H, IR\nR+I⟵ P\n0⟵SA1, SC\nN⟵SC"}
    B --> C{"sad"}
    C -- NO --> D["1 ⟵ SA1\n3"]
    C -- YES --> E
    D --> E
    E -- NO --> F{"SC = 0"}
    E -- YES --> P
    F -- YES --> Q
    F -- NO --> G{"SA1 = 1"}
    G -- NO --> Q
    G -- YES --> H{"SC > 0"}
    H -- NO --> I["SC + 1 ⟵ SC\n9"]
    H -- YES --> J["SC - 1 ⟵ SC\n9"]
    I --> E
    J --> E
    Q{"sad"} 
    Q -- NO --> R{"sha"}
    Q -- YES --> S["SA1o⟵SA1\nH"]
    R -- NO --> T
    R -- YES --> U["shift A\nH"]
    R -- NO --> T{"shd"}
    T -- NO --> V
    T -- YES --> W["shift D\nH"]
    V["shift T\nH"] --> X{"SC = 0"}
    W --> X
    S --> X
    X -- NO --> Q
    X -- YES --> Y["P ⟵ R\nH"]
    Y --> A
    P[/Note: ZCI prevents shift on t1 (126)/]

Drawing Details

Drawn By Date
EML 5.11.69
Remarks
S H T
Replacement for Date
Replaced by Date

Page 20

Flow Diagrams

flowchart TD
    A([CO]) --> B{(R) ➔ H.IR\nR+1 ➔ P}
    B -->|NO| C[tra]
    B -->|YES| D[REG ➔ A]
    C -->|NO| E{mcl}
    E -->|NO| F{mst}
    E -->|YES| G[REG AND A ➔ REG]
    F -->|NO| H{trr}
    F -->|YES| I[REG OR A ➔ REG]
    H -->|YES| J[A ➔ REG]
    H -->|NO| K[P ➔ R]
    D --> H
    G --> F
    F --> H
    I --> H
    J --> K
    K --> L([CO])

Register Address

0 ⇐ Register Address ⇐ 63

Instruction Code
tra 150.000
trr 150.100
mcl 150.200
mst 150.300

  • Drawn By: EML
  • Date: 15.10.69
  • Remarks: Register Transfer

Page 21

Flow Diagrams

Diagram

flowchart TD
    A["C0"]
    A --> B["(R) ⇨ H,IR\n1\nR+1 ⇦ P\n1"]
    B --> C{IN=1}
    C -- NO --> D{jmp}
    C -- YES --> E{jmp}
    D -- NO --> F{wait}
    D -- YES --> G["see\npage 1"]
    F -- YES --> H["\n1 ⇦ ST\nH\nP ⇦ R\nH"]
    H --> I["C8,0"]
    I --> J["0 ⇨ PD(i)\nH\nP ⇦ R\nH"]
    J --> K["C4,0"]
    K --> L{"ANY\nINTERRUPT"}
    L -- YES --> M["C0"]
    L -- NO --> N["9\nPK ⇦ PL\nH\n20+PL ⇦ R\nH"]
    N --> O["C2,0"]
    O --> P["1\n(R) ⇨ H\nH"]
    P --> Q["\nH ⇨ X\nH\nP ⇦ R\nH"]
    Q --> M
    E -- NO --> R{RJ=1}
    E -- YES --> S["see\npage 1"]
    R -- NO --> L
    R -- YES --> T["20+PL ⇦ R\nH"]
    T --> U["C1,0"]
    U --> V["(R) ⇨ H\n1"]
    V --> W["H ⇨ R\nH"]
    W --> X["C1,1"]
    X --> Y["(R) ⇨ H\n1"]
    Y --> Z["0 ⇨ RJ\nH\nH ⇨ R\nH"]
    Z --> M

Details

DRAWN BY APPROVED BY DATE
EML 15.10.69

Remarks

WAIT + JMP + IN


Page 22

Flow Diagrams

Flowchart

flowchart TD
    CO --> |1| B0[/(R) H, IR../ R+1 P/]
    B0 --> |7| B1[/\ /\ T../ T14o T14/]
    B1 --> |H| B2[/P R/]
    B2 --> C30((C3,0))
    C30 --> |3| B3[/A15 SG4../ A H/]
    B3 --> D1{A = 0}
    D1 -- NO --> |3| E1[/0 TG/]
    D1 -- YES --> |1| E2[/1 TG/]
    E1 --> D2{H15 1}
    E2 --> D2
    D2 -- NO --> |7| F1[/H A/]
    F1 --> |H| F2[/0 T15/]
    D2 -- YES --> |7| G1[/-H A/]
    G1 --> |H| G2[/1 T15/]
    G2 --> |15| H1[/0 D/]
    H1 --> C31((C3,1))
    C31 --> I1{TG 1}
    I1 -- NO --> |3| J1[/T 1 T/]
    J1 --> I2{A15 1}
    I1 -- YES --> |3| K1[/0 T/]
    K1 --> CO
    I2 -- YES --> CO
    I2 -- NO --> |H| L1[/2A A/]
    L1 --> CO

FL4
(Repeat cycle)


Drawn by: EML
Approved by: [illegible]
Date: 15.10.69

Remarks: NLZ



Page 23

A/S NORSK DATA-ELEKTRONIKK

FLOW DIAGRAMS

Page 11

flowchart TD
    CO0(C0)
    CO0 --> A((R) ➞ H, T \n R + 1 ➞ P\n)
    A --> B(T + Δ ➞ T \n T15 ➞ SG4 \n T ➞ SC, T)
    B --> C(P ➞ R)
    C --> D{SG4 = 1}
    D -- NO --> E(A ➞ H \n H ➞ A)
    D -- YES --> F(A ➞ H \n -H ➞ A)
    F --> G{SC = 0}
    E --> G
    G -- YES --> H(O ➞ D, T)
    H --> I(C3,1)
    I --> CO1(C0)
    G -- NO --> J(SC + 1 ➞ SC \n ½ A ➞ A \n T15 ➞ A15)
    J --> D
DRAWN BY EML
APPROVED BY [illegible]
DATE 15.10.69
Remarks DNZ
Replacement for [illegible]
Replaced by [illegible]
Date [illegible]

Page 24

FLOW DIAGRAMS

Diagram

flowchart TD
    A[(C2.0)]
    A --> |(R) = H| B{"H = 1"}
    B --> |NO| C{"G0"}
    B --> |YES| D["O\nA → (R)\nT\nX"]
    C --> |YES| E["+\nA -\nAND\nH → A"]
    C --> |NO| F{"G2"}
    F --> |YES| G{"H"}
    F --> |NO| G["See\nrelevant\npage"]
    G --> |YES| I{"min"}
    G --> |NO| K-->H
    I --> |YES| J[(C2.1)]
    J --> |H + 1 → (R)| L
    L --> |H1| M["P → R"]
    M --> |H + i - 0| N{"NO"}
    N --> |YES| O["P + 1 → R"]
    N --> |NO| P[(C0)]
    H --> |H1| M
    I --> |NO| Q["A\nH → T\nX"]
    E --> H
    H --> P
    O --> P
    N --> P

Notes

  • GO: stz + sta + stt + stx
  • G2: min + lda + ldt + ldx
  • G3: add + sub + and + ora
DRAWN BY EML
DATE 16.10.69
Remarks Replacement for Date
GO + 2 + 3
Replaced by

Page 25

Flow Diagrams

flowchart TD
    A((C2,0)) --> B{stf + ldf}
    B -- YES --> C((C2,0))
    B -- NO --> D((C2,1))
    C --> E{stf}
    E -- YES --> F[T → (R)]
    E -- NO --> G[H → T]
    F --> H((C2,1))
    G --> H
    D --> I((R) → H) & (R + 1) ← R
    H --> I
    I --> J((R) → H) & (R + 1) ← R
    J --> K{std + stf}
    K -- YES --> L[A → (R)]
    K -- NO --> M[H → A]
    L --> N((C2,2))
    M --> N
    N --> O((R) → H)
    O --> P{ldd + ldf}
    P -- NO --> Q[D → (R)]
    P -- YES --> R[H → D]
    Q --> S[P → R]
    R --> S
    S --> T(C0)
Drawn By EML
Approved By Replacement for Date
Date 16.10.69
Remarks STD + STF + LDD + LDF

Page 26

Flow Diagrams

flowchart TD
    A[C2,0]
    A --> B((R) ➔ H))
    B --> C[A ➔ G]
    C --> D[H15 ➔ SG3]
    D --> E[O ➔ A, Q]
    E --> F[P ➔ R]
    F --> G[C3,0]
    G --> H[-16 ➔ SC]
    H --> I{"SG3 = 1"}
    I -- YES --> J[H15 = 0]
    J -- YES --> K[2A ➔ A]
    K --> L[2A ➔ G ➔ A]
    J -- NO --> M[H15 = 1]
    M -- YES --> N[2A ➔ G ➔ A]
    N --> L
    L --> O{"OVERFLOW"}
    O -- YES --> P[A15]
    P -- YES --> Q[1 ➔ 0, Q]
    Q --> R
    O -- NO --> R
    R --> S[2H ➔ H]
    S --> T[SC + 1 ➔ SC]
    T --> U{"SC = 0"}
    U -- YES --> V[C3,1]
    U -- NO --> U
DRAWN BY EML
APPROVED BY
DATE 16.10.69
Remarks MPY

Page 27

Flow Diagrams

flowchart TD
    A[C3.1]
    A -->|YES| B{SG3 = 1}
    B -->|YES| C[A - G -> A]
    B -->|NO| D{OVERFLOW}
    D -->|YES| E[1 -> 0, Q]
    D -->|NO| F(CO)
DRAWN BY EML
DATE 16.10.69
Remarks Replacement for Date Approved by Replaced by Date
MPY

Page 28

Flow Diagrams

flowchart TD
    A(C2,0)
    A --> B1[(R) --> H]
    B1 --> B2(R + 1 --> R)
    B2 --> C1(1 --> TG)
    C1 --> D{fad}

    subgraph YesBranch
        direction TB
        E1[["T15 ⊕ H15 -> SG1"]]
        E1 --> F[T - H -> SC]
        F --> G[Ø --> MO]
        G --> H[S14 -> ND]
    end

    subgraph NoBranch
        direction TB
        J1[["T15 ⊕ H15 -> SG1"]]
    end

    D -->|YES| YesBranch
    D -->|NO| NoBranch

    H --> I(C2,1)
    I --> J1[(R) --> G]
    J1 --> J2(R + 1 --> R)
    J2 --> K{ND = 1}

    K -->|YES| L[H -> T]
    L --> M(A ↔ G)

    K -->|NO| N(C2,2)
    N --> O[(R) --> H]

    classDef default fill:#f9f,stroke:#333,stroke-width:2px;

Notes

  • MO: Mantissa overlap
  • ND: Negative difference
  • Floating control 134

continuation

[ Ø = S14|13|12|11|10|9|8|7|6|5 ] + [ S14|13|12|11|10|9|8|7|6|5 ] : ((T - H) < 32)


Drawn by: EML
Date: 17.10.69
Remarks: FAD + FSB


Page 29

Flow Diagrams

Continued from page 16

graph TD;
    A[ND=1] -->|YES| B(fsb)
    A -->|NO| C(T15←T15)
    B -->|NO| C
    C --> D(D→H)
    D --> E(P→R)
    E -->|YES| F(MO=1)
    E -->|NO| G(C0)
    F --> H(C3.0)
    H -->|YES| I(SG1=1)
    H -->|YES| J(ZC2=1)
    J -->|YES| K(SC=0)
    K --> L(D→H)
    L --> M(CR15←CF1)
    M --> N(A-G←CF→A)
    N --> O(CR15←C)
    I -->|NO| P(D+H→D)
    P --> Q(CR15←CF1)
    Q --> R(A←G←CF1→A)
    R --> S(CR15←C)
    S --> T(C3.1)
    T -->|NO| U(D+C→D)
    U --> V(CR15←CF1)
    V --> W(A←CF1→A)
    W --> X(C3.1)
    H -->|NO| Y(H0=0)
    Y -->|NO| Z(0→TG)
    Y -->|YES| AA(60:2\*5*1/2H→H)
    AA --> AB(1/2G→G)
    AB --> AC(0→G15)
    AC --> AD(C3.0)
    AD -->|NO| AE(SC<0)
    AE -->|NO| AF(SC-1→SC)
    AE -->|YES| AG(SC+1→SC)
    AG --> AH(SC=0 1→ZC2)
    AH --> AI(SC≠0 0→ZC2)
    AI --> AD

Continue page 18


Drawn By Date
EML 17.10.69

Remarks

FAD + FSB


Page 30

Flow Diagrams

Continued from page 17

flowchart TD
    A[""] -->|NO| B{"TG=1"}
    B -->|YES| C[/"C3,2"/]
    C --> D[/"-32 → SC<br>D → H<br>A → G"/]
    D --> E[/"C3,3"/]

    E -->|NO| F{"G15=C"}
    E -->|YES| G{"SG1=1"}
    F -->|YES| H["SC+1 → SC<br>2G+H15 → G<br>2H → H<br>T-1 → T"]
    H --> I{"SC=0"}
    I -->|NO| L
    I -->|YES| M["O → T"]

    G -->|YES| J["FL2=1"]

    F -->|NO| N{"C=1"}
    N -->|NO| O
    N -->|YES| P["GO:215Y,H → H<br>½G → G<br>1 → G15<br>T+1 → T"]
    P --> Q

    O["T15 → T15"] --> R1["CO"]

    O -->|YES| P

    Q["NO OPERATION"] --> R2["CO"]

    M --> R1
    R1 -->|One's complement| R3{"H → D<br>G → A"}
    R2 --> R4{"H → D<br>G → A"}
    R3 --> T["CO"]
    R4 --> T["CO"]

    style A fill:none,stroke-width:0px;
    style L fill:none,stroke-width:0px;
    style O fill:none,stroke-width:0px;
    style Q fill:none,stroke-width:0px;

Details

  • Drawn By: EML
  • Approved By:
  • Remarks: FAD + FSB
  • Date: 17.10.69
  • Page: 18

Page 31

A/S NORSK DATA-ELEKTRONIKK

Title: FLOW DIAGRAMS

Page 19

flowchart TD
    A1([C2,0])
    A2(( (R)→H | R+1→R | 1→TG ))
    A3([T15⊕H15→SG1])
    A4{fdv}
    B1("NO")
    B2("YES")
    C1([T+H→T])
    C2([T-H→T])
    D1([C2,1])
    E1((R→G | R+1→R))
    E2([SG1→T15])
    E3([T14o→T14])
    F1{A15=0}
    F2{fdv}
    G1("YES")
    G2("NO")
    H1{G15=0}
    H2{G15=0}
    I1([1→Z])
    J1([C2,2])
    K1([C2,2])
    L1("One operand = 0")
    M1((0→D | 0→A,T | P→R))
    N1([CO])

    subgraph Flowchart
    A1 --> A2
    A2 --> A3
    A3 --> A4
    A4 -->|NO| C1
    A4 -->|YES| C2
    C1 --> D1
    D1 --> E1
    C2 --> D1
    C2 -->|0→TG| D1
    E1 --> E2
    E2 --> E3
    E3 --> F1
    F1 -->|NO| F2
    F1 -->|YES| J1
    F2 -->|YES| H1
    F2 -->|NO| H2
    H1 -->|YES| I1
    H2 -->|NO| J1
    H2 -->|YES| K1
    I1 --> E1
    J1 --> L1
    K1 --> L1
    L1 --> M1
    M1 --> N1
    end

Additional Information

  • Drawn by: EML
  • Approved by:
  • Remarks: FMU + FDV
  • Date: 20.10.69

Page 32

Flow Diagrams

Diagram

flowchart TD
    A -->|C2.2| B
    B --> C
    B --> D

    B["1  (R) ➔ H
    3  0 ➔ C
    3  -32 ➔ SC
    3  D ➔ F
    3  2 ➔ D"] 

    C["A ➔ E 7
       ? ➔ A 7
       O ➔ A 11
       P ➔ R 11
       D ➔ D 15"]

    C --> E[C3.0]
    E --> |DO=1| F{YES}
    E --> |NO| G[HO=1]

    G --> |NO| H["½ D ➔ D
                   A0 ➔ D15
                   ½ A ➔ A
                   C ➔ A15
                   O ➔ C"]

    G --> |YES| I["A0-2½*½D*F+D 3
                   CR15 ➔ CF1
                   ½ A+C-215
                   +E+CF1 ➔ A
                   CR15 ➔ C 11"]

    F --> |YES| J
    F --> |NO| K["0 ➔ TG 1"]

    J["SC+1 ➔ SC 9
       GO:2½*½H ➔ H 11
       ½ G ➔ G 11
       O ➔ G15 11"]

    J --> L{SC=0}

    L --> |YES| M
    L --> |NO| N
    M[SC=0]
    N[C3.1]

Notes

  • Drawn by: EML
  • Approved by: [Blank]
  • Date: 20.10.69
  • Remarks: F.M.U

Please double-check any details or specific placements in the original document to ensure all transcriptions are accurate as some symbols or texts might be represented differently based on scan quality.


Page 33

A/S Norsk Data-Elektronikk

Title

FLOW DIAGRAMS

Page

21

flowchart TD
    A["C=1"] -->|NO| B["T-1 ↔ T"]
    A -->|YES| C["½ D → D\nA0 → D15\n½ A ↔ A\nC → A15"]
    B --> A
    C --> D["TG=1"]
    D -->|NO| E["1 → D0"]
    D -->|YES| F["D0 → D0"]
    E --> G["C0"]
    F --> G
DRAWN BY APPROVED BY DATE Remarks Replacement for Replaced by
EML 21.10.69 F M U