Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 9968|回復: 17
打印 上一主題 下一主題

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

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-6-15 11:03:25 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
不知道在這裡問對不對,請問一下,下面這個 書上的 "hello verilog"  例子在modelsim環境下怎麼下command才能link 並且可以產生結果呢
8 n& H9 |4 M$ b) Z+ F+ L6 }( `! [1 d  m" @& y- I
看usermannual 的語法說明不太了解  不知道哪位大大可以告知一下呢   先謝謝各位了$ j6 I/ K4 R& y* M9 w
; d. v, g$ m3 }- _9 [/ [
************************************************************" ]2 \6 Y* G2 x. r5 s
#include "veriuser.h" /*include the file provided in the release dir */8 n' `% x6 L4 W" \* @' j

, N2 q# A0 \7 l  oint hello_verilog()$ _7 P2 y+ `, ~
{
7 \, X" e  k1 X5 x3 ~& R! f/ C        io_printf("Hello Verilog World\n";* `$ t% k, R* ~( g) _1 s; \- O
}
$ \' w5 g, M9 J3 ~* X*************************************************************
* z4 j$ E9 R( b7 _0 d3 G0 M  a4 a0 L2 u$ g

3 }" A6 H  u: v% `
: A0 Z% D# O  ~: E0 m6 _! e" ^* P/ w4 n! x0 A3 Y
0 T7 S7 ~+ t, i
***************************************************************
0 O2 N- d3 m- W' X# M' W% Imodule hello_top;
. R" k: ?( @' ]4 |4 b; a
5 }# q$ K# n; T  W8 O# \. sinitial" s; w1 L& a- y4 C+ E
        $hello_verilog; //Invoke the user defined task $hello_verilog
: v' \) v. M1 v; b. v5 {4 T9 x5 U0 C7 q& K$ H
endmodule
& K& P: I7 S5 {: l*****************************************************************
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2007-6-15 13:04:21 | 只看該作者
請問是那本書阿
( u- @5 Z8 y; _: k) @
7 G( j0 u) \: A+ i1 H' O( A4 a9 l  j) r介紹一下
0 ~! {4 O7 l+ d) R
" U+ s! E9 ~: h! P, m5 J9 R) T真是誤導 verilog 的精神
3#
 樓主| 發表於 2007-6-15 13:21:38 | 只看該作者

回復 #2 masonchung 的帖子

Verilog 硬體描述語言第二版      全華出版   黃英叡   黃稚存  編譯
4#
發表於 2007-6-15 13:58:11 | 只看該作者
這個做 test bench 是可以這樣用啦~$ {4 a/ B  A" \" w
2 _% Y. G9 q3 G3 J9 J+ n& t! P% X
modelsim 的 PLI 在 path 應該可以設定 不知你是工作站還是PC環境?
5 M  W. y" P9 l3 `/ u還有 需要那個 PLI檔
5#
 樓主| 發表於 2007-6-15 14:29:50 | 只看該作者

回復 #4 masonchung 的帖子

版大 您好      我是在pc環境下     要怎麼做咧?    苦惱中     是不是不能直接在modelsim下; ]6 C* _# i2 |

) G. T" ]. a9 `/ m. a: R直接link?     還是在另外的環境中?    沒想到剛要開始用PLI    卻連入門的程式都跑步出來    苦惱阿.....
6#
發表於 2007-6-15 22:13:20 | 只看該作者
這是在 Modelsim 下 產生 debussy 所需檔案 的方法
2 C: Z$ S5 G% S6 x9 V$ M
6 c& s* p; U; Q7 r6 P3 P; M+ v7 y你的程式 應該可以如法炮製一番   
( s0 w" r* l; ]( j) W$ Z' y& N8 n, [8 O* t) f
1. 使用debussy 提供的veriuser.c file作compile跟link,
6 s% s+ [4 U9 [: d; r: d! lcl -c -IC:\modeltech_5.5f\include veriuser.c
* [. b: ~( R) B0 N; J8 j
/ I5 T) @2 p1 Hlink -dll -out:novas.dll -nodefaultlib:libcmt.lib -export:init_usertfs veriuser.obj pli.lib shell32.lib C:\modeltech_5.5f\win32\mtipli.lib
4 N+ i9 V9 u9 A2 w/ \4 k1 t, m( O/ X) y" p$ e
(步驟2∼4 若不是為了Debussy運作 可省略)
4 I/ }1 u+ K" Q6 \ / b, Y: c4 u5 g
2. 根據 debussy install guide 新增環境變數
/ M% Z9 ], l% H 環境變數D_LIBRARY_PATH
* l4 e# ?6 K: [0 g1 K  X) ]; u 變數值: (這部分省略)- K3 O) J! y6 Z0 h

2 t" Q3 V; ~( \4 K6 ~) x' p  X% L: P6 I3. 根據 debussy install guide # |( m! p; p7 l, c! M3 }2 M4 v
在modelsim.ini 新增: 7 D+ P4 b! t4 x' ~
9 |& R; Q6 K, T# F1 e
[vsim] 8 N' W5 p, [- M: P# f
. . H* Z; z# ], [4 H4 {$ [8 b  b
. 0 @; m- n# G* l# I. x
veriuser=novas.dll
0 `$ z! L. x; k1 t+ I 3 L! e7 Z$ c. x. Z' U& \# n
4. 根據modelsim 的 user manual 新增環境變數 * X: `4 D- K7 B9 ]7 e
環境變數LIOBJS
; w( l- [2 Z: n, t# n/ W( M' O 變數值: C:\novas\debussy\share\pli\modelsim_pli\winnt\novas.dll / u& C, J, ]4 f$ j: P

& y( r3 f# N# W' x$ @7 i6 d% U然後直接
1 R8 l9 [9 t: a, l5 r) Ivsim test . @. \0 ^, n6 s9 [0 i
run -all4 A# u1 l# B% D8 G, a

  Q$ V6 F$ i& p3 ?# G- i[ 本帖最後由 masonchung 於 2007-6-16 11:52 AM 編輯 ]
7#
 樓主| 發表於 2007-6-20 10:38:03 | 只看該作者

回復 #6 masonchung 的帖子

謝謝你阿  版大講的真的很詳細       我來試試看        : L; ^3 G0 a: v
       .
8#
發表於 2007-6-20 13:41:56 | 只看該作者
"沒聲" 真有你的
9 t/ C) ?. ^. Q) ~. V0 v9 Y1 k' e. t6 m: F$ [2 L
不過那本書...如果不是你沒看清書前面所講的, 就是書在誤導人啦...
9#
 樓主| 發表於 2007-6-20 17:32:25 | 只看該作者

回復 #8 tommywgt 的帖子

兩位版大好    由於我是初學者 還沒有分辨對錯的能力  所以就只能盡信書了  
8 M. i1 [. ]/ |- a) R9 z. G& c2 U. Y  C- I1 {9 m6 Z4 P1 L3 O3 b
不過兩位版大   你們都有提到  這個例子有誤導之虞   但是我實在是看不出哪裡有問題
( s3 d1 ~% w: B
. Q. M$ A, ~$ j/ w9 ?  @) B* i可以麻煩請版大幫我說明一下這例子的不妥之處嗎?    謝謝
10#
發表於 2007-6-20 20:16:41 | 只看該作者
捅米是要我先唸過一次來攏去脈/ T! D" B3 E! Z* W- t7 V5 v' N
那本書我再買來看看,啪謝啦
11#
 樓主| 發表於 2007-6-21 09:04:33 | 只看該作者

回復 #10 masonchung 的帖子

哈   版大客氣了        到時候有任何心得還請版大多多提醒            謝謝摟
12#
 樓主| 發表於 2007-6-21 14:45:28 | 只看該作者

回復 #6 masonchung 的帖子

版大您好   根據您所提供的方法 以及我在modelsim上的usermannual所提供的語法   是一致的) W0 K) `; i' e6 J& d  ^7 u
但是奇怪的是   modelsim對這兩個指令  cl   以及link會產生如下的錯誤
# k' H2 |0 |( i9 b1 ~
2 B! a9 }: @5 j; T8 a4 Q1 V$ N# ** Error: ambiguous command name "cl": class cleanupGui clear_profile_if_needed clipboard
$ p6 L) A, o, f+ C2 ~        clock clock_image close closedFolder clp# ?# f5 P/ y7 V) m

4 |8 n3 q) z% P: U! z# ** Error: invalid command name "link"  
4 P7 D1 S3 L  e/ G# ?1 E% Z
4 L2 T5 x# [. a8 j7 ?9 Q. T4 e- ^1 l' r# x4 o
真的越搞越糊塗了
13#
 樓主| 發表於 2007-6-29 10:08:36 | 只看該作者

回復 #12 handwin 的帖子

終於解決了這個煩人的問題了  其實是要先把.C在  DOS 底下 先編譯在LINK成DLL檔    然後再將該DLL檔放到VERILOG file資料夾內   一起模擬即可     繞了一大圈     總算是搞定了    在這裡跟大家分享一下
14#
發表於 2007-7-2 14:15:03 | 只看該作者
"沒聲" 看來你誤會我的意思囉...sorry- d) _- V. S5 p$ c' B2 W! V

: N) U- R; ~% t/ P/ x話說回來,反正問題都解決了...哈
+ l) T4 d5 C  M; r
1 ^; U6 t7 X$ k( Y; ~somulation在寫code的過程也是個很重的技巧呢
9 t. N$ X" M- _; W* A* D( L0 j. v9 K: X# ?8 O) q
至於哪些code是可以合成的哪些code是不能合成的要分清楚哦
15#
發表於 2007-10-27 20:11:39 | 只看該作者
我也是今年剛要接觸verilog的學生6 `3 ~9 p; V4 l: r
我也想要請問一下 關於PLI的部份問題
9 O2 f* J5 |# Z5 ]+ a8 t我的問題跟開版的版友一樣
' i, ^( T0 O  z( b) q用的書也一樣!!% e: P7 g6 C' s) Q
請問要啥麼軟體可以 link
5 }& ~' D$ {& P2 J4 q0 ?; a* L最後版友說 用dos跑出來?; q' N+ c' t! A) i7 [
使用debussy 提供的veriuser.c!我沒有這個軟體ㄝ  C2 s/ S; Y' _1 m/ u. N
有辦法到veriuser.c這個檔案嗎?0 p5 Z0 b# f  Y7 w& R/ L
6 t  U2 J/ r( n7 E/ m* U
可否請版主 說一次完整流程 包括使用軟體?
1 ^) ~6 e, x1 G" B5 k
2 \" I2 }& h' I& g+ n5 n0 {) H完全霧煞煞的學生....
16#
發表於 2007-10-27 22:39:01 | 只看該作者
我舉的例子是給 想要從 modelsim 產生 Debussy 可看的 fsdb 檔案的做法
' X) y1 p5 u9 `3 [9 K( S+ Y" X2 H+ b" j" c& R6 g8 D6 c3 Y8 ]; o5 p
並不是 此本書的 PLI 例子編譯法喔: J( D$ y( H( ~0 b. b9 Q9 H. E9 B

% p; K2 A! G6 G- f  Jklk0130 大大 可參考 handwin 大 的流程 即可$ g9 j( X- M2 H: V: ^) K

# I9 B  S1 |( D; e! a[ 本帖最後由 masonchung 於 2007-10-27 10:46 PM 編輯 ]
17#
發表於 2007-11-3 17:10:06 | 只看該作者
再請教一下 版主大人:
3 L* U- N3 }" A2 x我照著handwin 的作法,想要把 hello.c檔 轉成 hello.obj檔: j6 l% n2 @4 R% X1 k
在VC環境命令提示字元中輸入
1 O% e0 L# t# Q# icl -c -IC:\modeltech_6.1b\examples\PLI hello.c' e" X2 ~  s4 m2 M- K  |: t
但是出現c1:fatal error 1083 :無法開啟來源檔案) p9 F# u, D  J! H% V
請問這要怎麼解決..! X( A- x% Q9 Y" ~# \& {
請大家幫幫小弟..感謝!
18#
發表於 2007-11-4 23:49:14 | 只看該作者

Command line compiler for Windows

Here are some useful info.
' _: \+ O! ]8 D4 L" [http://www.velocityreviews.com/f ... er-for-windows.html
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-12-27 10:08 AM , Processed in 0.193011 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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