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.
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
Daniel Kirschten [Wed, 28 Aug 2019 08:52:33 +0000 (10:52 +0200)]
Modified SaveLoadManager to use standard IDs
Daniel Kirschten [Wed, 28 Aug 2019 08:27:06 +0000 (10:27 +0200)]
Replaced verbose component IDs with default component IDs
Daniel Kirschten [Wed, 28 Aug 2019 08:24:31 +0000 (10:24 +0200)]
Added new GUIAm2904.json to editor's component folder
Daniel Kirschten [Wed, 28 Aug 2019 08:10:41 +0000 (10:10 +0200)]
Removed old JSONs
Fabian Stemmler [Tue, 27 Aug 2019 21:09:29 +0000 (23:09 +0200)]
MemoryView is now updated when the memory is modified
Daniel Kirschten [Tue, 27 Aug 2019 19:57:05 +0000 (21:57 +0200)]
Implemented C0 logic (but didn't test it yet)
Daniel Kirschten [Tue, 27 Aug 2019 19:56:38 +0000 (21:56 +0200)]
Fixed SimpleRectangularHardcodedGUIComponent's unpredictable output
Fabian Stemmler [Tue, 27 Aug 2019 19:09:04 +0000 (21:09 +0200)]
Fixed BitVector#getUnsignedValue();It no longer returns negative numbers
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
Fabian Stemmler [Tue, 27 Aug 2019 13:47:32 +0000 (15:47 +0200)]
Generalized common functionality of different Memories to new interface
Fabian Stemmler [Tue, 27 Aug 2019 13:46:24 +0000 (15:46 +0200)]
Reworked Parameter Classifications
Daniel Kirschten [Tue, 27 Aug 2019 08:35:48 +0000 (10:35 +0200)]
Undo renaming of BitVector's length to width
Fabian Stemmler [Mon, 26 Aug 2019 17:09:04 +0000 (19:09 +0200)]
Refined MicroInstructionDefinition and associated classes
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;
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
Fabian Stemmler [Mon, 26 Aug 2019 11:10:53 +0000 (13:10 +0200)]
Switched MemoryView Content Provider to allow for a bigger table
Fabian Stemmler [Mon, 26 Aug 2019 11:09:58 +0000 (13:09 +0200)]
Added size() in MainMemoryDefinition
Daniel Kirschten [Mon, 26 Aug 2019 09:06:02 +0000 (11:06 +0200)]
Further renaming of length to width
Daniel Kirschten [Mon, 26 Aug 2019 08:43:39 +0000 (10:43 +0200)]
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.
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)
Christian Femers [Mon, 26 Aug 2019 00:48:30 +0000 (02:48 +0200)]
Removed legacy editor json-resources
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.
Daniel Kirschten [Sun, 25 Aug 2019 20:36:17 +0000 (22:36 +0200)]
Fixed editor MANIFEST exported packages
Daniel Kirschten [Sun, 25 Aug 2019 20:35:51 +0000 (22:35 +0200)]
Implemented most of the Am2904. Missing: shifts, C0, component layout
Daniel Kirschten [Sun, 25 Aug 2019 20:34:17 +0000 (22:34 +0200)]
Added default highLevelStateHandler to standardSnippetIDMapping
Daniel Kirschten [Sun, 25 Aug 2019 20:33:37 +0000 (22:33 +0200)]
Made submodel / symbol rendering transition faster in SubmodelComponent
Fabian Stemmler [Sun, 25 Aug 2019 15:31:13 +0000 (17:31 +0200)]
Fixed WordAddressableMemoryTest
Adjusted for new WordAddressableMemoryComponent constructor, which
expects a MainMemoryDefinition
Fabian Stemmler [Sun, 25 Aug 2019 15:30:07 +0000 (17:30 +0200)]
Added Memory View to the plugin
Fabian Stemmler [Sun, 25 Aug 2019 15:21:55 +0000 (17:21 +0200)]
MainMemory now supports cells being accessed as BigIntegers
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
Fabian Stemmler [Sun, 25 Aug 2019 14:53:21 +0000 (16:53 +0200)]
Added methods for conversion between BitVector and BigInteger
Fabian Stemmler [Sat, 24 Aug 2019 16:15:48 +0000 (18:15 +0200)]
Added valueOf(...) method to AsmNumberUtil to parse the number formats
Fabian Stemmler [Sat, 24 Aug 2019 16:13:52 +0000 (18:13 +0200)]
Added MachineException and MemoryException
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
Christian Femers [Fri, 23 Aug 2019 15:06:18 +0000 (17:06 +0200)]
Improved Json style
Christian Femers [Fri, 23 Aug 2019 14:56:12 +0000 (16:56 +0200)]
Added binary check method
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?
Christian Femers [Fri, 23 Aug 2019 02:39:21 +0000 (04:39 +0200)]
Added first test structures for Am2904 and Am2910
Christian Femers [Fri, 23 Aug 2019 02:38:40 +0000 (04:38 +0200)]
Restructured test classes and improved readability
Christian Femers [Fri, 23 Aug 2019 02:37:33 +0000 (04:37 +0200)]
Adapt Testbench to new Input (_OE)
Christian Femers [Fri, 23 Aug 2019 02:36:26 +0000 (04:36 +0200)]
Incorporated TriStateBuffer into Am2910
Christian Femers [Fri, 23 Aug 2019 02:34:58 +0000 (04:34 +0200)]
Added GUI component for TriStateBuffer
Christian Femers [Fri, 23 Aug 2019 02:33:36 +0000 (04:33 +0200)]
Fixed InterfacePinHandle snapping
Christian Femers [Fri, 23 Aug 2019 02:31:16 +0000 (04:31 +0200)]
Added factory methods for integers
Fabian Stemmler [Thu, 22 Aug 2019 11:05:05 +0000 (13:05 +0200)]
Added memory in logic.core to exported packages
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
Fabian Stemmler [Wed, 21 Aug 2019 14:40:03 +0000 (16:40 +0200)]
Added GUIComponent for Word Addressable Memory
Added GUIMemoryWA
Daniel Kirschten [Wed, 21 Aug 2019 08:47:28 +0000 (10:47 +0200)]
Implemented GUIAm2904TestLogic
Daniel Kirschten [Tue, 20 Aug 2019 21:08:37 +0000 (23:08 +0200)]
Implemented GUIAm2904muSR
Daniel Kirschten [Tue, 20 Aug 2019 20:28:56 +0000 (22:28 +0200)]
Added MC override functionality for shift logic in GUIAm2904MSR
Daniel Kirschten [Tue, 20 Aug 2019 20:08:56 +0000 (22:08 +0200)]
Merge remote-tracking branch 'origin/development' into development
Daniel Kirschten [Tue, 20 Aug 2019 20:08:27 +0000 (22:08 +0200)]
Fixed crash when components change after HighLevelStateShell is closed
Daniel Kirschten [Tue, 20 Aug 2019 20:07:51 +0000 (22:07 +0200)]
Implemented GUIAm2904MSR
Daniel Kirschten [Tue, 20 Aug 2019 20:07:28 +0000 (22:07 +0200)]
Added default renderers to standardSnippetIDMapping
Fabian Stemmler [Tue, 20 Aug 2019 12:24:06 +0000 (14:24 +0200)]
Moved WordAddressableMemoryComponent to new package
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
Fabian Stemmler [Mon, 19 Aug 2019 20:11:01 +0000 (22:11 +0200)]
Added prototype component for main memory
Added WordAddressableMemoryComponent
Daniel Kirschten [Mon, 19 Aug 2019 08:51:39 +0000 (10:51 +0200)]
Fixed GUIMerger / GUISplitter bit order
Daniel Kirschten [Mon, 19 Aug 2019 08:45:35 +0000 (10:45 +0200)]
Fixed X/U/Z handling in GUIAm2904RegCTInstrDecode/ShiftInstrDecode
Daniel Kirschten [Mon, 19 Aug 2019 08:35:11 +0000 (10:35 +0200)]
Improved rendering of GUIMerger and GUISplitter
Daniel Kirschten [Mon, 19 Aug 2019 08:04:55 +0000 (10:04 +0200)]
Made GUIMerger and GUISplitter symmetrical
Daniel Kirschten [Sun, 18 Aug 2019 19:40:59 +0000 (21:40 +0200)]
Undid enabling HighLevelStateDebugShell a few commits ago
Daniel Kirschten [Sun, 18 Aug 2019 19:40:19 +0000 (21:40 +0200)]
Started working on modeling the GUIAm2904
Daniel Kirschten [Sun, 18 Aug 2019 19:39:00 +0000 (21:39 +0200)]
GUIMerger/Splitter don't crash without logic bindings; made them thinner
Daniel Kirschten [Sun, 18 Aug 2019 19:22:18 +0000 (21:22 +0200)]
Moved pins in GUIdff4_finewe; made it a standard component
Daniel Kirschten [Sun, 18 Aug 2019 19:18:29 +0000 (21:18 +0200)]
Fixed GUIAm2910 (broke when renaming GUImux4_12 to GUIsel4_12)
Daniel Kirschten [Sun, 18 Aug 2019 19:17:56 +0000 (21:17 +0200)]
Editor's add list is now sorted alphabetically
Daniel Kirschten [Sun, 18 Aug 2019 19:02:13 +0000 (21:02 +0200)]
Implemented GUIAm2904ShiftInstrDecode
Daniel Kirschten [Sun, 18 Aug 2019 19:01:34 +0000 (21:01 +0200)]
Renamed GUIAm2904RegCTInstrDecode and added it to standardCompIDMapping
Daniel Kirschten [Sun, 18 Aug 2019 16:58:01 +0000 (18:58 +0200)]
Moved pins of RegCTInstrDecode to useful locations
Daniel Kirschten [Sun, 18 Aug 2019 16:36:36 +0000 (18:36 +0200)]
Merge remote-tracking branch 'origin/development' into development
Daniel Kirschten [Sun, 18 Aug 2019 16:35:55 +0000 (18:35 +0200)]
Removed _WE pin from GUIdff4_finewe
Daniel Kirschten [Sun, 18 Aug 2019 16:35:43 +0000 (18:35 +0200)]
Implemented RegCTInstrDecode
Daniel Kirschten [Sun, 18 Aug 2019 12:44:55 +0000 (14:44 +0200)]
Made GUIMerger and GUISplitter serializable
Christian Femers [Sun, 18 Aug 2019 12:33:12 +0000 (14:33 +0200)]
Added machine plugin project to repository
Daniel Kirschten [Sun, 18 Aug 2019 10:06:43 +0000 (12:06 +0200)]
Renamed GUImux4_12 to GUIsel4_12 for consistency
Daniel Kirschten [Sat, 17 Aug 2019 22:10:17 +0000 (00:10 +0200)]
Added GUIMerger + GUISplitter to standardComponentIDMapping
Daniel Kirschten [Sat, 17 Aug 2019 22:04:51 +0000 (00:04 +0200)]
Implemented GUIMerger + GUISplitter
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)
Christian Femers [Tue, 13 Aug 2019 08:30:45 +0000 (10:30 +0200)]
Commented unnecessary println and debug code
Daniel Kirschten [Sun, 11 Aug 2019 14:48:52 +0000 (16:48 +0200)]
Implemented GUIdff4_finewe
Daniel Kirschten [Sun, 11 Aug 2019 14:20:20 +0000 (16:20 +0200)]
Created GUIdff4_invwe
Daniel Kirschten [Sun, 11 Aug 2019 14:20:12 +0000 (16:20 +0200)]
Renamed GUIAm2901QReg to GUIdff4
Daniel Kirschten [Sun, 11 Aug 2019 13:55:35 +0000 (15:55 +0200)]
Added net.mograsim.logic.model.am2900 to list of exported packages
Daniel Kirschten [Sun, 11 Aug 2019 08:13:11 +0000 (10:13 +0200)]
Improved addition loops in GUIAm2910RegCntr and GUIinc12
Daniel Kirschten [Sun, 11 Aug 2019 08:07:20 +0000 (10:07 +0200)]
Small layout improvements in GUIAm2910
Daniel Kirschten [Sun, 11 Aug 2019 07:57:05 +0000 (09:57 +0200)]
Created Am2910Testbench
Daniel Kirschten [Sun, 11 Aug 2019 06:55:02 +0000 (08:55 +0200)]
Improved GUIAm2910
Daniel Kirschten [Sat, 10 Aug 2019 19:20:05 +0000 (21:20 +0200)]
Implemented GUIAm2910
Daniel Kirschten [Sat, 10 Aug 2019 19:19:47 +0000 (21:19 +0200)]
Fixed GUIBitDisplay and GUIManualSwitch params
Daniel Kirschten [Sat, 10 Aug 2019 18:42:19 +0000 (20:42 +0200)]
Changed pin names and and a pin coordinate
Daniel Kirschten [Sat, 10 Aug 2019 18:04:31 +0000 (20:04 +0200)]
Made Am2910 components usable in Editor
Daniel Kirschten [Sat, 10 Aug 2019 17:46:15 +0000 (19:46 +0200)]
Implemented GUImux4_12
Daniel Kirschten [Sat, 10 Aug 2019 17:37:57 +0000 (19:37 +0200)]
Implemented GUIdff12
Daniel Kirschten [Sat, 10 Aug 2019 17:30:49 +0000 (19:30 +0200)]
Implemented GUIinc12; fixed GUIAm2910RegCntr
Daniel Kirschten [Sat, 10 Aug 2019 17:25:58 +0000 (19:25 +0200)]
Implemented GUIAm2910SP
Daniel Kirschten [Sat, 10 Aug 2019 16:32:19 +0000 (18:32 +0200)]
GUIBitDisplay and GUIManualSwitch now support logicWidth != 1