MyHDL项目的目标是赋予Python语言优雅和简单的硬件设计人员。
MyHDL是使用Python作为硬件描述和验证语言的免费开源软件包。Python是一种非常高级的语言,而硬件设计者可以利用它的全部力量来建模和仿真他们的设计。此外,MyHDL可以将设计转换成Verilog或VHDL。这为传统的设计流程提供了一条路径。
建模
Python的力量和清晰度使MyHDL成为高级建模的理想解决方案。Python以复杂建模问题的优雅解决方案而闻名。此外,Python对于快速的应用开发和实验是突出的。
MyHDL背后的关键思想是使用Python生成器来建模硬件并发性。发电机最好被描述为可恢复的函数。MyHDL生成器与VHDL Verilog和进程中的块总是相似的。
硬件模块被建模为返回生成器的函数。这种方法使得支持任意层次结构、命名端口关联、实例数组和条件实例化等特性变得简单。此外,MyHDL提供了实现传统硬件描述概念的类。它提供了用于支持生成器之间通信的信号类、用于支持面向位操作的类和用于枚举类型的类。
仿真和验证
内置模拟器在Python解释器的顶部运行。它通过跟踪VCD文件中的信号变化来支持波形查看。
使用MyHDL,Python单元测试框架可以用于硬件设计。虽然单元测试是一种流行的现代软件验证技术,但在硬件设计领域仍然不常见。
MyHDL还可以作为硬件验证语言用于Verilog设计,通过与传统HDL仿真器的协同仿真。
Verilog与VHDL的转换
在一定的局限性下,MyHDL设计可以转换为Verilog或VHDL语言。这为传统的设计流程提供了一条路径,包括合成和实现。然而,可转换子集比标准合成子集宽得多,并且包括可用于高级建模和测试台的特性。
转换器工作在一个已经充分阐述的实例化设计。因此,原来的设计结构可以是任意复杂的。此外,转换限制仅适用于发电机内部的代码。外部发电机,Python的全功率可以在不损害可兑换性的情况下使用。
最后,转换器自动地在Verilog或VHDL中直接完成许多任务。一个显著的特点是自动处理签名的算术问题。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !