基于双NIOS II 的IP 无线收发机
- 格式:pdf
- 大小:496.07 KB
- 文档页数:12
发送,最高七位不能全为“隐性”。
图2.3仲裁场结构(3)控制场控制场是由保留位和数据长度代码构成。
其中保留位必须是“显性",作为扩展时使用,数据长度代码是待发送数据的字节数量,接收器认可“显性’’与“隐性”的全部组合m】。
仲裁场-●控制场■『效据场陪或CRCⅨaa&D“:1DLcOr'm场保留位数据长度代码图2.4控制场结构数据长度代码是四位,其中d代表显性,r代表隐性。
对其数据字节进行编码后的真值表如图2.5所示。
一…...数据字节的r费眨据长度·代码个数DLC3D●Q亡HC1Dl∞odddd1ddd2ddd3dd4drdd5dd6da7dr8ddd图2.5数据长度代码真值表(4)数据场数据场由数据帧里的发送字节构成,最多可以发送八个字节,字节从最高位开始发送。
(5)CRC场CRC场由CRC序列和CRC界定符构成。
其中CRC序列有15位,是由循环冗余效验模块生成,紧跟其后是隐性的CRC界定符。
10图2.8远程帧结构2.3.3错误帧错误帧是由错误标志和错误界定符两个场构成。
错误标志有两种不同的表现形式:主动错误标志(Activeerrorflag)和被动错误标志(Passiveerrorflag),其中主动错误标志由六个“显性’’位组成,被动错误标志由六个“隐性"位组成嘲【18】【40】。
图2.9错误帧结构错误界定符由八个“隐性”位组成。
当开始传送错误标志后,每个节点都会发送“隐性"位,并监视总线,直到检测到“隐性"位为止,然后发送剩余的“隐性’’位【习。
2.3.4过载帧过载帧是由过载标志和过载定界符构成。
过载帧只能在帧间间隙才产生,因此可以通过这种方式来区分过载帧和错误帧。
图2.10过载帧结构其中过载界定符与错误界定符的工作过程一致,这里就不做介绍。
122.3.5帧间空间帧间空间是由间隙场和总线空闲场构成。
无论是数据帧还是远程帧,要想与其他帧分开,是通过帧间空间来实现的。
当被动错误的节点使用于之前的报文发生器时,帧间空间包括间隙、挂起传送(SUSPENDTRANSMISSIoN)、总线空闲。
敬请登录网站在线投稿(t o u g a o.m e s n e t.c o m.c n)2021年第2期79F PG A的数字脉冲延时发生器设计陈泽洋(天津大学理学院,天津300072)摘要:本文主要介绍了一种数字式脉冲延时发生器的设计方法,该方案是基于A l t e r a(被I n t e l收购)的C y c l o n e I V系列F P G A实现的,为了同时满足高延时分辨率与大的可调范围,采用了粗细结合的延时方法,粗延时通过计数器法实现,细延时通过A D9501专用延时芯片实现;为了让用户与系统进行通信,在F P G A内部构建了N i o s I I软核处理器,并且编写软件程序实现人机交互㊂对系统的关键模块进行了仿真,仿真结果显示模块设计符合需求,最终延时系统可以实现精度为16.5p s㊁可调范围约为1.1s的延时㊂关键词:F P G A;A D9501;延脉冲发生时器;N i o s I I中图分类号:T N7文献标识码:AD e s i g n o f D i g i t a l P u l s e D e l a y G e n e r a t o r B a s e d o n F P G AC h e n Z e y a n g(S c h o o l o f S c i e n c e,T i a n j i n U n i v e r s i t y,T i a n j i n300072,C h i n a)A b s t r a c t:I n t h e p a p e r,a d e s i g n m e t h o d o f d i g i t a l p u l s e d e l a y g e n e r a t o r i s d e s i g n e d,w h i c h i s b a s e d o n A l t e r a's c y c l o n e I V s e r i e s F P G A.I n o r d e r t o m e e t t h e r e q u i r e m e n t s o f h i g h d e l a y r e s o l u t i o n a n d l a r g e a d j u s t a b l e r a n g e,c o m b i n e t h e c o a r s e d e l a y a n d f i n e d e l a y,t h e c o a r s e d e-l a y i s r e a l i z e d b y c o u n t e r m e t h o d,a n d t h e f i n e d e l a y i s r e a l i z e d b y A D9501s p e c i a l d e l a y c h i p.I n o r d e r t o e n a b l e u s e r s t o c o mm u n i c a t e w i t h t h e s y s t e m,N i o s I I s o f t c o r e p r o c e s s o r i s b u i l t i n F P G A,a n d s o f t w a r e p r o g r a m i s w r i t t e n t o r e a l i z e h u m a n-c o m p u t e r i n t e r a c t i o n.T h e k e y m o d u l e s o f t h e s y s t e m a r e s i m u l a t e d,a n d t h e s i m u l a t i o n r e s u l t s s h o w t h a t t h e m o d u l e d e s i g n m e e t s t h e r e q u i r e m e n t s.T h e f i n a l d e l a y s y s t e m c a n a c h i e v e a d e l a y a c c u r a c y o f16.5p s a n d a d y n a m i c r a n g e o f1.1s.K e y w o r d s:F P G A;A D9501;p u l s e d e l a y g e n e r a t o r;N i o s I I0引言脉冲延时发生器作为一种时序同步装置在激光系统[1-2]㊁雷达系统[3]㊁飞行时间质谱仪[4-5]等领域应用广泛,它可以对触发信号进行延时后输出脉冲信号,用户可以设定延时的大小㊂延时的分辨率与延时的可调范围是衡量其性能的两个重要参数,可以实现脉冲延时的方法有计数器法㊁存储器法[6]㊁专用延时芯片[7]等方法㊂计数器法与存储器法可以实现可调范围比较大的延时,不过延时精度由于受到时钟频率的限制只能做到纳秒量级,专用延时芯片法的延时精度可以做到皮秒量级,不过可调范围在微秒量级㊂F P G A是一种可编程逻辑器件,用户可以通过V e r i l o g H D L等设计文件在F P G A内部设计所需要的逻辑电路,与A S I C相比具有设计周期短㊁设计灵活等优点㊂本文介绍的延时脉冲发生器以A l t e r a(被I n t e l收购)的C y c l o n e I V系列F P G A为核心,采用粗细结合的延时方案,并且利用N i o s I I软核处理器用于系统控制,实现了脉冲延时发生器的设计㊂1基于F P G A的脉冲延时发生器整体设计延时系统的工作模式分为内触发模式与外触发模式㊂系统的设计框图如图1所示㊂工作在内触发模式时,触发信号由系统内部产生,用户可以设定触发信号的频率大小㊂工作在外触发模式时,触发信号由外部提供㊂整个延时系统的延时由粗延时部分和细延时部分组成,粗延时利用计数器法实现㊂计数器法的延时分辨率由采样时钟决定,本系统的采样时钟通过将外部50MH z晶振倍频得到,最终倍频数由系统能运行的最大时钟频率决定㊂细延时是利用A D9501实现的,A D9501通过8位控制字对单位粗延时进一步细分,得到16.5p s延时分辨率㊂P C机通过C P2102串口桥接芯片将设定的延时信息发送给N i o s I I软核处理器,延时信息包含用户设定的粗延时以及细延时,N i o s I I将粗延时信息经由P I O I P核传递到粗延时模块,细延时信息被转换成8位控制字,输出80M i c r o c o n t r o l l e r s &E m b e d d e d S ys t e m s 2021年第2期w w w .m e s n e t .c o m .c n图1 脉冲延时发生器的整体设计框图到A D 9501对其细延时进行控制㊂触发信号依次经过粗延时模块与A D 9501模块最终实现脉冲延时㊂其中内触发源模块㊁粗延时模块㊁N i o s I I 模块是在一块F P G A 内部㊂2 内触发源模块设计内触发源模块的作用是在内触发模式下提供触发信号㊂该模块的时序图如图2所示㊂图2 内触发源模块时序图c l k 为输入模块的时钟信号,d i v 为用户设定的分频数,c o u n t e r 为对时钟信号进行计数的计数器,o u t p u t 为最终输出的触发信号㊂当时钟信号到来时,启动计数器对时钟信号进行计数㊂当计数器计数的值等于d i v 时,将输出信号取反,同时计数器置零;当计数器的值不等于分频数时,输出保持不变,计数器持续对时钟信号进行计数㊂用户通过设置d i v 的值改变计数器的计数值,进而控制输出信号的跳变,从而达到对时钟信号进行分频的目的㊂3 粗延时模块设计粗延时模块负责对外部触发信号进行粗略延时,然后将延时后的脉冲输出到A D 9501进行细延时㊂该模块由输入时钟信号c l k ㊁触发信号t r i ㊁两个计数器p u l s e 1和pu l s e 2㊁两个计数器c o u n t e r 1和c o u n t e r 2组成㊂A D 9501的内部有一个斜波发生器,每次触发信号到来之后斜波发生器电压从0开始上升,当斜波发生器电压值与D A C 设定值相等时,拉高延时输出引脚电平,该斜波电压的置零是通过复位引脚实现的,拉复位引脚时,斜波发生器进行复位,如果不对其进行复位,则当下一个脉冲到来时,斜波发生器的电压是大于D A C 电压的,延时输出一直处于高电平状态,所以不能输出延时脉冲㊂由此可知,粗延时模块应该输出两个脉冲给A D 9501,分别为pu l s e 1和p u l s e 2,一个用于触发细延时,另一个用于将A D 9501斜波发生器置零㊂通过设定p u l s e 1与p u l s e 2之间的时间间隔就可以控制延时脉冲的脉宽大小㊂c o u n t -e r 1和c o u n t e r 2分别是延时计数器和脉宽计数器,通过延时控制字d e l a y 和脉宽控制字w i d t h 控制计数器计数到多少时输出脉冲信号,该模块的时序如图3所示㊂经过实验得知粗延时模块能够运行的最大时钟为240MH z,则粗延时分辨率为1/240MH z =4.2n s ,c o u n t e r 的位数设为28位,则最大延时为4.2n s ˑ228ʈ1.1s㊂图3 粗延时模块时序图4 细延时模块设计细延时模块是以A D 9501为核心实现的,它是在粗延时的分辨率基础上进一步细分实现更高分辨率的延时,A D 9501通过8位控制字对4.2n s 进行细分,则细分后的延时分辨率为4.2n s /28-1=16.5n s ㊂A D 9501的最小延迟(t P D )是触发电路延迟㊁斜坡发生器延迟和比较器延迟的总和㊂触发电路延迟和比较器延迟是固定的,斜坡发生器延迟是受线性斜坡变化率和偏移电压值影响的㊂最大延迟是t P D 和满量程(t D F S )的总和㊂斜坡发生器延迟是斜坡从其重置电压转换到D A C 电压所需的时间,D A C 电压由用户通过数字输入进行编程㊂满量程延迟(t D F S )由电容C e x t 和电阻R s e t 决定,范围为2.5n s ~10μs ,它们的关系如下:t D F S =R s e t ˑ(C e x t +8.5p F )ˑ3.84当满量程延时小于等于326n s 时,接C e x t 的引脚应当悬空;当满量程延时超过326n s 时,C e x t 引脚与电源之间可以最大加500p F 的电容㊂R s e t 的取值范围为50Ω~10k Ω㊂本设计想要实现满量程4.2n s 的延时,R s e t 大小应设置为128Ω,接C e x t 的引脚悬空㊂5 N i o s I I 控制模块设计从经济与系统复杂程度方面考虑,选用N i o s I I 软核处理器来实现P C 机对于系统的控制㊂N i o s I I 需要实现的功能为从P C 接收用户设定的延时值,然后将延时值发送给延时模块㊂利用Q s ys 自带I P 核可以实现加速设计,敬请登录网站在线投稿(t o u ga o .m e s n e t .c o m.c n )2021年第2期81图4 控制模块程序流程图实现数据接收与传输所需添加的主要I P 核有U A R T 与P I O ㊂P C 通过C P 2102将数据发送到U A R T I P 核的读寄存器,U A R T I P 核的r x d a t a寄存器接收到数据,使能读取中断,并将读取的数据在中断服务子程序中赋值给P I O ,就实现了P C 对延时系统的控制,图4为控制模块的程序流程图㊂6 关键模块仿真结果本设计的两个关键模块为内触发源模块与粗延时模块,编写测试文件对两个模块分别进行仿真,内触发源模块的仿真结果如图5所示㊂图5中信号从上到下依次是时钟信号c l k㊁复位信号r s t ㊁分频数d i v ㊁计数器c o u n t e r ㊁输出信号o u t ㊂可以看出,当分频数依次为0㊁1㊁2㊁3时,输出信号o u t 分别经过1个时钟周期㊁2个时钟周期㊁3个时钟周期㊁4个时钟周期发生电平的跳变,因此仿真结果表明,可以通过分频控制字d i v 来控制输出信号的分频数㊂粗延时模块的仿真结果如图6所示㊂图中信号从上到下依次是时钟信号c l k ㊁复位信号r s t ㊁触发信号t r㊁延时计数器c o u n t ㊁脉宽计数器c o u n t 1㊁延时控制字d e l a y㊁脉宽控制字w i d t h ㊁延时脉冲信号p u l s e 1㊁脉宽控制信号pu l s e 2㊂从仿真结果可以看出,当延时控制字为13㊁脉宽控制字为4时,触发信号到来之后的13个时钟信号输出p u l s e 1,pu l s e 1之后4个时钟信号输出p u l s e 2,该模块的设计符合需求㊂图5内触发源模块仿真结果图6 粗延时模块仿真结果7 性能比较将计数器法㊁专用延时芯片法㊁本设计的方法从可调范围㊁延时分辨率㊁功能扩展三个方面进行比较,结果如表1所列㊂表1 三种延时方法比较延时方法可调范围延时分辨率功能扩展计数器法m s ,s 量级n s 量级无法功能扩展专用延时芯片μs 量级ps 量级无法功能扩展本设计s 量级ps 量级便于功能扩展由表1中可知,本设计方法在保持计数器法与专用延时芯片方法优点的同时弥补了两种方法各自的不足,并且基于F P G A 灵活的特点,可以通过设计逻辑电路与编写N i o s I I 软核模块程序进行再次开发,以满足其他系统集成或者功能升级的需求㊂8 结 语目前国内的商用脉冲延时发生器主要依赖国外进口,价格一般在几万元到十几万元不等,价格昂贵并且性价比不高,本设计的脉冲延时发生器在满足高精度与大的可调范围的同时,成本方面也有很大的优势,整个系统制作成本仅为400元左右㊂在当今环境下,自主设计的脉冲延时发生器在商业与科技领域均具有重要意义㊂参考文献[1]蒋军敏,刘进元,刘百玉,等.用于激光打靶装置中的85敬请登录网站在线投稿(t o u ga o .m e s n e t .c o m.c n )2021年第2期85节的非线性特性耗费时间,无论系统的非线性多严重,均能按特定的关系进行转换㊂经数值分析将优化后的数据代入式(1)及联立式(1)和式(7),线性补偿前后物体位移y 和像点位移x 的关系如图6所示㊂y =270192x14216.256-398.32x+e d(8)图6 线性补偿前后物体位移y 和像点位移x 的关系5 结 语本文从反射式激光三角法测量原理公式㊁测量范围㊁分辨率及结构参数优化出发,用工程软件MA T L A B 对系统的各个参数之间的约束关系进行了分析与优化,使得参数优化过程得以简化,同时在实际中可根据器件因素和测量范围的要求不同随时改变,提高了设计的灵活性,降低了设计初期的费用,最后通过数值分析了造成物体位移与像点位移呈非线性的原因,并用线性补偿的方法使物体位移与像点位移线性输出,从而提高了测距传感器线性度与精度,降低了系统误差,实现了高精度大位移的测量㊂参考文献[1]王晓嘉,高隽,王磊.激光三角法综述[J ].仪器仪表学报,2004(S 2):601604,608.[2]L a r s L i n d n e r ,O l e g S e r g i y e n k o ,J u l i o C R o d r ígu e z Q u i ño n e z ,e t a l .M o b i l e r o b o t v i s i o n s y s t e m u s i n g c o n t i n u o u s l a s e r s c a n n i n gf o r i n d u s t r i a l a p pl i c a t i o n [J ].T h e I n d u s t r i a l R o b o t ,2016,43(4):360369.[3]S u Z h i q i ,H e Q i n g,X i e Z h i .I n d i r e c t m e a s u r e m e n t o f m o l t e n s t e e l l e v e l i n t u n d i s h b a s e d o n l a s e r t r i a n g u l a t i o n [J ].T h e R e -v i e w o f s c i e n t i f i c i n s t r u m e n t s ,2016,87(3):035117.[4]宋腾,张凤生,任锦霞.直射式激光位移传感器光束入射角对测量精度的影响[J ].机械,2017,44(2):3741.[5]Z h u a n g B H.N o n c o n t a c t m e a s u r e m e n t o f s c r a t c h o n a i r c r a f t s k i n s [J ].A p p l i e d l a s e r ,1997(2):4936.[6]任伟明,孙培懋,王亚雷,等.一种标定三角测量法激光位移计的方法[J ].光学技术,1997(3):1113,16.[7]赵景海,孙飞显.基于残差补偿的激光位移传感器测距方法[J ].计算机工程,2018,44(10):298302.[8]曹红超,陈磊,王波,等.一种改进型高精度激光三角位移传感器的结构设计研究[J ].激光杂志,2007(6):1415.[9]X u e l i H a o ,A i m i n S h a ,Z h a o yu n S u n ,e t a l .L a s e r b a s e d m e a s u r i n g m e t h o d f o r m e a n j o i n t f a u l t i n g va l u e o f c o n c r e t e p a v e m e n t [J ].O p t i k I n t e r n a t i o n a l J o u r n a l f o r L i gh t a n d E -l e c t r o n O pt i c s ,2016,127(1):274278.[10]胡纪五,史雪飞.仪表线性化优化设计[J ].电测与仪表,2000(2):58.[11]卢治功,贺鹏,职连杰,等.基于最小二乘法多项式拟合三角测量模型研究[J ].应用光学,2019,40(5):853858.[12]姜庆胜,计时鸣,张利.基于计算机视觉的机械零件平面曲线检测和识别研究[J ].机电工程,2005(7):47.樊鹏辉(硕士研究生),主要研究方向为传感器技术;杨光永(副教授),主要研究方向为传感器技术㊁机器人技术;程满(硕士研究生),主要研究方向为A G V 路径规划;刘叶(硕士研究生),主要研究方向为电机控制;徐天奇(教授),主要研究方向为传感器技术㊁自动化㊂(责任编辑:薛士然 收稿日期:2020-09-11) 新型同步系统的研究[J ].光子学报,2002(3):381383.[2]D T i a n ,G Y a n g .D e s i g n a n d d e v e l o p m e n t o f a m i n i a t u r e d i gi t a l d e l a y g e n e r a t o r f o r l a s e r i n d u c e d b r e a k d o w n s p e c t r o s c o p y[J ].I n s t r u m e n t a t i o n s c i e n c e &t e c h n o l o g y,2015(43):115124.[3]S Z h a o l i n ,L N a n ,W Y i n a n .H i g h r e s o l u t i o n p r o gr a mm a b l e d i g i t a l d e l a y g e n e r a t o r d e s i gn a n d r e a l i z a t i o n [C ]//2010I n -t e r n a t i o n a l C o n f e r e n c e o n I n t e l l i g e n t S y s t e m D e s i gn a n d E n -g i n e e r i n g A p p l i c a t i o n I E E E C o m p u t e r S o c i e t y,2010.[4]C L F e n g ,L G a o ,J H L i u .L a s e r m a s s s p e c t r o m e t r yf o r o n -l i n e d i ag n o s i s o f r e a c t i v e p l a s m a s w i th m a n y s p e ci e s [J ].R e -v i e w o f S c i e n t i f i c I n s t r u m e n t s ,2011(6):261434.[5]S V K o v t o u n ,R D E n gl i s h ,R J C o t t e r .M a s s c o r r e l a t e d a c c e l -e r a t i o n i n a r e f l e c t r o n MA L D I T O F m a s s s pe c t r o m e t e r :A n a p p r o a c hf o r e n h a n c e d r e s o l u t i o n o v e r a b r o a d m a s s r a ng e [J ].J o u r n a l o f th e A m e ri c a n S o c i e t y f o r M a s s S p e c t r o m e t r y,2002(13):135143.[6]邱有刚,黄建国,李力.基于F P G A 数字延迟单元的实现和比较[J ].电子测量技术,2011,34(9):6568.[7]马艳喜.数字延时器A D 9501的性能及其应用[J ].电子元器件应用,2002,4(11):2728.陈泽洋,主要研究方向为快点子学与离子光学㊂(责任编辑:薛士然 收稿日期:2020-08-19)。
技术创新《微计算机信息》2012年第28卷第10期120元/年邮局订阅号:82-946《现场总线技术应用200例》嵌入式与SOC基于Avalon 总线的非标准以太网控制器IP 核设计The IP Core Design of Non-standard Ethernet Controller Based on Avalon Bus(北京工业大学)薛毅彭建朝许向众XUE Yi PENG Jian-chao XU Xiang-zhong摘要:本文根据以太网控制器结构特点,提出了一种非标准以太网控制器的IP 软核设计方案。
基于Avalon 总线交换架构,该IP 核能快速方便地搭建在SOPC 系统之中,支持了嵌入式系统中的网络通信应用。
该以太网IP 核采用Verilog HDL 硬件描述语言设计,遵循软件工程自顶向下的设计方法,体现了在多时钟域操控协同工作的技术特点。
最后给出了该IP 模块所进行功能的测试与验证。
关键字:以太网控制器;IP 核设计;Avalon 总线中图分类号:TP368文献标识码:B Abstract:Based on Ethernet Controller structural features,a non-standard Ethernet controller IP core design is mentioned on this pa -per.Avalon bus-based switching architecture,the IP is quickly and easily built into the SOPC system to support network communi -cation applications in embedded systems.The Ethernet IP core using Verilog HDL hardware description language design follows the software engineering,top-down design approach,which reflecting the technical characteristics of collaborative work in the manipula -tion of multi-clock domain.Finally,the IP module for functional testing and verification is succeeded.Key words:Ethernet Controller;IP core design;Avalon Bus文章编号:1008-0570(2012)10-0176-031引言随着科技的发展与集成电路工艺的提高,FPGA 以其高速的灵活的处理能力,在通信、雷达、图形图像处理等领域有着广泛应用。
小梅哥FPGA学习笔记之Quartus II 15.0中仿真Altera三速以太网IP核(友情提示:图片有点多,默认缩小状态下可能看不清楚,点击图片可查看高清大图哦)近期的项目需要用到网络端口通过UDP协议来进行数据的与PC机的交互。
FPGA系统中实现网口有多种方式,包括友晶的DE2-35开发板上使用的NIOS II处理器通过外部MAC芯片DM9000实现的web server,以及DE2-115开发板上使用NIOS II处理器与三速以太网(TSE)IP核实现web server,再就是W5X00系列的硬件TCP/IP网络芯片,配合FPGA实现网络数据传输。
当然,我自己也曾经在项目中直接使用完全自己编写的UDP协议网络收发逻辑配合外部网络PHY芯片,实现数据的收发。
早就知道Quartus II中提供了有三速以太网的MAC 层IP,今天,在新项目的网络接口开工前,先通过仿真来了解一下该IP核的基本情况,相信该IP核的仿真结果一定很标准,能够为我后期手动写MAC层逻辑提供一个标准的时序参照。
这里我使用Altera 公司最新的FPGA开发工具Quartus II15.0(前天刚刚出了update1版本,不过公司网速慢,我还没来得及更新)来生成该以太网IP核以及设计实例,并使用Modelsim – Altera来仿真,来得到仿真波形。
在Quartus II15.0中,新建一个空白工程,工程名字任意,这里我命名为TSE_SIM,器件我选择在至芯科技学习时发给我的ZX-1开发板上使用的FPGA芯片EP4CE10C8,仿真工具选择modelsim-altera,语言为Verilog。
(创建工程这些的我就不上图了,相信大家都很熟悉)最终,创建工程完成后的Summary如下图所示:点击Finish完成工程的创建。
在软件的右侧IPCatlog中(以前的博客有提到,Quartus II15.0中的IP核调用不再是在MegaWizard Plug-In Manager中,而是IPCatlog)依次展开Interface Protocols/Ethernet,然后双击Triple-Speed Ethernet,就会弹出下面的对话框:这里,语言选择Verilog,IP核被我自己命名为TSE,然后点击OK,则开始启动参数配置界面,启动过程很长,从点击OK到最终GUI弹出来大约需要20秒左右的时间,大家要耐心点,不要怀疑是否是软件出了故障。
基于单片机和FPGA的远程温度监控系统作者:舒斌吴建仲志燕来源:《现代电子技术》2008年第17期摘要:温度对工农业生产和国防事业均有不同程度的影响,为了对温度进行适时远程监控,设计了这套系统。
系统采用AT89S51系列单片机与Dallas单线数字温度传感器DS18B20采集现场温度数据,Nios Ⅱ作为上位机,借助互联网,实现对温度进行远程监控。
与传统温度监控系统相比采用了嵌入式的服务器,减小了硬件体积,提高了实时性。
同时给出了该系统的硬件原理图和程序流程图。
关键词:远程温度监控;AT89S51;DS18B20; Nios Ⅱ软核处理器中图分类号:TP20 文献标识码:B 文章编号:1004373X(2008)1712703System of Computer Temperature Remote Supervision Based on AT89S51 and FPGASHU Bin1,WU Jian1,2,ZHONG Zhiyan2(1.Electrical College,Jiangsu University,Zhenjiang,212013,China;2.ZhenjiangCollege,Zhenjiang,212003,China)Abstract:The temperature has the varying degree influence to the industry and agriculture production and the national defense enterprise,to carry on to the temperature at the right moment monitors,computer temperature remote supervision is designed.In this system,a AT89C51 single chip is applied as a control unit and a Dallas chip DS18B20 is applied too as a digital temperature sensor.System uses soft IP processor Nios II to configure CPU at Cyclone series chip used for the upper subsystem..With Internet,it achieves the temperature remote monitoring.The hardware volume,improved real-time with embedded Web server are reduced.This article gives this system's hardware schematic diagram and the program flow diagram.Keywords:long distance temperature monitoring;AT89S51;DS18B20;soft IP processor NiosⅡ温度对工农业生产和国防事业均有不同程度的影响。
基于FPGA的数字通信系统设计指导老师:李东明项目负责人:何兴凯项目成员:杜川王光辉李莉玲摘要:设计并实现了了一种基于FPGA的片上数字通信系统。
系统主要由编译码模块,调制解调模块,频率合成模块,FIR数字滤波模块,位同步模块以及加密解密模块组成,由这些模块组成一个完整的通信系统片上系统。
一、项目背景在通信领域,尤其是无线通信方面,随着技术的不断更新和新标准的发布,通信系统也在朝着高速率,高质量,高可靠性等方向不断发展着。
但可以清楚地看到,当今动辄成百上千兆的数据流一股脑的涌进,任何一个高速数据传输系统的稳定性和安全性等方方面面都面临着极大的挑战,稍有考虑不周之处就会引起各种各样的问题,为了提高通信系统的稳定性,将系统构建在一个芯片的内部,即构建所谓的片上系统,应该可以大幅度提高系统的稳定性。
借助于通信原理以及EDA技术等课程的专业知识,设计了一个基于FPGA的数字通信系统,主要目的是在片上系统的设计思想指导下,设计并实现一个片上数字通信系统。
二、系统总体方案设计鉴于当前高速数字通信系统的设计方案大多是现场可编程门阵列(FPGA)加片外存储介质(SDRAM、SRAM、DDR等)的组合,本次设计方案同样采用这种组合方式,具体为一片FPGA、三片静态存储器(SRAM)和一片高速数据传输芯片。
FPGA具有管脚多、内部逻辑资源丰富、足够的可用IP核等优点,用作整个高速数字通信系统的控制核心极为合适,本方案中选用Altera公司的高性价比CycloneII系列FPGA芯片;静态存储用具有的一大优点就是数据读取速度快,且控制信号简单,易操纵,适用作高速数据存储介质,其处理速度和存储容量均满足系统设计的需要。
与传统的DSP(数据信号处理器)或DPP(通用处理器)相比,FPGA在某些信号处理任务中表现出非常强的性能,而单片机的处理也显然逊色很多。
以下为整体的系统流程图:图1 系统设计框图三、程序运行平台Quartus II 9.0;Nios II 9.0 IDE ;Alter SOPC Builder 等四、系统模块具体实现1、编译码模块:信源编码有两个基本功能:一是提高信息传输的有效性,二是模拟信号完成AD转换后,可以实现数字化传输。
以太网数传系统在FPGA上的实现贲广利;王永成;徐东东;郑佳宁;吴铮【摘要】In digital signal processing or control circuit based on FPGA, in order to export original sampling data or intermediate processing result data for analyzing and processing later, from the view of stabile transmission, easy realization and low cost, a 100 Mbps Embedded Ethernet data transmission system based on FPGA TSE IP core is designed. First, the paper introduces the hardware design thought in SOPC with the main processor NiosII CPU, mainly including the Ethernet MAC designing based on TSE IP core. Uninterrupted data transmission during all transmit time is guaranteed by Pingpang RAM mechanism and a method of controlling data start and stop transmitting is also designed. Then, using MicroC/OS-II real-time operating system of multi task mode, and based on Niche stack TCP/IP protocol, the software design of the system is realized. Also, the software program flow chart which details the software work flow of the system is given. Finally, by transferring designated data, a verification method of rate and stability during data transmission is provided. The test result shows that the system is stable and reliable in data transmission when the rate is up to 51 Mbps.%在含有FPGA的数字信号处理电路和控制电路中,为了实现将原始AD采样数据或中间处理结果数据的导出,供后续分析处理使用,从数据传输的稳定性、系统实现的简易性、价格低廉等角度出发,研究设计了基于FPGA TSE IP核的嵌入式百兆以太网数据传输系统.首先,详细分析了以NiosII CPU软核处理器为核心的以太网数传系统的SOPC各模块的硬件设计,主要包括以TES IP核为主的以太网MAC,采用乒乓缓存方式保证数据的连续不间断传输,以及通过接收客户端指令来控制数传的开始和暂停;然后,利用MicroC/OS-II嵌入式实时操作系统的多任务方式,基于Niche stack TCP/IP协议栈,完成了系统的软件设计,并给出了软件程序流程;最后,通过传输并接收特定的数据,验证了系统数据传输的速率和准确性.结果表明在传输速率达到51 Mbps时,系统稳定可靠.【期刊名称】《液晶与显示》【年(卷),期】2017(032)008【总页数】7页(P607-613)【关键词】嵌入式以太网;数据传输;FPGA【作者】贲广利;王永成;徐东东;郑佳宁;吴铮【作者单位】中国科学院长春光学精密机械与物理研究所,吉林长春 130033;中国科学院长春光学精密机械与物理研究所,吉林长春 130033;中国科学院长春光学精密机械与物理研究所,吉林长春 130033;中国科学院长春光学精密机械与物理研究所,吉林长春 130033;电子科技大学通信与信息工程学院,四川成都 611731【正文语种】中文【中图分类】TN919FPGA以其使用方便灵活、开发周期短、具备并行处理能力等优点,已被广泛应用于各种数字信号处理和控制领域。
基于双NIOS II的IP无线收发机(Wireless IP/Ethernet Transceiver)(北京航空航天大学) 王鹏常青(导师)Wang Peng Chang Qing摘要:介绍了基于NIOS II 软核处理器的SOPC 技术,分析了传统方法和基于SOPC技术的方法实现扩频收发机的优劣,详细说明了嵌有双NIOS II的SOPC技术的方案设计。
该设计增强了系统功能,改善了系统的灵活性,并提高了其适应不同应用需求的伸缩性。
Abstract: Introduce the technique of SOPC with softcore processor NIOS II . Analyze the traditional design and the SOPC design in a Direction-Sequence Spread-Spectrum Receiver And Transmitter system. Explain the design with SOPC method in which two NIOS II are embedded. The functions are enhanced , while the flexibility and scalability is extended.Keywords: SOPC; NIOS II; Spread-Spectrum Receivers And Transmitter一:概述目前,日益蓬勃发展的网络技术促使许多应用产品向新一代工业及商务网络应用方向发展。
一些不带网络功能的产品越来越不符合当今产品的需要。
具有更多功能的集成、支持网络协议已成为目前产品研发的主流[1]。
传统的无线收发机具有体积大,可配置性差,功耗高,成本大,开发时间长等缺点,且不支持网络。
基于以上诸多因素考虑,我们将设计一个新式的支持网络的便携式的无线收发机来取代传统的收发机。
该系统是无线网络的解决方案,采用先进的扩频技术,实现长距离数据传输。
本系统是基于双NIOS II核的扩频收发机。
该系统以全双工的方式进行无线方式的收发,并通过以太口进行网络传输。
发射方面,系统通过网络收到数据进行扩频调制,经由射频装置从天线发射出去,完成发射部分。
接收方面,系统从天线收到远端的信号,进行解调解扩并传给网络,完成接收部分。
其中一个NIOS II核完成无线收发机接收和发送的信号处理和运算,另一个核运行操作系统,完成以太网传输和其他相关控制。
之所以选择使用NIOS II来完成该系统,而不选择目前通用的(MCU+DSP)方式,我们主要考虑是首先双NIOS II的处理能力完全能够完成任务且开发方便,周期短。
另外SOPC 硬件线路可以规划到芯片内部,有效缩小PCB面积,减小体积。
还有,由于NIOS II的软硬件自由配置空间极大,可以方便的调整系统不断提到系统性能。
这几乎能够克服传统无线收发机的所有不足。
另外NIOS II内核的可编程性,为以后支持更多网络协议等附加功能可能。
二:功能描述本系统是基于IP的无线收发装置,具备网络功能的收发机其应用范围将大大增加。
系统提供由键盘和液晶显示器组成的人机界面,可以实现本地系统设置,实现码分多址,在允许的作用距离内,设备间可以通过配置实现点对点和组网传输。
电脑工作站/IP设备其口工作站/IP设备口本系统是基于双NIOS II核的结构,其中一个核(CORE 1)运行操作系统,完成以太网传输,其他相关控制和人机交互任务。
另一个NIOS II核(CORE 2)完成无线收发机接收和发送的信号处理和运算。
两个NIOS II的数据和命令交互是通过FPGA内部的共享内存(双口RAM)来实现的。
见下图:三:各模块详细说明:1 NIOS II CORE 1 功能说明CORE 1运行MicroC/OS-II操作系统,进行以太网传输,人机交互,控制等方面的处理。
首先在上电后NIOS II初始化操作系统,初始化lwIP和其它的一些外设并初始化液晶显示器执行人机界面程序。
在该用户程序中,通过用户的键盘输入对系统进行设置,调整系统的运行方式,同时将系统状态显示到液晶显示器。
其中人机交互程序的系统的设置包括:数据传输方式配置(串口,以太口等),发射功率的选择,网络的配置,扩频序列的选择,环路参数的选择等等。
其软件流程图如下:在该系统中,人机交互程序是用户的顶层程序,实现该程序的功能需要操作系统,lwIP,NIOS II的HAL,驱动程序等的支持。
为实现程序要调用各层次的接口并编写驱动程序。
其中的大部分程序直接移植altera公司提供的HAL即可。
其关系如下:2 NIOS II CORE 2 功能说明CORE 2 主要是完成直序扩频收发的信号的处理和运算,是收发机的核心按功能分为接收和发送部分。
发送部分:从共享内存中取来来自网络的数据(也可以来自其它接口),形成一路数字信号,然后加密,卷积编码(2,1,7),交织,组帧,差分,再扩频(127位),成型滤波,BPSK 调制后通过射频模块发射出去。
功能框图:出去接收部分:接收部分接收来自射频的模拟信号经过AD 后,复数下变频,相关器(匹配滤波),然后叉积鉴频,然后环路滤波,解帧,解交织,然后解卷积,解密等将一路数据信号存入共享内存供另一个核读取传输。
功能框图:2.1 软件流程图:接收通道中的载波和码的捕获跟踪控制比较复杂,运算较多所以在软核上用软件实现,流程图如下:2.2 成形滤波器(1)设计实现[2]用数字方法进行基带频谱成形,一般采用BTF(二进制横向滤波器)法和查表法。
查表法即预先存储所有可能的基带成形波形的样本值,根据发送的数据序列,在存储器中查找相应的波形输出。
BTF 法则根据输入的数据序列实时计算输出波形。
当基带信号为二进制数据时,采用这两种方法可以达到较高的性能价格比。
本文成形滤波器采用查找表方式实现,系统的输入数据为二进制双极性数据,映射逻辑为:"1""1"Logic Real →−,"0""1"Logic Real →+。
采用滚降系数为0.5α=的升余弦滤波器,升余弦滚降函数的系统函数为:2sin(/)cos(/)()1(4/(2))s s RC s t T t T h t t t T ππαπα⎛⎞⎛⎞=⎜⎟⎜⎟−⎝⎠⎝⎠, 取波形的截短长度为输入数据码元宽度的四倍,则当输入信号为“1111”时,系统的输出波形如图所示。
h 1(t)h 1N (t)h 1N+1(t)输入信号为“1111”,系统输出波形图中,h 1(t) 为h(t)的截短。
可以看出, ∆时间段的波形为前后时刻波形的叠加,即连续输入的四个信号才能确定一段波形。
若在一个∆时间段内采8个样点,因为每个样点有24个可能值,所以共需要24×8=128个数据。
这些样点值可以由上式计算得出,将它们以二进制补码表示,存入ROM 中,就构成了查找表。
样点数据存储格式见下图。
图 波形数据存储格式本系统所实现的成形滤波器主要由移位寄存器、计数器和查找表组成,输出为8比特的波形数据,硬件结构如下图所示。
其中查找表为一个地址宽度为7比特,输出为8位比特的ROM,在FPGA 内部实现。
移位寄存器由4个带异步复位端的D 触发器级联而成,基带数据串行输入,并行输出,其输出构成查找表的高4位地址,而低3位的地址由一个八进制计数器输出,其计数频率为基带数据频率的8倍,复位端连接数据时钟,即每送进来一位数据,计数器便清零。
成形滤波器实现框图 (2)仿真验证为了验证成形滤波器模块,在其数据输入端加入一数据源作激励,并将模块输出转化为十进制数,以模拟形式表示。
仿真结果如下,其中din 为输入二进制数据,q 为输出的成形数据。
可以看出,各个取样点之间的串扰很小,达到了基带成形的目的。
2.3 相关器本系统使用匹配滤波其进行相关,其特点是捕获速度快,但同时消耗资源较多,该模块的设计难点是在不降低速度的前提下,尽可能的减小资源消耗。
所以我们采用折叠型滤波器 当伪码长度较长或硬件资源紧张时,可以对倒置型滤波器进行“折叠”处理来进一步压缩资源。
折叠滤波器是一种改进的倒置型滤波器,其实现原理基于以下等式:1()()()N k y n x n k h k −==−∑1213112(1)(...(((()())()())()())...)()()M M M N k k Mk Mk m Mx n k h k x n k h k x n k h k x n k h k −−−−====−=−+−+−++−∑∑∑∑(5.6)其中 N m M =×,m 为折叠次数。
折叠型滤波器的工作时钟同步于输入采样时钟,即每进入一个采样数据,加法链中的数据向后移动一级。
如式x 所示,m 次折叠滤波器将相关运算分为m 步进行,每一步的相关运算长度为整个相关运算的1/m 。
在采样速率不变的情况下,折叠滤波器必须在一个采样时钟内执行完所有步骤。
这就需要提高折叠滤波器的处理时钟,折叠几次,处理时钟就变为原来的几倍。
另外如图x 所示,倒置型滤波器的结构具有重复对称性,所示可以重复利用1/m 长的相关运算单元完成整个相关运算。
在FPGA 的设计中,这种方法称为以速度换取面积,通过提高处理时钟节省了大量的硬件资源。
下图所示为本系统所采用的2次折叠匹配滤波器,用64抽头实现了127位码长8倍过采样匹配滤波器。
由图x可知,折叠匹配滤波器主要由加法器、延时单元、伪码寄存器和反馈逻辑组成。
其中本地127位伪码通过末尾添零变成128位,以折叠格式存放在伪码寄存器中。
因为采用8倍过采样并且折叠系数为2,加法链每级之间的延时应该为16个处理时钟单位,但加法器本身占用了一个时钟延时,所以延时单元只需产生15个时钟延时即可。
折叠匹配滤波器的处理时钟为采样速率的两倍,每两个时钟周期出现一个采样数据。
在第一个时钟周期,code0到code63被送入64个抽头单元中,同时code0加法器的反馈输入端被置为零。
第一个时钟周期结束时,加法器的结果移入保存寄存器中。
在第二个时钟周期,code64到code127送入抽头单元,code64加法器的输入来自保持寄存器。
第二个时钟周期结束,最终结果送入捕获寄存器。
以下为时序仿真图,综合工具quartus5.0, 仿真工具 modelsim 5.8。
其中clk_32k为发送符号时钟,I_corr为匹配滤波器输出的相关值。
可以看出,在每一个符号周期内,相关结果都会出现一个峰值。
2.4 叉积鉴频该模块是频率鉴别器,当输入同向和正交两个分量的时候,输出为当时的频差,其结果在送入环路滤波器进行闭环的反馈。