Add DelayInfo struct

Signed-off-by: Clifford Wolf <clifford@clifford.at>
This commit is contained in:
Clifford Wolf 2018-05-29 20:04:29 +02:00
parent d56e29c47e
commit 3b0d1beabb
3 changed files with 20 additions and 4 deletions

View File

@ -52,7 +52,7 @@ struct NetInfo
dict<IdString, std::string> attrs;
// wire -> (uphill_wire, delay)
dict<WireId, std::pair<WireId, float>> wires;
dict<WireId, std::pair<WireId, DelayInfo>> wires;
};
enum PortType

View File

@ -22,6 +22,14 @@
#ifndef CHIP_H
#define CHIP_H
struct DelayInfo
{
float delay = 0;
float raiseDelay() { return delay; }
float fallDelay() { return delay; }
};
typedef IdString BelType;
typedef IdString PortPin;
@ -111,7 +119,7 @@ struct WireRange
struct WireDelay
{
WireId wire;
float delay;
DelayInfo delay;
};
struct WireDelayIterator

View File

@ -22,6 +22,14 @@
#ifndef CHIP_H
#define CHIP_H
struct DelayInfo
{
float delay = 0;
float raiseDelay() { return delay; }
float fallDelay() { return delay; }
};
// -----------------------------------------------------------------------
enum BelType
@ -175,7 +183,7 @@ struct AllWiresRange
struct WireDelay
{
WireId wire;
float delay;
DelayInfo delay;
};
struct WireDelayIterator
@ -188,7 +196,7 @@ struct WireDelayIterator
WireDelay operator*() const {
WireDelay ret;
ret.wire.index = ptr->wire_index;
ret.delay = ptr->delay;
ret.delay.delay = ptr->delay;
return ret;
}
};