mimo-ofdm 收發機之 fpga 實現 -...

87
i MIMO-OFDM 收發機之 FPGA 實現 學生:黃志維 指導教授:李大嵩 博士 國立交通大學電信工程學系碩士班 摘要 近年來,OFDM 在新一代無線通訊系統的發展上佔有相當關鍵性的地 位,它採用快速傅利葉轉換做為調變技術以提升系統頻寬使用效益,並利用 插入保護區間,以有效解決多路徑效應產生的碼間干擾。在本論文中,吾人 利用 Aptix ® MP3C 可重組系統平台,實現 MIMO-OFDM 系統軟硬體架構,該 平台整合了 FPGADSP 及部分類比元件模組。其中,FPGA 為可程式化之邏 輯元件,利用硬體描述語言合成數位邏輯電路,具有可重構性之特性,提供 快速之硬體驗證。而 DSP 則擁有高速之浮點及定點運算,可用以實現即時的 訊號處理。本論文的重點在以 FPGA 實現 MIMO-OFDM 收發機架構中之粗略 時序同步、精確時序同步,離散傅利葉轉換,及自動頻率控制器等區塊,完 成系統同步之功能。吾人進一步導入軟體無線電之概念,在上述硬體電路之 設計上予以模組化,以增加系統之擴充性及可適性。

Upload: others

Post on 28-Oct-2019

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

i

MIMO-OFDM 收發機之 FPGA 實現

學生:黃志維 指導教授:李大嵩 博士

國立交通大學電信工程學系碩士班

摘要

近年來,OFDM 在新一代無線通訊系統的發展上佔有相當關鍵性的地

位,它採用快速傅利葉轉換做為調變技術以提升系統頻寬使用效益,並利用

插入保護區間,以有效解決多路徑效應產生的碼間干擾。在本論文中,吾人

利用 Aptix® MP3C 可重組系統平台,實現 MIMO-OFDM 系統軟硬體架構,該

平台整合了 FPGA、DSP 及部分類比元件模組。其中,FPGA 為可程式化之邏

輯元件,利用硬體描述語言合成數位邏輯電路,具有可重構性之特性,提供

快速之硬體驗證。而 DSP 則擁有高速之浮點及定點運算,可用以實現即時的

訊號處理。本論文的重點在以 FPGA 實現 MIMO-OFDM 收發機架構中之粗略

時序同步、精確時序同步,離散傅利葉轉換,及自動頻率控制器等區塊,完

成系統同步之功能。吾人進一步導入軟體無線電之概念,在上述硬體電路之

設計上予以模組化,以增加系統之擴充性及可適性。

Page 2: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

ii

FPGA Realization of MIMO-OFDM Transceiver

Student: JR-Wei Huang Advisor: Dr. Ta-Sung Lee

Institute of Communication Engineering

National Chiao Tung University

Abstract

In recent years, OFDM has become a key technology in the development of

new wireless communication systems. It can increase the bandwidth efficiency by

utilizing the Fast Fourier Transform as it’s modulator and uses guard interval to

combat the inter symbol interference caused by multipath fading. In this thesis, we

will realize the MIMO-OFDM baseband transceiver on the Aptix MP3C

reconfigurable system platform, which integrates FPGA, DSP and some analog

devices. FPGA is a programmable logic device which can be used to design digital

logic circuits by hardware description language and provide fast hardware

verification based on its reconfigurability. On the other hand, DSP is a powerful

processor with high speed floating-point or fixed-point operations, which is

suitable for real-time signal processing. In this thesis, we will focus on the

realization of MIMO-OFDM transceiver by FPGA, which includes a coarse time

Page 3: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

iii

synchronizer, a fine time synchronizer, a Discrete Fourier Transform circuit and an

auto frequency controller. Together these form the synchronization part of the

system. With the concept of software-defined radio incorporated, we can increase

the scalability and adaptivity of the system by modulizing the above mentioned

hardware circuits.

Page 4: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

v

目錄

中文摘要 ...................................................................................................i

英文摘要 ..................................................................................................ii

誌謝 ......................................................................................................... iv

目錄 ..........................................................................................................v

圖目錄 ..................................................................................................................viii

表目錄 .................................................................................................................... xi

中英詞彙對照表 ................................................................................................. xii

第一章 緒論............................................................................................1

第二章 MIMO-OFDM 基頻收發機架構 .............................................4

2.1 MIMO-OFDM 硬體收發機技術架構 ..................................................... 4

2.2 MIMO-OFDM 系統簡介 ......................................................................... 5

2.2.1 OFDM 系統原理 .......................................................................... 5

2.2.2 序文資料 .................................................................................... 6

2.2.3 空-時區塊編碼.......................................................................... 8

2.3 時序同步................................................................................................... 8

2.3.1 粗略時序同步 ............................................................................... 8

2.3.2 精確時序同步 ............................................................................... 9

2.4 頻率估計與頻率補償............................................................................ 10

Page 5: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

vi

第三章 快速雛型發展系統設計流程介紹 ............................................... 17

3.1 Aptix 快速雛型發展平台與 Explorer 軟體 ......................................... 17

3.1.1 MP3C FPCB 架構 ....................................................................... 18

3.1.2 Aptix ExplorerTM軟體介紹 ......................................................... 19

3.2 FPGA 電路設計流程 ............................................................................ 20

3.2.1 FPGA 介紹 .................................................................................. 20

3.2.2 FPGA 電路設計流程 .................................................................. 21

3.3 TMS320C6701 DSP 簡介 ...................................................................... 23

3.3.1 TMS320C6701 DSP CPU 結構 .................................................. 23

3.3.2 TMS320C6701 DSP 記憶體分配 ............................................... 24

3.3.3 TMS320C6701 DSP 周邊元件 ................................................... 25

3.4 ‘C6701 DSP EVM 模組簡介 ................................................................. 26

3.4.1 ‘C6701 DSP EVM 模組架構 ...................................................... 27

3.4.2 ‘C6701 DSP EVM 與 FPGA 之連結 .......................................... 28

3.5 DAC/ADC 模組簡介............................................................................. 29

3.6 FPGA 電路設計技巧 ............................................................................ 30

第四章 MIMO-OFDM 基頻收發機之 FPGA 電路設計 .................... 44

4.1 MIMO-OFDM 基頻收發機系統 .......................................................... 44

4.2 發射端之 FPGA 電路設計 ................................................................... 45

4.3 IDFT 之 FPGA 電路設計...................................................................... 47

4.4 時序同步單元之 FPGA 電路設計 ....................................................... 47

4.4.1 粗略時序同步單元 ..................................................................... 48

Page 6: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

vii

4.4.2 精確時序同步單元 ..................................................................... 49

4.5 自動頻率控制單元之 DSP 與 FPGA 電路設計 .................................. 50

4.6 MIMO-OFDM 收發機硬體實現結果與分析 ...................................... 50

第五章 結論 ...................................................................................................... 65

參考文獻............................................................................................................... 69

Page 7: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

viii

圖目錄

2.1 MIMO-OFDM 硬體架構方塊圖......................................................... 12

2.2 IFFT 之子載波對應圖 ................................................................................. 12

2.3 802.11a 子載波分布示意圖 ......................................................................... 13

2.4 保護區間示意圖........................................................................................... 13

2.5 802.11a 之訓練序列及訊框結構圖 ............................................................. 14

2.6 資料通道之空-時區塊編碼圖 ..................................................................... 14

2.7 序文通道之空-時區塊編碼圖 ..................................................................... 15

2.8 粗略時序同步方塊圖................................................................................... 15

2.9 精確時序同步方塊圖................................................................................... 16

2.10 頻率估計方塊圖........................................................................................... 16

3.1 系統架構環境............................................................................................... 32

3.2 MP3C FPCB 架構 ........................................................................................ 32

3.3 MIMO-OFDM 系統設計及驗證流程 ......................................................... 33

3.4 TMS320C6701 DSP CPU 架構圖................................................................ 34

3.5 TMS320C6701 DSP 系統架構圖 ................................................................ 35

3.6 TMS320C6701 DSP 記憶體映射圖 ............................................................ 36

3.7 TMS320C6701 DSP 快取記憶體之邏輯映射圖 ........................................ 37

3.8 TMS320C6701 DSP 資料記憶體之映射圖 ................................................ 37

Page 8: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

ix

3.9 TMS320C6701 DSP 共處理器存取介面示意圖 ........................................ 38

3.10 TMS320C6701 DSP 外部記憶體介面 ........................................................ 38

3.11 TMS320C6701 DSP 之 DSP EVM 模組 ..................................................... 39

3.12 ‘C6701 DSP EVM 模組架構圖 ................................................................... 39

3.13 DSP EVM 前端處理模組讀取時序圖 ........................................................ 40

3.14 DSP EVM 前端處理模組寫入時序圖 ........................................................ 40

3.15 DAC 模組 ..................................................................................................... 41

3.16 ADC 模組 ..................................................................................................... 41

4.1 MIMO-OFDM 收發機之硬體架構圖 ......................................................... 55

4.2 MIMO-OFDM 基頻發射端之電路架構圖 ................................................. 55

4.3 MIMO-OFDM 基頻接收端之電路架構圖 ................................................. 56

4.4 FPGA 接收經 DSP 處理之資料時序圖 ...................................................... 56

4.5 DAC 模組之量化錯誤圖 ............................................................................. 57

4.6a 10-bit 計數器之數位訊號波形圖 ................................................................ 57

4.6b 經 DAC 模組取樣之 10-bit 計數器之類比訊號波形圖 ............................ 58

4.7 離散傅利葉反轉換電路架構圖................................................................... 58

4.8 粗略時序同步電路架構圖........................................................................... 59

4.9 超取樣示意圖,超取樣率 2........................................................................ 59

4.10 匹配濾波器輸出之時序圖........................................................................... 60

4.11 延遲加法電路輸出之時序圖....................................................................... 60

4.12 有限脈波響應器輸出之時序圖................................................................... 61

Page 9: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

x

4.13 時序同步單元之訊框起始點搜尋圖 .......................................................... 61

4.14 精確時序同步電路架構圖........................................................................... 62

4.15 時序同步電路之時序圖............................................................................... 62

4.16 頻率估計器之電路架構圖........................................................................... 63

4.17 頻率補償器之電路架構圖........................................................................... 63

4.18 餘弦查表電路輸出延遲之時序圖 .............................................................. 64

4.19 正餘弦查表電路所產生之弦波................................................................... 64

4.20 頻率估計器所估測訊號之頻率偏移 .......................................................... 65

4.21 FPGA 電路之模組化設計 ........................................................................... 65

Page 10: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

xi

表目錄

3.1 TTL 邏輯準位 .............................................................................................. 42

3.2 C6701 DSP EVM 模組記憶體映射表......................................................... 42

3.3 DAC/ADC 工作時脈源之腳位設定 ........................................................... 43

3.3 ALU 功能表 ................................................................................................. 43

4.1 系統與 DAC 模組之電壓準位對照表 ........................................................ 66

4.2 各功能單元之 FPGA 使用率對照表 .......................................................... 66

Page 11: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

xii

中英詞彙對照表

Analog-to-Digital Converter (ADC): 類比/數位轉換器

Application Specific Integrated Circuit (ASIC): 特殊應用積體電路

Arithmetic Logic Unit (ALU): 算術邏輯單元

Auto Frequency Control (AFC): 自動頻率控制

Auto Gain Control (AGC): 自動增益控制

Code Division Multiple Access (CDMA): 分碼多重進接

Cyclic Prefix (CP): 循環前置區段

Data Memory Controller (DMEMC): 資料記憶體控制器

Delay Locked Loop (DLL): 延遲鎖相迴路

Digital-to-Analog Converter (DAC): 數位/類比轉換器

Direct Memory Access Controller (DMA): 直接記憶體控制器

Discrete Fourier Transform (DFT): 離散傅利葉轉換

Doppler effect: 都卜勒效應

Electronics Design Automation (EDA): 電子設計自動化工具

External Memory Interface (EMIF): 外部記憶體介面

Fast Fourier Transform (FFT): 快速傅利葉轉換

Field Programmable Gate Array (FPGA): 場式可程式閘陣列

Field Programmable Interconnect Components (FPIC): 可程式內部互連元件

Finite Impulse Response (FIR): 有限脈波響應

Page 12: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

xiii

Finite State Machine (FSM): 有限狀態機

First In First Out (FIFO): 先進先出

Host-port Interface (HPI): 共處理器存取介面

Inter Carrier Interference (ICI): 載波間干擾

Inter Symbol Interference (ISI): 碼間干擾

Invert Discrete Fourier Transform (IDFT): 離散傅利葉反轉換

Large Scale Integrated (LSI): 大型積體電路

Logic Analyzer (LA): 邏輯分析儀

Look Up Tables (LUT): 查表型

Multichannel Buffered Serial Port (McBSP): 多通道緩衝序列埠

Multi-input Multi-output OFDM (MIMO-OFDM): 多輸入多輸出正交分頻多工

Multiplexer Type (MPX): 多工器型

Orthogonal Frequency Division Multiplexer (OFDM): 正交分頻多工

Pipelined Synchronous-burst SRAM (SBSRAM): 管線式同步靜態記憶體

Program Memory Controller (PMEMC): 程式記憶體控器

Programmable Logic Device (PLD): 可程式邏輯元件

Random-Access Memory (RAM): 隨機存取記憶體

Read-Only Memory (ROM): 唯讀記憶體

Space-Time Block Code (STBC): 空-時區塊編碼

Synchronous DRAM (SDRAM): 同步動態記憶體

Texas Instruments (TI): 德州儀器

Very Large Scale Integrated (VLSI): 超大型積體電路

Page 13: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

xiv

auxiliary channel: 輔助通道

average power: 平均功率

bit shift: 位元位移

branch: 分枝程式碼執行

cache line: 快取線

cache mode: 快取模式

channel estimation: 通道估計

chip: 碼片

circular-addressing: 環狀定址

coarse frequency synchronization: 頻率粗調

coarse time synchronization: 粗略時序同步

comparator: 比較器

convolution encoder: 迴旋編碼器

correlator: 相關器

counter: 計數器

data channel: 資料通道

data detector: 資料偵測器

daughter board: 子卡

decoder: 解碼器

deinterleaver: 解交錯器

demodulator: 解調變器

diagnostic communication interface: 診斷溝通界面

Page 14: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

xv

encoding: 編碼

external memory: 外部記憶體

external shared-memory device: 外部分享記憶體元件

fine frequency synchronization: 頻率細調

fine time synchronization: 精確時序同步

flash memory: 快閃記憶體

frame synchronization: 訊框同步

frame: 訊框

frequency domain: 頻域

frequency offset: 頻率偏移

frequency selective fading: 頻率選擇性衰落

function simulation: 功能模擬

function unit: 功能單元

guard band: 保護頻帶

guard interval: 保護區間

integrate and dump: 積分與傾印

interleaver: 交錯器

interleaving: 交錯

internal data memory: 內部資料記憶體

internal program memory: 內部程式記憶體

interrupt selector: 中斷選擇器

linear-addressing: 線性定址

Page 15: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

xvi

logic gate: 邏輯閘

long preamble: 長序文

mapped mode: 映射模式

match filter: 匹配濾波器

maximum selector: 最大值選擇器

modulation: 調變

multi-carrier modulation: 多載波調變

multipath delay spread: 多路徑延遲擴展

multiplexer: 多工器

normalize: 正規化

oscillator: 振盪器

out-of-band: 頻譜外邊帶

oversampling: 超取樣

package editor: 包裏編輯器

pattern generator: 資料產生器

phase estimation: 相位估計

pilot signal: 導引訊號

pilot symbol: 導引符元

preamble channel: 序文通道

preamble data: 序文資料

programmable channel: 可編排程序通道

quantization error: 量化錯誤

Page 16: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

xvii

reset: 重置

scheduling: 時程安排

serial-to-parallel converter: 序列對平行轉換器

short preamble: 短序文

state diagram: 時態關係圖

sub-carrier: 子載波

sub-symbol: 子符元

symbol: 符元

time domain: 時域

time-varying multipath fading: 時變多路徑衰落

timing simulation: 時序模擬

training sequences: 訓練序列

transmit diversity: 傳輸分集

Page 17: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

1

第一章 緒論

隨著時代的進步,人類對於資訊的需求日益增加,使得行動通訊快速地

由類比系統演變至數位系統;從過去單純提供語音服務的第一代行動通訊,

及現今利用數位通訊技術,提供語音和資料傳輸服務的第二代行動通訊,發

展至未來利用更為先進技術的第三代及第四代行動通訊,提供包括語音、資

料及影像的多媒體傳輸。隨著多媒體行動通訊時代的來臨,除了因應用戶數

的增加之外,還必須達到高傳輸速率的要求。而以分碼多重進接(code division

multiple access, CDMA)為核心技術的第三代行動通訊,其傳輸速率雖可達到

2 Mbps,較現今的第二代行動通訊快上百倍,但仍無法滿足未來多媒體通訊

的需求,因此第四代行動通訊的提出,便是建立在滿足多媒體通訊及高傳輸

率的規格之上。

在第四代行動通訊中,以正交分頻多工(orthogonal frequency division

multiplexer, OFDM) [1]-[3]技術最受矚目,以 OFDM 為核心技術提供多媒體服

務,可使傳輸速率達到 10 Mbps 至 100 Mbps。OFDM 是一種多載波調變技術,

它利用快速傅利葉轉換(inverse fast Fourier transform, IFFT)做調變,達到頻寬

使用效益的提升,並利用插入保護區間(guard interval)有效解決多路徑效應所

產生的碼間干擾(inter symbol interference, ISI)。而除了在行動通訊上的應用之

Page 18: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

2

外,其相關技術更延伸至無線區域網路(WLAN)、數位音訊(digital audio

broadcasting, DAB)/視訊廣播(digital video broadcasting, DVB)等系統。在另一

方面,多輸入多輸出(multi input multi output, MIMO) [4]-[7]技術利用多組平行

空間通道,在不同發射天線同時傳送不同訊號,以提升系統的傳輸速率。而

為因應未來通訊系統之高品質及高速傳輸需求,將 OFDM 與 MIMO 技術結合

成為多輸入多輸出正交分頻多工(MIMO-OFDM)系統,為一必然之趨勢。

MIMO-OFDM 系統依運作方式之不同,分為 MIMO-OFDM 空間分集式與空間

多工式系統。MIMO-OFDM 空間分集式系統,提供發射及接收分集,藉以提

升訊號品質;MIMO-OFDM 空間多工式系統,在不同發射天線同時傳送不同

訊號,藉以提升系統之傳輸速率。

在本論文中,吾人參考 802.11a 之規範,以硬體實現 MIMO-OFDM 收發

機之離散傅利葉轉換電路、時序同步電路、自動頻率控制電路等。在硬體電

路實現過程中,以 VHDL (very high speed integrated circuit hardware description

language) [8][9]語言撰寫,載入 FPGA (field programmable gate array)以驗證電

路之正確性,並配合快速雛型發展平台上的 DSP (digital signal processor)處理

基頻訊號,以加速系統雛型開發並增加系統之可適性。在時序同步電路方面,

吾人將分為兩個階段以確保時序同步的準確性。在第一階段中,利用十個相

同的短序文(short preamble)獲得訊框(frame)的粗略起始時間,完成粗略的時序

同步(coarse time synchronization),在第二階段,則根據第一階段獲得的粗略時

間,利用二個相同的長序文(long preamble)獲得訊框的精確起始時間,完成精

確的時序同步(fine time synchronization)。接著啟動頻率估計電路,再經由自動

頻率控制(auto frequency control, AFC)單元中之頻率補償器[10],以解決傳送端

Page 19: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

3

和接收端頻率偏移(frequency offset)的問題。在 802.11a 規範中,短序文可估計

頻率範圍為±625 KHz,而長序文可估計頻率範圍為±156.25 KHz [1],吾人參

考此數據做為設計 AFC 電路之依據。

在現今時代交替之際,通訊界注目的是如何將 GSM 系統順利升級到第三

代行動通訊系統,而在未來則可能著重在如何將 CDMA 與 OFDM 技術相結

合,以提供頻寬需求較高的多媒體傳輸。而吾人在硬體電路實現的同時,也

導入軟體無線電(software-defined radio, SDR) [11][12]之概念,以期在不同環境

中,可以快速地置換系統核心演算法,以符合未來的趨勢潮流。

本論文章節組織如下:第二章介紹吾人之基頻收發機之硬體環境,同時

簡介時序同步與頻率同步單元的架構,第三章則描述硬體實現平台之開發環

境,包含 FPGA 與 DSP 之介紹,第四章詳述吾人之 MIMO-OFDM 硬體電路

與程式設計流程,以實現系統之時序及頻率同步功能.最後,第五章為本篇

論文做一總結。

Page 20: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

4

第二章 MIMO-OFDM 基頻收發機架構

2.1 MIMO-OFDM 硬體收發機技術架構

在 MIMO-OFDM 收發機之硬體開發過程中,吾人加入軟體無線電的概

念,利用 FPGA 模組化及 DSP 參數化之設計,以期能加快系統的發展速度並

增加其可適性。基於此想法,吾人選用 FPGA 做為硬體電路開發元件,另外,

使用 DSP 做為軟體開發工具,搭配 Aptix®設計之 System Explorer MP3C 可重

組平台,整合數位/類比轉換器(digital-to-analog converter, DAC)、類比/數位轉

換器(analog-to-digital converter, ADC)、資料產生器(pattern generator)與振盪器

(oscillator)模組,以處理 MIMO-OFDM 之基頻訊號。硬體架構圖如圖 2.1 所示。

吾人之系統開發著重於 MIMO-OFDM 基頻訊號處理,在傳送端部分,資

料位元經過編碼(encoding)、交錯(interleaving)、調變(modulation)、空-時區塊

編碼(space-time block code, STBC)及離散傅利葉反轉換(invert discrete Fourier

transform, IDFT)後,於符元前插入循環前置區段(cyclic prefix, CP),並透過一

多工器(multiplexer)和序文資料(preamble data)相結合,經由 DAC 轉換成類比

訊號傳送;接收端則將訊號經由 ADC 轉換成數位訊號送入 FPGA,利用序文

資料達成粗略時序同步、精確時序同步和頻率估計(frequency estimation),並

Page 21: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

5

利用頻率補償器補償頻率偏移。在完成系統之時序及頻率同步後,將資料符

元之循環前置區段去除,經由離散傅利葉轉換(discrete Fourier transform, DFT)

將訊號送入 DSP,經由資料偵測器(data detector)、解調變器(demodulator)與解

交錯器(deinterleaver),最後由解碼器(decoder)將資料位元還原。

2.2 MIMO-OFDM 系統簡介

2.2.1 OFDM 系統原理

在802.11a系統中,利用OFDM做為其多載波調變(multi-carrier modulation)

系統[1],將經由 QPSK 或 QAM 的高速資料流經由序列對平行轉換器

(serial-to-parallel converter)分成 N個子符元(sub-symbol),再利用 OFDM 的 N

個正交載波同時傳送,而由於子符元的長度增加為原始長度的 N 倍,因此可

以降低多路徑延遲擴展(multipath delay spread)所造成的影響。此外,由於將訊

號分散在 N 個正交載波上同時傳送,除了可以增加資料量外,還可以降低在

多路徑通道下所造成的頻率選擇性衰落(frequency selective fading)。

在OFDM系統中,IFFT用以做為多載波調變器,其各個子載波(sub-carrier)

所相對應之 QPSK 符元(symbol)方式如圖 2.2 所示[1]。在圖中,Null 表示傳送

0+0j的 QPSK 符元,即不傳送資料,包含子載波為 0 和第 27 至 37 等 12 個子

載波,稱之為保護頻帶(guard band),用以降低對於旁邊頻道的干擾,而在其

餘的 52 個子載波中,除了第 7、21、43、57 個子載波用來傳送導引訊號(pilot

signal)以做為系統的相位估計(phase estimation)之外,其餘的 48 個子載波則用

來傳送資料符元(圖 2.3)。

Page 22: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

6

而在多路徑通道中,為了防止 OFDM 符元因延遲重疊而產生符際干擾效

應,必須在每個 OFDM 符元前置入保護區間,而此保護區間的長度必須大於

多路徑延遲之長度。在 OFDM 系統中,保護區間為將 OFDM 符元末段複製置

於符元的開頭(圖 2.4) [1],亦稱之為循環前置區段。

2.2.2 序文資料

在以 OFDM 為調變架構的系統中,當有頻率偏移產生時,會使得載波間

之正交性喪失,產生載波間干擾(inter carrier interference, ICI),進而降低 OFDM

系統效能。而造成頻率偏移的原因主要有兩個,第一是因為傳送端和接收端

的頻率振盪器的頻率不同。第二是因為 mobile 端的移動所造成的都卜勒效應

(Doppler effect)。

在 802.11a 的系統中,其利用在每個訊框前加上一段訓練序列(training

sequences),亦稱為序文資料,以做為系統頻率偏移之估計。序文資料的設計

方式有很多種,在 802.11a 的系統中,將序文資料分成兩個部分,第一部分為

短序文,包含十個相同的符元,每一個符元長度為 0.8 μs,用於對 burst mode

系 統 的 訊 框 同 步 (frame synchronization) 及 頻 率 粗 調 (coarse frequency

synchronization)。第二部分為長序文,包含二個相同的符元,每一個符元長度

為 3.2μs,用以做為通道估計(channel estimation)及頻率細調(fine frequency

synchronization)。802.11a 訓練序列架構圖如圖 2.5 所示[1]。

在 802.11a 的系統中,短序文在尚未通過快速傅利葉反轉換前的對應序列

S-26,26的值為:

{}

26,26 13 6 0,0,1 ,0,0,0, 1 ,0,0,0,1 ,0,0,0, 1 ,0,0,0, 1 ,0,0,0,1 ,0,0,0,0

0,0,0, 1 ,0,0,0, 1 ,0,0,0,1 ,0,0,0,1 ,0,0,0,1 ,0,0,0,1 ,0,0

S j j j j j j

j j j j j j− = + − − + − − − − +

− − − − + + + + (2.1)

Page 23: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

7

序列中乘上根號 13/6 是為了對 OFDM 的平均功率(average power)做正規化

(normalize)處。最後快速傅利葉反轉換的輸出為 2

2( )

2( )

STF

ST

Nj k t

SHORT t T SHORT kk N

r W t S e π ∆

=−

= ⋅∑ (2.2)

而長序文的對應序列 L-26,26的值為:

{}

26,26 1,1, 1, 1,1,1, 1,1, 1,1,1,1,1,1,1, 1, 1,1,1, 1,1, 1,1,1,1,1,0

1, 1, 1,1,1, 1,1, 1,1, 1, 1, 1, 1, 1,1,1, 1, 1,1, 1,1, 1,1,1,1,1

L− = − − − − − − − −

− − − − − − − − − − − − − (2.3)

其快速傅利葉反轉換的輸出為:

12

22 ( )

2

( ) ( )ST

F G

ST

Nj k t T

LONG T LONG kk N

r t W t L e π ∆ −

=−

= ⋅∑ (2.4)

其中 W(t)為 window function,NST為序列長度,Sk為短序文序列,Lk為長序文

序列,G12為保護區間長度。W(t)用以將 OFDM 頻譜外邊帶(out-of-band) 的能

量濾掉,使得載波的能量集中在 main lobe 上而避免對旁邊的頻道造成干擾,

產生載波間干擾效應,以增加系統穩定度。

相較於 802.11a 中的規範,在本論文中,吾人將原先在頻域(frequency

domain)上的序文資料轉為在時域(time domain)上做處理,其值為

短序文:16 碼片(chip)之 PN 碼

{ }1,1,1,1, 1, 1, 1,1, 1, 1,1,1, 1,1, 1, 1− − − − − − − − (2.5)

長序文:64 碼片之 PN 碼 {

}

1, 1, 1, 1, 1,1, 1,1,1,1,1,1, 1, 1, 1,1, 1,1,1, 1,1,1, 1,1,1,1, 1, 1,1, 1, 1,1, 1, 1,1, 1, 1,1, 1,1, 1, 1, 1,1, 1, 1, 1, 1, 1,1, 1, 1,1,1,1, 1,1, 1,1, 1,1,1, 1,1

− − − − − − − − −

− − − − − −− − − − − − − − − − −

− − − − − −

(2.6)

利用 PN 碼的自相關特性,在接收端以相對應 PN 碼為係數之匹配濾波器偵測

出訊框之起始點。

Page 24: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

8

2.2.3 空-時區塊編碼

空-時區塊編碼為一傳輸分集(transmit diversity)技術[13][14],在不增加傳

送能量及系統頻寬之狀態下,對傳送訊號做空-時編碼動作,用以抵抗無線通

訊中時變多路徑衰落(time-varying multipath fading)效應,並增加系統之頻寬使

用效益。此外,在接收端部分只需增加些許的運算量,且不需回饋任何資訊

至傳送端,可以降低系統實現上之複雜度。在本論文中,吾人將經由迴旋編

碼器(convolution encoder)、交錯器及 QPSK 符元對應之後的訊號和序文資料,

各通過一空-時區塊編碼器(圖 2.6、圖 2.7),以降低因多路徑衰落所產生之影

響。

2.3 時序同步

在通訊系統中,時序同步是相當重要的一環,因為只有正確地找到訊框

的起始位置,才能對接收訊號做後續的處理動作,否則對於接收端所估測出

的資料會造成相當大的錯誤。在本論文中,吾人將時序同步分為粗略時序同

步(圖 2.8)和精確時序同步(圖 2.9) [15][16]兩個階段,以下將分別做介紹。

2.3.1 粗略時序同步

在粗略時序同步的階段,在接收端利用一組以短序文為係數之匹配濾波

器(match filter, MF),將第 n及第(n+1)個短序文通過匹配濾波器之輸出值,做

一平方相加之動作。相對應於傳送端的十個短序文,可得到九個峰值,兩峰

值間距為 16 個碼片長度。接著,將訊號通過一有限脈衝響應濾波器(finite

impulse response filter, FIR filter),而得到一週期性峰值,兩峰值間距為 10 ms。

Page 25: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

9

將第 n及第(n+1)個短序文通過匹配濾波器,其輸出值為 1( )y n 及 1( 1)y n + ,

如式(2.7)及式(2.8)

( ) 2(1) (1) (2) (2)1 1 1( ) ( ) ( ) bj fnTy n s n h s n h e π∆= + ⋅ (2.7)

( )* * 2 ( 1)(2) (1) (1) (2)1 1 1( 1) ( ) ( ) bj f n Ty n s n h s n h e π∆ ++ = − + ⋅ (2.8)

將 1( )y n 及 1( 1)y n + 做平方相加之動作,如式(2.9)

2 21 1 1( ) ( ) ( 1)w n y n y n= + +

( )( )2 22 2 (1) (2)(1) (2)1 1 ( ) ( ) ( ) ( )s n s n h n h n= + + (2.9)

而根據短序文及接收天線數目之多寡,將上述得到的 w(n)相加,得到相對應

的 x(n)值,如式(2.10),並依式(2.11)找出其最大值:

8

1 10

( ) ( ) other antennasm

x n w n m=

= + +∑ (2.10)

{ }1 2 16ˆ arg max ( ), ( ),..., ( )init nx n x n x nτ = (2.11)

其中 initτ 為粗略訊框起始點。而由於空間環境中的雜訊干擾或發射端和接收端

時脈不同的影響,尚無法利用此週期性峰值得到準確之訊框起始點,而必須

藉著此階段所得到之粗略訊框起始點和長序文做下一階段之精確時序同步,

以得到準確的時序同步。

2.3.2 精確時序同步

在精確時序同步階段,利用上述得到的粗略訊框起始點啟動精確時序同

步單元,並在接收端利用一組以長序文為係數之匹配濾波器,將兩個長序文

通過匹配濾波器之輸出值,做一平方相加之動作,而得到一週期之峰值,兩

峰值間距為 10 ms。

根據 2.3.1 小節所獲得的粗略起始時間 initτ ,將第 n及第(n+1)個長序文分

Page 26: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

10

別往左右位移各 7 個碼片之位置,通過以長序文為係數之匹配濾波器,得到

相對應於 15 個碼片位置之 ( )ky n 及 ( 1)ky n + ,如式(2.12)及式(2.13)

( ) 2(1) (1) (2) (2)( ) ( ) ( ) bj fnTk k ky n s n h s n h e π∆= + ⋅ (2.12)

( )* * 2 ( 1)(2) (1) (1) (2)( 1) ( ) ( ) bj f n Tk k ky n s n h s n h e π∆ ++ = − + ⋅ (2.13)

將 ( )ky n 及 ( 1)ky n + 做平方相加之動作,如式(2.14)

2 2

0( ) ( ) ( 1)k k k

nw n y n y n

== + +

( )( )2 22 2 (1) (2)(1) (2) (0) (0) (0) (0)k ks s h h= + + (2.14)

而根據長序文及接收天線數目的多寡,將上述得到的 wk(n)相加,得到相對應

於 15 個碼片位置的 xk值,如式(2.15),並依式(2.16)找出其最大值:

other antennask kx w= + (2.15)

1τ { }1 2 15ˆ,..., search , ,...,L x x xτ = (2.16)

其中, 1τ 為精確訊框起始點,而 2τ ˆ,..., Lτ 為延遲路徑之起始點。由於利用長序文

做匹配所得到的峰值能量較短序文為強,因此較能抵抗雜訊的干擾而得到精

確的訊框起始點,使得後續的訊號處理能正常工作無誤。

2.4 頻率估計與頻率補償

在 2.2.2 小節中提及,OFDM 系統因傳送端和接收端頻率振盪器的頻率不

同或都卜勒效應所造成的頻率偏移,使得載波間喪失其正交性,產生載波間

干擾,進而降低 OFDM 系統效能。在本論文中,吾人利用前八個短序文完成

系統的頻率偏移估計(圖 2.10),並透過頻率補償器補償頻率偏移完成頻率粗

調,而頻率細調部分則交由 DSP 的相位估計予以補償。

Page 27: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

11

在本論文中,依據 2.3.2 小節所獲得的精確訊框起始點,將接收訊號通過

一以短序文之共軛複數為係數之相關器(correlator),做積分與傾印(integrate

and dump)之動作,其相對應於前四個短序文之輸出值為式(2.17)至式(2.20):

( ) 02(1) (1) (2) (2)1,1 1 1( ) ( ) ( ) j fty i s i h s i h e π∆= + ⋅ (2.17)

( ) 0 )* * 2 ((2) (1) (1) (2)2,1 1 1( ) ( ) ( ) bj f t Ty i s i h s i h e π∆ += − + ⋅ (2.18)

( ) 0 )2 ( 2(1) (1) (2) (2)3,1 1 1( ) ( ) ( ) bj f t Ty i s i h s i h e π∆ += + ⋅ (2.19)

( ) 0 )* * 2 ( 3(2) (1) (1) (2)4,1 1 1( ) ( ) ( ) bj f t Ty i s i h s i h e π∆ += − + ⋅ (2.20)

將{ }1,1 2,1 3,1 4,1( ), ( ), ( ), ( )y i y i y i y i 依式(2.21)及式(2.22)運算,得

{ }* *1,1 1,1 3,1 2,1 4,1( ) Re ( ) ( ) ( ) ( )w i y i y i y i y i= +

{ }{ }2 2 2 2(1) (2) (1) (2)1 1 ( ) ( ) cos(2 2 )bh h s i s i f Tπ= + + ∆ (2.21)

{ }* *2,1 1,1 3,1 2,1 4,1( ) Im ( ) ( ) ( ) ( )w i y i y i y i y i= −

{ }{ }2 2 2 2(1) (2) (1) (2)1 1 ( ) ( ) sin(2 2 )bh h s i s i f Tπ= − + + ∆ (2.22)

而根據短序文、延遲路徑及接收天線的數目的多寡,依式(2.23)及式(2.24)運算 1 1

1, 1, 2, 2,0 0

( ), ( )l l l li i

x w i x w i= =

= =∑ ∑ (2.23)

1 1,1

other antennasL

ll

z x=

= +∑

2 2,1

other antennasL

ll

z x=

= +∑ (2.24)

其中,l = 1, 2, 3…… L為延遲路徑的數目。接著將 z1和 z2值送入 DSP,依式

(2.25)運算,估計出系統頻率偏移。

1 2

1

1ˆ tan2 2init

b

zfT zπ

− = −

(2.25)

其中,Tb = 16Tc,Tc = over/fclk。Tb為短序文之符元長度,Tc為碼片時間,over

為超取樣率 2,fclk為工作頻率 20 MHz。

Page 28: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

12

DSPDSP

FPGAFPGA

FPGAFPGA

DAC

ADC

Aptix MP3C

20MHz

20MHz

發射單元

接收單元

DSPDSP

FPGAFPGA

FPGAFPGA

DAC

ADC

Aptix MP3C

20MHz

20MHz

發射單元

接收單元

圖 2.1 MIMO-OFDM 硬體架構方塊圖

圖 2.2 IFFT 之子載波對應圖

Page 29: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

13

ππ−

-32 –31 –30 -29 –28 –27 –26 –25 –24 -2 –1 0 1 2 24 25 26 27 28 29 30 31

DC6個 visual carrier 5個 visual carrier

圖 2.3 802.11a 子載波分布示意圖

圖 2.4 保護區間示意圖

Page 30: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

14

圖 2.5 802.11a 之訓練序列及訊框結構圖

CodedData

4 3 2 1 d d d d

STBC

[ ]*

2 1

2 1 *

1 2

d d

d dd d−

* *

4 3 2 1 - - d d d d

* *

3 4 1 2 d d d d

CodedData

4 3 2 1 d d d d

STBC

[ ]*

2 1

2 1 *

1 2

d d

d dd d−

* *

4 3 2 1 - - d d d d

* *

3 4 1 2 d d d d

圖 2.6 資料通道之空-時區塊編碼圖

Page 31: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

15

PreambleSequences

2 1 10 2 1 T T S S S

STBC

[ ]*

2 1

2 1 *

1 2

S S

S SS S−

or short longC C

or short longC C

(1)( )s n

(2)( )s n

PreambleSequences

2 1 10 2 1 T T S S S

STBC

[ ]*

2 1

2 1 *

1 2

S S

S SS S−

or short longC C

or short longC C

(1)( )s n

(2)( )s n

圖 2.7 序文通道之空-時區塊編碼圖

RRCRRCDe-MUXDe-MUX Find

Max

Find

Max

MFMF2( )i

DelayDelay2( )i

⊕+

+

8

0( )∑ i

+

+

1( )w n

Other antenna

initτ1( )y n

1( )x n

16( )x n16( )w n

* Delay : delay 1 short symbol = 16 chips

+

+initτ

8

0( )∑ i

RRCRRCDe-MUXDe-MUX Find

Max

Find

Max

MFMF2( )i

DelayDelay2( )i

⊕+

+

8

0( )∑ i

+

+

1( )w n

Other antenna

initτ1( )y n

1( )x n

16( )x n16( )w n

* Delay : delay 1 short symbol = 16 chips

+

+initτ

8

0( )∑ i

圖 2.8 粗略時序同步方塊圖

Page 32: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

16

RRCRRC Finger

Searcher

Finger

Searcher

2( )i1

0( )∑ i

+

1

0( )∑ i

+

1w

Other antenna

1( )y n

15w

ˆ( )init ct m Tτ= +63

*

0( 7 ) ( )long

kr m k C k

=− +∑

64m n=

63*

0( 7 ) ( )long

kr m k C k

=+ +∑

15( )y n

64m n=

+

+2( )i

x1

x15

1

2

ˆˆ

ˆL

ττ

τ

RRCRRC Finger

Searcher

Finger

Searcher

2( )i1

0( )∑ i

+

1

0( )∑ i

+

1w

Other antenna

1( )y n

15w

ˆ( )init ct m Tτ= +63

*

0( 7 ) ( )long

kr m k C k

=− +∑

64m n=

63*

0( 7 ) ( )long

kr m k C k

=+ +∑

15( )y n

64m n=

+

+2( )i

x1

x15

1

2

ˆˆ

ˆL

ττ

τ

圖 2.9 精確時序同步方塊圖

RRCRRC

De-MUXDe-MUX

1

0( )∑ i

+

Other antenna

initf

1( )t n

1( ) ct m Tτ= +

15*

0( ) ( )short

kr m k C k

=+∑

16m n= ⊕1,1( )y i⊗*

2,1( )y i*3,1( )y i

4,1( )y i⊗ ⊕

+++

_

Re{}i

Im{}i1

0( )∑ i

( )Lt n

ˆ( )L ct m Tτ= +

15*

0( ) ( )short

kr m k C k

=+∑

16m n=

Same as above block

∑+

1 2

1

1 2 2

tan

bT

zz

π

1,1x

2,1x

1,Lx

2,Lx

+

+

1st finger

Lth finger

1,1( )w i

2,1( )w i

RRCRRC

De-MUXDe-MUX

1

0( )∑ i

+

Other antenna

initf

1( )t n

1( ) ct m Tτ= +

15*

0( ) ( )short

kr m k C k

=+∑

16m n= ⊕1,1( )y i⊗*

2,1( )y i*3,1( )y i

4,1( )y i⊗ ⊕

+++

_

Re{}i

Im{}i1

0( )∑ i

( )Lt n

ˆ( )L ct m Tτ= +

15*

0( ) ( )short

kr m k C k

=+∑

16m n=

Same as above block

∑+

1 2

1

1 2 2

tan

bT

zz

π

1,1x

2,1x

1,Lx

2,Lx

+

+

1st finger

Lth finger

1,1( )w i

2,1( )w i

圖 2.10 頻率估計方塊圖

Page 33: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

17

第三章 快速雛型發展系統設計流程介紹

3.1 Aptix 快速雛型發展平台與 Explorer 軟體

吾人在 MIMO-OFDM 收發機的硬體實現過程中,採用 MP3C FPCB (field

programmable circuit board)為硬體實現平台,搭配 Aptix ExplorerTM 軟體和

Angilent 16702B 邏輯分析儀(logic analyzer, LA)完成系統架構(圖 3.1)。其中,

Aptix ExplorerTM 軟體負責編譯 RTL (netlist file,如.xnf 或.edif file)和設定

FPGA 模組的輸入/輸出對應,MP3C 負責處理各模組間之繞線連結,而邏輯

分析儀則用做系統訊號觀察,以做為系統驗證及除錯。MP3C 可以支援如

FPGA、DSP、ASICs、ARM 微控制器、微處理器、隨機存取記憶體(random-access

memory, RAM)和唯讀記憶體(read-only memory, ROM)等模組;除此之外,只

要能符合 MP3C 硬體平台規格,亦可以設計專用的模組應用於系統,如

MIMO-OFDM 硬體架構中之’C6701 EVM DSP 模組。因此,MP3C 對於複雜

的數位系統,亦或利用 FPGA、PLDs 所設計的 ASIC 可以提供完整的系統模

擬及驗證環境。

3.1.1 MP3C FPCB 架構

MP3C FPCB 包含下列基本區塊(圖 3.2) [17]:

Page 34: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

18

1. Freehole:包含

I. 特殊腳位(special pins):提供模組電源、接地及工作時脈源。

II. 可交換式腳位(swapping pins):提供模組輸入/輸出界面,其訊號電氣

規格為 TTL 之輸出入位準(表 3.1)。

III. 輸入/輸出腳位(I/O pins):提供 freehole 與 MP3C FPCB 外部匯流排之

連結。

2. 匯流排:包含 4 個匯流排模組,每個模組含 40 根腳位。

3. 時脈模組:包含 2 個時脈模組,每個可提供 4 組時脈源。

4. 輸入/輸出匯流排:提供對外系統連結通道。

5. 微控制器:處理程序編排、FPICs 及電源分配和 RS-232 之間的溝通。

6. FPIC (field programmable interconnect components):包含

I. FPIC/R:負責模組之繞線電路。

II. FPIC/D:提供觀察埠(diagnostic port)至邏輯分析儀。

其中,FPIC 為 MP3C FPCB 之核心,包含 FPIC AX1024R (FPIC/R)和 FPIC

AX1024D (FPIC/D),其共同特性為:

1. 為一 32×32 之陣列晶片(共 1024 根腳位),透過可程式化之繞線陣列架構,

定義任意兩個 freehole 間之連線,其中 936 根為雙向輸入/輸出。

2. 提供高速輸入/輸出連結,對單一繞線路徑而言,訊號在 freehole 間大約延

遲 3 ns 至 5 ns。

3. 以 CMOS SRAM 為系統內部連結元件,透過高速序列界面傳輸,可以快

速更改設計之系統架構。

而其最大的不同處,在於它們的 packaging 和功能上的效用。FPIC/R 提供模

Page 35: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

19

組間之繞線連結,在 1024 根腳位中,17 根用做界面連結和提供電源,71 根

保留不用,其餘的 936 根由使用者自行定義 freehole 間的連線;而 FPIC/D 除

了包含所有 FPIC/R 的特性之外,還提供 64 根腳位的觀察埠連結至邏輯分析

儀,以便系統訊號之觀察。

3.1.2 Aptix ExplorerTM軟體介紹

Aptix ExplorerTM 軟體主要用做 MP3C 硬體平台之設定,包括三大部分以

定義各元件間之連結分配:

1. Explorer 主選單:透過 PC 端載入 logic-level 或 top-level (系統及標準元件:

如振盪器、資料產生器)之 xnf 或 edif 檔案,並將相關模組置於 MP3C 平

台之 PFCB 區域,經由編譯產生 FPIC 繞線所需的檔案。

2. 包裏編輯器(package editor):對於使用者自行定義之系統元件或子卡

(daughter board)產生資料庫元件。

3. 診斷溝通界面(diagnostic communication interface):邏輯分析儀之參數設

定,包含 FPIC POD 之分配與欲觀察之訊號。

其中,PC、工作站、MP3C 與邏輯分析儀間使用 10 BaseT Ethernet 相連結,

使彼此間之檔案及訊號傳遞能夠更為便利、迅速。

而透過 Aptix ExplorerTM 軟體、MP3C FPCB 和邏輯分析儀之整合,吾人

之系統設計及驗證流程如下所述:

1. 使用 EDA (electronics design automation)工具,撰寫硬體描述語言,並合成

為邏輯電路的描述檔案,如.xnf 或.edif 檔。

Page 36: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

20

2. 透過功能模擬(function simulation)和時序模擬(timing simulation),確認系

統功能運作無誤。

3. 利用 Aptix ExplorerTM 軟體編譯邏輯電路,轉化為 FPGA 內部之佈局,並

設定 MP3C FPCB 與邏輯分析儀之參數。

4. 將程式下載至 MP3C FPCB 平台上之 FPGA 和邏輯分析儀。

5. 利用邏輯分析儀觀察系統訊號,做為系統驗證及除錯。

3.2 FPGA 電路設計流程

3.2.1 FPGA 介紹

由於對科技需求的日益增加,進一步帶動半導體技術之成長。從 1960 年

代由數個電晶體及電阻所構成之積體電路,進步到數仟個電晶體的 LSI (large

scale integrated),再進步到數十萬甚至數百萬電晶體的 VLSI (very large scale

integrated)。目前可程式化數位邏輯元件分為可程式邏輯元件(programmable

logic device, PLD)和場式可程式閘陣列(field programmable gate array, FPGA)兩

大類。其中 FPGA 依其構造可大致分成 3 類:

1. 查表型(look up tables, LUT) [18]:Xilinx, Altera, AT&T

2. 多工器型(multiplexer type, MPX):Actel, Quicklogic

3. 電晶體陣列型:Cross point

若以規劃架構可分為:

1. SRAM:Xilinx, Altera, AT&T, Atmel

2. Anti-fuse:Actel, Cypress, Quicklogic

Page 37: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

21

其中,SRAM 類型的 FPGA 具有可重複程式化的優點,適合用於實作邏輯設

計與功能性驗證。而 Anti-fuse 由於具有一次燒錄(OTP)特性,在保密性上提供

較佳保護,但也因此無法重複修改。

與 ASIC (application specific integrated circuit)相較之下,FPGA 雖具有可

程式化之特性及較高的整合度及可適性,但其性能上仍明顯輸於 ASIC。但隨

著半導體製程技術的進步,FPGA 不論在性能上和單位面積邏輯閘數目上都有

逐漸向 ASIC 逼進之趨勢,且由於近年來多媒體、電子通訊與網路應用市場的

蓬勃發展,可程式化和整合性較高的 FPGA 逐漸受到巿場的重視。

3.2.2 FPGA 電路設計流程

FPGA 之電路設計流程主要如圖 3.3 所示:

1. 利用 EDA 工具將電路架構以 HDL Editor、Schematic Flow 或 FSM (finite

state machine) Editor 完成

I. HDL Editor:以硬體描述語言,如 VHDL、Verilog 等撰寫電路的行為

架構。

II. Schematic Flow:利用軟體中提供之電路元件,如多工器、計數器

(counter)等,並配合其它邏輯閘(logic gate)之使用,完成系統之邏輯電

路。

III. FSM Editor:撰寫電路元件之時態關係圖(state diagram),由軟體合成

相對應之邏輯電路,適用於控制器之實現,如記憶體存取控制器。

2. 利用合成軟體,如 Synopsys, Synplify 等將 RTL (register transfer level)電路

Page 38: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

22

轉換成邏輯閘電路的描述。

3. 利用功能模擬驗證電路之邏輯行為正確與否

I. 是 – 進入時序模擬階段。

II. 否 – 返回步驟 1,修改電路設計。

4. 利用時序模擬驗證電路時序之準確性。

I. 功能模擬:此階段主要驗證電路邏輯是否正確,並未考慮電子訊號傳

遞之延遲。若發現邏輯上之錯誤,返回步驟 1 修改電路設計;若無誤

則進入時序模擬。

II. 時序模擬:軟體會根據設計者所選擇之 FPGA 晶片加入特性參數,如

長距離繞線之延遲時間、元件輸出/輸入之延遲時間差等,模擬實際訊

號在邏輯閘與電路切換間之延遲效應,使電路之行為表現更為接近真

實。時序模擬可靠度非常高,只要時序模擬正確,則載入 FPGA 後之

表現與時序模擬結果相去不遠。

5. 利用 FPGA 編譯器,將邏輯電路編譯轉換成電路繞線佈局。

I. Translate:轉譯 HDL Editor、Schematic Flow 與 FSM Editor 等電路成

為 FPGA 格式之語言。

II. Mapping:將上述之格式最佳化,並將結果和 FPGA 內部格式相對應。

III. Place & Route:將元件間之擺置和繞線做最佳化處理。

IV. Timing:依據所合成元件之位置、繞線長短及切換點數估算出元件間

之延遲時間,進而推算出電路之最高操作頻率。

V. Configure:將元件擺置方式轉換成特定載入 FPGA 之檔案格式。

6. 載入 FPGA [10],利用邏輯分析儀驗證系統是否正常運作。

Page 39: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

23

3.3 TMS320C6701 DSP 簡介

在數位化時代來臨後,高速運算的需求增加,而 SoC 更掀起數位與類比

間相互轉換的整合風潮。在市場的帶動下所提升對資料處理的需求,再加上

DSP 在技術上的發展和對於商品在成本和上市時程的考量下,使得 DSP 在不

同 領 域 中 被 廣 泛 的 運 用 。 TMS320C6701 DSP 為 VelociTI VLIW

(very-long-instruction-word) CPU 架構(圖 3.4)之浮點運算處理器,在 167 MHz

的時脈下,運算速度可達每秒 109 次浮點運算,其架構大致分為中央處理器

(CPU)、記憶體與週邊元件等三大部分(圖 3.5) [19][20],吾人將分別介紹之。

3.3.1 TMS320C6701 DSP CPU 結構

TMS320C6701 DSP 包含 8 組功能單元(function unit)與兩組各 16 個 32-bit

之一般暫存器(register file),相當於每一時脈可執行 8 組 32 位元之指令集。8

組功能單元之作用如下:

1. .M 單元:乘法器,提供兩個 16-bit 變數相乘,其輸出為 32-bit。

2. .L 單元:加法器,提供變數之加、減法,和邏輯運算功能,如 AND、OR

和 XOR。

3. .S 單元:提供位元移位(bit shift)及分枝程式碼執行(branch)之功能。

4. .D 單元:負責資料在記憶體與一般暫存器間之存取,提供線性定址

(linear-addressing)和環狀定址(circular-addressing)模式。

一般暫存器主要是提供功能單元暫存變數空間,.M1、.L1、.S1 及.D1 共

用一般暫存器 A 之空間,.M2、.L2、.S2 及.D2 則共用一般暫存器 B 之空間。

Page 40: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

24

3.3.2 TMS320C6701 DSP 記憶體分配

‘C6701 DSP 使用 32-bit 之位址線,理論上可定址至 4G Bytes 之記憶體,

不過其規劃如圖 3.6 所示,包括 64 Kbytes 內部程式記憶體(internal program

memory)、64 Kbytes 內部資料記憶體(internal data memory)及 52 Mbytes 之外

部記憶體(external memory),另有部分位址留做周邊控制用。

1. 內部程式記憶體:由程式記憶體控制器 (program memory controller,

PMEMC)設定其工作模式,包括

I. 快取模式(cache mode):所有記憶體被定義為快取記憶體,分為 2K 個

256-bit 的快取線(cache line)供 CPU 存取程式碼,其架構如圖 3.7 所示。

而在快取模式中,直接記憶體控制器(direct memory access controller,

DMA controller)無法存取此區塊之資料。

II. 映射模式(mapped mode):記憶體區塊為分 Map 0 和 Map 1 兩種定義。

當定義為 Map 0 時,位址 0x01400000h 至 0x0140FFFFh 為程式記憶

體;當定義為 Map 1 時位址 0x00000000h 至 0x0000FFFFh 為程式記憶

體。在映射模式中,CPU 和 DMA controller 皆可存取程式記憶體任意

位址,但 CPU 之存取優先權較 DMA controller 為高,若兩者同時存取

同一位址,DMA controller 需在 CPU 存取完成後才可執行存取動作。

2. 內部資料記憶體:由資料記憶體控制器(data memory controller, DMEMC)

將記憶體分為各 32 Kbytes 之兩大區塊,每一區塊再細分為 8 個槽,每個

槽提供 2 Khalfword (1 halfword = 16 bits)的儲存空間(圖 3.8)。

CPU 和 DMA 控制器可以同時存取在相同區塊,相同槽中相鄰的 16-bit

Page 41: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

25

資料,並不因此產生衝突而造成 CPU 效能的降低。

3.3.3 TMS320C6701 DSP 周邊元件

‘C6701 DSP 之週邊元件包含直接記憶體控制器、共處理器存取介面

(host-port interface, HPI 圖 3.9)、中斷選擇器(interrupt selector)及外部記憶體介

面(external memory interface, EMIF 圖 3.10)等,分述如下:

1. 直接記憶體控制器:在 CPU 運算的同時,DMA 控制器可以在背景作業中

持續在記憶體中搬移資料的動作,而不需要中斷 CPU 的運算,使得 DSP

的效能大幅提昇,但需適當規畫 CPU 和 DMA 控制器之時程安排

(scheduling)以避免資料在存取時發生碰撞的情形。DMA 控制器包含 四組

獨立的可編排程序通道(programmable channel)供 DMA 使用,和一組輔助

通道(auxiliary channel)供 HPI 之 Host CPU 存取記憶體時使用。

2. 共處理器存取介面:提供其它微處理器存取介面,透過 DMA/EDMA 控制

器連結至 CPU 記憶體,以存取 CPU 記憶體中的資料和利用記憶體映射方

式之周邊元件。CPU 和 HPI 兩者皆可存取 HPIC (HPI controller register),

而 HPI 還可利用外部資料和介面控制訊號存取 HPIA (HPI address register)

及 HPID (HPI data register)。

3. 中斷選擇器:和 DSP 相連結之非同步元件,透過中斷訊號(interrupt)向 DSP

之 CPU 提出服務要求,此時 CPU 必須暫停並儲存原先之運算,轉而執行

週邊元件之要求,待執行結束,將原運算載入暫存器,繼續原先之運

算。’C6701 DSP 包括三種中斷訊號型式,根據其優先順序分為

Page 42: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

26

I. RESET:擁有最高優先權,用於立即停止 CPU 之運算,並回到初始

狀態。

II. NMI (non-maskable interrupt):擁有次高優先權,用於向 CPU 提出硬

體警訊,如電源不足等。

III. Maskable Interrupts (INT4-INT15):其中 INT4-INT7 提供給外部元件使

用,INT8-INT11 提供給 DMA 使用,而 INT12-INT15 則提供給多通道

緩衝序列埠(multichannel buffered serial port, McBSP)使用。

4. 外部記憶體介面:提供 CPU 對外部記憶體存取之介面,可支援之外部元

件,包括

I. 管線式同步靜態記憶體(pipelined synchronous-burst SRAM, SBSRAM)

II. 同步動態記憶體(synchronous DRAM, SDRAM)

III. 非同步週邊元件,如靜態記憶體、唯讀記憶體和先進先出(first in first

out, FIFO)

IV. 外部分享記憶體元件(external shared-memory device)

EMIF 管理四塊記憶體空間,分別為 CE0、CE1、CE2 及 CE3,除 CE1 僅

支援非同步元件外,其餘皆可支援同步及非同步元件,並提供獨立的時脈和

控制訊號給予 SBSRAM 和 SDRAM。

3.4 ‘C6701 DSP EVM 模組簡介

吾人在 MIMO-OFDM 收發機硬體架構中,使用由德州儀器 (Texas

Instruments, TI)所開發 TMS320C6701 DSP 之 DSP EVM 模組(圖 3.11),其工作

Page 43: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

27

頻率為 132 MHz,運算速度可達 1056 Mflops,並透過一轉接卡,使其能相容

於 MP3C FPCB 硬體平台。在資料傳輸方面,則利用 32 位元之非同步資料匯

流排和 FPGA 做資料傳輸;另外,在開發環境上,以 PC 做為開發平台,搭配

XDS510 Emulator 之 Emulation board 和 Co composer’s CCS 之軟體,編譯演算

法並載入 EVM 模組執行。

3.4.1 ‘C6701 DSP EVM 模組架構

‘C6701 DSP EVM 之架構如圖 3.12 所示,包含 TMS320C6701 DSP、

SBSRAM、快閃記憶體(flash memory)、UART (universal asynchronous receiver

transmitter)、JTAG (joint test action group)及 CPLD,其對應之記憶體映射如表

3.2,並分述如下:

1. SBSRAM:其工作頻率為 132 MHz,容量為 512 Kbytes。工作模式分為

Map 0 和 Map 1 兩種模式

I. Map 0 模式:作為程式記憶體使用,CPU 透過 EMIF 之 CE0 存取程式

碼執行。

II. Map 1 模式:作為一般記憶體使用。

2. 快閃記憶體:為可重複寫入之非揮發性記憶體,其容量為 128 Kbytes,當

DSP 程式開發完成時,可將程式碼寫入,而當吾人重置(reset) DSP 時,

DSP 會自動將快閃記憶體中之程式載入程式記憶中執行。

3. UART 與 JTAG:皆為與 PC 作資料傳輸之介面。UART 透過 RS-232 埠和

PC 做串列資料傳輸;JTAG 為符合 IEEE 1149.1 規範之標準介面,與 PC

Page 44: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

28

端之 Innovate Integration Code Hammer PCI 介面相連結,提供 CCS 載入

DSP 程式碼,和中斷 DSP 以進行除錯或擷取記憶體資料。

4. CPLD:提供四組控制訊號,用於和 FPGA 相連結。

3.4.2 ‘C6701 DSP EVM 與 FPGA 之連結

‘C6701 DSP EVM 模組與 FPGA 相連結時,由於工作頻率的不同,需設

計一機制使 FPGA 和 DSP 能正確地接收或傳送資料。在 FPGA 端,透過中斷

訊號 EXTINT0/1/2/3 相對應至 DSP 之 INT4-INT7,而 DSP 端則透過四塊前端

處理模組(board 1 ~ board 4)對應至 EMIF CE3 之記憶體區段。

DSP 與 FPGA 之接收與傳送資料程序如下:

1. 當 FPGA 端欲傳送資料至 DSP 端時,傳送 EXTINT0/1/2/3 中斷訊號至 DSP

2. DSP 進入相對應之中斷程式,接收資料並同時執行運算。其接收資料之

時序如圖 3.13 所示,當 STRBN0/1/2/3 於下緣觸發且 RD/WR0/1/2/3 為高

準位時,前端模組進入讀出狀態,將 FPGA 寫入匯流排的資料存入相對應

DSP 之記憶體位址。

3. 待 DSP 執行結束,將資料傳回至 FPGA。其傳送資料之時序如圖 3.14 所

示,當 STRBN0/1/2/3 於下緣觸發且 RD/WR0/1/2/3 為低準位時,前端模組

進入寫入狀態,將相對應 DSP 之記憶體中的資料寫入匯流排,由 FPGA

讀取。

時序圖之相關參數如下:

1. tclk:DSP 之 clock 周期,因 DSP 工作頻率為 132 MHz,故 tclk=1/132 MHz。

Page 45: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

29

2. t1:位址線準備完成至 STRBN0/1/2/3 下緣觸發之時間。

3. t2:STRBN0/1/2/3 訊號低準位持續之時間。

4. t3:STRBN0/1/2/3 下緣觸發至資料匯流排準備完成之時間。

5. t4:資料匯流排中資料之有效時間。

6. t5:Ready 訊號至 DSP 認知之時間。

3.5 DAC/ADC 模組簡介

吾人所建立之 MIMO-OFDM 系統,利用外接之八通道 DAC (圖 3.15)/ADC

(圖 3.16)模組,做為訊號之類比和數位間轉換。其主要部分包含八顆 DAC/ADC

晶片、工作時脈源、4 組資料匯流排和八個輸出/輸入埠,分述如下:

1. DAC/ADC 晶片:分別為 DAS825E/ADC900u

2. 工作時脈源:包含 JP1、JP2 及 JP10 三組 jumper 之設定(表 3.3)。

3. 資料匯流排:透過 Aptix ExplorerTM之虛擬腳位功能,接收從 FPGA 模組

所送出之訊號。

此外,DAC 模組之輸出埠包含編號為 R219 ~ R226 八個電阻,當 DAC 模

組之輸出埠和 ADC 模組之輸入埠相連結時,其電阻值為 0.1 歐姆;但若和輸

入阻抗為 50 歐姆之儀相連結時,則必須置換為 50 歐姆之電阻,以避免因阻

抗不匹配而產生能量衰減的問題。

Page 46: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

30

3.6 FPGA 電路設計技巧

吾人在 MIMO-OFDM 收發機硬體平台實現之過程中,在 FPGA 電路設計、

FPGA 與 DSP 模組間之連結與系統測試及驗證上,均獲益良多,分述如下:

1. FPGA 電路設計:在利用 HDL 撰寫 FPGA 電路時,利用參數化及模組化

的電路設計,以期可迅速調整電路架構及增加系統之擴充性。在電路設計

之參數化方面,意指在電路合成後,透過外部匯流排或 DSP 模組設定參

數,以改變電路之工作模式,例如 ALU (arithmetic logic unit, 表 3.4),吾

人根據 S2S1S0參數,決定元件之工作模式,在電路實現上,相當於利用一

多工器及數個不同邏輯運算之電路所構成,以達成電路設計之參數化;在

電路設計之模組化方面,則考慮到為增加系統未來之擴充性,及避免因使

用參數化之電路設計而增加過多的硬體面積,而將電路設計模組化。以

MIMO-OFDM 系統為例,當吾人欲將 2Tx-2Rx 之 MIMO-OFDM 系統擴充

至 2Tx-4Rx 之系統時,只需將現有之 Rx 電路模組複製,而不需要重新撰

寫 HDL 語言,便可實現 2Tx-4Rx 之 MIMO-OFDM 系統。

2. FPGA 與 DSP 模組間之連結:在吾人之硬體平台中,FPGA 與 DSP 模組

間的連結屬於非同步連結,亦即資料匯流排與控制訊號在模組間之傳遞並

非使用相同的工作頻率。當 DSP 寫出或是讀入一筆資料匯流排之資料時,

DSP 模組中 STRBN0/1/2/3 之控制訊號會由高準位變化為低準位,持續約

500 ns 之後回復高準位狀態,而 FPGA 電路即根據 STRBN0/1/2/3 之變化

讀入或寫出資料匯流排之資料。而由於吾人之 FPGA 電路為依據振盪器所

產生之時脈訊號於上緣觸發時動作,則 500 ns 相當於歷經 10 次上緣觸發,

Page 47: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

31

因此在可能發生重複接收或送出同一筆資料的情形,故吾人須將

STRBN0/1/2/3 訊號經過整形電路,將低準位時間縮短至 1 clock (1/20

MHz),以確保當 STRBN0/1/2/3 變化時,FPGA 僅讀入或寫出一筆資料至

資料匯流排。

Page 48: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

32

Explorer MP3C

Logic Analyzer

Aptix ExplorerTM軟體

Explorer MP3C

Logic Analyzer

Aptix ExplorerTM軟體

圖 3.1 系統架構環境示意圖

OscillatorOscillator

Virtex 2000(Tx1)

Virtex 2000(Tx1)

Virtex 2000(Tx2)

Virtex 2000(Tx2)

Virtex 6000(Rx)

Virtex 6000(Rx)

Pattern Generator Adapter

Pattern Generator Adapter

FPICsFPICs

C6701 DSPEVM

C6701 DSPEVM

OscillatorOscillator

Virtex 2000(Tx1)

Virtex 2000(Tx1)

Virtex 2000(Tx2)

Virtex 2000(Tx2)

Virtex 6000(Rx)

Virtex 6000(Rx)

Pattern Generator Adapter

Pattern Generator Adapter

FPICsFPICs

C6701 DSPEVM

C6701 DSPEVM

圖 3.2 MP3C FPCB 架構

Page 49: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

33

EDA Tools

HDLEditor

Schemat icFlow

FSMEditor

Synthesis

RTL Logicgate

Function Simulation

FPGA Compiler

Download toMP3C & LA

LA Debug

Yes

Yes

No

No

No

Timing SimulationNo

Yes

EDA Tools

HDLEditor

Schemat icFlow

FSMEditor

Synthesis

RTL Logicgate

Function Simulation

FPGA Compiler

Download toMP3C & LA

LA Debug

Yes

Yes

No

No

No

Timing SimulationNo

Yes

圖 3.3 MIMO-OFDM 系統設計及驗證流程

Page 50: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

34

圖 3.4 TMS320C6701 DSP CPU 架構圖

Page 51: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

35

圖 3.5 TMS320C6701 DSP 系統架構圖

Page 52: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

36

16M x 8External RAM

4M x 8External RAM

64K x 8 Internal Prog. RAM

On-chip Peripherals

16M x 8External RAM

16M x 8External RAM

64K x 8 Internal Data RAM

Byte Address0000_0000

0180_0000

0140_0000

0100_0000

0200_0000

0300_0000

8000_0000

Range 0, 2, 3Async (SRAM, ROM, etc)Sync (SBSRAM, SDRAM)

Range 1Only Async SBSRAMUsed by Boot Loader

Internal BlockProg = RAM or cache

Data = 8/16/32-bit R/WMem-mapped Periph

= reserved

16M x 8External RAM

4M x 8External RAM

64K x 8 Internal Prog. RAM

On-chip Peripherals

16M x 8External RAM

16M x 8External RAM

64K x 8 Internal Data RAM

Byte Address0000_0000

0180_0000

0140_0000

0100_0000

0200_0000

0300_0000

8000_0000

Range 0, 2, 3Async (SRAM, ROM, etc)Sync (SBSRAM, SDRAM)

Range 1Only Async SBSRAMUsed by Boot Loader

Internal BlockProg = RAM or cache

Data = 8/16/32-bit R/WMem-mapped Periph

= reserved

圖 3.6 TMS320C6701 DSP 記憶體映射圖

Page 53: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

37

圖 3.7 TMS320C6701 DSP 快取記憶體之邏輯映射圖

圖 3.8 TMS320C6701 DSP 資料記憶體之映射圖

Page 54: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

38

圖 3.9 TMS320C6701 DSP 共處理器存取介面示意圖

圖 3.10 TMS320C6701 DSP 外部記憶體介面

Page 55: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

39

圖 3.11 TMS320C6701 DSP 之 DSP EVM 模組

JTAG

TMS320C6701

FloatingDSP

SBSRAM

Buffer

Flash

Control(CPLD)

UART

Transceiver

CE0CE1

CE2

CE3

PC

ExternalControlSignal

ExternalData Bus

32

JTAG

TMS320C6701

FloatingDSP

SBSRAM

Buffer

Flash

Control(CPLD)

UART

Transceiver

CE0CE1

CE2

CE3

PC

ExternalControlSignal

ExternalData Bus

32

圖 3.12 ‘C6701 DSP EVM 模組架構圖

Page 56: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

40

t2STRBN0/1/2/3

RD/WR0/1/2/3

ADDR[3:0]

OEN0/1

RDY0/1/2/3

Zero wait delay Wait delay

t1

Data[31:0]

DSPCLK

tclk

t2+n*1/tclk

Ready sample Ready samplet5

Setup=2 Strobe=4HOLD

=1Setup=2 Strobe=4

HOLD=1

Not ready

t3t4

圖 3.13 DSP EVM 前端處理模組讀取時序圖

t2STRBN0/1/2/3

RD/WR0/1/2/3

ADDR[3:0]

OEN0/1

RDY0/1/2/3

Zero wait delay Wait delay

Data[31:0]

DSPCLK

tclk

t2+n*1/tclk

Ready sampleReady sample

t5

Setup=2 Strobe=4HOLD

=1Setup=2 Strobe=4

HOLD=1

Not ready

10ns(max)

圖 3.14 DSP EVM 前端處理模組寫入時序圖

Page 57: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

41

圖 3.15 DAC 模組

圖 3.16 ADC 模組

Page 58: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

42

表 3.1 口 TTL 邏輯準位

TTL 邏輯準位

VOL VOH VIL VIH 電源 ≦0.4 Volt ≧2.4 Volt ≦0.8 Volt ≧2.0 Volt 5 Volt

表 3.2 口 DSP EVM 模組記憶體映射表

Description Address Range(Hex) Size

(Byte) MAP 0 MAP 1 0000 0000 – 0003 FFFF Internal program RAM

64K Bytes 0040 0000 –0003 FFFF

External memory SRAMCE0 256K Bytes

0100 0000 –0101 FFFF External memory FLASHCE1 128K Bytes

External memory SRAMCE0 256K Bytes

0140 0000–0141 FFFF Internal program RAM 64K Bytes

External memory FLASHCE1 128K Bytes

0180 0000 01FF FFFF DSP internal control register 0210 0000–0210 001C 32 UART (Only use low byte for each word) 0300 0000-0300 003F 32 All board disable 0300 0040-0300 007F 64 Board 1 active area. 0300 0080-0300 00BF 64 Board 2 active area. 0300 00C0-0300 0FFF Not use 0300 0100-0300 013F 64 Board 3 active area 0300 0140-0300 01FF Not use 0300 0200-0300 023F 64 Board 4 active area

Page 59: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

43

表 3.3 DAC/ADC 工作時脈源之腳位設定

JP1 Setup

JP2 Setup Jp10 Setup

1-2 cable clock 1-2 40 ~ 80 MHz 1-2 Cable JP6 clock2-3 OSC 2-3 15 ~ 30 MHz 3-4 Cable JP7 clock

Open 25 ~ 50 MHz 5-6 Cable JP8 clock 7-8 Cable JP9 clock

表 3.4 口 ALU 功能表,使用 2 埠 4 bits 輸入 A、B,與 1 埠 4 bits 輸

出,並使用 S2S1S0決定其工作模式

Operation Inputs S2S1S0

Outputs F

Clear 000 0000 B−A 001 B−A A−B 010 A−B ADD 011 A ADD B XOR 100 A XOR B OR 101 A OR B

AND 110 A AND B Preset 111 1111

Page 60: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

44

第四章 MIMO-OFDM 基頻收發機之 FPGA 電路設計

4.1 MIMO-OFDM 基頻收發機系統

吾人建立之 MIMO-OFDM 收發機之硬體架構如圖 4.1 所示,發射端基頻

電路由兩塊 Xilinx Virtex2000 FPGA 模組及 DAC 模組所組成,接收端基頻電

路則使用 Xilinx Virtex6000 FPGA 模組與 ADC 模組,並利用 Aptix MP3C 可組

重平台將其與 TMS320C6701 DSP 模組整合以處理基頻訊號。系統之基頻訊號

頻寬為 20 MHz,而 FPGA 模組之工作頻率為 20 MHz。

發射端基頻電路(圖 4.2)由迴旋碼編碼器(convolutional encoder)、交錯器

(interleaver)、空-時區塊編碼(STBC)、離散傅利葉反轉換器及二組將訊號由數

位轉為類比之 DAC 所構成。而在接收端基頻電路(圖 4.3)部分,則利用二組

ADC 將類比訊號轉為數位訊號,經適當擷取訊號之有效範圍後,首先利用十

個短序文估計訊框之粗略起始點,接著利用粗略訊框起始點及二個長序文,

估計訊框之精確起始點,然後根據訊框之精確起始點啟動頻率估計電路,並

透過頻率補償器在 ADC 之後補償系統之頻率偏移。在完成時序及頻率同步之

後,將資料符元之循環前置區段去除,再經由離散傅利葉轉換將訊號送入

DSP,經由資料偵測器、解調變器、解交錯器與解碼器電路以還原資料位元。

Page 61: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

45

4.2 發射端之 FPGA 電路設計

吾人之發射端實體通道包括資料通道(data channel)及序文通道(preamble

channel)。資料通道用以傳送資料,而序文通道則是在每一訊框開頭加入十個

16 碼片長度之 PN 碼及兩個 80 碼片長度(包含 16 碼片長度之循環前置區段及

64 碼片長度之 PN 碼)之序文資料,使接收端偵測訊框之起始位置。而為了避

免序文資料受環境中雜訊所干擾,使得接收端無法偵測到訊框起始點,吾人

將序文通道之訊號振幅為資料通道的 4 倍。

資料通道分為 A、B 兩路,包含 IA 通道、QA 通道及 IB 通道、QB 通道,

為接收經 DSP 編碼、交錯、及空時區塊編碼處理後之資料,而由於 DSP 與

FPGA 模組間屬於非同步連結,故在 FPGA 電路中,設計以 DSP 所送出之

STRBN2 及 BDWEN 控制訊號,做為資料寫入及讀出之判別。當 STRBN2 及

BDWEN 由高準位變為低準位時,將匯流排資料寫入相對應的 128 × 2 記憶體

位址中 (圖 4.4),而同時亦將記憶體中之資料讀出並插入導引符元(pilot

symbol),送入離散傅利葉反轉換電路,再將其輸出資料依下列方式寫入/讀出

一 256 × 8 之記憶體。

1. 將資料依序寫入記憶體中

1 2 3 64( 1) ....... T

NU u u u u + = (4.1)

2. 讀出時,先讀出 49 64 50 64 51 64 64 64( ...... )n n n nu u u u+ + + + 做為循環前置區段,接著讀

出 1 64 2 64 3 64 64 64( ...... )n n n nu u u u+ + + + 使其成為一 OFDM 符元。 0, 1, 2 ...... ,n N=

而在寫入/讀出的同時,亦從 256 × 8 之唯讀記憶中讀出巳知之序文資料,

經由空-時區塊編碼分為 A、B 兩路,再分別經由一多工器和上述之 OFDM 符

Page 62: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

46

元相結合成為串列資料流傳送至 DAC。

在吾人建立之 MIMO-OFDM 系統中,利用單一取樣點為 10-bit 之

DAC/ADC 模組,做為訊號之類比和數位間轉換。而為避免訊號經由 DAC/ADC

模組量化及取樣後失真之情形,吾人利用一 10-bit 計數器連結 DAC/ADC 模

組,並由邏輯分析儀觀察其結果,分述如下:

1. LSB 位元之量化錯誤(quantization error) (圖 4.5)。

2. 模組定義之電壓準位與系統相異。

3. 訊號經由 DAC 取樣後,其類比訊號為數位訊號之反向(圖 4.6a 及圖 4.6b)。

而為使訊號在經由 DAC/ADC 傳送至接收端時能正確無誤,吾人將傳送

至 DAC 之串列資料流依序做以下之處理:

1. 將傳送至 DAC 訊號之 LSB 部分取 5 個位元移至 MSB 部分,而 LSB 部分

則補 0,以避免訊號經 DAC 模組取樣後,產生 LSB 位元之量化錯誤。

2. 將步驟 1 之訊號加上一直流偏壓值,使系統與 DAC 模組定義之電壓準位

相同(表 4.1)。

3. 將步驟 2 之訊號反向,傳送至 DAC 模組。

而在接收端部分,首先,將透過 ADC 模組所接收的訊號扣除其直流偏壓

值,在電路設計上等效於將 singed bit 做反向之動作。接著取訊號 MSB 部分

的 5 個位元移至 LSB,而 MSB 部分則補上 singed bit,以維持原傳送訊號之能

量大小。

Page 63: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

47

4.3 IDFT 之 FPGA 電路設計

在 MIMO-OFDM 基頻收發機之硬體實現中,吾人利用離散傅利葉反轉換

電路(圖 4.7)做為其多載波調變器。其主要電路包括 Xilinx Foundation 中 Core

Generator 之正餘弦查表電路、乘法器、累加器及一多工器。如式(4.2)所示 1

2 /

0[ ] ( ) 0,1,......, 1

Nj kn N

kx n x k e n Nπ

=

= ⋅ = −∑ (4.2)

首先,吾人將訊號和正餘弦查表電路之輸出值做複數相乘之動作,將得到的

I、Q 通道值分別輸入累加器,並利用一變數 C_Num 計算累加次數,當 C_Num

= 63 時,送一觸發訊號和其累加值至多工器,並將累加器中 C_Num 和所有暫

存器之值歸零。當多工器收到由累加器所送出之觸發訊號時,將其變數 S_Num

歸零,並依據系統之工作時脈做 S_Num = S_Num + 1 之累加動作,此時在電路

中設計一以 S_Num 為 case 之條件電路,而多工器之輸出值便依據 S_Num 之

值切換至不同輸入路徑之累加值。

4.4 時序同步單元之 FPGA 電路設計

時序同步單元主要分為二個單元,分別為粗略時序同步單元及精確時序

同步單元。在吾人建立實體連線之過程中,粗略時序同步單元於系統重置後

啟動,並利用十個 16 碼片長度之 PN 碼搜尋訊框之粗略起始點,在獲得訊框

之粗略起始點後,產生一 FRM_STR 之控制訊號觸發精確時序同步單元,利用

二個 64 碼片長度的 PN 碼搜尋訊框之精確起始點。而由於傳送和接收電路分

別使用不同的工作時脈,訊框之起始位置會隨之變動,因此每一訊框均執行

Page 64: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

48

粗略時序同步單元,並利用前一訊框所獲得之粗略訊框起始點,執行精確時

序同步單元,以持續鎖定訊框之精確起始點。

4.4.1 粗略時序同步單元

粗略時序同步單元(圖 4.8)為接收由 RRC 濾波器送來之 I 通道與 Q 通道資

料,其主要電路方塊包括匹配濾波器、延遲電路、加法器、有限脈波響應(FIR)

濾波器、比較器(comparator)、最大值選擇器(maximum selector)及計數器。當

吾人利用 ADC 將類比訊號轉成數位訊數之後,以 2 倍碼片速率之工作時脈對

基頻訊號做超取樣(oversampling, 圖 4.9),並透過一分流電路將其分成二組平

行且位元速率相等於碼片速率之訊號如式(4.3)所示

[ ] [ ] [ ][ ] [ ]1 2

2 2 1s n s k s k

s k s k

= ∗ + ∗ +

= + (4.3)

其中 n, k ∈{ …-3, -2, -1, 0, 1, 2, 3 …},將此二組訊號分別經過以短序文之 PN

碼為係數之匹配濾波器(圖 4.10)。接著,將不同取樣時間所得之結果輸入比較

器電路中,取 I、Q 通道輸出之最大值的平方和存於暫存器中,並和延遲 16

個碼片長度之 I、Q 通道輸出值的平方和做相加之動作(圖 4.11)。接著,經過

一有限脈波響應濾波器(圖 4.12),找出其輸出結果的極大值,其流程如圖 4.13

所示。而根據 PN 碼之特性,匹配濾波器之輸出會產生十個相同之極大值,但

由於吾人將其通過延遲電路、加法器及有限脈波響應濾波器,因此,在十個

短序文時間內只會產生一個最大值,若假設在時間 t0 時得到一最大值,表示

吾人在時間 t0時收到十個 16 碼片長度之短序文,而訊框之起始點便相當於時

間 t0扣除十個 16 碼片長度之時間。因此吾人設計一計數器從時間 t0遞增,當

Page 65: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

49

計數器到達剩餘訊框時間 K 時,便產生一粗略訊框起始訊號 FRM_STR,以啟

動精確時序同步單元。

K = (訊框取樣數 – 短序文之碼片數 × 超取樣率) – 1

= (200000 – 160 × 2) – 1

= 199679

4.4.2 精確時序同步單元

當利用短序文獲得訊框之粗略起始點後,產生一粗略訊框起始訊號

FRM_STR,將此訊號延遲十個 16 碼片長度,觸發另一控制訊號 V_ENA 以啟

動精確時序同步單元(圖 4.14)。精確時序同步單元為接收 RRC 濾波器送來之

I 通道與 Q 通道資料,其主要電路方塊包括匹配濾波器、延遲電路、加法器、

比較器、最大值選擇器及計數器。當吾人利用 ADC 將類比訊號轉成數位訊數

之後,以 2 倍碼片速率之工作時脈對基頻訊號做超取樣,並透過一分流電路

將其分成二組平行且位元速率相等於碼片速率之訊號。接著,將此二組訊號

分別經過以長序文之 PN 碼為係數之匹配濾波器,並將不同取樣時間所得之結

果輸入比較器電路中,取 I、Q 通道輸出之最大值的平方和存於暫存器中,並

和延遲 80 個碼片長度之 I、Q 通道輸出值的平方和做相加之動作,此時,可

以得到訊號與長序文之相關特性,並找出相關特性之極大值。而根據 PN 碼之

特性,匹配濾波器之輸出會產生二個相同之極大值,但由於吾人將其通過延

遲電路及加法器,因此,在二個長序文時間內只會產生一個最大值,若假設

在時間 t1時得到一最大值,表示吾人在時間 t1時收到十個 16 碼片長度之短序

文及二個 80 碼片長度之長序文(包含 16 碼片長度之循環前置區段),而訊框之

Page 66: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

50

起始點便相當於時間 t1扣除十個 16 碼片長度及二個 80 碼片長度之時間。因

此吾人設計一計數器從時間 t1遞增,當計數器到達剩餘訊框時間 K1時,便產

生一精確訊框起始訊號 FRM_STR2 (圖 4.15),以啟動頻率估計單元。

K1 = (訊框取樣數 – 序文之碼片數 × 超取樣率) – 1

= (200000 – 320 × 2) – 1

= 199359

4.5 自動頻率控制單元之 DSP 與 FPGA 電路設計

自動頻率控制單元主要分為兩個部分,一為頻率估計器,另一為頻率補

償器。吾人利用 FPGA 電路中之頻率估計器(圖 4.16)計算出 z1 及 z2 值,接著

將 z1 及 z2 值送至 DSP 運算,並回傳一變數 freq_idx 至 FPGA 電路中之頻率

補償器,而頻率補償器便依據 freq_idx 的值產生一弦波於 RRC 濾波器前和接

收訊號做複數相乘,以補償系統之頻率偏移。

吾人在系統達成時序同步之後,利用精確訊框起始訊號 FRM_STR2 啟動

自動頻率控制單元,其利用八個短序文估計頻率偏移 f∆ 。短序文為吾人巳知

之資料符元 s,在傳送端經由空-時區塊區編碼分為兩路,其表示如式(4.4)

[ ]*2 1

2 1 *1 2

- s

s s

ss s

(4.4)

而受通道效應及頻率偏移之影響,在接收端將經由 RRC 濾波器之訊號通過一

以短序文之共軛複數為係數之相關器,做積分與傾印之動作,得到相對應於

八個短序文之值為:

{ }1,1 2,1 3,1 4,1( ), ( ), ( ), ( )y i y i y i y i 、{ }5,1 6,1 7,1 8,1( ), ( ), ( ), ( )y i y i y i y i 如式(4.5)至(4.8)所示:

Page 67: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

51

02(1) (1) (2) (2)11 1 1( ) ( ( ) ( ) ) j fty i s i h s i h e π∆= + ⋅ (4.5)

0 )* * 2 ((2) (1) (1) (2)21 1 1( ) ( ( ) ( ) ) bj f t Ty i s i h s i h e π∆ += − + ⋅ (4.6)

0 )2 ( 2(1) (1) (2) (2)31 1 1( ) ( ( ) ( ) ) bj f t Ty i s i h s i h e π∆ += + ⋅ (4.7)

0 )* * 2 ( 3(2) (1) (1) (2)41 1 1( ) ( ( ) ( ) ) bj f t Ty i s i h s i h e π∆ += − + ⋅ (4.8)

接著將得到的{y11(i), y21(i), y31(i), y41(i)}、{y51(i), y61(i), y71(i), y81(i)}訊號,通過

一複數乘法器,如式(4.9)至式(4.11)運算

{ }* *1,1 1,1 3,1 2,1 4,1( ) Re ( ) ( ) ( ) ( )w i y i y i y i y i= +

{ }{ }2 2 2 2(1) (2) (1) (2)1 1 ( ) ( ) cos(2 2 )bh h s i s i f Tπ= + + ∆ (4.9)

{ }* *2,1 1,1 3,1 2,1 4,1( ) Im ( ) ( ) ( ) ( )w i y i y i y i y i= −

{ }{ }2 2 2 2(1) (2) (1) (2)1 1 ( ) ( ) sin(2 2 )bh h s i s i f Tπ= − + + ∆ (4.10)

1 1

1 1, 2 2,0 0

( ), ( )l li i

z w i z w i= =

= =∑ ∑ (4.11)

當計算出 z1 及 z2 值的同時,FPGA 送出 EXITNT1 之控制訊號至 DSP,並利

用由 DSP 產生相對應之 STRBN1 及 BDWEN 之控制訊號,將 z1 及 z2 值送至

DSP 依式(4.12)運算,估計出系統之頻率偏移,並依式(4.13)之換算,將頻率

引數 freq_idx 回傳至 FPGA 之頻率補償器。

1 2

1

1ˆ tan2 2init

b

zfT zπ

− = −

(4.12)

72 10_ ˆ64 init

freq idxf

×=

× (4.13)

吾人之頻率補償器架構如圖 4.17 所示,其中正弦查表電路、餘弦查表電

路利用 Xilinx Foundation 之 Core Generator 產生。CNT_TRIGER 負責接收由

DSP 回傳之頻率引數 freq_idx,並利用此頻率引數決定輸出之觸發訊號時間間

Page 68: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

52

隔,而計數器 THETA_CNT 則根據 CNT_TRIGER 所送出之觸發訊號累加 inθ

值,每當接收一個觸發訊號則 inθ 加 1。因為 inθ 為 6 位元之輸入,故其變化範

圍在 0 至 63 之間,亦即當吾人每一 clk (clk=1 20 MHz 50 ns= )送出一觸發訊

號時,正弦查表電路會每 64 clk 產生一個周期之正弦波,相當於 312 KHz。頻

率引數與頻率補償器輸出頻率之相對關係如式 4.14:

72 1064 _

freqfreq idx×

_freq idx N∈ (4.14)

而頻率補償器便依據此 DSP 估算之頻率引數,於輸出端產生一弦波於 RRC 濾

波器前和接收訊號做複數相乘,以補償系統之頻率偏移。

4.7 MIMO-OFDM 收發機硬體實現結果與分析

吾人以 FPGA 實現 MIMO-OFDM 基頻收發機中之離散傅利葉反轉換電

路、時序同步電路及自動頻率控制器三大部分,以下將對各部分電路之硬體

實現過程和結果進行討論及分析。

1. 離散傅利葉反轉換電路:在 OFDM 系統中,快速傅利葉反轉換電路用以

做為多載波調變器。在 Xilinx Foundation 之 Core Generator 中之 64-bit 快

速傅利葉反轉換電路[21],其硬體實現之面積雖較小,但其每處理一

OFDM 符元,必須花費 3 倍 OFDM 符元長度之時間,而解決此問題之方

法有二。第一,將快速傅利葉反轉換電路之工作時脈利用超頻電路將系

統之工作時脈由 20 MHz 調昇至 60 MHz ~ 80 MHz,使其加速電路運算速

度。另一方法,為本論文中所使用之離散傅利葉反轉換電路,其電路之

硬體面積雖較大,但其可使用系統 20 MHz 之工作時脈,在電路控制上

Page 69: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

53

也較使用快速傅利葉反換轉電路簡易。

而在電路設計上,由於 Xilinx Foundation 之 Core Generator 所提供

之正餘弦查表電路[22],在系統重置後,其輸出值會較預期延遲 3 個 clk

(圖 4.18),而為避免輸入訊號和正餘弦查表電路輸出值在複數相乘後之

值,因延遲而產生一相位偏差,故將輸入離散傅利葉反轉換電路之訊號

通過一延遲電路予以配合。

2. 時序同步電路:在本論文中,時序同步電路之硬體實現為利用簡單之電

路元件,如:匹配濾波器、乘加器、比較器及計數器所構成,因此可縮

短電路設計時程。但必須注意的是,訊號在經由每一元件運算後,其位

元數之增加容易造成電路在硬體上執行速度變慢及面積之增加,因此必

須依訊號之有效範圍做擷取動作,但必須盡量避免因擷取動作造成訊號

之過度失真,而增加接收端在時序同步實現上之困難度。

3. 自動頻率控制器:為驗證自動頻率控制器之正確性,吾人於傳送端利用

Xilinx Foundation 中 Core Generator 之正餘弦查表電路產生一約 39 KHz

之弦波(圖 4.19),和傳送訊號做複數相乘之動作,並在接收端啟動頻率估

計電路,將其計算的 z1 及 z2 值送至 DSP 做頻率估計,其估計結果約為

39 KHz (圖 4.20)。接著,將頻率偏移的估計值,換算為 freq_index 回傳

至 FPGA,透過頻率補償器產生一弦波於 RRC 濾波器前和接收訊號做複

數相乘,以補償系統之頻率偏移。。

此外,在吾人建立 MIMO-OFDM 基頻收發機之過程中,首先著重於 MISO

(multi-input single-output)系統之建立,使其時序及頻率同步都能達到正確及穩

定之狀態,並配合 DSP 之運算將資料正確地還原後。接著,再依據 MISO 之

Page 70: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

54

系統擴展成 MIMO 之系統,完成系統之建立。而在 MISO-OFDM 系統建立之

過程中,吾人導入軟體無線電之概念,將接收端之電路予以模組化之設計(圖

4.21),使得 OFDM 系統由 MISO 擴充至 MIMO 時,只需將吾人巳模組化之接

收端電路加入 MISO-OFDM 系統之接收端,並調整一 ANT_index 之參數,便

可完成 MIMO-OFDM 系統之建立。

Page 71: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

55

TMS320C6701DSP

TMS320C6701DSP

XilinxVirtex 6000

XilinxVirtex 6000

DAC

ADC

Aptix MP3C

20MHz

發射單元

XilinxVirtex 2000

接收單元

20MHz

TMS320C6701DSP

TMS320C6701DSP

XilinxVirtex 6000

XilinxVirtex 6000

DAC

ADC

Aptix MP3C

20MHz

發射單元

XilinxVirtex 2000

接收單元

20MHz

圖 4.1 MIMO-OFDM 收發機之硬體架構圖

PilotSubcarriers

RRCRRC

Time/FrequencySynchronizationTime/FrequencySynchronization

DFT &Cyclic Prefix

Removal

DFT &Cyclic Prefix

RemovalPhase

EstimationPhase

Estimation

ChannelEstimationChannel

Estimation

PreamblePreamble

Space TimeBlock

Decoder

Space TimeBlock

Decoder

Linear Combiner

&InterferenceCancellation

Linear Combiner

&InterferenceCancellation

De-Mapping

De-interleaver

ADCADC

FPGA DSP

MP3C

Decoder

TrafficData

FPGAPilot

Subcarriers

RRCRRC

Time/FrequencySynchronizationTime/FrequencySynchronization

DFT &Cyclic Prefix

Removal

DFT &Cyclic Prefix

RemovalPhase

EstimationPhase

Estimation

ChannelEstimationChannel

Estimation

PreamblePreamble

Space TimeBlock

Decoder

Space TimeBlock

Decoder

Linear Combiner

&InterferenceCancellation

Linear Combiner

&InterferenceCancellation

De-Mapping

De-interleaver

ADCADC

FPGA DSP

MP3C

Decoder

TrafficData

FPGA

圖 4.2 MIMO-OFDM 基頻發射端之電路架構圖

Page 72: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

56

PilotSubcarriers

RRCRRC

Time/FrequencySynchronizationTime/FrequencySynchronization

DFT &Cyclic Prefix

Removal

DFT &Cyclic Prefix

RemovalPhase

EstimationPhase

Estimation

ChannelEstimationChannel

Estimation

PreamblePreamble

Space TimeBlock

Detection

Space TimeBlock

Detection

Linear Combiner

&InterferenceCancellation

Linear Combiner

&InterferenceCancellation

De-Mapping

De-interleaver

ADCADC

FPGA DSP

MP3C

Decoder

TrafficData

FPGAPilot

Subcarriers

RRCRRC

Time/FrequencySynchronizationTime/FrequencySynchronization

DFT &Cyclic Prefix

Removal

DFT &Cyclic Prefix

RemovalPhase

EstimationPhase

Estimation

ChannelEstimationChannel

Estimation

PreamblePreamble

Space TimeBlock

Detection

Space TimeBlock

Detection

Linear Combiner

&InterferenceCancellation

Linear Combiner

&InterferenceCancellation

De-Mapping

De-interleaver

ADCADC

FPGA DSP

MP3C

Decoder

TrafficData

FPGA

圖 4.3 MIMO-OFDM 基頻接收端之電路架構圖

圖 4.4 FPGA 接收經 DSP 處理之資料時序圖。G1-tr 為 DSP 對資料

做編碼、交錯、及空時區塊編碼處理之時間

Page 73: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

57

圖 4.5 DAC 模組之量化錯誤圖

圖 4.6a 10-bit 計數器之數位訊號波形圖

Page 74: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

58

圖 4.6b 經 DAC 模組取樣之 10-bit 計數器之類比訊號波形圖

DD

N = 64, 128…

...

...

X(0)

I + jQ

...

MUX64

FFT_I_OUT FFT_Q_OUT

-2 /

-(2 63) /

1j N

j N

e

e

π

π×

-4 /

-(4 63) /

1j N

j N

e

e

π

π×

-(2 63) /

-(2 63) 63 /

1

j N

j N

e

e

π

π

×

× ×

Real

Image

{ }Re i { }Im i { }Re i { }Im i { }Re i { }Im i

∑ DD

N = 64, 128…

X(1)

∑ DD

N = 64, 128…

X(k)

∑DD

N = 64, 128…

...

...

X(0)

I + jQ

...

MUX64

FFT_I_OUT FFT_Q_OUT

-2 /

-(2 63) /

1j N

j N

e

e

π

π×

-4 /

-(4 63) /

1j N

j N

e

e

π

π×

-(2 63) /

-(2 63) 63 /

1

j N

j N

e

e

π

π

×

× ×

Real

Image

{ }Re i { }Im i { }Re i { }Im i { }Re i { }Im i

∑ DD

N = 64, 128…

X(1)

∑ DD

N = 64, 128…

X(k)

圖 4.7 離散傅利葉反轉換電路架構圖

Page 75: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

59

ENA

Com

para

tor

I channelMatch Filter

Q channelMatch Filter

D

2Delay & Adder

FIR Filter MaximumSelector

Com

para

tor

CounterRST

EVENTRST

Path APath B

粗略時序同步單元

I

Q

FRM_STR

ENA

Com

para

tor

I channelMatch Filter

Q channelMatch Filter

D

2Delay & Adder

FIR Filter MaximumSelector

Com

para

tor

CounterRST

EVENTRST

Path APath B

粗略時序同步單元

I

Q

FRM_STR

圖 4.8 粗略時序同步電路架構圖

圖 4.9 超取樣示意圖,超取樣率 2

Page 76: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

60

圖 4.10 匹配濾波器輸出之時序圖。圖中框框中的十個峰值,為十

個短序文經由匹配濾波器所輸出之值

圖 4.11 延遲加法電路輸出之時序圖。圖中框框中的九個峰值,為

圖 4.10 之輸出值經由延遲加法電路所輸出之值

Page 77: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

61

Maximum valueMaximum value

圖 4.12 有限脈波響應器輸出之時序圖

Start

FIR Filter Output

> Max_Value?

updateMax_Value

set count=0

count++

count= K ?

generateframe strobe

End

Yes

No

Yes

No

Start

FIR Filter Output

> Max_Value?

updateMax_Value

set count=0

count++

count= K ?

generateframe strobe

End

Yes

No

Yes

No

圖 4.13 時序同步單元之訊框起始點搜尋圖

Page 78: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

62

圖 4.14 精確時序同步電路架構圖

圖 4.15 時序同步電路之時序圖,FRM_STR 及 FRM_STR2 分別為訊 框之粗略起始點及精確起始點。RX_I, RX_Q 為接收訊號之

I, Q 通道值

Com

para

tor

I channelMatch Filter

Q channelMatch Filter

D

2Delay & Adder

MaximumSelector

Com

para

tor

CounterRST

EVENTRST

Path APath B

精確時序同步單元

V_ENA

I

Q

FRM_STR2

Com

para

tor

I channelMatch Filter

Q channelMatch Filter

D

2Delay & Adder

MaximumSelector

Com

para

tor

CounterRST

EVENTRST

Path APath B

精確時序同步單元

V_ENA

I

Q

FRM_STR2

Page 79: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

63

Integrate & Dump Multiplier

{ }{ }

1,1 2,1 3,1 4,1

5,1 6,1 7,1 8,1

( ), ( ), ( ), ( )

( ), ( ), ( ), ( )

y i y i y i y i

y i y i y i y i

z1

z2I

Q

FRM_STR2

DSP

FPGA頻率估計器

Integrate & Dump Multiplier

{ }{ }

1,1 2,1 3,1 4,1

5,1 6,1 7,1 8,1

( ), ( ), ( ), ( )

( ), ( ), ( ), ( )

y i y i y i y i

y i y i y i y i

z1

z2I

Q

FRM_STR2

DSP

FPGA頻率估計器

圖 4.16 頻率估計器之電路架構圖

FrequencyEstimation

DSP

z2

CNT_TRIGER

THETA_COUNTER

SIN_LUT

COS_LUT

freq_index

EVENT

20MHz

inθ

頻率補償器

FPGA

1 2

1

1ˆ tan2 2init

b

zfT zπ

− = −

72 10_ ˆ64 init

freq idxf

×=

×

z1FrequencyEstimation

DSP

z2

CNT_TRIGER

THETA_COUNTER

SIN_LUT

COS_LUT

freq_index

EVENT

20MHz

inθ

頻率補償器

FPGA

1 2

1

1ˆ tan2 2init

b

zfT zπ

− = −

72 10_ ˆ64 init

freq idxf

×=

×

z1

圖 4.17 頻率補償器之電路架構圖

Page 80: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

64

150ns150ns

圖 4.18 餘弦查表電路輸出延遲之時序圖

25.648us25.648us

圖 4.19 正餘弦查表電路所產生之弦波,其頻率約為 39 KHz

Page 81: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

65

圖 4.20 頻率估計器所估計系統之頻率偏移,其值約為 39 KHz

RRCRRC

TimingSynchronization

TimingSynchronization

DFT & Cyclic Prefix

Removal

DFT & Cyclic Prefix

Removal

Preamble

ADCADC

MP3C

MUXMUX DFTDFT

Antenna 1Antenna 2

DSP

FPGA

FrequencyEstimationFrequencyEstimation

AFCfreq_index

z1 & z2

TrafficData

RRCRRC

TimingSynchronization

TimingSynchronization

DFT & Cyclic Prefix

Removal

DFT & Cyclic Prefix

Removal

Preamble

ADCADC

MP3C

MUXMUX DFTDFT

Antenna 1Antenna 2

DSP

FPGA

FrequencyEstimationFrequencyEstimation

AFCfreq_index

z1 & z2

TrafficData

圖 4.21 FPGA 電路之模組化設計

Page 82: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

66

表 4.1 系統與 DAC 模組之電壓準位對照表

電壓準位 系統 DAC 模組

1v 0111111111 1111111111

0v 0000000000 1000000000

-1v 1000000000 0000000000

表 4.2 各功能單元之 FPGA 使用率對照表

功能單元 FPGA Slice 使用數目 等效邏輯閘數目

粗略時序同步單元 4,428 137,991

精確時序同步單元 5,505 139,481

頻率估計單元 3,742 82,580

離散傅利葉轉換電路 9,918 733,259

Page 83: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

67

第五章 結論

隨著多媒體時代的來臨,現今以 W-CDMA 為核心技術之第三代無線通

訊,巳無法滿足多媒體通訊之頻寬需求,因此第四代無線通訊之研究與發展,

巳成為現今重要及受矚目的課題之一。在未來第四代無線通訊規範中,可能

以 OFDM 為核心技術,提供多媒體服務。OFDM 利用快速傅利葉轉換做為調

變技術,可提供 10 Mbps 至 100 Mbps 之傳輸速率,遠超過 W-CDMA 所能提

供之 2 Mbps。在另一方面,利用 OFDM 與 MIMO 技術的結合,提升系統容

量與傳輸速率,以滿足未來多媒體傳輸之需求。

在本論文中,吾人利用 Aptix MP3C 可重組平台實現 MIMO-OFDM 收發

機架構。在傳送端部分,其通道結構包含資料通道及序文通道。資料通道用

以傳送經 DSP 編碼、交錯、及空時區塊編碼處理和離散傅利葉轉換電路之資

料;而序文通道則在傳送用以時序及頻率同步之序文資料。而在接收端部分,

首先,粗略時序同步電路利用短序文估計粗略訊框起始點,並根據粗略起始

點,啟動利用長序文估計精確訊框起始點之精確時序同步電路,接著根據精

確訊框起始點啟動頻率估計,並透過頻率補償器在 ADC 之後補償系統的頻率

偏移。在完成時序及頻率同步之後,將資料之循環前置區段去除,經由離散

傅利葉轉換電路,將訊號送入 DSP 及解碼器電路中運算,以還原資料位元。

Page 84: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

68

其中,吾人利用 FPGA 實現粗略時序同步、精確時序同步、離散傅利葉轉換

及自動頻率控制器等區塊,完成系統之同步功能。

吾人所建立之 MIMO-OFDM 收發機,利用 Aptix® System Explorer MP3C

可重組平台整合 FPGA 及 DSP 模組,做為基頻訊號之處理單元。在 FPGA 部

分,利用其高執行效率、低耗電量及可程式化之特性,實現功能單純及運算

繁複之電路,如時序同步電路、自動頻率控制電路及離散傅利葉轉換電路,

並在硬體實現過程中,將電路予以模組化設計,以利於未來系統之擴充及縮

短開發時程。另外,配合 DSP 之高速運算能力及使用 C 語言為開發工具之環

境,將系統之編碼、交錯及空-時區塊編碼功能予以參數化設計,以因應在不

同環境下可迅速切換至不同工作模式而達穩定傳輸之目標。因此,配合 FPGA

模組化及 DSP 參數化設計,以期能加速系統之開發並增加其可適性,而符合

軟體無線電之概念。而系統在 FPGA 及 DSP 實現之分配上,則必須以 FPGA

之電路面積及 DSP 之運算時間做為考量而有所取捨,進而達到系統之最佳化。

為了使系統能夠達到電路面積及運算速度之最佳化,吾人可考慮在 FPGA

部分加入延遲鎖相迴路(delay locked loop, DLL)電路,及以快速傅利葉轉換電

路取代論文中之離散傅利葉轉換電路,並在系統中加入自動增益控制器(auto

gain controller, AGC),以縮減硬體電路面積。而為因應多媒體時代的來臨,更

可以將 OFDM 和 CDMA 技術相結合,以應付高頻寬的彈性傳輸需求。

Page 85: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

69

參考文獻

[1] IEEE, “Supplement to standard for telecommunications and information exchanges between systems – LAN/MAN specific requirements – part 11: wireless MAC and PHY specifications: high speed physical layer in the 5-GHz band,” P802.11a/D7.0, July 1999.

[2] R. Van Nee and R. Prasad, OFDM for Wireless Multimedia Communications,

Artech House, 2000. [3] R. W. Chang, “Synthesis of band limited orthogonal signals for multichannel

data transmission,” Bell Syst. Tech. J., vol. 45, pp. 1745-1796, Dec. 1996. [4] G. J. Foschini, “Layered space–time architecture for wireless communication

in a fading environment when using multiple antennas,” Bell Labs Syst. Tech. J., vol. 1, pp. 41-59, Autumn 1996.

[5] G. J. Foschini and M. J. Gans, “On limits of wireless communications in a

fading environment when using multiple antennas,” Wireless Personal Commun., vol. 6, no. 3, pp. 311-335, 1998.

[6] A. F. Naguib and R. Calderbank, “Space-time coding and signal processing

for high data rate wireless communications,” Wirel. Commun. Mob. Comput., pp.13-34, 2001.

[7] A. J. Paulraj and C. B. Papadias, “Space-time processing for wireless

communications,” IEEE Signal Processing Magazine, vol. 14, pp. 49-83, Nov. 1997.

[8] 林傳生,使用 VHDL 電路設計語言之數位電路設計,儒林,2000. [9] J. Bhasker, A VHDL Primer, Prentice Hall, 1998.

Page 86: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

70

[10] Chao-Yao Huang, “DSP and FPGA realization of timing and frequency of

synchronizers for W-CDMA space-time receiver”, NCTU, MS. Thesis, June

2002. [11] J. Glossner, D. Iancu, Jin Lu, E. Hodenek, and M. Moudgill, “A

software-defined communication baseband design”, IEEE Commun.

Magazine, vol. 41, pp. 120-128, Jan. 2003. [12] J. Mitola, Software radio architecture, A Wiley-Intersceience Publication,

2000. [13] S. M. Alamouti, “A simple transmit diversity technique for wireless

communicatoins,” IEEE Trans. Commun. vol. 16, no.8, pp. 1451-1458,

Oct. 1998. [14] Lu, B.; Wang, X., “Space-time code design in OFDM systems”, IEEE

Global Telecommu. Conference, vol. 2, pp. 1000-1004, Dec. 2000. [15] Apurva N. Mody and Gordon L. Stuber, “Synchronization for MIMO

OFDM systems”, School of Electrical and Computer Engineering Georgia

Institute of Technology, Atlanta, GA 30332. [16] Y. HARA, Y. KAMIO, “Initial synchronization techniques for antenna arrays

in the presence of interference signals”, IEEE Vehicular Technology

Conference, vol. 4, pp. 1953-1957, Sept. 2002. [17] Dalia Lashin and Barry Cisneros, System Explorer MP3C Reference Guide,

Aptix Inc., 1999. [18] 國家晶片系統設計中心, Xilinx (PC), July 2000. [19] Taxes Instrument, TMS320C6701 FLOATING-POINT DIGITAL SIGNAL

PROCESSING, sprs067e, May, 2001.

Page 87: MIMO-OFDM 收發機之 FPGA 實現 - read.pudn.comread.pudn.com/downloads92/doc/comm/354882/OFDM(含部分MIMO)综述性... · i mimo-ofdm 收發機之fpga 實現 學生:黃志維

71

[20] Taxes Instrument, TMS320C6000 Peripherals Reference Guide, spru190d,

February, 2001. [21] Xilinx, Inc. 2100 Logic Drive, High-Performance 64-Point Complex

FFT/IFFT V1.0, May 11, 2001. [22] Xilinx, Inc. 2100 Logic Drive, Sine/Cosine Look Up Table V1.0.2, October

15, 1999.