xilinx block原理图模式注意三态门设计
0赞我接触到zynq,就爱上了vivado的block原理图开发,但是这种原理图也是相当的恶心,一个问题很多参数不公开的,很多官方的IP 使用让你爽死,但是你自己定义就傻逼了。除非你有能力修改xml语言,修改参数。
比如说到INOUT端口。我自己封装成axi4lite ip后。使用普通的代码, 做成双向端口,结果死活看不到数据。
官方搜索也没有发现为什么。后来有个论坛告知要用IOBUF 声明,才能例化到顶层。 所以只能写下面代码。才生成INOUT的端口,注意IOBUF是1bit 。
genvar i;
generate
for (i=0; i < 16; i=i+1)
begin
IOBUF #(
.DRIVE(8), // Specify the output drive strength
.IBUF_LOW_PWR("TRUE"), // Low Power - "TRUE", High Performance = "FALSE"
.IOSTANDARD("DEFAULT"), // Specify the I/O standard
.SLEW("FAST") // Specify the output slew rate
) IOBUF_inst
(
.O(mem_data_i[i]), // Buffer output
.IO(mem_data[i]), // Buffer inout port (connect directly to top-level port)
.I(mem_data_o[i]), // Buffer input
.T(mem_data_t[i]) // 3-state enable input, high=input, low=output
);
end
endgenerate