(电路与系统专业论文)温度压力控制系统的实现与数字模块的vhdl仿真.pdf_第1页
(电路与系统专业论文)温度压力控制系统的实现与数字模块的vhdl仿真.pdf_第2页
(电路与系统专业论文)温度压力控制系统的实现与数字模块的vhdl仿真.pdf_第3页
(电路与系统专业论文)温度压力控制系统的实现与数字模块的vhdl仿真.pdf_第4页
(电路与系统专业论文)温度压力控制系统的实现与数字模块的vhdl仿真.pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

(电路与系统专业论文)温度压力控制系统的实现与数字模块的vhdl仿真.pdf.pdf 免费下载

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

文档简介

摘要 本文首先设计实现了锅炉温度、压力控制系统。在总结传统的温度测量、功率控 制方法的基础上,引入新型数字温度测量器件d s l 8 2 0 并使用可控硅触发芯片 m o c 3 0 6 1 ,极大地降低了电路的复杂程度,完成了系统控制。然后详细阐述了在 f o u n d a t i o n 环境下使用v h d l 硬件描述语言对控制系统的数字部分,主要是8 0 3 1 单 片机模块,进行仿真实现的原理,并给出仿真波形图。 关键词:数字式温度传感器 可控硅驱动器v h d l 仿真 a b s t r a c t i nt h i st h e s i s ,t h eb o i l e rt e m p e r a t u r ea n dp r e s s u r ec o n t r o ls y s t e mi s f i r s t l yd e s i g n e d a n dr e a l i z e d o nt h eb a s i so fs u m m a r i z i n gt r a d i t i o n a lt e m p e r a t u r em e a s u r ea n dp o w e r c o n t r o lm e t h o d s ,t h ep a p e ri n t r o d u c e sd si8 2 0 ,an e w - t y p e d i g i t a lc o m p o n e n t o f m e a s u r i n g t e m p e r a t u r e ,a n dm o c 3 0 6 1 ,ac h i p f o r t r i g g e r i n gs c r u s i n gt h e mg r e a t l y r e d u c e s c o m p l e x i t yo f t h ew h o l ec i r c u i t t h e ni tu s e sv h d lh a r d w a r ed e s c r i p t i o nl a n g u a g ei nt h e c o n d i t i o no ff o u n d a t i o nt os i m u l a t et h e d i g i t a lp a r to ft h ec o n t r o ls y s t e m ,e s p e c i a l l y m c u 8 0 3 1 ,a n dd e t a i l e d l y d e m o n s t r a t e st h e p r i n c i p l e o fs i m u l a t i o n w a v e so ft h e s i m u l a t i o nr e s u l ta r ea l s os h o w e d k e yw o r d s :d i g i t a lt e m p e r a t u r es e n s o r t r i g g e ro fs c r v h d ls i m u l a t i o n , 南塞堕至堕盔叁兰堕主! 壁堡塞一 一一 绪论 本论文包括两部分的内容。一是实现控制系统,该系统主要完成温度、压力的控 制。二是对控制系统中的数字模块用硬件描述语言v h d l 进行仿真实现。 整个控制系统主要由温度传感器部分、压力测量部分、主机部分、控制部分、 人机接口部分、报警部分共六大部分组成,如图0 1 所示。人机接口部分主要完成温 度、压力的设置以及即时温度、压力的显示。报警部分的功能是当温度或压力超过设 定值时自动打开报警系统。压力测量部分采用电接点式压力表进行直接测量。 l温度传感器部分 = = 人 机 l压力测量部分 = = 接 8 9 c 5 1 一 、 8 2 5 5 1 l 丁 i搬警部分 := = 、r - y 部 分 i控制部分 := = 幽0 1系统结构框图 在控制系统的前端测量部分,一般采用的方法是首先由模拟温度传感器采集样点 值,输出微弱的电压或电流信号,然后经过高精度运算放大器,把信号放大,接着用 模数转换器把采集到的模拟信号转换成可供m c u ( 单片机) 处理的数字信号,该方 法对中间环节运算放大器的精度要求非常高,否则容易引入干扰,形成误差,使控制 系统发出错误操作。本文在温度测量方面引入d a l l a s 公司新近推出的数字式温度传感 器d s l 8 2 0 ,它内部包含了6 4 位r o m ( 只读存储器) 、温度传感器、非易失报警温 度上下限单元、便笺薄存储器、存储器和控制逻辑单元8 位冗余检码发生器和电 压检测等电路单元,而外形仅类似于一个三极管的大小。d s l8 2 0 除了能够测温外, 还具有报警、单线多点的识别等多项功能,其外部接口简单、转换速度快、功能强大 等优点是一般模拟测量电路所无法比拟的。 在系统的控制电路中,采用双向可控硅作可控元件,调声双向可控砖的导通、 截止的周期数达到控;刨的目的。在可控硅的触发电路方面,传统上一般i f 同步电路 ( 对三相电源) 、捡零电路以及使用光电耦合器的隔离电路组成,结构复杂,从而降 低可靠性,而且多采用分立元件,器件的离散性和温度严重漂移影响控制精度和使用 寿命,对于一些需要控制多部没备的装置还带来体积太大的问题。在本文中介绍f j m o t o r o l a 公司为此而尘产的新型过零器件m o c 3 0 6 l 可以很好地解决上述问题,它内 星堕堕垄丝型墨竺盟壅堡兰墼兰丝垫盟翌里l 堕基一 部集成了过零检测、过零触发等电路,整个器件外部尺寸小,仅有6 个外部引脚。其 输入、输出部分是通过红外光耦合的,电气上可实现输入电路和交流功率负载的完全 隔离。外部只需少许的电阻电容就可组成一个可控硅触发电路。 随着可编程器件的发展,其体积小、成本低、上市时间快的特点推动它在越来越 多的领域被使用。其项目开发所需前期工程丌发费用低的特点,使其更有着诱人的应 用 i 景。目前对可编程逻辑器件进行系统级的描述主要有三种方式:组合和寄存器形 式方程、图形输入、文本输入。 组合和寄存器形式方程主要用于简单p l d ( 可编程逻辑器件) 的设计描述。对于 小规模的设计而言,通常采用低于5 0 0 门的简单p l d 就可满足设计需要,但是对于 大容量的可编程逻辑设计,采用简单的p l d 难以快速和有效地完成设计,而且组合 和寄存器形式方程的方式既费时、又易出错,且在方程式中查询错误也很困难。 图形方式较组合和寄存器形式方程就有许多优点,例如:可以提供设计的图形观 察,具有支持图形阶层结构的软件工具,使设计构成模块化。然而对于大型复杂的设 计,纯图形输入方式也有很多弊端,如控制逻辑的实现不一目了然,往往仍先需采用 组合寄存器形式方程进行化简产生:图形输入的环境是专用的,这使得设计者在某个 图形输入环境中工作的某个项目设计,其设计的图或子图,无法在另外一个图形输入 环境中进行另一个项目设计时重新调整:原图的保持比较困难,在设计实现过程中, 经常需要对设计进行修改,同时,在实现过程中,设计构图的形式也会改变。而采用 文本输入方式就可减少上述种种不便。 文本输入由两种语言可采用,v h d l 和v e r i l o g 。v e r i l o g 比v h d l 更简练,但在 论述问题时,v h d l 比v e r i l o g 更为便利。本课题采用v h d l 进行设计描述。 把前述控制系统中的数字部分用v h d l 进行仿真实现是本课题的另一主要任 务。在这一部分中,首先对控制系统中除m c u 以外的数字器件如三态总线接收器 7 4 h c 2 4 4 ,扩展并行口8 2 5 5 进行分析、设计,然后给出了仿真结果。接着是中心控 制器件m c u 8 0 3 1 的设计,在详细分析其指令系统的基础上,给出了整体结构框图, 然后对其中的关键功能部件逐个地分析、构造,给出各部件的结构图和相关信号,随 后是在此基础上进行仿真得出的结果。在文章最后给出了指令的例解。 南京堕至堕盔叁:! ! ! 堕堂堡堡塞 第一章前端测温模块 d s l 8 2 0 是由美国d s l l a s 公司推出的单线数字温度计,具有与a d 5 9 0 相当的测量 范围和精度。d s l 8 2 0 提供9 位( 二进制) 温度读数,指示测量的温度。信息经过单 线接口送入d s l 8 2 0 或从d s l 8 2 0 送出,因此从主机c p u 到d s l 8 2 0 仅需一条数据线。 d s l 8 2 0 所需的电源可以由数据线同时提供而不需要加额外的电源。因为每一个 d s l 8 2 0 在出厂时已经给定了唯一的序号,因此任意多个d s l 8 2 0 可以存放在同一条 单线总线上。这允许在许多不同的地方放置温度敏感器件。 1 1d s l 8 2 0 的特点 单线通信协议、命令输入、数据读出都通过同一引脚 多个传感器可共用一根通信线,简化多点线路 无需外部元件,以脉冲形式直接输出数字温度信号 可以通过通信线供电 测温范围:5 5 ”c + 1 2 5 ”c 9 位温度值( 1 位符号、8 位温度值) 转换时i 自j 1 秒( 单线方式时间i 一2 秒) 可以设定非易失上下限报警值 1 2 测温原理 d s l 8 2 0 内部包括7 个主要的电路单元:6 4 位r o m ( 只读存储器) 、温度传感器、 非易失报警温度上下限单元、便笺薄存储单元、存储器和控制逻辑单元、8 位冗余校 验码发生器和电压检测单元。内部结构如图1 1 所示。 c v l i 存储器和控制 、 z 便笺薄存储器i : 温腰传感器i l 2 王6 4 何 电源 r o mti报警上限t h tl - 检洲 c r c 发生器报警f 限t l 剀i id s l8 2 0 内部结构 )i)n 温度压查丝型墨竺堕壅婴兰塑至壁垫堕旦旦! 堕壅 一 一 ( 1 ) 6 4 位r ( ) m 每一片d s l 8 2 0 具有全球唯一的6 4 位r o m 代码。其中第一个字节为单总 线产品代码( d s l 8 2 0 为1 0 h ) ;接下来的4 8 位为唯的硅系列号;最后8 位 是前面5 6 位的校验码 ( 2 ) 温度传感器 温度传感器的作用是将模拟温度值转化成数字值。d s l 8 2 0 测温是通过对 时钟周期计数实现的。d s l 8 2 0 的温度测量电路如图1 2 。 幽l2d s l8 2 0 测温原理 其原理是:低温度系数振荡器输出的时钟脉冲信号通过由高温度系数振荡器产 生的门周期而被计数。电路中有两个振荡器a 和b ,其中a 为高温度系数振荡 器门控周期长;b 为低温度系数振荡器,振荡周期短。这样,由于振荡器b 的 振荡周期对温度很敏感( 成比例变化) ,而振荡器a 对温度变化不敏感( 振荡 周期不随温度变化) ,而且周期长,电路在振荡器a 的一个振荡j 下半周期内( 即 门控周期) 对振荡器b 的周期计数,计数的结果就对应了温度值。测温电路图 中,计数器被预置在与一5 5 0 c 相对应的1 个基数值,如果计数器在高温系数振 荡器输出的门周期结束盼计数到零,表示测量的温度值高于5 5 0 c ,被预置在 5 5 0 c 的温度寄存器得知就增加1o c ,然后重复这个过程,直到高温度系数振荡 器的门周期结束为止,这时温度寄存器中的值就是被测量的温度值,这个值以 1 6 位形式存放在便笺式存储器中,其中高位字节为符号扩展位,如果是币温度 范围,则可只取低位字节,温度值可由主机通过发存储器命令而读出。 斜率累加器用于补偿温度振荡器的抛物线特性。 ( 3 ) 便笺薄存储器和非易失报警温度上下限单元 d s l 8 2 0 的存储器由便笺薄存储器和非易失报警温度上下限单元组成的。便 笺薄存储器山8 个字节组织起来,它们分别是:温度结果低字节、温度结果高 字节( 包括符号位) 、报警上限、报警下限、两个空字节和另外两个用于计算 童塞堕窒堕盔叁兰堕主兰笪篓苎二一 温度结果最终值的中间字节,第9 个字节是上面8 个字节的冗余校验码。非易 失报警温度上下限单元单元实际上是两个电可擦除的存储器( e e p r o m ) ,存 放传感器报警上下限温度值。存储器的组织结构如图1 3 所示。 第9 个字h 第5 f - t - 仃 第4 个字1 , 第1 个字仃 i 温度f 限t li 温度上限t h| 温度高字1 y m s bl 温鏖低字肖l s bj 幽1 3存储器的组织结构 对于非易失报警温度上下限制来说,便笺薄有利于单总线通信过程中数据 的完整性,报警值首先写入便笺薄中,并可读出:在数据进行校验后,一个复 制命令将报警值再存到e e p r o m 中,这个过程在修改便笺薄存储器时保证数 据的完整性,如果不需要设置报警值,该单元可作它用。 便笺薄存储器用存储命令进行操作,操作方法后面介绍。 ( 4 ) 存储器和控制逻辑单元 存储器和控制逻辑单元是传感器内部的控制核心,控制r o m 命令、存储器 命令、温度上下限比较等。 ( 5 ) 8 位冗余校验码( c r c ) 发生器 d s l 8 2 0 内部有两个字节的校验码,其中一个位于6 4 位r o m 的最高位字节, 它是下面5 6 位的校验码,保证正确读出传感器系列码;另外一个是便笺薄内8 个字节的校验码,保证报警温度上下限正确写入和传感器正确读出。 ( 6 ) 电压检测单元 电压检测单元能够判断传感器是由独立的外部电源或是由信号先通过对芯 片内部的电容充电提供电源。 1 3d s l 8 2 0 的使用 1 3 1 硬件接口 d s l 8 2 0 是单线接口式器件,它与单片机的硬件接口十分简单,只需占用单片机 的一个双向i o 口,其接口电路见图1 4 ( 以外部电源供电为例 口) 。 v 占用8 9 c 5 1 的垂 3 0 ,“、 1 温度墨力丝型墨竺塑窒婴兰茎主堡墨盟旦里! 堕壅 幽1 4硬件接口图 1 3 2d s l 8 2 0 的命令与操作 1 3 2 1d s l 8 2 0 的主要命令 ( 1 ) r o m 功能命令 一旦主机发复位脉冲后接到d s l 8 2 0 的在线响应,主机就可发如下五种r o m 命 令进行下一步的操作,所有的命令都以1 6 进制表示,都为8 位长。 a r o m 读 3 3 h 】 该命令用于读出d s l 8 2 0 的6 4 位r o m 代码( 包括8 位单线产品代码、4 8 位唯一的硅系列号和8 为校验码) ,该命令只能用于总线上只接一个d s l 8 2 0 时。 b r o m 匹配 5 5 h r o m 匹配命令使主机选中某一特定的d s l 8 2 0 。只有当r o m 代码与命令 指定的r o m 代码完全一致的d s l 8 2 0 才响应,可以继续下面的操作。其它r o m 代码不一致的d s l 8 2 0 则不响应。 c r o m 忽略 c c h l 在总线上只有单一的d s i8 2 0 时,使用该命令可以不必发6 4 位r o m 代码 而节省时间。 d r o m 搜索【f o h 】 一个新的系统初始化时,主机可能不知道总线上已接了多少个d s l 8 2 0 , 该命令可使主机用排除法来确认总线上所接的d s l 8 2 0 。 e 报警搜索 e c h 该命令格式和r o m 搜索命令相同,但是只有在总线上某个d s l 8 2 0 最新一 次的数据刷新中有报警发生时才响应该命令。 ( 2 ) 存储器功能命令 存储器命令有6 种:启动温度转换、便笺薄读、便笺薄写、便笺薄复制、恢复 e e p r o m 、读电源状态。具体描述如表1 1 所示。 表1 1d s l 8 2 0 存储器命令一览表 j 命令描述代码 命令操作说明附注 l 启动转换启动温度转换 4 4 h 凄转换“一旷”状态 l f 便笺薄读凄便笺薄平校验码 b e h滇9 字1 y 数据以下为存储器命令 i 便笺薄写写报警上r 限t h 、t l 4 e h 弓剑第2 、3 字1 ,中 l 便笺薄复制将t h 、t l 写入e e p r o m 4 8 h 读复制状态 2 恢复将e e p r o m 内t h 、t lb 8 h滇总线“一旷”状态 南塞堕至堕丕叁堂堡兰壁笙塞 一一 ie e p r o m 存【亓i 便笺薄 i 读电源状态 d s l8 2 0 供电方式 b 4 h读电源状态 “1 ,( 高电平) ,保证充足能量且其间不能有其它操作。 附注2 :如果d s i8 2 0 借助通信线供电,主机发山复制命令后,通信线至少保持1 0 毫秒的“l ”( 高 电平) ,且此时不能有其它操作。 1 3 2 2d s l 8 2 0 的主要操作 d s l 8 2 0 与单片机的接口简单是以相对复杂的接口编程为代价的,d s l 8 2 0 与 8 9 c 5 1 的接口协议是通过严格的时序柬实现的,d s l 8 2 0 数据的写入和读出都是由主 机读写特定的时间片来完成的,包括初始化协议、写0 写1 协议、读0 读l 协议。 ( 1 ) 初始化 时序图如下,主机总线首先发一复位脉冲( 最短为4 8 0 us 的低电平信号) ,接 着释放总线并进入接收状态,d s l 8 2 0 在检测到总线上升沿之后,等待1 5 us 6 0 us ,接着发出存在脉冲( 6 0 2 4 0us ) 。 。p q o u u 5 e 取7 j一 9 6 0 p s 最大 d s i8 2 0 响应脉冲 d s l 8 2 0 等待1 5 甾o竖卜6 0 2 4 0 9 叫 线 八 g n d 图15 - 1d s l8 2 0 初始化时序 ( 2 ) 写0 写1 协议 当主机总线从高电平拉至低电平时,就可产生写时间隙。在丌始的1 5us 内将 所需写的位送到总线上,然后在接下来的1 5ps 6 0 us 内对总线采样,若是低 电平写入的位是0 ,若高电平写入的位是l 。连续写2 位问的问隙应大于lus 。 j 机写0 时喧叫兰竺 主机写1 时间片 6 0 , i s w r n 2 2 0 i 1 。 ( 2 ) r g 是双向可控硅的门极电阻,可防止误触发提高抗干扰能力,阻值一般选在 3 0 0 5 0 0 q 之间,本系统为3 0 0 q 。 ( 3 ) r s 、c s 是针对感性负载而设计的缓冲网络电路。因为对于电感性负载,双向可 控硅两端的电流与电压之间的相位产尘偏移,当电流降到维持电流以下时可控硅两端 依然存在相当的电压,如果电压出现的太快,可控硅会失去控制而继续导通。r 。、 c s 的值依据实际情况选定,一般c s 在0 0 1 1 0uf ,r s 取几欧到几十欧。 温度压力篓型墨竺塑窭翌兰塑主丝垫塑坚里兰堕壅一一 第三章软件设计 系统的整个程序用m c s 一5 1 汇编语言编制,主要包括读入设置的温度、启动温度 和压力的测量、显示、比较并判断以及报警几个单元。主程序流程如图3 1 所示a 图3 1系统控制流科幽 南壅堕窒堕鲞盔鲎堡主堂生堡塞 一一 4 1 设计结果 第四章设计结果及改进 下面为设计的实物照片。 4 2d s l 8 2 0 的改进使用 在一般测温使用情况下,d s l 8 2 0 的测温分辨率为o 5 0 c ,以9 位数据格式表示, 其中最低有效位( l s b ) 由比较器进行o 2 5 0 c 比较,当计数器1 中的余值转化成温度 后低于o ,2 5 0 c 时,清除温度寄存器的最低位( l s b ) ,当计数器1 中的余值转化为温 度后高于0 2 5 0 c 时,置位温度存储器的最低位( l s b ) ,如一2 5 5 0 c 对应的9 位数据格 式如下: 叵 叵叵叵 圃 温度压力控制壅竺塑塞婴兰墼兰堡些堕型里! 堕壅 一一一 在对d s l8 2 0 测温原理详细分析的基础上,发现采取直接读驳d s l 8 2 0 内部暂存 寄存器的方法,可将d s l 8 2 0 的测温分辨率提高到o i o c o 0 1o c 。d s l 8 2 0 内部暂存寄 存器的分布如表4 1 所示,其中第7 字节存放的是表41 d s l8 2 0 暂存寄存器分布 当温度寄存器停止增值时计数器1 的计数剩余值, 第8 字节存放的是每度所对应的计数值,这样,我 们就可以通过下面的方法获得高分辨率的温度测 量结果。首先用d s l 8 2 0 提供的读暂存寄存器指令 ( b e h ) 读出以0 5 0 c 位分辨率的温度测量结果, 然后切去测量结果中的最低有效位( l s b ) ,得到 所测实际温度的整数部分t i ,然后再用b e h 指令 读取计数器1 的计数剩余值m i 和每度计数值m 2 , 考虑到d s l 8 2 0 测量温度的整数部分以0 2 5 0 c 、 0 7 5 0 c 为进位界限的关系,实际温度t 2 可用下式 计算得到: 寄存器内容字。1 ,地址 温度最低数字位 温度最高数字位 高温限值 低温限值 保留 保留 计数剩余值 每度计数值 c r c 校验 l = ( t 1 0 2 5 0 c ) + ( m ! 一m ) m 2 表4 2 为采用直接读取测量结果方法和采用计算方法得到的测温数据比较,通过 比较可以看出,计算方法在d s l 8 2 0 测温中不仅是可行的,也可以大大提高d s l 8 2 0 的测温分辨率。 表4 2 d s l8 2 0 直读测濡结果与计算测温结果数据比较 i 次数直读温度值 剩余计数值每度计数值实际温度值 12 1 0 0 07 28 02 0 8 5 0 23 4 0 0 04 28 23 4 2 3 8 34 90 0 0 3 08 3 4 9 3 8 8 45 20 0 06 6 8 4 5 19 6 4 5 6 4 0 0 04 98 56 4 1 7 4 【6 7 9 0 0 05 68 77 9 1 0 6 78 2 5 0 0 1 68 8 8 2 5 6 8 塑壅堕皇堕垄叁堂堡主堂! 望丝茎一 第五章v h d l 简介 v h d l ( v e r yh i g hs p e e di n t e g r a t e dc i r c u i th a r d w a r ed e s c r i p t i o nl a n g u a g e ) 的全称 是超高速集成电路硬件描述语言。它是美国国防部在7 0 年代术、8 0 年代仞提出的超 高速集成电路( v h s i c ) 计划的产物。v h d l 作为一种面向设计的多层次、多领域的 硬件描述语言,在美国国防部的支持下,获得广泛的认同,成为一种硬件设计语言标 准。1 9 8 7 年由1 e e e l 0 7 6 标准所确认。1 9 8 8 年,m i l s t d 4 5 4 规定所有为国防部设计的 a s i c 产品必须采用v h d l 来描述。1 9 9 3 年,i e e e t 0 7 6 标准被升级、更新,新的v h d l 标准为i e e e l l 6 4 。1 9 9 6 年,i e e e l 0 7 6 3 成为v h d l 综合标准。 v h d l 是一种与实现技术独立的语言,它既不束缚于某一特定的模拟程序或数字 装置上,也不把设计方法强加于设计者;它能形式化地抽象表示电路的结构与行为, 支持逻辑设计中层次与领域的描述,借用了高级语言的精巧结构来简化电路描述,具 有电路模拟与验证机制,保证设计的f 确性,支持电路描述由高层向低层的综合变换, 便于文档管理,易于理解和设计重用,可移植性好,它是现代e d a 行业在标准化上 取得的一个重要进展。 目前v h d l 在e d a 中的应用主要是在两方面:一方面是系统仿真模拟,另一方 面是系统设计描述。 v h d l 在本质上是一种基于模拟的硬件描述语言,它的模拟机制允许在各个层次 上以不同的方式( 结构、行为) 建立硬件元件与系统的模拟模型。v h d l 的通用模型 由三个相关的模型组成:行为模型、时间模型和结构模型。行为模型是在行为域上对 系统建模,描述的内容是系统的输出与输入之间的关系:结构模型式在结构域上对系 统建模,描述的内容是系统的各子模块之间的互连关系;时间模型根据系统的时序关 系建模,利用时间模型可以精确地描述系统中的定时和延时。在实际中常常混合3 种模型建模。 v h d l 的建模机制简单明了,如在行为模型中,可将行为分为若干操作,用进程 描述操作,用信号作为各进程问的数据通路。一个行为由若干进程组成。若数字系统 模型由若干行为组成,可将它分解成若干功能相关的几个子系统,分别建模,再将各 个子系统模型合并成整个系统的模型。 利用方便的建模机制,就可以在设计的各个层次上建立系统的模型,通过比较不 同层次上的模拟结果就可以起到验证的作用,特别是对自动化设计而- a ,通常高层次 的模型( 设计描述) 是手工建立的,而低层次的模型是自动生成的( 由e d a 工具综 合后得到) ,这样通过对低层次模型的模拟可以检验设计描述是否正确地实现系统功 能。 为了便于模拟验证,v h d l 特别提供了“测试台”( t e s tb e b c h ) 机制,如图5l 曼堕墨垄丝型墨竺塑壅婴兰壑兰堡鉴塑坚旦! 堕塞一 幽5iv h d l 的“测试台” 由测试台提供测试向量,并通过“元件例化”将测试向量加到被测模型的输入端, 将元件的输出连接到相应信号上,通过校验响应信号,判断模型是否正确地实现了功 能。 v h d l 硬件描述语言作为可编程逻辑器件设计的一种方式,有许多其它设计方式 不能比拟的优点: 功能和灵活性。v h d l 具有强大的语言结构,可用简洁明确的代码来进行复 杂控制逻辑的设计。为了有效控制设计的实现,它还具有多层次的设计描述 能力,支持设计库和可重复使用的元件生成,支持阶层设计,且提供模块设 计的创建。 非依赖器件的设计。v h d l 允许设计者生成一个设计而并不需要首先选择一 个用来实现设计的器件。对于同一个设计描述,可以采用多种不同器件结构 来实现其功能,使得设计者可以集中精力进行设计的构思。 可移植性。由于v h d l 是一个标准语言,故v h d l 的设计描述可以被不同的 工具所支持,从一个模拟工具到另一个模拟工具,从一个综合工具到另一个 综合工具,从一个工作平台移植到另一个工作平台。 性能评估能力。设计者可对需要综合的设计描述进行模拟,在综合之前对一 个数千门的设计描述进行模拟可以节约设计者可观的时间。非依赖器件的设 计和可移植能力允许设计者可以采用不同的器件结构和不同的综合工具来评 估设计。为了衡量综合的质量,可对不同的综合工具综合的结果进行分析、 评价。 上市时间快、成本低。v h d l 和可编程逻辑的组合作为一种强有力的设计方 式,将为设计者的产品上市带来创纪录的速度。 采用v h d l 进行设计描述,可能带来的问题有:( 1 ) 电路采用高级的简明结构 v h d l 描述,意味着放弃了对电路门级实现定义的控制;( 2 ) 出箜盒王墨竺盛盟望揖 实堡塾墨丕好;( 3 ) 工具的不同导致综合质量的不同。 由于课题的任务是对控制系统数字部分进行v h d l 的描述实现,上述三个问题不 会带来很大影响。 塑塞堕至堕盔堂堕主翌焦堡墨 一 一一 第六章外围器件的设计 控制系统数字部分主要由1 片m c u 8 0 3 1 ,2 片并行接口芯片8 2 5 5 ,若干三态总 线接收器7 4 h c 2 4 4 ,若干驱动器7 4 0 7 。本部分介绍主要外围器件的设计,包括三态 总线接收器7 4 h c 2 4 4 和并行接口芯片8 2 5 5 。m c u 的设计将在下一节作详细的介绍。 6 17 4 h c 2 4 4 的设计 6 1 17 4 h c 2 4 4 的设计 7 4 h c 2 4 4 是8 位三态输出的总线驱动器缓冲器接收器,其功能逻辑图如图6 1 所示。其中g l 、9 2 为控制使能端,分别控制四个三态驱动器,低电平有效。x o 7 为数据输入端,y o 7 】位数据输出端。下面给出其程序及设计后仿真图。 g y 幽6 17 4 h c 2 4 4 功能逻辑 7 4 h c 2 4 4 的设计程序: l i b r a r yi e e e ; u s e1 e e e s t d _ l o g i c 一1 16 4 a l e n t i t yh c 2 4 4t 5 p o r t ( g l = i ns t d l o g i c ; 吐:i ns t dl o g i c ; i ns t d l o g i c v e c t o r ( 7d o w n t oo ) ; y :o u ts t d l o g i c v e c t o r ( 7d o w n t o0 ) ) ; e n dh c 2 4 4 ;一定义器仆管脚 a r c h i t e c t u r eh c 2 4 4 _ a r c ho fh c 2 4 4i s s i g n a lx 1 x 2 :s t d l o g i c v e c t o r ( 3d o w n l o0 ) s i g n a ly 1 y 2 :s t dl o g i c v e c t o r ( 3d o w n t oo ) b e g i n 温度乐力控型至丝塑壅翌兰墼主坚垫塑坚里生堕壅 x1 :( x ( 3 ) ,x ( 2 ) ,x ( 1 ) ,x ( 0 ) ) ; x 2 = ( x ( 7 ) ,x ( 6 ) ,x ( 5 ) ,x ( 4 ) ) : y 1 = x 1w h e n9 1 = 0 e l s e ”z z z z ”; v 2 ( = x 2 w h e n9 2 = 0e l s e ”z z z z ”: y 2 y 2 & y l ; e n dh c 2 4 4a r c h ; 定义器件功能; 6 1 2 仿真结果 设计后仿真图6 2 。 图6 27 4 h c 2 4 4 仿真结果 仿真过程中先令g l 、9 2 为高电平,输入数据为1 2 h ,输出端口仿真为高阻状态。 接着令两者均为低电平,输出端口显示1 2 h ,然后分别令g l 、9 2 有效( 为低电平) , 当g l 有效时,输出1 z h ;9 2 有效时,输出z 2 h 。从仿真结呆可以看出,v h d l 语言 描述模块7 4 h c 2 4 4 的仿真结果是正确的。 6 28 2 5 5 的设计 6 2 1 外部引脚 8 2 5 5 外部共有4 0 引脚,除去电源和地,共3 8 个,各引脚作用分别如下: d o d 7 双向数据总线,用来传输数据和控制字。 r d - 读信号线,与其它信号线一起实现对8 2 5 5 接口的读操作。 w r 写信号线,与其它信号线一起实现对8 2 5 5 的写操作。 c s 片选信号线,当它为低电平( 有效) 时,j 能选中该8 2 5 5 芯片,也j 能 对8 2 5 5 进行操作。 a o a 1 端口地址选择信号线。8 2 5 5 有4 个端口:其中3 个为输入输出口,1 个为控制寄存器端口,具体规定如下: 童塞堕至堕垄叁堂堕主! 兰皇堡茎 一 。 a l a o选择端口 a l a o选择端口 a l a o选择端口 a l a o选择端口 0 0 a 口 o l b 口1 0 c 口 1 1 控制寄存器j r s t 一一复位信号输入,高电平有效。 p a 0 p a 7 、p b o p b 7 、p c o p c 7 3 个输入输出端口的引脚,输入输出方向由软 件来设定。 6 2 2 主要功能 8 2 5 5 时可编程外围并行接口芯片,它具有3 个8 位的并行i 0 口,分别称为p a 、 p b 和p c 口,其中p c 口又分为高4 位口和低4 位口。他们都可通过软件编程来改变 其i 0 口的工作方式。8 2 5 5 有两种控制字,即:方式控制字和p c 口位操作控制字。 控制字的格式如图6 3 所示。 l :方式选择 闰6 38 2 5 5 的方式控制字 控制p c 口低4 位 l :输入 0 :输出 控制p b1 :38 位 1 :输入 0 :输出 p b 口方式选择: 1 :方式1 0 :方式0 控制p c 口高4 位 1 :输入 0 :输出 控制p a 口8 位 l :输入 0 :输出 p a 方式选择 0 0 :方式0 0 l :方式l l x :方式2 当控制字的最高位b 7 为0 时,控制字作p c 口的位操作用,各位的含义如下: b o :置复位,为0 时复位,为1 时置位。 b 1 b 3 :p c 口的位选择,如为0 0 0 表示p c o 。 温度压力控制系统的实现与数字模块的v h d l 仿真 b 4 一b 6 :无关位。 b 7 :功能控制位,1 表示是方式控制字,0 表示是为操作控制字。 通过写方式控制字可以选择不同的工作方式,8 2 5 5 提供了3 种基本的工作方式: ( 1 ) 方式o 基本输入输出 ( 2 ) 方式1 选通输入,输出 ( 3 ) 方式2 口p c 为双向总线 由于课题控制系统数字部分仅用到了“基本输入输出”方式,芯片设计也仅考虑 了输入输出方式。方式0 不需要任何选通或联络信号,p a 口、p b 口及p c 口的两个4 位口中任何一个端口都可以被设定为输入或输出,p a 口输入输出均有锁存器,p b 口、 p c 口只有输出有锁存器,输入无锁存器,但有输入缓冲器,此外数据总线有双向的 三忐的8 位缓冲驱动器。 位控制字操作用来对p c 口的每位进行置0 或置1 的设置。 6 , 2 3 结构框图 4 】 南塞堕至堕盔叁堂堡主堂堡丝塞 一 整个设计主要包括如下功能单元: c t r r e 9 0 :控制寄存器,控制p a 、p b 的工作方式。 主要信号线有,r s t :复位线;w r :写信号线:s e l :控制器片选线;d :数据 输入:c t r r e 9 0 :控制输出线; c t r r e 9 1 :控制寄存器,与c t r r e g o 使用同一地址。c t r r e g l 完成对p c 端口的控制。 o u tp a :p a 口输出锁存器,8 位。 主要信号线为,p a :外部引脚,双向口。 o u td b :p b 口输出锁存器,8 位。 0 1 1 1p c :p c 口输出锁存器,8 位,内部有分成两个输出锁存器,分别为4 位。 i np a :p a 口输入锁存器,8 位。 r du n i t :一个读操作的功能单元,即当r d ,c s ,有效时根据控制寄存器的设置把相应 端口的数据送到数据总线上。 6 2 4 仿真结果 图6 5 为仿真后的波形。 幽6 58 2 5 5 仿真波形幽 接下来参见上图叙述一下仿真过程。丌始r s t 施加高电平( “1 ”) ,使8 2 5 5 芯片复位, 所有端口都处于输入方式,显示为高阻状态。接着令c s 、w r 有效,产生上升沿,a 0 、 a 1 均为1 ,向方式控制寄存器写控制字9 0 h ,使得p ai n 变为输入口、p b 口和p c 口变 为输出口,p a 口仍为高阻态,p b 、p c 口显示低电平。然后向控制寄存器写o f h 数掘, 从仿真波形可以看到,写完后p c h 输出变为8 h 。0 f h 是位控制字它将使p c 口的最 高位置“1 ”。将数据总线d o d 7 的值改为f f h ,再将浚数据写向p cn ,在写操作完 温度压力控制系统的实现与数字模块的v h d l 仿真 成后p c 口变成f f h 。下面再向控制寄存器写位控制字0 2 h 。该字表明要将p c1 5 位清 零。在写操作完成后,p c h 变成d h ,表明p c l 位已清零。再改变p a 口的输入数据值, 使其成为6 6 h ,读p a 口就从p a 口得到6 6 h 值并从d 0 - d 7 输出。 由上述分析可知,该8 2 5 5 芯片v h d l 语言描述模块的仿真结果是j 下确的,完全 符合8 2 5 5 “0 ”型方式的输入与输出功能。 塑塞堕至堕查叁兰堡堂翌堡苎 一 7 18 0 3 1 的简介 第七章m c u 的设计 8 0 3 1 是外部有4 0 个引脚的高档8 位单片机,在每一片单片机内部包括: ( 1 ) 一个8 位的微处理器c p u ; ( 2 ) 片内数据存储器r a m ( 2 5 6 b ) ,用以存放可以读写的数据,如运算的中间结 果、最终结果以及欲显示的数据等; c 3 ) 四个8 位的并行i o 接口,每个口既可用作输入,也可用作输出,此外有些口 还具有第二功能; ( 4 ) 2 个定时计数器,每个定时,计数器都可以设置成计数方式,用以对外部事件 进行计数,也可设置成定时方式,并可以根据计数或定时的结果实现计算机控 制; ( 5 ) 5 个中断源的中断控制系统,具有两级嵌套的功能; ( 6 ) 一个全双工u a r t ( 通用异步接收发送器) 的串行i o 口: 在8 0 3 1 的指令系统中,从机器执行指令的速度看,指令有是单个机器周期的, 也有双机器周期的,少数指令执行需要四个机器周期。每个机器周期包括1 2 个振荡 周期,分为6 个状态:s 1 s 6 。每个状态又分成两拍p 1 和p 2 。若采用6 m h z 晶体振 荡器,则每个机器周期恰为2ps 。 8 0 3 l 指令系统由“l 条指令组成,这些指令按功能可分为五大类,即( i ) 数据 传送指令( 2 ) 算术运算指令( 3 ) 逻辑运算及移位指令( 4 ) 控制转移指令( 5 ) 位( 布 尔) 操作指令。指令中操作数的寻址方式有7 种,( 1 ) 立即数寻址( 2 ) 直接寻址( 3 ) 寄存器寻址( 4 ) 寄存器间接寻址( 5 ) 变址寻址( 6 ) 相对寻址( 7 ) 位寻址。 7 2 系统结构图 图7 1 是m c u 结构框图。m c u 的内部按功能主要包括三大部分:指令执行部件、 7 个主要的功能部件以及若干功能寄存器。执行指令部件完成取指令、分析指令与执 行指令操作,包括程序计数器、程序地址寄存器、指令泽码器、微程序控制器、州序 部件等。6 个主要功能部件如普通r a m 单元,用以存放可以读写的数据:定时计数 器:串行口单元,具有四种工作方式,是全双工的。四个输出输入端口p 0 、p l 、d 2 、 p 3 ,具有多种功能:中断功能单元,有多个中断源,可实现二绒嵌套;运算器a l u , 能够进行多种逻辑和算术运算;以及布尔处理单元即位处理器,其功能与运算器相似, 外部与位,t 2 , 线相连( 图中未画出) 。总线控制器进行输入总线数掘、输出总线数据、 温度压力控型墨竺塑壅婴皇垫兰塑墨堕坚里兰堕壅 一一。 壹堕:堕至堕盔叁兰堡兰堡笙兰一一 一一一 幽7 i m c u 系统总框图 地址线数据之间相互交换,是由一些基本的转换门构成的。 7 , 3 各功能模块的实现 7 3 1 普通r a m 7 , 3 1 1 简介 8 0 3 1 片内数据存储器共有2 5 6 个字节,低1 2 8 字节是真j 下的r a m 区,也即本部 分设计的内容,高1 2 8 字节是特殊功能寄存器( s f r ) 区,将在后面与功能模块起 介绍。 低1 2 8 个字节r a m 又可分成三部分,即 ( 1 ) 0 0 h 1 f h 单元,既可做一般r a m 使用,也可作为寄存器使用。作寄存器使 用时,分成四组,每组八个工作寄存器,共占3 2 个单元。当前工作寄存器组 的选择由程序状态字p s w 中的r s 0 ,r s i 来决定,寄存器的位置由指令决定。 ( 2 ) 2 0 h 2 f h 单元,除了作一般r a m 使用,可按字方式寻址外,还可进行位寻 址操作,位地址为0 0 h 7 f h 。 ( 3 ) 3 0 h 7 f h 是用户r a m 区,作一般r a m 使用。 7 , 3 1 2 结构框图 7 c s 0 2 i r e 9 0 r e 9 1 r e 9 2 。 r e 21 2 n l f r c g e n r s 0 r s l w r 一 一i n 0 0 1 :s 3 2 4 4 7 1 ;e l e 0 7 】 b wu n i t w r b w i n l o 7 l ,l tl n 4 7 】 温度压力笙型墨竺盟壅堡竺墼兰堡垫盟坚里生堕壅一 图7 2普通r a m 内部结构 各功能模块分别如下, r e g :地址范围为l f h ,即前述寄存器单元,作一般用户 区使用。_unit 0 0 hr a m 主要信号线有,r e

温馨提示

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

评论

0/150

提交评论