Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 9304|回復: 17

[問題求助] 請問一下PLI的問題

[複製鏈接]
發表於 2007-6-15 11:03:25 | 顯示全部樓層 |閱讀模式
不知道在這裡問對不對,請問一下,下面這個 書上的 "hello verilog"  例子在modelsim環境下怎麼下command才能link 並且可以產生結果呢* I3 K4 ], s+ x( a& ]5 q8 z; R

8 b. m0 I3 i; P# T. b5 s看usermannual 的語法說明不太了解  不知道哪位大大可以告知一下呢   先謝謝各位了
0 V% x. Z$ o5 \3 {6 d
8 p, W+ _& A: u+ |! V0 K************************************************************
& S' g" R, D9 m) r" M6 {* M#include "veriuser.h" /*include the file provided in the release dir */
. `* I( V2 R* K# x
1 n! D; S  `5 _6 i0 Y: k+ K, Fint hello_verilog()
  W; ~& H/ [1 w- M5 i. D{
# H7 U0 h8 q8 ]3 [& c        io_printf("Hello Verilog World\n";& j( D7 T, u! I( B0 Q7 `1 {
}- @9 u: D9 {+ M: r  v0 |) a( m! i% L
*************************************************************( A$ P- ]! G9 g2 @5 g$ E
1 w6 n' X! X  R0 J

* g. F1 {. V, w4 `
8 _/ c! G9 C7 f: }) `' M% W( H
% @* e5 ^: w/ q( a3 U- J2 T& X, s& @) e/ G  ?2 @8 c
***************************************************************
' |# G6 |0 {+ V+ n; X6 l; `module hello_top;, w( L  g3 j; `- z
8 w5 t$ ~1 C; {% Q. u5 q' S
initial& Z$ h0 P, k  a- V) j% V- o
        $hello_verilog; //Invoke the user defined task $hello_verilog
; ~" \' N/ \& B; ?2 a4 y/ z0 A3 [+ b9 E1 @) \! N
endmodule
. B( R9 J6 b9 J* {, p*****************************************************************
發表於 2007-6-15 13:04:21 | 顯示全部樓層
請問是那本書阿5 W' S: j3 ^& f! W
, S1 v( n+ a% r
介紹一下) p' K$ p  @9 o/ h1 `. D1 g) n1 M$ I

/ v5 }" {, K4 K* O/ b真是誤導 verilog 的精神
 樓主| 發表於 2007-6-15 13:21:38 | 顯示全部樓層

回復 #2 masonchung 的帖子

Verilog 硬體描述語言第二版      全華出版   黃英叡   黃稚存  編譯
發表於 2007-6-15 13:58:11 | 顯示全部樓層
這個做 test bench 是可以這樣用啦~
  y% s) ~* p, o$ s4 k% V" @- R) M  E& G8 A5 e7 H
modelsim 的 PLI 在 path 應該可以設定 不知你是工作站還是PC環境?# e$ s' I3 ^0 y( ~3 h9 C
還有 需要那個 PLI檔
 樓主| 發表於 2007-6-15 14:29:50 | 顯示全部樓層

回復 #4 masonchung 的帖子

版大 您好      我是在pc環境下     要怎麼做咧?    苦惱中     是不是不能直接在modelsim下7 B9 D' a2 f  O" z) o

6 O- J& L; a& B- w' B直接link?     還是在另外的環境中?    沒想到剛要開始用PLI    卻連入門的程式都跑步出來    苦惱阿.....
發表於 2007-6-15 22:13:20 | 顯示全部樓層
這是在 Modelsim 下 產生 debussy 所需檔案 的方法 + W& ^3 O$ K0 b0 [0 G/ M

0 K& C$ W) _* B: ?! a9 r$ X你的程式 應該可以如法炮製一番   & C! t5 r5 A6 f
) ~4 g3 o0 g9 b1 E! ?+ b2 `
1. 使用debussy 提供的veriuser.c file作compile跟link,
; C) _) j6 [. N' Ycl -c -IC:\modeltech_5.5f\include veriuser.c 1 w  o6 |( e- x
  ^. E2 O+ q$ n, t9 p  j$ b  L9 I% \
link -dll -out:novas.dll -nodefaultlib:libcmt.lib -export:init_usertfs veriuser.obj pli.lib shell32.lib C:\modeltech_5.5f\win32\mtipli.lib / t: [+ |4 f) X( \
% N. Z/ O! j' `. Z. v$ o: `+ {
(步驟2∼4 若不是為了Debussy運作 可省略)
0 T  Z; a  C: C1 j8 a# ?6 [
* T3 S( R; V' h9 _2. 根據 debussy install guide 新增環境變數 ( m+ p, x* v. ^& d7 m, |; `
環境變數D_LIBRARY_PATH
, _" T) O& @' |* L; b7 t" Q 變數值: (這部分省略)( N4 B$ T; n# s! ^+ a3 O% |
8 @- k( u! |" n* o+ O% G
3. 根據 debussy install guide 7 f" Z% t4 I6 n3 Z8 Z* f* a
在modelsim.ini 新增:
  k) ^* b% G2 u; m( y1 M  T/ k * d9 J( Z: B2 z% R
[vsim] ) }3 j4 [6 y- K% S
.
3 `& @, }2 n/ V: [) o" ~7 \7 Q .
& {: |6 e: w/ S( z veriuser=novas.dll : n; N* G- M0 s$ o* e# J$ D- J
8 e; V9 ?; O% p/ v1 B
4. 根據modelsim 的 user manual 新增環境變數 ; \, @- c0 D) @) p6 y
環境變數LIOBJS , \, o3 d1 {- n9 U# S5 M3 ^' c1 ]
變數值: C:\novas\debussy\share\pli\modelsim_pli\winnt\novas.dll " F; m" |, c) M; X2 x8 M6 V7 E6 o

' ]0 r# z) M' B* n" i7 J2 A" E然後直接
2 H9 K3 m# F& d6 e& jvsim test " U0 e! z; }/ k2 K
run -all
0 m( s# y. R& b( R3 s4 F3 T
/ K( A, L6 \9 E) _[ 本帖最後由 masonchung 於 2007-6-16 11:52 AM 編輯 ]
 樓主| 發表於 2007-6-20 10:38:03 | 顯示全部樓層

回復 #6 masonchung 的帖子

謝謝你阿  版大講的真的很詳細       我來試試看        
7 X# f, c" p4 S% o& {" F  i       .
發表於 2007-6-20 13:41:56 | 顯示全部樓層
"沒聲" 真有你的* p4 \) X, C6 r! b/ C4 G

0 j" @7 ~( Z0 ~) V  e1 ~3 z7 Q不過那本書...如果不是你沒看清書前面所講的, 就是書在誤導人啦...
 樓主| 發表於 2007-6-20 17:32:25 | 顯示全部樓層

回復 #8 tommywgt 的帖子

兩位版大好    由於我是初學者 還沒有分辨對錯的能力  所以就只能盡信書了  
, w$ u$ ~0 U2 B9 l5 Q! {3 j
2 A0 d+ r3 [( s不過兩位版大   你們都有提到  這個例子有誤導之虞   但是我實在是看不出哪裡有問題
6 Z. j# k" m4 s+ y" D1 ]  Q7 z! g1 B& H/ Q) y- e/ G% V
可以麻煩請版大幫我說明一下這例子的不妥之處嗎?    謝謝
發表於 2007-6-20 20:16:41 | 顯示全部樓層
捅米是要我先唸過一次來攏去脈! O9 l7 z" J. i
那本書我再買來看看,啪謝啦
 樓主| 發表於 2007-6-21 09:04:33 | 顯示全部樓層

回復 #10 masonchung 的帖子

哈   版大客氣了        到時候有任何心得還請版大多多提醒            謝謝摟
 樓主| 發表於 2007-6-21 14:45:28 | 顯示全部樓層

回復 #6 masonchung 的帖子

版大您好   根據您所提供的方法 以及我在modelsim上的usermannual所提供的語法   是一致的4 Y# v0 j6 H4 x7 B
但是奇怪的是   modelsim對這兩個指令  cl   以及link會產生如下的錯誤 * h' a$ L2 ?7 X! F1 A

1 }6 v" B0 e) W9 S* O* k' _# ** Error: ambiguous command name "cl": class cleanupGui clear_profile_if_needed clipboard # g. o/ J# c7 p  y
        clock clock_image close closedFolder clp! G: x! J: E! {2 h0 u) T& @, p" |, J5 _
- a; {9 A( v5 x* A- K
# ** Error: invalid command name "link"  
, Y$ C6 L" A3 E  \! x8 X1 M6 x$ b, a5 W( A2 |) l: K: s+ t
- F4 `4 T/ @1 W% ]
真的越搞越糊塗了
 樓主| 發表於 2007-6-29 10:08:36 | 顯示全部樓層

回復 #12 handwin 的帖子

終於解決了這個煩人的問題了  其實是要先把.C在  DOS 底下 先編譯在LINK成DLL檔    然後再將該DLL檔放到VERILOG file資料夾內   一起模擬即可     繞了一大圈     總算是搞定了    在這裡跟大家分享一下
發表於 2007-7-2 14:15:03 | 顯示全部樓層
"沒聲" 看來你誤會我的意思囉...sorry. r$ ]+ ^) B' c. S. v
; N3 L2 q6 n4 V9 b' A1 D% k
話說回來,反正問題都解決了...哈
6 e2 ?' c! V' ~3 S
3 x" o+ [# n2 T& o- j* s; u; ]somulation在寫code的過程也是個很重的技巧呢
1 G2 P% B/ ]% X' R: M/ s4 E1 V
8 s% k7 z5 P, {至於哪些code是可以合成的哪些code是不能合成的要分清楚哦
發表於 2007-10-27 20:11:39 | 顯示全部樓層
我也是今年剛要接觸verilog的學生9 d4 U$ J' T  m4 i0 H
我也想要請問一下 關於PLI的部份問題
# Y% N9 _+ U  E; c# j9 ?8 H! n我的問題跟開版的版友一樣
7 H+ [% E; l1 S# A用的書也一樣!!7 Y! x6 C5 C, D& |1 v5 d$ d3 K
請問要啥麼軟體可以 link & v) d( ?3 T* o- N2 q0 s
最後版友說 用dos跑出來?5 a; Y' U. |7 Z) X/ G* q4 `( L
使用debussy 提供的veriuser.c!我沒有這個軟體ㄝ
6 j$ l+ m6 t. I2 k有辦法到veriuser.c這個檔案嗎?
0 E: _7 X9 A; `9 N4 |8 _
0 E  a* `/ E+ }7 S# ?2 h% y  p2 Q0 X* G可否請版主 說一次完整流程 包括使用軟體?1 i) b3 `' g  T7 ^5 W
/ c8 d* I4 c' p1 I; v
完全霧煞煞的學生....
發表於 2007-10-27 22:39:01 | 顯示全部樓層
我舉的例子是給 想要從 modelsim 產生 Debussy 可看的 fsdb 檔案的做法
* y$ U- }4 C' K7 @( x  y1 n# }8 Q
$ f5 U' J: o; B/ @$ |: b2 U% _並不是 此本書的 PLI 例子編譯法喔
9 T1 W6 H: e; w. h8 x8 l+ \, z0 B' V( \0 X: X! {
klk0130 大大 可參考 handwin 大 的流程 即可
4 ]& W7 ?9 c; i3 o+ g
5 Z3 |2 c" Y( ]+ @( W% e* y6 N[ 本帖最後由 masonchung 於 2007-10-27 10:46 PM 編輯 ]
發表於 2007-11-3 17:10:06 | 顯示全部樓層
再請教一下 版主大人:
% B, D9 R' u- l5 E我照著handwin 的作法,想要把 hello.c檔 轉成 hello.obj檔; C. u8 U3 ~& p8 c
在VC環境命令提示字元中輸入
& i( r7 I# _8 K! vcl -c -IC:\modeltech_6.1b\examples\PLI hello.c2 J  a( @6 v' ^! l8 n  E
但是出現c1:fatal error 1083 :無法開啟來源檔案2 R4 b" V2 J, C  D
請問這要怎麼解決..: p' c, w; a0 @$ P  m0 G' G
請大家幫幫小弟..感謝!
發表於 2007-11-4 23:49:14 | 顯示全部樓層

Command line compiler for Windows

Here are some useful info.5 x/ c4 B" z0 b0 F3 {* S
http://www.velocityreviews.com/f ... er-for-windows.html
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-3-29 05:28 PM , Processed in 0.130007 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表