biquad iir 过滤
c166 家族 和 信号 处理 能力
半导体 组 4 的 9 ap1601 03.97
这个 应用 便条 地址 三 问题:
* 如何 做 这 处理器 store 这过滤 coefficients 和 状态 变量 在里面 它的
记忆 ?
* 如何 做 这 处理器 tackle 这 问题 的 寄存器 overflows?
* 如何 做 我们 执行 这 过滤 等式 tailored 至 这 能力 的 这 c166 家族 ?
这 algorithm 提交 假设 coefficients 和 变量 normalised 至 这 间隔 的 [
1,1) 各自 [8000h,7fffh]. 这个 描述 guarantees 那 这大多数重大的
位 也 包含 这 leading 部分 的 这 号码. 这 间隔 是 translated 至 这
相应的 16 位十六进制 描述 用 乘以 这 fractional 号码 用 32768
(8000h). afterwards 负的 号码 有 至 是 转变 至 它们的 2's complement.这个
描述 意思 那 这 16th位 indicates 这 sign 和 这 暗指 radix 要点 是
located 正确的 behind 这 sign 位. supposing 我们 执行 一个 signed multiplication 这 结果
将 是 一个 32 位 signed 号码 贮存 在 这 寄存器 一双 的 这 乘以 和 分隔 单位,
mdl 和 mdh. 之后 这 multiplication 有 被 executed 这 暗指 radix 要点 将 是
located 在 位 14 和 13 的 这MDH寄存器. 在 顺序 至 调整 这 imaginary radix
要点 又一次 正确的 behind 这 sign 位 一个 变换 left 是 需要.
在 contrast, 增加 说明 为 accumulating 这 结果 做 不 影响 这 format 但是
注意 有 至 是 paid 至 寄存器 overflows. examining 这 overflow 问题 我们 看 那
二 coefficients是 积极的 和二是 负的 hence 这最大overflow 将
仅有的 数量 至 一个 位. 如果 我们 suspend 这 变换 left 至 调整 这 radix 要点 till 所有
multiplication 结果 有 被 accumulated, 我们 won't lose 这大多数重大的 位
因为 它 是 贮存 在 位 30.