新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于FPGA的數(shù)字式光端機的研究與設(shè)計

基于FPGA的數(shù)字式光端機的研究與設(shè)計

作者: 時間:2008-06-02 來源:與非網(wǎng) 收藏

  4 并串/串并模塊

本文引用地址:http://butianyuan.cn/article/83485.htm

  低壓差分信號是由ANSI/TIA/EIA-644-1995定義的用于高速數(shù)據(jù)傳輸?shù)奈锢韺咏涌跇?biāo)準(zhǔn)(LVDS)。它具有超高速(速率可達(dá)1.4Gb/s)、超低功耗和低電磁輻射等特性,因而是在銅介質(zhì)上實現(xiàn)千兆位速率通信的優(yōu)選方案。而總線形低壓差分信號LVDS是LVDS技術(shù)在多點通信領(lǐng)域的擴展,它要求有更大的驅(qū)動電流(10mA)和更好的阻抗匹配設(shè)計。

 

  SN65LV1023和SN65LV1224是TI公司推出的10位總線型低壓差分信號的應(yīng)用芯片組。其中SN65LV1023是可將10位并行CMOS或TTL數(shù)據(jù)轉(zhuǎn)換為具有內(nèi)嵌時鐘的高速串行差分?jǐn)?shù)據(jù)流的串化器;而SN65LV1224則是接收該差分?jǐn)?shù)據(jù)流并將它們轉(zhuǎn)換為并行數(shù)據(jù)的解串器,它同時又可以重建并行時鐘。采用該器件組進(jìn)行數(shù)據(jù)串化時采用的是內(nèi)嵌時鐘,這樣可有效地解決由于時鐘與數(shù)據(jù)的不嚴(yán)格同步而制約高速傳輸?shù)钠款i問題。此處的硬件電路設(shè)計如圖4所示。

圖4 并串轉(zhuǎn)化硬件示意圖

  系統(tǒng)軟件設(shè)計

  系統(tǒng)軟件主要是對系統(tǒng)控制核心的的編程。整個程序基于模塊化、結(jié)構(gòu)化的軟件開發(fā)思想編寫。所用的開發(fā)工具是Altera公司出品的集成開發(fā)環(huán)境QuartusII,開發(fā)語言采用當(dāng)今比較流行的大規(guī)模集成電路Verilog開發(fā)語言。

  系統(tǒng)軟件功能實現(xiàn)了A/D控制模塊、語音編碼控制模塊、并串轉(zhuǎn)換控制模塊、串并轉(zhuǎn)換控制模塊、D/A控制模塊、語音解碼控制模塊和反向數(shù)據(jù)的收發(fā)控制模塊。

  1 A/D控制模塊

  A/D控制模塊以為主控核心,為AD9280提供采樣時鐘;同時采集AD9280A/D轉(zhuǎn)換后的數(shù)字量。

  FPGA系統(tǒng)時鐘頻率為32MHz,對于AD9280的采樣時鐘為16MHz,對系統(tǒng)時鐘進(jìn)行二分頻后提供給AD9280。同時,在分頻后的輸出時鐘的上升沿對A/D轉(zhuǎn)換的結(jié)果進(jìn)行讀取,讀取的結(jié)果存入FPGA中進(jìn)行下一步應(yīng)用。程序如下所示。

module PcmControl(clk_in,reset,tdd,tdc,tde,pcm_data);

  ……

  always@(posedge clk_in)

  begin

  if(reset)

  begintdc<=0; end

  elsebegin

  if(cnt0==7)

  begin

  tdc<=~tdc;

  cnt0<=0;

  end

  else

  cnt0<=cnt0+1;

  end

  end

  always@(posedge tdc)

  begin

  if(cnt1==140)

  begin

  tde<=~tde;

  cnt1<=0;

  end

  else

  cnt1<=cnt1+1;

  end

  always@(posedge tdc)

  begin

  pcm_data<=tdd;

  end

  endmodule

  其中,clk_in是FPGA系統(tǒng)時鐘,reset為系統(tǒng)復(fù)位信號。信號tdd是PCM編碼芯片的輸出;信號pcm_data用來存放PCM編碼數(shù)據(jù);信號tdc是PCM編碼時鐘信號;信號tde是PCM編碼使能時鐘。

fpga相關(guān)文章:fpga是什么




關(guān)鍵詞: 光端機 FPGA

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉