2838 Commits

Author SHA1 Message Date
b3e24cc33a Serialize/Deserialize internal state of RefreshManagers
For gem5 checkpointing, it was needed to save the state of the refresh
managers. Otherwise, as soon as the simulation was resumed, the refresh
manager issued a huge number of refresh commands.
2025-04-17 13:59:46 +02:00
939fc90f98 Remove hard-coded subdirectory paths for configs
Previously, the subdirectories in which the sub-json files were searched
in were hardcoded. Now, DRAMSys simply searches in the directory of the
base config, making this approach more flexible.
2025-04-15 14:56:35 +02:00
a97b676b92 Remove the concept of a resource directory
The concept of a resource directory was confusing, error-prone and
was only used to specify the directory of the base config json anyway.
Therefore, remove the concept of the resource directory and use the
parent directory of the base config directly.
2025-04-15 14:56:35 +02:00
ee85f0df8f Merge branch 'refactor/database' into 'develop'
Removal of Recordable abstractions

See merge request ems/astdm/modeling.dram/dram.sys.5!110
2025-04-15 12:54:06 +00:00
db6011425a Allow non-byte granularity for bus width 2025-04-14 13:04:49 +02:00
e94b27d420 Merge branch 'benchmarks_refactor' into 'develop'
Add more benchmarks

See merge request ems/astdm/modeling.dram/dram.sys.5!118
2025-04-11 13:29:41 +00:00
27ad33de52 Remove misleading bench config 2025-04-11 15:25:19 +02:00
c42866cecb Add more example simulations in the benchmarks 2025-04-11 15:25:19 +02:00
42d17f95ec Merge branch 'tools/json_converter' into 'develop'
Make tool out of json_converter

See merge request ems/astdm/modeling.dram/dram.sys.5!112
2025-04-11 13:23:59 +00:00
5b925d999c Merge branch 'vcpkg' into 'develop'
Add optional support for VCPKG

See merge request ems/astdm/modeling.dram/dram.sys.5!117
2025-04-11 08:43:11 +00:00
f3cd73d569 Refactor CMakePresets and gitlab-ci 2025-04-11 10:36:37 +02:00
1af31343d1 Merge branch 'fix/clang-tidy' into 'develop'
Remove deprecated clang-tidy option

See merge request ems/astdm/modeling.dram/dram.sys.5!116
2025-04-11 07:22:05 +00:00
14ce68066e Remove deprecated clang-tidy option 2025-04-11 09:18:14 +02:00
Jonathan Hager
b9e3d8b0bf Renamed the tlmRecorder classes 2025-04-10 10:48:40 +02:00
Jonathan Hager
8266d825f3 Moved ifs from the method body to the invocation 2025-04-10 10:21:58 +02:00
0dc9eeeea2 Add optional support for vcpkg 2025-04-10 08:46:39 +02:00
330d5c77b6 Fix LPDDR5 regression test 2025-04-08 17:42:30 +02:00
8268f2e33b Fix issue with REFP2B with multiple ranks 2025-04-08 12:39:38 +02:00
db615eb6a4 Fix LPDDR5 AllBank and Per2Bank Refresh 2025-03-26 15:10:56 +01:00
Jonathan Hager
950dbd690d Removed DramRecordable import 2025-03-26 13:58:14 +01:00
Jonathan Hager
94954c8697 Switch from shared_ptrs back to references
Dram and Controller hold a const pointer instead of a reference, so that
it can be set to null, if database recording is disabled
2025-03-26 13:53:23 +01:00
Jonathan Hager
d773abc7ce Updated unit tests for HBM2
This is necessary, as recording the phases with tlmRecorders on the bus
changed the internal call order in the SystemC kernel. This leads to
different IDs in the database
2025-03-26 13:53:23 +01:00
Jonathan Hager
9c690c021c Fixed nullptr segfault if no database recording
Dram and Controller handle this case now and are initialized with a
shared_ptr pointing to null
2025-03-26 13:53:22 +01:00
Jonathan Hager
2f8c318c0e Implemented b_transport and dbg 2025-03-26 13:53:22 +01:00
Jonathan Hager
d349aafff7 Change TlmRecorderArbiter to TlmRecorderController 2025-03-26 13:53:22 +01:00
Jonathan Hager
86281cc6d3 Removed ControllerRecordable 2025-03-26 13:53:22 +01:00
Jonathan Hager
5b7dcbcc1c Moved TlmRecorder from reference to smart pointer 2025-03-26 13:53:22 +01:00
Jonathan Hager
0479184f72 Split the bandwidth recording in two modules
This allows separate recording of the bandwidth between Arbiter -
Controller and Controller - Dram
2025-03-26 13:53:22 +01:00
Jonathan Hager
f1445ab851 WIP: Moved BufferDepth out of ControllerRecordable 2025-03-26 13:53:22 +01:00
Jonathan Hager
9a563e78d5 Moved Bandwidth recording out of the Controller 2025-03-26 13:53:22 +01:00
Jonathan Hager
c45137958d Removed DramRecordable 2025-03-26 13:53:11 +01:00
Jonathan Hager
d5862e55ea Moved DramRecordable logic to Dram 2025-03-26 13:52:19 +01:00
Jonathan Hager
0975e52f5f Changed TlmRecorderWrapper to simple_sockets 2025-03-26 13:52:19 +01:00
Jonathan Hager
8b64cbf047 Added TlmRecorderWrapper to handle database logic 2025-03-26 13:52:18 +01:00
1ad352aa8b Merge branch 'fix/trafficgeneratordelays' into 'develop'
Fix delays in traffic generators

See merge request ems/astdm/modeling.dram/dram.sys.5!113
2025-03-26 09:04:21 +00:00
c1f4655d19 Fix delays in traffic generators 2025-03-26 09:59:51 +01:00
dc81bc008a Make tool out of json_converter 2025-03-26 09:08:36 +01:00
391b4cdb82 Merge branch 'fix/forward_declare_dram' into 'develop'
Fix the forward declaration of the Dram class

See merge request ems/astdm/modeling.dram/dram.sys.5!111
2025-03-25 18:31:08 +00:00
98eae7fcf4 Fix the forward declaration of the Dram class 2025-03-25 19:18:09 +01:00
aafb704cf8 Use std::optional in cmdMux 2025-03-24 13:39:50 +01:00
ace395bf89 Merge branch 'export_preset' into 'develop'
Enable compile command export in CMakePresets

See merge request ems/astdm/modeling.dram/dram.sys.5!107
2025-03-14 13:18:48 +00:00
eead4afbdd Enable compile command export in CMakePresets 2025-03-14 14:18:12 +01:00
35c6716dd2 Merge branch 'fix/james_hbm_sid' into 'develop'
Fix issue with stack id

See merge request ems/astdm/modeling.dram/dram.sys.5!105
2025-03-03 16:02:56 +00:00
e9643e7938 Fix issue with stack id 2025-03-03 16:58:51 +01:00
4a627c3c6c Merge branch 'fix/gem5_alignment' into 'develop'
Fix gem5 memory alignment

See merge request ems/astdm/modeling.dram/dram.sys.5!93
2025-02-27 14:12:16 +00:00
dbb6636c5a Fix LPDDR4 and LPDDR5 regression tests 2025-02-26 17:10:11 +01:00
76e8dba113 Do not align address to minimum burst length 2025-02-26 17:10:11 +01:00
ab35483aec Merge branch 'fix/ta_db_not_existing' into 'develop'
Do not create empty database file when it does not exist

See merge request ems/astdm/modeling.dram/dram.sys.5!104
2025-02-26 08:35:26 +00:00
5b76e52cd4 Do not create empty database file when it does not exist 2025-02-26 09:28:36 +01:00
7431f79ac3 Use proprietary license text in extension files 2025-02-21 15:11:37 +01:00