嗯 ~ 真的真的有一段时间没有写笔记了,用笔者粗糙并且矮小的手指数起来,也有两个月左右的时间呱?在这段时间,笔者的小小世界出现天翻地覆的改变,笔者得用很长的时间去适应和接受 ... 好了, 开场白就到这里为止先。我们还是进入这本笔记的中心 ......
最近在黑金社区里,笔者无意间都会看到许多新手(笔者也是)关系“Verilog HDL 和 Modelsim之间关系”的反馈还有想法 ... 笔者真的很无奈,笔者在Verilog HDL那些事儿 - 建模篇还是时序篇都强调过,如果使用网上一套传统的学法。读者很容易迷失,又或者非常吃力,又或者或者许多头都不到岸?在这里,笔者没有断定网上一套传统的是错误,但是笔者对于它有所保留。
在这里笔者先问读者一个问题:“Modelsim是 Verilog HDL什么关系?”当读者仔细,而且安静的思考,答案很直接,就是用来仿真 Verilog HDL所建立的模块的功能。如果用专业的话来讲:“RTL级的功能仿真”。关于笔者自己的想法,笔者已经在时序篇里的开场白说得非常清晰,总结一段话有如以下: “...... Verilog HDL模块的功能仿真应该是理想的,没有任何物理上的问题,如延迟等 ... 如果从一个假想的空间中,Verilog HDL模块的功能仿真和模块在现实中执行没有什么不同。只是在这个虚拟的空间中,我们可以配置任何仿真的条件,甚至可以窥视模块和模块之间的沟通记录和模块产生的反应 ...... ”
更多具体的内容请读者们好好回顾时序篇。笔者曾经也说过,既然读者要学习 Verilog HDL语言,应该把“建模”看成是进入Verilog HDL世界的一个大门。笔者在博客上看到很多网友的留言,很多网友都无法很好入手一个 Verilog HDL的建模,更确切说是无法完成一个设计的开始 ... 这些网友们,都把 Verilog HDL 的语法和关键字都啃到骨头都不剩,但是面对 Verilog HDL语言的大门,他们时时还未把它打开。
笔者没有任何取笑他们的意思,事实上笔者曾经也是他们的一伙。反之笔者很感谢他们把Verilog HDL学习者们的心声表达出来,让笔者可以看到学习Verilog HDL语言,更多层面上的问题。把话说回来,学习Verilog HDL 语言学习 Modelsim的仿真的之间又有什么关系?这个问题就是时序篇里的一个核心问题,但是要把这个问题完全表达出来,最好的办法还是读者们自己去读时序篇这一本笔记。在这里笔者稍微归纳笔记里所包含的意思:
“ ...... 经过功能仿真后的模块,最终目的还是要回到应用。网络上的方法就是仿真时用另一套 Verilog HDL的验证语言,反之笔者是强调仿真时,用回建模时那个思想。一来可以减去学习负担,二来可以更进一步提升Verilog HDL的理解能力,三来可以更加接近模块仿真的目的 ...... ”
对于以上的想法,笔者已经准备好完善的装备,因为这样的想法完全是违背传统对于Modelsim仿真的想法。笔者不怕被别人称为另类,笔者也不怕被当成笑话。事实上笔者已经将这些想法,完完全全记录在时序篇这一本笔记里 ... 至于读者们能不能领会就归于读者了 ... 笔者能做的事情就这些。
好了,我们又回到这本笔记的主题。如果读者问道:“假如我赞同笔者的想法的话,那么我应该学习 Modelsim 的什么 ?”这是一个好问题,笔者就稍微例出:
1.学习编译仿真对象 2.学习操作wave界面
就是这些东西而已 ... 如果读者又问:
“那么添加仿真资料库(资料库), 驱动仿真对像 , 观察Dataflow,配置事件,添加延迟 ....... 等等”噢我的天呀,我的耶稣,我的阿拉,我的佛祖,为什么你们要学习这些被笔者视为多余的东西 ..... 我们的学习精力非常有限。添加资料库!为什么 ModelsimAltera 会出现?驱动仿真对象!为什么要建立激励文本?观察Dataflow,配置事件,添加延迟 .... ! 这些关笔者屁事 ... (对不起笔者鸡动了)。
笔者都说了“精力有限”不明白吗?为什么要理会这些本末倒置的学习目标,笔者所认为的目标只有一个就是“仿真模块和观看它的时序” there is enough ! 所以学习Modelsim单单只要学习以上的两个“学习编译仿真对象,学习操作wave界面”,余下的就是挑战读者掌握Verilog HDL能力的工作了。有如笔者在时序篇中所提到的“如何从波形图中了解到模块沟通的信息”... 观察Dataflow,配置事件,添加延迟 ....... 用来干嘛?
归根究底,能不能掌握好模块的仿真,完全基于读者对 Verilog HDL语言的理解程度和能力。笔者再强调一下,我们只是普通人,只要把当下的事情完成就好,以后的事情以后再说,不然会活得很痛苦,学习也不快乐 ... 相信笔者的这一句话,这是笔者从灵修中体悟的道理。至于“如何看懂波形图和仿真对象之间的关系”,时序篇已经交代很清楚了。
这一章节笔者只是简单的帮读者扫雷而已,这样做可以帮助读者的思路和学习目标清晰一些。接下来的章节,都是简单到不行的教程 ... 笔者会循例的“谈一谈如何编译仿真对象”和“如何操作wave界面”。事实上,这些资料,官方也有,第三方也有,网络上更是一大堆 .... 笔者不过是在干画龙点晴的事情,笔者会稍稍的加入自己的想法(心得这东西都一样,没有什么好谈)。
在最后笔者声明一下:以上的内容纯属笔者一厢情愿的想法而已,跟其他人无关,有什么事情就冲着笔者来就是了,社区只是提供给笔者一个平台而已,也和社区无关。(最近社区发生的灌水,垃圾广告事件,搞得笔者神经衰弱许多 ... )。至于读者能不能接受笔者的想法就见仁见智,喜欢就顶一下,不喜欢就一笑而过。这样,彼此生活都会更轻松一些 ...
用户1071101 2011-5-7 17:48
用户1609127 2011-5-4 15:02
用户1373959 2011-5-1 13:13