Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2008-4-30 22:40:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問在quartusII上面, 假設小弟希望寫一個ring oscillator請問該怎麼實現???
9 _/ l. K+ ?1 j$ G4 I
! i: A; V& e9 |( l, f, I) R因為不管我用stucture或schematic方法, 經過tool compiler後, 它都會自動幫我把串接的inverter  {% [/ G; @7 Q+ n) c
/ x+ @" m9 h/ Y% D' }7 {, U
給消除掉, 請問該怎麼辦? 有什麼辦法能夠讓我的電路完整的不被tool給最佳化呢?. [/ d4 u; ?- i  P6 _) T; ^
3 Z, k/ o; p# T0 A! K# _, ^% Q
如果說在DV上我會使用dont touch的指令, 可是在quartus2上我就不會了, 煩請各位大大解惑) {1 V3 o$ j. q

1 p9 U) B" I. }感激不盡
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂2 踩 分享分享
2#
發表於 2008-5-2 10:56:16 | 只看該作者

回復 1# 的帖子

可以用 keep 的attribute把 NAND gate間的node給保留下來.7 A" r2 ]$ O7 h0 j4 L5 z
5 ?" l) ^3 r! L# Y) b
在FPGA上實現 ring osc 不是不能作, 但不會像 asic製程那樣容易分析, 以FPGA的習慣用法來說, 並不鼓勵這樣作.
- d$ N3 }# N7 M) h( o( q1 s4 j0 X! ^
[ 本帖最後由 sieg70 於 2008-5-2 11:03 AM 編輯 ]
3#
 樓主| 發表於 2008-5-2 12:44:58 | 只看該作者

回覆

比如說我的code如下:
3 v$ \: U2 u/ D5 c1 e. u5 A* x
; p2 V& R+ p+ `- k4 Y* E( Amodule firo( run, Dout);) C3 S, ]9 M" h( y. e8 a
' v" ^! _3 {# g2 f
input        run;4 J& @% m, t; o& ~4 K" S& W
output        Dout;/ H( u- B5 c3 a% H* D) B5 N9 M* m

' z  w% j2 G  Vwire run, Dout, w2, w3, w4, w5, w6, w7, w8, w9, w10, w11, w12;
" G+ T  N2 \5 ^wire w13, w14, w15, w16, w17, w18, w19, w20, w21;
2 L5 e- b1 ?8 f( \, ^
& Z$ {; R7 Q  B+ `nand na1(w2, run, Dout);5 J% O: r$ C0 F$ E8 ]+ c! x
xor x1(w3, w2, Dout);
- {) N# ?' h# [( b) onot n1(w4, w3);
8 `8 g9 Y- l- G$ C: W4 Gnot n2(w5, w4);
/ s% G: i  W1 f: f" w+ Dnot n3(w6, w5);
1 I& b: s3 s0 A7 c2 b- Ynot n4(w7, w6);: c; a# r9 \, u, J1 o8 L
not n5(w8, w7);) [5 |; U" p, Q, f8 o  W+ z9 U
not n6(w9, w8);: [: w$ a. K0 y- Y0 o: F
not n7(w10, w9);
- p1 P- {: f0 K9 p4 ~6 i- `2 {xor x2(w11, w10, Dout);
: \/ K' v0 R3 i" r$ Unot n8(w12, w11);( ^8 h/ h0 y3 w+ I; `! A
xor x3(w13, w12, Dout);
" g2 e7 g, r- d" W+ c7 f( T3 anot n9(w14, w13);
# N7 v2 ]5 }$ ?& D! Gxor x4(w15, w14, Dout);
8 ]1 W) A6 n4 y2 I! Hnot n10(w16, w15);
  d' p  K5 t: L7 Zxor x5(w17, w16, Dout);  h% t: g: H4 O# P9 f" k; _+ B
not n11(w18, w17);
2 W  j0 F2 o5 Z$ n1 bnot n12(w19, w18);
5 q9 Y% M3 L+ `xor x6(w20, w19, Dout);
7 t; }6 c8 g! F& L; ]5 G( K; K4 }) znot n13(w21, w20);
2 ?+ z1 w: k: G% \not n14(Dout, w21);- Z4 L. o6 C6 y7 p

" e$ j3 M2 U7 o4 h, |( z/ xendmodule
3 x6 [$ l) N% V
' r4 `6 H/ p$ j) ^6 {7 e那我要怎麼加所謂的attribute 才能夠keep我的電路呢?
/ {' g. \8 R7 ^3 R& Q- `不好意思,因為對此不甚熟析,希望大大能夠做個範例指導,這樣對初學者的我能夠較快上手% B' a! f. p$ b7 J, G1 E

  t% Z3 r8 G" n7 J( b5 l  _感激
4#
發表於 2008-12-19 23:18:22 | 只看該作者
keep語法,你試看看吧!+ X/ g9 @* b# r0 a" C
Example 8–43. Verilog HDL Code: keep Attribute
; f& p! v; b  |( q4 Q" I' j* Z1 ^4 iwire my_wire /* synthesis keep = 1 */;* i) Y- D( A  d& l/ O

, B/ X7 O1 B, C, U8 Q3 GExample 8–44. Verilog-2001 Code: keep Attribute5 j+ P$ Z  @6 B
(* keep = 1 *) wire my_wire;* \! f3 [0 G5 H! m2 ]; x

- p6 R. u+ O* l$ s7 B! H- PExample 8–45. VHDL Code: syn_keep Attribute. N3 v: I3 n+ e7 J
signal my_wire: bit;
6 v7 O' @: N. S" H. Fattribute syn_keep: boolean;9 {5 J; Q# @$ c  f3 I
attribute syn_keep of my_wire: signal is true;7 I2 c3 Y; I+ C( V

5 E4 q8 ]: D! X1 M1 U3 V/ r附上Quartus II的handbook片段,如下:

本帖子中包含更多資源

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

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

本版積分規則

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

GMT+8, 2024-9-28 09:33 AM , Processed in 0.179011 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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