diff options
author | bd <bdunahu@operationnull.com> | 2025-04-11 23:09:49 -0400 |
---|---|---|
committer | bd <bdunahu@operationnull.com> | 2025-04-11 23:09:49 -0400 |
commit | df580c5352528a4837b996a838f486d3838050a4 (patch) | |
tree | 72671b34d6baf1ea2ec4cd02f73fe51338ce0b6d /inc/dram.h | |
parent | 3eeb345d673bee6d62b04fc8a8a95ab822dc1e45 (diff) |
Move storage to a separate git repository.
Diffstat (limited to 'inc/dram.h')
-rw-r--r-- | inc/dram.h | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/inc/dram.h b/inc/dram.h deleted file mode 100644 index 102ec0f..0000000 --- a/inc/dram.h +++ /dev/null @@ -1,62 +0,0 @@ -#ifndef DRAM_H -#define DRAM_H -#include "definitions.h" -#include "storage.h" -#include <ostream> -#include <functional> - -class Dram : public Storage -{ - public: - /** - * Constructor. - * @param The number of clock cycles each access takes. - * @return A new memory object. - */ - Dram(int delay); - ~Dram(); - - Response - write_word(Accessor accessor, signed int data, int address) override; - Response read_line( - Accessor accessor, - int address, - std::array<signed int, LINE_SIZE> &data_line) override; - Response write_line( - Accessor accessor, - std::array<signed int, LINE_SIZE> data_line, - int address) override; - Response - read_word(Accessor accessor, int address, signed int &data) override; - - /** - * TODO This will accept a file at a later date. - */ - void load(std::vector<signed int> program); - - private: - /** - * Helper for all access methods. - * Calls `request_handler` when `accessor` is allowed to complete its - * request cycle. - * @param the source making the request - * @param the address to write to - * @param the function to call when an access should be completed - */ - Response process( - Accessor accessor, - int address, - std::function<void(int line, int word)> request_handler); - /** - * Returns OK if `accessor` is allowed to complete its request this cycle. - * Handles wait times, side door, and setting the current accessor this - * storage is serving. - * @param the accessor asking for a resource - * @return whether or not the access can be carried out this function call. - */ - Response is_access_cleared(Accessor accessor); -}; - -std::ostream &operator<<(std::ostream &os, const Dram &d); - -#endif /* DRAM_H_INCLUDED */ |