在各種應用及領域中,有非常多的機會去使用到線性回授移位暫存器(Linear Feedback Shift Registers, LFSR) 。例如近似的隨機亂數序列PRBS (Pseudo Random Bit Sequence)、CRC (Cyclic Redundancy Check)的計算?最長序列(MLS)的產生,另外還有擾頻器(Scrambler) /解擾器(Descrambler)等等。
LFSR主要實作分為二種架構,因抽頭回授的位元而有所不同,分別為Fibonacci (圖一)及Galois (圖二)。一般使用上,或許會認為使用軟體(Software)的方式來實現即可。這是非常普遍的作法,並不需要大費周張去尋求特別的實現方法,但是卻忽略掉使用軟體方式來實現時,有可能因為中斷 (INT)的發生? 程式碼的分岐(Branch, Jump) 而造成LFSR輸出信號的不穩定、以及發生跳動(Jitter)的現象。
圖一 : Fibonacci LFSR Galois LFSR |
|
同時也因為是由軟體來控制LFSR , 所以也不能減少CPU的負載,也因為軟體 程式必須一直執行,所以無法減低功耗。因此使用Microchip CIP (Core Independent Peripherals}所提供CLC (Configurable Logic Cell)再加上CCP (PWM) with Timer的功能,即可非常容易的用純硬體架構來實現LFSR功能,解決當應用場合非常注重高速信號、Jitter及功耗的情況。
...
...
使用者別 |
新聞閱讀限制 |
文章閱讀限制 |
出版品優惠 |
一般訪客 |
10則/每30天 |
5/則/每30天 |
付費下載 |
VIP會員 |
無限制 |
20則/每30天 |
付費下載 |