コード例 #1
0
void dram_system_init(void)
{
	dram_system_read_config();

	/* Register events */
	EV_DRAM_COMMAND_RECEIVE = esim_register_event(dram_event_handler, dram_domain_index);
	EV_DRAM_COMMAND_COMPLETE = esim_register_event(dram_event_handler, dram_domain_index);


	if (*dram_report_file_name)
	{
		dram_report_file = file_open_for_write(dram_report_file_name);
		if (!dram_report_file)
			fatal("%s: cannot write on DRAM report file", dram_report_file_name);
	}



}
コード例 #2
0
ファイル: moesi.c プロジェクト: Anmol2307/PranaliOS
void moesi_init()
{
	/* Debug */
	cache_debug_category = debug_new_category();

	/* Events */
	EV_MOESI_FIND_AND_LOCK = esim_register_event(moesi_handler_find_and_lock);
	EV_MOESI_FIND_AND_LOCK_FINISH = esim_register_event(moesi_handler_find_and_lock);

	EV_MOESI_LOAD = esim_register_event(moesi_handler_load);
	EV_MOESI_LOAD_ACTION = esim_register_event(moesi_handler_load);
	EV_MOESI_LOAD_MISS = esim_register_event(moesi_handler_load);
	EV_MOESI_LOAD_FINISH = esim_register_event(moesi_handler_load);

	EV_MOESI_STORE = esim_register_event(moesi_handler_store);
	EV_MOESI_STORE_ACTION = esim_register_event(moesi_handler_store);
	EV_MOESI_STORE_FINISH = esim_register_event(moesi_handler_store);

	EV_MOESI_EVICT = esim_register_event(moesi_handler_evict);
	EV_MOESI_EVICT_ACTION = esim_register_event(moesi_handler_evict);
	EV_MOESI_EVICT_RECEIVE = esim_register_event(moesi_handler_evict);
	EV_MOESI_EVICT_WRITEBACK = esim_register_event(moesi_handler_evict);
	EV_MOESI_EVICT_WRITEBACK_EXCLUSIVE = esim_register_event(moesi_handler_evict);
	EV_MOESI_EVICT_WRITEBACK_FINISH = esim_register_event(moesi_handler_evict);
	EV_MOESI_EVICT_PROCESS = esim_register_event(moesi_handler_evict);
	EV_MOESI_EVICT_REPLY = esim_register_event(moesi_handler_evict);
	EV_MOESI_EVICT_REPLY_RECEIVE = esim_register_event(moesi_handler_evict);
	EV_MOESI_EVICT_FINISH = esim_register_event(moesi_handler_evict);

	EV_MOESI_WRITE_REQUEST = esim_register_event(moesi_handler_write_request);
	EV_MOESI_WRITE_REQUEST_RECEIVE = esim_register_event(moesi_handler_write_request);
	EV_MOESI_WRITE_REQUEST_ACTION = esim_register_event(moesi_handler_write_request);
	EV_MOESI_WRITE_REQUEST_EXCLUSIVE = esim_register_event(moesi_handler_write_request);
	EV_MOESI_WRITE_REQUEST_UPDOWN = esim_register_event(moesi_handler_write_request);
	EV_MOESI_WRITE_REQUEST_UPDOWN_FINISH = esim_register_event(moesi_handler_write_request);
	EV_MOESI_WRITE_REQUEST_DOWNUP = esim_register_event(moesi_handler_write_request);
	EV_MOESI_WRITE_REQUEST_REPLY = esim_register_event(moesi_handler_write_request);
	EV_MOESI_WRITE_REQUEST_FINISH = esim_register_event(moesi_handler_write_request);

	EV_MOESI_READ_REQUEST = esim_register_event(moesi_handler_read_request);
	EV_MOESI_READ_REQUEST_RECEIVE = esim_register_event(moesi_handler_read_request);
	EV_MOESI_READ_REQUEST_ACTION = esim_register_event(moesi_handler_read_request);
	EV_MOESI_READ_REQUEST_UPDOWN = esim_register_event(moesi_handler_read_request);
	EV_MOESI_READ_REQUEST_UPDOWN_MISS = esim_register_event(moesi_handler_read_request);
	EV_MOESI_READ_REQUEST_UPDOWN_FINISH = esim_register_event(moesi_handler_read_request);
	EV_MOESI_READ_REQUEST_DOWNUP = esim_register_event(moesi_handler_read_request);
	EV_MOESI_READ_REQUEST_DOWNUP_FINISH = esim_register_event(moesi_handler_read_request);
	EV_MOESI_READ_REQUEST_REPLY = esim_register_event(moesi_handler_read_request);
	EV_MOESI_READ_REQUEST_FINISH = esim_register_event(moesi_handler_read_request);

	EV_MOESI_INVALIDATE = esim_register_event(moesi_handler_invalidate);
	EV_MOESI_INVALIDATE_FINISH = esim_register_event(moesi_handler_invalidate);

	/* Stack repository */
	moesi_stack_repos = repos_create(sizeof(struct moesi_stack_t),
		"moesi_stack_repos");
}