Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2008-4-30 22:40:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
請問在quartusII上面, 假設小弟希望寫一個ring oscillator請問該怎麼實現???1 B1 P' b4 @- K. w0 t

4 F& H. C6 D- x+ U因為不管我用stucture或schematic方法, 經過tool compiler後, 它都會自動幫我把串接的inverter7 _6 c- r/ z9 i0 W

" r: e5 d- c$ U' ?* [6 ^給消除掉, 請問該怎麼辦? 有什麼辦法能夠讓我的電路完整的不被tool給最佳化呢?! P/ {) U4 }( ~

& m- `$ R3 y3 y) T# `7 ?* I6 S如果說在DV上我會使用dont touch的指令, 可是在quartus2上我就不會了, 煩請各位大大解惑. X9 ]1 ]6 O5 X
( S# w- G1 B; [# J% ]4 n
感激不盡
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂2 踩 分享分享
2#
發表於 2008-5-2 10:56:16 | 只看該作者

回復 1# 的帖子

可以用 keep 的attribute把 NAND gate間的node給保留下來.
8 z; M4 J, i" _9 ^/ d$ c. H/ D
0 T! A9 f, c. S' q" B在FPGA上實現 ring osc 不是不能作, 但不會像 asic製程那樣容易分析, 以FPGA的習慣用法來說, 並不鼓勵這樣作." E4 F& z$ H" j' l
6 \! h  H) D% a
[ 本帖最後由 sieg70 於 2008-5-2 11:03 AM 編輯 ]
3#
 樓主| 發表於 2008-5-2 12:44:58 | 只看該作者

回覆

比如說我的code如下:
) g: F9 {# @, H' E2 U: h
, x6 ?  z& v1 N+ q4 Emodule firo( run, Dout);
( @" X; a% g8 F- E+ S& N4 h0 Y% @9 E  \; H7 O: A" a
input        run;
5 G& g6 h" B$ t+ _2 F+ b, noutput        Dout;0 s; [7 W* O; K0 Z1 f

! C* d9 F4 L* E  S3 `wire run, Dout, w2, w3, w4, w5, w6, w7, w8, w9, w10, w11, w12;. y7 a8 z8 K: A) l9 b$ q* O
wire w13, w14, w15, w16, w17, w18, w19, w20, w21;6 {3 K  N8 l+ o" k: }  T5 `8 z

* I3 ]2 T( d* v2 z3 q* D$ i1 g0 @nand na1(w2, run, Dout);5 U9 ^6 T0 ]1 I/ M) m4 p2 q! q
xor x1(w3, w2, Dout);
8 T' J' R+ Z' N7 G2 W' unot n1(w4, w3);) ?* @) f9 F7 Y, B0 v. e/ v1 f0 l7 H
not n2(w5, w4);6 P# t8 W& C4 F2 h5 o5 D2 a4 Q
not n3(w6, w5);
1 L, K: x% c! b8 q5 inot n4(w7, w6);/ T, T2 R! b  k4 _
not n5(w8, w7);$ V% L7 g2 ^  g/ O: N5 c: O: P
not n6(w9, w8);& c# A0 W, w% D! G2 r4 }+ n/ c
not n7(w10, w9);
; a4 K; j1 F$ }9 ?: `8 sxor x2(w11, w10, Dout);
3 i, h* z% S* `$ gnot n8(w12, w11);
: {) |2 C4 L0 c& R+ Ixor x3(w13, w12, Dout);; ]7 m. B* k- M& q
not n9(w14, w13);- g1 F* j! l% U% a/ J' M! j- T" r
xor x4(w15, w14, Dout);
1 }8 u. A3 C, x8 k. U) Pnot n10(w16, w15);
# L: d: T" {5 i- hxor x5(w17, w16, Dout);
% g3 T' _1 ~/ h. S) y, E% Onot n11(w18, w17);9 G5 s1 q% \- ~* D8 g& P
not n12(w19, w18);
" L2 z- c( V3 j5 nxor x6(w20, w19, Dout);) [) u1 e' R  h' J" K# G3 b! c
not n13(w21, w20);
% V" {/ r: }+ l/ Y8 K' P1 d  ?1 Ynot n14(Dout, w21);2 }  ?0 s( b/ v5 o
4 [! H4 V8 R( e- b, S
endmodule
* ~) X6 `7 A# s( u' ^/ G9 S4 o# f8 C7 k+ H+ j0 o
那我要怎麼加所謂的attribute 才能夠keep我的電路呢?+ z" s0 u& k; @
不好意思,因為對此不甚熟析,希望大大能夠做個範例指導,這樣對初學者的我能夠較快上手
$ [3 Z& l9 G- _7 D1 W1 u$ [/ y
) m$ s; @5 p2 s感激
4#
發表於 2008-12-19 23:18:22 | 只看該作者
keep語法,你試看看吧!
/ [  C9 g6 \  AExample 8–43. Verilog HDL Code: keep Attribute+ v4 C  Q3 a. i* d- r. U
wire my_wire /* synthesis keep = 1 */;
1 i. A9 w+ j+ T$ j( Z7 z7 e9 [  l5 ?* O+ e5 @1 d' W; p# V. o
Example 8–44. Verilog-2001 Code: keep Attribute
# {9 [- H1 ]! C( @' h(* keep = 1 *) wire my_wire;: |+ \6 H9 \8 G* W: s
8 Y: J( \- m9 |: ^# j/ B  U
Example 8–45. VHDL Code: syn_keep Attribute% s: p2 E  a) Q% C: y/ |
signal my_wire: bit;& ~. R* e4 |2 N8 d  K4 X2 F/ N% l
attribute syn_keep: boolean;6 i& q) f3 v/ o9 q  p. a& y
attribute syn_keep of my_wire: signal is true;
% Y( ]/ r. [8 A1 Y9 m- _
! z% x9 t7 S0 V! u3 S" N5 H8 U附上Quartus II的handbook片段,如下:

本帖子中包含更多資源

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

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

本版積分規則

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

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

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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