用于评估电路的算法的实现

时间:2010-08-27 13:02:40

标签: algorithm

考虑电路评估的问题,其中输入是布尔电路C和输入字符串x,并且您想要计算C(x)。 (如果你愿意的话,假设粉丝2。)

这在算法上是一个“微不足道”的问题,但是当C可能很大(想想数百万门)并且内存管理成为一个问题时,实现它似乎并非易事。

有几种方法可以解决这个问题,折衷内存,时间和光盘访问。但在我自己完成所有这些工作之前,有没有人知道这个问题的任何现有算法实现?如果不存在,我会感到惊讶......

2 个答案:

答案 0 :(得分:1)

对于C / C ++,标准数字电路设计&模拟系统已超过10年了SystemC

这是一个允许您使用C ++设计数字逻辑的库。有一些支持软件可以让你进行时序分析,甚至可以为C代码生成原理图网表。

在决定我对Verilog更加满意之前,我只玩了一点。但它是一个成熟的软件,拥有大量的行业支持。谷歌搜索将产生很多信息,包括几个教程页面。

答案 1 :(得分:0)

听起来Binary Decision Diagrams可以用于你的任务吗?有一些众所周知的算法(和实现)在内存使用方面非常紧凑,因为它们被设计用于巨大的状态空间。