Domanda 1: Questa CPU con una frequenza di 100M può gestire solo il 70%, e andrà bene se si passa a una CPU con una frequenza di 200M.
Commento: La capacità di elaborazione del sistema comporta una varietà di fattori. Nel settore della comunicazione, il collo di bottiglia è generalmente nella memoria. Non importa quanto veloce sia la CPU, è inutile che l'accesso esterno non possa alzarsi.
Domanda 2: Se la CPU utilizza un CACHE più grande, dovrebbe essere più veloce
Commento: L'aumento di CACHE non porta necessariamente al miglioramento delle prestazioni del sistema. In alcuni casi, chiudere CACHE è più veloce che usare CACHE. Il motivo è che i dati trasferiti a CACHE devono essere riutilizzati molte volte per migliorare l'efficienza del sistema. Pertanto, nel sistema di comunicazione, generalmente solo l'istruzione CACHE è aperta. Anche se il CACHE dei dati è aperto, è limitato solo a una parte dello spazio di archiviazione, ad esempio la parte stack. Allo stesso tempo, la progettazione del programma deve anche tenere conto della capacità e della dimensione del blocco del CACHE, che coinvolge la lunghezza del corpo del loop del codice chiave e la gamma di salto. Se un loop è solo un po 'più grande del CACHE, e il loop viene ripetuto, sarà miserabile.
Domanda 3: Tante attività utilizzano interrupt o query? O dovrebbero interrompere più velocemente?
Commento: L'interruzione è in tempo reale, ma non necessariamente veloce. Se ci sono troppe attività interrotte, questo non esce, e poi viene uno dopo l'altro, e il sistema si blocca tra un po '. Se il numero di attività è grande ma molto frequente, molta dell'energia della CPU viene spesa per l'overhead di dentro e fuori dall'interrupt, e l'efficienza del sistema è estremamente bassa. Se si passa alla modalità query, l'efficienza può essere notevolmente migliorata, ma la query a volte non può soddisfare i requisiti in tempo reale, quindi il modo migliore è interrogare nell'interrupt, cioè, dopo aver inserito un interrupt, tutte le attività accumulate verranno elaborate e quindi uscite.
Domanda 4: La tempistica dell'interfaccia di memoria è la configurazione predefinita di fabbrica e non è necessario modificarla
Commento: I valori predefiniti delle impostazioni BSP per l'interfaccia di memoria sono tutti impostati secondo i parametri più conservativi. Nelle applicazioni reali, la frequenza di funzionamento del bus e il periodo di attesa dovrebbero essere combinati con parametri per una distribuzione ragionevole. A volte ridurre la frequenza può migliorare l'efficienza. Ad esempio, quando il ciclo di accesso RAM è 70ns e la frequenza bus è 40M, impostare il tempo di accesso di 3 cicli, cioè 75ns; se la frequenza del bus è 50M, deve essere impostata su 4 Cicli, il tempo di accesso effettivo è rallentato a 80ns.
Domanda 5: Se una CPU non può gestirla, basta utilizzare due elaborazioni distribuite e la potenza di elaborazione può essere raddoppiata
Commento: Per spostare mattoni, due persone dovrebbero essere due volte più efficienti di una; Per dipingere, un'altra persona può solo aiutare. Quante CPU utilizzare possono essere determinate solo dopo aver avuto maggiori conoscenze sul business. Cercate di ridurre il costo del coordinamento tra le due CPU, e rendere 1+1 il più vicino possibile a 2, e non essere mai inferiore a 1.
Domanda 6: Questa CPU ha un modulo DMA, deve essere più veloce usarlo per spostare i dati
Commento: Il vero DMA è avviare entrambi i dispositivi contemporaneamente dopo che l'hardware precede il bus, e leggere qua e là in un ciclo. Tuttavia, molti DMA incorporati nella CPU sono solo simulazioni. Prima di iniziare ogni DMA, un sacco di lavoro preparatorio (impostare l'indirizzo di partenza e la lunghezza, ecc.) deve essere fatto. Durante il trasferimento, la memorizzazione temporanea nel chip viene spesso letta prima e poi scritta. Vale a dire, ci vogliono due cicli di clock per spostare i dati una volta, che è più veloce del software per spostare (nessun recupero delle istruzioni, nessun lavoro extra come i salti di loop), ma se si sposta solo pochi byte alla volta, è ancora necessario fare un sacco di lavoro preparatorio. Generalmente, coinvolge anche chiamate di funzione, che non è efficiente. Pertanto, questo DMA è applicabile solo a blocchi di dati di grandi dimensioni.
Quanto sopra è un'introduzione alla valutazione e all'analisi dei problemi comuni di efficienza del sistema nella progettazione PCB. Ipcb è fornito anche ai produttori di PCB e alla tecnologia di produzione di PCB.