IIR изпълнение в CPLD

V

vaf20

Guest
Здравейте всички мои приятели
Бих искал да се прилагат следните просто един филтър за IIR в xc95108.
H (Z) = Y / Х = К * (AZ 1) / (BZ 1)
където Х е 8 бита, както и въвеждане на ДА като output.also, К, А и Б, се въвеждат с 8 бита ширина.
може ли някой да ми каже кои-нов-алгоритъм мога да използвам за успех, за да прилагат?
всяка идея!
Tnx

 
Здрасти,
Може би не съм прав, но тя изглежда като

просто часовник на сигнала:
Y <= K * A / B;
но това изглежда по-скоро като H (Z 1) = К * (AZ / BZ) за мен!

BR,
/ Фархад

 
в случай на H (Z) Искам да кажа едно типично трансформира function.suppose прост и първият филтър за IIR с нула на 1 / един и полюс на 1 / б.
всичко нали?
Tnx

 
Здрасти,

Конвергенция Ур функция трансфер до разликата уравнение
H (Z) = Y / Х = К * (AZ 1) / (BZ 1)

-> Разлика екв.
Y [N] = (1 / B) * (K * A * X [N] X [N-1] - Y [N-1]);

Вие може да реализира този в Verilog.
Съжалявам, но трябва вход, за да видите този прикачен файл

 
U като знаят, че там не е множител в CPLD и включват чистата логика.
U разлика от уравнението са посочени същите множител и аз мисля, същата логика-за разлика от моя прехвърля function.am нали?така мисля, че не може да спаси района!ОК?
никаква помощ ...
Tnx моя приятел

 
Здрасти,
Да си същите като Ур функция унес.Още едно нещо да се отбележи, тук ..
Можете да проектирате Ур coefficeint да бъдат умножени по-малко от 1.Виз 0,5 = 1 / 2,
0,25 = 1 / 4 0,625 = 1 / 8 .....
така, че вместо да можете да използвате множител операция смяна.

Можете да се отнасят до следните книга ...
Цифрова обработка на сигнали с полеви Programmable Gate Arrays
от U. Meyer-Baese

Нейната да намерите тук в този форум!

-nand_gates

 
HI Vaf,
В 95108 не разполага с достатъчен Macrocells продукт и най-важното условие за справяне с този проблем.

Можете да го решим, като промените настройките algorithem в pipelined код, и използването на външна памет за съхраняване на константи, създаване на държавна машина, която е вашето изчисление само с един коефициент и една ехидна.

Вие може би в състояние да го направи, без памет, но тя се нуждае от много мислене преди ръка.

Първо, създаване на блок за да се размножава 2 8 битови стойности.И един да направи добавка.

Създаване на държавна машина да има достатъчно мерки, за да направи вашето изчисление една стъпка в момент, като се използва ехидна и мултипликатор блокове.

Например, ако искате да направите аа * B - C * D E

Ти направи 5-членки за изчисление, минус, може да се борави с отричат в резултат на операцията.

Все още не съм убеден, че това може да се направи във вътрешността на 95108, но това ще бъде добра практика да го поправим, това е интересно предизвикателство да оптимизирате дизайна до най-малката възможна ТВ.

Успех,
/ Фархад

 
Здравейте отново
Съжалявам за края на моя отговор!
Знае ли някой, който да се използва алгоритъм за изпълнение на синтезатор с "*" (множител), ако го оставите free.or дори " " (ехидна)?
Бих искал да знам какъв е минималният праг за изпълнение в случай на площ за оптимизация?
Tnx 4 Ур помощ

 
има ли някакъв метод, който се нарича сериен IIR филтър? ако е така, да ме уведомите.
Tnx

 

Welcome to EDABoard.com

Sponsor

Back
Top