0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

在DS上啟用分?jǐn)?shù)T1環(huán)回檢測(cè)

星星科技指導(dǎo)員 ? 來(lái)源:ADI ? 作者:ADI ? 2023-02-22 10:08 ? 次閱讀

本應(yīng)用筆記介紹如何使用DS31256的接收BERT功能執(zhí)行分?jǐn)?shù)T1(FT1)環(huán)路或環(huán)路下降檢測(cè)(V.54),如分?jǐn)?shù)T1.403附錄B規(guī)范中所述。工作算法和編碼示例說(shuō)明了DS31256易于適應(yīng)終端用戶應(yīng)用。

DS31256只有一個(gè)BERT引擎,但有16個(gè)V.54引擎(每個(gè)端口一個(gè))。因此,如果測(cè)試多個(gè)端口,軟件帶寬必須處理所需的多路復(fù)用。

算法

下面圖 1 和圖 2 中的流程圖詳細(xì)描述了環(huán)上和下環(huán)操作。假定只有端口 0 在查找 FT1 模式?;舅惴ㄔO(shè)置 BERT 以查找環(huán)路模式。同步后,算法檢查以確保BERT在可編程周期(代碼中為0.6秒)內(nèi)同步,然后查找全一模式。然后,對(duì)循環(huán)代碼遵循相同的同步和檢查方法,然后是 all one 模式。

盡管此示例使用 0.6s 作為確保 BERT 同步的時(shí)間段,但必須根據(jù) sync_loop 函數(shù)的執(zhí)行速度調(diào)整此時(shí)間段。

poYBAGP1eSKACaHAAABR_FvcsyQ850.gif

圖1.FT1(環(huán)上環(huán)和環(huán)下)探測(cè)器操作流程圖。

poYBAGP1eSOAezpaAAA5KoVnbL4182.gif

圖2.FT1(環(huán)上環(huán)和環(huán)下)檢測(cè)器操作流程圖(續(xù))。

編碼示例函數(shù)調(diào)用的定義

poYBAGP1fUyAG5r3AABsLgLY7Ng470.png

函數(shù)的編碼示例

測(cè)試 FT1 的功能

void FT1Test()
{
	int status = 0;
	
	FT1Setting(0, 0); 				-- Configure the device for BERT
status = sync_loop(1, 300, 5000); 		-- FT1 loop-up test
if(status == 1) 				-- Return status is synced
{
  	status = sync_loop(3, 300, 5000);	-- FT1 all ones test
  	if(status == 1)
  	{
   	loopbackSetup(1);			-- Place channelized in network loopback
	status = sync_loop(2, 300, 5000);	-- FT1 loop-down test
	
	if(status == 1)
   	     {
status = sync_loop(3, 300, 5000); 	-- FT1 all ones test
    		if(status == 1)
loopbackSetup(0);			-- Take out from channelized loopback 
    		else
checkstatus(3);			-- Print out test status
   	} 
	else 
	{
checkstatus(2);			-- Print out test status
	}
  	} 
else 
{
checkstatus(3);			-- Print out test status
  	}
} 
else 
{
  	checkstatus(1);				-- Print out test status
}
}

1. 打印測(cè)試狀態(tài)消息的功能

void checkstatus(int type)
{
	switch(type)
 	{
 	case 1: printf("Loopup pattern not found");	
  		break;
 	case 2: printf("Loopdown pattern not found");
  		break;
 	case 3: printf("All 1's pattern not found");
  		break;
 	}
}

2. 配置FT1的功能

此示例假定端口 0 用于 FT1 檢測(cè)

void FT1Setting(int dev, int port)
{
int mc = 0;						-- Variables to be used
int ds0 = 0;
int rcfg = 0;
	
mc = read_reg (0x10);				-- Read Master Control(MC) 0x00 register
mc = mc & 0xf07f;	-- Mask out the read-back value from MC 
write_reg (0x10, mc); 	-- Assign the BERT to port 0 (MC.BPS4-0) 

write_reg(0x0304, 0x4000); 	-- Configure port 0 in receive port 
for(ds0 = 0; ds0 < 128; ds0 = ds0 + 1) 		-- Configure register 
{							--Assign timeslot R[0]CFG[ds0].RBERT bit  
write_ind_reg(0x0300, 0x0100 + ds0);	-- Assign all 128 ds0’s to RBERT 
	}				
printf("FT1 configuration completed."); 
}

3. 執(zhí)行FT1測(cè)試的功能

int sync_loop(int pattern, int sync_cnt, int timeout) 
{  
int timeCnt = 0; 					-- Variables will be used
int cnt = 0;
int status = 0;
int temp = 0;
int sync = 0; 
int bertc0 = 0; 
int bertec0 = 0;

BertSetup(pattern);					-- Set up the BERT

bertc0 = read_reg (0x500);				-- Toggle RESYNC
bertc0 = bertc0 | 0x0001;	-- Mask the read BERTC0 value 
write_reg (0x500, bertc0);				-- Write a 1 into BERTC0.RESYNC
bertc0 = bertc0 & 0xfffe;				-- Mask out read-back value
write_reg (0x500, bertc0);				-- Write 0 into BERTC0.RESYNC

bertc0 = read_reg (0x500);				-- Read BERTC0
bertec0 = read_reg (0x518);				-- Read BERTEC0
sync = ((bertec0 & 0x0001) == 0x0001);  		
timeCnt = timeCnt + 1;

while(cnt= timeout)
   	{
printf("Time Out while searching for pattern.");
return status = 0;
   	}
       }
	delay(2000);
	timeCnt = timeCnt +1;
	bertec0 = read_reg (0x518); 			-- Read value of BERTEC0
	temp = ((bertec0 & 0x0010) == 0x0010);	-- Check BERTEC0.RLOS 
	
	if(temp == 1)
     {
            sync = 0;
   	cnt = 0;
	}
	else
	{
   	cnt = cnt+1;
	}

	if(cnt == sync_cnt)
	{
   	printf("Synced to pattern.");
   	return status = 1;
}
 }
 return 0;
}

4. 在BERT寄存器中設(shè)置模式

void BertSetup(int pattern) 
{  
	switch (pattern)  
	{
  	case 1:
write_reg (0x500, 0x0 & 0x003c);	-- Disable BERTC0.RINV 
break;					-- Set 2E7-1 pattern
case 2:
write_reg (0x500, 0x0020 & 0x003c);--Enable BERTC0.RINV 
break;					-- Set 2E7-1 pattern
  	default:
write_reg (0x508, 0xffff);		-- Set BERT Repetitive Pattern Set 
write_reg (0x50C, 0xffff);		-- in BERTBRP0-1
write_reg (0x500, 0x0010 & 0x003c);-- Disable BERTC0.RINV
   		break;					-- Set to repetitive pattern
 	}
}

5. 設(shè)置環(huán)回模式的功能

此示例假定端口 0 放置在環(huán)回中。

void loopbackSetup(int val)
{
	int a = 0; 
	int tmp = 0;
	
	tmp = val<<11;
	write_reg(0x0304, tmp); 	-- Set port and channel 0 
 	for (a = 0; a < 128; a++)	-- Set T[0]CFG[a].CNLB to place channel in 
	{	-- loopback  
write_ind_reg(0x0300, 0x0200 + a);		 
	}

	if(val ==1)
	{
write_reg(0x0200, 0x0008); 			-- Enable TP[0]CR.TFDA1 to allow data to 
printf("Loopup detected");			-- be transmitted normally
printf("Channel placed in loopback");	
	}
	else
	{
write_reg(0x0200, 0x0000); 			-- Disable TP[0]CR.TFDA1 bit 
printf("Loopdown detected");
  	printf("Channel taken out from loopback");
	} 
}

結(jié)論

本應(yīng)用筆記介紹了如何在DS31256中使用接收BERT功能。示例代碼和軟件算法說(shuō)明了執(zhí)行FT1環(huán)路或環(huán)路檢測(cè)是多么容易。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5294

    瀏覽量

    119816
  • 端口
    +關(guān)注

    關(guān)注

    4

    文章

    948

    瀏覽量

    31984
  • 引擎
    +關(guān)注

    關(guān)注

    1

    文章

    358

    瀏覽量

    22513
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    銅絞線原材料紫銅牌號(hào)T1、T2、T3是什么意思

    銅絞線原材料一般都選用紫銅,因?yàn)樽香~導(dǎo)電率、導(dǎo)電導(dǎo)熱相比黃銅有更加優(yōu)越的性能。但是紫銅又有T1、T2、T3之分。那么他們之間有什么區(qū)別呢?鄭州華威金屬小編為你做詳細(xì)解答:紫銅(工業(yè)純
    發(fā)表于 11-08 14:56

    T1 ToneMatch音頻引擎

    感謝您購(gòu)買(mǎi)Bose T1 ToneMatch音頻引擎。T1 ToneMatch音頻引擎向音樂(lè)演奏家們提供終極控制。當(dāng)與Bose L1 II型一起使用T1時(shí),
    發(fā)表于 09-03 00:05 ?37次下載

    DS33R11 以太網(wǎng)映射器,集成了T1/E1/J1收發(fā)器

    DS33R11 以太網(wǎng)映射器,集成了T1/E1/J1收發(fā)器 DS33R11 概述 DS33
    發(fā)表于 10-06 14:51 ?1245次閱讀

    Dallas Semiconductor T1/E1/J1

    摘要:本應(yīng)用筆記概述了Dallas Semiconductor T1/E1/J1收發(fā)器的環(huán)功能。環(huán)
    發(fā)表于 04-20 08:43 ?1062次閱讀
    Dallas Semiconductor <b class='flag-5'>T1</b>/E<b class='flag-5'>1</b>/J<b class='flag-5'>1</b>收

    DS31256 and T1/E1 Interface

    2155, DS21Q55, DS21Q50 and DS26528 in T1/E1, 2MHz, 4MHz, 8MHz clock mo
    發(fā)表于 04-20 09:26 ?1577次閱讀
    <b class='flag-5'>DS</b>31256 and <b class='flag-5'>T1</b>/E<b class='flag-5'>1</b> Interface

    Conversion Between T1 and E1

    Semiconductor DS21X52 and DS21X54 single chip transceivers (SCTs) with the DS216xx clock adapter (CLAD). The
    發(fā)表于 04-20 09:47 ?1055次閱讀
    Conversion Between <b class='flag-5'>T1</b> and E<b class='flag-5'>1</b>

    T1/E1 Framer Initialization an

    Semiconductor Framers. IntroductionThis application note shows how to initialize and program Dallas T1/E1 framers. The
    發(fā)表于 04-20 10:15 ?932次閱讀

    什么是T1與E1線路

    什么是T1與E1線路 Leased Line 租用線路 租用線路是電信公司為某一機(jī)構(gòu)建造的永久性通信電路。租用線路旁路了本地交換電信局(LEC)
    發(fā)表于 03-19 14:10 ?7454次閱讀

    DS26324 E1/T1/J1系統(tǒng)端口短程線路接口單元

    DS26324是支持3.3V供電E1/T1/J1系統(tǒng)的16端口短程線路接口單元(LIU)。通過(guò)內(nèi)部阻抗匹配電路支持各種應(yīng)用,只需一套少量的外部元件即可支持E
    發(fā)表于 03-22 11:39 ?2313次閱讀
    <b class='flag-5'>DS</b>26324 E<b class='flag-5'>1</b>/<b class='flag-5'>T1</b>/J<b class='flag-5'>1</b>系統(tǒng)端口短程線路接口單元

    DS31256 啟用小數(shù) T1 (FT1) 環(huán)檢測(cè)

    發(fā)表于 11-17 12:42 ?0次下載
    <b class='flag-5'>在</b> <b class='flag-5'>DS</b>31256 <b class='flag-5'>上</b><b class='flag-5'>啟用</b>小數(shù) <b class='flag-5'>T1</b> (FT<b class='flag-5'>1</b>) <b class='flag-5'>環(huán)</b><b class='flag-5'>回</b><b class='flag-5'>檢測(cè)</b>

    T1和E1之間的轉(zhuǎn)換

    本應(yīng)用筆記介紹如何使用達(dá)拉斯半導(dǎo)體DS21X52和DS21X54單芯片收發(fā)器(SCT)和DS216xx時(shí)鐘適配器(CLAD)將T1轉(zhuǎn)換為E1
    的頭像 發(fā)表于 01-10 13:45 ?1819次閱讀
    <b class='flag-5'>T1</b>和E<b class='flag-5'>1</b>之間的轉(zhuǎn)換

    Maxim T1/E1/J1收發(fā)器的T1/E1環(huán)操作

    環(huán)模式對(duì)于設(shè)備或設(shè)備的診斷測(cè)試非常有用。環(huán)模式下,設(shè)備信號(hào)通過(guò)網(wǎng)絡(luò)或特定鏈路后,將信號(hào)從
    的頭像 發(fā)表于 01-16 15:29 ?1302次閱讀
    Maxim <b class='flag-5'>T1</b>/E<b class='flag-5'>1</b>/J<b class='flag-5'>1</b>收發(fā)器的<b class='flag-5'>T1</b>/E<b class='flag-5'>1</b><b class='flag-5'>環(huán)</b><b class='flag-5'>回</b>操作

    使用TDMoP器件的FDL網(wǎng)絡(luò)環(huán)支持

    本應(yīng)用筆記解釋了如何使用Maxim的TDM包(TDMoP)器件支持FDL(設(shè)施數(shù)據(jù)鏈路)網(wǎng)絡(luò)環(huán)。本文重點(diǎn)介紹TDMoP產(chǎn)品線,其中包括本文檔中稱為DS34T10x的幾種器件。具體的TDMoP器件包括
    的頭像 發(fā)表于 02-07 14:45 ?759次閱讀
    使用TDMoP器件的FDL網(wǎng)絡(luò)<b class='flag-5'>環(huán)</b><b class='flag-5'>回</b>支持

    利用TDMoP器件支持FDL網(wǎng)絡(luò)環(huán)

    許多應(yīng)用中,系統(tǒng)管理員需要操作支持系統(tǒng)(OSS),控制、管理網(wǎng)絡(luò)設(shè)備。使用OSS,管理員可以發(fā)出命令給“測(cè)試探頭”,啟用或關(guān)閉FDL網(wǎng)絡(luò)環(huán)。本應(yīng)用筆記介紹了如何使用
    的頭像 發(fā)表于 02-09 16:37 ?725次閱讀
    利用TDMoP器件支持FDL網(wǎng)絡(luò)<b class='flag-5'>環(huán)</b><b class='flag-5'>回</b>

    DS31256的分?jǐn)?shù)級(jí)T1 (FT1)環(huán)檢測(cè)

    這篇應(yīng)用筆記介紹了利用DS31256的接收BERT功能實(shí)現(xiàn)分?jǐn)?shù)級(jí)T1 (FT1)上環(huán)或下環(huán)
    的頭像 發(fā)表于 06-16 15:35 ?749次閱讀
    <b class='flag-5'>DS</b>31256的<b class='flag-5'>分?jǐn)?shù)</b>級(jí)<b class='flag-5'>T1</b> (FT<b class='flag-5'>1</b>)<b class='flag-5'>環(huán)</b><b class='flag-5'>回</b><b class='flag-5'>檢測(cè)</b>