(生物医学工程专业论文)使用fpga模拟实现8051单片机及其外设的功能.pdf_第1页
(生物医学工程专业论文)使用fpga模拟实现8051单片机及其外设的功能.pdf_第2页
(生物医学工程专业论文)使用fpga模拟实现8051单片机及其外设的功能.pdf_第3页
(生物医学工程专业论文)使用fpga模拟实现8051单片机及其外设的功能.pdf_第4页
(生物医学工程专业论文)使用fpga模拟实现8051单片机及其外设的功能.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

(生物医学工程专业论文)使用fpga模拟实现8051单片机及其外设的功能.pdf.pdf 免费下载

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

文档简介

东北大学硕士学位论 a b s t r a c t s i m u l a t i o na n dr e a l i z a t i o n f o rt h ef u n c t i o no f8 0 5 1s c m a n d p e r i p h e r a le q u i p m e n tb y f p g a a b s t r a c t w i t ht h ed e v e l o p m e n to fe l e c t r o n i ct e c h n o l o g y , t h ed e s i g no fd i g i t a l s y s t e mi s d e v e l o p i n gi nt h ed i r e c t i o no fm o r er a p i d ,m o r ec a p a c i t y ,l e s sc u b a g ea n dl e s sw e i g h t r e c e n t l y f p g ab e c o m e so n eo ft h ec h i e fw a y so fh a r d w a r ed e s i g nb e c a u s eo fj e s s i n v e s t m e n t ,s h o tp e r i o d ,r e v i s a b l e ,w e l ls e c r e c ya n di n t e l l i g e n t i z e b e c a u s et h e m c s 一51o fc o i n t e li sr e c o g n i z e da si n d u s t r i a lc r i t e r i o no f8 - b i tm a c h i n e ,s i m u l a t i o n a n dr e a l i z a t i o nf o rt h ef u n c t i o no f8 0 51s c ma n dp e r i p h e r a le q u i p m e n tb yf p g a b e c o m e st h ei m p o r t a n tt a s ko nt h ep r o j e c to ft h e l a r g es c a l ea n dc o m p l e xd i g i t a l s y s t e m i nt h i s a r t i c l e ,if i r s ti n t r o d u c et h ef p g aa n df a c i l i t yi s ea b o u tt h eh a r d w a r e d e s i g na n de x p l o i t a t i o no fc o x i l i n x s e c o n dic o m p i l et h es o u r c ec o d et or e a l i z et h e f u n c t i o no f8 0 51 b y t h el a n g u a g ev h d l t h e nid e s i g ns o m ei n t e r f a c ec m o sm o d u l e f o rt h ep e r i p h e r a le q u i p m e n ti n c l u d i n g8 2 5 5 ,s c ia n dk b c k e y b o a r di n t e r f a c ec m o s m o d u l e a tl a s ti e n c a p s u l a t e4p a r t so fa b o v ei n t oaf p g a a n di tr e a l i z e st h em o s t f u n c t i o no f8 0 5 】s c m k e y w o r dd s ,f p g a ,m c s 一51 ,s i n g l e c h i pm i c y o c o ,v h d l ,p a r a l l e l i n t e r f a c e ,s e r i a li n t e r f a c e i i i , 声明 本人声明呈交的学位论文是在导师的指导下完成的。论文 中取得的研究成果除加以标注和致谢的地方外,不包含其他人 已经发表或撰写过的研究成果,也不包括本人为获得其它学位 而使用过的材料。与我一同工作的同志对本研究所做的任何贡 献均已在论文中作了明确的说明并表示谢意。 本人签名:怖日 日 期:矽汐铲午j 习闻 东北大学硕士学位论 第一章前言 1 1e d a 的发展前景 第一章前言 随着v l s i ( v e r yl a r g es c a l ei n t e g r a t i o n ,超大规模集成电路) 川的发展,电子产品 市场运作节奏的进一步加快,涉及诸多领域( 如计算机应用、通信、智能仪表、医用 设备、军事、民用电器等) 的现代电子设计技术已经迈入一个全新的阶段。现代电子 技术的特点是: 1 电子器件及其技术的发展将更多地趋向于e d a ( e l e c t r o n i c d e s i g n a u t o m a t i o n , 电子设计自动化) 【2 】: 2 借助于硬件描述语言,硬件设计与软件设计技术得到了有机的融合; 3 就电子设计的技术、开发过程和目标器件的形式与结构来说,已从过去的“诺 侯割据”、“群雄并起”的局面向规范化、标准化发展口1 : 4 应用系统的设计已从单纯的a s i c ( a p p l i c a t i o ns p e c i f i ci n t e g r a t e dc i r c u i t ,特定 用途集成电路) 【q 设计走向了系统设计和s o c ( s y s t e m o n a c h i p ,单片系统) 【5 1 设计。 未来的电子技术将是e d a 的时代,为了适应这一时代国外各大v l s i 厂商纷纷推 出各种系列的大规模和超大规模f p g a ( f i e l dp r o g r a m m a b l eg a t ea r r a y ,现场可编程 阵列) 和c p l d ( c o m p l e xp r o g r a m m a b l el o g i cd e v i c e ,复杂可编程逻辑器件) ”产品。 其中x i l i n x 公司推出的多种高性能的f p g a 芯片,其器件的规模己进入了百万门的行 列,产品性能提高之快、种类之多让人应接不暇。 1 2 设计的意义 电子技术的必由之路是数字化,这已经成为共识。在数字化的道路上,我国电子 设计技术的发展经历了并将继续经历许多重大的变革与飞跃。从应用s s i 通用数字电 路芯片构成电路系统,到广泛地应用m c u ( m i c r o p r o g r a m m e d c o n t r o lu n i t ,微程序控 制器) u 1 ,在电子系统设计上发生了具有里程碑意义的飞跃 8 】,这一飞跃不但克n t 纯 s s l 数字电路系统许多不可逾越的困难,同时也为电子设计技术的应用开拓了更j 阔 的前景。使得电子系统的智能化水平在广度和深度上产生了质的飞跃。随着社会经济 发展的延伸,各类新型电子产品的开发,为我们提出了许多全新的课题和更高的要求。 而且,随着e d a 技术的发展和f p g a c p l d 在深亚微米领域的进军,榭硬i p 芯核产 业的迅猛发展及嵌入式通用与标准f p g a 和c p l d 器件的出现,单片系统已经可以实 现。 东北大学硕士学位论第一章前言 由于i n t e l 公司的m c s 5 1 系列单片机被公认为8 位机的工业标准 9 1 ,因此,使用 f p g a 模拟实凝8 0 5 1 攀片攫及茭夕 渡豹功携便成为大援摸复杂数字系绫设诗中躲重要 课题。 本论文第二章对f p g a 与开发工具i s e 系统遘彳子了奔绍;第三章首先介绍了 m s c 5 1 系列单片机的特点,然后通过v h d l 语言源程序的编霹详细浇明了如何模拟 实现8 0 5 1 单片机的功能;第四章设计了一个以方式0 工作的8 2 5 5 并行接口模块,通 过该模块能够实现8 0 5 1 单片机同岁 部设备的信息传递;第五章和磐六章分别设计了一 个s c i 串行接口模块和k b c 键盘掴描模块,通过这两个模块能够完成8 0 51 单片机同 外嚣设蚤如键囊鳇售患传递。 * 2 东北犬学硕士学位论文 第二章f p g a 与 s e 系统简介 2 1f p g a 第二章f p g a 与i s e 系统简介 在数字化、信息化的时代,数字集成电路应用得非常广泛。随着微电子技 术与工艺的发展,数字集成电路从电子管、晶体管、中小规模集成电路、超大 规模集成电路( v l s i ) 逐步发展到今天的专用集成电路( a s i c ) 。a s i c 的出 现降低了产品的生产成本,提高了系统的可靠性,减小了产品的物理尺寸,推 动了社会的数字化进程。但是a s i c 因其设计周期长,改版投资大,灵活性差 等缺陷制约着它的应用范围。硬件工程师希望有一种更灵活的设计方法,根据 需要,在实验室就能设计、更改大规模数字逻辑,研制自己的a s l c 并马上投 入使用。这就是可编程逻辑器件提出的基本思想。 可编程逻辑器件随着微电子制造工艺的发展取得了长足的进步。从早期的 只能存储少量数据,完成简单逻辑功能的可编程只读存储器( p r o m ) 、紫外 线可擦除只读存储器( e p r o m ) i 1o j 和电可擦除只读存储器( e e r o m ) ,发展 到能完成中大规模的数字逻辑功能的可编程阵列逻辑( p a l ) 和通用阵列逻辑 ( g a l ) 1 1 i i , 今天已经发展成为可以完成超大规模的复杂组合逻辑与时序逻 辑的现场可编程逻辑器件( f p g a ) 和复杂可编程逻辑器件( c p l d ) 。随着工 艺技术的发展与市场需要,超大规模、高速、低功耗的新型f p g a c p l d 不断 推陈出新。新一代f p g a 甚至集成了中央处理器( c p u ) 或数字处理器( d s p ) 内核,在一片f p g a 上进行软硬件协同设计l i2 】,为实现片上可编程系统( s o p c , s y s t e mo np r o g r a m m a b l ec h i p ) 提供了强大的硬件支持。 2 1 1f p g a 的特点 f p g a 既继承了a s i c 的大规模、高集成度、高可靠性的优点,又克服了 普通a s i c 设计周期长、投资大、灵活性差的缺点,逐步成为复杂数字硬件电 路设计的理想首选。当代f p g a 有以下特点: 1 规模越来越大。随着v l s i ( v e r yl a r g es c h a l ei c ,超大规模集成电路) 工艺的不断提高,单一芯片内部可以容纳上百万个晶体管,f p g a 芯片的规模 也越来越大。单片逻辑门数已愈百万,如x i l i n xv i r t e x i ix c 2 v8 0 0 0 已经达到 8 0 0 万门的规模【l 引。芯片的规模越大所能实现的功能就越强,同时也更适于实 现片上系统( s o c ) 。 。3 一 东北大学硕士学位论文 第二章f p g a 与i s e 系统简介 2 开发过程投资小。f p g a 芯片在出厂之前都做过百分之百的测试,而 且f p g a 设计灵活,发现错误时可直接更改设计,减少了投入风险,节省了许 多潜在的花费。所以不但许多复杂系统使用f p g a 完成,甚至设计a s i c 电要 把实现f p g a 功能样机作为必需的步骤f ”j 。 3 f p g a 一般可以反复地编程、擦除。在不改变外围电路的情况下,设 计不同片内逻辑就能实现不同的电路功能。所以,用f p g a 试制功能样机,能 以最快的速度占领市场。甚至在有些领域,因为相关标准协议发展太快,设计 a s i c 可能跟不是技术的更新,只能用f p g a 完成系统的研制与丌发。 4 保密性能好。在某些场合下,根据要求选用防止反向技术的f p g a , 能很好地保护系统的安全性和设计者的知识产权【l ”。 5 f p g a 开发工具智能化,功能强大。现在,f p g a 开发工具种类繁多, 智能化高、功能强大。应用各种工具可以完成从输入、综合、实现到配置芯片 等系列功能。还有很多工具可以完成对设计的仿真、优化、约束、在线调试 等功能。这些工具易学易用,可以使设计人员更能集中精力进行电路,快速将 产品推向市场。 6 新型f p g a 内嵌c p u 或d s p 内核,支持软硬件协同设计,可以作为 片上可编程系统( s o p c ) 的硬件平台。 2 1 2f p g a 的设计流程 一个完整的f p g a 设计流程包括电路设计与输入、功能仿真、综合、综合后 仿真、实现、布线后仿真和下板调试等主要步骤。 其中电路设计与输入是根据工程师的设计方法将所设计的功能描述给e d a 软 件。常用的设计输入方法有硬件描述语言( h d l ) 和原理图设计输入方法。原理 图设计输入法早期应用得比较广泛,它根据设计要求,选用器件、绘制原理图、 完成输入过程。这种方法的优点是直观、便于理解、元件库资源丰富。但是在大 型设计中,这种方法的可维护性较差,不利于模块建设与重用。更重要的缺点是: 当所选用芯片升级换代后,所有原理图都要作相应的改动。目前进行大型工程设 计时,最常用的设计方法是h d l 设计输入法。其中影响最为广泛的h d l 语言是 v h d l 和v e r i l o g h d l 。它们的共同特点是利于自顶向下设计,利于模块的划分与 复用,可移植性好,通用性好,设计不因芯片的工艺与结构的变化而变化,更利 于向a s i c 的移植。 电路设计完成后,要用专用的仿真工具对设计进行功能仿真,验证电路功能 是否符合设计要求。功能仿真有时也被称为前仿真。通过仿真能及时发现设计中 4 东北大学硕士学位论文 第二章f p g a 与i s e 系统简介 的错误,加快设计进度,提高设计的! l 丁靠性。 综合优化( s y n t h e s i z e ) 是指将h d l 语言、原理图等设计输入翻译成由与、或、 非门,r a m ,寄存器等基本逻辑单元组成的逻辑连接( 网表) ,并根据目标与要求 ( 约束条件) 优化所生成的逻辑连接,输出e d f 和e d n 等文件,供f p g ar + 家的布 局御线器进行实现。 综合完成后需要检查综合结果是否与原设计一致,需要做综合后仿真。在仿 真时,把综合生成的延时文件反标到综合仿真模型中去,可估计门的延时带来的 影响。综合后仿真虽然比功能仿真精确一些,但是只能估计门的延时,而不能估 计线的延时,仿真结果与布线后的实际情况还有一定的差距,并不十分准确。这 种仿真的主要目的在于检查综合器的综合结果是否与设计输入一致。 综合结果的本质是一些由与、或、非门,触发器,r a m 等基本逻辑单元组成 的逻辑网表,它与芯片实际的配置情况还有较大差距。此时应该使用f p g a 厂商 提供的工具软件,根据所选芯片的型号,将综合输出的逻辑网表,适配到具体f p g a 器件上,这个过程就叫做实现( i m p l e m e n t a t i o n ) 过程。x i l i n x 的实现过程分为: 翻译( t r a n s l a t e ) 、映射( m a p ) 、布局布线( p l a c e & r o u t e ) 等3 个步骤。 布局布线之后应该做时序仿真,时序仿真中应该将布局布线的时延文件反标 到设计中,使仿真既包含门的延时,又包含线的延时信息。与前面各种仿真相比, 这种后仿真包含的延时信息最为全面、准确,能较好地反映芯片的实际工作情况。 设计开发的最后步骤就是在线调试或者将生成的配置文件写入芯片中进行测 试。在i s e 中对应的工具是i m p a c t 。 2 。2i s e 系统 x i l i n x 作为当即世界上最大的f p g a 生产商之- - 1 6 1 ,长期以来一直推动着 f p g a 技术的发展。其开发的软件也不断升级换代,由早期的f o u n d a t i o n 系列逐步 发展到目前的i s e5 x 系列。i s e 是集成综合环境的简称,是x i l i n x 提供的一套工 具集,其集成的工具可以完成上述整个f p g a 的开发过程。 2 2 1 特点综述 i s e 的主要特点: 1 它是一个集成环境,可以完成整个f p g a 开发过程。i s e 集成了很多著名 的f p g a 设计工具,根据设计流程合理应用这些工具,会使工程师的设计如鱼得 水。 2 i s e 界面风格简洁流畅,易学易用。i s e 的界面秉承了可视化编程技术, 一5 东北大学硕士学位论文 第二章f p g a 与i s e 系统简介 界面根据设计流程二组织,整个设计过程只需按照界面组织结构 应的按钮或选择相应的选项即可。 3 i s e 有丰富的在线帮助信息,结合x i l i n x 的技术支持网站 中可能遇到的问题都能得到很好的解决。 依次地点击相 一般设计过程 4 强大的设计辅助功能。i s e 秉承了x i l i n x 设计软件的强大辅助功能。在编 写代码时可以使用编写向导生成文件头和模块框架,也可使用语言模板( l a n g u a g e t e m p l a t e s ) 帮助编写代码。在图形输入时可以使用e c s 的辅助项帮助设计原理图。 另外,i s e 的c o r eg e n e r a t o r 和l o g i b l o x 工具可以方便地生成i pc o r e ( i p 核) 与高 效模块为用户所用,大大减少了设计者的工作量,提高了设计效率与质量。 2 2 2i s e5 x 的集成工具及其基本功能 本节主要介绍i s e 中各种集成工具的名称与他们在设计中的作用。 i s e 的集成工具主要分为设计输入工具、综合工具、仿真工具和实现工具等4 类。 1 设计输入工具 设计输入是工程设计的第一步,i s e 集成的设计工具主要包括h d l 编辑器 ( h d le d i t o r ) 、状态机编辑器( s t a t e c a d ) 、原理图编辑器( e c s ) 、i p 核生成器 ( c o r eg e n e r a t o r ) 和测试激励生成器( h d lb e n c h e r ) 等。 ( 1 ) h d l 编辑器( h d le d i t o r ) 可以完成设计电路的h d l 语言的输入。它能 根据语法来彩色显示关键字。支持v h d l 、a b e l 和v e r i l o gh d l 的输入。 ( 2 ) 状态机编辑器( s t a t e c a d ) 采用最自然的方式状态转移图设计状态机。 设计者只需画出状态转移图,状态机编辑器就能自动生成相应的v h d l 、a b e l 和v e r i l o gh d l 语言模型。并且状态机编辑器能生成状态转移的测试激励文件,验 证寄存器传输级( r 1 1 l ) 模型,优化并分析状态机设计结果。使用s t a t e c a d 设计 状态机,生成的代码规范、清晰,能在一定程度上缓解设计者的工作量。 ( 3 ) 原理图编辑器e c s ( s c h e m a t i ce d i t o r ) 用于完成电路的原理图输入。它功 能强大、元件库齐全。设计方便。但随着发展,原理图输入方式在大规模没计中 逐渐被h d l 语言输入方式所取代。 ( 4 ) i p 核生成器( c o r eg e n e r a t o r ) 是x i l i n xf p g a 设计中的一个重要设计输入 工具。它提供了大量x i l i n x 和第三方公司设计的成熟、高效口核( i pc o r e ) 为用 户所用。i p 核生成器可生成的i p 核功能繁多,从简单的基本设计模块到复杂的处 理器等一应俱全,分为基本模块,通信与网络模块,数字信号处理模块,数学功 能模块,存储器模块,微处理器、控制器与外设模块,标准与协议设计模块,语 6 一 东北大学硕士学位论文 第二章f p g a 与i s e 系统简介 音处理模块,标准总线模块和视频与图像处理模块等1 0 大功能模块。配合x i l i n x 网站的i p 中心使用,能大幅度地减轻工程师的设计工作量,提高设计质量。 ( 5 ) 测试激励生成器( h d l b e n c h e r ) 辅助用户设计测试激励文件。它将v i t d l 源代码、v e r i l o g 源代码和e c s 原理图等设计输入导入其测试环境,根据用户在图 形界面下编辑的激励波形,直接生成测试激励文件,然后调用i s e 中集成的仿真 工具进行仿真验证,并分析测试激励的覆盖率。 2 综合工具 i s e 集成的综合:亡具主要有s y n p l i c i t y 公司的s y n p l i f y s y n p l i f yp r o m l ,s y n o p s y s 公司的f p g ac o m p i l e ri u e x p r e s s 1 8 】,e x e m p l a rl o g i c 公司的l e o n a r d o s p e c t r u m 【1 9 1 和x i l i n xi s e 中的x s t ”j 等。 ( 1 ) s y n p l i f y s y n p l i f yp r o 作为新兴的综合工具在综合策略和优化手段上有较大 幅度的提高。它的综合结果往往面积较小,速度较快,在业界口碑很好。如果结 合s y n p l i c i t y 公司的a m p l i f y 物理约束能力,对很多设计能大幅度地减少资源,优 化面积达到3 0 以上。 ( 2 ) s y n o p s y s 公司作为较早与x i l i n x 合作的e d a 软件公司,对x i l i n x 器件内 部结构比较了解。在x i l i n x 较早版本的集成开发环境f o u n d a t i o n 系列软件中,f p g a e x p r e s s 是唯一集成的综合工具。f p g a e x p r e s s 的综合结构比较忠实于原设计,其 升级版本f p g a c o m p i l e r i i 是最好的a s i c f p g a 设计工具之一。需要指出的是i s e 5 系列不再直接集成f p g ae x p r e s s 综合工具,如果需要使用s y n o p s y s 的f p g a e x p r e s s c o m p i l e ri i 系列综合工具,需要使用i s e4 等早期i s e 版本,在f p g a e x p r e s s c o m p i l e ri i 系列综合工具中完成综合,导出e d i f 网表【2 1 1 ,在i s e 中使用 e d i f 流程对设计进行布局布线。 ( 3 ) m e n t o r 的子公司e x e m p l a rl o g i c 出品的l e o n a r d o s p e c t r u m 也是一款非常 流行的综合工具。它的综合优化能力也非常高,随着e x e m p l a rl o g i c 与x i l i n x 的 合作日趋紧密,l e o n a r d o s p e c t m m 对x i l i n x 器件的支持也越来越好。 ( 4 ) x s t ( x i l i n xs y n t h e s i st e c h n o l o g y ) 瞄j 是x i l i n x 自主开发的综合工具。虽 然x i l i n x 设计综合软件的经验还不够丰富,但只有x i l i n x 自己对其芯片的内部结 构最了解,所以x s t 的一些优化策略是其他综合工具无法比拟的。x s t 对某些使 用到x i l i n x 内部核心的设计的综合结果甚至要比其他综合工具优越很多。 3 仿真工具 i s e 集成的仿真工具主要有m o d e lt e c h 公司的仿真工具m o d e l s i m 和测试激励 生成器h d lb e n c h e r 等。 在软件设计中,设计验证的最基本方法是观察程序在计算机上的设计输出。 7 东北大学硕士学位论文 第二章f p g a 与i s e 系统简介 例如每一个刚开始学习c 语言的人,遇到的第一个程序通常都是“h e l l o w o r l d ”、这个程序的最终目的是在计算机屏幕上输出一个“h e l l ow o r l d ”字 符串。为了达到这个目的,设计者需要通过一个文本编辑器编辑c 语言代码,然 后使用特定的工具对代码进行编译、实现,最后得到一个可执行的文件,如果运 行这个程序之后在计算机屏幕上可以看到“h e l l ow o r l d ”字样,那么就说明 程序正确了,反之就需要对c 语言代码进行修改,这个过程是软件测试的一般方 法。对于可编程逻辑的编程者来说,为了验证编写的程序是否正确也需要一个类 似的过程,所不同的是硬件描述语言的输出不能直接在计算机操作系统上看到结 果,而需要通过一个硬件描述语言的模拟器来完成。这种模拟器一般也叫做仿真 器。常用的硬件描述语言的仿真器有很多种,例如v c s 、n c s i m 、a f f i r i m a 、v e r i l o g x l 、s p e e d w a v e 、f i n s i m 和m o d e l s i m 等,根据所使用的编程语言的不同可以将 这些工具分为v e r i l o g 语言仿真器和v h d l 语言仿真器,也可以根据工作方式的不 同分为事件驱动( e v e n t - - d r i v e n ) 的仿真器和时钟驱动( c y c l e - - d r i v e n ) 的仿真 器等类型,这些工具中有些侧重于i c ( 集成电路) 设计,而有些侧重于f p g a 设 计。其中m o d e l s i m 仿真器在f p g a 设计中使用得比较广泛。m o d e l s i m 仿真器是 基于事件驱动的,它可以用来仿真v e r i l o g 语言,也可以用来仿真v h d l 语言,同 时也支持两种语言的混合仿真。 在整个设计流程中,完成了设计输入并成功地进行了编译,只能观明设计符 合一定的语法规范,并不能保证设计可以获得所期望的功能,这时就需要通过仿 真对设计进行验证。一般在f p g a 设计中仿真可以分为功能仿真和时序仿真。功 能仿真又称行为仿真或前仿真,是不考虑器件延时的理想情况下,对源代码直接 进行逻辑功能的验证。时序仿真又称后仿真或布局布线后仿真,是在考虑了器件 延时的情况下,对布局布线后的网表进行的一种仿真,这种仿真中器件延时信息 是通过时序标注的方法来实现的。时序仿真主要用来验证程序在目标器件中的时 序关系。i s e 集成开发环境将仿真划分得更为详细,除了功能、时序仿真以外,还 包括翻译后仿真和映射后仿真等。 m o d e l s i m 可以说是业界最流行的仿真工具之一m 】。其主要特点是仿真速度 快,仿真精度高。m o d e l s i m 的p c 版仿真速度也很快,甚至和工作站版不相上下。 h d l b e n c h e r 是一种根据电路设计输入,自动生成测试激励的工具,它可以把 工程师从书写测试激励文件的繁重工作中部分解脱出来。h d lb e n c h e r 的x i l i n x 版本可以支持v h d l 语言输入,v e d l o gh d l 语言输入和x i h n x 原理图输入等3 种输入方法。将这些设计输入导入到h d lb e n c h e r 中,就能自动生成相应的测试 激励文件。 一8 东北大学硕士学位论文 第二章f p g a 与i s e 系统简介 4 实现工具 i s e 集成的实现工具主要有约束编辑器( c o n s t r a i n t se d i t o r ) 、引脚与区域约束 编辑器( p a c e ) 、时序分析器( t i m i n g a n a l y z e r ) 、f p g a 底层编辑器( f p g a e d i t o r ) 、 芯片观察窗( c h i pv i e w e r ) 和局部规划器( f l o o r p l a n n e r ) 等。 ( 1 ) 约束编辑器是帮助工程师设计用户约束文件( u c f ) 的工具。用户约束文件 是指导实现过程的约束文件,它与指导综合过程的约束文件既有区别又有联系。 约束文件包含时钟属性、延时特性、管脚位置、寄存器分组、布局布线要求和特 殊属性等信息。这些信息指导实现过程,是由用户设计的、决定电路实现的b :l 标 与标准。设计约束文件有较高的技巧性,如果约束文件设计得当,会帮助i s e 达 到用户的设计目标,如果过约束或者约束不当,会影响电路特性。 ( 2 ) 引脚与区域约束编辑器( p a c e ,p i n o u ta n d a r e ac o n s t r a i n t se d i t o r ) 是i s e 5 的一个新增工具,它可以直接将信号指定到i 0 管脚,方便地拉出测试信号,对 设计进行面积约束,自动生成用户约束文件,是约束编辑器的有益补充。 ( 3 ) 时序分析器是分析实现结果是否满足约束条件、芯片的工作速率以及关键 路径等时延信息的工具。能方便地将现实过程生成的各种时延报告分类显示,并 对比约束文件,分析是否满足时序要求。 ( 4 ) 芯片观察窗口为用户提供一个图形界面观察适配前( p r e 。f i t t i n g ) 和适配后 ( p o s t f i t t i n g ) 的输入输出、管脚锁定、宏单元结构等信息。适配前的信息来源 于n g d 文件,适配后的信息来源于v m 6 文件。 ( 5 ) f p g a 底层编辑器读取f p g a 的布线信息( n c d ) 文件,用图形化界面娃 示f p g a 内部的c l b 和i o b 模块结构,根据用户的设置与修改生成x i l i n x 物理约 束文件( p c f ) 。使用f p g ae d i t o r 可以完成如下功能:在自动布线前,手工布置 关键路径,提高电路工作频率;帮助布线器完成自动布线难以实现的路径;在f p g a 内部的任何一个节点设置探针,拉出待测信号到i o 端口,这种方法显然要比在 h d l 源代码中,逐层用语言描述,将待测信号拉到i o 端口的方法更灵活;改变内 部在线逻辑分析仪( i l a ) 的连线和配置;f p g ae d i t o r 的高级用户甚至可以手动 添加和连接一个个内部元件( c l b 、l o b ) 以完成电路设计与实现。 ( 6 ) 布局规划器与f p g ae d i t o r 相似,也能改变f p g a 内部的c l b 和l o b 的 连接配置情况。通过交互图形界面,用户可以观察到f p g a 内的连接情况,并且 手动进行物理位置约束。它比f p g ae d i t o r 更灵活,可以在现实过程的映射 ( m a p p i n g ) 前、映射后、布局布线( p l a c e & r o u t e ) 等不同阶段约束设计,发挥 功能。它可以导入n g d 、n c d 、f n f 和u c f 等格式的文件,根据用户需要,牛 成u c f 和m f p 等约束关系。对f l o o r p l a r m e r 善加利用,可以提高设计的工作效率。 9 东北大学硕士学位论文第三章8 0 5 1 单片机的f p g a 设计与实现 第三章8 0 5 1 单片机的f p g a 设计与实现 3 1m c s 一5 1 系列单片机的结构和原理 m c s 一5 1 是i n t e l 公司的一种单片机系列的名称。继1 9 7 6 年该公司推出m c s 4 8 系列8 位单片机之后,1 9 8 0 年又推出了m c s 5 1 高档8 位单片机。 3 1 1m c s 5 1 系列单片机的结构 3 1 1 1m c s - 5 1 单片机的基本组成 图3 1 所示为m c s - 5 1 系列单片机中的8 0 5 1 单片机的基本功能结构方框图。 外时钟源 外部事件计数 i - - l 外中断控制并行口串行遭讯 i i i l i i j 幽3 18 0 5 1 单片机功能方框图 f i g 3 1 t h e p a n e o ft h ef u n c t i o no fs c m 8 0 5 1 在一小块j 薛片上,集成了一个微型计算机的各个组成部分,每一片单片机包 括: 1 一个8 位的微处理器c p u 。 2 片内数据存储器r a m ( 1 2 8 b 2 5 6 b ) ,用以存放可以读写的数据,如运算 的中间结果、最终结果以及欲显示的数据等。 3 片内程序存储器r o m e p r o m ( 4 k b 8 k b ) ,用以存放程序、一些原是数 据和表格。 一1 0 东北大学硕士学位论文第三章8 0 5 1 单片机的f p g a 设计与实现 4 四个8 位并行i o ( 输入输出) 接口p 0 p 3 ,每个口可以用作输入,也可 以用作输出。 5 两个或三个定时计数器,每个定时计数器都可以设置成计数方式,用以 对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实 现计算机控制。 6 五个中断源的中断控制系统。 7 一个双全工u a r t ( 通用异步接收发送器) 的串行i o 口,可实现单片机 与单片机或其它微机之间串行通信。 8 片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接,最高允许 振荡频率为1 2 m h z 。 以上各部分通过内部数据总线相连接。 3 1 1 2m c s - 5 1 单片机内部结构 8 0 5 1 单片机内部结构如图3 2 所示。 p o 0 一p o 7 p 2 0 一p 2 7 p 1 o p 1 7 p 3 o 一, p 3 7 图3 2 8 0 5 1 单片机内部结构图 f i g 3 2 t h ei n t e r n a ls t r u c t u r eo fs c m 8 0 5 1 1 1 东北大学硕士学位论文 第三章8 0 5 1 单片机的f p g a 设计与实现 一个完整的计算机应该由运算器、控制器、存储器( r o m 及r a m ) 和i o 接 l j 组成。一般微处理器( 如z 8 0 ) 只包括运算器和控制器两部分。和一般微处理器 相比,8 0 5 1 增加了四个8 位i o 接口、一个串行口、4 k b r o m 、1 2 8 b r a m 和很 多工作寄存器及特殊功能寄存器( s f r ) 。其各部分的功能简述如下: 1 运算器 包括一个可进行8 位算术运算和逻辑运算的a l u 单元,8 位的暂存器1 、暂 存器2 、8 位的累加器a c c ,寄存器b 和程序状态字寄存器p s w i 2 3 1 等。 a l u :可对4 位( 半字节) 、8 位( 一字节) 和1 6 位( 双字节) 数据进行操作。 如可进行加、减、乘、除、加1 、减1 、b c d 数十进制调整及比较等算术运算和逻 辑与、或、异或、取反和循环移位等逻辑操作。 a c c :累加器a c c ,经常作为一个运算数经暂存器2 进入a l u 的一个输入端, 与另一个进入暂存器1 的运算数进行运算,运算结果又送回a c c 。除此之外,a c c 在8 0 5 1 内部经常作为数据传送的中转站,同一般微处理器一样,它是最繁忙的一 个寄存器。 p s w :程序状态字寄存器,8 位,用于标志指令执行后的信息状态,相当于一 般微处理器的标志寄存器。p s w 中各位状态供程序查询和判别用。 b :8 位寄存器,在乘、除运算时,b 寄存器用来存放一个操作数:也用来存 放运算后的一部分结果;若不进行乘、除运算时,则可作为通用寄存器使用。 另外,8 0 5 1 片内还有一个布尔处理器,它以p s w 中的进位标志位c 为其累 加器,专门用于处理位操作:可以执行置位、位清零、位取反、位等于1 转移、 位等于0 转移、位等于1 转移并清零以及进位标志位c 与其它可以位寻址的空间 之间进行信息传送等位操作,也能使c 与其他可寻找位之间进行逻辑与、或操作, 结果存放在进位标志位( 位累加器) c 中。 2 控制器 控制器包括程序计数器p c 、指令寄存器i r 、指令译码器i d 、振荡器及定时 电路等。 程序计数器p c :它由两个8 位的计数器p c h 及p c l 组成,共1 6 位。p c 实 际上是程序的字节地址计数器,p c 中的内容是将要执行的下一条指令的地址。改 变p c 中的内容就可以改变程序执行的流向。p c 可对6 4 k 的r o m ( 程序存储器) 直接寻址,也可对8 0 5 1 片外r a m ( 数据存储器) 寻址。 指令寄存器i r 及指令译码器i d :由p c 中的内容指定r o m 地址,取出来的 指令经指令寄存器i r 送至指令译码器i d ,由i d 对指令译码并送p l a 产生一定序 列的控制信号,以执行指令所规定的操作。 1 2 东北大学硕士学位论文第三章8 0 5 1 单片机的f p g a 设计与实现 振荡器及定时电路:8 0 5 1 单片机片内有振荡电路,只需外接石英晶体和频率 微调电容( 2 个3 0 p f 左右) ,其频率范围为1 2 1 2 m h z 【2 4 1 ,该脉冲信号就作为8 0 5 1 工作的最基本节拍,即时间的最小单位。 3 存储器 8 0 5 1 片内有r o m ( 程序存储器,只能读) 和r a m ( 数据存储器,可读、可 写) 两类,它们有各自独立的存储地址空间,与一般微机的存储器配置方式很不 相同。 ( 1 ) 程序存储器( r o m ) 8 0 5 1 的片内程序存储器容量为4 k 字节,地址从0 0 0 0 h 开始,用于存放程序 和表格常数。 ( 2 ) 数据存储器( r a m ) 8 0 5 l 片内数据存储器为1 2 8 字节,地址为0 0 h 7 f h ,用于存放运算的中问 结果、数据暂存以及数据缓冲等。 在这1 2 8 字节的r a m 中,有3 2 个字节单元可指定为工作寄存器,这同一般 微处理器不同。8 0 5 1 的片内r a m 和工作寄存器排在一个队列罩统一编址【2 ”。 由图3 2 可见,8 0 5 1 单片机内部还有s p 、d p t r 、p c o n 、i e 、i p 等特殊功能 寄存器,它们也同1 2 8 字节r a m 在一个队列里编址,地址为8 0 h f f h 。在这1 2 8 字节r a m 单元中有2 1 个特殊功能寄存器( s f r ) ,这些特殊功能寄存器还包括p o p 3 口锁存器。 4 i o 接口 8 0 5 1 有四个8 位并行接口即p 0 p 3 ,它们都是双向端口,每个端口各有8 条 i o 线,均可输k 输出。p 0 p 31 3 四个锁存器同r a m 统一编址,可以把u o 口当 作一般特殊功能寄存器来寻址。 3 1 2m c s 一5 1 单片机外部引脚及其功能 m c s 5 l 系列单片机的外部引脚结构如图3 3 所示。 各外部引脚功能简要说明如下: 1 电源引脚v e e 和v s s v c c ( 4 0 脚) :电源端,+ 5 伏。 v s s ( 2 0 脚) :接地端。 1 3 东北大学硕士学位论文第三章8 0 5 1 单片机的f p g a 设计与实现 2 时钟电路引脚又面和叉丽 x t a l 2 ( 18 脚) :接外部晶体和微 调电容的一端。在8 0 5 l 单片机内它是振 荡电路反相放大器的输出端,振荡电路 的频率就是晶体固有频率。若需采用外 部时钟电路时,该引脚输入外部时钟脉 冲信号。 x t a l l ( 1 9 脚) :接外部晶体和微凋 电容的另一端。在片内它是振荡电路反 相放大器的输入端。在采用外部时钟时, 该引脚必须接地。 p 1 o p 1 p l 。2 挚1 3 p l 。4 p 1 s p 1 ,8 p 1 。芋 致s t v o r x dp 3 0 t x dp 3 1 麓释玎p 3 2 丽p 3 3 礴p 3 t tp 3 s 可贾p 3 辱 磷p 氛7 x t 期l 2 x t 旺1 魄# 搭c s - 5 图3 3m c s 5 1 引脚图 f i g 3 3 t h e p i n so f m c s 一5 1 3 控制信号引脚r s t 、a l e 、丽和豆i r s t v ( 9 脚) :r s t 是复位信号输入端,高电平有效。当此输入端保持两个 机器周期( 2 4 个时钟振荡周期) 的高电平时,就可以完成复位操作。r s t 引脚的 第二功能是v p d ,即备用电源的输入端。当主电源v c c 发生故障,降低到低电平 规定值时,将+ 5 v 电压自动接入r s t 端,为r a m 提供备用电源,以保证存储在 r a m 中的信息不丢失,以使复电后能继续正常运行。 a l e p r o g ( a d d r e s sl a t c he n a b l e p r o g r a m

温馨提示

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

评论

0/150

提交评论