波长信号的解调是实现光纤光栅传感网络的关键,基于现有的光纤光栅传感器解调方法,提出一种基于FPGA的双匹配光纤光栅解调方法,此系统是一种高速率、高精度、低成本的解调系统,并且通过引入双匹配光栅有效地克服了双值问题同时扩大了检测范围。分析了光纤光栅的测温原理并给出了该方案软硬件设计,综合考虑系统的解调精度和FPGA的处理速度给出了基于拉格朗日的曲线拟合算法。 Abstract: Sensor is one of the most important application of the fiber grating. Wavelength signal demodulating is the key techniques to carry out fiber grating sensing network, based on several existing methods of fiber grating sensor demodulation inadequate, a two-match fiber grating demodulation method was presented. This system is a high-speed, high precision, low-cost demodulation system. And by introducing a two-match grating effectively overcomes the problem of double value while expands the scope of testing. This paper analyzes the principle of fiber Bragg grating temperature and gives the software and hardware design of the program. Considering the system of demodulation accuracy and processing speed of FPGA,this paper gives the curve fitting algorithm based on Lagrange.
上传时间: 2013-10-10
上传用户:zxc23456789
Hyperlynx仿真应用:阻抗匹配.下面以一个电路设计为例,简单介绍一下PCB仿真软件在设计中的使用。下面是一个DSP硬件电路部分元件位置关系(原理图和PCB使用PROTEL99SE设计),其中DRAM作为DSP的扩展Memory(64位宽度,低8bit还经过3245接到FLASH和其它芯片),DRAM时钟频率133M。因为频率较高,设计过程中我们需要考虑DRAM的数据、地址和控制线是否需加串阻。下面,我们以数据线D0仿真为例看是否需要加串阻。模型建立首先需要在元件公司网站下载各器件IBIS模型。然后打开Hyperlynx,新建LineSim File(线路仿真—主要用于PCB前仿真验证)新建好的线路仿真文件里可以看到一些虚线勾出的传输线、芯片脚、始端串阻和上下拉终端匹配电阻等。下面,我们开始导入主芯片DSP的数据线D0脚模型。左键点芯片管脚处的标志,出现未知管脚,然后再按下图的红线所示线路选取芯片IBIS模型中的对应管脚。 3http://bbs.elecfans.com/ 电子技术论坛 http://www.elecfans.com 电子发烧友点OK后退到“ASSIGN Models”界面。选管脚为“Output”类型。这样,一样管脚的配置就完成了。同样将DRAM的数据线对应管脚和3245的对应管脚IBIS模型加上(DSP输出,3245高阻,DRAM输入)。下面我们开始建立传输线模型。左键点DSP芯片脚相连的传输线,增添传输线,然后右键编辑属性。因为我们使用四层板,在表层走线,所以要选用“Microstrip”,然后点“value”进行属性编辑。这里,我们要编辑一些PCB的属性,布线长度、宽度和层间距等,属性编辑界面如下:再将其它传输线也添加上。这就是没有加阻抗匹配的仿真模型(PCB最远直线间距1.4inch,对线长为1.7inch)。现在模型就建立好了。仿真及分析下面我们就要为各点加示波器探头了,按照下图红线所示路径为各测试点增加探头:为发现更多的信息,我们使用眼图观察。因为时钟是133M,数据单沿采样,数据翻转最高频率为66.7M,对应位宽为7.58ns。所以设置参数如下:之后按照芯片手册制作眼图模板。因为我们最关心的是接收端(DRAM)信号,所以模板也按照DRAM芯片HY57V283220手册的输入需求设计。芯片手册中要求输入高电平VIH高于2.0V,输入低电平VIL低于0.8V。DRAM芯片的一个NOTE里指出,芯片可以承受最高5.6V,最低-2.0V信号(不长于3ns):按下边红线路径配置眼图模板:低8位数据线没有串阻可以满足设计要求,而其他的56位都是一对一,经过仿真没有串阻也能通过。于是数据线不加串阻可以满足设计要求,但有一点需注意,就是写数据时因为存在回冲,DRAM接收高电平在位中间会回冲到2V。因此会导致电平判决裕量较小,抗干扰能力差一些,如果调试过程中发现写RAM会出错,还需要改版加串阻。
上传时间: 2013-12-17
上传用户:debuchangshi
Abstract: This application note presents an overview of electronic margining and its value in detectingpotential system failures before a product ships from the factory. It is a calibration method that effectivelypredicts and allows adjustments to improve product quality. Margining also can be used to sort productsinto performance levels, allowing premium products to be sold at premium prices. We discuss thedownside of sorting and suggest alternative ways to segregate products.
上传时间: 2014-01-22
上传用户:lhw888
1. 简介 ISIS中的属性有非常大的用处。一个特定的对象的属性是由一些关键字组成,比如,在ISIS中,我们使用封装的属性与PCB的封装关联。 对象,管脚,电路图都有自己的属性,如果你想很把这个功能强大的软件用好你必须很清楚他们之间的联系,这个软件和以前你所用过的画电路的软件有些不同。 2. 对象属性 对象属性有两个类型—系统属性和使用属性。在ISIS中的这些功能是由一些保留字所组成,不管是内部的程序比如ARES和VSM,或者你自己所使用的软件都是有关联的。 (1)系统属性 系统属性在ISIS中是由一些特殊含义的关键字所够成。比如,一个元件中的DEVICE属性是根据元件库在分配时候定义的。这些属性一般是文本的—比如元件的REF和value属性可以直接从Edit Component对话框中访问,但是别的比如DEVICE属性就是做为图形操作所生成的结果。
上传时间: 2014-03-27
上传用户:wangfei22
重写了微软提供SQLHelper(共用的数据库调用接口) 1把SqlHelper的connectionString做成一个全局量,统一设置数据库连接字符串 2增加了返回特定表名的DataSet的各接口。 可在项目的config文件设置数据库连接字符串 private static string connectionString = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"] <!-- application specific settings --> <appSettings> <add key="ConnectionString" value="packet size=4096 user id=sa data source=localhost persist security info=True initial catalog=NorthWind password= "/> </appSettings> 当然可以把数据库连接方法修改后直接用。
标签: connectionString SQLHelper SqlHelper 微软
上传时间: 2013-12-12
上传用户:钓鳌牧马
isp1160_isa_evel_codeUSB主机软件,可驱动打印机,音频设备,鼠标? size=80>
标签: isa_evel_codeUSB 1160 isp 主机
上传时间: 2015-02-21
上传用户:semi1981
浮点数基本运算 浮点数的基本运算主要有四则运算、符号处理、大小比较,以及浮点数分柝等。 包含头文件 "fn.hpp" #include "fn.hpp" 浮点数基本运算 浮点数的基本运算中有加、减、乘、除、取负、绝对值、相等比较等。 加减乘除 加、减、乘、除四个运算极为相似,都是需要两个参数,结果当然也是浮点数了。 例子: // 加 减 乘 除 btil::fn::plus<f1, f2>::value // f1+f2 的结果 btil::fn::minus<f1, f2>::value // f1-f2 的结果 btil::fn::multiplies<f1, f2>::value // f1*f2 的结果 btil::fn::divides<f1, f2>::value // f1/f2 的结果 plus<f1, f2>::value::f_val // f1+f2 的结果的值 struct one { static const double f_val = 1.0 } // 两个浮点数 struct two { static const double f_val = 2.0 } minus<two, plus<divides<one, two>::value, one>::value >::value::f_val == 0.5 取负 取负运算就是取一个浮点数的负数。
上传时间: 2014-12-06
上传用户:exxxds
自己用C编写的小游戏,DOS界面哦,可以运行。 浮点数基本运算 浮点数的基本运算主要有四则运算、符号处理、大小比较,以及浮点数分柝等。 包含头文件 "fn.hpp" #include "fn.hpp" 浮点数基本运算 浮点数的基本运算中有加、减、乘、除、取负、绝对值、相等比较等。 加减乘除 加、减、乘、除四个运算极为相似,都是需要两个参数,结果当然也是浮点数了。 例子: // 加 减 乘 除 btil::fn::plus<f1, f2>::value // f1+f2 的结果 btil::fn::minus<f1, f2>::value // f1-f2 的结果 btil::fn::multiplies<f1, f2>::value // f1*f2 的结果 btil::fn::divides<f1, f2>::value // f1/f2 的结果 plus<f1, f2>::value::f_val // f1+f2 的结果的值 struct one { static const double f_val = 1.0 } // 两个浮点数 struct two { static const double f_val = 2.0 } minus<two, plus<divides<one, two>::value, one>::value >::value::f_val == 0.5 取负 取负运算就是取一个浮点数的负数。
上传时间: 2014-12-06
上传用户:jichenxi0730
开源的数据库管理系统,采用 key->value 方式,适用场合很多!绝对源码!
上传时间: 2013-12-15
上传用户:ynwbosss
This a simple genetic algorithm implementation where the evaluation function takes positive values only and the fitness of an individual is the same as the value of the objective function
标签: implementation evaluation algorithm function
上传时间: 2015-04-12
上传用户:klin3139