📄 arbiter.cpp
字号:
/************************************************************************
* file name: arbiter.c
* description: implementation of arbiter module.
*
* modification history
* --------------------
* 2003-5-31 19:33:43, created by zhuwei
*/
/* includes----------------------------------------------------------- */
#include "arbiter.h"
/* defines------------------------------------------------------------ */
/* typedefs----------------------------------------------------------- */
/* externs------------------------------------------------------------ */
/* globals------------------------------------------------------------ */
/* forward declarations----------------------------------------------- */
// full cycle arbiter
void arbiter::arbitrate()
{
if(req[l0].read() == 1)
{
cout << l0 << " (l0):" << sc_time_stamp() << endl;
sel = l0 + 1;
// l0-l2 are signal, not variable
l0 = l1;
l1 = l2;
l2 = l0;
}
else if(req[l1].read() == 1)
{
cout << l1 << " (l1):" << sc_time_stamp() << endl;
sel = l1 + 1;
l1 = l2;
l2 = l1;
}
else if(req[l2].read() == 1)
{
sel = l2 + 1;
cout << l2 << " (l2):" << sc_time_stamp() << endl;
}
else
{
sel = 0;
cout << "no item selected.\n";
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -