(通信与信息系统专业论文)基于sopc的多通道脉冲计数器的设计与实现.pdf_第1页
(通信与信息系统专业论文)基于sopc的多通道脉冲计数器的设计与实现.pdf_第2页
(通信与信息系统专业论文)基于sopc的多通道脉冲计数器的设计与实现.pdf_第3页
(通信与信息系统专业论文)基于sopc的多通道脉冲计数器的设计与实现.pdf_第4页
(通信与信息系统专业论文)基于sopc的多通道脉冲计数器的设计与实现.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

(通信与信息系统专业论文)基于sopc的多通道脉冲计数器的设计与实现.pdf.pdf 免费下载

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

文档简介

摘要 摘要 多通道脉冲计数器在天文学、物理学以及生物医学等许多领域都有应用。在 许多传统的多通道脉冲计数器系统中,控制模块主要由m c u 、d s p 或f p g a c p l d 实现。采用m c u 或d s p 作为控制模块,容易实现较复杂的控制功能,但是由于 其程序运行的不确定性难以实现精确定时。采用f p g a c p l d 容易实现精确定时, 但是实现复杂的控制功能较难。针对这个问题,本文利用s o p c 技术,在f p g a 内集成n i o si i 处理器作为控制模块,使系统兼备了m c u 和f p g a 的优点。同时 脉冲计数模块也由f p g a 实现。因为脉冲计数模块和控制模块集成在一片f p g a 内部,增加了系统的灵活性和扩展性,减小了系统的体积。上位机通过r s 2 3 2 发 送命令来控制计数器系统,以及接收计数器系统的实验结果。计数器系统可以选 择工作在周期重复计数模式或者实时显示计数模式下,并且可以测量系统周围环 境的温度和气压。本文的主要工作如下: ( 1 ) 设计了系统硬件结构,并根据实际需要选择芯片,搭建了系统的硬件平台。 ( 2 ) 划分了f p g a 内部模块:实现了多通道脉冲计数模块,其输出用格雷码表 示,避免了计数器系统工作在实时显示计数模式下时,对跳变中的计数值采样可 能出错的问题;采用f p g a 实现的定时模块控制计数器系统的计数时间,定时精 度高;设计并实现了基于f p g a 的3 2 位并行c r c ( 循环冗余校验码) 计算模块, 用来计算脉冲计数模块输出结果的c r c 码,计算速度快。 ( 3 ) 根据实际需要选择外设,对外设的参数进行设置,构建起s o p c 硬件平台, 并生成了作为计数器系统控制模块的n i o si i 嵌入式处理器。 ( 4 ) 设计了计数器系统应用程序:制定了计数器系统与上位机的通信协议,通 过校验与应答重传等机制,提高了通信的可靠性;设计了一种当计数器系统工作 在周期重复计数模式下时等待计数完成与发送数据并行的工作方式,利用等待计 数器计数完成的时间读取并发送实验数据,提高了计数器系统的工作效率。 ( 5 ) 对计数器系统进行仿真和测试,测试结果表明计数器系统达到了设计指 标,计数器系统定时精度较高,计数频率达到了2 7 2 m h z 。 关键词:现场可编程门阵列,可编程片上系统,多通道计数器 a b s t r a c t a b s t r a c t m u l t i c h a n n e lc o u n t e ri su s e f u li nm a n ys c i e n t i f i ce x p e r i m e n t st h a ta r ec a r r i e do u t i na s t r o n o m y , p h y s i c s ,a n db i o m e d i c i n e i nm o s tt r a d i t i o n a lm u l t i c h a n n e lc o u n t e r s y s t e m s ,t h ec o n t r o lm o d u l e sa r eo f t e nr e a l i z e db ym c u ,d s po rf p g a c p l d m c u a n dd s pa r es u i t a b l ef o ri m p l e m e n t i n gc o m p l e xc o n t r o lf u n c t i o n s ,b u ti t sh a r dt ot i m e a c c u r a t e l yb e c a u s eo ft h eu n c e r t a i n t yo fs o t h , v a r e sr u n n i n g f p g a c p l di se a s yt o t i m ea c c u r a t e l y , b u ti t sh a r dt oa c h i e v ec o m p l e xc o n t r o lf u n c t i o n s t h i sa r t i c l e - c o m e s u pan o v a lm e t h o do fe l i m i n a t i n gt h ed e f e c t so ft r a d i t i o n a lm u l t i c h a n n e lc o u n t e r s y s t e m s u t i l i z i n gs o p c ,i t se a s yt oi n t e g r a t en i o si ip r o c e s s o ri nf p g a 鹊t h ec o n t r o l m o d u l e ,w h i c hp o s s e s sa l lt h ea d v a n t a g e so fm c ua n df p g a t h ep u l s ec o u n tm o d u l e i sa l s oi m p l e m e n t e di nf p g a b e c a u s eb o t h 也ep u l s ec o u n tm o d u l ea n dt h ec o n t r o l m o d u l ea r ei no n ec h i po ff p g a ,t h es y s t e mi sc o n f i g u r a b l ea n de x p a n s i l ew i t has m a l l s i z e t h em u l t i - c h a n n e lc o u n t e rs y s t e mc o u l dc o m m u n i c a t i o n sw i t hc o m p u t e rb yr s 2 3 2 t h ec o m p u t e rs e n do r d e r st oc o n t r o lt h ew o r km o d u l e so ft h em u l t i c h a n n e lc o u n t e r s y s t e m ,w h i c hc a nw o r ki nc y c l er e p e a tc o u n tm o d u l eo rr e a lt i m ed i s p l a yc o u n tm o d u l e i na d d i t i o n ,t h es y s t e mc a nb ea l s ou s et om e a s u r et h et e m p e r a t u r ea n dp r e s s u r eo ft h e e n v i r o n m e n t t h em a i nc o n t e n t sa r ei l l u s t r a t e da sf o l l o w s : ( 1 ) t h eh a r d w a r es c h e l n a t i ca n dt h ed e v i c e su s e dh a v e b e e ng e n e r a l l yi n t r o d u t e d ( 2 ) t h ei n s i d em o d u l e so ff p g aa r ed e s i g n e d a16c h a n n e lg r a yc o d ec o u n t e ra r e r e a l i z e d ,t h a tc a na v o i ds a m p l ee r r o rw h e nt h es y s t e mi sw o r k i n gi nr e a lt i m ed i s p l a y m o d u l e at i m i n gm o d u l eg e n e r a t e di nf p g ai sa d o p tt or e a l i z ep r e c i s et i m i n g u s i n g p a r a l l e lc r c a c c o u n tm o d u l ec a n g e tt h ec r c o ft h eo u t p u to ft h ep u l s ec o u n tm o d u l e r a p i d l y ( 3 ) t h es o p cp l a t f o r mi sc o n f i g u r e db a s e do np r a c t i c er e q u i r e m e n t sa n dt h e nt h e n i o si ip r o c e s s o ri sg e n e r a t e d ( 4 ) a p p l i c a t i o ns o f t w a r ei sd e s i g n e d t h ec o m m u n i c a t i o np r o t o c o lb e t w e e n c o m p u t e ra n dc o u n t e rs y s t e mi sd e s i g n e d t h ec o m m u n i c a t i o nr e l i a b i l i t yi si m p r o v e db y u s i n gs o m em e t h o d ss u c ha sc r ca n dr e s p o n s i o n ap a r a l l e lm e t h o dt od e a lw i t hc o u n t a n ds e n d i n gr e s u l ti sr e a l i z e d ,w h i c hi m p r o v e dt h e s y s t e m se f f i c i e n c y i i ( 5 ) s y s t e md e b u g g i n ga n dt e s t i n gi sa p p l i e dt oe v a l u a t et h eo v e r a l lp e r f o r m a n c eo f t h es y s t e m t h es y s t e mc a nm e e tt h er e q u i r e m e n t s t h ec o u n tr a t eo ft h es y s t e mi su pt o 2 7 2 m h z k e y w o r d s :f p g a , s o p c ,m u l t i c h a n n e lc o u n t e r i i i 图目录 图目录 图2 1 多通道脉冲计数器系统硬件框图6 图2 2s n 7 4 l v c 4 2 4 5 a 在系统中的应用电路7 图2 3m p x y 8 0 2 0 a 典型应用电路8 图2 4 数据写入传感器的时序图9 图2 5 二分查找法获取传感器数据。lo 图2 - 6m a x 3 2 3 2 在系统中的应用电路1l 图2 7f p g a 配置电路13 图2 8 系统电源电路一1 4 图3 1f p g a 开发流程图19 图3 2f p g a 内部模块图19 图3 3 格雷码计数器模块2 0 图3 4 脉冲计数模块2 1 图3 5 采样模块2 3 图3 - 6c r c 1 6 串行编码电路2 5 图3 73 2 位并行数据的c r c 一16 编码电路结构图2 6 图3 8 多路选择器2 8 图3 - 9 定时模块2 8 图3 1 0f p g a 内部锁相环3 0 图年1 传统嵌入式系统设计流程3 3 图4 2s o p c 设计流程3 4 图4 3u a r t 模块设置图一3 8 图4 4s p i 接口设置图3 9 图4 5c f i 控制器时序设置4 0 图4 - 6s d r a m 控制器设置l 4 1 图禾7s d r a m 控制器设置2 4 1 图4 8n i o si i 处理器所有组件一4 2 图4 9 在q u a r t u si i 下调用n i o si i 处理器4 3 图5 - 1n i o si i 系统软件架构4 4 v i i 图目录 图5 2h a l 结构图4 5 图5 3 周期重复计数流程图4 8 图5 4 实时显示计数流程图4 9 图5 - 5 温度气压测量流程图5 0 图5 6 计数器系统状态转移图5 1 图6 1 格雷码计数器模块仿真5 2 图6 2 定时模块仿真5 3 图6 3f p g a 内部模块联合仿真。5 4 图6 - 4 通过串口调试助手测试串口5 5 图6 - 5 计数精度测试5 6 图6 - 6 定时精度测试1 5 7 图岳7 定时精度测试2 5 8 图6 - 8 实时显示计数测试5 8 v i 表目录 表目录 表2 1s n 7 4 l v c 4 2 4 5 a 的操作方式7 表2 2m p x y 8 0 2 0 a 传感器的操作模式8 表2 3c y c l o n e 器件特性12 表3 1 若干标准的c r c 码生成多项式2 4 表4 1 三种类型c p u 的参数3 5 表4 2u a r t 数据位设置3 7 表5 1 上位机命令格式4 6 i x 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均己在论文中作了明 确的说明并表示谢意。 签名:算科酱签名:休,i 百 日期:2 o 口夕年岁月z 多日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:善钳 覆铭 r 7 第一章绪论 第一章绪论 1 1 多通道脉冲计数器的研究现状 多通道脉冲计数器用来对多个输入通道上的脉冲进行计数,这些脉冲信号通 常是由传感器将被测目标的某些属性转化为脉冲而得到的。通过在一段时间内对 这些脉冲信号进行计数,可以由计数值得出关于被测目标相关属性的信息。因此 多通道脉冲计数器在天文学、物理学以及生物医学等许多学科的实验中有广泛的 应用【i 】。此外其在汽车电子、家用电器以及运动器械等方面也有应用。多通道脉冲 计数器的性能主要由计数器系统的通道数量、计数频率、定时精度、智能化程度 等因素决定【2 j 。 多通道脉冲计数器主要由脉冲计数模块、控制模块和通信总线三部分组成。 过去多通道脉冲计数器主要采用8 2 5 3 、8 2 5 4 实现脉冲计数模块,系统的体积随计 数通道数增加而增大,计数频率较低,功能单一,不够智能化。目前的多通道脉 冲计数器主要通过f p g a c p l d 等可编程逻辑器件实现多通道脉冲计数模块,由于 f p g a c p l d 具有规模大、速度快、可配置等特点,使得多通道计数器可以集成在 一个芯片内,并且具备很强的扩展性和灵活性【3 - 4 1 。 计数器系统的控制模块主要采用m c u 、d s p 或f p g a c p l d 实现。采用m c u 或d s p 作为控制模块,设计简单,容易实现较复杂的功能,但是由于其程序运行 的不确定性难以实现精确计时。采用f p g a c p l d 可实现硬件定时,定时精度高, 但是实现复杂的控制功能较难。s o p c 技术的出现使设计者可以在f p g a 内部集成 n i o si i 嵌入式微处理器作为系统的控制模块。这样就兼备了m c u 、d s p 和 f p g a c p l d 的优点。同时,因为脉冲计数模块和控制模块都可集成在一片f p g a 内部,省去了外部导线的连接,进一步增加了系统灵活性和扩展性。此外,采用 s o p c 技术可以定制出恰好满足实际需要的系统,不会造成i o 口和外设资源的浪 费,因此降低了系统功耗。 多通道脉冲计数器的通信总线主要采用基于板卡的集中式或基于数据采集系 统的分布式两种方式。基于板卡的集中式是将一块基于i s a 或p c i 的板卡插入工 业计算机或商业机上,将外部脉冲信号通过导线引至计算机的端口上然后接入数 据采集卡,通过定制的软件就可以进行采集。基于数据采集系统的分布式主要采 电子科技大学硕士学位论文 用智能采集模块记录信号,再通过一些通用总线如r s 2 3 2 ,r s 4 8 5 进行传送。 1 2 多通道脉冲计数器的主要设计指标 多通道脉冲计数器的输入为1 6 路脉冲信号,脉冲为5 v r r l 电平,最高频率 为2 0 m h z 。每路脉冲对应一个计数器,计数器的输出为3 2 位,1 6 个计数器同时 工作。每接收到一个脉冲,计数器的输出值加一。计数器系统需要与上位机通信。 上位机通过发送命令来控制计数器系统的计数过程,当计数过程结束后,计数器 系统将计数结果发送回上位机。计数器系统需要具备的功能如下: ( 1 ) 具备周期重复计数模式。上位机命令中会包含计数次数和计数时间信息。 每次计数过程开始时,1 6 个计数器先清零,再从0 开始同时对1 6 路脉冲信号计数, 直到命令中规定的计数时间到达。接着计数器系统会将1 6 个计数器在这段时间内 的计数值发送到上位机,这样一次计数过程完成。计数器系统按照上述过程重复 工作,直到完成命令中规定的计数次数。 ( 2 ) 具备实时显示计数模式。计数器系统能在一段时间内连续计数,然后以一 定的频率不断采样1 6 个计数器的输出值,并将其发送到上位机,以便实时观测1 6 个计数器输出值变化情况。 ( 3 ) 能够测量计数器系统周围环境的温度和气压。计数器系统能够通过自带的 传感器模块测量系统周围环境的温度和气压,并将测量值发送回上位机。 由于定时精度在很大程度上决定了计数器系统的性能,因此需要尽可能提高 定时精度。此外计数器系统还需要通过校验以及应答机制提高与上位机通信的可 靠性,减小由于数据传送过程中发生错误带来的影响。 1 3 论文的主要内容和结构安排 本文的内容结构安排如下: 第一章为绪论。讨论了多通道脉冲计数器系统的研究现状以及设计指标,并 对论文结构做了简要介绍。 第二章为系统硬件设计。首先通过对常用多通道脉冲计数器系统的比较与讨 论,根据设计指标对总体方案定型。在给出了系统总体结构后,对该系统的各个 模块的电路设计和使用的芯片作了详细的说明。 第三章为f p g a 内部模块设计。划分了f p g a 的内部模块,根据系统需要设 2 第一章绪论 计并实现了各个模块的功能。 第四章为s o p c 系统硬件设计。首先介绍了s o p c 技术和n i o si i 嵌入式处理 器。然后介绍了n i o si i 处理器的配置过程以及生成方法,并对其内部模块的功能 和特点进行了介绍。 第五章为系统软件介绍。首先介绍了n i o si i 程序设计的特点以及n i o si i 外设 编程方法,然后重点介绍了计数器系统应用程序的设计和实现。 第六章为系统性能测试。给出了测试方案以及相应的测试结果。 第七章为总结和展望,首先对全文的研究工作做了总结,并对下一步的研究 工作进行了展望。 3 电子科技大学硕士学位论文 第二章系统硬件结构设计 2 1 几种常用多通道脉冲计数器的结构 多通道脉冲计数器可有许多种不同的结构,而具体采用什么样的结构则需在 满足项目要求的情况下,综合开发成本,研发时间,可用资源等因素详细论证而 得出。多通道脉冲计数器主要由脉冲计数模块、控制模块和通信总线三部分组成。 目前脉冲计数模块通常采用f p g a c p l d 等大规模可编程逻辑器件实现。以下将主 要讨论多通道脉冲计数器的控制模块和通信总线的常用选择和结构。 2 1 1 控制模块 多通道脉冲计数器常采用m c u ,d s p 或f p g a c p l d 作为控制模块。采用5 1 系列,4 3 0 系列或a v r 系列单片机作为控制模块,主要用c 语言进行编程,易于 实现控制功能。但是由于其内部没有集成足够多的计数器外设,往往需要外接 f p g a c p l d 用来实现多通道脉冲计数模块。m c u 与f p g a c p l d 之间采用i o 口 互联,结构固定,使得系统灵活性降低。而且单片机普遍存在反应速度慢、定时 精度低等问题。即使采用a r m 类m c u ,由于其程序运行的不确定性导致的不稳 定延时也会对计数器定时精度产生影响。d s p 由于采用了哈佛结构,较冯诺依曼 结构的普通m c u 在运行效率上有了很大的提升。但是由于脉冲计数器系统要求精 确的定时,而d s p 摆脱不了软件的特性使其在该领域得不到最大的发挥。而 f p g a c p l d 由于其器件本质为硬件使得精确定时非常容易。此外采用 f p g a c p l d 作为控制模块灵活性强,可以将计数器模块和控制模块都集成在 f p g a c p l d 内部,可与各种数字电路系统方便接口。但是控制模块需要用v e r i l o g h d l 或v h d l 等硬件描述语言编写,难度较大,不易实现复杂功甜孓引。 利用s o p c 技术可以在f p g a 内部集成n i o si i 嵌入式处理器作为控制模块, 即克服了上述方法的缺点,又兼备其优点。n i o si i 硬件平台搭建好之后,可以像 单片机一样用c 语言对其编程开发,易于实现复杂功能,并且可以通过f p g a 进 行精确计时。采用传统方法,即使是f p g a 加m c u 的架构,虽然也具备丌发简单, 定时精度高的特点,但是f p g a 和m c u 之间通过有限的i o 口连接,结构固定, 且i o 口资源有限,因此大大限制了系统的灵活性和扩展性。采用s o p c 技术将计 4 第二章系统硬件结构设计 数器模块和n i o si i 嵌入式处理器都集成在f p g a 内部,可以根据需要任意改变模 块之间的连接方式,灵活性和扩展性强。此外,通过s o p c 技术可以根据实际情 况选择所需的i o 口和外设数量,定制出恰好满足需要的系统,避免了资源浪费, 降低了系统功耗【9 1 3 1 。 2 1 2 通信总线 多通道脉冲计数器的总线通常基于以下两种形式: ( 1 ) 基于板卡的集中式 基本方式是采用数据采集卡进行脉冲信号的采集。主要做法是将一块基于i s a 或p c i 的板卡插入工业计算机或商业机上,将外部脉冲信号通过导线引至计算机 的端口上然后接入数据采集卡,通过定制的软件就可以进行采集。采用这种方式 数据传输速度快,但是采集卡远离实验现场,需要通过很长的距离将脉冲信号线 连接到数据采集卡上,因此会对实验结果造成一定影响【6 】。 ( 2 ) 基于分布式的数据采集系统 基本方式是智能采集模块记录信号,再通过一些通用总线如r s 2 3 2 ,r s 4 8 5 进行传送。采用这种方式数据传输速度较慢,但是计数器系统可以放置在实验现 场,脉冲信号线较短,减少了布线对实验的影响,提高了实验的可靠性。 2 1 3 项目特点及结构定型依据 由于计数器系统的通道数量较大,计数位数较多,且计数器是典型的时序逻 辑器件,而f p g a 因为其内部触发器资源丰富的特点,比c p l d 更适合实现时序 逻辑器件,因此采用f p g a 实现多通道脉冲计数模块。 计数器系统有两种脉冲计数功能以及温度和气压测量功能,需要具备长时间 精确定时的能力,并且在与上位机的通信过程中需要具备一定数据校验和纠错能 力,因此计数器系统功能较为复杂。通过在f p g a 内部集成n i o si i 嵌入式处理器 作为系统的控制模块,使计数器系统即具备高精度的硬件定时能力又便于开发复 杂功能。 由于计数器系统与上位机通信的信息量不大,信号速率要求不高,因此采用 r s 2 3 2 进行通信,同时也避免了延长脉冲信号线对实验结果带来的影响。 5 电子科技大学硕士学位论文 2 2 系统总体结构 根据项目指标要求以及对几种结构的分析讨论后,确定了多通道脉冲计数器 的基本结构。图2 1 给出了整个系统的构成,并突出了多通道脉冲计数器的位置。 图2 1 多通道脉冲计数器系统硬件框图 脉冲信号需要首先经过脉冲整形电路整形,调整其宽度和幅度以提高脉冲信 号的质量,然后多通道脉冲计数器根据上位机发出的命令在一段时间内对输入脉 冲进行计数,计数过程结束后将计数值发送到上位机。本文只研究多通道脉冲计 数器的设计与实现。计数器系统中各个模块的功能描述如下: 整形后的5 v 兀l 电平的脉冲信号经过总线电平转换芯片s n 7 4 l v c 4 2 4 5 a 转 换成3 3 盯l 电平的脉冲信号,输入到f p g a 内部的脉冲计数模块。上位机的控 制命令经r s 2 3 2 发送到m a x 3 2 3 2 进行电平转换,然后由f p g a 内部的n i o si i 处 理器接收。n i o si i 处理器根据上位机命令对计数过程进行控制,并在计数完成后 将计数结果发送到上位机。f l a s h 用来在掉电后保存n i o si i 应用程序,上电后程 序被复制到s d r a m 中运行以提高运行速度。配置芯片e p c s l 用来在掉电时保存 f p g a 配置信息,在上电时对f p g a 进行配置。晶振用来为f p g a 内部模块提供时 钟信号;电源为系统中各个元件提供所需的多种电平。此外计数器系统还可以通 过m p x y 8 0 2 0 a 传感器对周围环境的温度和气压进行测量,测量过程由n i o si i 处 理器进行控制,测量值通过r s 2 3 2 发送到上位机。 6 第二章系统硬件结构设计 2 2 1 总线电平转换芯片s n 7 4 l v c 4 2 4 5 a 由于输入的脉冲信号为5 v 盯l 电平,而系统采用的f p g a 是3 3 v 器件,因 此需要通过s n 7 4 l :v c 4 2 4 5 a 芯片将输入脉冲转换为3 3 v 。s n 7 4 l v c 4 2 4 5 a 芯片可 以将8 位信号在3 3 v 和5 v 之间转化【1 4 1 。因为输入脉冲为1 6 路,所以需要两片 s n 7 4 【c 4 2 4 5 a 芯片。 图2 - 2s n 7 4 l v c 4 2 4 5 a 在系统中的应用电路 s n 7 4 l 、,c 4 2 4 5 a 分为a 端和b 端,a 端供电电压为5 v ,b 端供电电压为3 3 v 。 通过d i r 和o e 控制电平转换的方式,具体操作方式见表2 1 。本系统中o e 设置 为低电平,d i r 设置为高电平。因此5 v 丌l 电平的脉冲信号从a 端输入,会转变 为3 3 r r l 电平从b 端输出。 表2 - 1s n 7 4 l v c 4 2 4 5 a 的操作方式 o ed mo p e r a t i o n llbd a t a t o a b u s lha d a t a t obb u s hxi s o l a t i o n 2 2 2m p x y 8 0 2 0 a 传感器 m p x y 8 0 2 0 a 采用8 引脚s s o p 封装,是一个单体气压和温度传感器,具备电 源管理和数字输出功能,测压范围为0 6 3 7 5 k p a ,测温范围为o 1 2 5 c 。气压信 号的采样由电容式传感器完成,温度信号的采样由薄膜电阻完成。片内集成了数 7 电子科技大学硕士学位论文 字接口电路,整个传感器采用硅c m o s 工艺加工而成【1 5 1 。 m p x y 8 0 2 0 a 传感器用来测量计数器系统周围环境的温度和气压,由于其输入 输出均为数字信号,可以直接与m c u 互连,无需像传统的温度气压传感器对输出 进行a d 转换。因此缩小了系统体积,降低了硬件设计难度。m p x y 8 0 2 0 a 传感 器的典型应用电路如图2 3 所示: 图2 3m p x y 8 0 2 0 a 典型应用电路 该传感器有8 个引脚:s o ,s l 引脚控制其操作模式,如表2 2 所列。d a t a , c l k 为软件控制的串行接口,进行测量数据的传输。o u t 端口为复用端口,8 0 2 0 在待机模式下可以每3 s 内部自唤醒并通过o u t 端口以中断的方式唤醒m c u 。当 8 0 2 0 在测量数据输出模式时,o u t 作为内部比较器的逻辑状态输出。r s t 为复位 引脚。v d d 、v s s 是正负电源。 表2 - 2m p x y 8 0 2 0 a 传感器的操作模式 s os l操作模式 o0 待机 o1 测量气压 lo 测量温度 1l 输出数据 测量温度或气压时,先设置s o 和s l 的值,使传感器工作于相应的模式,等待 一段时间,使传感器测得温度或气压值后,设置传感器为输出数据模式,此时就 可以读出刚才测量的温度或气压值了。从传感器设置为测量温度模式到测得温度 值的时间为2 0 0 微秒;从传感器设置为测量气压模式到测得气压值的时间为5 0 0 微秒。测得的温度和气压值会在传感器内部的采样电容器保持2 0 毫秒的时间。 读取传感器测量值的方法为通过m c u 把8 位估计值通过d a t a 引脚串行发送 到传感器的数模转换寄存器( d a r ) ,传感器内部的比较器比较采样电容器和d a r 8 第二章系统硬件结构设计 中电压的大小,如果d a r 小于采样电容器的电压,o u t 端输出高电平;如果d a r 大于或等于采样电容的电压值,则o u t 端输出为低电平。将8 位估计值串行送入 d a r 寄存器的过程需要满足图2 _ 4 所示的时序关系。可以通过s p i 接口将数据写 入传感器,也可以用m c u 的普通i o 口模拟图2 4 的时序关系,将数据写入传感 器。c l k 引脚上的时钟信号频率在1 0 0 k h z 到1 5 0 k h z 之间。d a t a 引脚上的数据在 c l k 的上升延被送到片内串行移位寄存器,在c l k 的第8 个下降沿到来时,串行 移位寄存器上的数据被锁存到d a r 。 d 如l 入竺兰入竺! 至尺! ! : r _ 弋i 厂- 、! 厂_ 、;厂 ! ! ! 入呈! :入! ! :入竺孥! 入兰署 ; 一;! 一m s b b i t 6xb i t 5xb i t 4xb i t 3xb l t 2xb i t lxl s b d 从 二二二二二二二二二二二二二x 马 图2 _ 4 数据写入传感器的时序图 获取m p x y 8 0 2 0 a 传感器温度或气压数据的方法有逐次逼近法和报警值检查 法。逐次逼近法能够获得8 位精度的转换结果,但需要较长的转换时间和消耗较 多的电能。报警值检查法是预先设置一个气压或温度的报警值,然后监测o u t 引 脚的电平来确定温度或气压值是否超过报警值。这是一种低功耗模式,在不需要 知道准确的温度和气压值时,可采用这种工作方式。本系统中采用的是逐次逼近 法。图2 5 为采用二分查找法来逐次逼近,获取传感器数据的流程图: 9 电子科技大学硕士学位论文 图2 - 5 二分查找法获取传感器数据 读取出8 位温度或气压测量值后,参照参考文献 1 5 】提供的查找表和公式,可 以得到实际的温度或气压值。 2 2 3 串口电路 多通道脉冲计数器与上位机通过r s 2 3 2 连接,其通信由一条发送线,一条接 收线和一条地线实现。r s 2 3 2 的发送线和接收线的电平采用负逻辑,逻辑1 为3 v 到1 5 v ,逻辑o 为3 v 到1 5 v ,因此与f p g a 电平不匹配,需要一片m a x 3 2 3 2 进 行电平转换【1 6 】。r s 2 3 2 上的负逻辑电平经过m a x 3 2 3 2 后被转换成3 3 v r t l 电平 以便与f p g a 的i o 口电平匹配。m a x 3 2 3 2 一端连接r s 2 3 2 接口,另一端连到 f p g a 内部的n i o si i 处理器,其在系统中的应用电路如下图所示: l o 第二章系统硬件结构设计 2 2 4f p g a 控制器 图2 - 6m a x 3 2 3 2 在系统中的应用电路 本系统中采用a l t e r a 公司的c y c l o n e 系列型号为e p l c 6 q 2 4 0 c 8 的f p g a 作为控制模块以及脉冲计数模块。c y c l o n e 现场可编程门阵列系列基于1 5 v 、 0 1 3 岬全铜层s r a m 工艺,其密度增加至2 0 0 6 0 个逻辑元件( l e ) ,r a m 增加至 2 8 8 k b 。它具有生成时钟的锁项环以及d d r 、s d r 和快速r a m ( f c r a m ) 存储器 所需的专用双数据率( d d r ) 接口等。c y c l o n e 器件支持多种i 0 标准,包括l v d s , 以及频率为3 3 m h z 和6 6 m h z ,数据宽度为3 2 位和6 4 位的p c i r 7 1 。 2 2 4 1c y c l o n e 系列f p g a 的主要特性 c y c l o n e 系列器件基于一种全新的低成本架构,从设计之初就充分考虑了成本 的节省问题。c y c l o n e 器件设计时选择了较小的封装形式,以提供给用户足够的i 0 管脚和良好的功耗特性。在此基础上,根据封装的物理尺寸定义裸片连接点的最 大尺寸,装入尽可能多的逻辑结构和存储器块,从而保证每种封装都装入最多的 逻辑资源。具体特性如表2 3 所示f 1 8 。2 1 】: 电子科技大学硕士学位论文 功能 优势 成本优化的体系结构可以为价格敏感的应用提供全新的可编程解决方案 低功率 降低功耗,增加系统可靠性 大容量最大为2 0 0 6 0 个逻辑单元 嵌入式存储资源最大为2 9 4 9 12 b 的存储器 i o 特性丰富的i o 资源,支持多种i o 标准 支持的接口与协议支持多种总线和网络接口,还支持广泛的通信协议 内置锁相环 提供高性能的时钟管理能力 n i o si i 嵌入式处理器可实现一个或多个高性能的嵌入式处理器 实时在系统可编程( i s p ) 在器件运行中通过升级减小维护费用 2 2 4 2f p g a 外围电路 ( 1 ) 配置芯片 配置,又称为加载或下载,是对f p g a 的内容进行编程的一个过程。每次上 电后需要进行配置( c o n f i g u r a t i o n ) 是基于s r a m 工艺f p g a 的一个特点,也可以说 是一个缺点。在f p g a 内部,有许多可编程的多路器、逻辑、互联线结点和r a m 初始化内容等,都需要配置数据来控制。配置芯片就起到这样一个作用,它存放 了配置数据的内容【1 8 】。 总的来说,根据f p g a 在配置电路中的角色,其配置数据可以使用3 种方式 载入( d o w i l l o a d ) 到目标器件中:f p g a 主动( a c t i v e ) 方式;f p g a 被动( p a s s i v e ) 方式; j t a g 方式。 在f p g a 主动方式下,由目标f p g a 来主动输出控制和同步信号( 包括配置 时钟) 给a l t e r a 专用的一种串行配置芯片,在配置芯片收到命令后,就把配置数 据发到f p g a ,完成配置过程。要注意的是:a l t e r af p g a 所支持的主动方式,只 能够与a l t e r a 公司提供的主动串行配置芯片( e p c s 系列) 配合使用,因此a l t e r a 将这种配置方式称为主动串行a s ( a c t i v es e r i a l ) 模式。这种配置模式只有在s t r a t i x 和c y c l o n e 系y l j ( c y c l o n e 和c y c l o n ei i ) 的器件中支持。 在被动方式下,由系统中的其他设备发起并控制配置过程。这些设备可以是 a l t e r a 的配置芯片( e p c 系列) ,或是单板上的微处理器、c p l d 等智能设备。f p g a 在配置过程中完全处于被动地位,只是输出一些状态信号来配合配置过程。 j t a g 是i e e e11 4 9 1 边界扫描测试的标准接口。绝大多数的a l t e r af p g a 都 1 2 第二章系统硬件结构设计 支持由j t a g 口进行配置。从j t a g 接口进行配置可以使用a l t e r a 的下载电缆。 多通道脉冲计数器采用主动串行( a s ) 和j t a g 两种方式对f p g a 进行配置,下 载电缆采用b y t e b l a s t e ri i 。图2 7 中有两个插头j t a g h e a d e r 和a s h e a d e r 。选择 不同的配置方式时要将b y t e b l a s t e ri i 电缆插入相应的插头。 v 3 3 图2 7f p g a 配置电路 ( 2 ) f l a s h 和s d r a m f l a s h 存储器具有低功耗、大容量、擦写速度快、可整片或分扇区在系统编 程( 烧写) 、擦除等特点,因而在各种嵌入式系统中得到了广泛的应用。 系统中用了一片t c 5 8 f v b l 6 0 a f tf l a s h 存储器,其单片存储容量为2 m 字 节,工作电压为2 7 、厂 3 6 v 。8 位或1 6 位数据宽度操作模式。t c 5 8 f v b l 6 0 a f t 具 有c f i ( 通用f l a s h 存储器接口) ,便于和n i o si i 的f l a s h 控制器连接。f l a s h 存储器在系统中通常用于掉电后存放程序代码,系统上电或复位后从此获取指令 并开始执行。 s d r a m 在系统中主要用作程序的运行空间,数据及堆栈区。当系统启动时, c p u 首先从复位地址起始处开始读取启动代码,在完成系统的初始化后,程序代 码一般应调入s d r a m 中运行,以提高系统的运行速度。同时系统堆栈、用户堆 栈以及运行数据也都放在s d r a m 中。要在系统中使用s d r a m ,需要通过a l t e r a 公司提供的s o p c 开发工具将s d r a m 控制器添加到n i o si ic p u 中。 系统中采用一片i s 4 2 s 1 6 4 0 0s d r a m 存储器。i s 4 2 s 1 6 4 0 0 数据宽度为1 6 位, 13 电子科技大学硕士学位论文 单片容量为8 m 字节,可满足运行m i c r o c o s 2 操作系统、或者u c l i n u x 操作系统 以及各种相对较复杂的算法的运行要求。 ( 3 ) 晶振 本系统采用频率为4 8 m h z 的有源晶振作为系统的时钟源。由

温馨提示

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

评论

0/150

提交评论