(微电子学与固体电子学专业论文)单片微型计算机外设模块设计技术研究.pdf_第1页
(微电子学与固体电子学专业论文)单片微型计算机外设模块设计技术研究.pdf_第2页
(微电子学与固体电子学专业论文)单片微型计算机外设模块设计技术研究.pdf_第3页
(微电子学与固体电子学专业论文)单片微型计算机外设模块设计技术研究.pdf_第4页
(微电子学与固体电子学专业论文)单片微型计算机外设模块设计技术研究.pdf_第5页
已阅读5页,还剩77页未读 继续免费阅读

(微电子学与固体电子学专业论文)单片微型计算机外设模块设计技术研究.pdf.pdf 免费下载

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

文档简介

摘要 摘要 本文利用自顶向下的正向设计方法,研究使用v e r i l o gh d l 语言设计兼容i n t e l m c s 5 1 系列单片机的外围设备模块。整个设计流程中,设计软件选用m e n t o r 公司的 m o d e l s i m 编译仿真软件、s y n p l i c i t y 公司的s y n p l i f yp r o 综合软件及a l t e r a 公司的 q u a r t u sf p g a 开发平台,在软件开发环境中完成单片微型计算机外设模块的前端代码设 计、功能仿真验证、最终综合于a l t e r a 公司c y c l o n e 系列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 ) 芯片上,实现与i n t e lm c s 5 1 完全兼容的h p 5 1 型单片微型计算机外围设备模块。 本文首先介绍了单片微型计算机的发展历史、应用方向、发展趋势以及大规模数字 集成电路一般的设计流程;接着详细说明了本项目设计的h p 5 1 型单片微型计算机的特 点、架构及其指令、时序和中断系统,并重点分析说明了该型单片微型计算机的外设模 块的功能、结构及工作方式;然后详细说明了串行通信接口、定时计数器两个外设模块 的设计过程,并给出了外设模块各子功能模块的输入输出端口、部分h d l 源代码、详 细的模块功能仿真波形图和r t l 级电路图。 本文对传统的串行通信接口进行了两点的改进:首先在串行接口接收数据前,先对 串行数据进行过滤噪声干扰处理;接着通过一个自适应波特率发生器自动侦测出串行数 据波特率,直接可以将波特率除数输入给串行通信接口控制寄存器。同时将除去噪声干 扰的纯净串行数据输入给串行通信接口,这样大大增强了串行口的抗噪声性能。这也是 本文的创新点所在。 利用v e r i l o gh d l 硬件描述语言编写设计源代码,并且在设计过程中进行充分的仿 真和验证,本文所采用的设计思想、设计方法都是围绕着功能正确性、可重用性及可移植 性等几个原则展开的。采用硬件描述语言设计电子系统是近年来十分流行的方法,非常 适合于描述大规模数字集成电路系统,特别是在s o c ( s y s t e mo nc h i p ) 设计中。本文设计 的外设模块具有较好的可复用性,完全可以应用于与8 0 5 l 工业标准相兼容的其他单片 机设计中。 关键词:通用异步接收发送器,异步通信,硬件描述语言,现场可编程门阵列,串行通 信接口,定时计数器 a b s t r a c t 。一m i n i 。_ _ _ _ _ 。- 。- _ _ i _ _ i _ - _ - - - _ - _ - _ _ - - - _ _ _ _ _ _ _ _ - _ _ _ _ _ _ _ - - - _ _ _ _ _ _ _ - l - _ - _ - _ _ _ _ _ _ - _ _ _ - - - _ - _ _ _ _ _ _ _ _ - _ _ _ - 一 a b s t r a c t t h i st h e s i sa d o p t st h e “t o p - d o w n m e t h o dt od e s i g nt h ep e r i p h e r a ld e v i c e sm o d u l e so f h p - 51m c uw h i c hc o m p a t i b l ew i t ht h ei n t e lm c s 8 0 51m c u t h ea u t h o rs e l e c t st h e m o d e l s i ma st h ef u n c t i o n a ls i m u l a t i o ns o f t w a r ea n dt h es y n p l i f yp r oa st h e s y n t h e s i z e r s o f t w a r ea n do u a r t u sa st h ef p g ad e v e l o p i n gp l a t f o r m a l lt h et a s k ss u c ha sw r i t i n gs o u r s e c o d e ,f u n c t i o n a ls i m u l a t i o na r ec o m p l e t e di nt h es o f t w a r ee n v i r o n m e n t s a tt h el a s t s y n t h e s i z e dt h ed e s i g no nt h ea l t e r ac y c l o n ec h i p ,a n dc o m p l e t e dt h ef r o n ts o r c ec o d ed e s i g n o ft h ep e r i p h e r a lm o d u l e s f i r s t l y , t h et h e s i si n t r o d u c e st h eh i s t o r yo fm c u 、i m p l e m e n t a t i o no r i e n t a t i o n 、 d e v e l o p p m e n tt r e n d sa n dt h ec o m m o nm e t h o d so fd e s i g nv e r yl a r g es c a l ed i g i t a li n t e g r a t e d c i r c u i t s ;t h e ni n t r o d u c e st h eh p 51 sa r c h i t e c t u r ec h a r a c t e r i s t i c s 、i n s t r u c t i o n sa g g r e g a t e 、 i n t e r r u p ts y s t e m s ,l a s ta u t h o ra n a l y z e st h ep e r i p h e r a lm o d u l e s f u n c t i o n 、a r c h i t e c t u r ea n dt h e w o r k i n gm o d eo ft h eh p - 5 1m c ui nd e t a i l e d i nt h i st h e s i sa u t h o re x p l a n st h ep r o c e s s e so f d e s i g ns e r i a lc o m m u n i c a t i o ni n t e r f a c ea n dt i m e r sd e t a i l e d l y , i n c l u d i n gl i s t st h ei op o r t so f e v e r ys u b - f u n c t i o n a lm o d u l e s ,s o m es o u r c ec o d e ,d e t a i l e df u n c t i o n a ls i m u l a t i o nw a v e f o r i l l s a n ds y n t h e s i z e dr t l l e v e lc i r c u i t s t h e r ea r et w oi m p r o v e m e n t sf o rt h e 仃a d i t i o n a ls e r i a lc o m m u n i c a t i o np o r ti nt h i st h e s i s : f i r s t l y , e l i m i n a t et h en o i s ef r o ms e r i a ll i n e sb e f o r et h es e r i a ld a t ai ss e n tt ot h es e r i a li n t e r f a c e ; t h e nt h es e r i a ld a mi ss e n tt oaa u t o t u n i n gb a u dr a t eg e n e r a t o r , t h eb a u dr a t ei sd e t e c t e d a u t o m a t i c a l l ya n dt h eb a u dr a t ed i v i d e rc a nb es e n tt ot h ec o n t r 0 1r e g i s t e r a t1 a s tt h ep u r e s e r i a ld a t ai ss e n tt ot h es e r i a li n t e r f a c e t h e s et w oi m p r o v e m e n t sc a ne n h a n c et h es e r i a l i n t e r f a c ep e r f o r m a n c e a n dt h e ya r et h ei n n o v a t i v ep o i n t si nt h i st h e s i s u s ev e r i l o gh d lt ow r i t es o u r c ec o d e ,d oe n o u g hs i m u l a t i o na n dv e r i f i c a t i o ni nt h e d e s i g np r o c e s si st h et y p i c a lm e t h o d so fd e s i g nv l s i a l lt h ed e s i g ni d e a sw h i c ha r ea d o p t e d i n t h i st h e s i sa r ea l le n c o l s e dt ot h ev a l i d f u n c t i o n a l ,r e u s a b l ea n d t r a n s p l a n t a b l ep r o p e r t i e s u s eh d lt o d e s i g ne l e c t r o n i cs y s t e m si sav e r yp o p u l a rm e t h o di nr e c e n ty e a r s ,i ti sv e r y s u i t a b l ef o rd e s c r i b i n gt h ev e r yl a r g es c a l ed i g i t a li c s ,e s p e c i a l l yu s e di nt h es o c d e s i g n p r o c e s s t h ep e r i p h e r a lm o d u l e sd e s i g n e db yt h i st h e s i sh a sv e r yg o o dr e - u s a b l ep r o p e r t i e s , t h e yc a nb eu s e di no t h e rs i m i l a rd e s i g n sw i t hf e wc h a n g e s k e y w o r d s :h a r d w a r ed e s c r i p t i o nl a n g u a g e ,u n i v e r s a la s y n c h r o n o u sr e c e i v e r t r a n s m i t t e r , a s y n c h r o n o u sc o m m u n i c a t i o n ,f i e l dp r o g r a m m b a l eg a t e a r r a y , s e r i a lc o m m u n i c a t i o ni n t e r f a c e ,t i m e r s l l 独创 生声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 本人为获得江南大学或其它教育机构的学位或证书而使用过的材料 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意 签名: l 坌耋鬟 日 期: 翌翌左:企:f 乙 关于论文使用授权的说明 本学位论文作者完全了解江南大学有关保留、使用学位论文的规 定:江南大学有权保留并向国家有关部门或机构送交论文的复印件和 磁盘,允许论文被查阅和借阅,可以将学位论文的全部或部分内容编 入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、 汇编学位论文,并且本人电子文档的内容和纸质论文的内容相一致 保密的学位论文在解密后也遵守此规定。 签名: 导师签名: e l 期:沙6 方8 ,z 第一章绪论 1 1 研究背景 第一章绪论 在当今的信息化社会中,电子信息技术作为强大的生产力,对促进社会进步,推动 经济发展,改变人们生产生活方式起到了极大的促进作用。自从1 9 5 8 年美国人杰克基 尔比( j a c kk i l b y ) 发明世界上第一块半导体集成电路( i c ) 到现在的半个世纪时间里, 半导体产业成了世界上发展速度最快的产业之一。作为电子信息产业的基础和核心,集 成电路设计的技术水平和产业规模已经成为衡量一个国家综合国力的重要标志。 通常所说的集成电路指的是半导体集成电路,它将各种有源和无源器件在半导体表 面或内部制成,并用导线互联以实现一定的功能。集成电路发展经历了小规模( s s i ) 、 中规模( m s i ) 、大规模( l s i ) 及超大规模( v l s i ) 等几个阶段。随着微电子学和计算 机科学的不断发展,全球半导体工业将由超大规模集成电路向系统芯片( s o c ) 全面转 型f 1 】。 进入2 1 世纪,第三代移动通讯、千兆互联网络及消费娱乐类电子等产品成为推动 半导体产业增长的主要力量,这些产品对微处理器的需求迅速扩大1 2 j 。但是,当f j 我国 大部分的微处理器依靠国外进1 5 1 ,自主开发的很少1 3 1 。这主要是因为:一方面,我国大 多数企业已经习惯于使用已有的微控制器,不愿意采用新产品;另一方面,大部分国产 微控制性能确实不能满足用户的需求,且大部分国产微控制为逆向设计所得,没有自主 知识产权,所以开发一款8 位微控制器显得尤为重要。目前,单片机技术已经非常成熟, 高性能专门用途的微控制器层出不穷。飞思卡尔公司是市场的领导者,它拥有从8 位直 到3 2 位各种微控制器供应市场,广泛应用于汽车电子、医疗、多媒体及网络领域。我 国台湾省也有许多单片机厂商,典型的有华邦、盛群等公司。盛群公司的单片机产品线 也非常丰富,从l c d 控制芯片、8 位l o 型单片机到通讯芯片等等,由于较好的性价比, 也占有一定的市场份额。国内的海尔集成电路公司也有8 位单片机的产品。 结合已有的技术积累和科研成果,我们提出该科研项目的目标是开发一款与i n t e l m c s 5 1 指令集兼容的8 位微型单片计算机( 下简称单片机) h p 5 1 。本论文的主要工 作是设计该款单片机外围设备模块的前端v e r i l o gh d l 代码及代码的综合验证。 1 2 嵌入式系统 嵌入式系统是以应用为中心,以计算机技术为基础。器件的软硬件结构可以按需进 行定制设计,主要应用于对功耗、成本、体积、可靠性及功能有严格要求的系统中。它 一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统及用户应用程序等组成。嵌入 式系统的核一t l , 部件是各种类型的嵌入式微处理器【4 1 。据不完全统计,现在世界上应用的 微处理器型号已经远远超过1 0 0 0 种,流行的体系结构也有3 0 几种之多。现在几乎每个 江南人学硕+ 学位论文 主要的半导体生产厂商都生产嵌入式微处理器,越来越多的集成电路设计公司建立了自 己的处理器设计部门。 串行通信接口和定时计数器是单片机的重要组成部分。通过串行通信接口,单片机 可以实现与外部设备之间的通讯;定时计数器则可以对外部事件进行计数或对内部进行 计时,使单片机能很好地对外部事件作出响应。现在市场上的主流单片机中,串行通信 接口和定时计数器已经成了标准集成外设模块。 1 3i c 设计中的硬件描述语言及其仿真与综合 市场要求集成电路的规模尽量大、体积尽量小、功耗足够低,所以集成电路的设计 变得越来越复杂,传统的基于门级电路的设计方法已经不能适应现在超大规模集成电路 的设计,这使得采用更高级别抽象层次来表达电路设计的方法显得尤为重要,这就类似 于高级程序设计语言取代低级程序设计语言一样。从上世纪9 0 年代以来,基于硬件描 述语言( h d l ) 的设计方法逐渐取代了基于门级原理图的设计方法。仿真工具可以对 h d l 进行功能仿真,看其是否符合预期的设计要求。综合工具则可以将h d l 翻译成门 级电路。现在进行大规模集成电路设计,采用h d l 和综合工具相结合的设计方法已经 成为了必然的选择1 5 1 。 1 3 1 硬件描述语言 h d l 是硬件描述语言( h a r d w a r ed e s c r i p t i o nl a n g u e ) 的缩写。h d l 有很多种,但 是最流行的只有v h d l 和v e r i l o gh d l 这两种。v e r i l o gh d l 最初是在1 9 8 3 年由g d a ( g a t e w a yd e s i g na u t o m a t i o n ) 公司为其模拟器产品丌发的硬件建模语言,早期它只是 一个专用语言,从上世纪9 0 年代后被推向公共领域,并于1 9 9 5 年成为i e e e 标准,称 为i e e es t d1 3 6 4 1 9 9 5 。 v h d l 出现较晚,它最初是由美国国防部高级研究计划局创立的【6 】,也是i e e e 标 准。但它的普及程度远远落后于v e r i l o gh d l 。v e r i l o gh d l 简单易学,和c 语言比较类 似,用它描述的硬件电路结构简单、代码易读。 v e r i l o gh d l 具有以下描述能力:设计的行为特性,设计的数据流特性,设计的结 构组成以及包含响应监控和设计验证方面的延时和波形产生机制。所有这些都使用同一 种建模语言。此外,v e r i l o gh d l 还提供了编程语言接口( p l i ) ,通过该接口可以允许 外部模块函数访f 1v e r i l o g 模块内部信息,实现设计者和模拟器之间交互【7 。9 】。 1 3 2 集成电路的典型设计流程 超大规模集成电路的设计典型流程如图1 1 所示【1 0 , 1 1 】: 2 第一章绪论 翁端设计 着端设计 图1 1 集成电路的典型设计流程 f i g 1 1t y p i c a lf l o wo fd e s i g ni c 任何设计过程的第一步都是设定设计规范。也就是规定设计所要实现的功能、接口 和整体结构。然后通过分析系统所要实现的功能、接口、预期要达到的性能及其他一些 高级问题,就可以开始系统的行为级设计,进行行为级描述。 完成行为级描述优化和功能仿真之后开始行为级描述向寄存器传输级( r t l ) 描述 的转换。这是因为目前的行为级综合工具只能实现r t l 级描述的h d l 语言的自动综合, 转换后的r t l 级h d l 代码同样也需要进行仿真验证。从这步之后,设计工作就可以在 计算机辅助设计工具的帮助下完成。 功能仿真目的就是在软件环境下,验证电路的行为和预期的要求是否保持一致。一 般是对设计文件输入激励文件,然后检验其输出是否j 下确。在设计的任何阶段都可以进 行仿真操作,以确保设计在各个阶段的正确性。 逻辑综合的目的是将r t l 描述的h d l 代码映射到具体的工艺上加以实现。本文是 基于f p g a 的设计,所以最终将代码综合到a l t e r ac y c l o n e 系列器件上。逻辑综合还同 时将r t l 描述转换为门级网表。 门级网表是使用门级电路之间的连接关系来描述电路的一种方式,它是布局布线工 具的输入。从布局布线这一步开始,设计流程就进入了后端设计。布局布线之后就可以 产生版图,从版图中提取出来的参数可以反标到门级网表中,进行包括门延时、连线延 时的时序仿真,也称为后仿真。在后仿真中如果出现问题,可以回溯到以前的步骤中, 进行循环验证,直到仿真正确。 从上面的设计流程可以看出,大部分的设计工作集中在h d l 代码的编写及优化上 江南人学硕+ 学位论文 面,后端设计的大部分工作量是由e d a 工具软件自动实现的。在作者的硕士毕业论文中, 完成了h p 5 1 型单片机外设模块的前端设计工作,也就是上图1 1 左侧部分的工作。后 面的章节将重点阐述外设模块的r t l 设计及其仿真和综合结果。 在确定了单片机的外设模块的设计要求后,开始系统设计。首先采用v e r i l o g h d l 进行r t l 级描述,产生一个木v 文件,利用m o d e l s i m 仿真器对该文件进行编译,编译 通过后,绘出激励波形对该文件进行功能仿真。用v e r i l o gh d l 语言进行r t l 代码描述 时,经常容易犯的错误是在代码进行功能仿真时会出现许多不确定的竞争,导致仿真结 果不确定,这使得设计人员花费大量时间进行检查,甚至重新编写源程序,大大减慢了 项目进度。所以理解v e r i l o gh d l 仿真器的工作机理并遵循正确的编码风格,就可以大 量减少错误的产生,提高设计效率【1 2 a 3 l 。 功能仿真正确后,将源文件送入综合工具。逻辑综合的目标是将h d l 代码映射到 具体的器件上加以实现。逻辑综合的基本步骤是: 1 将r t l 级描述转换为未经优化的门级布尔描述; 2 执行优化算法,生成优化的布尔描述; 3 把优化的布尔描述映射到实际的器件上。 说明了i c 的设计流程,特别是详细说明了前端设计的流程之后,下面简单报告一 下作者完成毕业设计时所使用的仿真综合工具及软硬件环境: 仿真工具采用的是m e n t o r 公司的m o d e l s i ms e6 i f l l 4 】,综合工具采用的是s y n p l i c i t y 公司的s y n p l i f yp r o 7 6 1 15 j 及q u a r t u sf p g a 丌发平台,设计工作是在w i n d o w sx p 软件 平台下的i b mp c 兼容机上完成。 1 4 本文的结构安排 为了满足自身技术开发及产品生产的需求,我们组织开发了兼容i n t e lm c s 5 1 指令 集的新型单片机h p 5 1 的内核v e r i l o gh d l 源代码,该c p u 利用片内集成的外设模块 来实现其作为嵌入式控制器所要求的外围接口功能,其外围设备模块由两个定时计数器 ( t i m e r ) 和一个串行通信接口( s p i ) 组成。该外设模块的i j 端代码设计就是作者所完 成的毕业设计内容: 本文第二章详细阐述了h p 5 1 型单片机的系统结构、指令集、中断及工作时序等。 并且重点研究了该型单片机串行通信接口和定时计数器功能、结构及工作方式。 本文第三章详细说明了串行通信接口的设计过程,将串行通信接口划分为若干个功 能子模块加以实现,给出了每个功能子模块的输入输出端日、功能仿真波形图及综合后 的r t l 级电路。在本章末尾对串行通信接口提出了两点改进,能极大地增强串行端口 的性能。这也是本文的创新点所在。 本文第四章详细说明了定时计数器的设计过程,说明了定时计数器的功能和逻辑设 计过程,并给出了定时计数器的各个功能子模块的功能仿真波形图和综合后的r t l 级 电路图。 本文第五章简单介绍了f p g a 发展历程,简述了f p g a 设计的基本流程,详细说明 4 第一章绪论 了本文设计的外设模块综合于a l t e r a 公司的f p g a 芯片上的设计过程,给出了综合后的 r t l 级电路图和工艺视图,并同时列出了工具生成的一些关于综合的报告。 最后为全文的总结和展望,列出了本文的一些工作成果,总结了本文的不足之处并 且提出了未来需要继续完成的工作。 江南人学硕+ 学位论文 第二章h p 5 1 单片机的体系结构及其外围设备模块设计技术研究 2 1 综述 单片微型计算机实际上是微型计算机的一种,它和一般的个人计算机类似,都由 c p u 、r a m ( r o m ) 、i o 设备等几个部分组成。在个人计算机上这些部分被分成若干 块板卡安装在计算机主板上。但是在单片机中,这些部分( 甚至包括a d 、u s b 、r f 控制器) 全部被集成在一块集成电路芯片中,所以称之为单片微型计算机,简称为单片 机。 1 9 7 6 年i n t e l 公司推出了m c s 4 8 系列单片机,包括8 0 4 8 、8 7 4 8 、8 0 3 5 等几个型号, 这些单片机的推出标志着第一次出现了完整的单片微型计算机系统,这些单片机系统中 都包含了一个8 位c p u ,容量为1 0 2 4 x 8 位字的r o m 或e p r o m 的程序存储器,容量 为6 4 字的数据存储器,i o 端口和一个8 位定时计数器,这些部件全部被集成在一块 单芯片上【l 酬。依靠程序存储器,这个单芯片可以控制从家用电器、汽车设备到文字数据 处理等各种各样的设备。随着集成电路制造工艺的发展,在m c s 4 8 系列单片机的基础 上,i n t e l 又推出了功能更为强大的m c s 5 1 系列单片机,它有4 倍于4 8 系列单片机的 程序存储器和2 倍的数据存储器,新加入的i o 端口和外设也大大扩大了单片机的应用 范围,而且成本进一步降低。根据不同的应用,5 l 系列的性能比4 8 系列最高可以提高 1 0 倍以上。以m c s 5 l 为基础,人们根据不同的功能需要,又开发了其他各种兼容5 1 指令集的单片机。比如a t m e l 公司的低功耗、高性能的8 9 c 5 1 系列单片机,它与5 1 系列完全兼容,但内含4 k 字节的可编程存储器,可以电擦写1 0 0 0 次以上,时钟频率高 达2 0 m h z 以上。 单片机技术发展到今天已经非常成熟,面向各种应用的单片机系统层出不穷。市场 上已经有非常多的型号【l 。7 1 ,常见型号有i n t e l 公司的m c s 5 1 系列;z i l o g 公司的z 8 系列;f r e e s c a l e 公司的6 8 h c 0 5 0 8 系列;m i c r o c h i p 公司的p i c l 6 c 系列;a t m e l 的 a t 8 9 c 5 1 系列;华邦公司的7 8 e 5 1 系列等【1 6 j 。7 1 。 2 2h p 5 1 型单片微型计算机内核体系结构 8 0 5 1 单片微型计算机是i n t e l 公司m c s 5 1 系列单片机中的第一个型号,其它型号 5 1 单片机或其它公司5 1 系列单片机都是以8 0 5 1 为原型,作功能扩展得来的,所以说 8 0 5 1 是所有5 l 系列单片机的核心。h p 5 1 的体系结构和8 0 5 1 体系结构完全一样,它的 内核结构框图如图2 1 所示1 1 8 - 2 0 】: 6 第二章h p 5 1 单片机的体系结构及其外嗣设备模块设计技术研究 图2 - 1h p - 5 1 单片机c p u 框图 f i g 2 - 1a r c h i t e c t u r ec h a r to fl i p - 51c p u 2 2 1c p u 部分 c p u 是整个单片机的“大脑”,单片机通过它来读取用户程序,执行指令。它的主要 构成元素有:1 个8 位算术逻辑运算单元a l u ,相关的a 、b 、p s w 和s p 寄存器,1 6 位的程序计数器,数据指针寄存器等。 2 2 2i o 端口 m c s 5 1 系列单片机的i o 端口是多功能的输入输出端口,共有3 2 个引脚,分为4 组8 位并行的i 0 端1 3 :分别为p o r t o ,p o r t l ,p o r t 2 和p o r t 3 ,每一个端口都可以在软件 控制下用于输入、输出或作为双向端口,并可以进行字节或位操作。在一些扩展应用中, 这些引脚可作为特殊功能应用。指令通过复用p o r t o 为地址和数据总线来访问外部扩展 存储器。p o r g 每一个引脚都有一个特殊功能:两个外部中断输入;两路定时器输入; 串行通信接口输入输出的两条线路;两个外部时钟信号输入。 2 2 3 外围设备模块 外围设备模块是单片机和外部世界之间的接口。本项目设计的h p 5 1 单片机外设模 块包含有一个可编程串行通信接口和两个1 6 位定时计数器。下面章节将对这两个功能 模块进行详细的研究论述,并列出它们的逻辑设计过程、功能仿真波形图及综合后的 r t l 级电路图。 2 2 4 特殊功能寄存器( s f r ) h p 5 1 型单片微型计算机中,有1 2 8 b y t e s 可直接寻址的存储区,它们起着非常重要 7 江南人学硕士学位论文 的作用,直接控制单片机的运行状态。其直接寻址地址为8 0 h - - f f h ,它们是输入输出 等周边设备的控制、状态及数据寄存器,称为特殊功能寄存器。这些寄存器列出如表2 1 所示: 表2 1 特殊功能寄存器地址影射表 t a b 2 1a d d r e s sm a pt a b l eo fs p e c i a lf u n c t i o n a lr e g i s t e r f 8 hf f h f o hbf 7 h e 8 he f h e o ha c c e 7 h d 8 hd f h d o hp s wd 7 h c 8 ht 2 c o nr c a p 2 lr c a p 2 ht l 2t h 2c f h c o hc 7 h b 8 hi pb f h b o hp 3b 7 h a 8 hi ea f h a o hp 2a 7 h 9 8 hs c o ns b u f9 f h 9 0 hp 19 7 h 8 8 ht c o nt m o dt l ot l lt h 0t h l 8 f h 8 0 hp os pd p ld p hp c o n8 7 h 当需要使用中断、串行通信接口、定时计数器等功能时,必须首先设定特殊功能寄 存器中各相关控制寄存器,对上表中所列的寄存器说明如下: 累加器a c c b 寄存器 程序状态字组p s w 数据指针寄存器d p t r 堆栈指针寄存器s p p 0 、p 1 、p 2 、p 3 端口寄存器 中断使能寄存器i e 中断优先权寄存器i p 定时计数器模式寄存器t m o d 定时计数器控制状态寄存器t c o n 串行通信控制寄存器s c o n 串行数据缓冲器s b u f 电源控制寄存器p c o n 第二章h p - 5 1 单片机的体系结构及其外同设备模块设计技术研究 2 3h p 5 1 单片机工作时序 单片机的每一条指令由若干个字节组成,执行一条指令需要的时间是以机器周期为 单位。一个机器周期就是c p u 访问存储器一次所需要的时间。例如,取指令、读寄存 器及写寄存器所需要的时间。h p 5 1 单片机的一个机器周期包含1 2 个振荡周期,分为 六个s 状态:s 1 s 6 ,每个状态又分为两拍,称为p 1 和p 2 ,这样一个机器周期中1 2 个振荡周期表示为s 1 p 1 ,s 1 p 2 ,s 2 p 1 ,$ 6 p 2 。在h p 5 1 单片机中,有单周期指令、 双周期指令和四周期指令。指令的运算速度和机器周期字节数相关。 几种典型指令的执行时序如图2 2 所利1 9 j : 图2 - 2 指令执行时序图 f i g 2 - 2t i m ef l o wc h a r to fe x e c u t ei n s t r u c t i o n s 在每个机器周期内,地址锁存信号两次有效,第一次出现在s 1 p 2 和s 2 p 1 期间,第 二次出现在$ 4 p 2 和s 5 p 1 期间。 单周期指令执行始于s 1 p 2 ,此时操作码被锁存于指令寄存器中。若是双字节指令, 则同一机器周期的s 4 读第二字节。如果是单字节指令,在s 4 状态仍然读,但是输出数 据无效,且p c 保持不变。上图中a 和b 分别为单字节单周期和双字节单周期指令的时 序图,两种指令都在$ 6 p 2 结束时执行完成;图c 是单字节双周期指令的执行时序,在 两个机器周期内执行4 次读操作,但由于是单字节指令,故后面三次读操作均无效;图 d 是访问外部数据存储器指令“m o v x ”的执行时序,它是一条单字节双周期指令。在第 一个机器周期s 5 开始送出外部数据存储器地址后,进行读写数据。需要注意的是,在 对外部r a m 进行读写操作时,a l e 信号不是周期性的,其他情况下,a l e 作为一种周 期信号,可以给其他设备作外部时钟用。 9 江南人学硕+ 学位论文 2 4h p 5 1 单片机指令集 计算机的指令系统就是它能执行的全部指令的集合。h p 5 1 单片机共有1 0 0 多条指 令,由4 2 种操作方式和7 种寻址方式组合而成,和i n t e lm c s 5 1 系列单片微型计算机 指令集完全兼容,也就是说,在8 0 5 1 系统上编译通过的软件系统可以不加修改地移植 到h p 5 1 系统上。这样可以保持用户已有的使用习惯,无需再学习一种新的指令集,大 大节省了用户投资。 2 5h p 5 1 单片机中断及中断响应 h p 5 1 型单片机共提供5 个中断源:2 个外部中断,2 个定时计数器中断和1 个串 行通信接口中断。每个中断源都可以通过中断优先级寄存器配置优先级。低优先级的中 断源可以被高优先级的中断源中断;当两个不同优先级中断同时发生时,c p u 将会响应 高优先级的中断源;当两个中断源有相同优先级时,c p u 将执行查询算法决定响应哪个 中断源。中断系统控制框图如图2 3 所示【1 9 】: 图2 3 中断及中断响应 f i g 2 3i n t e r r u p ta n di n t e r r u p tr e s p o n s e 2 6h p 5 1 单片微型计算机串行通信接口设计技术研究 h p 5 1 包含1 个可编程的全双工串行通信接口,可以配置成通用异步接收发送器 ( u a r t ) 或者作为同步移位寄存器使用。应用串行通信接口可以实现h p 5 1 单片机系 统之间的单机通信、多机通信及与p c 之间的通信。 2 6 1 通信的基础知识 在设计串行通信接口之前,先简要介绍串行通信的一些基本知识。 在一个实际的应用系统中,微控制器需要与外部设备之间进行信息交换,这些信息 交换就是通信。基本通信方式有两种:并行通信和串行通信。 并行通信是指一个数据帧的各位同时进行传送的通信方式,其优点是传递速度快, 缺点是数据帧有几位就需要多少根传输线,这样在位数多且距离远的情况下就不太实 1 0 嘶;嘶;娜;o;如: 第二章h p - 5 1 单片机的体系结构及其外围设得模块设计技术研究 用。 串行通信是指数据一位一位按顺序传送的通信方式,优点是只需一对传输线就能实 现通信,大大降低了传送成本,适合远距离通信;但是速度相对较慢。 并行通信和串行通信的原理如图2 - 4 所示f 2 l 】 ,1 0 r ll d l t l2 嚣 签部 t3 撼 设备 c p r i l5 r i5 r l , w 锄:n t 羹辑t ( - ) 辑t 图2 4 通信方式 f i g 2 4c o m m u n i c a t i o nm e t h o d s 串行通信通常有三种方式: ( 1 ) 单工方式:只允许数据向一个方向传送。 ( 2 ) 半双工方式:允许数据双向传送,但每次只能有一个设备发送另一个设备接 收。 ( 3 ) 双工方式:允许数据同时双向传送,它要求通信双方具有完整和独立的发送 和接受能力。 异步通信是指数据一位一位按顺序传送的通信方式,典型的异步通信数据帧如图 2 5 所示2 2 】: 停 勇n1 个手矸 起 止蝤 停 位i i t o j # 俚觋石b 臣璺盘位位教奄 止 爱 o 1o 1 t0 o 1o l o 1o 1o t l0 lo i lo i lo z 10o t lo 1 图2 5 异步通信数据帧 f i g 2 - 5a s y n c h r o n o u sc o m m u n i c a t i o nd a t af r a m e 一个数据帧由四部分组成:首先是一位起始位“o ”,然后是5 8 位数据位,接着是可 选的校验位,最后是停止位“l ”。若线路上没有传输数据时,线路始终保持为“1 ”。接收 端则不断检测线路状态,若连续数个“1 ”以后又检测到一个“0 ”,就知道有新数据发送, 接收器应准备接收。字符的起始位还被用作同步接收端的时钟,以保证后续的接收能正 确进行。 串行通信数据传送波特就是数据传送速率,波特率表示每秒传送的二进制位数,单 位是波特( b p s 位秒) 。典型的波特率有1 2 0 0 b p s 、3 6 0 0 b p s 、1 9 2 k b p s 等。 2 6 2 串行通信接口结构 串行通信的优点是能以较少的数据线即可完成数据传输,h p 5 1 单片微型计算机包 江南人学硕士学位论文 含一个可编程的全双工串行通信接口,其串行数据帧格式可以是8 位、1 0 位或1 1 位, 并能设置各种波特率。串行通信接口输入输出管脚是串行数据接收端r x d 及串行数据 发送端t x d 。h p 5 1 单片机以t i m e r l 或内部计数寄存器作为串行通信波特率发生器, t i m e r l 溢出速率经1 6 分频或3 2 分频作为串行发送或接收移位脉冲,这样就产生数据波 特率。 h p 5 1 单片机串行通信接口是可编程的通信端口,对它的初始化编程只需将控制字 分别写入特殊功能寄存器s c o n 、电源控制寄存器p c o n 和发送接收数据缓冲寄存器 s b u f l l 9 ,2 3 2 5 ,3 2 。 在h p 5 1 系列单片机中,特殊功能寄存器s c o n 在系统内存映射的地址是9 8 h ,根 据8 0 5 1 工业标准,该控制寄存器不仅可以按字节寻址而且还可以按位寻址。s c o n 寄 存器控制字各位含义如表2 2 所示: 表2 - 2s c o n 控制寄存器 t a b 2 - 2s c o mc o n t r o lr e g i s t e r l b i t 7b i t 6b i t 5b i t 4b i t 3b i t 2b i t lb i t 0 l s m os m ls m 2r e nt b 8r b 8t ir i l ( 1 ) s m 0 和s m l 串行通信接口工作方式选择位,两位对应四种工作方式,如表2 3 所示: 表2 - 3 串行通信接口工作方式 t a b 2 3s e r i a lc o m m u n i c a t i o ni n t e r f a c ew o r km o d e s s m o s m l 工作方式说明 0 0方式0 当作同步移位寄存器,波特率为e l k 1 2 0 1方式18 位u a r t ,波特率由软件设置 1 0方式2 9 位u a r t ,波特率为c l k 6 4 或c l k 3 2 1 1 方式39 位u a r t ,波特率由软件设定 ( 2 ) s m 2 该位是多机通信控制位,主要用于方式2 和方式3 。 在方式0 中,s m 2 应为0 ; 在方式1 中,若s m 2 = i ,则只有收到有效停止位时才激活融,若没有收到有效停 止位,则清0 : 在方式2 和3 中,若s m 2 = i ,则接收到的第9 位数据为l 时才激活对并发出中断 请求。利用s m 2 的功能,可以制定主从式多机通信协议。 ( 3 ) r e n 该位是串行接收使能位,由软件置位。当r e n = i 时允许接收,若r e n = o 则禁止接 收。 ( 4 ) t b 8 1 2 第二章h p 5 1 单片机的体系结构及其外围设备模块设计技术研究 发送数据的第九位装入t b 8 中;在方式2 或3 中,根据发送数据的需要由软件置位 或复位。 ( 5 ) r a g 接收数据的第9 位装入r b 8 中;在方式2 或3 中,接收到的第九位数据装入r b 8 中,它可以是约定的奇偶校验位或是地址数据标志位。 ( 6 ) t i 该位是发送中断标志位。方式0 时,发送数据到第8 位结束时,硬件自动设置为1 ; 在其他模式时,当发送数据在停止位的开始时,硬件自动将此位设置为1 执行中断子程 序后,需由软件清o 。 ( 7 ) r i 该位是接收中断标志位,方式0 时,在接收第八位结束时设为l ;在其他模式时, 在接收停止位的一半时,自动设为1 。也和t i 一样,响应中断子程序后,需由软件 清o 。 在系统复位时,s c o n 所有位都被清0 。 电源控制寄

温馨提示

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

评论

0/150

提交评论