Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2008-4-30 22:40:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問在quartusII上面, 假設小弟希望寫一個ring oscillator請問該怎麼實現???
; w, ^) c9 {# p+ P. g% _$ ]
6 L7 e# x! b4 Y! |: G因為不管我用stucture或schematic方法, 經過tool compiler後, 它都會自動幫我把串接的inverter
* b6 T( k9 ]$ Z( B; t0 q
2 g% F* x$ G) ]0 N給消除掉, 請問該怎麼辦? 有什麼辦法能夠讓我的電路完整的不被tool給最佳化呢?
* E" l. o; R' S4 g2 k
8 O9 a- I) N8 \1 ^8 C, s如果說在DV上我會使用dont touch的指令, 可是在quartus2上我就不會了, 煩請各位大大解惑* Q5 I3 Q; X" W3 ?+ V5 ?6 [4 [

- I( s* @; f# W8 O% F感激不盡
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂2 踩 分享分享
2#
發表於 2008-5-2 10:56:16 | 只看該作者

回復 1# 的帖子

可以用 keep 的attribute把 NAND gate間的node給保留下來.
  p9 W" ?9 Q7 {; Q/ x
% u% ]9 \- \5 w7 X9 ^1 a! ~在FPGA上實現 ring osc 不是不能作, 但不會像 asic製程那樣容易分析, 以FPGA的習慣用法來說, 並不鼓勵這樣作.* K" w+ }2 F2 h! O3 X% t! u

7 i" x" F/ u9 c+ I& S5 D[ 本帖最後由 sieg70 於 2008-5-2 11:03 AM 編輯 ]
3#
 樓主| 發表於 2008-5-2 12:44:58 | 只看該作者

回覆

比如說我的code如下:9 S3 I% o) G, t4 |

# R! r+ u; R, vmodule firo( run, Dout);
2 C" k  b- Q+ _- D6 w* `2 o) |; f
: \/ P1 ]) O# M& y9 Pinput        run;
  m! v  S$ P1 ]1 v9 P' Toutput        Dout;
& z7 v# C4 j" R# N8 j4 X& }6 S6 c" l& u# p, O5 E  h
wire run, Dout, w2, w3, w4, w5, w6, w7, w8, w9, w10, w11, w12;( ?( E1 @3 s8 u: ~% `1 B
wire w13, w14, w15, w16, w17, w18, w19, w20, w21;
- _. I6 ?) I' P8 f& X
. \, t# O' |8 _  hnand na1(w2, run, Dout);* p# x% K9 {7 G9 n
xor x1(w3, w2, Dout);
( l( {' b% u  _) V3 x# U# Znot n1(w4, w3);4 R( }7 Q, j  M- A5 b1 l) ^
not n2(w5, w4);
* H! ]% R- [$ v4 R6 g, |not n3(w6, w5);0 Y2 Y7 T; I% U9 f: W8 R
not n4(w7, w6);9 ?- W9 i  t4 z4 t4 V6 L
not n5(w8, w7);
4 s: O, W3 R+ ?( h' _1 C7 t* Hnot n6(w9, w8);7 M' y# W' ^, b% }4 X  D7 {7 Z8 j
not n7(w10, w9);5 ?4 d* ]0 F4 {" I) t
xor x2(w11, w10, Dout);
* }' W/ `( \& [: q" inot n8(w12, w11);' j0 J9 A6 ]4 ^) l# y
xor x3(w13, w12, Dout);  D; H( s) ]. F; R9 {2 c
not n9(w14, w13);
2 b( f$ x) q) mxor x4(w15, w14, Dout);
3 V- d* q4 L! i4 Q: L- N- T$ q( [2 }, knot n10(w16, w15);- l& c" Y" M  G- ]3 u% ], \6 h* u$ l9 ~
xor x5(w17, w16, Dout);
4 Y# Q/ C1 l# X# U0 V( G0 Onot n11(w18, w17);' }% W* G3 e0 A$ ^+ h2 p9 B5 V
not n12(w19, w18);* z$ Z" j6 ^7 Q; J3 Y8 p( s
xor x6(w20, w19, Dout);
6 S/ u6 @7 }6 ?! G: w  tnot n13(w21, w20);
8 d9 l% j% t5 `  F$ L* bnot n14(Dout, w21);! t& I, [3 j0 N# c3 ~5 z* D$ W- ]
+ {: B8 `; X- B; K1 r
endmodule5 t5 C& M8 [8 J# Y* a  _
% D7 T: U* s( a; n: E
那我要怎麼加所謂的attribute 才能夠keep我的電路呢?
( o) ^- N" q5 n' y0 x不好意思,因為對此不甚熟析,希望大大能夠做個範例指導,這樣對初學者的我能夠較快上手- \) j0 f. i# t: _3 x9 ?' M1 }; {

" N, M! {+ ^1 B) V! l" K0 e感激
4#
發表於 2008-12-19 23:18:22 | 只看該作者
keep語法,你試看看吧!, B  a6 k. x7 L. T2 x* t" d9 D
Example 8–43. Verilog HDL Code: keep Attribute. W( K% T" j8 u
wire my_wire /* synthesis keep = 1 */;* ^: ~2 L/ U. W0 T
1 A# H3 _& |- {+ c* F5 ^* m
Example 8–44. Verilog-2001 Code: keep Attribute
) j/ E. D5 I7 \; ](* keep = 1 *) wire my_wire;# L2 A3 j0 P3 Q$ S# I/ k0 P
. T! H$ k0 Y) X! \0 F
Example 8–45. VHDL Code: syn_keep Attribute
7 W. g) Z# V0 H0 A1 U1 \7 t0 Bsignal my_wire: bit;: [8 R( B( x. M1 K# i
attribute syn_keep: boolean;8 k3 d2 s9 y7 A
attribute syn_keep of my_wire: signal is true;
2 M( n9 i0 K6 k4 H& H  O/ H4 P3 }# _& g" l: k6 \
附上Quartus II的handbook片段,如下:

本帖子中包含更多資源

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

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

本版積分規則

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

GMT+8, 2025-2-24 11:14 AM , Processed in 0.171009 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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