论文部分内容阅读
1987年IEEE发布了VHDL的标准,目前基于VHDL的EDA技术已经成为EDA领域的主流。VHDL模拟器是基于VHDL的EDA环境的最基本的组成部分,它所实现的是VHDL描述的行为语义。由于结构描述可以最终展成行为等价的行为描述,本文集中探讨了VHDL行为描述的语义及其实现,介绍了作者在完成编译实现的VHDL模拟系统这一工作时所基于的想法和采用的方案,主要包括以下几个方面: 1.以有色Petri网(CPN)为工具对VHDL的行为语义做了较为形式的描述。 2.提出了基于LWP的VHDL进程的实现方案,以LWP原语为基础实现了VHDL模拟器所要求的进程调度策略。 3.实现了以wait语句为代表的进程同步机制。 4.利用C++的面向对象的概念及其对参数化数据类型的支持,提出了VHDL运行模型的程序实现框架。 5.实现了一个VHDL子集的编译器,该编译器能够将进程语句、信号赋值语句和wait语句等行为描述中最为关键的语句按照程序实现框架的要求翻译成C++代码。 6.给出了VHDL重载的辨析方法。 模拟器所实现的是数字系统的行为,所以模拟器的设计者首先必须精确地理解VHDL的行为语义,为此本文第三章以有色Petri网(CPN)为工具较形式地描述了VHDL行为语义的主要方面。信号和进程是VHDL行为描述的最为重要的成分,事实上一段VHDL描述的行为最终是由一组信号和进程决定的。VHDL行为语义的实现正是围绕着信号和进程这两个基本概念展开的。本文第四、五章介绍了信号的类型、信号的更新、信号的赋值、进程的调度以及wait语句等问题的解决方法。本文第六章介绍了VHDL编译器的实现,着重说明了VHDL的重载及其辩析。 本文提出的基于LWP的VHDL进程实现方法以及由类和类模板构成的模拟器框架能够满足大部分VHDL行为描述的语义实现的需要,在未来的工作中可以进行适当的扩充,使之能够支持VHDL全集的模拟。