astra-sim-alibabacloud/astra-sim/system/AstraMemoryAPI.hh (20 lines of code) (raw):

/****************************************************************************** This source code is licensed under the MIT license found in the LICENSE file in the root directory of this source tree. *******************************************************************************/ #ifndef __ASTRAMEMORYAPI_HH__ #define __ASTRAMEMORYAPI_HH__ #include <cassert> #include <cstdint> #include <fstream> #include <iostream> #include <string> namespace AstraSim { class AstraMemoryAPI { public: virtual uint64_t mem_read(uint64_t size) = 0; virtual uint64_t mem_write(uint64_t size) = 0; virtual uint64_t npu_mem_read(uint64_t size) = 0; virtual uint64_t npu_mem_write(uint64_t size) = 0; virtual uint64_t nic_mem_read(uint64_t size) = 0; virtual uint64_t nic_mem_write(uint64_t size) = 0; virtual ~AstraMemoryAPI() = default; }; } // namespace AstraSim #endif