|
我現在已經把1024點的資料存到FPGA 的RAM裡面% y* k8 u1 _. E7 r/ |
signal tap II也可以看到0~1024點的資料
H+ q8 B9 z7 H) i$ I但是我想取512~1024點的時候
* e: _4 S7 v+ B9 m往往在compiler的時候 fitter那邊就是過不去4 O- D! J* B* t$ ?9 K# p
我看了error 說 LEs 不足....
b* \8 {5 ?, ^為什麼只要特別取某區段的資料時都會遇到這個問題呢
! b, `" n: G! V3 z程式碼如下% x; ?9 |) D5 J
ram_data已經存取1024點資料
+ u8 i; M0 D4 I3 [* j
, M0 z* M, X9 G& [always@(posedge clk or negedge reset). x6 B$ n( \' o$ }3 d+ r$ P
begin7 t+ T9 z% ]) Q4 l0 ?
count_L1<=10'd1;
( @; o: D* C7 l4 T) L& T1 h. A L1_addr<=10'd0; ( @0 S* x7 ?2 P5 u2 \
if (reset ==1'b0)
* |) v* W+ A1 u+ |# v+ a begin
2 {# M# c4 u+ O count_L1<=10'd1;% G% W% U+ B9 K' v7 ?# ~
L1_addr<=10'd0;
! U4 ?" z0 V, Y# \3 t4 ]$ ~ end
( c2 J; W: A; I9 m0 q. L/ K else if(start_fft_flag == 1'b1) 3 U7 I( n- v' ]! e0 t
begin; R! ~+ U0 B) s5 ]
realdata_L1ain <= ram_data[L1_addr]; // 0~512的數值傳到realdata_L1ain v1 W. W7 B- g( E1 T
realdata_L1bin <= ram_data[L1_addr+512]; //513~1024的數值傳到realdata_L1bin
. ]4 |7 w" K" }1 e8 @1 k3 U2 f D count_L1 <= count_L1+1'b1;- _" e; v8 }4 R+ p* Z- r: `: Z$ k
L1_addr <= L1_addr+1'b1;
* \5 s4 O4 z6 A2 q if(count_L1==10'd513) . I+ b9 B# b3 X6 b# ~0 K7 i5 W
begin b" o0 L+ E. Q8 }9 H
count_L1<=10'd1;
# E7 Q) K% \# H( ]3 {5 X8 _6 m L1_addr<=10'd0;
0 ?1 }0 c k! F) \" ? end ' z' z& e/ z& M( {- \3 X: i3 A
end6 ?/ `) B) }1 ^1 U5 j
end |
|