Table of Contents
In questi ambienti con controllo delle risorse, l'efficienza dei filtri digitali influisce direttamente sulle prestazioni in tempo reale, sul consumo di energia e sulla redditività del sistema. Tra i numerosi parametri di progettazione gli ingegneri devono bilanciare, l'ordine dei filtri si distingue come una leva critica, che influenza il carico computazionale in modi profondi. Capire questo rapporto è essenziale per la costruzione di sistemi di embing ad alte prestazioni.
Comprensione dell'ordine del filtro
L'ordine del filtro è una proprietà fondamentale dei filtri digitali che determina il numero di precedenti campioni di input (e, nel caso di filtri di risposta a impulsi infiniti (IIR), precedenti campioni di output) utilizzati per calcolare ogni campione di uscita. Per un filtro di risposta a impulsi finito (FIR), l'ordine corrisponde al numero di rubinetti meno uno.
I filtri di ordine superiore generalmente forniscono bande di transizione più ripide, più strette e una migliore attenuazione della banda di arresto. Ciò li rende desiderabili per applicazioni che richiedono una precisa separazione della frequenza, come la equalizzazione audio o la selezione dei canali di comunicazione. Tuttavia, ogni aumento dell'ordine viene a un costo — ulteriori operazioni matematiche per campione, requisiti di memoria aggiunti e una maggiore latenza del sistema.
Ciò che costituisce il carico computazionale nei sistemi incorporati
Il carico computazionale in un contesto di elaborazione del segnale incorporato si riferisce alle risorse di elaborazione totale necessarie per eseguire l'algoritmo del filtro all'interno dei vincoli di temporizzazione del dispositivo.
- Millions of Istruzioni per Secondo (MIPS) — il throughput della CPU necessario.
- La larghezza di banda di memoria[[] — quanti dati devono essere recuperati da RAM o cache per campione.
- Consumi di potenza] — direttamente proporzionale al numero di operazioni effettuate.
- Latency] — il tempo dal campionamento di input alla disponibilità di output.
In dispositivi incorporati alimentati a batteria, ogni operazione extra drena riserve energetiche limitate. Pertanto, selezionare un ordine filtrante che è inutilmente alto può degradare la durata della batteria e potenzialmente causare il sistema di perdere le scadenze in tempo reale. Al contrario, un ordine che è troppo basso potrebbe non sopprimere il rumore o le interferenze, compromettendo la qualità del segnale e la funzionalità del sistema.
Come filtro Ordine Affetti direttamente carico computazionale
Per la maggior parte dei filtri invarianti lineari, il carico computazionale scala approssimativamente lineare con l'ordine del filtro, anche se il rapporto esatto dipende dall'architettura e dall'implementazione del filtro.
Filtri FIR: Scala lineare diretta
Per un filtro di tempo standard, il filtro FIR richiede un'operazione di campionamento a più livelli (MAC) per un filtro di ordinazione N] (che significa che i microprocessori acustici N+1]) i flussi di campionamento a doppio punto per l'accesso alla memoria.
Filtri IIR: Più complesso ma più basso ordine per prestazioni simili
I filtri IIR raggiungono una selettività simile a quella dei filtri FIR. Un biquad IIR di secondo ordine, ad esempio, può fornire un roll-off che richiederebbe un FIR di 10 o 20 ° ordine. Un filtro IIR di ordine M richiede tipicamente 2]] M fase di elaborazione dei cicli per campione
Il carico computazionale per i filtri IIR non si scala esattamente in linea con l'ordine perché i coefficienti di feedback sono spesso raggruppati in SOS (sezioni di secondo ordine) per la stabilità. Ogni sezione aggiunge circa cinque MAC (per una struttura di forma diretta recepita II), quindi un IIR di 10 ° ordine (cinque biquad) richiede circa 25 MAC per campione - significativamente meno di un'attenuazione di carico FIR di 32nd-order ancora necessario per raggiungere una simile di arresto di arresto.
Effetti non lineari dell'ordine del filtro sul carico
Mentre le scale aritmetiche grezze si pongono in modo lineare, altri fattori possono introdurre non linearità nel carico computazionale effettivo. Ad esempio, i filtri di ordine superiore richiedono più coefficienti da recuperare dalla memoria. Se l'ordine del filtro supera la capacità della cache dei dati della CPU, i tempi di accesso alla memoria possono dominare, causando un aumento super-lineare del tempo di esecuzione generale.
Sconti in Selezione Ordine Filtro
Gli ingegneri devono valutare i requisiti del sistema in modo olistico per scegliere un appropriato ordine del filtro. Il trade-off primario è tra le prestazioni del filtro (selettività, ondulazione del passband, attenuazione della stopband) e il consumo di risorse (ciclo CPU, memoria, potenza).
Requisiti di prestazione vs. Resource Budget
Le applicazioni come il monitoraggio ECG di livello medico richiedono un'attenuazione estremamente elevata (ad esempio, >80 dB) per eliminare le interferenze di linea di potenza (50/60 Hz). Raggiungere questo con un filtro a singolo stadio richiede spesso un ordine elevato. Una soluzione comune è quella di cascata più filtri di ordine inferiore o utilizzare un filtro di notch in serie con un filtro a basso passaggio, riducendo l'ordine complessivo richiesto per il ricevitore di filtro principale.
Constrati di resistenza
In loop di controllo in tempo reale, come quelli in motori o cancellazione attiva del rumore — la latenza eccessiva può destabilizzare il sistema. I filtri FIR hanno un ritardo costante di gruppo pari alla metà dell'ordine del filtro (in campioni), mentre i filtri IIR mostrano una risposta di fase non lineare che può introdurre la distorsione.
Stampa di memoria
Per un filtro FIR di ordine N], la scala di archiviazione del coefficiente è linearmente, ma la linea di ritardo contiene anche N + 1 campioni. Su un microcontrollore con 64 KB di RAM, un filtro di 824th-order consuma 4,096 byte per il galleggiamento
Rumore e quantizzazione coefficiente
Gli ordini di filtro più elevati aumentano la sensibilità alla quantizzazione dei coefficienti, potenzialmente degradanti le prestazioni del filtro a meno che non sia utilizzata una maggiore precisione. Per i filtri FIR, la quantizzazione dei coefficienti tende a introdurre un pavimento di rumore relativamente uniforme che aumenta con l'ordine dei filtri, perché più rubinetti contribuiscono a ogni uscita.
Strategie di ottimizzazione per la gestione dell'ordine dei filtri
Comprendere il rapporto tra ordine del filtro e carico computazionale consente agli ingegneri di impiegare tecniche che riducono il peso preservando la qualità del segnale.
Filtro e Decimazione multirate
Quando si elaborano segnali ad alto livello di campionamento, filtrare al tasso originale può imporre un carico computazionale enorme. Decidere il segnale prima di filtrare - e interpolare in seguito - permette un filtro di ordine inferiore per lavorare ad una frequenza di campionamento ridotta. Ad esempio, un filtro antialiasing con un cutoff di 1 Hz che funziona su una frequenza di campionamento originale di 1 kHz potrebbe richiedere un ordine elevato.
Decomposizione polifase
Per i filtri FIR, la decomposizione polifase divide il filtro in più fasi parallele che operano a tassi più bassi. Questo approccio consente l'efficace ordine del filtro di rimanere alto riducendo il tasso aritmetico per fase. I filtri polifasi sono particolarmente efficienti nei decimatori e negli interpolatori, dove solo una fase del filtro deve essere calcolata per campione di uscita.
Accelerazione del punto fisso e dell'hardware
I moderni circuiti integrati specifici per applicazioni (ASIC) e i processori di segnale digitali (DSP) includono unità MAC hardware che eseguono moltiplica-accumulano in un unico ciclo. Utilizzando questi acceleratori, anche i filtri di alto ordine (ad esempio, FIR di 256 ° ordine) diventano possibili a velocità di campione moderate.
Utilizzo e simmetria coefficienti
I filtri lineari-fase FIR hanno coefficienti simmetrici. Sfruttando questa simmetria aggiungendo due campioni prima di moltiplicare metà del numero di moltiplicazioni. Per un FIR lineare-fase di ordine uniforme, il numero di moltiplicazioni è approssimativamente ] N]] / 2+1 invece di alterazioni]N
Esempi pratici attraverso i domini delle applicazioni
Dispositivi biomedici
Il campione di frequenza di calcolo di tipo HG è più accettabile per il rilevamento di un valore di 20 Hz (per esempio, in fase di elaborazione di un secondo ordine), mentre per i giorni si utilizza un filtro di frequenza di 50 Hz (spesso un biquad di secondo ordine IIR) seguito da un filtro di basso passaggio con un cutoff di 40 Hz (per esempio, fase di 4th-order Butterworth IIR).
Lavorazione audio
In apparecchi acustici, i filtri multipli sono in grado di modellare la risposta di frequenza secondo l'audiogramma di un paziente. Con un massimo di 16 o 24 canali, ogni canale può utilizzare un filtro IIR da 6 a 12 ° ordine. Il carico computazionale totale può superare 200 MAC per campione quando l'audio viene campione a 16 kHz. Per mantenere il consumo energetico sotto 1 mW, i chip DSP incorporano un acceleratore di banca di filtro dedicato che calcola più volte.
Radio finanziata dal software
Nei ricevitori SLT, i filtri di selettività dei canali richiedono spesso un rifiuto a banda larga molto alta (~100 dB) e delle bande di transizione taglienti. Un filtro FIR singolo per raggiungere questo a banda base potrebbe avere un ordine di diverse centinaia a migliaia, a seconda della velocità del campione.
Controllo motore industriale
I controllori del motore utilizzano filtri a basso passaggio sui segnali di feedback correnti e veloci per eliminare la modulazione della larghezza di impulso (PWM) increspatura. L'ordine del filtro deve essere abbastanza basso per mantenere il ritardo di fase all'interno dei margini di stabilità - tipicamente un filtro di 1 °- o 2 °-ordine.
Direzioni future: Filtri Adaptive e Apprendimento Della Macchina
Poiché i dispositivi incorporati diventano più intelligenti, i filtri adattativi che regolano i loro coefficienti in tempo reale stanno guadagnando la trazione. Questi filtri, come le famiglie LMS o meno quadrati ricorsivi (RLS), hanno carichi computazionali che crescono quadraticamente con l'ordine del filtro nel caso di RLS. Per molte applicazioni integrate, l'ordine di un filtro adattativo è mantenuto basso (4 a 32) per mantenere i modelli di calcolo ad alta efficienza di aggiornamento fattibile per le reti di accelerazione Emerural
Un'altra tendenza è l'utilizzo di machine learning per selezionare automaticamente gli ordini di filtraggio ottimali per le condizioni di segnale, bilanciando le prestazioni e il carico.Questo approccio può ridurre lo sforzo di ingegneria e consentire ai dispositivi di adattare la loro potenza di elaborazione in base alla capacità della batteria disponibile.
Conclusioni
L'effetto dell'ordine del filtro sul carico computazionale nei dispositivi di elaborazione del segnale incorporato è una sfida di ingegneria multiforme. Mentre gli ordini più alti migliorano la selettività della frequenza, aumentano proporzionalmente le operazioni aritmetiche, l'uso della memoria, la latenza e il consumo di energia. La scelta tra FIR e IIR topologie ulteriormente complica il rapporto, come fanno le gerarchie della memoria, gli effetti di quantizzazione e l'accelerazione dell'ottimizzazione dell'hardware.