基于FPGA的掃頻信號源的研究與設計
2.2 相位累加器的設計
相位累加器由加法器和寄存器構成。加法器完成加法,寄存器將加法器的結果加以保存作為下一次相加用,周而復始直到加法器出現溢出。
在研究過程中,取相位累加器的輸出位數是32位,而對于“一次多位”的加法器來講,最長的延遲來自進位的脈沖通過所有階段的時候。目前已經采取了許多技術來縮短這一進位延遲,由于在老一代FPGA中沒有提供內部快速進位邏輯,可以通過跳躍進位、先行進位和進位選擇加法器來提高加法運算的速度,但是在現代FPGA系列中都具有特別快的“脈沖進位邏輯”,所以本設計采用進位流水線技術,這樣不但提高了累加器的運算速度,而且降低了設計復雜度。流水線技術是將一個算術操作分解成一些基本操作以達到提高工作速度的一種技術,因此流水線加法器可以作為提高加法器速度的首選。本設計將32位累加器分成4條流水線,每條流水線完成8位的加法運算,流水線的進位進行級聯。采用流水線結構可以提高器件的運算速度。
由于頻率控制字只在頻率控制字更新后的前4個周期變化,以后各個周期不再變化。基于這種情況,可以對累加器進行改進,從而節省部分存儲器。改進的流水線的結構圖及在FPGA中綜合結果如圖2所示。
當頻率控制字開始變化時,DDS控制器發送控制信號Start,開始輸出控制信號,第一個時鐘上升沿到來,將clk1置高,頻率控制字FSW的低8位寫入第一級流水線的寄存器,第二個時鐘上升沿到來,寫入FSW的次低8位,以此類推,第四個時鐘周期上升沿到來,完成數據輸入。在以后的周期內,這些數據將保持不變,直至下一次數據刷新。所以,此流水線設計不僅提高了速度,而且相對減少了寄存器的數量。在EP2C20中實現累加器,采用流水線累加器與傳統的累加器速度和資源比較如表1所示。
仿真結果表明,采用進位級聯的流水線技術,既能保證較高的資源利用率,又大幅度提高了系統性能和速度。
2.3 ROM壓縮算法
在設計中為節省ROM的空間,盡量節省芯片資源,通常累加器的寄存器輸出只有其高K位被用于頻率合成,其余的較低的N-K位則舍棄不用,這就是所謂的相位截斷。在實際應用中,還希望進一步節約ROM的占用,而ROM壓縮最簡單的方法是利用正弦信號的對稱性,利用一個象限的信號通過地址變換來表示全部的正弦信號。
電機保護器相關文章:電機保護器原理
評論