隨著電信數(shù)據(jù)傳輸對速率和帶寬的要求變得越來越迫切,原有建成的網(wǎng)絡(luò)是基于話音傳輸業(yè)務(wù)的網(wǎng)絡(luò),已不能適應(yīng)當(dāng)前的需求.而建設(shè)新的寬帶網(wǎng)絡(luò)需要相當(dāng)大的投資且建設(shè)工期長,無法滿足特定客戶對高速數(shù)據(jù)傳輸?shù)慕谛枨?反向復(fù)用技術(shù)是把一個單一的高速數(shù)據(jù)流在發(fā)送端拆散并放在兩個或者多個低速數(shù)據(jù)鏈路上進(jìn)行傳輸,在接收端再還原為高速數(shù)據(jù)流.該文提出一種基于FPGA的多路E1反向復(fù)用傳輸芯片的設(shè)計方案,使用四個E1構(gòu)成高速數(shù)據(jù)的透明傳輸通道,支持E1線路間最大相對延遲64ms,通過鏈路容量調(diào)整機(jī)制,可以動態(tài)添加或刪除某條E1鏈路,實現(xiàn)靈活、高效的利用現(xiàn)有網(wǎng)絡(luò)實現(xiàn)視頻、數(shù)據(jù)等高速數(shù)據(jù)的傳輸,能夠節(jié)省帶寬資源,降低成本,滿足客戶的需求.系統(tǒng)分為發(fā)送和接收兩部分.發(fā)送電路實現(xiàn)四路E1的成幀操作,數(shù)據(jù)拆分采用線路循環(huán)與幀間插相結(jié)合的方法,A路插滿一幀(30時隙)后,轉(zhuǎn)入B路E1間插數(shù)據(jù),依此類推,循環(huán)間插所有的數(shù)據(jù).接收電路進(jìn)行HDB3解碼,幀同步定位(子幀同步和復(fù)幀同步),線路延遲判斷,FIFO和SDRAM實現(xiàn)多路數(shù)據(jù)的對齊,最后按照約定的高速數(shù)據(jù)流的幀格式輸出數(shù)據(jù).整個數(shù)字電路采用Verilog硬件描述語言設(shè)計,通過前仿真和后仿真的驗證.以30萬門的FPGA器件作為硬件實現(xiàn),經(jīng)過綜合和布線,特別是寫約束和增量布線手動調(diào)整電路的布局,降低關(guān)鍵路徑延時,最終滿足設(shè)計要求.
標(biāo)簽:
FPGA
多路
傳輸
片的設(shè)計
上傳時間:
2013-07-16
上傳用戶:asdkin
TLC2543是TI公司的12位串行模數(shù)轉(zhuǎn)換器,使用開關(guān)電容逐次逼近技術(shù)完成A/D轉(zhuǎn)換過程。由于是串行輸入結(jié)構(gòu),能夠節(jié)省51系列單片機(jī)I/O資源;且價格適中,分辨率較高,因此在儀器儀表中有較為廣泛的應(yīng)用。
TLC2543的特點
(1)12位分辯率A/D轉(zhuǎn)換器;
(2)在工作溫度范圍內(nèi)10μs轉(zhuǎn)換時間;
(3)11個模擬輸入通道;
(4)3路內(nèi)置自測試方式;
(5)采樣率為66kbps;
(6)線性誤差±1LSBmax;
(7)有轉(zhuǎn)換結(jié)束輸出EOC;
(8)具有單、雙極性輸出;
(9)可編程的MSB或LSB前導(dǎo);
(10)可編程輸出數(shù)據(jù)長度。
TLC2543的引腳排列及說明
TLC2543有兩種封裝形式:DB、DW或N封裝以及FN封裝,這兩種封裝的引腳排列如圖1,引腳說明見表1
TLC2543電路圖和程序欣賞
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit clock=P1^0; sbit d_in=P1^1;
sbit d_out=P1^2;
sbit _cs=P1^3;
uchar a1,b1,c1,d1;
float sum,sum1;
double sum_final1;
double sum_final;
uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar wei[]={0xf7,0xfb,0xfd,0xfe};
void delay(unsigned char b) //50us
{
unsigned char a;
for(;b>0;b--)
for(a=22;a>0;a--);
}
void display(uchar a,uchar b,uchar c,uchar d)
{
P0=duan[a]|0x80;
P2=wei[0];
delay(5);
P2=0xff;
P0=duan[b];
P2=wei[1];
delay(5);
P2=0xff;
P0=duan[c];
P2=wei[2];
delay(5);
P2=0xff;
P0=duan[d];
P2=wei[3];
delay(5);
P2=0xff;
}
uint read(uchar port)
{
uchar i,al=0,ah=0;
unsigned long ad;
clock=0;
_cs=0;
port<<=4;
for(i=0;i<4;i++)
{
d_in=port&0x80;
clock=1;
clock=0;
port<<=1;
}
d_in=0;
for(i=0;i<8;i++)
{
clock=1;
clock=0;
}
_cs=1;
delay(5);
_cs=0;
for(i=0;i<4;i++)
{
clock=1;
ah<<=1;
if(d_out)ah|=0x01;
clock=0;
}
for(i=0;i<8;i++)
{
clock=1;
al<<=1;
if(d_out) al|=0x01;
clock=0;
}
_cs=1;
ad=(uint)ah;
ad<<=8;
ad|=al;
return(ad);
}
void main()
{
uchar j;
sum=0;sum1=0;
sum_final=0;
sum_final1=0;
while(1)
{
for(j=0;j<128;j++)
{
sum1+=read(1);
display(a1,b1,c1,d1);
}
sum=sum1/128;
sum1=0;
sum_final1=(sum/4095)*5;
sum_final=sum_final1*1000;
a1=(int)sum_final/1000;
b1=(int)sum_final%1000/100;
c1=(int)sum_final%1000%100/10;
d1=(int)sum_final%10;
display(a1,b1,c1,d1);
}
}
標(biāo)簽:
2543
TLC
上傳時間:
2013-11-19
上傳用戶:shen1230