(电路与系统专业论文)基于以太网及TCPIP硬件协议栈的嵌入式系统Internet接入方案[电路与系统专业优秀论文].pdf_第1页
(电路与系统专业论文)基于以太网及TCPIP硬件协议栈的嵌入式系统Internet接入方案[电路与系统专业优秀论文].pdf_第2页
(电路与系统专业论文)基于以太网及TCPIP硬件协议栈的嵌入式系统Internet接入方案[电路与系统专业优秀论文].pdf_第3页
(电路与系统专业论文)基于以太网及TCPIP硬件协议栈的嵌入式系统Internet接入方案[电路与系统专业优秀论文].pdf_第4页
(电路与系统专业论文)基于以太网及TCPIP硬件协议栈的嵌入式系统Internet接入方案[电路与系统专业优秀论文].pdf_第5页
已阅读5页,还剩61页未读 继续免费阅读

(电路与系统专业论文)基于以太网及TCPIP硬件协议栈的嵌入式系统Internet接入方案[电路与系统专业优秀论文].pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 二十世纪八十年代以来,i n t e m e t 取得了飞速的发展,现已成为信息流通的 重要渠道,是社会重要的基础信息设施之一。i n t e m e t 网和无线骨干网技术的不 断进展,使得基于分组交换技术的通信性能、质量和可靠性得到稳步提高。顺应 “网络服务”向“网络应用”扩展的大潮,大量的8 1 6 位单片机的嵌入式设备,如仪 器仪表、数据采集和显示、过程控制、工业自动化、家庭自动化等的实时应用将 成为i n t e m e t 发展的沃土。 嵌入式系统接入i n t e m e t 的主要困难在于,i n t e m e t 的各种通信协议对于计算 机存储器、运算速度等的要求比较高,为支持t c p i p 等i n t e m e t 协议需要大量 系统资源,而嵌入式系统中除部分3 2 位处理器以外,大量存在的是8 位和1 6 位m c u 。因此如何将这些大量的8 位和1 6 位m c u 接入i n t e m e t 已成为人们的 研究课题。 本文提出采用f p g a 实现小型嵌入式系统接入i n t e m e t ,对嵌入式系统设计 及其接入i n t e m e t 方案作一次大胆的尝试。针对小型嵌入式系统接入i n t e m e t 网 络需要具备的两个条件:带有网络接口和支持网络协议,本文主要完成以下两个 方面的工作: 1 ) 采用f p g a 实现以太网m a c 层协议,提供m i i 接口,通过外接以太网物 理层( p h y ) 芯片实现以太网接口。 2 ) 采用f p g a 实现t c p i p 网络协议的硬件协议栈,支持u d p 、i p 、a r p 等 网络协议。 采用f p g a 实现嵌入式系统接入i n t e m e t ,还可以集成系统其他的功能模块, 推动系统的单片化,提高系统的稳定性。同时也可以根据系统接入i n t e m e t 的实 际需要,对以太网m a c 层模块和t c p i p 网络模块进行相应的裁减,选择一种 最适合本系统的接入方案,进而节省硬件资源,降低系统成本,使系统设计更加 灵活。 关键词:嵌入式系统,传输控制互联网协议,以太网m a c ,可编程逻辑器件 a b s t r a c t w i t ht h eg r e a td e v e l o p m e n ti nt h ep a s tt w e n t yy e a r s ,i n t e m e th a sn o w b e c o m e a l m o s ta c o m m o d i t y ”s e r v i c e ,a n do n eo ft h ei m p o r t a n ts o c i e t yi n f r a s t r u c t u r e s t h e d e v e l o p m e n to fi n t e r n e ta n dw i r e l e s sb a c k b o n en e t w o r kh a sm a d ei ti n t ot h er e a l i t y t h a tt h ep a c k e ts w i t c h t e c h n o l o g yh a sb e e ni m p r o v e ds t e a d i l yi nc o m m u n i c a t i o n c a p a b i l i t y , q u a l i t ya n dr e l i a b i l i t y i nt h ep r o c e s so ft r a n s i t i o nf r o m n e t w o r ks e r v i c e ” t o “n e t w o r k a p p l i c a t i o n ,ag r e a tl o to f t h ee m b e d d e d - s y s t e m sc o n t r o l l e db y8 - b i to r 1 6 一b i tm i c r o p r o c e s s o r , s u c ha st h ei n s t r u m e n t s ,d a t aa c q u i s i t i o na n dd i s p l a y , p r o c e s s c o n t r o l ,i n d u s t r i a la u t o m a t i o na n df a m i l i a la u t o m a t i o n w i l lb et h e “f e r t i l es o i l ”f o r i n t e m e tt oe x p a n d t h em a i n d i f f i c u l t yf o rt h es m a l le m b e d d e d s y s t e m sc o n t r o l l e db y8 - b i to r1 6 - b i t m i c r o p r o c e s s o rt oh o o ku pt ot h ei n t e m e ti st h a tr u n n i n gt h et c p i pp r o t o c o lw i l l c o n s u m eag r e a td e a lo f s y s t e mr e s o u r c e s ot h ep e o p l eb e g i nt of i n dh o w t oc o n n e c t t h e s es m a l le m b e d d e d s y s t e m st oh l t e m e t i nt h i sp a p e r , t h es o l u t i o nt o d e v e l o pe m b e d d e ds y s t e m sf o ri n t e r a c t - e n a b l e d d e v i c e sb a s e do nf p g ai sb r i e f l yp r e s e n t a sw e k n o w , t h ee m b e d d e d - s y s t e mm u s tb e p r o v i d e dw i t hn e t w o r k i n gi n t e r f a c ea n ds u p p o r t i n gt c p i pp r o t o c o lt oi m p l e m e n tt h e e m b e d d i n g i n t e r n e tc o n n e c t i o n s s ot h et w oi m p o r t a n tf u n c t i o nb l o c k sa r ec o m p l e t e d i nt h i sp a p e r 1 ) i m p l e m e n t a t i o n o fe t h e m e tm a cp r o t o c o lb a s e do nf p g at e c h n o l o g y , s u p p o r t i n gm i i ( m a n a g e m e n ti n d e p e n d e n ti n t e r f a c e ) 2 ) i m p l e m e n t a t i o no ft c p i i pp r o t o c o lb a s e do nf p g at e c h n o l o g y , i n c l u d i n g u d p , i pa n d a r p p r o t o c o l s t h ei n t e r n e t - e n a b l e de m b e d d e d - s y s t e mb a s e do nf p g a t e c h n o l o g yc a ne a s i l y i n t e g r a t et h eo t h e rf i m c t i o nm o d u l e s ,s ot h ef l e x i b l ea n dr e l i a b i l i t yo fs y s t e mw a s i m p r o v e d i na d d i t i o n ,t h ee t h e m e tm a c m o d u l eo rt c p i pm o d u l ec a l lb em o d i f i e d t oa d a p tt ot h ed i f f e r e n te m b e d d e d s y s t e m s ,w h i c hh a v et ob ec o n n e c t e dw i t hi n t e m e t , t h er e s u l ti si n c r e a s e ds y s t e m e f f i c i e n c ya n d r e d u c e ds y s t e mc o s t k e y w o r d :e m b e d d e d s y s t e m ,t c p 巩e t h e m e tm a c ,f p g a 第一章概述 第一章概述 1 1 嵌入式i n t e m e t 的历史与现状 二十世纪八十年代以来,i n t e m e t 取得了飞速的发展,现己成为信息流通的 重要渠道,是社会重要的基础信息设施之一。i n t e m e t 网和无线骨干网技术的不 断进展,使得基于分组交换技术的通信性能、质量和可靠性得到稳步提高。顺应 “网络服务”向“网络应用”扩展的大潮,大量的8 1 6 位单片机的嵌入式设备,如仪 器仪表、数据采集和显示、过程控制、工业自动化、家庭自动化等的实时应用将 成为i n t e m e t 发展的沃土。 中国计算机学会( c h i n ac o m p u t e rf e d e r a t i o n ) 于1 9 9 9 年6 月举行了“嵌入式系 统及产业化在中国的发展前景”研讨会,专家们探讨了嵌入式系统在当今计算机 工业中的地位及其网络化问题,认为下一代网络设备中嵌入式设备将大大增加。 嵌入式系统工业是专用计算机工业,其目的就是要把一切变得更简单、更方便、 更普遍、更适用;通用计算机的发展变为功能电脑,普遍进入社会,嵌入式计算 机发展的目标是专用电脑,实现“普遍化计算”,因此可以称嵌入式智能芯片是构 成未来世界的“数字基因”。 由单片机或微控制器( m c u ) 构成的嵌入式系统,已经在家庭和工业的各个领 域得到了广泛应用。现在大多数嵌入式系统还处于单独应用的阶段,即以m c u 为核心,与一些监测、控制、指示设备配合实现一定的功能。尽管在一些应用中, 为实现多个m c u 之间的信息交流,利用c a n 、r s 2 3 2 、r s 一4 8 5 等总线将m c u 组网,实现了一定的信息共享,但这种网络的有效半径比较有限,有关的通信协 议也比较少,并且一般都是孤立于i n t e m e t 以外的。于是人们开始不断探讨各种 实现这类小型嵌入式系统接入i n t e m e t 的方法。 嵌入式i n t e m e t 与m c u 技术密切相关,需要多方面的协作,因此包括 s i e m e n s f l n f i n e o n 、p h i l i p s 和m o t o r o l a 在内的数十个公司联合成立了“嵌入式 i n t e r n e t 联盟( e t i ) ”,共同推动这一市场。可以预言,嵌入式设备与i n t e m e t 的结 合代表着嵌入式系统和网络技术的真正未来。 其实将嵌入式系统与i n t e m e t 结合起来的想法很早以前就有了,主要的困难 在于,i n t e m e t 的各种通信协议对于计算机存储器、运算速度等的要求比较高, 为支持t c p s p 等i n t e r a c t 协议需要大量系统资源,而嵌入式系统中除部分3 2 位 处理器以外,大量存在的是8 位和1 6 位m c u 。为了能够通过i n t e m e t 通信,许 多本可以使用8 位或1 6 位的设备被迫采用3 2 位处理器,以便得到为管理t c p f i p 嵌入式网络服务器所需的处理能力和存储器。但为了普及嵌入式设备的i n t e m e t 第一章概述 化,必须设法增强8 位和1 6 蹙控制器的能力,使之熬通过网络寒透信翔控制。 根据实现原理的不同,目前主要用两种方式实现以8 位域1 6 饿m c u 为核心 麴小燮嵌入式系统菝入i n t e m e t 2 4 1 1 2 班。 第一种方法是以e m w a r e 公司为代表,此方法并不要求每台设备都畿接连到 i r a e m e t 上,丽采用轻量缀网络翔电力线、r s 4 8 5 、r s 一2 3 2 、c a n 或1 2 c 等,将 多个设备与一个运褥t c p i p 协议的网荚相连,再通过此网关连入i n t e m e t 。 自动lr s 一4 8 5 、r s 2 3 2 、 鹰货莓毛卜呓c a n 或1 2 c 等轻型网络 耧字控裁 家嶷 自动控制 工韭 自动化 图1 1e m i t 技术下的潮络结构图 垒韭缓 管理 数据蹿 用户巍角 圈1 1 爨示这种方式酌嗣络结构橙图。e m w a r e 公司静e m i t 技术采用案丽 计算机或高性能的嵌入式处理器作为嘲关,称为e m g a t e w a y ,此网关支持t c p i p 协议并运行h t t p 月鼹务程序,形成一个用户可以通过网络测览器滋行远程访问的 鼹务器。e m g a t e w a y 运避r s - 2 3 2 、r s - 4 8 5 、c a n 、红於、射频等轻量缀总线奄 多个嵌入式设备联系起来,每个嵌入式设备的应用程序中包含一个独立的通信任 务,称为e m m i c r o ,釜溺嵌入式设备巾预先定义静各令交量,菸将缀暴反矮戮 e m g a t e w a y 中:同时e m m i c r o 还可以解释e m g a t e w a y 的命令,修改设备中的变 量,或进行菜种控制。增加到嵌入式系统中的e m m i c r o 代码长发一般在1 - 8k b y t e s 左右,不会影响m c u 魄溅常迳作。这样仅通过增加了一个e m g a t e w a y 网 关,就解决了嵌入忒设备上i n t e m e t 的问题:网关还可以湖时管理多个嵌入式设 备,扶露鬟嚣嵌入式鼹终戆绩秘纯、餐l 纯、溅整镶惑资源载整一纯,磐其鸯迄 今为止其它解决方案无可比拟的性能价格比优势。 第二释方法是为每个嵌入式设备攮供必要的t c p f f p 阑络协议及潮络接搿, 使其可以成为i n t e m e t 中独立的站点。图1 2 显示这种方式下的网络结构。单片 机a l 和a 2 各自独立地接入本地的局城网内,他们有着自己的潮络接口,遵循 蓑t c p i p 涮终揍议,强时又分别逶造服务器c l 移e 2 与更大的圜际互联网相连, 得到了最大限度的信息共享。 战 戡 m r 黼钯。疆 h h 第一章概述 图1 2 嵌入式系统独立接入i n t e m e t 的网络 这种解决小型嵌入式系统接入i n t e m e t 的方法,必须做好两个方面的准备: ( 1 ) 在硬件上,要给系统主控器单片机加一个网络接口:( 2 ) 在软件上,要 提供相应的网络通信协议。根据网络协议实现方式的不同又可分为以下两种实现 方案口l 【1 5 【1 9 1 。 a ) 利用n i c ( 网络控n 网卡) 实现网络接口,由单片机来提供所需的网络 协议。如单片机和d m 9 0 0 8 芯片构成的系统【3 8 【3 9 1 1 。d m 9 0 0 8 是一个根据i e e e 8 0 2 3 的m a c 层( 媒体访问控制) 协议标准设计的以太网n i c 。它除了具有接收物理 介质上的串行数据和发送串行数据到物理介质的功能外,还具有m a c 层的控制 功能。至于高层协议,如网络层的i p 协议、a r p 协议、传输层的u d p 协议、 t c p ,协议、应用层的p p p 协议等等,则单片机以软件实现方式来提供。尽管实 现完整的t c p i p 网络协议族在软件上非常复杂,但对于小型嵌入式系统应用来 说,只需根据特定的应用要求,提供一个t c p i p 协议族的子协议集即可。 b ) 利用具有网络协议栈结构的芯片和p h y ( 物理层的接收器) 来实现网络 接口,主控器只负责往协议栈结构芯片的某个寄存器里放上适当的数据。美国 s e i k oi n s t r u m e n t 公司生产的$ 7 6 0 0 a 芯片【2 5 1 1 2 6 1 及韩国w i z n e t 公司生产的 w 3 1 0 0 a 芯片 2 7 1 就是具有这种结构的芯片。该类芯片内部包含了u d p 、t c p 、i p 及a r p 网络协议族模块及m a c 层协议模块,提供了与p h y 芯片相连的m i i 接 口。采用这种方法,不仅硬件结构简单,而且在软件上主机只需实现一些应用层 协议,简化了小型嵌入式系统接入i n t e m e t 的复杂度。 1 2 嵌入式i n t e m e t 的研究意义及应用前景 目前,在集散数字控制系统中通常采用串行通信来实现多个远端单片机系统 与中央p c 机之间的信息交流。串行通信中较常用的有e i a - r s 一2 3 2 c 、r s 一4 8 5 、 r s 一4 2 2 a 等标准。其中e i a r s 2 3 2 c 接口标准的最大直连距离1 5 米,数据传输 速率小于2 0 k b p s ,适合点对点通信。而采用平衡传输方式的r s 4 8 5 标准 3 3 】【3 4 1 1 3 ”, 使用双绞线,不用m o d e m 的情况下,在1 0 0 k p b s 的传输速率时,可传输的距离 为1 2 0 0 米:当传输速率下降到9 6 0 0 b p s ,则传输距离可达1 5 0 0 米。r s 一4 8 5 还是 第一章概述 一种多发送器标准,允许一个发送器驱动多个负载设备,负载设备可以是被动发 送器、接收器或收发器组合单元,这使它非常适合多点通信。r s 4 8 5 的抗干扰 能力也很强,因而在工业集散控制系统中得到了广泛的应用。在纺织精密绕筒 机项目中,我们就是采用r s 4 8 5 来实现中央控制机( 嵌入式3 8 6 ) 和多台下 位机( 单片机控制系统) 之间的通信。图1 3 为该系统的通信结构框图。 图1 3纺织精密绕筒机系统通信结构框图 在纺织精密绕筒机系统中,一台中央控制器要同时与6 0 台下位机通信,为 此我们采用了两级通信方式口3 】:一台中央控制器通过r s - - 4 8 5 总线与6 台中继 机通信;每台中继机同样通过r s 4 8 5 总线与1 0 台下位机通信。在实践中该方案 取得了很好的通信效果,目前纺织精密绕筒机系统已投放市场。但在具体实现过 程中,我们也感觉该方案存在了很大的不足,主要有以下几个方面: 1 ) 通信速度有限,不适应传送数量大的场合。 2 ) 没有现成的通信协议,所有的通信规则( 包括中央控制器、中继机及下 位机) 都需要从头制定。 3 1该系统通信采用的是主从式通信模式,即中央控制器采取主动通信模 式,循环查询各个下位机,而下位机采取从动通信模式,只有在被查询时才可以 发送数据,不同的下位机之间不可以通信。若要实现r s 4 8 5 对等网络【3 l 】【3 2 1 即网 络中每个节点都可以作为主机发送数据,则需要每个节点在软件和硬件上实现线 路载波侦听多路复用和冲突检测的功能( c s m c d ) ,这无疑增加了系统实现的 难度。 目前以太网是使用最为广泛的局域网技术,它具有扩展性强、可靠性好、成 本低廉等特色,并拥有大量的网络管理工具。如果每个单片机系统都具有以太网 接口,则以上问题将迎刃而解,而且可以轻松实现企业的管理层网络与生产控制 网络的无缝连接,使企业的管理者在第一时间了解到生产情况,同时还可以通过 i n t e r n e t 真正实现异地控制管理生产设备。 第一章概述 回顾一下i n t e r n e t 的发展历史,不难发现i n t e r n e t 经历了8 0 年代的萌芽阶段 和9 0 年代的快速发展阶段后正在快速进入其发展的第三阶段,有人将其称为“嵌 入式i n t e r n e t ”时代,届时地球将被披上一层“电子皮肤”,大量的嵌入式系统通 过i n t e m e t 自动、实时、方便、简单地传送人们所需要的各种信息,同时这些智 能设备通过网络相互通信,自动操作,而无需人工操作。 因此,研究嵌入系统如何接入i n t e m e t 具有很大的现实意义。 嵌入式系统接入i n t e m e t 技术具有广泛的应用前景1 1 7 】【1 8 】【2 3 【3 7 1 1 4 2 1 ,其应用范围 主要可以包括一下几个方面: ( 1 ) 智能公路 交通管理、车辆导航、流量控制、信息监测与汽车服务; ( 2 ) 信息家电 冰箱、空调等的网络化; ( 3 ) 虚拟现实( v r ) 家政系统 水、电、煤气表的自动抄表,安全防火、防盗系统; ( 4 、工业自动化 目前已经有大量的8 、1 6 、3 2 位嵌入式微控制器在应用中,网络化是提高生 产效率和产品质量、减少人力资源的主要途径,如制药工业过程控制、电力系统、 电网安全、电网设备监测、石油化工系统; ( 5 ) 环境工程与自然 水文资料实时监测,防洪体系及水土质量监测、堤坝安全,地震监测网,实 时气象信息网,水源和空气污染监测。 1 3 基于f p g a 的嵌入式系统 自从1 9 8 5 年x i l i n x 公司推出现场可编程门阵列( f p g a ) 至今,f p g a 已经 经历了十几年的发展历史,集成度越来越高,在以m c u 为主的嵌入式系统设计 中得到了广泛的应用,直接推动了系统单片化的设计。 采用f p g a 设计嵌入式系统具有以下几方面的优势。 ( 1 ) 系统级的成本节约。过去,可编程逻辑解决方案被认为是昂贵的。然而, 随着时间的推移和莫尔定律的作用,可编程逻辑已变得越来越有优势。现在,批 量时不到1 0 美元就可以买到l o 万系统门,而且是现货,立即可用。此外,由于 此类器件通常还可以实现设计中的其它功能,因此能够实现系统级的成本节约。 f 2 1 产品在市时间。产品开发本质上不是严格的科学。错误和不兼容问题等 不可避免,这正是系统设计时必须处理的问题。在这方面可编程逻辑器件可提供 第一章概述 巨大的优势,因为可编程解决方案几乎是无限可重新编程的。因此,已知问题的 补丁一旦在现有硬件版本上得到验证,就可立即应用到生产中,同时还可应用到 已安装的系统中。这使得现有设计的寿命得以延长,并极大地降低了库存器件过 时以及成本高昂的现场更换计划所带来的风险。 ( 3 ) 快速的设计派生能力。在目前高度竞争和希望压缩产品开发周期的市场 条件下,系统设计必须足够灵活。当今的标准演化迅速,客户需要新功能,而经 验也表明可以利用已有的系统设计开发新的商业机会。采用可编程逻辑的考虑周 到的设计本身更具有扩展性,因此是快速和有效地派生新产品的理想平台。因此, 如果利用的好的话,可编程逻辑可使未来的产品开发具有战略性的竞争优势。 1 4 本论文主要工作和内容安排 综上所述,本文提出采用f p g a 实现小型嵌入式系统接入i n t c m c t ,对嵌入 式系统设计及其接入i n t e m e t 方案作一次大胆的尝试。 我们知道小型嵌入式系统接入i n t e m e t 网络需要具备两个条件:带有网络接 口和支持网络协议,因此本文主要完成以下两个方面的工作: 1 ) 采用f p g a 实现以太网m a c 层协议,提供m i i 接口,通过外接以太网物 理层( p h y ) 芯片实现以太网接口。 2 ) 采用f p g a 实现t c p i p 网络协议的硬件协议栈。 本文设计的系统结构框图如图1 4 所示。 r e s e t坚些旦;q k 避l 乳, p a t a 7 :0 1、 筝 4卜 蜓5 9 ! ! - , f e 、 k i c u m a c 堕! ! 丛 a d d r 5 :o 。接口 : 婴垫f ;q 3 w r 。 避5 啦 墼丝 r d 。 、 竖 i n t nr 避q l l 图1 4系统结构框图 这里m a c 模块符合i e e e8 0 2 3 标准,内部带有发送、接收数据缓冲区,具 有冲突检测功能;硬件协议栈模块实现了u d p 、i p 、a r p 等网络协议。 本论文内容的安排: 第一章:介绍了嵌入式i n t e r n e t 的历史与现状及其广泛的应用前景,提出了 第一章概述 采用f p g a 实现嵌入式系统接入i n t e m e t 。 第二章:简单介绍了f p g a 的特点,在系统设计时如何选取f p g a 芯片,重 点介绍了x i l i n x 公司的s p a r t a n 一系列f p g a 的结构及特点。这个系列的f p g a 正是本文设计系统的硬件载体。 第三章:简单介绍了t c p i p 网络协议,重点介绍了网络协议硬件栈的f p g a 实现结构的划分及各个子模块的设计。 第四章:简单介绍了以太网m a c 层协议,重点介绍了m a c 层协议的f p g a 硬件实现。 第五章:介绍了两种硬件实现c r c 校验码的方法:串行实现c r c 校验码和 并行实现c r c 校验码。 第六章:介绍一个实际应用的例子介质转换器远程控制系统的设计。 第七章:对整个系统设计的总结,并对未来的研究方向进行了展望。 第二章 可编程逻辑器件 2 1f p g a 简介 第二章可编程逻辑器件 现场可编程门阵列( f p g a ,f i e l dp r o g r a m m a b l eg a t e a r r a y ) 采用逻辑单元 阵列l c a ( l o g i cc e l la r r a y ) ,内部包括可配置逻辑模块c l b ( c o n f i g u r a b l el o g i c b l o c k ) 、输出输入模块i o b ( i n p u t o u t p u t b l o c k ) 和内部连线( i n t e r c o n n e c t ) 三 个部分。 f p o a 的基本特点主要有: 1 ) f p g a 采用高速c h m o s 工艺,功耗低,可以与c m o s 、t t l 电平兼容, 内部有丰富的触发器和i o 引脚。 2 ) 在a s i c 电路设计过程中,f p g a 可用于逻辑电路的硬件验证。 3 ) 当设计的数字专用电路的生产数量有限时,可使用低成本的f p g a 直接 作为产品,它是a s i c 电路中设计周期最短、开发费用最低、风险最小的器件之 一,是小批量系统提高系统集成度、可靠性的最佳选择之一。 目前,f p g a 的主要发展动向是:随着大规模现场可编程逻辑器件的发展, 系统设计进入“片上可编程系统”的新纪元;芯片朝着高密度、低电源电压、低 功耗方向挺进;内嵌专门固化功能模块的f p g a 特色器件,在某些专业应用方面, 引人注目。 f p g a 是由存放在片内编程s r a m 中的数据来设置其逻辑功能的,因此, 工作前需要对其进行编程。用户可以根据不同的配置模式,采用不同的编程方式。 例如,采用附加e p r o m 的编程方式。由于采用s r a m 存贮配置信息,因此f p g a 在掉电后将恢复成白片,内部逻辑关系消失,这使得f p g a 可以根据用户的需要 而改变配置信息,实现不同的逻辑功能,在使用上非常灵活。但同时在应用上也 提出了每次上电都需要进行编程的问题。 2 2 器件的选择 在任何一个数字系统的f p g a 设计与实现中,所遇到的最基本的问题就是目 标器件的选择。根据系统的要求,选取适当的器件来实现设计的逻辑功能和性能 指标,需要从以下3 个方面考虑: ( 1 ) 主流芯片。器件的价格往往不是完全与器件的容量、速度成对应关 系,而是和器件是否是目前主流推广器件有关。 ( 2 )器件的逻辑资源和目标系统的逻辑资源的需求相匹配,这是降低系 第二章可编程逻辑器件 统设计成本的主要条件。所谓器件的逻辑资源,是指器件内部的触发器资源、组 合逻辑资源、内嵌存贮单元资源、三态缓冲器资源,当然也包括各种布线资源。 但是,由于器件内布线资源和逻辑单元内可编程选择开关的限制,很难使器件内 的逻辑资源实现l o o 币g 用。因此,选择器件时要留有逻辑资源的冗余量。 ( 3 ) 器件的工作频率要满足系统设计需求。如果目标器件内部逻辑单元 级联深度和布线时延接近等于或大于系统时钟的周期,则采用f p g a 来实现的系 统很难保证有效的实现原系统规定的逻辑功能。 考虑到以上几点原则及本文设计的实际需求,选取x i l i n x 公司推出的低成 本型可编程逻辑器件一s 黔r r r a n i i 系列作为本文设计的目标载体。该系列采用 了先进的f p g a 技术:支持多种i o 标准( 具有5 v 容差) 、片上块状r a m 以及 为芯片级和板级提供时钟管理的延迟锁相环( d l l ) ,芯片容量可高达2 0 万门, 并可提供多种密度的低价封装形式,完全满足本文设计的需要。下面将详细介绍 s p a r t a n i i 系列f p g a 的结构及特点。 2 3s p a r t a n i i 系列f p g a 的结构及特点 s p a r t a n i i 系列是 x i l i n x 公司的第二代高容量 f p g a ,其内部结构继承了 x i l i n x 公司的v i r t e x 系列 f p g a 的结构 1 】【3 l 。 在s p a r t a n i i 系列 f p g a 内部被嵌入了用于加载 数据的s i 认m 单元,因此该 系列的f p g a 具有无限次的 可重复编程的能力。加载到 s r a m 中的数据决定了f p g a 图2 1s p a r t a n i i 系列f p g a 的内部方 内部的逻辑功能和互连的信 框图1 息。有四种基本方法可以将数 据加载到这些s r a m 单元中,分别是“边界扫描( b o u n d a r y s c a n ) 模式”,“串 行主模式( m a s t e rs e r i a l ) ”、“串行从模式( s l a v es e r i a l ) ”和“并行从模式( s l a v e p a r a l l e l ) ”。 s p a r t a n i i 系列的f p g a 十分适合于系统时序逻辑功能非常复杂的应用场 合,它本身具有的无限次可重复编程的能力可以大大缩短系统设计和开发的周 第二章可编程逻辑器件 期,同时在大批量生产的情况下,其性价比相当的高。 s p a r t a n i i 系列f p g a 通过先进的半导体工艺和改进的结构达到高速度。 支持的系统时钟可达2 0 0 m h z ,内部性能超过3 5 0 m h z 。 如图2 1 所示,s p a r t a n i i 系列f p g a 的可编程门阵列包括3 个主要的可 配置元件:可编程输入输出功能模块l o b ( i n p u t o u t p u tb l o c k ) 、可编程逻辑功 能块c l b ( c o n f i g u r a b l el o g i cb l o c k s ) 和可编程内部连线p i ( p r o g r a m m a b l e i n t e r c o n n e c t ) 。i o b 提供器件引脚和内部逻辑信号引线的接口,c l b 提供构造用 户所需的逻辑功能单元,p i 提供了芯片内部丰富的布线资源。 2 3 1 i o b ( i n p u t o u t p u t b l o c k ) 从图2 2 中可以看到,每个l o b 模块中包含有三个存储单元、输入输出的控 制模块和一个可编程延时部件( p r o g r a m m a b l ed e l a y ) 。 每个存储单元都可以被编程为触发器或锁存器。其中,加在输入触发器输入 端之前的可编程延时部件,可以用来调整触发器的建立时间,由此可以消除大范 围布线造成的时钟延迟对系统功能产生的影响。高速的输入输出模块兼容多种的 电压标准,还提供了多种的内存和总线的接口。输出还具备三态和总线信号弱保 持( w e a k - k e e p e r ) 的能力。 l c e 图2 2s p a r t a n i i 内部的i o b 模块 弧 催 蛳 。 啡 嘧 第二章可编程逻辑器件 2 3 2 可配置逻辑块( c o n f i g u r a b l el o g i cb l o c k ) 一个c l b 是由两个片( s l i c e ) 和一个五输入或六输入的函数发生器组成。 每个s l i c e 包含2 个逻辑单元( l o g i c c e l l ) ,每个l c 包括1 个查找表( l o o k u p t a b l e ) 、1 个进位控制逻辑和1 个存储单元组成。存储单元可以被独立使用,也 0 4 g 3 0 2 b 1 f s i n b y s r 图2 3c l b 内s l i c e 的组成图 可以被配置触发器或锁存 器。存储单元的数据输入的 来源是可编程的,可以由函 数发生器输出驱动,也可以 由该逻辑单元的输入信号直 接驱动。 s p a r t a n - i i 内部的函数 发生器是由4 输入的l u t ( 查找表) 来完成的。l u t 除了可以作为函数发生器 外,还可以作为一个1 6 2 b i t 的同步单口r a m 。如果 将一个s l i c e 里面的2 个l u t 组合起来使用的话,还可以 组成一个1 6 2b i t 或是3 2 lb i t 的同步单口r a m ,或 者是一个1 6 1b i t 的同步双口r a m 。在数字信号处理的应用场合,l u t 还可以 作为一个1 6 - b i t s 的移位寄存器来使用,特别适合用于接收高速率的数据,以及 那些突发模式下传送的数据。 逻辑单元( l o g i cc e l l ) 是c l b 的基本组成模块。每个c l b 里面共有四个 l c ,分别在两个结构一模一样的s l i c e 中。除了上面四个l c 之外,在每个c l b 里面还包括了一个五输入或六输入的函数发生器,因此可以认为每个c l b 里面 总共有4 5 个l c 。 2 3 3 块状r a m ( b l o c kr a m ) 在s p a r t a n i i 系列f p g a 中有几个大的块状r a m 。这些块状r a m 是按 列排列的。所有的s p a r t a n i i 系列f p g a 器件都有两个这样的列,他们沿着芯 片的垂直边排列。每个块状r a m 有4 个c l b s 高,因此,一个有8 个c l b s 高 第二章可编程逻辑器件 的s p a r t a n i i 系列f p g a 芯片每列 有2 个块状r a m ,整个芯片共有4 个块状r a m 。 每个块状r a m 有4 0 9 6 一b i t ,即可 配置成同步单端口r a m ,也可以配 置成同步双端口r a m ,其中每一端 都有独立的控制信号。无论是单端 r a m ,还是双端r a m ,端口的数据 宽度都可以进行配置。 图2 , 4双端口块状r a m 图2 4 为双端口块状r a m 的原理图,图2 5 则为双端口r a m 的读写时序图。 o - ka a d o ra e na 臣 金慨o d la o o _ a c 虬b a d d r _ b e nb l 邺 d l b i d ob 描黼h n 厂 立互二 ( 二j x 、 _ j 、t 。l _ j 匕亘盘= x 二j 二) c 1 1 1 1 二哥 l 厂 l 二亘j c j 五 互 圈匝 图2 5 双端口块r a m 读写时序图 从图2 5 我们可以看出,双端口r a m 的读写与时钟上升沿同步,即在时钟 的上升沿采样a d d r 、d i 、e n 、w e 和r s t 信号。当两个端口的地址相同并且 至少有一个端口在进行写操作时,参数t b c c s ( c l o c k t o c l o c ks e t u p ) 很重要。 当参数t b 。被一个写一写的状态分割时,存储单元的内容视为无效。而当参数 t b 。被一个写一读的状态分割时,存储单元的内容将被改变,但是读端口的数据 是无效的。在实际应用中应当避免此类现象的发生。 第二章可编程逻辑器件 2 3 4 延迟锁相环d l l ( d e l a y l o c k e dl o o p s ) 在s p a r t a n i i 系列f p g a 中,与每个全局时钟输入缓冲器相连有一个全数 字式的延迟锁相环( d l l ) ,如图2 5 所示。d l l 可使时钟输入信号与整个芯片 内部的时钟输入引脚之间的偏差减少到最小。每个d l l 可以驱动两个全局时钟 网络。d l l 控制输入时钟、分布的时钟并可c u 毗 自动调节时钟的延迟。该闭环 系统确保时钟边沿到达内部触发器与其到达 输入引脚同步,有效的消除了时钟分配的延 迟。 除了消除时钟分布延迟,d l l 还提供先 进的多时钟控制。d l l 可使时钟信号倍频, 或者将时钟信号按1 5 、2 、2 5 、3 、4 、5 、8 、 1 6 分频输出。 第三章t c p 九p 网络协议及f p g a 硬件协议栈的设计 第三章t c p i p 网络协议及f p g a 硬件协议栈的设计 传输控制协议互联网协议( t c p i p ,t r a n s m i tc o n t r o lp r o t o c o l i n t e m e t p r o t o c 0 1 ) 【4 0 l 【4 1 】是二十世纪7 0 年代中期美国国防部为其a r p a n e t 广域网开发的 网络体系结构和协议标准。目前国际上规模最大的计算机互联网i n t e r n e t 便是 以t c p i p 协议集为基础的。与国际标准i s 0 0 s i 相比,虽然其框架和实现细节都 有些差异,但其基本原理是一致的。事实上,在制定o s i 模型时,主要参考了 i n t e r n e t 的t c p i p 协议集,因此,两者大部分几乎是一样的。另外,t c p i p 开发 较早,适用范围广( 可用于局域网和广域网) ,目前己比较成熟,占有市场较大,已 成为一种事实上的标准。 本章将简单介绍t c p i p 协议,熏点介绍了基于f p g a 的t c w i p 硬件协议栈 的实现方法。 3 1t c p i p 网络协议简介 3 1 1t c p i p 的分层模型 网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个 协议族,比如t c p i p ,是一组处于不同层次上的多个协议的组合。t c p i p 通常 被认为是一个四层协议系统,即包括应用层,传输层,网络层,数据链路层。 ( 1 ) 应用层 应用层功能有许多不同的形式,包含所有产生网络服务诸求的高层协议,为 希望通信的进程提供端到端的、与网络无关的传输服务。r f c ( r e q u e s t sf o r c o m m e n t s ) 中定义了所有的t c p i p 应用层协议。其中一些是有标准用户界面的 可执行程序,例如虚拟终端协议t e l n e t :另一些提供包括一个第三方程序用户界 面在内的服务,如邮局协议p o p 3 ,用于i n t e r n e t 网浏览的超文本传输协议h t t p 等:随着新型客户端应用程序的出现,t c p i p 协议模型的应用层包涵的高层协议 将不断增加。 ( 2 ) 传输层 传输层确保源主机传送数据包正确到达目标主机。它包含了两个重要的协 议: a ) t c p ( t r a n s p o r t c o n t r o lp r o t o c 0 1 ) 传输控制协议:它是一种面向连接的传输 协议,为两端的应用程序提供可靠的端到端的数据流传输服务。它把输入的报文 流分成报文段并传给网络层,在接收端,t c p 接收进程把收到的报文再组装成报 第三章t c p 九p 网络协议及f p g a 硬件协议栈的设计 文流输出。t c p 还要进行流量控制,以避免快速发送方向低速接收方发送过多的 报文而使接收方无法处理。 b ) u d p ( u s e r d a t a g r a m p r o t o c 0 1 ) 用户数据包协议:它是一个不可靠,无连接 的简单传输层协议。它没有使用确认来确保报文到达,也没有对传入的报文排序, 也不提供反馈信息来控制机器之间信息流动的速度。 很明显,当数据传输的性能必须让位于数据传输的完整性、可控制性和可靠 性时,t c p 协议是当然的选择。当强调传输性能而不是传输的完整性时,如:音 频和多媒体应用,u d p 是最好的选择。在数据传输时间很短,以至于此前的连 接过程成为整个流量主体的情况下,u d p 也是一个好的选择。考虑到以8 位或 1 6 位m c u

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论