DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 307|回复: 0
打印 上一主题 下一主题

基于82C52功能仿真验证的研究

[复制链接]
跳转到指定楼层
楼主
发表于 2011-4-19 20:10:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1 引 言

          首先介绍了利用仿真工具进行电路功能仿真验证的过程与方法,以及仿真方案的确定,并以82C52为例详细阐述了仿真验证中激励文件的编写和对82C52进行功能验证的具体步骤。最后简单介绍了82C52的功能及其中各种寄存器的作用以及对寄存器的编程。

          2 验证方案的确定

          本次设计的验证方案是根据单片机对外部串口电路的控制来实现的,验证方案的基本框图如图1所示。

          

       

       

          图1 82C52测试平台

          3 仿真所要准备的文件

          RTL(Pre sire):testbench(仿真激励),Design(被仿真的设计)DC_ netlist:testbench(仿真激励),Design(被仿真的设计),saf(延时信息,由DC写出),SimulatiONlibrary

          Astro_ netlist(post sim):testbench(仿真激励),Design(被仿真的设计),Sdf(延时信息,由 写出),Simulation library

          仿真的主要工具是VCS,主要命令是:>VC$testbeneh.v design.v—RI—M,同时还要进行代码覆盖率的分析。由于在最开始的时候写的testbench覆盖率一定不全,所以需要后来的不断完善来提高代码覆盖率以达到设计要求。用VCS做代码覆盖率分析的主要命令是:在编译时加入可选项一cmline+tsl+FSM+eond,这是四种覆盖率,可以根据需要只选其中的一个或几个;VCS—cm&mdashP gui察看覆盖率的结果。

          4 testbench的编写

          把82C52与8032以及一些外围接口电路连接在一起组成一个简单的系统,通过汇编程序来控制82C52以达到仿真的目的。所以testbeneh的编写也主要是完成这个简单系统的搭建,读取事先编好的单片机汇编指令就可以了。

          5 82C52功能描述

          (1)复位

          上电后,复位输人为高,82C52在两个Ix时钟周期内进行初始化并进入空闲模式直到程序写人。

          复位输人为高电平时,复位内部波特率发生电路的时钟计数器和位计数器。BRSR不受影响(第7位除外);清零USR(TC和TBRE除外);清零MCR;全部的离散信号、内存单元和各种逻辑寄存器位都被清零和关闭。接着清除复位状态(RST=0),82C52仍然保持空闲模式直到程序写人。

          仿真时,首先验证Reset的正确性:

          Hardware Reset:上电后,82C52的Reset输人端必须保证至少两个时钟周期的高电平来初始化82C52使它进人空闲模式。复位引起的操作有:

          ①复位内部波特率发生器的时钟计数和位计数,将Band Rate Select Register(BRSR)的第七位复位为0。@USR中除了TC和TBRE两位被置位其余位被清零,MCR被清零,其它相关的存储器、寄存器等也都被清零或设为无效,但要注意复位不影响UCR。复位后空闲模式会一直保持直到对82C52编程改变它的这种模式。此种复位不影响BRSR、UCR。

          Software Reset:首先读出USR、RBR中的数据来清除残余的数据和状态,以免造成并发或重复控制,然后通过设置UCR、BRSR、MCR三个寄存器的值,使82C52恢复到空闲状态。

          (2)编程

          编程前需要设置的寄存器有BRSR、MCR和UCR来初始化82C52,但要注意MCR要最后设置。

          UCR:设置帧格式,DO位设置停止位的位数,当DO=0时,停止位是1位,当DO=1时,如果数据是8位的,停止位是1.5位,数据位是5 位,停止位是1位,数据位是6、7位,停止位是2位。D3、D2、D1位设置奇偶校验位。D5、D4为设置数据位数,00=5bits,01=6bits,10:7bits,11=8bits。最高两位为保留位设置为0。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-9-26 00:29 , 耗时 0.094310 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表