INSEE 05.04.2011
Interconnection Nertworks Simulation and Evaluation Environment
|
Tools for the injection queues used in FSIN routers. More...
#include "globals.h"
Functions | |
void | inj_init_queue (inj_queue *q) |
long | inj_queue_len (inj_queue *q) |
long | inj_queue_space (inj_queue *q) |
void | inj_ins_queue (inj_queue *q, phit *i) |
void | inj_ins_mult_queue (inj_queue *q, phit *i, long copies) |
void | inj_rem_queue (inj_queue *q, phit *i) |
Tools for the injection queues used in FSIN routers.
FSIN Functional Simulator of Interconnection Networks Copyright (2003-2011) J. Miguel-Alonso, A. Gonzalez
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
void inj_init_queue | ( | inj_queue * | q | ) |
Initializes an injection queue.
Making it empty.
q | The injection queue to be initialized. |
Inserts some clones of a phit in an injection queue.
Requires enough space. Otherwise, panics.
q | An injection queue. |
i | The phit to be inserted. |
copies | Number of copies of i. |
Inserts a phit in an injection queue.
Requires a buffer with room for the phit. Otherwise, panics
q | An injection queue. |
i | The phit to insert. |
long inj_queue_len | ( | inj_queue * | q | ) |
Calculates the length of an injection queue.
q | An injection queue. |
long inj_queue_space | ( | inj_queue * | q | ) |
Calculates the free space in an injection queue.
q | An injection queue. |