Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

[問題求助] quartus II 使用問題

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2008-4-30 22:40:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問在quartusII上面, 假設小弟希望寫一個ring oscillator請問該怎麼實現???
; u) B% h* y! H- Z, v( J  B3 J
& p7 v& U' R4 z) e1 g因為不管我用stucture或schematic方法, 經過tool compiler後, 它都會自動幫我把串接的inverter
  |5 F2 h! f7 o9 t: Z. c( k+ ]0 _7 Z0 ^3 l) l* o6 \' Q
給消除掉, 請問該怎麼辦? 有什麼辦法能夠讓我的電路完整的不被tool給最佳化呢?& @1 x( O: n* v( P1 j
" T7 X& [: J- N6 y+ H) L1 x; q+ G2 b
如果說在DV上我會使用dont touch的指令, 可是在quartus2上我就不會了, 煩請各位大大解惑
1 w) a( E8 ], E- ?3 T" K( b/ R2 T4 ?1 E, o# Q* \+ F
感激不盡
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂2 踩 分享分享
2#
發表於 2008-5-2 10:56:16 | 只看該作者

回復 1# 的帖子

可以用 keep 的attribute把 NAND gate間的node給保留下來.% R' y8 |) K5 L% o  O
; @' v5 x  F; N
在FPGA上實現 ring osc 不是不能作, 但不會像 asic製程那樣容易分析, 以FPGA的習慣用法來說, 並不鼓勵這樣作.2 G2 v9 q( c) u" c& m' x
! H5 w' z& V* q/ ~4 W- K; }0 e5 G8 r
[ 本帖最後由 sieg70 於 2008-5-2 11:03 AM 編輯 ]
3#
 樓主| 發表於 2008-5-2 12:44:58 | 只看該作者

回覆

比如說我的code如下:6 Q# y+ D* U1 X# {( H

' n( L  t: \) P( k4 C5 n0 omodule firo( run, Dout);- T/ u' O6 \2 a; ]+ h
( Q  B2 O0 S, g$ X) D9 ]8 E% m; |
input        run;
8 Z6 [1 k, g2 l3 V! a8 xoutput        Dout;
3 a' R4 {3 z5 \( }& ?) r6 ?1 o+ f2 q' p8 w- L
wire run, Dout, w2, w3, w4, w5, w6, w7, w8, w9, w10, w11, w12;# f6 [4 w% B- S: x% X& ]" j9 B
wire w13, w14, w15, w16, w17, w18, w19, w20, w21;
$ h* |5 P+ N: H* T1 j
" ?/ {6 }, h: d9 Ynand na1(w2, run, Dout);5 ~7 z; S, d. U$ ?9 l" \
xor x1(w3, w2, Dout);& L3 N( F$ Z, ]$ D
not n1(w4, w3);% R8 ^+ G' Z% S2 j
not n2(w5, w4);& d0 `/ m8 q* U3 h7 b' q7 x5 Z
not n3(w6, w5);
0 F; O; [; y7 pnot n4(w7, w6);- _$ f% A( _9 X' A4 Y" l$ A8 z* [& z- g
not n5(w8, w7);
7 h7 }, v4 ^( Y9 j6 Rnot n6(w9, w8);) d% Z0 d7 r# C5 l
not n7(w10, w9);" s. C- ~! a& W4 u0 r
xor x2(w11, w10, Dout);+ `' c" R- ?- d( q  @0 }) Z
not n8(w12, w11);' ]+ W( D1 J, z9 M$ k2 B& M
xor x3(w13, w12, Dout);" e  Z% ^* \8 m2 D: u( \8 v
not n9(w14, w13);1 v3 d' Y. {$ j7 ]& N
xor x4(w15, w14, Dout);
6 c* A3 k2 S2 znot n10(w16, w15);
1 q& s2 e8 h7 V5 Mxor x5(w17, w16, Dout);
" E+ i$ H( V% M! @, @6 X3 Onot n11(w18, w17);: e" A# D& O& d- s4 I6 L4 w6 `
not n12(w19, w18);- X% A/ g' H. T3 f. ]# }
xor x6(w20, w19, Dout);4 }/ W' C' p3 z6 O+ Z5 c) |
not n13(w21, w20);1 N, R3 F% D. [
not n14(Dout, w21);6 A1 B5 a) ]8 h/ G4 F% N1 K+ ?
/ Q3 x- Y; P" K+ D) y2 [, Q. x3 U3 }
endmodule
7 f+ m6 V0 `2 a/ G( R" M- A
# n* c  t9 V  J那我要怎麼加所謂的attribute 才能夠keep我的電路呢?$ [% d( X5 |# f
不好意思,因為對此不甚熟析,希望大大能夠做個範例指導,這樣對初學者的我能夠較快上手2 O) n7 f6 r! H5 S3 d
$ u9 b0 k& m5 U" Q, o1 \
感激
4#
發表於 2008-12-19 23:18:22 | 只看該作者
keep語法,你試看看吧!0 \6 a! ~7 g" @: ~+ i
Example 8–43. Verilog HDL Code: keep Attribute
" h, L  D$ Q1 R; n& a$ h, l! {6 Uwire my_wire /* synthesis keep = 1 */;8 y% B) m/ O! u* s2 O

" X8 ~% j4 |4 ]0 I5 X. \Example 8–44. Verilog-2001 Code: keep Attribute
3 |3 h$ h, `+ j# I) W(* keep = 1 *) wire my_wire;5 J9 R4 u: i( [9 U/ L& e4 d
* ?7 q; h5 E9 x
Example 8–45. VHDL Code: syn_keep Attribute' f$ e) k: B0 P4 q- H7 E2 i
signal my_wire: bit;3 j8 z) L8 Z9 L  @6 u. ?$ p
attribute syn_keep: boolean;
( d7 @+ I2 O& X% K3 b: d& S9 U6 Cattribute syn_keep of my_wire: signal is true;
: m3 S2 p1 c5 r6 p7 r; H4 J% {7 e& H" T' V
附上Quartus II的handbook片段,如下:

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?申請會員

x
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2025-2-24 04:07 AM , Processed in 0.165010 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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