摘要:本应用笔记介绍怎样实现Dallas Semiconductor DS2156DK开发板的DS2156 Utopia II总线与DK101或DK2000演示母板的连接。
DK101是低成本演示母板,用于评估Dallas Semiconductor电信IC。IC安装在专门设计的可以连接到DK101的子板上。DK101包含一颗微处理器、Flash和基于SRAM的程序存储器、各种振荡器、辅助逻辑,以及用于连接主机的RS-232接口。高性能演示母板(DK2000)含有全面评估Dallas Semiconductor电信子板所需的所有辅助逻辑。DK2000的处理器接口适应各种电信产品,方便进行原型设计和开发。板载MPC8260、64MB RAM、高达1MB的L2-Cache、两块2MB的Flash、快速以太网以及RS-232使得DK2000功能强大,非常灵活。
引言
DS2156具有可配置的TDM和UTOPIA II两种总线接口。UTOPIA II接口具有以下特点:
- 全部或部分DS1/E1,比特率是64kbps的倍数
- 非信道化E1
- 符合ATMwilliam hill官网
对DS1和E1承载ATM的规范
- 标准UTOPIA II到ATM层接口
- 可配置UTOPIA地址
- 物理层接口以下面两种方式之一接收DS1/E1数据流
- 环回诊断
- 发送FIFO深度可配置为2、3或者4信元
- 可选单比特HEC误码插入
- 集成可设置信元丢失指示(LCD)和可选中断
- 接收方向FIFO溢出中断
DK101是低成本演示母板,用于评估Dallas Semiconductor通信IC 。IC安装在专门设计的可以连接到DK101的子板上。DK101包含一颗微处理器、Flash和基于SRAM的程序存储器、各种振荡器、辅助逻辑,以及用于连接主机的RS-232接口。处理器运行通用固件,通过主机演示软件对子板进行读写操作。
高性能演示母板(DK2000)含有全面评估Dallas Semiconductor电信子板所需的全部辅助逻辑。DK2000的处理器接口适应各种电信产品,方便进行原型设计和开发。板载MPC8260、64MB RAM、高达1MB的L2-Cache、两块2MB的Flash、快速以太网以及RS-232使得DK2000功能强大,非常灵活。DK2000通过三条50线高密度子板连接器分别为四块子板提供处理器总线接口、TDM和UTOPIA接口。
DS2156 UTOPIA硬件
DS2156提供用户可选的TDM或者UTOPIA背板总线。当UTOPIA II工作时,在发送和接收方向同时出现时钟、同步和数据等基本TDM信号。
在ATM应用中,通过TUSEL引脚选取UTOPIA II总线接口。当TUSEL低电平时,使能TDM总线;当TUSEL高电平时,使能UTOPIA II总线。下面介绍与UTOPIA II总线接口相关的每个引脚。
UR-ADDR0 - UR-ADDR4,接收UTOPIA地址,(输入):ATM层驱动这5条UTOPIA地址总线,选择相应的UTOPIA端口。RX_UTOP_ADDR4是MSB,RX_UTOP_ADDR0是LSB。
/UR-ENB,接收UTOPIA使能,(输入):这是ATM层驱动的低电平有效信号,指示将在下一周期结束时采样UR-DATAx和UR-SOC。
UR-SOC,接收UTOPIA信元起始(输出):当UR-DATAx中含有信元的第一个有效比特,DS2156驱动该高电平有效信号,它只在/UR-ENB\使能之后的周期以及信元传送时有效。
UR-DATA0 - UR-DATA7,接收UTOPIA数据总线(输出):ATM层选择一个UTOPIA端口进行信元传送之后,DS2156驱动这条数据总线。该总线为三态总线,只在/UR-ENB\使能之后的周期以及信元传送时有效。UR-DATA7是MSB,UR-DATA0是LSB。
UR-CLAV,接收UTOPIA信元可用(输出):如果被轮询端口可以向ATM层传送一个完整的信元,该高电平有效信号有效。如果UR-ADDRx与任何UTOPIA端口地址都不匹配,该信号通过下文详述的控制线进入三态。UR-CLAV0能够与1CLAV复用实现轮询模式,同时它可实现直接状态模式。
UR-CLK,接收UTOPIA时钟(输入):接收UTOPIA总线时钟。
UT-ADDR0 - UT-ADDR4,发送UTOPIA地址(输入):ATM层驱动这条总线,轮询并选择合适的UTOPIA端口。UT-ADDR4是MSB,UT-ADDR0是LSB。
/UT-ENB,发送UTOPIA使能(输入):在UT-DATAx含有效信元的周期,ATM层输出该低电平有效信号。
UT-SOC,发送UTOPIA信元起始(输入):在UT-DATAx含有信元的第一个有效字节时,ATM层输出该高电平有效信号。
UT-DATA0 - UT-DATA7,发送UTOPIA数据总线(输入):ATM层向所选端口之一传送的8Bit实际数据。UT-DATA7是MSB,UT-DATA0是LSB。
UT-CLAV,发送UTOPIA信元可用(输出):如果DS2156具有足够空间接收来在ATM层的一个完整的信元,DS2156输出该高电平有效信号。如果UT-ADDRx与任何UTOPIA端口地址都不匹配,该信号通过下文详述的控制线进入三态。UT-CLAV0能够与1CLAV复用实现轮询模式,同时它可实现直接状态模式。
UT-2CLAV,发送UTOPIA 2信元可用(输出):DS2156输出该高电平有效信号,表示发送端可以容纳两个信元。UT-2CLAV0能够与1CLAV复用,端口0可实现直接状态模式。该信号的时序同UT-CLAV相同。该总线不是三态总线。
UT-UTDO,UTOPIA发送数据输出(输出):进入发送格式器之前的数据。在TCLK上升沿更新。该输出一般连接至TDATA。
UT-CLK,发送UTOPIA时钟(输入):发送UTOPIA总线时钟。
UTPOIA - 背板接口
DS2156的UTOPIA接口将发送ATM信元按照ATMwilliam hill官网
规范af-phy-0016.000和af-phy-0064.000映射至DS1/E1帧,并以相同的映射方式接收信元。在接收侧,按照ITU-T I.432的信元描述机制确定ATM信元边界。ATM层和系统侧同义,均指DS2156的UTOPIA II接口。
UTPOIA - 发送操作
DS2156与ATM层的接口完全符合ATMwilliam hill官网
的UTOPIA Level 2规范,同时支持直接状态和与1CLAV复用模式。DS2156可以配置使用0到31地址中的一个作为其UTOPIA端口地址,为信元速率适配提供4信元缓冲。
发送FIFO深度可设为2、3或者4信元。当被轮询的端口可以接收信元时,DS2156为该端口产生一个信元可用信号。此外,DS2156可为每个端口输出2信元可用指示。DS2156使用UT-SOC (发送UTOPIA信元起始)检测信元的第一个字节。如果在信元传送期间出现伪UT-SOC,DS2156定位最后的UT-SOC,忽略FIFO中的不完整信元
UTPOIA - 接收操作
DS2156接收接口完全符合ATMwilliam hill官网
的UTOPIA Level 2规范。DS2156可以配置使用地址范围0至7、8至15、16至23以及24至32之一作为UTOPIA端口地址。对于直接状态轮询,地址范围可以是0至3、8至11、16至19和24至27之一。
如果接收FIFO非空,输出信元可用信号。该信号在端口完成信元传送的一个时钟周期之后要根据接收FIFO空满状态进行更新。在这一时钟周期,该端口的信元可用信号处于不可用状态。在同一UTOPIA端口连续传送两个信元之间,DS2156需要至少一个时钟延时来更新内部信元指针。
DS2156DK I/O引脚通过映射与Adtech AX/4000连接
表1列出了如何连接DS2156DK与Adtech AX/4000宽带测试系统来测试DS2156 UTOPIA II总线。
表1. I/O引脚映射与Adtech AX/4000连接
Adtech Tx Pin Numbers |
Adtech Tx Pin Names |
DS2156DK Pin Names |
Adtech Rx Pin Numbers |
Adtech Rx Pin Names |
DS2156DK Pin Names |
1 |
TXDATA_0 |
TNEGI |
1 |
RXDATA_0 |
RLINK |
2 |
TXDATA_1 |
TCLKI |
2 |
RXDATA_1 |
RLCLK |
3 |
TXDATA_2 |
TCLKO |
3 |
RXDATA_2 |
RPOSI |
4 |
TXDATA_3 |
TNEGO |
4 |
RXDATA_3 |
RNEGI |
6 |
TXDATA_4 |
TPOSO |
6 |
RXDATA_4 |
RCLKI |
7 |
TXDATA_5 |
TSER |
7 |
RXDATA_5 |
RCLKO |
8 |
TXDATA_6 |
TSIG |
8 |
RXDATA_6 |
RNEGO |
9 |
TXDATA_7 |
TSYSCLK |
9 |
RXDATA_7 |
RPOSO |
5,10,20,25,30 |
GND |
GND |
5,10,20,40,45 |
GND |
GND |
22 |
TXSOC |
UOP0 |
22 |
RXSOC |
RCHBLK |
23 |
TXADDR0 |
UOP3 |
37 |
RXADDR0 |
RCHCLK |
24 |
TXADDR1 |
TCHBLK |
38 |
RXADDR1 |
RSIGF |
26 |
TXADDR2 |
TLCLK |
39 |
RXADDR2 |
RSIG |
27 |
TXADDR3 |
TLINK |
41 |
RXADDR3 |
RMSYNC |
28 |
TXADDR4 |
TPOSI |
42 |
RXADDR4 |
RFSYNC |
29 |
TXCLAV0 |
LIUC |
43 |
RXCLAV0 |
RSER |
34 |
TXENABLE |
UOP1 |
48 |
RXENB |
BPCLK |
36 |
UT_CLK |
TSSYNC |
49 |
UR_CLK |
TCHCLK |
使用DS2156配置UTPOIA II
表2中的寄存器设置DS2156子板为UTOPIA II、单CLAV、PHY端口0为8位模式。DS2156DK的插头J1 (Tx)和插头J2 (Rx)提供UTOPIA II总线连接。
对寄存器进行配置之后,用户需要触发MSTREG.URST位,复位UTOPIA II内核。
表2. UTOPIA II设置,子板CPLD的寄存器设置
Name |
Value |
|
Name |
Value |
SWITCH 1 |
0x0F |
|
SWITCH 4 |
0x0F |
SWITCH 2 |
0x03 |
|
LEVELS |
0x07 |
SWITCH 3 |
0x0F |
|
|
|
表3的寄存器设置用于配置DS2156为E1工作模式。
表3. UTOPIA II设置,E1配置时的寄存器设置
Name |
Value |
|
Name |
Value |
MSTREG |
0x02 |
|
LBCR |
0x00 |
E1RCR1 |
0x68 |
|
TAF |
0x9B |
E1RCR2 |
0x00 |
|
TNAF |
0xC0 |
E1TCR1 |
0x15 |
|
LIC1 |
0x11 |
E1TCR2 |
0x00 |
|
LIC2 |
0x90 |
CCR1 |
0x00 |
|
LIC3 |
0x00 |
CCR4 |
0x00 |
|
LIC4 |
0x00 |
IOCR1 |
0x00 |
|
|
|
IOCR2 |
0x00 |
|
|
|
表4的寄存器设置用于配置DS2156为UTOPIA II。
表4. UTOPIA II设置,UTOPIA II配置时的寄存器设置
Name |
Value |
|
Name |
Value |
U_TCFR |
0x01 |
|
U_RCR2 |
0x0 |
U_tCR1 |
0x05 |
|
U_TIUPB |
0x0 |
U_TCR2 |
0x00 |
|
PCPR |
0x22 |
U_RCFR |
0x01 |
|
PCDR1-4 |
0x0 |
U_RCR1 |
0x01 |
|
|
|
UTPOIA II设置:采用Adtech AX/4000设置DS2156DK
当DS2156DK和Adtech AX/4000连接时,可以通过计算机UTOPIA Level II设置接口,运行Adtech AX/4000软件来更改UTOPIA II的配置。
图1显示使用Adtech AX/4000软件配置UTOPIA II时,用户看到的界面。
图1. Adtech AX/4000软件界面
更改UTOPIA II设置时,用户将看到图2所示的界面。
图2. UTOPIA II的Adtech AX/4000软件界面
点击SETUP框,可以从UTOPIA II设置对话框中访问以下功能。图3所示为通用模式。
图3. 通用模式时设置UTOPIA II的Adtech AX/4000软件界面
软件界面中的'Rx Setup'和'Tx Setup'更改接收和发送设置。图4和图5分别显示了接收和发送设置的软件界面。
图4. 接收模式时设置UTOPIA II的Adtech AX/4000软件界面
图5. 发送模式时设置UTOPIA II的Adtech AX/4000软件界面
DK2000
DK2000开发平台提供4MB闪存,分成两块。每一块配置为512k x 32,由4片带插座的Atmel AT49LV040构成,方便拆卸进行外部编程。通过跳线,两个闪存块都可以配置为启动ROM。MPC8260的片选0和片选1控制闪存块。每块的片选分配通过跳线进行配置选择。威廉希尔官方网站
板上有丝印指示FLASH器件同哪一字节通道连接。
为满足调试和开发要求,DK2000平台提供两种调试连接器。连接器P9是由Motorola定义的连接至MPC8260的标准JTAG/COP接口。连接器P20是WindRiver定义的Vision Probe/Vision ICE连接器。
用户软件可以通过Vision ICE端口或者JTAG/COP端口下载至板上SRAM或者FLASH。如果采用了FLASH编程,则建议使用FLASH bank 1,FLASH bank 0含有默认的固件。
MPC8260 I/O引脚映射
MPC8260提供120个I/O引脚,可配置为专用或者通用I/O。DK2000开发平台尽可能开发I/O的功能。
把DS2156DK子板直接插入DK2000的子板连接器就完成了连接。某些子板有两个连接器,有些有三个。第三个连接器可选,用于实现高级功能(UTOPIA总线、POS-PHY总线等)。DK2000同时适用两连接器和三连接器子板,并支持第三连接器的高级功能。注意,子板不支持热插拔,DK2000平台断电后才能连接子板。表5列出了处理器MPC8260在UTOPIA时的管脚配置,以及怎样通过子板连接器进行连接。
表5. UTOPIA的I/O引脚分配
UTOPIA Function |
Signal Names on the Processor MPC8260 |
Pin Numbers on Daughter Card |
TXENA |
PA31 |
16 |
TXCLAV0 |
PA30 |
23 |
TXSOC |
PA29 |
17 |
RXENA |
PA28 |
42 |
RXSOC |
PA27 |
43 |
RXCLAV0 |
PA26 |
49 |
TXD0 |
PA25 |
13, 17 |
TXD1 |
PA24 |
14 |
TXD2 |
PA23 |
11 |
TXD3 |
PA22 |
12 |
TXD4 |
PA21 |
9 |
TXD5 |
PA20 |
10 |
TX6 |
PA19 |
7 |
TXCLAV0 |
PA30 |
23 |
UTOPIA function |
Signal names on the MPC8260 processor |
Pin numbers on daughter card |
TXD7 |
PA18 |
8 |
RXD7 |
PA17 |
34 |
RXD6 |
PA16 |
33 |
RXD5 |
PA15 |
36 |
RXD4 |
PA14 |
35 |
RXD3 |
PA13 |
38 |
RXD2 |
PA12 |
37 |
RXD1 |
PA11 |
40 |
RXD0 |
PA10 |
39 |
TXCLK |
PC21 |
18 |
RXCLK |
PC20 |
44 |
TXADDR0 |
PC15 |
6 |
RXADDR0 |
PC14 |
32 |
TXADDR1 |
PC13 |
3 |
RXADDR1 |
PC12 |
29 |
TXADDR2/TXCLAV1 |
PC7 |
4, 24 |
RXADDR2/RXCLAV1 |
PC6 |
30, 50 |
RXADDR3/RXCLAV2 |
PD29 |
27, 47 |
TXADDR4/CLAV3 |
PD19 |
2, 22 |
RXADDR4, RXCLAV3 |
PA18 |
28, 28 |
RXPRTY |
PD17 |
41 |
TXADDR3/TXCLAV2 |
PD7 |
1, 21 |
TXPRTY |
ELPD (generated in logic) |
15 |