Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Yosys 针对新设备需要什么?_Yosys - Fatal编程技术网

Yosys 针对新设备需要什么?

Yosys 针对新设备需要什么?,yosys,Yosys,从高层次的角度来看,用Yosys瞄准新设备需要什么?我想瞄准Xilinx XC9572XL。我在这些开发板中有一个:。Xilinx文档中很好地介绍了该CPLD的体系结构 我想我需要做以下几点: 了解如何让Yosys将设计综合为乘积和基于D型触发器的网表之和 从Yosys以BLIF格式输出该网络列表 为XC9572XL创建一个“装配工”(类似于ICE40 FPGA的arachne pnr) 输出带有适当保险丝的JEDEC文件,这些保险丝需要设置以实现上一步中的设计 使用xc3sprog将设计闪存到

从高层次的角度来看,用Yosys瞄准新设备需要什么?我想瞄准Xilinx XC9572XL。我在这些开发板中有一个:。Xilinx文档中很好地介绍了该CPLD的体系结构

我想我需要做以下几点:

  • 了解如何让Yosys将设计综合为乘积和基于D型触发器的网表之和
  • 从Yosys以BLIF格式输出该网络列表
  • 为XC9572XL创建一个“装配工”(类似于ICE40 FPGA的arachne pnr)
  • 输出带有适当保险丝的JEDEC文件,这些保险丝需要设置以实现上一步中的设计
  • 使用xc3sprog将设计闪存到CPLD
  • 这看起来是可能的。最难的是建立一个“装配工”工具。该工具需要了解CPLD的资源,然后需要一些聪明的算法来适应设计,并以JEDEC格式输出所需的保险丝。缺少的一点是物理CPLD中的“保险丝”与JEDEC文件中的保险丝之间的映射。这必须进行逆向工程。我注意到Xilinx网页包ISE中的JEDEC文件包含46656个保险丝。每一个都映射回CPLD中的某个可配置节点

    我想知道其他人对这种方法的看法。我可能会遇到什么类型的问题

    如果我要这样做,我需要考虑哪些法律方面的问题?我是否应该先写信给Xilinx并寻求他们的许可?我是否应该决定对他们的工具生成的JEDEC文件进行反向工程


    XC9572XL是一个过时的部件…

    您是否考虑过瞄准CoolRunner II系列?我对它做了一些相当广泛的重新研究(),并了解了大多数比特流格式。一旦我弄清楚了最后一个时钟网络结构,将Yosys移植到它是我优先考虑的事情

    这些设备都是较新的,功耗较低,加上内部架构更干净,更容易瞄准(良好的常规和/或阵列与一些专用于特定或术语的pterm相比)

    无论哪种情况,请联系我进一步讨论,我很愿意合作

    编辑:Clifford是对的,在美国(17 USC 906)反转硅是明确合法的,而软件更像是灰色地带。伊瑟也是一个如此巨大的怪物,以至于没有一个脑袋右旋的人会想对它进行反向工程;芯片更容易操作

    虽然XC9500XL系列是一个较老的350nm系列(金属层较少,功能更大,在显微镜下更容易看到细节),但它也使用了许多令人讨厌的模拟技巧,将浮栅EEPROM/闪存单元直接放在逻辑和输出上的感测放大器中。CoolRunner II是180nm,根据密度有4或5个金属层,主逻辑阵列是全数字的,更容易进行反向工程

  • 了解如何让Yosys将设计综合为乘积和基于D型触发器的网表之和
  • 从Yosys以BLIF格式输出该网络列表
  • 您可以从逻辑级BLIF文件使用ABC进行两级合成。例如:

    $ yosys -p synth -o test.blif tests/simple/fiedler-cooley.v
    $ yosys-abc
    abc> read_blif test.blif
    abc> collapse
    abc> write_pla test.pla
    
    现在,您可以编写一个程序,将.pla文件(加上可能由您需要编写的yosys插件生成的辅助信息)转换为JEDEC文件

    如果我要承担这个责任,我需要考虑什么样的法律方面?< /P> 亚纳尔。蒂娜

    当你通过分析芯片供应商提供的软件进行逆向工程时:在这种情况下,这取决于你所居住的国家。例如,在欧洲,您可以在某些情况下对软件进行反向工程,甚至反汇编,即使软件EULA禁止这样做。我将对此进行更深入的解释


    我认为在像北美这样的地方,对硅片本身进行逆向工程(而不是分析软件)问题较少。

    我只考虑过xc9572xl,因为我面前有一个。我想知道是否有其他方法可以不用去盖就可以学习内部熔丝贴图?我当然不能一直用已知的输入来编程和测量输出,因为它会磨损,保险丝的数量使得任何暴力手段都不可行。我想我甚至可能会受伤。我可以看看Xilinx是否会向社区发布fuse地图。这是一个过时的零件。即使是旧零件,他们也不可能发布保险丝信息。有人问过他们一次,他们被告知a)只有在保密协议下,b)如果你每个季度没有几百万美元的采购,他们甚至不会和你说话。您可以尝试通过编译各种精心编制的HDL来反转位文件,但这需要很长时间,并且可能在技术上违反EULA。我认为为Xilinx CPLD提供开放工具的最佳选择是让Yosys与libcrowbar(我的库)一起工作,并完成最后几个配置位的控制。是的,似乎没有兴趣发布此部件的保险丝图信息。我试过了:forums.xilinx.com/t5/CPLDs/XC9572xl-fuse-map/td-p/651134Thanks Clifford。这是个好答案。在你的工具链上做得很好。非常令人印象深刻,并且有一些漂亮干净的代码。