(디지털)"PLI

T

tarkyss

Guest
나는 간단한 C 프로그램을 작성
# "이 포함됩니다. / veriuser.h"
# "acc_user.h"를 포함
# "stdio.h"를 포함
# "stdlib.h"를 포함
# "time.h"를 포함
int myrandom () (

time_t * nowtime;
시간 (nowtime);
srand ((* nowtime));
printf ( "시간 % d 개 \ 무작위 nthe입니다 %입니다 d 개 \ n", (* nowtime), 랜드 () % 128);

)
s_tfcell veriusertfs [] = (
(usertask, 0, 0, 0, myrandom, 0, "$ myrandom"),
(0) / / 마지막 항목이 0이어야합니다
);

gcc와 신분증 때, 아니 오류가 경고를 실행
하지만 내가 도망
vsim - C 테스트 - PLI myrandom.sl
그것을, 시스템 작업을 $ myrandom 정의되지이다.
왜?

 
다음 코드를 체크 아웃 .....

파일 이름 : testme.c
코드 :

# "vpi_user.h"를 포함

# 포함 <stdio.h>

# 포함 <stdlib.h>

# 포함 <time.h>

무효 myrandom () (

time_t * nowtime;

시간 (nowtime);

srand ((* nowtime));

io_printf ( "시간은 % d 개 \ 무작위 nthe입니다 %입니다 d 개 \ n", (* nowtime), 랜드 () % 128);

)/ / 부교수 C 함수 새 시스템 태스크와

무효 registermyrandom () (

s_vpi_systf_data task_data_s;

p_vpi_systf_data task_data_p = & task_data_s;

task_data_p - "유형 = vpiSysTask;

task_data_p - "tfname ="$ myrandom ";

task_data_p - "calltf = myrandom;

task_data_p - "compiletf = 0;vpi_register_systf (task_data_p);

)/ / 등록 새로운 시스템으로 작업을 여기에

무효 (* vlog_startup_routines []) () = (

registermyrandom,

0 / / 마지막 항목이 0이어야합니다

);

 
veriuser.c 파일에 연결 중 어느 시간에 시뮬레이터에 의해 사용됩니다 PLI 함수를 등록할 수있습니다.거기에 하나의 배열을 그 파일 안에 "veriusertfs"라는 것입니다.우리가 항목을 PLI fn 관한 추가해야합니다.

 
nand_gates
감사합니다,하지만 그렇게되면 실행
gcc가 - c 옵션 - 난 $ (MTI_HOME) / testme.c 포함
다음이 표시됩니다
testme.c : 함수에서`registermyrandom ':
testme.c : 18 : 경고 : 호환되지 않는 포인터 타입의 임무

 
nand_gates 감사합니다
지금 gcc와 신분증이 올바른지
하지만 내가 도망
vsim - c 옵션 - PLI testme.so work.test
그리고
1000 실행
# Runing PLI 작업을 지금은 ....
# ** 치명 : (SIGSEGV) 잘못된 포인터를 액세스할 수있습니다.
# 시간 : 10 ns의 반복 : 0 절차 : / 테스트 / # INITIAL # 2 파일 : test.v
test.v 라인 5 # 치명적인 오류
#
# test.v 라인 5 시에 중단

 
nand_gates
진심으로 감사합니다
아직, 오류 메시지는 이전과 동일한 작동하지 않을 수있습니다
당신이 가능한 이유는 무엇이라고 생각합니까?환경을 conf에?
# Runing PLI 작업을 지금은 ....
# ** 치명 : (SIGSEGV) 잘못된 포인터를 액세스할 수있습니다.
# 시간 : 10 ns의 반복 : 0 절차 : / 테스트 / # INITIAL # 2 파일 : test.v
test.v 라인 5 # 치명적인 오류
#
# test.v 라인 5 시에 중단
2006년 1월 23일 9시 34분에 tarkyss에 의해 편집 마지막으로, 1 시간을 편집한 총

 
그렇다면 사용중인 버전은 ModelSim???platfoem의 어떤 버전이 OS를??

 
내 운영 체제 sunos5.8입니다
그리고 ModelSim 내가 노력 버전 5.8b, 6.1a가, 그리고 6.1c입니다

 

Welcome to EDABoard.com

Sponsor

Back
Top