亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? list_pathout_ports_vpi.c

?? pli_handbook_examples_pc verilog hdl 與C的接口的典型例子
?? C
字號:
/**********************************************************************
 * $list_pathout_ports example -- PLI application using VPI routines
 *
 * C source to find module ports which are connected to the outputs
 * of pin-to-pin path delays.
 *
 * Usage: $list_pathout_ports(<module_instance_name>);
 *
 * For the book, "The Verilog PLI Handbook" by Stuart Sutherland
 *  Book copyright 1999, Kluwer Academic Publishers, Norwell, MA, USA
 *   Contact: www.wkap.il
 *  Example copyright 1998, Sutherland HDL Inc, Portland, Oregon, USA
 *   Contact: www.sutherland.com or (503) 692-0898
 *********************************************************************/

#include <stdlib.h>    /* ANSI C standard library */
#include <stdio.h>     /* ANSI C standard input/output library */
#include "vpi_user.h"  /* IEEE 1364 PLI VPI routine library  */
#include "veriuser.h"  /* IEEE 1364 PLI TF routine library    
                          (using TF routines for simulation control) */

/* prototypes of the PLI application routines */
int PLIbook_ListPorts_compiletf(), PLIbook_ListPorts_calltf();

/**********************************************************************
 * VPI Registration Data
 *********************************************************************/
void PLIbook_ListPorts_register()
{
  s_vpi_systf_data tf_data;
  tf_data.type      = vpiSysTask;
  tf_data.tfname    = "$list_pathout_ports";
  tf_data.calltf    = PLIbook_ListPorts_calltf;
  tf_data.compiletf = PLIbook_ListPorts_compiletf;
  tf_data.sizetf    = NULL;

  vpi_register_systf(&tf_data);
}
/*********************************************************************/

/**********************************************************************
 * Compiletf application
 *********************************************************************/
int PLIbook_ListPorts_compiletf(char *user_data)
{
  vpiHandle systf_h, tfarg_itr, tfarg_h;

  systf_h = vpi_handle(vpiSysTfCall, NULL);
  if (systf_h == NULL) {
    vpi_printf("ERROR: list_pathout_ports could not obtain handle to systf call\n");
    tf_dofinish(); /* abort simulation */
    return(0);
  }
  tfarg_itr = vpi_iterate(vpiArgument, systf_h);
  if (systf_h == NULL) {
    vpi_printf("ERROR: list_pathout_ports could not obtain iterator to systf args\n");
    tf_dofinish(); /* abort simulation */
    return(0);
  }
  tfarg_h = vpi_scan(tfarg_itr);
  if (vpi_get(vpiType, tfarg_h) != vpiModule) {
    vpi_printf("ERROR: $list_pathout_ports arg must be module instance\n");
    tf_dofinish(); /* abort simulation */
    return(0);
  }
  if (vpi_scan(tfarg_itr) != NULL) {
    tf_error("ERROR: $list_pathout_ports requires 1 argument\n");
    vpi_free_object(tfarg_itr); /* because not scanning until null */
    tf_dofinish(); /* abort simulation */
    return(0);
  }
  return(0);
}

/**********************************************************************
 * calltf routine
 *********************************************************************/
int PLIbook_ListPorts_calltf(char *user_data) 
{
  vpiHandle module_handle, systf_h, arg_itr,
            path_itr, path_handle,
            term_itr, term_handle,
            port_itr, port_handle,
            net_handle;

  /* get module handle from first system task argument.  Assume the  */
  /* compiletf routine has already verified correct argument type.   */
  systf_h = vpi_handle(vpiSysTfCall, NULL);
  if (systf_h == NULL) {
    vpi_printf("ERROR: list_pathout_ports could not obtain handle to systf call\n");
    return(0);
  }
  arg_itr = vpi_iterate(vpiArgument, systf_h);
  if (systf_h == NULL) {
    vpi_printf("ERROR: list_pathout_ports could not obtain iterator to systf args\n");
    return(0);
  }
  module_handle = vpi_scan(arg_itr);
  vpi_free_object(arg_itr); /* free itr since did not scan until nul */

  vpi_printf("\nModule %s\n", vpi_get_str(vpiDefName, module_handle));

  path_itr = vpi_iterate(vpiModPath, module_handle);
  if (path_itr == NULL) {
    vpi_printf("   No module paths found\n");
    return(0);
  }
  while (path_handle = vpi_scan(path_itr)) {
    term_itr = vpi_iterate(vpiModPathOut, path_handle);
    if (term_itr == NULL) {
      vpi_printf("   No path output terminal found\n");
      break; /* go to next path */
    }
    while (term_handle = vpi_scan(term_itr)) {
      net_handle = vpi_handle(vpiExpr, term_handle);
      port_itr = vpi_iterate(vpiPort, net_handle);
      if (port_itr == NULL) {
        vpi_printf("   Path output does not connect to a port\n");
        break; /* go to next path output terminal */
      }
      while (port_handle = vpi_scan(port_itr)) {
        vpi_printf("  Port %s is connected to a path delay output\n",
                   vpi_get_str(vpiName, port_handle));
      }
    }
  }
  return(0);
}
/*********************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久嫩草精品久久久精品| 婷婷中文字幕综合| 亚洲国产欧美另类丝袜| 奇米精品一区二区三区四区| 国产91精品在线观看| 欧美性猛片aaaaaaa做受| 久久午夜老司机| 日韩精品久久理论片| 成人丝袜高跟foot| 日韩色视频在线观看| 亚洲综合在线电影| 国产精品一线二线三线精华| 日本丰满少妇一区二区三区| 久久免费电影网| 三级亚洲高清视频| 一本大道综合伊人精品热热| 久久综合狠狠综合久久综合88| 一区二区不卡在线视频 午夜欧美不卡在| 日韩av电影免费观看高清完整版 | 91丝袜美腿高跟国产极品老师| 欧美精品成人一区二区三区四区| 国产欧美精品区一区二区三区 | 婷婷久久综合九色综合伊人色| 国产麻豆精品在线| 欧美一区午夜视频在线观看| 亚洲欧美日韩人成在线播放| 大胆欧美人体老妇| 欧美精品一区二区高清在线观看| 午夜成人免费电影| 色狠狠色噜噜噜综合网| 日韩一区中文字幕| 成人动漫一区二区在线| 国产欧美精品区一区二区三区 | 另类的小说在线视频另类成人小视频在线 | 久久9热精品视频| 91精品国产色综合久久| 亚洲一区二区三区视频在线| 97se狠狠狠综合亚洲狠狠| 国产欧美一区二区在线| 国产精品性做久久久久久| 久久这里只精品最新地址| 蜜桃免费网站一区二区三区| 欧美一级欧美一级在线播放| 视频精品一区二区| 欧美一区二区三区在| 日本欧美在线观看| 日韩免费性生活视频播放| 美女在线视频一区| 精品久久久网站| 国产麻豆精品theporn| 久久久精品中文字幕麻豆发布| 九色综合狠狠综合久久| 久久人人爽爽爽人久久久| 国产成人av福利| 国产精品久久99| 色88888久久久久久影院野外 | 精品国产一区二区三区久久影院| 黑人精品欧美一区二区蜜桃| 久久色成人在线| 成人黄色在线看| 一区二区三区四区精品在线视频| 欧亚洲嫩模精品一区三区| 五月天一区二区| 欧美精品一区二区蜜臀亚洲| 成人网页在线观看| 亚洲成年人网站在线观看| 日韩欧美一级片| 成人黄色电影在线| 午夜成人免费电影| 国产欧美日本一区视频| 91久久精品一区二区三区| 日韩av电影免费观看高清完整版 | 亚洲另类在线制服丝袜| 91精品国产综合久久久蜜臀图片 | 欧美在线色视频| 久久99精品久久只有精品| 中文字幕不卡的av| 欧美日韩国产乱码电影| 国产一区二区精品久久99| 一区二区三区在线播放| 日韩情涩欧美日韩视频| jlzzjlzz亚洲女人18| 亚洲123区在线观看| 国产亚洲一区字幕| 欧美日韩aaaaaa| 成人短视频下载| 精品影院一区二区久久久| 一区二区在线观看视频| 久久久久国产精品麻豆| 欧美老肥妇做.爰bbww视频| 国产成人精品亚洲日本在线桃色| 亚洲一区二区三区中文字幕| 久久精品夜色噜噜亚洲aⅴ| 欧美日韩视频在线第一区| 国产经典欧美精品| 欧美a一区二区| 亚洲国产一区二区视频| 国产精品视频一二三| 91精品国产美女浴室洗澡无遮挡| 成人黄色av网站在线| 国内精品国产三级国产a久久| 亚洲精品国产无套在线观| 久久久精品综合| 日韩亚洲欧美在线观看| 欧美视频一区二区三区四区 | 欧美成人乱码一区二区三区| 色老汉一区二区三区| 国产乱码精品一区二区三区忘忧草| 亚洲午夜日本在线观看| 尤物视频一区二区| 日韩美女视频一区| 国产精品乱子久久久久| 久久久电影一区二区三区| 精品国产免费一区二区三区四区 | 国产精品欧美一区喷水| 久久嫩草精品久久久精品一| 日韩亚洲欧美高清| 91精品国产综合久久久久| 欧美三级电影在线观看| 欧美亚洲一区二区在线观看| 色综合久久中文综合久久97| 在线免费观看日本一区| 成人久久18免费网站麻豆 | 美国毛片一区二区| 免费观看一级特黄欧美大片| 日韩精品一级中文字幕精品视频免费观看 | 欧美日本一道本| 欧美日韩日日摸| 欧美日韩国产高清一区| 欧美三级电影网| 欧美精品v日韩精品v韩国精品v| 欧美日韩精品高清| 欧美丰满少妇xxxxx高潮对白| 91久久精品一区二区三区| 91国产成人在线| 欧美三级电影网| 91精品欧美一区二区三区综合在 | 成人国产亚洲欧美成人综合网| 国产激情一区二区三区四区| 国产美女视频91| 成人av集中营| 色999日韩国产欧美一区二区| 欧美性生活大片视频| 欧美一级欧美三级在线观看| 欧美大白屁股肥臀xxxxxx| 久久久美女毛片| 国产精品福利一区二区| 亚洲欧美偷拍另类a∨色屁股| 亚洲激情av在线| 视频在线观看国产精品| 精品一区二区国语对白| 99久久久精品免费观看国产蜜| 色偷偷久久一区二区三区| 777午夜精品视频在线播放| 精品国产免费人成电影在线观看四季| 久久久久亚洲蜜桃| 亚洲欧美日韩国产一区二区三区| 一区二区三区在线不卡| 裸体健美xxxx欧美裸体表演| 丰满放荡岳乱妇91ww| 欧美嫩在线观看| 久久精品网站免费观看| 一区二区三区精品在线观看| 久久电影国产免费久久电影| 91在线你懂得| 精品伦理精品一区| 一区二区三区在线免费| 激情久久久久久久久久久久久久久久 | av中文字幕不卡| 日韩欧美国产电影| 亚洲欧美日韩人成在线播放| 日本aⅴ免费视频一区二区三区| 国产成人免费av在线| 欧美卡1卡2卡| 亚洲特黄一级片| 激情小说亚洲一区| 4438x成人网最大色成网站| 中文字幕高清一区| 另类综合日韩欧美亚洲| 91精品办公室少妇高潮对白| 精品久久久久99| 视频一区视频二区中文字幕| 99久久精品免费看| 久久久久高清精品| 免费av成人在线| 欧美日韩第一区日日骚| 国产精品成人一区二区艾草| 久久成人av少妇免费| 欧美日韩色一区| 一区二区三区四区蜜桃| 99免费精品在线观看| 久久人人爽爽爽人久久久| 蜜臀久久久久久久| 69久久99精品久久久久婷婷| 一区二区三区中文字幕精品精品 | 欧美高清dvd| 亚洲一二三区不卡| 色94色欧美sute亚洲线路二 | 老司机精品视频导航| 这里只有精品视频在线观看|