From 2f0277488bcaea2c7267a6e6489133fcf738e3c9 Mon Sep 17 00:00:00 2001 From: hneemann Date: Mon, 27 Mar 2017 18:17:31 +0200 Subject: [PATCH] better layout of Von Neumann processor --- .../dig/processor/ProcessorVonNeumann.dig | 263 +++++++++--------- src/main/dig/processor/core/ClockDiv.dig | 76 +++-- .../dig/processor/core/ControlTwoCycle.dig | 126 +++++++-- 3 files changed, 261 insertions(+), 204 deletions(-) diff --git a/src/main/dig/processor/ProcessorVonNeumann.dig b/src/main/dig/processor/ProcessorVonNeumann.dig index b437cfb00..137f6a628 100644 --- a/src/main/dig/processor/ProcessorVonNeumann.dig +++ b/src/main/dig/processor/ProcessorVonNeumann.dig @@ -141,6 +141,10 @@ Von Neumann Two-Cycle CPU. Driver + + rotation + + Bits 16 @@ -150,7 +154,7 @@ Von Neumann Two-Cycle CPU. true - + PC.dig @@ -173,7 +177,7 @@ Von Neumann Two-Cycle CPU. 500000 - + Driver @@ -215,7 +219,7 @@ Von Neumann Two-Cycle CPU. stPC - + Tunnel @@ -229,7 +233,7 @@ Von Neumann Two-Cycle CPU. WE - + Tunnel @@ -243,7 +247,7 @@ Von Neumann Two-Cycle CPU. imm - + Tunnel @@ -257,7 +261,7 @@ Von Neumann Two-Cycle CPU. abs - + Tunnel @@ -271,7 +275,7 @@ Von Neumann Two-Cycle CPU. muxB - + Tunnel @@ -285,7 +289,7 @@ Von Neumann Two-Cycle CPU. src2D - + Tunnel @@ -299,7 +303,7 @@ Von Neumann Two-Cycle CPU. muxA - + Tunnel @@ -313,7 +317,7 @@ Von Neumann Two-Cycle CPU. ALU2D - + Tunnel @@ -327,7 +331,7 @@ Von Neumann Two-Cycle CPU. ALUop - + Tunnel @@ -341,7 +345,7 @@ Von Neumann Two-Cycle CPU. sf - + Tunnel @@ -355,7 +359,7 @@ Von Neumann Two-Cycle CPU. br - + Tunnel @@ -369,7 +373,7 @@ Von Neumann Two-Cycle CPU. st - + Tunnel @@ -383,7 +387,7 @@ Von Neumann Two-Cycle CPU. ld - + Tunnel @@ -397,7 +401,7 @@ Von Neumann Two-Cycle CPU. ioW - + Tunnel @@ -411,21 +415,17 @@ Von Neumann Two-Cycle CPU. ioR - + Tunnel - - rotation - - NetName stPC - + Tunnel @@ -582,12 +582,16 @@ Von Neumann Two-Cycle CPU. Tunnel + + rotation + + NetName C - + Tunnel @@ -738,36 +742,30 @@ Von Neumann Two-Cycle CPU. Tunnel + + rotation + + NetName C_in - + Tunnel rotation - + NetName S_in - - - - Tunnel - - - NetName - S_in - - - + Tunnel @@ -791,12 +789,7 @@ Von Neumann Two-Cycle CPU. - - - - /home/hneemann/Dokumente/Java/digital/src/main/dig/processor/ClockDiv.dig - - + /home/hneemann/Dokumente/Java/digital/src/main/dig/processor/Terminal.dig @@ -807,10 +800,14 @@ Von Neumann Two-Cycle CPU. - + - + + + + + @@ -829,10 +826,6 @@ Von Neumann Two-Cycle CPU. - - - - @@ -889,14 +882,14 @@ Von Neumann Two-Cycle CPU. - - - - + + + + @@ -937,25 +930,13 @@ Von Neumann Two-Cycle CPU. - - - - - - - - - - - - - - + + @@ -983,7 +964,7 @@ Von Neumann Two-Cycle CPU. - + @@ -1037,13 +1018,17 @@ Von Neumann Two-Cycle CPU. + + + + - - + + @@ -1101,24 +1086,20 @@ Von Neumann Two-Cycle CPU. - - - - - + - + @@ -1133,10 +1114,26 @@ Von Neumann Two-Cycle CPU. + + + + + + + + + + + + + + + + @@ -1158,32 +1155,32 @@ Von Neumann Two-Cycle CPU. - - + + - - - - - - + + - - + + - - + + + + + + @@ -1193,33 +1190,29 @@ Von Neumann Two-Cycle CPU. - - - - + + + + + + + + - - + + - - - - - - - - - - + + @@ -1229,14 +1222,6 @@ Von Neumann Two-Cycle CPU. - - - - - - - - @@ -1245,13 +1230,21 @@ Von Neumann Two-Cycle CPU. + + + + - - + + + + + + @@ -1269,6 +1262,10 @@ Von Neumann Two-Cycle CPU. + + + + @@ -1278,48 +1275,48 @@ Von Neumann Two-Cycle CPU. - - + + - - + + - - + + - - + + - - - - - - + + - - + + - - + + + + + + - - + + diff --git a/src/main/dig/processor/core/ClockDiv.dig b/src/main/dig/processor/core/ClockDiv.dig index 5cb200c03..e9e3e6bb1 100644 --- a/src/main/dig/processor/core/ClockDiv.dig +++ b/src/main/dig/processor/core/ClockDiv.dig @@ -24,17 +24,17 @@ dann ausgeführt. Clock - + T_FF - + Not - + And @@ -46,20 +46,6 @@ dann ausgeführt. - - Out - - - Description - Taktsignal für das Lesen eines Befehlswortes - - - Label - C_in - - - - Out @@ -75,6 +61,20 @@ Befehlswortes konfiguriert. + + Out + + + Description + Taktsignal für das Lesen eines Befehlswortes + + + Label + C_in + + + + Out @@ -103,12 +103,12 @@ steuert. - - + + - - + + @@ -118,22 +118,6 @@ steuert. - - - - - - - - - - - - - - - - @@ -142,24 +126,32 @@ steuert. + + + + + + + + - + - - + + - + - + diff --git a/src/main/dig/processor/core/ControlTwoCycle.dig b/src/main/dig/processor/core/ControlTwoCycle.dig index c8816ebdb..4cd1d0bc4 100644 --- a/src/main/dig/processor/core/ControlTwoCycle.dig +++ b/src/main/dig/processor/core/ControlTwoCycle.dig @@ -376,23 +376,6 @@ realisiert, und nicht durch 24 einzelne Schaltnetze. - - In - - - Description - Dieser Eingang schaltet das Leitwerk zunächst auf -"no operation" und setzt dann den Ausgang "ld", -damit der nächste Befehl aus dem Speicher -ausgelesen werden kann. - - - Label - ins - - - - And @@ -408,6 +391,51 @@ ausgelesen werden kann. + + ClockDiv.dig + + + + + Clock + + + Label + Clock + + + + + + Out + + + Label + C + + + + + + Out + + + Label + C_in + + + + + + Out + + + Label + S_in + + + + @@ -446,6 +474,18 @@ ausgelesen werden kann. + + + + + + + + + + + + @@ -474,21 +514,25 @@ ausgelesen werden kann. - - - - - - + + - - + + + + + + + + + + @@ -538,6 +582,18 @@ ausgelesen werden kann. + + + + + + + + + + + + @@ -546,14 +602,18 @@ ausgelesen werden kann. - - - - + + + + + + + + @@ -566,6 +626,10 @@ ausgelesen werden kann. + + + + @@ -574,6 +638,10 @@ ausgelesen werden kann. + + + +