首页 » 智能 » 若何设计一款可编程HAD赞助软件?_电路_单位

若何设计一款可编程HAD赞助软件?_电路_单位

admin 2024-12-01 09:40:01 0

扫一扫用手机浏览

文章目录 [+]

Xilinx 公司和 Altera 公司的设计工具中,供应了一些 HDL 形式的电路库。
不过库单元都是比较大略的小规模数字电路,如逻辑门、74 系列器件等,对中、大规模和繁芜逻辑时序电路的设计帮助不大。
其余也有一些外围功能模块和繁芜逻辑的单元库供应如通用异步收发器、有限冲击相应滤波器等,但不因此 HDL 的形式供应的,只适用于某些特定的 PLD 器件,移植性比较差。
因此,在实际事情中体例了一个管理和组合 HDL 电路单元 IP 库的赞助设计软件 --HAD 软件。
通过 HAD 软件,对设计好的 HDL 电路库进行管理,按照系统设计规范的哀求从库中选取相应的电路单元并将它们组合起来,大大降落了系统设计和调试的难度,提高了系统的稳定性和可靠性,并且有利于系统日后的升级。

2、 HAD 赞助设计软件功能

若何设计一款可编程HAD赞助软件?_电路_单位 若何设计一款可编程HAD赞助软件?_电路_单位 智能

赞助设计(HAD)软件紧张是对 HDL 措辞的电路起一个赞助设计的浸染。
HAD 软件的功能有两个:管理电路单元 IP 库以及天生所需外围电路的 HDL 程序。

若何设计一款可编程HAD赞助软件?_电路_单位 若何设计一款可编程HAD赞助软件?_电路_单位 智能
(图片来自网络侵删)

电路单元库的管理紧张有两个方面:电路单元接口的管理以及电路单元 HDL 程序的管理。
因此,电路单元库是由两个库组成的,一个是电路单元的接口库,其余一个是电路单元 HDL 程序库[7]。
电路单元接口库里的基本单位是各个电路单元的接口信息,电路单元 HDL 程序库里的基本单位是描述各种电路单元的 HDL 源程序。
类似于标准芯片,如 8255 芯片,电路单元的接口信息描述了这个标准芯片的输入输出以及它的功能,相称于 8255 的管脚和利用功能解释;而电路单元 HDL 程序描述了这个标准芯片内部的实际电路以及用何种电路构造实现相应功能的,这相称于 8255 芯片内部的电路组成和构造。
对付管理一个库来说,基本的操作紧张是新增、删除和修正库单元。

HAD 软件的终极目的便是天生外围电路的 HDL 程序。
也便是根据系统设计规范的哀求从 IP 库中选取得当的电路单元,再以适当的形式组合起来,成为一个完全的 HDL 程序。

3、 电路模块 HDL 程序天生

HAD 软件中最紧张的功能便是电路模块 HDL 程序的天生。
天生电路模块的 HDL 程序的过程,紧张便是对电路单元 IP 库中的某些单元进行多少次例化的过程。

进行例化就必须具备两个条件:首先要有模块输入输出端口的列表,其次要知道的是与这些端口相连接的旗子暗记列表。
根据两者的对应关系,完成例化,然后将例化好的电路模块组合起来,成为一个 HDL 程序文件,天生电路模块 HDL 程序的流程如图 2 所示:

通过上面的剖析,首先创建两个数据库。
一个存放各种模块 HDL 程序的源文件,其余一个存放与各个模块相对应的输入输出端口的旗子暗记列表。

存放 HDL 程序的源文件的数据库比较大略,对它的操作仅限于对文件内容的复制,因此这里不作进一步的谈论。

存放端口旗子暗记列表的数据库构造,如表 1 所示。

表 1 中,最上面的一行是数据库的表头,字段名代表了每一个字段下面内容的详细含义。
个中,module 为电路单元模块名;detail 为存放模块端口详细信息的数据库名;PortN 代表了模块中某个端口的名字, N 是自然数。

从表 1 中第二行开始的记录是不同的模块。
例如,第二行记录所描述的模块是带有一个异步清零真个 D 触发器,模块名是 DFF,模块端口的详细信息存放在 DFF_D 的数据库文件中,统共有 4 个端口,分别是 CLK、CLR、D 和 Q。
数据库文件 DFF_D 中存放的是每个端口的方向和宽度。

以 DFF 模块为例,其对应的数据库文件 DFF_D 的内容如表 2 所示:

数据库文件 DFF_D 的字段有两类,前一半的字段都因此“Pn_io”的形式涌现,代表了这个端口的流向,是输入、输出还是双向。
后一半的字段都因此“Pn_bit”的形式涌现,代表了这个端口旗子暗记的宽度。

通过上面两类数据库,就可以完全地节制一个模块的所有接口信息。

在图 1 所示的流程图中,最主要的一步便是 “进行例化、组合”。
根据上述几个数据库的定义和描述,例化和组合的流程如图 3 所示。
图中两个预备处理(六边形框)的事情是“例化组合”前的准备事情。
根据系统设计规范的哀求,确定所需功能模块的种类和数量,然后由设计者来确定所有模块及其输入输出旗子暗记的名字。
这些操作都可以通过键盘输入的办法来完成,从而将例化和组合过程中所需的信息通报给 HAD 软件。

确定好所需的模块之后,就可以逐一地对每个模块进行例化。
首先打开端口旗子暗记列表数据库,从中找到所选定的模块。
接着,打开存放有模块端口详细信息的数据库,读取端口的类型和数量,按照指定的连接旗子暗记名对模块进行例化。
末了将例化后的 HDL 程序组合成一个文件。

4 、管理电路单元库程序的设计思路

管理电路单元库的软件所具备的功能是对电路单元进行增加、删除和修正等操作,流程如图 4 所示。

图 4 中,管理流程紧张由 3 个处理分支组成,分别是增加、删除和修正电路单元分支。

电路单元的增加功能便是将电路模块的 HDL 程序加入到电路单元库中。
库中增加了一个新的电路单元,意味着又多了一个功能可供我们选择。
随着库中电路单元的日益增多,硬件设计中可以用 HAD 软件完成的比重就会越来越大,有利于系统设计。

增加电路单元处理分支的流程如图 5 所示。
增加一个电路单元涉及到两个数据库的操作,一个是端口列表数据库,其余一个是端口详细信息数据库。
首先,对端口列表数据库进行新增的操作,增加一条空记录,将新模块的 I/O 名称填入空记录中的相应字段里。
然后,新建一个端口详细信息数据库文件。
它的字段个数是新模块 I/O 个数的两倍,一半是用来指定 I/O 的方向,另一半是用来指定端口旗子暗记的宽度。
末了,将 I/O 旗子暗记的方向以及宽度填入新建数据库的相应字段中。
处理分支结束之后再返回到管理流程的入口,重新选择管理的内容。

删除电路单元处理分支的流程如图 6 所示。
电路单元的删除功能便是将不再须要的电路单元从库中移掉。
用程序实现时,只要将该电路单元在数据库中的记录删除,同时将对应的详细信息数据库一起删除即可。

修正电路单元处理分支的流程如图 7 所示。
该单元的修正功能便是对库中的电路单元的信息进行改动。

5、 结束语

HAD 软件采取了 VB 设计软件中的数据库管理控件,通过数据库管理控件完成数据库单元的增加、删除和修正等操作。
该软件具有用户界面人性化、操作利用方便等优点。
在多个嵌入式系统的设计中取得了很好的效果。

标签:

相关文章

IT外包路线,企业数字化转型的新动力

随着互联网技术的飞速发展,企业数字化转型已成为必然趋势。在这个过程中,IT外包成为了许多企业降低成本、提高效率的重要途径。本文将从...

智能 2024-12-28 阅读0 评论0

IT大神归国潮涌,技术精英的回归与启示

近年来,随着我国经济的快速发展和国际地位的不断提升,越来越多的海外IT人才选择回国发展。这股“IT大神归国潮”不仅为我国科技产业注...

智能 2024-12-28 阅读0 评论0

IT夫妻,携手共进,共筑数字梦想

在这个信息时代,IT行业成为了众多年轻人竞相涌入的热门领域。而在这个领域里,有这样一对特殊的夫妻,他们同是IT行业的佼佼者,携手共...

智能 2024-12-28 阅读0 评论0

IT天空下的U,创新引领未来,构建智慧生态

在信息技术的飞速发展背景下,我国正朝着构建智慧生态的目标迈进。作为信息技术的重要领域,云计算、大数据、人工智能等新兴技术正在深刻地...

智能 2024-12-28 阅读0 评论0