这条线在verilog中意味着什么?

时间:2017-03-05 23:41:30

标签: verilog fpga lcd intel-fpga

来自http://www.johnloomis.org/digitallab/lcdlab/lcdlab3/lcdlab3.qdoc.html

如何更改DATA_BUS以使其不使用inout。

// BIDIRECTIONAL TRI STATE LCD DATA BUS

assign DATA_BUS = (LCD_RW_INT? 8'bZZZZZZZZ: DATA_BUS_VALUE)

1 个答案:

答案 0 :(得分:2)

这是使用三元运算符对DATA_BUS的连续赋值语句。

assign DATA_BUS = (LCD_RW_INT? 8'bZZZZZZZZ: DATA_BUS_VALUE)

三元运算符可以被认为是一个迷你的if-else语句。在英语中它可以这样翻译,假设LCD_RW_INT是1位标志:

if LCD_RW_INT == 1'b1: 
    DATA_BUS = 8'bZZZZZZZZ 
else: 
    DATA_BUS = DATA_BUS_VALUE