产品描述
海口西门子一级代理商电源供应商
1 引言
随着嵌入式微处理器主频的不断提高,信号的传输处理速度越来越快,当系统时钟频率达到100MHZ以上,传统的电路设计方法和软件已无法满足高速电路设计的要求。在高速电路设计中,走线的等长、关键信号的阻抗控制、差分走线的设置等越来越重要。笔者所在的武汉华中科技大学与武汉中科院岩土力学所智能仪器室合作.以ARM9微处理器EP9315为的嵌入式系统完成工程检测仪的开发。其中在该嵌入式系统硬件电路设计中的SDRAM和IDE等长走线、关键信号的阻抗控制和差分走线是本文的,同时以cirrus logic公司的网络物理层接13芯片cs8952为例详细介绍了网络部分的硬件电路设计,为同类高速硬件电路设计提供了一种可借鉴的方法。
2 硬件平台
2.1主要芯片
本设计采用的嵌入式微处理器是Cirrus Logic公司2004年7月推出的EP93XX系列中的产品EP9315。该微处理器是高度集成的片上系统处理器,拥有200兆赫工作频率的 ARM920T内核,它具有ARM920T内核所有的优异性能,其中丰富的集成外设接口包括PCMCIA、接口图形、可接两组设备的EIDE、 1/10/100Mbps以太网、3个2.0全速HOST USB、SDRAM通道的LCD接口、触摸屏接口、SPI串行外设接口、AC97接口、6通道I2S接口和8*8键盘扫描接口.并且支持4组32位 SDRAM的无缝连接等。
主芯片丰富的外设接口大大简化了系统硬件电路.除了网络控制部分配合使用Cirrus Logic公司的100Base—X/10Base-T物理层(PHY)接口芯片CS8952外,其他功能模块增加额外的控制芯片。
2.2系统主体结构
由图1可见.系统以微处理器EP9315为,具有完备的外设接口功能,同时控制工程检测仪。IDE/CF卡接口为工程数据提供大容量移动存储设备;扩展32M的SDRAM作为外部数据存储空间;3个主动USB接口支持USB键盘鼠标;LCD接口支持STN/TFT液晶和触摸屏.为用户提供友好的交互界面;1/10/100 Mbps以太网为调试操作系统时下载内核及工程时远程监控提供途径;面板按键为工程人员野外作业无法使用键盘鼠标时提供人机交互接口。
EP9315在操作系统下主频达到200M,总线频率100M,外设时钟为50M,数据线和地址线的布线密度大,速度高,网络部分对差分线和微带线控制有特殊要求。以往使用Probbb设计主要依照经验进行PCB布局布线,显然这种方法无法满足当前的高速电路设计。ENCE公司作为EDA领域大的公司之一,其PCB设计工具性能上的优势在高速电路设计中越来越明显,故笔者使用ENCE公司的PCB设计布局软件Allegro完成高速电路设计。
3 设计实现
3.1 SDRAM的布线规则
该嵌入式系统使用64M字节的SDRAM扩展数据存储区,由两片K4S561632组成工作在32位模式下。频率可达100M以上,对于SDRAM的数据线、时钟线、片选及其它控制信号需要进行线长匹配,由此提出以下布线要求:
1. SDRAM 时钟信号:时钟信号频率较高,为避免传输线效应,按照工作频率达到或过75MHz时布线长度应在1000mil以内的原则及为避免与相邻信号产生串扰。走线长度不过1000mil,线宽10mil,内部间距5mil,外部间距30mil,要求差分布线,匹配差分对走线。误差允许在20mil以内。
2. 地址,片选及其它控制信号:线宽5mil,外部间距12mil,内部间距10mil。尽量走成菊花链拓补。可有效控制高次谐波干扰,可比时钟线长,但不能短。
3. SDRAM数据线:线宽5mil,内部间距5mil,外部间距8mil,尽量在同一层布线,数据线与时钟线的线长差控制在50mil内。
根据布线要求,在Allegro中设置不同的约束:针对线宽设置3 个约束SDRAM_CLK,SDRAM_ADDDR,SDRAM_DATA,设置完约束后将约束添加到对应的net上。使得各个net都具有线宽、线距约束属性。后为不同的信号组选择合适的约束即可。但是设置的约束在系统CPU内部是无法达到的。因为EP9315为BGA封装。pin间距1.27毫米,显然在CPU内部,线宽线距无法达到上述要求,利用Allegro设置CPU特殊走线区域cpu_area。并加上area属性,在此区域中另设置适合 BGA内部走线的约束。
3.2 Xnet在IDE总线等长布线中的应用
3.2.1系统中的IDE接口设计
EP9315强大的外设接口能力能够直接驱动IDE硬盘 ,布线时需要注意IDE总线的等长设置,但是IDE总线这类高速线需要端接匹配,可以防止信号反射和回流。如图2所示其中的排阻起到了端接匹配的作用,但使得整个走线被分为好几个NET,而Allegro中常用的走线长度设置 propagation_delay和relative_propagation_delay只能针对同一NET设置.IDE总线信号由EP9315扇出,要求EP9315到IDE接口走线DD*+UBDD*(如图2中NET)等长,误差为+/-20mil,简单的方法是分别设置DD*等长和 UBDD*等长,误差各位+/-10mil,就可以达到要求,但是增加了布线难度,特别当DD*有较大绕线空间。而UBDD*没有足够绕线空间时。这样设置等长不可行。Allegro提供了一种方法,将DD*和UBDD*走线相加再进行等长比对,这就要用到Xnet。
3.2.2 Xnet概念和Xnet等长设置
通常把连续的几段由无源元件(电阻,电容或电感)连接的NET合称为Xnet,如图3所示。
Xnet示例
图2中将DD*和UBDD*设置为同一个Xnet。对属于该Xnet的所有信号等长控制。Xnet等长设置分为以下步骤:
1.设置Xnet
选择要设置Xnet的器件(图2中为排阻RA1-RA4),创建ESpiceDevice model,Allegro将自动填入模型名称,电路类型-Resistor,PIN连接顺序:1,8,2,7,3,6,4,5,表示1和8是一个电阻 (见图2)。至此,查看排阻两边NET都添加了同一Xnet属性。
2.Xnet的等长设置
(1)建立Xnet的pin pair:在Allegro中打开constraint manager,选择relative_propagation_delay属性。已设置的Xnet自动显示,选择Xnet建立pin pair,Allegro提供整个项目中Xnet关联的起始pin和结束pin。选择需要等长设置的起始pin和结束pin。
(2)建立等长 group:选中所有需要设置等长的pin pair,创建名为R_IDE_DATA的MATCH GROUP,在与relative_ propagation_delay对应的工作窗体选择区中出现了刚创建的R_IDE_DATA,其内含建立的pin pair,按照IDE总线走线等长要求设置走线误差10mil以内,一般选择长走线为基准线(target)。
(3)走线完成后,重新打开constrait manager对实际走线进行分析,Allergo自动显示分析结果,表示走线以基准线为标准。走线误差在10mil以内。红色表示走线误差过10mil,如果分析结果,大部分走线都为红色,可以适当调整基准线的选择。
此外,Allegro在等长走线时。会实时显示走线长度是否在误差范围内,可以使用蛇型线调整走线长度。这些都大的确保了布线性。
3.3差分线和阻抗控制在网络布线中的应用
3.2.1物理层接口芯片cs8952布线准则
CS8952使用CMOS技术。提供一个的100Base-X/10Base-T物理层(PHY)线路接口。它使自适应均衡器达到优化的抗扰性和抗近端串扰(NEXT)性。可将的应用扩展至过160米的电缆,它结合了一个标准介质无关端口(MII),可简便地连接微处理器EP9315的介质访问控制器()。
以下一些PCB布线规则,将使得CS8952工作加稳定并得到良好的EMC性能:
1. 使用多层电路板,至少有一个电源层,一个地层,叠层设置为:top,gnd,VCC,bottom。使用底层pcb走信号线只作为二选择。把所有的元件都放在层。然而,旁路电容优选越靠近芯片越好,放置在CS8952下方的底层pcb上。RJ45终端元件和光纤元件可以选择放在底层。
2.4.99k的参考电阻应该越靠近RES管脚越好,把电阻另外一端使用一个过孔接到地平面。邻近的vss(85和87脚)接在电阻接地端,形成一个屏蔽。
3.对关键信号Tx+/-,RX+/-,RX_NRz+/-控制阻抗,作为微带传输线(差分对100欧,单线60欧),MII信号作为68欧微带传输线。
4.差分传输线布线应靠近(线宽间距6-8mil),与其他走线、元件保证2个线宽的距离。TX和RX差分对布线远离彼此。必要时使用pcb的相对面。
3.2.2网络部分关键信号差分走线和阻抗控制的设置
网络部分差分线及其阻抗控制以信号Tx+/-为例。步骤如下:
1.在Allegr o的assign diff pair菜单中选择建立差分对的信号Tx+/-,命名为TX_Pair。
2.按照对信号TX+/-阻抗控制要求计算差分对线宽、线距,如图4所示,选择走线层面top层,填入差分对阻抗100欧,单线阻抗60欧,得到线宽10.1mil,主要线间距8.1mil。
3.定义差分对TX_PAIR电气约束条件:
主要线宽,线间距:10mil/8mil;
次要线宽/线间距:10mil/8mi;
线小间距:6mil;
两条线无法走到一起时允许的线长:100mil;
两条线可允许的误差值:25mil。
4.分配差分对TX_PAIR到电气约束集,打开差分对DRC模式。
以上实现差分对走线和阻抗控制的方法在涉及到大量差分对的通信系统电路中非常简单实用。
4 结语
笔者利用强大的PCB设计软件Allegro实现了基于EP9315嵌入式系统的硬件电路设计。该板采用6层PCB布线,满足高速电路设计中对等长、差分、阻抗控制的要求。 基于该电路设计的嵌入式系统与武汉中科院岩土力学所设计的SY5声波工程检测仪实现了良好接口,与由51单片机搭建的原 SY5 声波仪相比,改系统功耗降低,体积变小,稳定性增强,成本降低,适合工业控制中的运用。
0 引 言
随着单片机的不断推陈出新,特别是高性价比的单片机的涌现,转速测量控制普遍采用了以单片机为的数字化、智能化的系统。本文介绍了一种由单片机C8051F060作为主控制器,使用霍尔传感器进行测量的直流电机转速测量系统。
1转速测量及控制的基本原理
1.1转速测量原理
转速的测量方法很多,根据脉冲计数来实现转速测量的方法主要有M法(测频法)、T法(测周期法)和MPT法(频率周期法),该系统采用了M法(测频法)。由于转速是以单位时间内转数来衡量,在变换过程中多数是有规律的重复运动。根据霍尔效应原理,将一块磁钢固定在电机转轴上的转盘边沿,转盘随测轴旋转,磁钢也将跟着同步旋转,在转盘下方安装一个霍尔器件,转盘随轴旋转时,受磁钢所产生的磁场的影响,霍尔器件输出脉冲信号,其频率和转速成正比。脉冲信号的周期与电机的转速有以下关系:
式中:Y为调节器的输出;e(t)为调节器的输人,一般为偏差值;Kp为比例系数。
从式(2)可以看出,调节器的输出Y与输入偏差值e(t)成正比。因此,只要偏差e(t)一出现就产生与之成比例的调节作用,具有调节及时的特点,这是一种基本的调节规律。比例调节作用的大小除了与偏差e(t)有关外,主要取决于比例系数Kp,比例调节系数愈大,调节作用越强,动态特性也越大。反之,比例系数越小,调节作用越弱。对于大多数的惯性环节,Kp太大时将会引起自激振荡。比例调节的主要缺点是存在静差,对于扰动的惯性环节,Kp太大时将会引起自激振荡。对于扰动较大,惯性也比较大的系统,若采用单纯的比例调节器就难于兼顾动态和静态特性,需采用调节规律比较复杂的PI(比例积分调节器)或PID(比例、积分、微分调节器)算法。
2系统的硬件软件设计
2.1硬件设计
本系统采用单片机C8051F060作为主控制器,使用霍尔传感器测量电机的转速,通过7079终在LED上显示测试结果。此外,还可以根据需要调整控制电机的转速,硬件组成由图1所示。
控制器C8051F060主要完成转速脉冲的采集、16为定时计数器计数定时、运算比较,片内集成的12位DAC0控制转速,并且通过7279显示接口芯片实现数码显示等多项功能。
系统采用外部晶振,系统时钟SYSCLK等于18432000,T0定时1 ms,初始化时TH0=(-SYSCLK/1 000)》8;TL0=-SYSCLK/1 000。等待1 s到,输出转速脉冲个数N,计算电机转速值。将1 s内的转速值换算成1 min内的电机转速值,并在LED上输出测量。
2.2软件设计
本系统采用C8051F060中的INT0中断对转速脉冲计数。定时器T1工作于外部事件计数方式对转速脉冲计数;T0工作于定时器方式均工作于方式1。每到1 s读一次计数值,此值即为脉冲信号的频率,根据式(1)可计算出电机的转速。由于直流电机的转速与施加工于电机两端的电压大小有关,故将实际测得的转速值与预设的转速值比较,若大于预设的转速值则减小DAC0的数值,若小于转速预设的转速值则增加DAC0的值调整电机的转速,直到转速值等于预设定的值,这样就实现了对电机转速的控制,主程序和T0中断流程图如图2、3所示。
3实验测试结果
在软件中给出转速预设值,即给定常量speed的值,观察速度稳定后七段数码管的数值,比较实际测量的转速值和预设转速值,计算测量误差,评价测量的准确性,测试结果如表1所示。根据实验测试和误差分析绘制了测量误差曲线,如图4所示。误差分析表明,转速测量误差在5%以内,并且随着转速预设值的增加测量误差愈小,呈指数形式下降,函数关系如式(3)所示。
4结 论
本测速系统采用集成霍尔传感器敏感速率信号,具有频率响应快、抗干扰能力强等特点。霍尔传感器的输出信号经信号调理后,通过单片机对连续脉冲记数来实现转速测控,并且充分利用了单片机的内部资源,有很高的性价比。经过测试并对误差进行分析发现,该系统的测量误差在5%以内,并且在测量范围内转速越高测量精度越高。所以该系统在一般的转速和控制中均可应用。
产品推荐