Informazioni sul servizio
TradottoSono un ingegnere hardware digitale, non un programmatore che scrive firmware nel tempo libero. Il mio lavoro vive all'interno delle FPGA: scrivo RTL sintetizzabile in Verilog e VHDL, costruisco macchine a stati finiti, pipeline e percorsi dati sincronizzati a centinaia di megahertz, e traccio ogni registro, ogni fronte di clock e ogni nanosecondo di margine temporale. Negli anni ho consegnato controller, interfacce ad alta velocità, catene DSP e acceleratori personalizzati per silicio Xilinx e Intel, e so bene: un progetto non è pronto quando semplicemente simula—è pronto quando la chiusura temporale è completata e si comporta sull'hardware reale esattamente come fa sullo schermo.
Di solito il lavoro inizia con la tua specifica tecnica, un diagramma a blocchi approssimativo, o semplicemente un compito che deve essere scaricato da un processore sovraccarico e spostato in logica dedicata. Trasformo tutto ciò in un'architettura pulita, lo suddivido in moduli sincronizzati e supporto ciascuno con banchi di prova auto-controllanti in modo che gli errori emergano in simulazione, non sul banco. Prendo sul serio la chiusura temporale: vincoli, attraversamenti di domini di clock, percorsi falsi e multi-ciclo sono gestiti deliberatamente, non lasciati indovinare agli strumenti. Quando la larghezza di banda è importante—parallelizzo e pipeline il percorso; quando l'area o la potenza sono importanti—cambio l'architettura e ti dico onestamente cosa comporta quel compromesso. Spiego in linguaggio chiaro ciò che è realisticamente raggiungibile all'interno del tuo budget di silicio, margine di frequenza e risorse, e fornisco codice sorgente leggibile e commentato sotto controllo versione insieme a forme d'onda e un breve rapporto, non un enigmatico bitstream. Che tu abbia bisogno di un modulo da rivedere, di un vecchio progetto riportato in vita, o di un intero blocco di accelerazione dall'idea alla scheda funzionante—guido RTL dall'inizio alla fine.
— Progettazione RTL in Verilog, SystemVerilog e VHDL
— Implementazione in FPGA Xilinx (Vivado) e Intel (Quartus)
— Banchi di prova auto-controllanti, simulazione e verifica funzionale
— Chiusura temporale, vincoli e attraversamenti di domini di clock
— Interfacce ad alta velocità, pipeline DSP e acceleratori personalizzati
— Revisione del codice, debug e recupero di HDL legacy
Di solito il lavoro inizia con la tua specifica tecnica, un diagramma a blocchi approssimativo, o semplicemente un compito che deve essere scaricato da un processore sovraccarico e spostato in logica dedicata. Trasformo tutto ciò in un'architettura pulita, lo suddivido in moduli sincronizzati e supporto ciascuno con banchi di prova auto-controllanti in modo che gli errori emergano in simulazione, non sul banco. Prendo sul serio la chiusura temporale: vincoli, attraversamenti di domini di clock, percorsi falsi e multi-ciclo sono gestiti deliberatamente, non lasciati indovinare agli strumenti. Quando la larghezza di banda è importante—parallelizzo e pipeline il percorso; quando l'area o la potenza sono importanti—cambio l'architettura e ti dico onestamente cosa comporta quel compromesso. Spiego in linguaggio chiaro ciò che è realisticamente raggiungibile all'interno del tuo budget di silicio, margine di frequenza e risorse, e fornisco codice sorgente leggibile e commentato sotto controllo versione insieme a forme d'onda e un breve rapporto, non un enigmatico bitstream. Che tu abbia bisogno di un modulo da rivedere, di un vecchio progetto riportato in vita, o di un intero blocco di accelerazione dall'idea alla scheda funzionante—guido RTL dall'inizio alla fine.
— Progettazione RTL in Verilog, SystemVerilog e VHDL
— Implementazione in FPGA Xilinx (Vivado) e Intel (Quartus)
— Banchi di prova auto-controllanti, simulazione e verifica funzionale
— Chiusura temporale, vincoli e attraversamenti di domini di clock
— Interfacce ad alta velocità, pipeline DSP e acceleratori personalizzati
— Revisione del codice, debug e recupero di HDL legacy