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

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

?? read_strengthval_vpi.c

?? pli_handbook_examples_pc verilog hdl 與C的接口的典型例子
?? C
字號:
/**********************************************************************
 * $read_strengthval example -- PLI application using VPI routines
 *
 * C source to read logic values and strength levels of scalar nets.
 *
 * Usage: $read_strengthval(<net_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 routines in this PLI application */
int  PLIbook_ReadStrengthVal_calltf(),
     PLIbook_ReadStrengthVal_compiletf();
char PLIbook_DecodeBitValue();

/**********************************************************************
 * VPI Registration Data
 *********************************************************************/
void PLIbook_ReadStrengthVal_register()
{
  s_vpi_systf_data tf_data;
  tf_data.type      = vpiSysTask;
  tf_data.tfname    = "$read_strengthval";
  tf_data.calltf    = PLIbook_ReadStrengthVal_calltf;
  tf_data.compiletf = PLIbook_ReadStrengthVal_compiletf;
  tf_data.sizetf    = NULL;

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

/**********************************************************************
 * compiletf application
 *********************************************************************/
int PLIbook_ReadStrengthVal_compiletf(char *user_data)
{
  vpiHandle systf_h, arg_itr, arg_h;
  int       arg_type;
  
  /* obtain a handle to the system task instance */
  systf_h = vpi_handle(vpiSysTfCall, NULL);
  if (systf_h == NULL) {
    vpi_printf("ERROR: $read_strengthval failed to obtain systf handle\n");
    tf_dofinish(); /* abort simulation */
    return(0);
  }

  /* obtain handles to system task arguments */
  arg_itr = vpi_iterate(vpiArgument, systf_h);
  if (arg_itr == NULL) {
    vpi_printf("ERROR: $read_strengthval requires 1 argument\n");
    tf_dofinish(); /* abort simulation */
    return(0);
  }
  
  /* check the type of object in system task arguments */
  arg_h = vpi_scan(arg_itr);
  arg_type = vpi_get(vpiType, arg_h);
  if (arg_type != vpiNet) {
    vpi_printf("ERROR: $read_strengthval arg must be a net\n");
    vpi_free_object(arg_itr); /* free iterator memory */
    tf_dofinish(); /* abort simulation */
    return(0);
  }

  /* check the bit size of object in system task arguments */
  if (vpi_get(vpiSize, arg_h) != 1) {
    vpi_printf("ERROR: $read_strengthval arg must be scalar\n");
    tf_dofinish(); /* abort simulation */
    return(0);
  }

  /* check that there are no more system task arguments */
  arg_h = vpi_scan(arg_itr);
  if (arg_h != NULL) {
    vpi_printf("ERROR: $read_strengthval can only have 1 argument\n");
    vpi_free_object(arg_itr); /* free iterator memory */
    tf_dofinish(); /* abort simulation */
    return(0);
  }
  return(0);
}

/**********************************************************************
 * calltf routine
 *********************************************************************/
int PLIbook_ReadStrengthVal_calltf(char *user_data) 
{
  vpiHandle   systf_h, arg_itr, arg_h, net_h;
  s_vpi_value net_val;           /* structure to receive net value */

  /* obtain a handle to the system task instance */
  systf_h = vpi_handle(vpiSysTfCall, NULL);

  /* obtain handle to system task argument
     compiletf has already verified only 1 arg with correct type */
  arg_itr = vpi_iterate(vpiArgument, systf_h);
  net_h = vpi_scan(arg_itr);
  vpi_free_object(arg_itr);  /* free iterator memory */

  net_val.format = vpiStrengthVal;      /* set value format field */

  vpi_get_value(net_h, &net_val);       /* read net's strength value */

  vpi_printf("\nNet %s:  ", vpi_get_str(vpiName, net_h));
  vpi_printf("value=%c  strength0=%2x(hex)  strength1=%2x(hex)\n\n",
             PLIbook_DecodeBitValue(net_val.value.strength->logic),
             net_val.value.strength->s0,
             net_val.value.strength->s1);
  return(0);
}

/**********************************************************************
 * Function to convert VPI logic constant to a character
 *********************************************************************/
char PLIbook_DecodeBitValue(int bit_constant)
{
  switch (bit_constant) {
    case vpi0:        return('0'); break;
    case vpi1:        return('1'); break;
    case vpiZ:        return('Z'); break;
    case vpiX:        return('X'); break;
    case vpiL:        return('L'); break;
    case vpiH:        return('H'); break;
    case vpiDontCare: return('?'); break;
    default:          return('U'); /* undefined value passed in */
  }
}
/*********************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久成人免费网站| 亚洲国产日韩一级| 丁香婷婷综合色啪| 国产精品美女www爽爽爽| 国产超碰在线一区| 亚洲国产精品av| 99r精品视频| 亚洲自拍都市欧美小说| 欧美片网站yy| 极品少妇xxxx精品少妇偷拍| 久久久久99精品一区| 97精品视频在线观看自产线路二| 亚洲人快播电影网| 欧美一区二区三区小说| 国产一区二区美女诱惑| 国产精品美女久久久久久2018 | 99久久免费视频.com| 亚洲美女一区二区三区| 欧美日韩你懂的| 久久97超碰色| 综合久久一区二区三区| 欧美日本高清视频在线观看| 国产一区二区在线看| 亚洲三级在线看| 日韩欧美一区在线观看| 国产成人在线视频网站| 一区二区在线观看免费视频播放| 69p69国产精品| 成人中文字幕电影| 午夜免费久久看| 国产日韩欧美高清在线| 欧美在线观看18| 国产成人精品在线看| 亚洲一区二区视频在线| 久久综合久久鬼色| 欧美亚洲国产bt| 国产精品1区2区3区| 亚洲成人在线观看视频| 国产亚洲一区二区在线观看| 欧美专区日韩专区| 国产福利91精品| 日本欧美大码aⅴ在线播放| 国产精品久久久久久久久搜平片| 911精品国产一区二区在线| 国产91精品免费| 美日韩黄色大片| 亚洲乱码中文字幕| 国产亚洲精品资源在线26u| 欧美日韩亚洲综合在线| 99久久精品免费看国产| 激情深爱一区二区| 日韩精品福利网| 一区二区高清免费观看影视大全| 久久久久久综合| 91精品国产综合久久久久 | 91小视频在线| 韩国v欧美v日本v亚洲v| 亚洲成人自拍一区| 亚洲日本青草视频在线怡红院| 久久伊人中文字幕| 日韩欧美自拍偷拍| 欧美一三区三区四区免费在线看 | 国产精品成人一区二区三区夜夜夜| 欧美xxxxx裸体时装秀| 欧美丝袜丝交足nylons图片| 99国内精品久久| 91美女蜜桃在线| 99国产精品久| 99精品视频在线免费观看| 懂色av一区二区夜夜嗨| 国产乱淫av一区二区三区 | 日本一区二区三区高清不卡| 欧美电视剧在线观看完整版| 制服丝袜亚洲精品中文字幕| 91美女视频网站| 一本久久综合亚洲鲁鲁五月天| 成人av免费网站| 9i看片成人免费高清| 成人中文字幕合集| 99vv1com这只有精品| 色综合久久久久久久久| 91麻豆免费视频| 91福利在线免费观看| 在线一区二区三区| 欧美区一区二区三区| 欧美一区二区三级| 精品久久五月天| 国产欧美一区二区三区网站| 国产偷国产偷精品高清尤物| 国产欧美日韩综合| 成人欧美一区二区三区黑人麻豆 | 久久精品网站免费观看| 国产午夜精品理论片a级大结局| 精品国产91洋老外米糕| 久久久久九九视频| 成人免费在线观看入口| 日韩美女久久久| 亚洲午夜久久久久久久久电影院| 亚洲第一激情av| 看片网站欧美日韩| 成人国产精品免费观看视频| 91蜜桃婷婷狠狠久久综合9色| 在线视频亚洲一区| 日韩精品一区二区三区老鸭窝 | 日韩精品午夜视频| 国产精品 日产精品 欧美精品| 国产成人午夜99999| 91网上在线视频| 69久久夜色精品国产69蝌蚪网| 久久久美女艺术照精彩视频福利播放| 国产精品国产自产拍高清av王其| 亚洲午夜电影在线| 国产一二三精品| 欧美日韩中字一区| 久久日一线二线三线suv| 中文字幕在线不卡| 奇米精品一区二区三区四区| 国产69精品久久99不卡| 欧美日韩免费电影| 国产亚洲精品bt天堂精选| 亚洲欧美日韩久久精品| 麻豆精品在线播放| 91福利精品第一导航| 精品国产免费人成电影在线观看四季 | 国产精品久久久久毛片软件| 亚洲小说春色综合另类电影| 国产精品一二三四| 欧美精品自拍偷拍| 国产精品久久久久久久久免费相片| 视频在线观看国产精品| av亚洲精华国产精华| xfplay精品久久| 午夜精品久久久久久久99樱桃| 福利一区在线观看| 欧美va在线播放| 亚洲一区视频在线观看视频| 国产成人免费9x9x人网站视频| 欧美一区二区三区色| 伊人开心综合网| gogo大胆日本视频一区| 欧美成人a∨高清免费观看| 亚洲国产你懂的| 99久久精品国产一区| 久久精品一区二区三区不卡| 蜜臀精品一区二区三区在线观看| 91免费观看在线| 成人免费在线视频观看| 国产美女av一区二区三区| 日韩午夜av一区| 蜜臀av一区二区在线观看| 欧美三区在线观看| 亚洲一区二区三区中文字幕| 波多野结衣在线aⅴ中文字幕不卡 波多野结衣在线一区 | 亚洲最大色网站| 91在线观看下载| 亚洲欧美在线高清| aaa亚洲精品| 中文字幕视频一区| 不卡av在线免费观看| 国产亚洲一本大道中文在线| 精品在线观看视频| 精品久久久三级丝袜| 美女www一区二区| 日韩视频在线一区二区| 麻豆精品一区二区综合av| 日韩限制级电影在线观看| 免费在线成人网| 精品国产91亚洲一区二区三区婷婷| 日韩av中文字幕一区二区三区| 欧美撒尿777hd撒尿| 亚洲成a天堂v人片| 91精品国产综合久久精品性色 | 精品国产一区a| 国产在线播放一区| 国产午夜精品美女毛片视频| 国产精品一区二区无线| 国产欧美一区二区在线观看| 成人av动漫网站| 亚洲最大成人网4388xx| 91电影在线观看| 视频一区二区三区中文字幕| 91精品一区二区三区在线观看| 日本亚洲欧美天堂免费| 91精品国产色综合久久不卡电影| 日本不卡免费在线视频| 久久一区二区三区四区| 成人av高清在线| 亚洲国产精品久久久久秋霞影院 | 国产精品久久久一本精品| 91老师片黄在线观看| 夜夜爽夜夜爽精品视频| 欧美精品xxxxbbbb| 国产一区二区看久久| 亚洲视频一区在线| 欧美精品粉嫩高潮一区二区| 国产精品一区在线观看你懂的| 中文字幕一区二区三区在线观看| 欧美在线观看你懂的| 精品一区二区三区在线视频| 国产精品成人免费精品自在线观看|