iCE40 IceStorm FPGA Flow:双向IO引脚

Cli*_*nna 2 yosys

使用iCE40 FOSS IceStorm FPGA流程:如何使用yosys / iceStorm为三态I / O引脚(如双向数据总线引脚)编写Verilog?

Cli*_*nna 5

当前,只有有限的支持才能从行为代码中推断非平凡的IO缓冲区。因此,创建双向IO缓冲区的最佳方法是手动实例化SB_IO单元。例如:

SB_IO #(
    .PIN_TYPE(6'b 1010_01),
    .PULLUP(1'b 0)
) raspi_io [8:0] (
    .PACKAGE_PIN(iopin),
    .OUTPUT_ENABLE(dout_en),
    .D_OUT_0(dout),
    .D_IN_0(din)
);
Run Code Online (Sandbox Code Playgroud)

iopin作为顶级模块端口。)

有关SB_IO和其他iCE40原语的更多详细信息,请参见莱迪思iCE40技术库文档