CohereSim: A Bus-based Cache Simulator  v3.3
A tool for education in computing - learn about coherence protocols, replacement policies, and SMP vs DSM
Public Member Functions
Broadcast Class Reference

The Broadcast directory protocol. More...

#include <broadcast.h>

Inheritance diagram for Broadcast:
Inheritance graph
[legend]
Collaboration diagram for Broadcast:
Collaboration graph
[legend]

Public Member Functions

 Broadcast (cache_config &config)
 Construct a new Broadcast directory protocol. More...
 
void issueBusMsg (bus_msg_e bus_msg, addr_t addr, uint32_t cache_id)
 Issue a bus message from a cache to all other caches. More...
 
- Public Member Functions inherited from MemorySystem
 MemorySystem (cache_config &config)
 Construct a new memory system. More...
 
void issuePrRd (addr_t addr, uint32_t cache_id, size_t read_timestamp)
 Issue a PrWr message to a cache. More...
 
void issuePrWr (addr_t addr, uint32_t cache_id, size_t write_timestamp)
 Issue a PrRd message to a cache. More...
 
void printStats ()
 Print simulation run statistics in CSV format (headerless)
 

Additional Inherited Members

- Data Fields inherited from MemorySystem
size_t access_timestamp
 The access number of the current memory access.
 
size_t most_recent_sibling
 The most recent timestamp of a cache block across all caches.
 
bool copies_exist
 Flag to indicate if copies of a cache block exist in other caches.
 
bool flushed
 Flag to indicate if a cache flushed one of its lines.
 
- Protected Attributes inherited from MemorySystem
Cachecaches [MAX_N_CACHES]
 Array of this memory system's caches.
 

Detailed Description

The Broadcast directory protocol.

Constructor & Destructor Documentation

◆ Broadcast()

Broadcast::Broadcast ( cache_config config)
inline

Construct a new Broadcast directory protocol.

Parameters
configThe configuration of the memory system

Member Function Documentation

◆ issueBusMsg()

void Broadcast::issueBusMsg ( bus_msg_e  bus_msg,
addr_t  addr,
uint32_t  cache_id 
)
virtual

Issue a bus message from a cache to all other caches.

Parameters
bus_msgThe specific bus message
addrThe address accessed
cache_idThe cache ID of the requestor

Implements MemorySystem.


The documentation for this class was generated from the following files: