Mograsim.git
5 years agoFixed getUnsignedValue() in BitVector
Fabian Stemmler [Wed, 28 Aug 2019 19:34:40 +0000 (21:34 +0200)]
Fixed getUnsignedValue() in BitVector

Fixed getUnsignedValue() for good this time; Bit order MSB to LSB is now
correctly incorporated.

5 years agoMnemonics now exist only as part of a MnemonicFamily
Fabian Stemmler [Wed, 28 Aug 2019 12:35:26 +0000 (14:35 +0200)]
Mnemonics now exist only as part of a MnemonicFamily

Mnemonics and MnemonicFamilies are now unique.
equals() in Mnemonics and MnemonicFamilies now only tests for equal
references.
Mnemonics have an ordinal to identify them within their family.

5 years agoMerge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim...
Fabian Stemmler [Wed, 28 Aug 2019 09:05:04 +0000 (11:05 +0200)]
Merge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim-2019.git into development

5 years agoModified SaveLoadManager to use standard IDs
Daniel Kirschten [Wed, 28 Aug 2019 08:52:33 +0000 (10:52 +0200)]
Modified SaveLoadManager to use standard IDs

5 years agoReplaced verbose component IDs with default component IDs
Daniel Kirschten [Wed, 28 Aug 2019 08:27:06 +0000 (10:27 +0200)]
Replaced verbose component IDs with default component IDs

5 years agoAdded new GUIAm2904.json to editor's component folder
Daniel Kirschten [Wed, 28 Aug 2019 08:24:31 +0000 (10:24 +0200)]
Added new GUIAm2904.json to editor's component folder

5 years agoRemoved old JSONs
Daniel Kirschten [Wed, 28 Aug 2019 08:10:41 +0000 (10:10 +0200)]
Removed old JSONs

5 years agoMemoryView is now updated when the memory is modified
Fabian Stemmler [Tue, 27 Aug 2019 21:09:29 +0000 (23:09 +0200)]
MemoryView is now updated when the memory is modified

5 years agoImplemented C0 logic (but didn't test it yet)
Daniel Kirschten [Tue, 27 Aug 2019 19:57:05 +0000 (21:57 +0200)]
Implemented C0 logic (but didn't test it yet)

5 years agoFixed SimpleRectangularHardcodedGUIComponent's unpredictable output
Daniel Kirschten [Tue, 27 Aug 2019 19:56:38 +0000 (21:56 +0200)]
Fixed SimpleRectangularHardcodedGUIComponent's unpredictable output

5 years agoFixed BitVector#getUnsignedValue();It no longer returns negative numbers
Fabian Stemmler [Tue, 27 Aug 2019 19:09:04 +0000 (21:09 +0200)]
Fixed BitVector#getUnsignedValue();It no longer returns negative numbers

5 years agoMerge branch 'development' of
Fabian Stemmler [Tue, 27 Aug 2019 13:55:03 +0000 (15:55 +0200)]
Merge branch 'development' of
https://gitlab.lrz.de/lrr-tum/students/eragp-misim-2019.git into
development

Conflicts:
net.mograsim.machine/src/net/mograsim/machine/mi/parameters/MnemonicFamily.java

5 years agoGeneralized common functionality of different Memories to new interface
Fabian Stemmler [Tue, 27 Aug 2019 13:47:32 +0000 (15:47 +0200)]
Generalized common functionality of different Memories to new interface

5 years agoReworked Parameter Classifications
Fabian Stemmler [Tue, 27 Aug 2019 13:46:24 +0000 (15:46 +0200)]
Reworked Parameter Classifications

5 years agoUndo renaming of BitVector's length to width
Daniel Kirschten [Tue, 27 Aug 2019 08:35:48 +0000 (10:35 +0200)]
Undo renaming of BitVector's length to width

5 years agoRefined MicroInstructionDefinition and associated classes
Fabian Stemmler [Mon, 26 Aug 2019 17:09:04 +0000 (19:09 +0200)]
Refined MicroInstructionDefinition and associated classes

5 years agoDefined Interfaces regarding MicroInstructions
Fabian Stemmler [Mon, 26 Aug 2019 14:04:20 +0000 (16:04 +0200)]
Defined Interfaces regarding MicroInstructions

Added Mnemonic and MnemonicFamily;
MicroInstructionDefinition now defines structure of MicroInstructions;
Defined MicroInstruction and MicroprogramMemory;

5 years agoMerge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim...
Fabian Stemmler [Mon, 26 Aug 2019 11:14:36 +0000 (13:14 +0200)]
Merge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim-2019 into development

5 years agoSwitched MemoryView Content Provider to allow for a bigger table
Fabian Stemmler [Mon, 26 Aug 2019 11:10:53 +0000 (13:10 +0200)]
Switched MemoryView Content Provider to allow for a bigger table

5 years agoAdded size() in MainMemoryDefinition
Fabian Stemmler [Mon, 26 Aug 2019 11:09:58 +0000 (13:09 +0200)]
Added size() in MainMemoryDefinition

5 years agoFurther renaming of length to width
Daniel Kirschten [Mon, 26 Aug 2019 09:06:02 +0000 (11:06 +0200)]
Further renaming of length to width

5 years agoUndo 38eb28ebb36212417a639157d554b87c8fe0ee5b to make Editor work again
Daniel Kirschten [Mon, 26 Aug 2019 08:43:39 +0000 (10:43 +0200)]
Undo 38eb28ebb36212417a639157d554b87c8fe0ee5b to make Editor work again

5 years agoMy proposal for resolving add92039f433cd315f2087da9c1a0de899927d96
Christian Femers [Mon, 26 Aug 2019 01:28:58 +0000 (03:28 +0200)]
My proposal for resolving add92039f433cd315f2087da9c1a0de899927d96

The choice was made based on functionality (and a bit performance) and
mostly readability.

5 years agoRefactored Wire and finally renamed length to width
Christian Femers [Mon, 26 Aug 2019 01:03:45 +0000 (03:03 +0200)]
Refactored Wire and finally renamed length to width

Note: since this change was prolonged for some time, so it needed to be changed in a lot of places. The reason for the renaming is the confusability with the length of a (e.g. physical) wire. But it is more precise to call it (bit-) width, since the length of a BitVector passing through the wire becomes its width. (This seems to be similar named in Verilog)

5 years agoRemoved legacy editor json-resources
Christian Femers [Mon, 26 Aug 2019 00:48:30 +0000 (02:48 +0200)]
Removed legacy editor json-resources

5 years agoRefactored BitVector and added test cases
Christian Femers [Mon, 26 Aug 2019 00:47:50 +0000 (02:47 +0200)]
Refactored BitVector and added test cases

The is duplication of methods that were developed independently. This
will be resolved in a future commit.

5 years agoFixed editor MANIFEST exported packages
Daniel Kirschten [Sun, 25 Aug 2019 20:36:17 +0000 (22:36 +0200)]
Fixed editor MANIFEST exported packages

5 years agoImplemented most of the Am2904. Missing: shifts, C0, component layout
Daniel Kirschten [Sun, 25 Aug 2019 20:35:51 +0000 (22:35 +0200)]
Implemented most of the Am2904. Missing: shifts, C0, component layout

5 years agoAdded default highLevelStateHandler to standardSnippetIDMapping
Daniel Kirschten [Sun, 25 Aug 2019 20:34:17 +0000 (22:34 +0200)]
Added default highLevelStateHandler to standardSnippetIDMapping

5 years agoMade submodel / symbol rendering transition faster in SubmodelComponent
Daniel Kirschten [Sun, 25 Aug 2019 20:33:37 +0000 (22:33 +0200)]
Made submodel / symbol rendering transition faster in SubmodelComponent

5 years agoFixed WordAddressableMemoryTest
Fabian Stemmler [Sun, 25 Aug 2019 15:31:13 +0000 (17:31 +0200)]
Fixed WordAddressableMemoryTest

Adjusted for new WordAddressableMemoryComponent constructor, which
expects a MainMemoryDefinition

5 years agoAdded Memory View to the plugin
Fabian Stemmler [Sun, 25 Aug 2019 15:30:07 +0000 (17:30 +0200)]
Added Memory View to the plugin

5 years agoMainMemory now supports cells being accessed as BigIntegers
Fabian Stemmler [Sun, 25 Aug 2019 15:21:55 +0000 (17:21 +0200)]
MainMemory now supports cells being accessed as BigIntegers

5 years agoAdded functionality to AsmNumberUtil
Fabian Stemmler [Sun, 25 Aug 2019 15:20:10 +0000 (17:20 +0200)]
Added functionality to AsmNumberUtil

BigIntegers can now be formatted as any of the NumberTypes
A String can now be parsed as a BigInteger of a given NumberType
It can now be checked, if a String is a prefix of a valid number

5 years agoAdded methods for conversion between BitVector and BigInteger
Fabian Stemmler [Sun, 25 Aug 2019 14:53:21 +0000 (16:53 +0200)]
Added methods for conversion between BitVector and BigInteger

5 years agoAdded valueOf(...) method to AsmNumberUtil to parse the number formats
Fabian Stemmler [Sat, 24 Aug 2019 16:15:48 +0000 (18:15 +0200)]
Added valueOf(...) method to AsmNumberUtil to parse the number formats

5 years agoAdded MachineException and MemoryException
Fabian Stemmler [Sat, 24 Aug 2019 16:13:52 +0000 (18:13 +0200)]
Added MachineException and MemoryException

5 years agoUpdated MainMemory interface
Fabian Stemmler [Sat, 24 Aug 2019 11:12:18 +0000 (13:12 +0200)]
Updated MainMemory interface

added getDefinition() to access MainMemoryDefinition
updated the existing memory components to be initialized with a
MainMemoryDefinition

5 years agoImproved Json style
Christian Femers [Fri, 23 Aug 2019 15:06:18 +0000 (17:06 +0200)]
Improved Json style

5 years agoAdded binary check method
Christian Femers [Fri, 23 Aug 2019 14:56:12 +0000 (16:56 +0200)]
Added binary check method

5 years agoMoved main memory to machine module
Christian Femers [Fri, 23 Aug 2019 02:42:13 +0000 (04:42 +0200)]
Moved main memory to machine module

Maybe there is some better structure possible?

5 years agoAdded first test structures for Am2904 and Am2910
Christian Femers [Fri, 23 Aug 2019 02:39:21 +0000 (04:39 +0200)]
Added first test structures for Am2904 and Am2910

5 years agoRestructured test classes and improved readability
Christian Femers [Fri, 23 Aug 2019 02:38:40 +0000 (04:38 +0200)]
Restructured test classes and improved readability

5 years agoAdapt Testbench to new Input (_OE)
Christian Femers [Fri, 23 Aug 2019 02:37:33 +0000 (04:37 +0200)]
Adapt Testbench to new Input (_OE)

5 years agoIncorporated TriStateBuffer into Am2910
Christian Femers [Fri, 23 Aug 2019 02:36:26 +0000 (04:36 +0200)]
Incorporated TriStateBuffer into Am2910

5 years agoAdded GUI component for TriStateBuffer
Christian Femers [Fri, 23 Aug 2019 02:34:58 +0000 (04:34 +0200)]
Added GUI component for TriStateBuffer

5 years agoFixed InterfacePinHandle snapping
Christian Femers [Fri, 23 Aug 2019 02:33:36 +0000 (04:33 +0200)]
Fixed InterfacePinHandle snapping

5 years agoAdded factory methods for integers
Christian Femers [Fri, 23 Aug 2019 02:31:16 +0000 (04:31 +0200)]
Added factory methods for integers

5 years agoAdded memory in logic.core to exported packages
Fabian Stemmler [Thu, 22 Aug 2019 11:05:05 +0000 (13:05 +0200)]
Added memory in logic.core to exported packages

5 years agoMerge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim...
Fabian Stemmler [Wed, 21 Aug 2019 14:41:35 +0000 (16:41 +0200)]
Merge branch 'development' of https://gitlab.lrz.de/lrr-tum/students/eragp-misim-2019 into development

5 years agoAdded GUIComponent for Word Addressable Memory
Fabian Stemmler [Wed, 21 Aug 2019 14:40:03 +0000 (16:40 +0200)]
Added GUIComponent for Word Addressable Memory

Added GUIMemoryWA

5 years agoImplemented GUIAm2904TestLogic
Daniel Kirschten [Wed, 21 Aug 2019 08:47:28 +0000 (10:47 +0200)]
Implemented GUIAm2904TestLogic

5 years agoImplemented GUIAm2904muSR
Daniel Kirschten [Tue, 20 Aug 2019 21:08:37 +0000 (23:08 +0200)]
Implemented GUIAm2904muSR

5 years agoAdded MC override functionality for shift logic in GUIAm2904MSR
Daniel Kirschten [Tue, 20 Aug 2019 20:28:56 +0000 (22:28 +0200)]
Added MC override functionality for shift logic in GUIAm2904MSR

5 years agoMerge remote-tracking branch 'origin/development' into development
Daniel Kirschten [Tue, 20 Aug 2019 20:08:56 +0000 (22:08 +0200)]
Merge remote-tracking branch 'origin/development' into development

5 years agoFixed crash when components change after HighLevelStateShell is closed
Daniel Kirschten [Tue, 20 Aug 2019 20:08:27 +0000 (22:08 +0200)]
Fixed crash when components change after HighLevelStateShell is closed

5 years agoImplemented GUIAm2904MSR
Daniel Kirschten [Tue, 20 Aug 2019 20:07:51 +0000 (22:07 +0200)]
Implemented GUIAm2904MSR

5 years agoAdded default renderers to standardSnippetIDMapping
Daniel Kirschten [Tue, 20 Aug 2019 20:07:28 +0000 (22:07 +0200)]
Added default renderers to standardSnippetIDMapping

5 years agoMoved WordAddressableMemoryComponent to new package
Fabian Stemmler [Tue, 20 Aug 2019 12:24:06 +0000 (14:24 +0200)]
Moved WordAddressableMemoryComponent to new package

5 years agoAdded handle priorities
Fabian Stemmler [Mon, 19 Aug 2019 20:13:57 +0000 (22:13 +0200)]
Added handle priorities

Handle click events are now processed in order of handle priority

5 years agoAdded prototype component for main memory
Fabian Stemmler [Mon, 19 Aug 2019 20:11:01 +0000 (22:11 +0200)]
Added prototype component for main memory

Added WordAddressableMemoryComponent

5 years agoFixed GUIMerger / GUISplitter bit order
Daniel Kirschten [Mon, 19 Aug 2019 08:51:39 +0000 (10:51 +0200)]
Fixed GUIMerger / GUISplitter bit order

5 years agoFixed X/U/Z handling in GUIAm2904RegCTInstrDecode/ShiftInstrDecode
Daniel Kirschten [Mon, 19 Aug 2019 08:45:35 +0000 (10:45 +0200)]
Fixed X/U/Z handling in GUIAm2904RegCTInstrDecode/ShiftInstrDecode

5 years agoImproved rendering of GUIMerger and GUISplitter
Daniel Kirschten [Mon, 19 Aug 2019 08:35:11 +0000 (10:35 +0200)]
Improved rendering of GUIMerger and GUISplitter

5 years agoMade GUIMerger and GUISplitter symmetrical
Daniel Kirschten [Mon, 19 Aug 2019 08:04:55 +0000 (10:04 +0200)]
Made GUIMerger and GUISplitter symmetrical

5 years agoUndid enabling HighLevelStateDebugShell a few commits ago
Daniel Kirschten [Sun, 18 Aug 2019 19:40:59 +0000 (21:40 +0200)]
Undid enabling HighLevelStateDebugShell a few commits ago

5 years agoStarted working on modeling the GUIAm2904
Daniel Kirschten [Sun, 18 Aug 2019 19:40:19 +0000 (21:40 +0200)]
Started working on modeling the GUIAm2904

5 years agoGUIMerger/Splitter don't crash without logic bindings; made them thinner
Daniel Kirschten [Sun, 18 Aug 2019 19:39:00 +0000 (21:39 +0200)]
GUIMerger/Splitter don't crash without logic bindings; made them thinner

5 years agoMoved pins in GUIdff4_finewe; made it a standard component
Daniel Kirschten [Sun, 18 Aug 2019 19:22:18 +0000 (21:22 +0200)]
Moved pins in GUIdff4_finewe; made it a standard component

5 years agoFixed GUIAm2910 (broke when renaming GUImux4_12 to GUIsel4_12)
Daniel Kirschten [Sun, 18 Aug 2019 19:18:29 +0000 (21:18 +0200)]
Fixed GUIAm2910 (broke when renaming GUImux4_12 to GUIsel4_12)

5 years agoEditor's add list is now sorted alphabetically
Daniel Kirschten [Sun, 18 Aug 2019 19:17:56 +0000 (21:17 +0200)]
Editor's add list is now sorted alphabetically

5 years agoImplemented GUIAm2904ShiftInstrDecode
Daniel Kirschten [Sun, 18 Aug 2019 19:02:13 +0000 (21:02 +0200)]
Implemented GUIAm2904ShiftInstrDecode

5 years agoRenamed GUIAm2904RegCTInstrDecode and added it to standardCompIDMapping
Daniel Kirschten [Sun, 18 Aug 2019 19:01:34 +0000 (21:01 +0200)]
Renamed GUIAm2904RegCTInstrDecode and added it to standardCompIDMapping

5 years agoMoved pins of RegCTInstrDecode to useful locations
Daniel Kirschten [Sun, 18 Aug 2019 16:58:01 +0000 (18:58 +0200)]
Moved pins of RegCTInstrDecode to useful locations

5 years agoMerge remote-tracking branch 'origin/development' into development
Daniel Kirschten [Sun, 18 Aug 2019 16:36:36 +0000 (18:36 +0200)]
Merge remote-tracking branch 'origin/development' into development

5 years agoRemoved _WE pin from GUIdff4_finewe
Daniel Kirschten [Sun, 18 Aug 2019 16:35:55 +0000 (18:35 +0200)]
Removed _WE pin from GUIdff4_finewe

5 years agoImplemented RegCTInstrDecode
Daniel Kirschten [Sun, 18 Aug 2019 16:35:43 +0000 (18:35 +0200)]
Implemented RegCTInstrDecode

5 years agoMade GUIMerger and GUISplitter serializable
Daniel Kirschten [Sun, 18 Aug 2019 12:44:55 +0000 (14:44 +0200)]
Made GUIMerger and GUISplitter serializable

5 years agoAdded machine plugin project to repository
Christian Femers [Sun, 18 Aug 2019 12:33:12 +0000 (14:33 +0200)]
Added machine plugin project to repository

5 years agoRenamed GUImux4_12 to GUIsel4_12 for consistency
Daniel Kirschten [Sun, 18 Aug 2019 10:06:43 +0000 (12:06 +0200)]
Renamed GUImux4_12 to GUIsel4_12 for consistency

5 years agoAdded GUIMerger + GUISplitter to standardComponentIDMapping
Daniel Kirschten [Sat, 17 Aug 2019 22:10:17 +0000 (00:10 +0200)]
Added GUIMerger + GUISplitter to standardComponentIDMapping

5 years agoImplemented GUIMerger + GUISplitter
Daniel Kirschten [Sat, 17 Aug 2019 22:04:51 +0000 (00:04 +0200)]
Implemented GUIMerger + GUISplitter

5 years agoRemoved Util because it is not used anymore (for a long time)
Christian Femers [Tue, 13 Aug 2019 08:31:27 +0000 (10:31 +0200)]
Removed Util because it is not used anymore (for a long time)

5 years agoCommented unnecessary println and debug code
Christian Femers [Tue, 13 Aug 2019 08:30:45 +0000 (10:30 +0200)]
Commented unnecessary println and debug code

5 years agoImplemented GUIdff4_finewe
Daniel Kirschten [Sun, 11 Aug 2019 14:48:52 +0000 (16:48 +0200)]
Implemented GUIdff4_finewe

5 years agoCreated GUIdff4_invwe
Daniel Kirschten [Sun, 11 Aug 2019 14:20:20 +0000 (16:20 +0200)]
Created GUIdff4_invwe

5 years agoRenamed GUIAm2901QReg to GUIdff4
Daniel Kirschten [Sun, 11 Aug 2019 14:20:12 +0000 (16:20 +0200)]
Renamed GUIAm2901QReg to GUIdff4

5 years agoAdded net.mograsim.logic.model.am2900 to list of exported packages
Daniel Kirschten [Sun, 11 Aug 2019 13:55:35 +0000 (15:55 +0200)]
Added net.mograsim.logic.model.am2900 to list of exported packages

5 years agoImproved addition loops in GUIAm2910RegCntr and GUIinc12
Daniel Kirschten [Sun, 11 Aug 2019 08:13:11 +0000 (10:13 +0200)]
Improved addition loops in GUIAm2910RegCntr and GUIinc12

5 years agoSmall layout improvements in GUIAm2910
Daniel Kirschten [Sun, 11 Aug 2019 08:07:20 +0000 (10:07 +0200)]
Small layout improvements in GUIAm2910

5 years agoCreated Am2910Testbench
Daniel Kirschten [Sun, 11 Aug 2019 07:57:05 +0000 (09:57 +0200)]
Created Am2910Testbench

5 years agoImproved GUIAm2910
Daniel Kirschten [Sun, 11 Aug 2019 06:55:02 +0000 (08:55 +0200)]
Improved GUIAm2910

5 years agoImplemented GUIAm2910
Daniel Kirschten [Sat, 10 Aug 2019 19:20:05 +0000 (21:20 +0200)]
Implemented GUIAm2910

5 years agoFixed GUIBitDisplay and GUIManualSwitch params
Daniel Kirschten [Sat, 10 Aug 2019 19:19:47 +0000 (21:19 +0200)]
Fixed GUIBitDisplay and GUIManualSwitch params

5 years agoChanged pin names and and a pin coordinate
Daniel Kirschten [Sat, 10 Aug 2019 18:42:19 +0000 (20:42 +0200)]
Changed pin names and and a pin coordinate

5 years agoMade Am2910 components usable in Editor
Daniel Kirschten [Sat, 10 Aug 2019 18:04:31 +0000 (20:04 +0200)]
Made Am2910 components usable in Editor

5 years agoImplemented GUImux4_12
Daniel Kirschten [Sat, 10 Aug 2019 17:46:15 +0000 (19:46 +0200)]
Implemented GUImux4_12

5 years agoImplemented GUIdff12
Daniel Kirschten [Sat, 10 Aug 2019 17:37:57 +0000 (19:37 +0200)]
Implemented GUIdff12

5 years agoImplemented GUIinc12; fixed GUIAm2910RegCntr
Daniel Kirschten [Sat, 10 Aug 2019 17:30:49 +0000 (19:30 +0200)]
Implemented GUIinc12; fixed GUIAm2910RegCntr

5 years agoImplemented GUIAm2910SP
Daniel Kirschten [Sat, 10 Aug 2019 17:25:58 +0000 (19:25 +0200)]
Implemented GUIAm2910SP