From c4c22c9ca071816f7754d7eb2da46de04e5e8f33 Mon Sep 17 00:00:00 2001 From: Sebastien Bourdeauducq Date: Mon, 5 Mar 2012 15:40:21 +0100 Subject: [PATCH] sim: signal writes working --- vpi/main.c | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/vpi/main.c b/vpi/main.c index 5774a7e60..44fc21cea 100644 --- a/vpi/main.c +++ b/vpi/main.c @@ -17,14 +17,36 @@ static int h_go(void *user) return 1; } +static s_vpi_time zero_delay = { + .type = vpiSimTime, + .high = 0, + .low = 0 +}; + static int h_write(char *name, int nchunks, const unsigned char *chunks, void *user) { + vpiHandle item; + s_vpi_vecval vector[64]; int i; + s_vpi_value value; - printf("WRITE: %s / nchunks: %d / ", name, nchunks); + item = vpi_handle_by_name(name, NULL); + if(item == NULL) { + fprintf(stderr, "Attempted to write non-existing signal %s\n", name); + return 0; + } + + assert(nchunks <= 255); + for(i=0;i<64;i++) { + vector[i].aval = 0; + vector[i].bval = 0; + } for(i=0;i