Commit Graph

158 Commits

Author SHA1 Message Date
6d6c8c595f Clean up private/public linking 2024-12-20 17:40:16 +01:00
ffc94a73cb Update dependency versions 2024-12-20 17:40:15 +01:00
e2342350d0 Minor improvements on package handling 2024-12-20 17:40:15 +01:00
c3eb5e6a62 Hide the use of FetchContent behind a flag
FetchContent is now disabled by default, when the project is included as
an subproject by another top-level project.
Also, every usage of FetchContent is behind a separate flag to enable and
disable the usage with granular control.
2024-12-20 17:40:15 +01:00
ca9ef16d0d Remove unnecessary project() calls
project() should only be called if the subdirectory, in fact, can be
built standalone.
2024-12-20 17:40:15 +01:00
e1b8bbf12d Clean up and refactor CMakeLists 2024-12-20 17:40:15 +01:00
91a09ad771 Use FindQwt.cmake script 2024-12-20 17:40:15 +01:00
ac69d25003 Fix CMake deprecation warning 2024-12-20 17:40:15 +01:00
a37171c6fd Remove file globs from CMakeLists
Fix build
2024-12-20 17:40:15 +01:00
703ee81d7e Introduce SimulationTime config
Use SimulationTime to forcefully stop simulation at a specified point in
time.
2024-12-10 10:04:59 +01:00
Lukas Steiner
be1807e9b0 Merge branch 'fix/buffer_entries' into 'develop'
Fix/buffer entries

Closes #64

See merge request ems/astdm/modeling.dram/dram.sys.5!86
2024-11-29 10:34:09 +00:00
Lukas Steiner
01caf7875e Merge branch 'fix/bandwidth' into 'develop'
Fix for bandwidth calculations with pseudo-channels

See merge request ems/astdm/modeling.dram/dram.sys.5!87
2024-11-29 08:48:37 +00:00
f960f499c6 Improve TA performance by increasing window of loaded transactions 2024-11-18 13:48:06 +01:00
e409bab47a Implement pseudo-channel and rank specific BW information 2024-11-18 13:18:33 +01:00
e74a617273 Crude fix for bandwidth calculations with pseudo-channels 2024-11-15 15:57:37 +01:00
18c00fc363 Pass a number of required buffer entries to hasBufferSpace() 2024-11-15 14:17:03 +01:00
ad1ea86d2e Fix the data burst location when a think delay is set 2024-11-05 11:04:24 +01:00
7a32613cb3 Switch to <filesystem> remove operation 2024-09-25 11:00:09 +02:00
2465f06d14 Minor fixes in the Trace Analyzer 2024-07-18 10:16:36 +02:00
82027bfa83 Move Trace Analyzer to open source tree
Move the code for the Trace Analyzer to the open source tree and only
keep the extensions behind a compiler flag.
2024-07-18 10:13:25 +02:00
Lukas Steiner
3d9d12ea65 Merge branch 'buffer_warning' into 'develop'
Add a warning when RequestBufferSize is configured together with ReadWrite SchedulerBuffer

See merge request ems/astdm/modeling.dram/dram.sys.5!67
2024-07-18 07:49:40 +00:00
5dd7c22a74 Refactor CMakeLists and GitLab CI/CD pipeline
- Remove nested minimum required to supress warnings.
- Declare SystemC as system library to supress warnings in headers.
- Add a BUILD_SHARED_LIBS option
- Remove hardcoded STATIC in various add_library calls to honor the
  BUILD_SHARED_LIBS option
- Remove _deps/ directory from the build directory in GitLab pipeline
- Remove *.tdb files after test stage in pipeline
- Set Ninja as the default generator for the dev preset and re-enable
  colored diagnostics
2024-06-28 11:07:56 +02:00
7274770a0f Add a warning when RequestBufferSize is configured together with ReadWrite SchedulerBuffer 2024-05-08 10:09:20 +02:00
Lukas Steiner
5b4ed9559d Merge branch 'config_refactor' into 'develop'
Configuration Refactoring

See merge request ems/astdm/modeling.dram/dram.sys.5!63
2024-02-23 14:29:06 +00:00
0ec6ea79ad Migrate from clkMhz to tCK entry in memspecs 2024-02-23 12:04:22 +01:00
1a2e5497ee Fix AddressDecoderTest 2024-02-23 11:59:50 +01:00
3925c5be55 Remove unused ReorderBuffer 2024-02-23 11:54:51 +01:00
59cf73fe9c Clean up public API (DRAMSys.h)
Remove DRAMSysRecordable.h/cpp as the functionality has been incorporated into
DRAMSys.h/cpp. The databaseRecording config is now completely handled by
DRAMSys itself without needing the user of the library to instanciate DRAMSys
or DRAMSysRecordable depending on this config.
2024-02-23 11:54:51 +01:00
5391b4351d Fix configuration tests 2024-02-23 11:54:51 +01:00
454cb00ddb Refactor: remove monolithic configuration class 2024-02-23 11:54:51 +01:00
d92ea325c3 Remove ControllerIF.h
It provided no advantage and made things unecessary complicated
2024-02-23 11:49:08 +01:00
Lukas Steiner
5eabecc9f9 Merge branch 'odr_fix' into 'develop'
Fix ODR violation of Dram and DramRecordable

See merge request ems/astdm/modeling.dram/dram.sys.5!64
2024-02-23 09:05:50 +00:00
Lukas Steiner
c7a4e31f2f Merge branch 'work/addressdecoder' into 'develop'
Add support for arbitrary XOR address manipulation

See merge request ems/astdm/modeling.dram/dram.sys.5!60
2024-02-23 08:33:59 +00:00
60d3e7618b Fix ODR violation of Dram and DramRecordable
The compiler flag DRAMPower was not propagated to downstream projects,
leading to an ODR violation of the classes Dram and DramRecordable
2024-02-08 11:47:34 +01:00
7b743db820 Add simple benchmark of full DDR3 simulation 2023-12-14 10:04:45 +01:00
1ba63bd1f7 Add support for more than two XOR bits 2023-12-13 10:32:03 +01:00
a89f4a3065 Introduce benchmark support using Google Benchmark 2023-12-11 11:33:11 +01:00
ed2a675145 Extract plausability check from AddressDecoder to separate function 2023-12-11 10:32:39 +01:00
6e0110190e Introduce executeRead() and executeWrite() functions 2023-11-20 16:22:02 +01:00
Lukas Steiner
0b88161640 Merge branch 'DramCleanup' into 'develop'
Introduce method to convert memspecs to DRAMPower memspecs and cleanup source files

See merge request ems/astdm/modeling.dram/dram.sys.5!58
2023-11-16 13:25:16 +00:00
6645a9ed54 Introduce method to convert memspecs to DRAMPower memspecs and cleanup source files 2023-11-14 14:57:25 +01:00
74a9155993 Add RequestBufferSizeRead and RequestBufferSizeWrite configurations for ReadWrite Buffer 2023-11-14 11:00:28 +01:00
d2e5bd36de Fix all warnings 2023-09-22 10:45:23 +02:00
Lukas Steiner
8224e97abe Reformat all files. 2023-09-21 16:50:59 +02:00
Lukas Steiner
68d82cd209 Merge branch 'work/serde' into 'develop'
Introduce Serialize/Deserialize interfaces

See merge request ems/astdm/modeling.dram/dram.sys.5!44
2023-09-19 12:44:45 +00:00
Lukas Steiner
9e53a38132 Fix address mapping for single device without byte bits. 2023-08-31 13:43:49 +02:00
a5810e48f4 Fix recording of memspec and mcconfig in trace database 2023-08-31 11:25:26 +02:00
41343c787e Introduce a concept to report idling to the outside 2023-08-31 10:19:04 +02:00
f96bdd4ac1 Introduce a serialize/deserialize interface 2023-08-31 10:19:01 +02:00
692ac5e566 Fix StlPlayer to store real data 2023-08-31 09:34:35 +02:00