⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 path_delay2.h

📁 fpga设计评估软件
💻 H
字号:
/*********** Types and defines used by all path_delay modules ****************/typedef struct {int to_node; float Tdel;} t_tedge;/* to_node: index of node at the sink end of this edge.                      * * Tdel: delay to go to to_node along this edge.                             */typedef struct {t_tedge *out_edges; int num_edges;  float T_arr; float T_req;                } t_tnode;/* out_edges: [0..num_edges - 1].  Array of the edges leaving this tnode.    * * num_edges: Number of edges leaving this node.                             * * T_arr:  Arrival time of the last input signal to this node.               * * T_req:  Required arrival time of the last input signal to this node if    * *         the critical path is not to be lengthened.                        *//* Info. below is only used to print out and display the critical path.  It  * * gives a mapping from each t_node to what circuit element it represents.   * * I put this info in a separate structure to maximize cache effectiveness,  * * since it's not used much.                                                 */typedef enum {INPAD_SOURCE, INPAD_OPIN, OUTPAD_IPIN, OUTPAD_SINK,            CLB_IPIN, CLB_OPIN, SUBBLK_IPIN, SUBBLK_OPIN, FF_SINK, FF_SOURCE,           CONSTANT_GEN_SOURCE} t_tnode_type;typedef struct {t_tnode_type type; short ipin; short isubblk; int iblk;}          t_tnode_descript;/* type:  What is this tnode? (Pad pin, clb pin, subblock pin, etc.)         * * ipin:  Number of the CLB or subblock pin this tnode represents, if        * *        applicable.                                                        * * isubblk: Number of the subblock this tnode is part of, if applicable.     * * iblk:  Number of the block (CLB or PAD) this tnode is part of.            *//*************** Variables shared only amongst path_delay modules ************/extern t_tnode *tnode;                    /* [0..num_tnodes - 1] */extern t_tnode_descript *tnode_descript;  /* [0..num_tnodes - 1] */extern int num_tnodes;    /* Number of nodes in the timing graph *//* [0..num_nets - 1].  Gives the index of the tnode that drives each net. */extern int *net_to_driver_tnode;  /* [0..num__tnode_levels - 1].  Count and list of tnodes at each level of    * * the timing graph, to make breadth-first searches easier.                  */extern struct s_ivec *tnodes_at_level;extern int num_tnode_levels;     /* Number of levels in the timing graph. *//***************** Subroutines exported by this module ***********************/int alloc_and_load_timing_graph_levels (void); void check_timing_graph (int num_const_gen, int num_ff, int num_sinks); float print_critical_path_node (FILE *fp, t_linked_int *critical_path_node);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -