Skip to content
This repository was archived by the owner on Feb 2, 2021. It is now read-only.

Commit b9006b5

Browse files
author
Tim Harder
committed
Filter Wizard: use HB values from cook_input for design functions
Signed-off-by: Tim Harder <timothy.harder@analog.com>
1 parent 30070b0 commit b9006b5

File tree

4 files changed

+48
-143
lines changed

4 files changed

+48
-143
lines changed

AD9361_Filter_Wizard/internal_designrxfilters9361_sinc.m

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,18 @@
130130
Hm4.CoeffWordLength = 16;
131131
end
132132

133-
[hb1, hb2, hb3, dec3] = setrxhb9361(input.HB_interp);
133+
hb1 = input.HB1;
134+
hb2 = input.HB2;
135+
if input.HB3 == 2
136+
hb3 = 2;
137+
dec3 = 1;
138+
elseif input.HB3 == 3
139+
hb3 = 1;
140+
dec3 = 3;
141+
else
142+
hb3=1;
143+
dec3=1;
144+
end
134145

135146
% convert the enables into a string
136147
enables = strrep(num2str([hb1 hb2 hb3 dec3]), ' ', '');
@@ -139,8 +150,14 @@
139150
Filter1 = 1;
140151
case '2111' % Hb1
141152
Filter1 = Hm1;
153+
case '1211' % Hb2
154+
Filter1 = Hm1;
155+
case '1121' % Hb3
156+
Filter1 = Hm1;
142157
case '2211' % Hb2,Hb1
143158
Filter1 = cascade(Hm2,Hm1);
159+
case '2121' % Hb3,Hb1
160+
Filter1 = cascade(Hm3,Hm1);
144161
case '2221' % Hb3,Hb2,Hb1
145162
Filter1 = cascade(Hm3,Hm2,Hm1);
146163
case '1113' % Dec3
@@ -149,6 +166,10 @@
149166
Filter1 = cascade(Hm4,Hm1);
150167
case '2213' % Dec3,Hb2,Hb1
151168
Filter1 = cascade(Hm4,Hm2,Hm1);
169+
case '1221' % Hb3,Hb2
170+
Filter1 = cascade(Hm3,Hm2);
171+
case '1213' % Dec3,Hb2
172+
Filter1 = cascade(Hm4,Hm2);
152173
otherwise
153174
error('ddcresponse:IllegalOption', 'At least one of the stages must be there.')
154175
end
@@ -378,8 +399,8 @@
378399

379400
tohw.RXSAMP = input.data_rate;
380401
tohw.RF = input.data_rate * input.FIR_interp;
381-
tohw.R1 = tohw.RF * hb1;
382-
tohw.R2 = tohw.R1 * hb2;
402+
tohw.R1 = tohw.RF * input.HB1;
403+
tohw.R2 = tohw.R1 * input.HB2;
383404
tohw.ADC = input.converter_rate;
384405
tohw.BBPLL = input.clkPLL;
385406
tohw.Coefficient = rfirtaps;

AD9361_Filter_Wizard/internal_designtxfilters9361_sinc.m

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -131,8 +131,18 @@
131131
Hm4.CoeffWordLength = 16;
132132
end
133133

134-
% pick up the right combination
135-
[hb1, hb2, hb3, int3] = settxhb9361(input.HB_interp);
134+
hb1 = input.HB1;
135+
hb2 = input.HB2;
136+
if input.HB3 == 2
137+
hb3 = 2;
138+
int3 = 1;
139+
elseif input.HB3 == 3
140+
hb3 = 1;
141+
int3 = 3;
142+
else
143+
hb3=1;
144+
int3=1;
145+
end
136146

137147
% convert the enables into a string
138148
enables = strrep(num2str([hb1 hb2 hb3 int3]), ' ', '');
@@ -141,8 +151,18 @@
141151
Filter1 = 1;
142152
case '2111' % Hb1
143153
Filter1 = Hm1;
154+
case '1211' % Hb2
155+
Filter1 = Hm2;
156+
case '1213' % Hb2,Int3
157+
Filter1 = cascade(Hm2,Hm4);
158+
case '1121' % Hb3
159+
Filter1 = Hm3;
160+
case '1221' % Hb2,Hb3
161+
Filter1 = cascade(Hm2,Hm3);
144162
case '2211' % Hb1,Hb2
145163
Filter1 = cascade(Hm1,Hm2);
164+
case '2121' % Hb1,Hb3
165+
Filter1 = cascade(Hm1,Hm3);
146166
case '2221' % Hb1,Hb2,Hb3
147167
Filter1 = cascade(Hm1,Hm2,Hm3);
148168
case '1113' % Int3
@@ -411,8 +431,8 @@
411431

412432
tohw.TXSAMP = input.data_rate;
413433
tohw.TF = input.data_rate * input.FIR_interp;
414-
tohw.T1 = tohw.TF * hb1;
415-
tohw.T2 = tohw.T1 * hb2;
434+
tohw.T1 = tohw.TF * input.HB1;
435+
tohw.T2 = tohw.T1 * input.HB2;
416436
tohw.DAC = input.converter_rate;
417437
tohw.BBPLL = input.clkPLL;
418438
tohw.Coefficient = tfirtaps;

AD9361_Filter_Wizard/setrxhb9361.m

Lines changed: 0 additions & 68 deletions
This file was deleted.

AD9361_Filter_Wizard/settxhb9361.m

Lines changed: 0 additions & 68 deletions
This file was deleted.

0 commit comments

Comments
 (0)