10 import fsm_utils
11
12 def run_test (f,Kb,bitspersymbol,K,channel,modulation,dimensionality,tot_constellation,N0,seed):
- 13 fg = gr.flow_graph ()
+ 13 tb = gr.top_block ()
14 L = len(channel)
15
16 # TX
37 va = trellis.viterbi_combined_s(f,K+L,0,0,dimensionality,tot_constellation,trellis.TRELLIS_EUCLIDEAN) # using viterbi_combined_s instead of metrics_f/viterbi_s allows larger packet lengths because metrics_f is complaining for not being able to allocate large buffers. This is due to the large f.O() in this application...
38 dst = gr.vector_sink_s()
39
- 40 fg.connect (src,mod)
- 41 fg.connect (mod,isi,(add,0))
- 42 fg.connect (noise,(add,1))
- 43 #fg.connect (add,metrics)
- 44 #fg.connect (metrics,va,dst)
- 45 fg.connect (add,skip,va,dst)
+ 40 tb.connect (src,mod)
+ 41 tb.connect (mod,isi,(add,0))
+ 42 tb.connect (noise,(add,1))
+ 43 #tb.connect (add,metrics)
+ 44 #tb.connect (metrics,va,dst)
+ 45 tb.connect (add,skip,va,dst)
46
- 47 fg.run()
+ 47 tb.run()
48
49 data = dst.data()
50 ntotal = len(data) - L