simple_memobj.hh (13784:1941dc118243) simple_memobj.hh (14252:1659a606447f)
1/*
2 * Copyright (c) 2017 Jason Lowe-Power
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 17 unchanged lines hidden (view full) ---

26 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 *
28 * Authors: Jason Lowe-Power
29 */
30
31#ifndef __LEARNING_GEM5_PART2_SIMPLE_MEMOBJ_HH__
32#define __LEARNING_GEM5_PART2_SIMPLE_MEMOBJ_HH__
33
1/*
2 * Copyright (c) 2017 Jason Lowe-Power
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 17 unchanged lines hidden (view full) ---

26 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 *
28 * Authors: Jason Lowe-Power
29 */
30
31#ifndef __LEARNING_GEM5_PART2_SIMPLE_MEMOBJ_HH__
32#define __LEARNING_GEM5_PART2_SIMPLE_MEMOBJ_HH__
33
34#include "mem/mem_object.hh"
34#include "mem/port.hh"
35#include "params/SimpleMemobj.hh"
35#include "params/SimpleMemobj.hh"
36#include "sim/sim_object.hh"
36
37/**
38 * A very simple memory object. Current implementation doesn't even cache
39 * anything it just forwards requests and responses.
40 * This memobj is fully blocking (not non-blocking). Only a single request can
41 * be outstanding at a time.
42 */
37
38/**
39 * A very simple memory object. Current implementation doesn't even cache
40 * anything it just forwards requests and responses.
41 * This memobj is fully blocking (not non-blocking). Only a single request can
42 * be outstanding at a time.
43 */
43class SimpleMemobj : public MemObject
44class SimpleMemobj : public SimObject
44{
45 private:
46
47 /**
48 * Port on the CPU-side that receives requests.
49 * Mostly just forwards requests to the owner.
50 * Part of a vector of ports. One for each CPU port (e.g., data, inst)
51 */

--- 201 unchanged lines hidden ---
45{
46 private:
47
48 /**
49 * Port on the CPU-side that receives requests.
50 * Mostly just forwards requests to the owner.
51 * Part of a vector of ports. One for each CPU port (e.g., data, inst)
52 */

--- 201 unchanged lines hidden ---