999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

兩種利用FPGA產生m序列的算法分析

2014-03-12 18:17:49陳天成王艷紅
現代電子技術 2014年5期

陳天成 王艷紅

摘 要: 為了產生性能良好且節省硬件資源的m序列,分別提出了基于現場可編程門陣列(FPGA)的邏輯法和核調用法兩種算法,并詳細介紹了兩種算法的實現步驟。通過在Xilinx公司的NEXYS3開發板上進行設計和編程,對兩種算法的可行性進行了檢測;并結合ISE編程軟件的仿真功能和Matlab對算法的自相關性、硬件占用率和實現難度等性能進行了分析。最終,了解到核調用法在m序列產生中的優越性。

關鍵詞: m序列; FPGA; IP核; ISE

中圖分類號: TN919?34 文獻標識碼: A 文章編號: 1004?373X(2014)05?0058?03

0 引 言

偽隨機序列作為一種信號形式,具有良好的相關特性和偽隨機性,可應用于擴頻通信和信號加密等領域。根據應用場合的不同,可以將偽隨機序列設計成具有不同特性的序列,其中,m序列便是應用最廣泛的一種偽隨機序列[1?2]。

m序列是最長線性反饋移位寄存器序列的簡稱,由[N]級移位寄存器和模二加法器產生。對于一個[N]級移位寄存器來說,最多可以有[2N]個狀態。由于全“0”狀態不會轉入其他狀態,所以線性移位寄存器的序列的最長周期為 [2N-1。]當[N]級線性移位寄存器產生的序列[{ai}]的周期為[T=2N-1]時,稱[{ai}]為[N]級m序列[3]。

本文采用Xilinx公司的spartan?6開發板來產生m序列。FPGA因其高速的計算速度和簡便的編譯步驟被越來越廣泛的應用于數字信號處理領域。Spartan?6自帶100 MHz內部晶振,最高可以提供高達300 MHz的運算速度。

1 m序列的實現算法

1.1 邏輯法

程序的移位寄存器功能模擬部分,根據特征方程,將序列Seq_r的第0、2、3和4位對應數值進行模二運算并將結果作為新的數據輸入寄存器的高位。此處應避免初始狀態為全零[4]。

程序的m序列輸出部分,在每個時鐘的上升沿提取Seq_r序列的第0位進行輸出,產生的Seq序列即為m序列。

1.2 核調用法

Xilinx芯片配套的ISE編程軟件提供了集成的移位寄存器IP核供使用者調用。IP核具有使用方便、操作簡單、節省資源等優點。核調用法利用ISE編程軟件提供的移位寄存器IP核進行設計,使用者可將IP核視為黑匣子,僅僅通過對其端口進行定義便可實現m序列的產生。

完成對IP核參數的設置后,在頂層文件中對IP核進行聲明,將高位的輸出信號輸入低位的輸入端,并取第2,3,4和8位寄存器的輸出值進行模二運算,將結果輸入第8位寄存器的輸入端。將程序編譯后,即可在FPGA上實現對m序列的生成。

2 m序列的性能分析

2.1 算法可行性驗證

為了驗證算法的可行性,確定兩種算法是否能夠產生滿足特征方程的序列,需要對m序列波形進行觀察。Xilinx對應的編程軟件ISE可以利用軟件自帶的應用工具ChipScope對產生的波形進行檢測。利用邏輯法和核調用法產生的m序列波形如圖1所示。

圖1中,clk_r為時鐘信號,是頻率固定的方波,程序在clk_r的上升沿進行運算。seq_r_r為算法產生的m序列,由圖1可以看出,兩種算法所產生的m序列波形相同,且在短時間內可視為隨機序列。經過檢測,確定兩種算法皆能實現m序列的產生。

2.2 算法性能分析

m序列常常作為擴頻序列應用于擴頻通信中。擴頻通信對擴頻序列一般有如下要求:尖銳的自相關特性;足夠多的序列數;序列均衡性好;工程上易實現[7]。

在m序列的一個周期中,“1”的個數比“0”的個數值多一個。這表明,序列平均值很小,具有良好的均衡性。為了檢測序列的自相關性,可以結合Matlab中的xcorr函數和plot函數繪制序列的自相關函數圖像[8?9]。Matlab生成的自相關函數的坐標如圖2所示。

由圖2可知,m序列的自相關性十分尖銳,可以應用于擴頻通信。

3 兩種算法的優劣比較

3.1 硬件資源占用

FPGA的硬件資源是有限的,雖然隨著科技的進步,芯片中集成的門數已經高達500萬門以上,但程序的復雜程度也與日俱增,導致硬件資源供不應求的情況時有發生。m序列常常作為整體程序的一部分出現,如果占用太多資源會導致程序的整體功能難以實現。因此,兩種算法硬件資源的占用量是考量算法優劣的重要指標。

編程軟件ISE會在程序編譯結束時自動生成程序占用硬件資源的數據,其中Slice Registers和Slice LUTs分別表示芯片中的兩種主要硬件資源,通過對比表1列出的資源占用情況可以了解兩種算法在資源占用上的優劣[5]。

通過分析數據可得,雖然兩種算法的資源占用率數值相近,但隨著m序列特征方程階數的增加,程序所占用的資源會越來越多,兩種算法在資源占用上的差距也會增大。可見兩種算法中,核調用法在兩種主要資源的占用上都小于邏輯法。因而,在實現高階m序列時,核調用法更具優勢。

3.2 實現的難易度

FPGA以其強大的功能被越來越多的應用于實現極為復雜的程序,在保證性能滿足要求的基礎上,如何降低開發難度,縮短開發周期也是考量算法優劣的又一重要因素。

IP核是ISE軟件已經集成好的程序模塊,經過優化,使得其中的程序性能更加優越。而且在生成IP核時只需要對參數進行修改即可,其中各參數的功用可以在IP核提供的DataSheet文檔中查看,因此利用IP核可以最大限度的縮短程序開發所需的時間。

相對而言,邏輯法需要在邏輯層面進行描述,需要花費較多的時間。

4 結 語

經過以上的論證,可得在利用FPGA進行算法實現時,充分利用軟件自帶的IP核不但能節省硬件資源,更能極大的縮短開發周期,降低算法實現的難度。本文提供的兩種算法皆能產生性能良好的m序列,但核調用法更加節省資源,并且在開發難度上相比于邏輯法更簡單快捷,在縮短開發周期,降低開發成本上更有優勢。

參考文獻

[1] 王昆,陳昕智.m序列產生和性能的Matlab仿真[J].水利電力機械,2007,29(12):170?171.

[2] 張雪峰,范九倫.基于線性反饋移位寄存器和混沌系統的偽隨機序列生成方法[J].物理學報,2010,59(4):2289?2297.

[3] 樊昌信,曹麗娜.通信原理[M].6版.北京:國防工業出版社,2009.

[4] 段穎妮.基于FPGA的m序列發生器實現[J].電子元器件應用,2009,11(7):45?47.

[5] 何賓.Xilinx FPGA設計權威指南[M].北京:清華大學出版社,2012.

[6] 田耘,胡彬,徐文波,等.ISE Design Suite 10.x[M].北京:人民郵電出版社,2008.

[7] 陳海龍,李宏.基于Matlab的偽隨機序列的產生和分析[J].計算機仿真,2005,22(5):98?100.

[8] 吳盼望,張善從.基于移位寄存器的偽隨機序列改進算法[J].計算機工程,2012,38(18):265?267.

[9] 馬根,孫浩茗,孫靜.自編碼擴頻序列的性能研究[J].山東輕工業學院學報:自然科學版,2008,22(3):72?74.

摘 要: 為了產生性能良好且節省硬件資源的m序列,分別提出了基于現場可編程門陣列(FPGA)的邏輯法和核調用法兩種算法,并詳細介紹了兩種算法的實現步驟。通過在Xilinx公司的NEXYS3開發板上進行設計和編程,對兩種算法的可行性進行了檢測;并結合ISE編程軟件的仿真功能和Matlab對算法的自相關性、硬件占用率和實現難度等性能進行了分析。最終,了解到核調用法在m序列產生中的優越性。

關鍵詞: m序列; FPGA; IP核; ISE

中圖分類號: TN919?34 文獻標識碼: A 文章編號: 1004?373X(2014)05?0058?03

0 引 言

偽隨機序列作為一種信號形式,具有良好的相關特性和偽隨機性,可應用于擴頻通信和信號加密等領域。根據應用場合的不同,可以將偽隨機序列設計成具有不同特性的序列,其中,m序列便是應用最廣泛的一種偽隨機序列[1?2]。

m序列是最長線性反饋移位寄存器序列的簡稱,由[N]級移位寄存器和模二加法器產生。對于一個[N]級移位寄存器來說,最多可以有[2N]個狀態。由于全“0”狀態不會轉入其他狀態,所以線性移位寄存器的序列的最長周期為 [2N-1。]當[N]級線性移位寄存器產生的序列[{ai}]的周期為[T=2N-1]時,稱[{ai}]為[N]級m序列[3]。

本文采用Xilinx公司的spartan?6開發板來產生m序列。FPGA因其高速的計算速度和簡便的編譯步驟被越來越廣泛的應用于數字信號處理領域。Spartan?6自帶100 MHz內部晶振,最高可以提供高達300 MHz的運算速度。

1 m序列的實現算法

1.1 邏輯法

程序的移位寄存器功能模擬部分,根據特征方程,將序列Seq_r的第0、2、3和4位對應數值進行模二運算并將結果作為新的數據輸入寄存器的高位。此處應避免初始狀態為全零[4]。

程序的m序列輸出部分,在每個時鐘的上升沿提取Seq_r序列的第0位進行輸出,產生的Seq序列即為m序列。

1.2 核調用法

Xilinx芯片配套的ISE編程軟件提供了集成的移位寄存器IP核供使用者調用。IP核具有使用方便、操作簡單、節省資源等優點。核調用法利用ISE編程軟件提供的移位寄存器IP核進行設計,使用者可將IP核視為黑匣子,僅僅通過對其端口進行定義便可實現m序列的產生。

完成對IP核參數的設置后,在頂層文件中對IP核進行聲明,將高位的輸出信號輸入低位的輸入端,并取第2,3,4和8位寄存器的輸出值進行模二運算,將結果輸入第8位寄存器的輸入端。將程序編譯后,即可在FPGA上實現對m序列的生成。

2 m序列的性能分析

2.1 算法可行性驗證

為了驗證算法的可行性,確定兩種算法是否能夠產生滿足特征方程的序列,需要對m序列波形進行觀察。Xilinx對應的編程軟件ISE可以利用軟件自帶的應用工具ChipScope對產生的波形進行檢測。利用邏輯法和核調用法產生的m序列波形如圖1所示。

圖1中,clk_r為時鐘信號,是頻率固定的方波,程序在clk_r的上升沿進行運算。seq_r_r為算法產生的m序列,由圖1可以看出,兩種算法所產生的m序列波形相同,且在短時間內可視為隨機序列。經過檢測,確定兩種算法皆能實現m序列的產生。

2.2 算法性能分析

m序列常常作為擴頻序列應用于擴頻通信中。擴頻通信對擴頻序列一般有如下要求:尖銳的自相關特性;足夠多的序列數;序列均衡性好;工程上易實現[7]。

在m序列的一個周期中,“1”的個數比“0”的個數值多一個。這表明,序列平均值很小,具有良好的均衡性。為了檢測序列的自相關性,可以結合Matlab中的xcorr函數和plot函數繪制序列的自相關函數圖像[8?9]。Matlab生成的自相關函數的坐標如圖2所示。

由圖2可知,m序列的自相關性十分尖銳,可以應用于擴頻通信。

3 兩種算法的優劣比較

3.1 硬件資源占用

FPGA的硬件資源是有限的,雖然隨著科技的進步,芯片中集成的門數已經高達500萬門以上,但程序的復雜程度也與日俱增,導致硬件資源供不應求的情況時有發生。m序列常常作為整體程序的一部分出現,如果占用太多資源會導致程序的整體功能難以實現。因此,兩種算法硬件資源的占用量是考量算法優劣的重要指標。

編程軟件ISE會在程序編譯結束時自動生成程序占用硬件資源的數據,其中Slice Registers和Slice LUTs分別表示芯片中的兩種主要硬件資源,通過對比表1列出的資源占用情況可以了解兩種算法在資源占用上的優劣[5]。

通過分析數據可得,雖然兩種算法的資源占用率數值相近,但隨著m序列特征方程階數的增加,程序所占用的資源會越來越多,兩種算法在資源占用上的差距也會增大。可見兩種算法中,核調用法在兩種主要資源的占用上都小于邏輯法。因而,在實現高階m序列時,核調用法更具優勢。

3.2 實現的難易度

FPGA以其強大的功能被越來越多的應用于實現極為復雜的程序,在保證性能滿足要求的基礎上,如何降低開發難度,縮短開發周期也是考量算法優劣的又一重要因素。

IP核是ISE軟件已經集成好的程序模塊,經過優化,使得其中的程序性能更加優越。而且在生成IP核時只需要對參數進行修改即可,其中各參數的功用可以在IP核提供的DataSheet文檔中查看,因此利用IP核可以最大限度的縮短程序開發所需的時間。

相對而言,邏輯法需要在邏輯層面進行描述,需要花費較多的時間。

4 結 語

經過以上的論證,可得在利用FPGA進行算法實現時,充分利用軟件自帶的IP核不但能節省硬件資源,更能極大的縮短開發周期,降低算法實現的難度。本文提供的兩種算法皆能產生性能良好的m序列,但核調用法更加節省資源,并且在開發難度上相比于邏輯法更簡單快捷,在縮短開發周期,降低開發成本上更有優勢。

參考文獻

[1] 王昆,陳昕智.m序列產生和性能的Matlab仿真[J].水利電力機械,2007,29(12):170?171.

[2] 張雪峰,范九倫.基于線性反饋移位寄存器和混沌系統的偽隨機序列生成方法[J].物理學報,2010,59(4):2289?2297.

[3] 樊昌信,曹麗娜.通信原理[M].6版.北京:國防工業出版社,2009.

[4] 段穎妮.基于FPGA的m序列發生器實現[J].電子元器件應用,2009,11(7):45?47.

[5] 何賓.Xilinx FPGA設計權威指南[M].北京:清華大學出版社,2012.

[6] 田耘,胡彬,徐文波,等.ISE Design Suite 10.x[M].北京:人民郵電出版社,2008.

[7] 陳海龍,李宏.基于Matlab的偽隨機序列的產生和分析[J].計算機仿真,2005,22(5):98?100.

[8] 吳盼望,張善從.基于移位寄存器的偽隨機序列改進算法[J].計算機工程,2012,38(18):265?267.

[9] 馬根,孫浩茗,孫靜.自編碼擴頻序列的性能研究[J].山東輕工業學院學報:自然科學版,2008,22(3):72?74.

摘 要: 為了產生性能良好且節省硬件資源的m序列,分別提出了基于現場可編程門陣列(FPGA)的邏輯法和核調用法兩種算法,并詳細介紹了兩種算法的實現步驟。通過在Xilinx公司的NEXYS3開發板上進行設計和編程,對兩種算法的可行性進行了檢測;并結合ISE編程軟件的仿真功能和Matlab對算法的自相關性、硬件占用率和實現難度等性能進行了分析。最終,了解到核調用法在m序列產生中的優越性。

關鍵詞: m序列; FPGA; IP核; ISE

中圖分類號: TN919?34 文獻標識碼: A 文章編號: 1004?373X(2014)05?0058?03

0 引 言

偽隨機序列作為一種信號形式,具有良好的相關特性和偽隨機性,可應用于擴頻通信和信號加密等領域。根據應用場合的不同,可以將偽隨機序列設計成具有不同特性的序列,其中,m序列便是應用最廣泛的一種偽隨機序列[1?2]。

m序列是最長線性反饋移位寄存器序列的簡稱,由[N]級移位寄存器和模二加法器產生。對于一個[N]級移位寄存器來說,最多可以有[2N]個狀態。由于全“0”狀態不會轉入其他狀態,所以線性移位寄存器的序列的最長周期為 [2N-1。]當[N]級線性移位寄存器產生的序列[{ai}]的周期為[T=2N-1]時,稱[{ai}]為[N]級m序列[3]。

本文采用Xilinx公司的spartan?6開發板來產生m序列。FPGA因其高速的計算速度和簡便的編譯步驟被越來越廣泛的應用于數字信號處理領域。Spartan?6自帶100 MHz內部晶振,最高可以提供高達300 MHz的運算速度。

1 m序列的實現算法

1.1 邏輯法

程序的移位寄存器功能模擬部分,根據特征方程,將序列Seq_r的第0、2、3和4位對應數值進行模二運算并將結果作為新的數據輸入寄存器的高位。此處應避免初始狀態為全零[4]。

程序的m序列輸出部分,在每個時鐘的上升沿提取Seq_r序列的第0位進行輸出,產生的Seq序列即為m序列。

1.2 核調用法

Xilinx芯片配套的ISE編程軟件提供了集成的移位寄存器IP核供使用者調用。IP核具有使用方便、操作簡單、節省資源等優點。核調用法利用ISE編程軟件提供的移位寄存器IP核進行設計,使用者可將IP核視為黑匣子,僅僅通過對其端口進行定義便可實現m序列的產生。

完成對IP核參數的設置后,在頂層文件中對IP核進行聲明,將高位的輸出信號輸入低位的輸入端,并取第2,3,4和8位寄存器的輸出值進行模二運算,將結果輸入第8位寄存器的輸入端。將程序編譯后,即可在FPGA上實現對m序列的生成。

2 m序列的性能分析

2.1 算法可行性驗證

為了驗證算法的可行性,確定兩種算法是否能夠產生滿足特征方程的序列,需要對m序列波形進行觀察。Xilinx對應的編程軟件ISE可以利用軟件自帶的應用工具ChipScope對產生的波形進行檢測。利用邏輯法和核調用法產生的m序列波形如圖1所示。

圖1中,clk_r為時鐘信號,是頻率固定的方波,程序在clk_r的上升沿進行運算。seq_r_r為算法產生的m序列,由圖1可以看出,兩種算法所產生的m序列波形相同,且在短時間內可視為隨機序列。經過檢測,確定兩種算法皆能實現m序列的產生。

2.2 算法性能分析

m序列常常作為擴頻序列應用于擴頻通信中。擴頻通信對擴頻序列一般有如下要求:尖銳的自相關特性;足夠多的序列數;序列均衡性好;工程上易實現[7]。

在m序列的一個周期中,“1”的個數比“0”的個數值多一個。這表明,序列平均值很小,具有良好的均衡性。為了檢測序列的自相關性,可以結合Matlab中的xcorr函數和plot函數繪制序列的自相關函數圖像[8?9]。Matlab生成的自相關函數的坐標如圖2所示。

由圖2可知,m序列的自相關性十分尖銳,可以應用于擴頻通信。

3 兩種算法的優劣比較

3.1 硬件資源占用

FPGA的硬件資源是有限的,雖然隨著科技的進步,芯片中集成的門數已經高達500萬門以上,但程序的復雜程度也與日俱增,導致硬件資源供不應求的情況時有發生。m序列常常作為整體程序的一部分出現,如果占用太多資源會導致程序的整體功能難以實現。因此,兩種算法硬件資源的占用量是考量算法優劣的重要指標。

編程軟件ISE會在程序編譯結束時自動生成程序占用硬件資源的數據,其中Slice Registers和Slice LUTs分別表示芯片中的兩種主要硬件資源,通過對比表1列出的資源占用情況可以了解兩種算法在資源占用上的優劣[5]。

通過分析數據可得,雖然兩種算法的資源占用率數值相近,但隨著m序列特征方程階數的增加,程序所占用的資源會越來越多,兩種算法在資源占用上的差距也會增大。可見兩種算法中,核調用法在兩種主要資源的占用上都小于邏輯法。因而,在實現高階m序列時,核調用法更具優勢。

3.2 實現的難易度

FPGA以其強大的功能被越來越多的應用于實現極為復雜的程序,在保證性能滿足要求的基礎上,如何降低開發難度,縮短開發周期也是考量算法優劣的又一重要因素。

IP核是ISE軟件已經集成好的程序模塊,經過優化,使得其中的程序性能更加優越。而且在生成IP核時只需要對參數進行修改即可,其中各參數的功用可以在IP核提供的DataSheet文檔中查看,因此利用IP核可以最大限度的縮短程序開發所需的時間。

相對而言,邏輯法需要在邏輯層面進行描述,需要花費較多的時間。

4 結 語

經過以上的論證,可得在利用FPGA進行算法實現時,充分利用軟件自帶的IP核不但能節省硬件資源,更能極大的縮短開發周期,降低算法實現的難度。本文提供的兩種算法皆能產生性能良好的m序列,但核調用法更加節省資源,并且在開發難度上相比于邏輯法更簡單快捷,在縮短開發周期,降低開發成本上更有優勢。

參考文獻

[1] 王昆,陳昕智.m序列產生和性能的Matlab仿真[J].水利電力機械,2007,29(12):170?171.

[2] 張雪峰,范九倫.基于線性反饋移位寄存器和混沌系統的偽隨機序列生成方法[J].物理學報,2010,59(4):2289?2297.

[3] 樊昌信,曹麗娜.通信原理[M].6版.北京:國防工業出版社,2009.

[4] 段穎妮.基于FPGA的m序列發生器實現[J].電子元器件應用,2009,11(7):45?47.

[5] 何賓.Xilinx FPGA設計權威指南[M].北京:清華大學出版社,2012.

[6] 田耘,胡彬,徐文波,等.ISE Design Suite 10.x[M].北京:人民郵電出版社,2008.

[7] 陳海龍,李宏.基于Matlab的偽隨機序列的產生和分析[J].計算機仿真,2005,22(5):98?100.

[8] 吳盼望,張善從.基于移位寄存器的偽隨機序列改進算法[J].計算機工程,2012,38(18):265?267.

[9] 馬根,孫浩茗,孫靜.自編碼擴頻序列的性能研究[J].山東輕工業學院學報:自然科學版,2008,22(3):72?74.

主站蜘蛛池模板: 国产色偷丝袜婷婷无码麻豆制服| 国产午夜看片| 亚洲国产成人精品无码区性色| 欧美激情视频二区| 成人免费一区二区三区| 性色生活片在线观看| 波多野结衣无码视频在线观看| 国产菊爆视频在线观看| 黄色网页在线观看| 成人午夜在线播放| 欧美激情综合一区二区| 美女一级毛片无遮挡内谢| 欧美成人免费午夜全| 26uuu国产精品视频| 99手机在线视频| 精品人妻系列无码专区久久| 亚洲无码一区在线观看| 五月六月伊人狠狠丁香网| 亚洲成人黄色网址| 尤物国产在线| 国产一区二区色淫影院| 在线一级毛片| 97一区二区在线播放| 国产成熟女人性满足视频| 亚洲资源站av无码网址| 在线视频亚洲欧美| 亚洲黄色网站视频| 日韩国产精品无码一区二区三区| 国产一级片网址| 亚洲欧美另类日本| a级毛片免费网站| julia中文字幕久久亚洲| 福利一区三区| 久久a级片| 亚洲成人免费看| 亚洲欧洲一区二区三区| 视频二区中文无码| 视频一本大道香蕉久在线播放 | 国产精品999在线| 人人妻人人澡人人爽欧美一区| 综合五月天网| 在线欧美a| 久视频免费精品6| 国产一区在线视频观看| 亚洲视频免费在线| 精品国产免费观看| 青青草久久伊人| 精品国产自| 青草娱乐极品免费视频| 久久精品电影| 久久男人资源站| 四虎永久在线精品国产免费| 国产网站免费看| 国产精品不卡永久免费| 久久一级电影| 99这里精品| AV在线天堂进入| 亚洲av无码片一区二区三区| 香蕉久久国产超碰青草| 国产午夜一级毛片| 国产激情无码一区二区APP| 97人妻精品专区久久久久| 在线a视频免费观看| 五月婷婷导航| 国产美女精品一区二区| 国产黑人在线| 无遮挡一级毛片呦女视频| 亚洲AV无码精品无码久久蜜桃| 亚洲午夜国产片在线观看| 久久久久人妻一区精品色奶水| 日本在线亚洲| 国产日韩欧美成人| 亚洲国产成人麻豆精品| 国产精品美女自慰喷水| 91无码人妻精品一区二区蜜桃| 国产日韩精品欧美一区灰| 广东一级毛片| 福利视频久久| 久久semm亚洲国产| 亚洲国产成人综合精品2020| 亚洲视频无码| 在线观看国产黄色|