summaryrefslogtreecommitdiff
path: root/inc/dram.h
diff options
context:
space:
mode:
authorbd <bdunahu@operationnull.com>2025-04-11 23:09:49 -0400
committerbd <bdunahu@operationnull.com>2025-04-11 23:09:49 -0400
commitdf580c5352528a4837b996a838f486d3838050a4 (patch)
tree72671b34d6baf1ea2ec4cd02f73fe51338ce0b6d /inc/dram.h
parent3eeb345d673bee6d62b04fc8a8a95ab822dc1e45 (diff)
Move storage to a separate git repository.
Diffstat (limited to 'inc/dram.h')
-rw-r--r--inc/dram.h62
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 */