Classes | Enumerations | Functions | Variables

C:/Users/duhem/Desktop/FoRTReSS/FoRTReSS/FoRTReSS/src/device.h File Reference

#include <string>
#include <iostream>
#include <map>
#include <vector>
#include "coordinates.h"
#include "cell.h"

Go to the source code of this file.

Classes

class  Device

Enumerations

enum  DeviceClass {
  UNDEF, Virtex5, Virtex6, Virtex7,
  Kintex7, Zynq7, CUSTOM
}
enum  RBType {
  SliceM, SliceL, Slice, CLBm,
  CLBl, BRAM, DSP, IOB,
  MMCM, PCI, EMAC, XXX,
  CLB_XXX, DSP_XXX, BRAM_XXX, DCM
}

Functions

const Cell SliceM_cell ("SliceM", true, 40, 4, NB_FRAMES_PER_CLB_COLUMN *NB_CLB_PER_COLUMN/2 *4, true)
const Cell SliceL_cell ("SliceL", true, 40, 1, NB_FRAMES_PER_CLB_COLUMN *NB_CLB_PER_COLUMN/2 *4, true)
const Cell Slice_cell ("Slice", true, 40, 1, NB_FRAMES_PER_CLB_COLUMN *NB_CLB_PER_COLUMN/2 *4, true)
const Cell CLBm_cell ("CLBm", true, 40, 4, NB_FRAMES_PER_CLB_COLUMN *NB_CLB_PER_COLUMN *4, true)
const Cell CLBl_cell ("CLBl", true, 40, 1, NB_FRAMES_PER_CLB_COLUMN *NB_CLB_PER_COLUMN *4, true)
const Cell BRAM_cell ("BRAM", true, 8, 24, NB_FRAMES_PER_BRAM_COLUMN *NB_RAMB36_BRAM *4, false)
const Cell DSP_cell ("DSP", true, 16, 24, NB_FRAMES_PER_DSP_COLUMN *NB_DSP48_DSP *4, false)
const Cell IOB_cell ("IOB", false, 40, 100, NB_FRAMES_PER_IOB_COLUMN *NB_IOB_PER_COLUMN *4, false)
const Cell MMCM_cell ("MMCM", false)
const Cell PCI_cell ("PCI", false)
const Cell EMAC_cell ("EMAC", false)
const Cell XXX_cell ("XXX", false)
const Cell CLB_XXX_cell ("CLB_XXX", false)
const Cell DSP_XXX_cell ("DSP_XXX", false)
const Cell BRAM_XXX_cell ("BRAM_XXX", false)
const Cell DCM_cell ("DCM", false)

Variables

const int NB_LUT_SLICE = 4
const int NB_FF_SLICE = 8
const int NB_LUT_CLB = 8
const int NB_FF_CLB = 16
const int NB_DRAM_CLB = 256
const int NB_SHIFT_REG_CLB = 128
const int NB_CLB_PER_COLUMN = 40
const int NB_RAMB36_BRAM = 8
const int NB_DSP48_DSP = 16
const int NB_IOB_PER_COLUMN = 40
const int NB_FRAMES_PER_CLB_COLUMN = 36
const int NB_FRAMES_PER_DSP_COLUMN = 30
const int NB_FRAMES_PER_BRAM_COLUMN = 158
const int NB_FRAMES_PER_IOB_COLUMN = 30
const int NB_WORDS_PER_FRAME = 82
const int NB_LINES_DEVICE = 6
const int NB_COLUMNS_DEVICE = 102
const RBType fpga_device [NB_LINES_DEVICE][NB_COLUMNS_DEVICE]
const int x_coordinate_fpga_device [NB_LINES_DEVICE][NB_COLUMNS_DEVICE]

Detailed Description

Author:
Francois Duhem (Fortress Generation Flow) University of Nice-Sophia Antipolis - LEAT/CNRS
Version:
1.0
Date:
July 15, 2012 12:23:51 PM CEST

DESCRIPTION

Some defines representing the hardware in xc6vlx240t devices


Enumeration Type Documentation

Enumeration of the supported devices


Variable Documentation

const RBType fpga_device[NB_LINES_DEVICE][NB_COLUMNS_DEVICE]
Initial value:
 {
{IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,CLBl,CLBl,CLBl,CLBl,CLBl,CLBl,MMCM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,CLBl,CLBm,CLBl,BRAM},
{IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,CLBl,CLBl,CLBl,CLBl,CLBl,CLBl,MMCM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,PCI,PCI,PCI,PCI},
{IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,CLB_XXX,CLB_XXX,CLB_XXX,CLB_XXX,CLB_XXX,CLB_XXX,MMCM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,CLBl,CLBm,CLBl,EMAC},
{IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,CLB_XXX,CLB_XXX,CLB_XXX,CLB_XXX,CLB_XXX,CLB_XXX,MMCM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,PCI,PCI,PCI,PCI},
{IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,CLBl,CLBl,CLBl,CLBl,CLBl,CLBl,MMCM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,CLBl,CLBm,CLBl,EMAC},
{IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,CLBl,CLBl,CLBl,CLBl,CLBl,CLBl,MMCM,CLBm,CLBl,CLBm,CLBl,IOB,CLBm,CLBl,CLBm,CLBl,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,CLBm,BRAM,CLBm,CLBm,DSP,CLBm,CLBm,CLBm,CLBm,DSP,CLBm,CLBm,BRAM,CLBm,CLBl,CLBm,CLBl,CLBl,CLBm,CLBl,BRAM}
}
const int x_coordinate_fpga_device[NB_LINES_DEVICE][NB_COLUMNS_DEVICE]
Initial value:
 {
{0,0,2,4,6,0,8,10,0,12,14,16,18,1,20,22,1,24,26,28,30,32,34,36,38,2,40,42,2,44,46,48,50,3,52,54,3,56,58,60,62,1,64,66,68,70,72,74,76,78,80,82,0,84,86,88,90,2,92,94,96,98,4,100,102,4,104,106,108,110,5,112,114,5,116,118,120,122,124,126,128,130,6,132,134,6,136,138,140,142,7,144,146,7,148,150,152,154,156,158,160,8},
{0,0,2,4,6,0,8,10,0,12,14,16,18,1,20,22,1,24,26,28,30,32,34,36,38,2,40,42,2,44,46,48,50,3,52,54,3,56,58,60,62,1,64,66,68,70,72,74,76,78,80,82,0,84,86,88,90,2,92,94,96,98,4,100,102,4,104,106,108,110,5,112,114,5,116,118,120,122,124,126,128,130,6,132,134,6,136,138,140,142,7,144,146,7,148,150,152,154,0,1,2,3},
{0,0,2,4,6,0,8,10,0,12,14,16,18,1,20,22,1,24,26,28,30,32,34,36,38,2,40,42,2,44,46,48,50,3,52,54,3,56,58,60,62,1,64,66,68,70,36,74,76,78,80,82,0,84,86,88,90,2,92,94,96,98,4,100,102,4,104,106,108,110,5,112,114,5,116,118,120,122,124,126,128,130,6,132,134,6,136,138,140,142,7,144,146,7,148,150,152,154,156,158,160,0},
{0,0,2,4,6,0,8,10,0,12,14,16,18,1,20,22,1,24,26,28,30,32,34,36,38,2,40,42,2,44,46,48,50,3,52,54,3,56,58,60,62,1,64,66,68,70,36,74,76,78,80,82,0,84,86,88,90,2,92,94,96,98,4,100,102,4,104,106,108,110,5,112,114,5,116,118,120,122,124,126,128,130,6,132,134,6,136,138,140,142,7,144,146,7,148,150,152,154,0,1,2,3},
{0,0,2,4,6,0,8,10,0,12,14,16,18,1,20,22,1,24,26,28,30,32,34,36,38,2,40,42,2,44,46,48,50,3,52,54,3,56,58,60,62,1,64,66,68,70,72,74,76,78,80,82,0,84,86,88,90,2,92,94,96,98,4,100,102,4,104,106,108,110,5,112,114,5,116,118,120,122,124,126,128,130,6,132,134,6,136,138,140,142,7,144,146,7,148,150,152,154,156,158,160,0},
{0,0,2,4,6,0,8,10,0,12,14,16,18,1,20,22,1,24,26,28,30,32,34,36,38,2,40,42,2,44,46,48,50,3,52,54,3,56,58,60,62,1,64,66,68,70,72,74,76,78,80,82,0,84,86,88,90,2,92,94,96,98,4,100,102,4,104,106,108,110,5,112,114,5,116,118,120,122,124,126,128,130,6,132,134,6,136,138,140,142,7,144,146,7,148,150,152,154,156,158,160,8}
}
 All Classes Files Functions Enumerations