Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2008-4-30 22:40:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問在quartusII上面, 假設小弟希望寫一個ring oscillator請問該怎麼實現???
( E4 Y- }  `- A- e$ }
2 P, e( ~7 A4 `因為不管我用stucture或schematic方法, 經過tool compiler後, 它都會自動幫我把串接的inverter0 g( ?  b9 \8 C3 U' Z- j& I5 H
% q: ]4 Z2 j" j9 G6 e! n' Q$ S
給消除掉, 請問該怎麼辦? 有什麼辦法能夠讓我的電路完整的不被tool給最佳化呢?
* \/ n' E- ~% X8 w% c5 K, M4 p& b; {
如果說在DV上我會使用dont touch的指令, 可是在quartus2上我就不會了, 煩請各位大大解惑( P' C( o0 p8 D* n% l

  K; v6 n9 e: j9 i( K感激不盡
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂2 踩 分享分享
2#
發表於 2008-5-2 10:56:16 | 只看該作者

回復 1# 的帖子

可以用 keep 的attribute把 NAND gate間的node給保留下來.+ B( C$ v( b$ u% G9 s5 G4 \1 H
1 ]; A# R3 A8 ~3 _
在FPGA上實現 ring osc 不是不能作, 但不會像 asic製程那樣容易分析, 以FPGA的習慣用法來說, 並不鼓勵這樣作.! i2 o( y, h2 m& X0 X

7 l& B( |$ m, S7 h7 u: F[ 本帖最後由 sieg70 於 2008-5-2 11:03 AM 編輯 ]
3#
 樓主| 發表於 2008-5-2 12:44:58 | 只看該作者

回覆

比如說我的code如下:/ p: x9 o, f. O( |: D9 A+ ?9 K2 v
8 ^5 M! k& q! C0 }' K/ J) r
module firo( run, Dout);
* \' P' K7 [% `0 K- Y9 ]* i) \- z
1 S# V1 @, B8 N3 |input        run;
, v3 [: ^% h6 Q! ?7 A- N  j* Q6 c% Aoutput        Dout;' {9 v( d1 [0 I. d
! x0 x; }6 q. X3 E9 R
wire run, Dout, w2, w3, w4, w5, w6, w7, w8, w9, w10, w11, w12;& D$ h5 o) u1 j( X$ V- v0 a
wire w13, w14, w15, w16, w17, w18, w19, w20, w21;
6 f3 z9 l; X- A3 l6 U# I: m* |4 S6 t, O
nand na1(w2, run, Dout);
# a9 }3 l. p5 `9 k" |3 Qxor x1(w3, w2, Dout);
' p; _& J5 C% E& C6 @4 ^4 B" knot n1(w4, w3);
; f. l7 D' e  E: U7 U* wnot n2(w5, w4);; I4 e0 Z& q* b! H4 b/ X7 h
not n3(w6, w5);
2 R8 _( \# h6 s2 N8 m- Jnot n4(w7, w6);
. i: I' r+ S- v! ~: \; s5 Q( G# ^  G: cnot n5(w8, w7);$ p2 h, d6 |( j* a
not n6(w9, w8);
9 E2 u; _4 }+ O* ^not n7(w10, w9);
; y! E1 d3 S- N; f; u& h7 Exor x2(w11, w10, Dout);  u& T5 A) g- r+ ^0 E- e! W7 K  k. A
not n8(w12, w11);
% i  q' e! T0 h& e. o* j# Vxor x3(w13, w12, Dout);" a/ }7 q1 c! M5 {$ z; F
not n9(w14, w13);
, m  P+ ?/ c+ u: o  ^xor x4(w15, w14, Dout);
9 m; V! f" M* Y( m+ c; a4 ^4 T' Pnot n10(w16, w15);) ]- J8 R  A; q1 t2 b
xor x5(w17, w16, Dout);( c/ N0 ?; w2 U9 p& A6 J/ p
not n11(w18, w17);
( I  A7 t) Z* v2 g$ C5 X. Rnot n12(w19, w18);
7 H4 }3 V, p+ c" [* C" @xor x6(w20, w19, Dout);- s3 }" z; `) x6 a& [# d
not n13(w21, w20);1 }4 F2 p/ Q: j$ T2 x
not n14(Dout, w21);
5 s. G0 i3 G/ p# B7 {7 P) h
6 z" \2 p& l  [+ m5 j3 Nendmodule: g) P' T9 y9 W" N& `

3 M0 D8 A$ I# x  e. k那我要怎麼加所謂的attribute 才能夠keep我的電路呢?
' ~% ^# n% G+ O4 H不好意思,因為對此不甚熟析,希望大大能夠做個範例指導,這樣對初學者的我能夠較快上手
7 e4 V  h5 W2 n; S% W4 ~9 i
& S: M- y! i) R/ j感激
4#
發表於 2008-12-19 23:18:22 | 只看該作者
keep語法,你試看看吧!0 S- s, ~$ l( q( s! y4 Q6 ?
Example 8–43. Verilog HDL Code: keep Attribute8 w/ E9 y- P, B/ b
wire my_wire /* synthesis keep = 1 */;
1 R9 `6 Y% Z$ ?9 {. `1 Q+ J# Z, u* @
8 C" k; D% o7 V/ J8 sExample 8–44. Verilog-2001 Code: keep Attribute
7 g9 Q# W7 \2 _2 Q% a(* keep = 1 *) wire my_wire;/ t5 C1 B5 k2 _0 l
; e6 s5 |& _$ V# D5 g+ L7 I7 a
Example 8–45. VHDL Code: syn_keep Attribute
+ y% ?8 H) _! O# u7 Jsignal my_wire: bit;
3 x2 Y( e$ m3 m$ }6 zattribute syn_keep: boolean;
+ T9 M; S# m4 _* z( a# Hattribute syn_keep of my_wire: signal is true;. W" Q# U$ R( k8 j$ n2 d9 }; h

' [8 T6 S% C0 a* j; V$ f% Y附上Quartus II的handbook片段,如下:

本帖子中包含更多資源

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

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

本版積分規則

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

GMT+8, 2024-5-20 03:52 AM , Processed in 0.111014 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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