网站大量收购独家精品文档,联系QQ:2885784924

第四章 低级建模仿时序操作.pdf

  1. 1、本文档共62页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 低级建模仿时序操作

第四章 低级建模 仿顺序操作 第四章 低级建模 仿顺序操作 第第四四章章 低低级级建建模模 仿仿顺顺序序操操作作 4.1 基本思路 4.1 基本思路 44..11 基基本本思思路路 C语言的编程,在理解上我们可以看成“顺序操作”。就如吃饭一系列步骤一样,张口, 将饭入口,咬碎,吞下。VerilogHDL语言,要执行如同“顺序操作”,实际上是不可能 的,但是我们可以模范“顺序操作”的执行模式,这亦是称为“仿顺序操作”。基本上 要实现“仿顺序操作”,如果没有结构性的建模,结果是很糟糕。但是“低级建模”是 有准则,有结构,有组织的建模方法,在实现“仿顺序操作”上,显然“低级建模”是 存在优势的。 我们以 SOS信号实验 来说明“仿顺序操作”的基本思路。如果以C语言来实现 SOS 信号实验,手段会是如下: //建立S函数 voidS_Function(void){...} //建立 O函数 voidO_Function(void){...} //建立 SOS函数 voidSOS_Function(void) { S_Function(); O_Function(); S_Function(); } //调用 SOS函数 intmain() { SOS_Function(); return 0; } 先建立最基本的两个函数 S_Function() 和 O_Function , 然后再建立一个函数 SOS_Fucntion() 进行顺序调用两个基本函数。最后 main() 可以直接调用 SOS_Function() 。由于C语言是高级语言,在底层执行的“调用函数”和“函数返回” 都是隐藏的。 那么要使用VerilogHDL语言来实现“顺序操作”该如何呢? 实验十一 :SOS 信号之三 实验十一 :SOS 信号之三 实实验验十十一一 ::SSOOSS信信号号之之三三 首先我们先要建立功能拟似 S函数 和 O函数的功能模块。 s_module.v 15~45 1ms 17 1ms 21~31 1ms 第 行是 的计数器。第 行定义了 的常量, 行是 的定时器, 然而 isCount 标志寄存器使能着该定时器(28|30 行)。35~43行是计数器,计数的结果 rTimes 40 有 寄存器控制( 行)。 47~51 i (47 ) rPin_Out 行是各个寄存器的声明。 寄存器控制着执行步骤 行 , 寄存器用于 Pin_Out 48 isDone Done_Sig 51 驱动 输出( 行),然而 是用于驱动 的输出( 行)。 rTimes 0 , 62 79 s_module.v (注意 的复位值是除了 的随意值 这一点请留意)第 行到 行是 62 Start_Sig s_module.v 的核心部分,第 行是“使能”的功能,当 拉高以后 才能工作。 65~69 i 0 ,2,4 rPin_Out 1 行是“延时写法”, 等于 时就设置 寄存器为逻辑 ,然而延迟 100ms 67 i 1,3,5 rPin_Out 的时间是 ( 行)。相反的,当 等于 的时候就设置 寄存器为逻 0 50ms

文档评论(0)

xxj1658888 + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档