(通信与信息系统专业论文)基于fpga的连续存储系统实现.pdf_第1页
(通信与信息系统专业论文)基于fpga的连续存储系统实现.pdf_第2页
(通信与信息系统专业论文)基于fpga的连续存储系统实现.pdf_第3页
(通信与信息系统专业论文)基于fpga的连续存储系统实现.pdf_第4页
(通信与信息系统专业论文)基于fpga的连续存储系统实现.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

(通信与信息系统专业论文)基于fpga的连续存储系统实现.pdf.pdf 免费下载

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

文档简介

首都师范犬学硕士学位论文基于f i : 6 a 的连续存储系统实现 中文摘要 随着信息技术的发展,通讯、雷达等领域对高速、大容量数据实时存储提出了更高的要 求。在控制系统中,高速数据获取常用到数据缓冲存储器,其原因是微控制器及常规总线 难以及时地处理现场高速输出的数据流。在海量连续数据存储板的控制系统中,采用集成 度高、功耗低、可靠性高、处理能力强的动态同步随机存储器s d r a m ,是最好的选择。 但是,与速度快、控制简单的s r a m 相比,s d r a m 存储有复杂的时序要求,需要定时刷 新,为此,必须设计s d r a m 控制器。为了降低系统成本,采用f p g a 技术,并使用v e r i l o g 语言设计和实现控制器。 本论文简要介绍了发展高速数据采集及存储系统的必要性和重大意义,存储体发展现 状,以及任务研究的通用存储扩展模块的应用范围和概况介绍;针对s d r a m 的固有内部特 性,设计了乒乓存储方案和内存交错存储方案,解决了定时刷新与数据读写的矛盾,以及 预充电与数据读写的矛盾,从而满足了高速连续数据流不问断存储的要求;结合实际系统 设计,设计了使用大规模集成电路f p g a 实现的硬件接口电路,并且分析了操作s d r a m 时 的状态转移过程;用v c r i l o g i g - 言实现了连续存储的控制器的模块设计,使s d r a m 对计算机 用户端操作透明;最后测试了系统存储板的性能参数,说明了海量连续数据存储板的广阔 应用前景,并且给出了系统的不足之处。 整个论文的工作完成了控制系统中的硬件设计和程序编制调试,为以后开发和实现控 制系统的高速数据获取提供了一个原形。 关键词:s d r a m 控制器;f p g a ;v o i l o gh d l ;连续数据存储 首都师范大学硕:e 学位论文基于f p g 的连续存储系统实现 a b s t r a c t a c c o r d i n gt ot h ed e v e l o p m e n to f i n f o r m a t i o nt e c h n o l o g y , h i g h s p e e da n dl a r g e - c a p a c i t yo f d a t as t o r a g ei sr e q u i r e di nt h ef i e l do f c o m m u n i c a t i o na n dr a d a r i nt h ec o n 口o ls y s t e m , d a t ac a c h e m e m o r y i so f t e nu s e di nh i g h - s p o e dd a t aa c q u i s i t i o n , b e c a u s em i c r o c o n t r o l l e r 锄dg e n e r a lb u sc a n n o tm a n a g et h eo u t p u to fh i g h - a p c o ad a t ai nt i m e i nl a r g e - c a p a c i t yc o n t i n u o u sd a t am e m o r y c o n t r o l s y s t e m , u s i n gs d r a m ( s y n c h r o n o u sd y n a m i cr a n d o ma c c e s sm e m o r y ) w i t ht h e c h a r a c t e r i s t i c so fh i g hi n t e g r a t i o n , l o wp o w e r , h i g hr e l i a b i l i t y , a n ds t r o n gf u n c t i o ni st h eb e s t c h o i c e b u ts d r a mn e e dt or e f r e s ht i m e l ya n dh a sc o m p l e xt i m es e q u a n c yc e m p a r c dt os r a m w i t h1 1 【g hv e l o c i t ya n d s i m p l ec o n t r 0 1 t od o , t e a s es y s t e mc o s t , w ed e s i g na n dr e a l i z es d r a m c o n t r o l l e rb yf p g aa n d v e r i l o gh d l i nt h ep a p e r , t h ep r i n c i p l ea n dc h a r a c t e r so fm e m o r yf i r e p r e s e n t e d ;t h es t m c t i o na n d c o n s t i t u t i o no fs d r a mc o n t r o l l e r 黜i n t r o d u c e d t h ec o n c e p ta n dc o n f i g u r a t i o ns c h e m eo f f p g a8 1 es h o w n , a n dv e r i l o gh d la f eg i v e l lt ot h eq u e s t i o no fs d r a mf i x e di n n e rc h a r a c t e r , t h ep a p e rd e s i g n ss c h e m e so f t w o - w a yi n t e r l e a v i n ga n db a n ki n t e r l e a v i n g , s ot h ec o n f l i c tb e t w e e n a u t or e f r e s ha n dd a t ar e a d i n g w r i t i n gi ss o l v e dw e l l ,a l s oi st h ec o n f l i c tb e t w e e np e r c h a r g ea n d d a t ar e a d i n g w r i t i n g w ec a ne a s i l ym e e tt h en e e do fh i g h - s p e e dc o n t i n u o u sd a t as t o r a g e t h e p a p e ra l s od e s i g n st h eh a r d w 鲫ei n t e r f a c ec i r c u i tw h i c hi sr e a l i z e db yl a r g es c a l ei n t e g r a t e d c i r c u i t , a n da n a l y s e st h es t a t es h i f tp r o c e s s i n gi nh a n d l i n gs d r a m t h ec o n t r o l l e ro fc o n t i n u o u s s t o r a g ei sr e a l i z e db yv e r i l o gh d l , a n dt h ei n t e r f a c et op cc a nb et r a n s p a r e n tt ot h eu s e r t h e d e v e l o p m e n tb a c k g r o u n d ,t h ee s t a b l i s h m e n to fw h o l es t r u c t u r e , h a r d w a r ed e s i g na n ds o f t w a r e d e s i g na r ee x p a t i a t e d t h ep a p e rs h o w sl a r g e - s c a l ea p p l i c a t i o no ft h i sc o n t i n u o u ss t o r a g eb r o a d , a n dt h es h o r t c o m i n go f t h es y s t e mi sp r e s a n t e di n t h ea n d t h ew h o l ew o r ko fa r t i c l ec o m p l e t e st h ed e s i g n so fh a r d w a r ec i r c u i t sa n dt h ep r o 掣砌a n d d e b u go f s o f t w a r ei nv e r i l o gf o rs d r a m c o n t r o l l e ri nc o n t r o l l e rs y s t e m t h i ss u p p l i e sa t e m p l a t e f o rh i g h - s p e e dd a t aa c q u i s i t i o no f c o n t r o ls y s t e mi nt h ef u t u r e k e yw o r d s :s d r a mc o n t r o l l e r ;f p g a ;v e r i l o gh d l ;c o n t i n u o u sd a t as t o r a g e 2 首都师范大学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取 得的成果。除文中已经注明引用的内容外,本论文不含任何其他个人或集体己经发表或撰 写过的作品成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。 本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名。 李燕藩 1 日期:御年歹月口日 首都师范大学位论文授权使用声明 本人完全了解首都师范大学有关保留、使用学位论文的规定,学校有权保留学位论文 并向国家主管部门或其指定机构送交论文的电子版和纸质版。有权将学位论文用于非赢利 目的的少量复制并允许论文进入学校图书馆被查阅。有权将学位论文的内容编入有关数据 库进行检索。有权将学位论文的标题和摘要汇编出版。保密的学位论文在解密后适用本规 危黜姗躲+ 玄辑 学位论文作者签名:征7 彬:1 翠 日期:w p 7 年,月f o 日 l 。 首都师范人学顾 :学位论文 幕十f p g a 的连续存储系统实现 第一章绪论 1 1 大容量实时存储器的发展概况 2 1 世纪是数字化、网络化和信息化的时代,智能数字化产品将无所不在、无时不在地 逐步渗透到我们的生活、生产、工作、学习等社会的各个方面。当今处理器和存储器技术 所带来的惊人处理带宽,j 下有力地推动着电子产品在各个领域的应用。随着通信、存取网 络及无线基础设施的快速发展,在广域网或i n t e m e t 上进行海量数据通信的用户越来越多, 而且由于对密度和带宽要求的不断增加,支持高密度、高性能的大容量存储器产品的需求 变得同趋强烈。 随着信息科学的飞速发展,人们面临的信号处理任务愈来愈繁重,对数据采集系统的 存储量提出了越来越高的技术要求。同常规设计采集系统相比较,高速、高精度、大容量 设计采集系统具有如下技术难点:系统的结构必须满足模拟信号带宽,世界存储量及持续 时间传输速率等多项技术要求,因此必须进行优化设计;在超高速数据采集系统中,存储 器速度及容量往往成为限制系统性能价格比的一个重要因素。因此,如何采用普通高速存 储器构造超大容量存储器成为高速采集系统设计的一项关键技术。 高速、高精度大容量数据采集系统的研制,将提供一种在p c 机w i n d o w s 操作系统下 的多通道、带预处理、实时存储的高速、高精度大容量数据采集手段,满足国防工业在实 验和生产中的测试需要,并使我国测试水平走上一个新台阶,达到国p - 9 0 年代的水平。同 时,这项技术也可以用在汽车、火车、船舶等民用工业的各种设备的研究、设计、试验和 生产过程中,具有广泛的应用价值。 在控制系统中,高速数据获取常用到数据缓冲存储器,其原因是微控制器及常规总线 难以及时地处理现场高速输出的数据流。数据缓存器既能防止数据流中数据的丢失,又能 便于采集部分与微控制器,d s p 处理器的接口。在通常的数据获取系统中,如果要求的缓 存容量较小,往往多采用静态存储器( s r a m ) 结构作数据缓存,主要是因为s r a m 的读写 速度快,控制简单,所需辅助逻辑少;但当缓存容量较大时,采用s r a m 会造成成本高, 而且功耗大,控制线路复杂,散热困难,可靠性差等。在各种d r a m 器件中,同步动态随 机存储器s d r a m 因其容量大,读写速度快,支持突发式读写及相对低廉的价格而得到了广 泛的应用。 存储器是集成电路产品中的一个主要门类,主要用来存放( 庀忆) 数据、指令、程序等信 首都师范人学坝1 学位论文堆于f p g a 的连续存储系统实现 息,并根据需要能取出( 读出) 或既能取出又能存入( 写入) 。它除了应用于各类型的计算机工 作站外,还广泛应用于通信工业、控制、信息家电和其他电子设备中。半导体存储器的发 展历史起始于2 0 世纪6 0 年代中期,随着存储介质的不断更新,存储器技术经历了机械机 电存储器、电子器件存储器、磁表面存储器、磁器件存储器、半导体存储器等重要发展阶 段。随着中大规模集成电路的发展和微细加工技术的进步,半导体存储器由于其体积小、 功耗低、容量大、速度快、与外围电路的接口简单等优势,逐渐成为当代计算机和其他数 字系统中存储器的主流。按存取方式( 读写方式) ,存储器芯片可分为随机存取存储器芯片 ( r a m ) 和只读存储器芯片( r o m ) ;按照不同的技术,存储器芯片可以细分为e p r o m 、 e e p r o m 、s r a m 、d r a m 、f l a s h 、m a s kr o m 和f r a m 等。存储器技术是一种不断 进步的技术,随着各种专门应用不断提出新的要求,新的存储器技术也层出不穷。每一种 新技术的出现,都会使某种现存的技术走进历史,因为开发新技术的初衷,就是为了消除 或减弱某种特定存储器产品的不足之处。近3 0 年来,金属氧化物半导体( m o s ) 随机存取存 储器( r a m ) 的集成度,以平均每三年以四倍的速度在增长,随着大规模集成电路制造技术 继续进步和线路设计的完善,相继推出大容量的d r a ms d r a m 和d d rs d r a m 双数据 速率s d r a m 等高速的存储器产品。 1 2 课题的意义 数据采集系统是一种对实验和生产过程中的物理量进行测量并记录的测试设备,在工 业生产和航空、航天、兵器等国防部门有着广泛的应用。为了研究开发的方便,常常需要 将大量的采集数据实时地记录下来。例如在做飞机发动机的试车试验时,需要大量的人力、 物力和财力,因此希望在一次试验的过程中能将发动机各个方面的采集数据都实时地记录 下来,然后在实验室中分析使用,这样可以大大的缩短时问和研究经费。 随着高速大容量数据采集系统的发展,其对数据存储的速度、数据连续存储的时间、 数据同时存储的通道数目和可靠性的要求都在不断地提高。在动态、瞬态的信号测试及航 空航天的一些数据存储应用中,对数据的存储技术提出了更高、更严的要求。所以,对高 速、大容量、并行存储技术的研究,是进一步适应数据采集技术的发展。 近几年,随着数字革命的推进,数据存储技术也取得了迅猛的发展。在电子和计算机 技术飞速发展今天,数字信号处理技术已经成为信息获取的最重要的手段之一。同时各应 用领域对数字信号处理的实时性,集成度和灵活性也提出了更高的要求。已有的低速,非 实时的处理系统很难满足这种高端需求。 2 首都师范人学硕i 学位论文 幕。ff p g a 的连续存储系统实现 在一些智能仪器中,经常需要进行大量的数据采集和存储操作。例如,在精准农业作 业中需要采集田地中每一个采样点的经度、纬度、产量和湿度等信息。采样点有成千上力, 产生了大量的数据,保证这些现场数据的存储是测控系统设计中的关键问题之一。对基于 p c 机的智能仪器,这些数据可直接以d o s 或w i n d o w s 文件的形式存入硬盘:而对于基于 单片机的现场设备,则由于系统处理速度慢、没有操作系统支持和存储容量小等原因,难 以满足上述要求。通常单片机所支持的存储单元的r a m 、e e p r o m 或小容量的f l a s h 存储 芯片,它们的一个共同特点是受寻址空问的限制,不能满足海量存储的要求。 基于p c 的高速数据采集、数字信号处理板卡以及基于虚拟仪器概念,设计出板卡式电 子测量仪器。利用这些产品,用户可以方便地根据需求搭建自己的实时高速采集、宽带数 字接收和实验分析系统。 高集成度,灵活性为用户提供高速数据采集,存储,处理,分析快速服务。应用于科 研,通信,工业生产,医学,航空航天,军事等领域。体积小、重量轻、功耗低、容量大、 读写速度快、机械性能优、硬件兼容性好,非常适合解决现场数据采集系统中数据传输及 大容量存储的问题。 1 3 论文的主要工作 一个性能设计良好的存储控制器能够在系统运行时提高整个系统的性能。设计存储控 制器必须考虑许多因素,例如可靠性、集成度和易移植性。用可编程逻辑器件实现s d r a m 控制器对需要大容量存储器的应用是较经济的设计。可编程逻辑器件是电子设计领域中最 具活力和发展前途的一项技术,它的影响丝毫不亚于7 0 年代单片机的发明和使用。可编程 逻辑器件以其灵活的现场可编程特性,较高的功能集成度和较快的速度成为研制和设计数 字系统的最理想选择。目前,可编程逻辑器件己在国内外的计算机硬件、工业控制、智能 仪器、数字电路系统、家用电器等各个领域得到广泛的应用。从简单的接口电路设计到复 杂的状态机,甚至“片上系统”( s o c ,s y s t e m o n c h i p ) ,可编程逻辑器件所扮演的角色已 经不容忽视。它的可编程特性带来了电路设计的灵活性,缩短了产品的上市时间( t i m et o m a r k e t ) 。 通用存储扩展模块可以用于扩展公司其它相关产品的高速实时存储容量。用户构建自己 系统的高速存储。产品由多片s d r a m 构成两个完全相同的独立存储通道。每个通道最大 容量为3 2mx3 2 b i t s ,速度高达1 3 3m h z 。在应用中,也可以将多个通道拼接成一个通 道。例如,当两个通道拼接成一个通道时,可以实现最大容量为3 2 m x 6 4 b i t s ,速度达1 3 3 1 首匍f 师范人学硕i :学位论文 筚十f p g a 的连续存储系统实现 m h z 存储功能。这一功能使得产品特别适合实时高速不问断数据的存储。一个典型应用是 经过串并变换,可以方便地不问断存储速度高达1 0 5g h z 的8b i t s 数据流。s d r a m 控 制器由大规模f p g a 构成,设计灵活紧凑实。控制器实现对s d r a m 的控制、数据分流、 读写等功能。采集卡采用p c i 总线与计算机接口,当采满后,计算机c p u 通过p c i 总线 以数据块的方式将数据读入内存处理显示。 第一章简要介绍了发展高速数据采集及存储系统的必要性和重大意义,存储体发展现 状,以及任务研究的通用存储扩展模块的应用范围和概况介绍; 第二章详细介绍 f p g a 的原理结构,e p l c 6 的具体特性,v e r i l o g 语占风格及编写流程, f i f o 电路,以及s d r a m 的存储体结构、接口信号和操作方法; 第三章详细说明了海量连续数据存储板的系统方案和实现,包括任务的背景和平台介 绍、需要解决的关键性问题、硬件框图设计、各个模块组成、存储板的性能测试、以及系 统不足之处,结合实际系统设计给出了使用大规模集成电路f p g a 实现的硬件接口,并分析 了操作s d r a m 时的状态转移过程; 第四章概括说明了海量连续数据存储板的广阔应用前景。 总之,任务的研究目的是研制出高速数据处理和存储系统,以满足航空、航天、兵器 及其它部门在装备研制、试验和生产过程中对动态、过渡态及瞬态数据实时存储的要求。 4 首都| i 1 j 范人学硕i :学位论文肇于f f g a 的连续存储系统实现 第二章论文相关的基本概念 2 。1f p g a 的原理和结构 2 1 1 基本结构 可编程的输入输出块( 1 0 b ) i o b 提供了器件引脚和内部逻辑阵列之间的连接,通常排列在芯片的四周。每个i o b 控制一个引脚,可被配置为输入、输出或双向u o 功能。 可配置逻辑块( c l b ) c l b 是f p g a 的主要组成部分,是实现逻辑功能的基本单元。它主要由逻辑函数发 生器、触发器、数据选择器等相关逻辑电路组成。其中函数发生器均为查找表结构 ( l o o k - u p - t a b l ,其工作原理类似于r a m ,通过查找r a m 中的存储数据,就可以得 到任意组合逻辑输出。目前f p g a 多使用4 输入的l u t 所以每一个l u t 可以看成一个 有4 位地址线的1 6 x 1 的r a m ,当用户通过原理图或者h d l 语言描述了一个逻辑电路 以后,f p g a 开发软件会自动计算逻辑电路的所有可能的结果,并把结果先写入r a m , 这样每输入一个信号进行逻辑运算就等于输入一个地址进行查表,找出地址对应的内 容,然后输出即可。表2 1 为实际逻辑电路和f p g a 里l u t 实现方式的比较: 表2 1 实际逻辑电路和f f g a 里l u t 实现方式的比较 实际逻辑电路l u t 的实现方式 户 i b i l t;爿m 广 c l b 中还有两个边沿触发的d 触发器,它们有公共的时钟和时钟使能输入端,控制 电路可以分别对两个触发器异步复位和同步复位,每个d 触发器可以配置成上升沿触发 或者下降沿触发。c l b 中有许多不同规格的数据选择器,分别用来选择触发器激励输入 信号、时钟有效边沿、时钟使能信号以及输出信号。这些数据选择器的地址控制信号 均由编稃信息提供,从而实现所需电路结构。在a l t e r a 公司的器件中,l e ( 逻辑单元) 是实现逻辑的最基本的结构,一个c l b 包括8 个l e ,每个l e 包括一个l u t ,一个触发器 s 首都9 巾范大学钡l :学位论文蕞f f p i ;a 的连续存储系统实现 和相关逻辑。 随机存取内存块( r a mb l o c k ) d l l 时钟控制块 丰富的多层互连结构 可编程互连资源包括各种长度的会属连线线段和一些可编程连接丌关,它们将各个 c l b 之间和c l b 与i o b 之间互相连接起来,构成各种复杂功能的系统。 2 1 2c y c l o n e 系列器件以及e p l c 6 的具体特性 ( 1 ) c y c l o n e 可编程门阵列家族结构简介 c y c l o n e 家族可编程门阵列是基于1 5 v ,o 1 3 u r n ,全层覆铜s r a m 工艺,密度高达 2 0 ,0 6 0 个逻辑单元( l e ) 和2 8 8 k b 的内存r a m ,具有锁相环,是低耗节能的数据通 道应用方案。c y c l o n e 系列器件支持多种i o 标准,并且a l t e r a 为c y c l o n e 系列提供新 型的低功耗串行编程器件。 c y c l o n e 系列器件是通过一个二维的行列组合阵列实现般的逻辑功能。不同速度 的行列连接提供了在l a b s 和嵌入式存储块之间的连接。逻辑阵列由l a b 组成,每一 个l a b 包含l o 个l e ( 一种小的逻辑单元,它高效实现了用户的逻辑功能) ,l a b 在 器件中被分成行组和列组。c y c l o n e 系列包括2 ,9 1 0 至2 0 ,0 6 0 个l e 。m 4 kr a m 块 是容量为4 k 的双端口存储块,提供在2 0 0 m h z 时3 6 位的双端口,简易双端口,单端 1 2 1 存储体。这些内存块被分成列,贯穿在某些特定的l a b 中。c y c l o n e 系列器件包括 6 0 至2 8 8 k b 的嵌入式内存块。 每个c y c l o n e 器件的i o 管脚由i o e 连通,位于器件外围的l a b 的行列末端。i o 管脚支持不同种类的单端和差分i o 标准,例如6 6 3 3 m h z ,6 4 3 2 位p c i 标准,高达 6 4 0 m b p s 的l v d si o 标准。每个i o e 包含一个双向的i o 缓冲,三个寄存输入,输出 以及输出使能端信号的寄存器。 c y c l o n e 系列器件提供全局时钟变量和两个锁相环( p l l ) ,全局时钟网络由驱动整 个器件的八条全局时钟线组成,它可以为器件的所有资源提供时钟,比如i o e ,l e 和 内存块,全局时钟线还可以用作控制信号。锁相环可以做时钟相乘,相位移动,用于 不同的高速外部输出。c y c l o n e 系列器件家族的框图如图2 1 。 6 首都师范人学钡l :学位论文 摹十f p g a 的连续存储系统实现 戌l 圆 0 1 c 1 2a 州椭 隧 圈2 1e p i c l 2 家族的框图 ( 2 ) e p i c 6 的具体特性以及内部资源:如表2 2 和表2 3 。 表2 2e p i c 6 的具体特性 逻辑单元( l e s )5 ,9 8 0 m 4 kr a m 块( 1 2 8 3 6 位)2 0 总r a m 数 9 2 1 6 0 锁相环( p l l s ) 2 用户可编糈! i o 端u 1 8 5 表2 3 e p i c 6 资源 列l m 4 k r a m 块 2 0 p l l 2 l a b 列3 2 l a b 行2 0 ( 3 ) 嵌入式内存块的简介及功能 e p l c 6 含有一列m 4 k 内存块,它可以实现不同种类的内存模式,包括双端口r a m , 单端口r a m ,r o m 或者f i f o 缓冲。 m 4 k 内存块包括输入寄存器和输出寄存器,其中输入寄存器可以使写同步,输出 寄存器可以满足流水线设计和提高系统性能。 双端口模式可以实现两个端口的任意组合:两路读写,或者在两个不同时钟频率域 的读写操作,如图2 ,2 。单端口模式则读写不能同时操作,如图2 3 。 首都师范人学硕i :学位论史基于f p g 的连续存储系统实现 ab data】datadi a d d r e s 酬】a d d r a s s e 】 - a c r e 帆 w r l r l b ) ,c t o c k a c l o c h i n c l o c ko u t c l o c k i n c l o c k e n o u l c o c k e n i n a c i ro d t 8 d f 图2 3 单端口模式r a m c y c l o n e 内存架构可以通过同时寄存输入和输出信号到m 4 k 块实现完全的同步 r a m 。所有的m 4 k 块输入信号都被寄存,提供同步的写周期。在整个操作中,内存块 产生自身的写使能信号( w r c n ) ,此信号由全局时钟驱动。因此,一个使用同步r a m 的电路必须提供r a m 的写使能信号( w r e n ) ,确保它的数据和地址信号已经准备好。 2 2 用v e r i l o g 语言编写的f p g a 的风格 2 2 1v e r i l o g 语言简介 硬件描述语占是种用形象化的方式描述数字电路和系统的语言。设计者可以利用它 进行从抽象到具体( 从上到下) 的设计,逐层的描述自己的思想,通过模块组合和调用来 实现;然后利用电子设计自动化工具仿真验证,再把需要转化为具体物理电路的模块组合 转化成门级电路网表;最后通过a s i c 设计或者专业的布局布线工具将网表变成具体的电 路实现。硬件描述语言从产生至今,已有二十多年的历史,但用于自动综合却只有十多年 的时l 日j 。尤其是最近七八年,用综合工具将可综合的硬件描述语言模块转化为具体电路发 展十分迅速,大大提高了数字电路设计的效率。 8 首部9 i l j 范人学顾l :学位论文 犟f f p g a 的连续存储系统实现 v e r i l o g 语占是硬件描述语言的一种,现阶段最为广泛的一种,已经成为数字电路设计 的基础。设计者可以用它进行各层次的逻辑设计,有关数字逻辑系统的仿真验证,时序分 析,逻辑综合。v e r i l o g 语言与v h d l 语言相比,更接近c 语言,易入门非常容易掌握,而 v h d l 语占不很直观,需要有a d a 编程基础;v e r i l o g 语言与传统的原理图输入设计相比, 不必考虑工艺性,由于标准性容易修改,而原理图输入设计周期长,要专门的设计工具, 手工布线等等。 2 2 2 基本结构 模块是v e r i l o g 语言中最基本的设计单元,一个系统就是由大大小小的模块组成;它的 实际意义是代表硬件电路的逻辑实体,从门电路到整个系统如存储体,微处理器等。每个 模块可以实现特定的功能,模块之间为并行的关系,高层模块通过调用,连接低层模块的 实例来实现复杂功能,一个系统需要一个顶层模块来连接所有的底层模块。 2 2 3 如何用v e r i l o g 描述可综合的状态机 2 2 - 3 1 同步有限状态机简介 数字逻辑电路的种类许许多多,但总结起来就是分为组合逻辑电路和时序逻辑电路。 组合逻辑电路完成一些简单的逻辑功能,是由与门、或门、非门组成的网络,它与原始状 态无关,没有记忆部件,只跟当前输入逻辑电平函数有关,就是说,在输入状态发生变化 时,输出状态完全跟着变化,跟当前状态没有任何关系;时序逻辑电路不仅与输入状态有 关,还跟目前状态有关,借助状态寄存器记忆当前状态,它有触发器和一些组合逻辑构成。 状态机就是广义上的时序电路,而同步有限状态机是电路状态的变化在同一时钟跳边 沿发生的逻辑电路。根据输入,输出与状态之间的关系,状态机可以分为m e a l y 型和m o o r e 型,其中,m e a l y 型状态机只与状态有关,与输入无关;而m o o r e 型状态机不仅与状态有 关,还跟输入有关。在实际工作中,大部分状态机属于m e a l y 状态机。两种状态机结构见 图2 4 和图2 5 。 9 首都帅范大学硕l 学位论文 基于f p g a 的连续存储系统实现 时钟信号d k 图2 4m e a l y 状态机结构 时钟信号也 图2 5m o o r e 状态机结构 2 2 3 2 可综合设计 综合是在给定标准元件库和一定的设计约束条件下,将语言描述的电路模型转化为门 级网表的过程,从代码到门级电路是通过综合工具内部的映射机制来完成。设计者可以在 门级、寄存器级、行为级、算法级进行建模,所以同一个电路可能出现很多种不同的v e r i l o g h d l 模型,为了能实现可综合过程,v c r i l o g h d l 语言必须满足一定的规则和代码风格,不 同风格的v c d l o gh d l 语言经综合后在物理实现的面积和速度上有很大区别。 2 2 3 3 用v e r i l o g 语言设计可综合的状态机的指导原则 ( 1 ) 采用独热码状态机; ( 2 ) 采用c , a s c ,c , a s c z ,c a s c x 建模; ( 3 ) 由同一时钟触发; ( 4 ) 异步状态机不能被综合。 首都师范人学颂i :学位论文基于f p g a 的连续存储系统实现 2 2 4 编写f p g a 的流程 图2 6 编写f p g a 的流程 2 3s d r a m 结构简介 2 。3 1s d r a m 原理概述 s d r a m ( s y n c h r o n o u sd y n a m i cr a n d o m a c c e s sm e m o r y ) 是高速c m o s ,同步动态随 机存储器。同步是指时钟频率与c p u 前端总线的系统时钟频率相同,并且内部的命令的发 送与数据的传输都以它为基准;动态是指存储阵列需要不断的刷新来保证数据不丢失;随 机是指数据不是按线形依次存储,而是自由指定地址进行数据的读写。 s d r a m 的读写操作可以设置为突发传输,即在个特定的位嚣开始读写,然后在固定 的队列开始固定数目的读写。读写操作由a c t i v e 命令触发,然后是r e a d w r i t e 命令。 和a c t i v e 命令同步被触发的地址位,用来选择页地址( b a n k ) 和行地址( r o w ) ,b a 0 、 b a i 代表页地址,a 0 a 1 2 代表行地址。与r e a d w r i t e 命令同步被触发的地址位,用来 选择突发传输起始的列地址。s d r a m 提供可编程的r e a d w r i t e 突发长度一1 、2 、4 、 8 或者全页( f u l lp a g e ) ,全页操作必须被突发终止操作终止。自动预充电功能可以在突发 队列结束的时候丌始进行行预充电。 s d r a m 通过内部流水线( p i p e l i n e ) 架构达到高速操作,这种架构允许列地址在每个 时钟周期部变化,获取高速、完全随机的存取:三个页( b a n k ) 进行读写操作时,另外一 1 1 首部帅范大学硕l 学位论文 幕于f p g a 的连续存储系统实现 个页进行预充电操作,可以完成无缝的、高速的、随机的存取。它在3 3 v 存储体系统下操 作,可以提供自动刷新模式和低功耗模式。所有的输入输出都是l v t t l 兼容的,含有自动 列地址发生器,在内部页( b a n k ) 之间跳转可以隐藏预充电时间,突发存取时,每个时钟 周期都可以随机改变列地址。 图2 7 为d r a m 的存储原理示意图:行选与列选信号将存储电容与外界间的传输电路 导通,从而可进行放电( 读取) 与充电( 写入) 。另外,途中刷新放大器的设计并不固定, 目前这一功能被并入独处放大器( s e n s e a m p l i f i e r , 简称s - a m p ) 。 r 地局l 墅 图2 7d r a m 的存储原理示意图 2 3 21 6 m e g * 1 6 s d r a m 的功能块框图 图2 8s d r a m 功能块框图 1 2 首都师范人学顾 :学位论文基f f p g a 的连续存储系统实现 2 3 3 初始化 s d r a m 在正常操作丌始之前,应该上电并在预定的模式下初始化。一旦电源连上v d d 和v d d q ( 同步) ,而且时钟稳定( 稳定的时钟就是一种对时钟管脚有时问限制的信号周期) , s d r a m 要求1 0 0 u s 的延时,然后才能发起除了c o m m a n di n h i b i t 或者n o p 之外的任 何操作命令。在这1 0 0 u s 之问控制器发出n o p 命令,接着是p e r c h a r g e 命令( 所有页被预 充电) ,一旦处于空闲状态,进行两个自动刷新命令,在此之后模式加载。模式寄存器用来定义 s d r a m 具体的操作模式,包括突发长度,突发类型,c a s 延迟,可选模式以及突发写模 式,如图2 9 所示。 ,t 1 i , 射崩 - m ll 审+ 1 r + ,幸1 r j ! 一0 ,= l :霉。= = = 二_ 二j j _ _ _ _ _ _ i en 、f _ thh “一oz 口 t n m 图2 9 模式寄存器的定义字 因为模式寄存器上电时会处在未知状态,它在任何一个命令之前需要被装载固定模式。 模式寄存器通过l m r ( l o a dm o d er e g i s t e r ) 命令来设置,保持这些储存的数据直到 再次被设置或者系统掉电。模式寄存器必须在所有页都处于空闲状态时才能被装载,而且 控制器在初始化之前必须等待指定的时间,违反以上任何要求都会导致不确定的操作。 首都师范大学颀i :学位论文摹于f p f , a 的连续佯储系统实现 2 3 4s d r a m 存储中的重要概念 2 3 4 1 突发传输 突发( b u r s t ) 是指在同一行中相邻的存储单元连续进行数据传输的方式,连续传输 所涉及到存储单元( 列) 的数量就是突发长度( b u r s tl e n g t h s ,简称b l ) 。突发长度 决定了一次r e a d w r i t e 命令可以达到得最大列数。它的数值,不能随便设或在数据进行 传输前临时决定,在初始化过程中的m r s 阶段就要对b l 进行设置。目前可用的选项是l 、 2 、4 、8 、全页( f u l lp a g e ) ,1 、2 、4 、8 的突发长度支持顺序突发和交错突发两种类型, 而全页突发( f u l l - p a g eb u r s t ) 只支持顺序突发模式。全页突发和突发终止命令( b u r s t t e r m i n a t e ) 一起可以产生任意的突发长度。而作为一种不确定的操作和将来高级版本的 选择,预留的状态不应该被使用。 读写操作,都是一次对一个存储单元进行寻址,如果要连续读偈就还要对当前存储单 元的下一个单元进行寻址,也就是要不断的发送列地址与读写命令( 行地址不变,所以不 用再对行寻址) ,如图2 1 0 所示。虽然由于读写延迟相同可以让数据的传输在i o 端是连 续的,但它占用了大量的内存控制资源,在数据进行连续传输时无法输入新的命令,效率 很低。 c l k 命令 地址 数据 图2 1 0 单一字节的连续读时序 为此,人们开发了突发传输技术,只要指定起始列地址与突发长度,内存就会依次地 自动对后面相应数量的存储单元进行读写操作而不再需要控制器连续地提供列地址。这 样,除了第一笔数据的传输需要若干个周期( 主要是之前的延迟,一般的是t r c d + c l ) 外, 其后每个数据只需一个周期的即可获得,如图2 1 1 。 1 4 首都师范人学硕卜学位论文基于f p g a 的连续存储系统实现 c o m m a n d a d d r 凸s铉勿磁砀吻铉励贼 : l l i i 卜_ _ 一- - - - i i 一! 。c s l a t e n c y :2 图2 11 突发长度等于四的读命令时序 当r e a d w r i t e 命令发起时,长度与突发长度相等的列组被选中。完全存储意味着突 发将一直持续直到突发边界到达。突发长度等于二时,a 1 - a 9 、a l l ( + 4 ) ,a i a 9 ( + 8 ) , a 1 - a s ( + 1 6 ) 确定了唯一被选中的列组;突发长度等于四时,a 2 a 9 、a l l ( + 4 ) ,a 2 - a 9 ( + 8 ) ,a 2 a 8 ( 1 6 ) 确定了被选中的列祖;突发长度等于八时,a 3 - a 9 、a 1 1 ( + 4 ) ,a 3 - a 9 ( + 8 ) ,a 3 - a 8 ( 1 6 ) 决定了哪个列组被选中。剩下的地址位( 最不重要的) 用来选择这 个列祖开始的地址,无论突发边界有没有到达,全页突发会一直持续。 2 3 4 2c a s 延迟 c a s 延迟是在r e a d 命令被寄存时与输出的第一个数据之间的延时,是纵向地址脉冲 的反应时间,也是在一定频率下衡量支持不同规范的内存的重要标志之一,一般这个延时 被设置成2 3 个时钟周期。 如果r e a d 命令在时钟沿n 被寄存,c a s 延迟为m 个周期,那么数据将会在第i 1 4 1 1 1 个时钟沿出现。数据线( d q ) 要在一个周期前驱动( 即n 4 t t l 1 个周期) ,如果其它相关时 间要求都满足,那么数据将会在n - t - i n 个周期有效。图2 1 2 为c a s 延迟为2 的时序图。 t ot it 2t 3 c t k 厂 厂 厂f h d d o c a st e t t m q f - 2 图2 1 2c a s 延迟为2 的时序图 1 5 首都师范大学硕f :学位论文基于f p g a 的连续存储系统实现 2 3 4 3 预充电 由于s d r a m 的寻址具体独占性,所以在进行完读写操作后,如果要对同一l - b a n k 的 另一行进行寻址,就要将原来有效( 工作) 的行关闭,重新发送行列地址。l - b a n k 关闭现 有工作行,准备打开新行的操作就是预充电( p r e c h a r g e ) 。预充电可以通过命令控制, 也可以通过辅助设定让芯片在每次读写操作之后自动进行预充电。实际上,预充电是一种 对工作行中所有存储体进行数据重写,并对行地址进行复位,同时释放s - a m p ( 重新加入 比较电压,般是电容电压的1 2 ,以帮助判断读取数据的逻辑电平,因为s - a m p 是通过 一个参考电压与存储体位线电压的比较来判断逻辑值的) ,以准备新行的工作。具体而言, 就是将s - a m p 中的数据回写,即使是没

温馨提示

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

评论

0/150

提交评论