Algorithm 电路评估算法的实现

Algorithm 电路评估算法的实现,algorithm,Algorithm,考虑电路计算的问题,其中输入是一个布尔电路C和一个输入字符串x,您需要计算C(x)。(如果您愿意,假设扇入2。) 从算法上来说,这是一个“微不足道”的问题,然而,当C非常庞大(想想几百万个门)并且内存管理成为一个问题时,实现这一问题就显得非常重要 有几种方法可以解决这个问题,权衡内存、时间和光盘访问。但是在我完成所有这些工作之前,有人知道这个问题的算法的任何现有实现吗?如果不存在,我会感到惊讶。对于C/C++,10多年来的标准数字电路设计与仿真系统现在是 这是一个允许C++设计数字逻辑的库。有支

考虑电路计算的问题,其中输入是一个布尔电路C和一个输入字符串x,您需要计算C(x)。(如果您愿意,假设扇入2。)

从算法上来说,这是一个“微不足道”的问题,然而,当C非常庞大(想想几百万个门)并且内存管理成为一个问题时,实现这一问题就显得非常重要


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

对于C/C++,10多年来的标准数字电路设计与仿真系统现在是

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


我只是玩了一点,然后才决定我更喜欢Verilog。但它是一款成熟的软件,有很多行业支持。谷歌搜索会产生很多信息,包括一些教程页面。

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

OSCI的参考实现是。查看他们的许可证:SystemC实际上是IEEE标准。因此,除了OSCI的参考实现之外,还有其他商业实现——就像有许多C标准库的实现一样。我想我正在寻找一些不同的东西。我不需要一个设计电路的程序,我需要一个评估电路的程序。(据推测,作为其中的一部分,必须有一些标准化的格式来指定要评估的电路。但我主要的兴趣是评估算法。)这两件事是一回事。SystemC所做的只是编译给定的内容。然后可以运行编译后的程序。运行该程序可以有效地模拟电路。SystemC实际上不设计任何东西,就像C编译器不实际编写程序一样——程序员编写程序。谢谢你的帮助。但我很抱歉,因为我肯定遗漏了一些东西:在SystemC网站上,我看不到任何可供下载的代码(源代码或可执行代码)。