基本原则之一:面积和速度的平衡与互换 0ut7[15:0]<-#1Temp3[15:0]-Temp11[15:0]: 0ut8[15:0]<=#1Temp4[15:0]+Temp12[15:0]: 0ut9[15:0]<-#1Temp4[15:0]-Temp12[15:0]: 0ut10[15:0]<=#1Temp5[15:0]+Temp13[15:0]; 0ut11[15:0]<=#1Temp5[15:0]-Temp13[15:0]: 0ut12[15:0]<=#1Temp6[15:0]+Temp14[15:0]; 0ut13[15:0]<=#1Temp6[15:0]-Temp14[15:0]; 0ut14[15:0]<=#1Temp7[15:0]+Temp15[15:0]: 0ut15[15:0]<=#1Temp7[15:0]-Temp15[15:0]: end end end endmodule 为了便于对比两种实现方式的资源消耗,我在Synplify Pro对两种实现方法分别做了综 合。两次综合选用的参数都完全一致,器件类型为:Xilinx Virtex-EXCV100E一6BG352, 出于仅仅考察设计所消耗的寄存器和逻辑资源,Enable“Disable I/O Insertion”选项,不插 入IO,取消Synplify Pro中诸如“FSM Compiler”、“FSM Explorer'”、“Resource Sharing”、 “Retiming”、“Pipelining'”等综合优化选项。两次综合的结果如图3,图4所示。 Log Parameter rev 2 fhtpart Part zcv100ebg352-6 fhtpart 1/0 primitives Not Available fhtpart 1/0 Register bits 0 fhtpart Register bits (Non I 928 (38%) fhtpart Total Luts 1328(550 夫复用的T实现方案古用的资源。取消了所有综 合优化选项,并“Disable-I/0 Insertion”。 图1-3未采样复用方案的“tpart'”模块综合所消耗的资源 Log Parameter uch fht Part zcv100ebg352-6 wch fht I/0 primitives Not Available wch fht 1/0 Register bits 0 wch_tht Kegister bits (Non I 263 (10M ch_fht Total Luts 392(16 复用的T实现方案占用的资源。取消了所有综 合优化选项,并 “Disable I/0 Insertion”。 图1-4采样复用方案的“wch fht'”模块综合所消耗的资源 通过对比可以清晰的观察到,采样复用实现方案所占面积约为原方案的1/4,而得到这 个好处的代价是:完成整个FHT运算的周期为原来的4倍。这个例子通过运算周期的加 9 $*"+,70<!*"+,>*"+,( %*"+,70<*"+,2 *"+,( &*"+,70<*"+,> *"+,( *"+,70<"*"+,2!*"+,( *"+,70<"*"+,>!*"+,( *"+,70<#*"+,2*"+,( !*"+,70<#*"+,>*"+,( *"+,70<$*"+,2"*"+,( "*"+,70<$*"+,>"*"+,( ×ÒMsræ§ÑWÃ;nojk2) ./ r§ÑWÃ;<N8ÒO P!§GOPCQpRÛFSwTUV×f0.12 1302"&&3 W-456* s>>5X tjkJKw"lmno3.7h !7 8 8.! .iC6+Y I 8[j ./ 8Zh ih 31 ih! 9 .:i h.:ih..:i OP[C6!§GOP\L3 53 , t4! "5 /9 ", ;9</9 ræ,C]^!X0ü WÃ;_t.T×;_ ",Þ\0 $`#=#fÛãì$ 0×} , _!$'a0B