信号的状态类型

  • verilog专用常见的信号状态有4种,分别是0、1、z、x,其中,0和1是数字电路本身的状态,它的本源是零电平和VDD电平。例如,将一根导线接地,它的电平就是0,可以用数字0表示,将一根导线接VDD电平,那么它传出的信号就是1。VDD是数字电源的常用标号,整个芯片的电源常称为VCC,芯片的地常标注为VSS。不同工艺和元器件库需要的电压VDD不同,例如0.9V、1.8V、3.3V等,而同一个元器件库中的所有元器件,其需要的供电电压VDD一般相同的,只有I/O器件等少数元器件,其输入端和控制端是比较低的电压,而输出端口确是较高的电压。数字0和1对应的电平不会特别严格,而是有一个浮动范围,通常信号电平低于VDD的30%,就被认为是0,高于VDD的70%,就被认为是1。数字设计师处理的对象是0和1,不会经常去联想其背后代表的电压含义。
  • z态是高阻态。高阻的名字虽然不好理解,但实际并不神秘。如果一颗芯片不通电,则它所有的引脚就都是高阻态。可见,高阻态的实际意义就是不会干扰到其它信号传播的状态。例如某信号A是高阻态,某信号B不是高阻态,那么信号 A叠加到信号B上(可以理解为两根线被拧在一起),结果仍然是B,而A没有任何效果。一般来讲,一个有着双传输功能的引脚,如果设置为输入模式,就可以认为这个引脚处于高阻态,意思是他对电板上与它相连的元器件没有任何影响,这些相连元器件如果要对本芯片输出0或1,就可直接顺着该高阻态引脚输入,而不会被干扰或阻挡。FPGA中会用inout语法来描述z态。在ASIC设计中,需要例化一个引脚模块,在代码中不会出现1'bz数值
  • x态的含义是未知态,有4种情况会产生未知态:
    1. 其一是芯片已上电但复位信号未进行复位的情况;
    2. 其二是双向引脚信号冲突,因为没控制好,导致有一路信号通过引脚输入,另一路信号通过相同的引脚输出;
    3. 其三是芯片中一个元器件的某个输入端为x态,于是输出就跟着变成了x态,这就是所谓x态的传播;
    4. 第四是触发器的时序不满足,产生了亚稳态,从而表示为x态。
  • 上述4种情况在仿真中都能看到,但实际中,第1种情况基本不会出现,除非模拟电路设计有误,其它3种在数字设计有缺陷时会出现,实际在测量其电压时会出现不稳定或非预期的问题。在可综合Verilog中,不会出现1'bx数值,因为没有一个设计会故意将一个错误引入RTL中,所有的错误都是意外发生的。该符号在仿真脚本和仿真波形中可能出现。
相关推荐
XINVRY-FPGA1 小时前
XC7VX690T-2FFG1761I Xilinx AMD FPGA Virtex-7
arm开发·嵌入式硬件·fpga开发·硬件工程·fpga
FPGA_无线通信3 小时前
FPGA 组合逻辑和时序逻辑
fpga开发
小时候逝去的夏夜4 小时前
交叉编译入门:为什么要在 x86 上为 ARM 编译程序?
arm开发·硬件架构
Js_cold5 小时前
Xilinx FPGA温度等级及选型建议
fpga开发·fpga·vivado·xilinx
从此不归路6 小时前
FPGA 结构与 CAD 设计(第5章)上
fpga开发
洋洋Young6 小时前
【Xilinx FPGA】7 Series Clocking 设计
fpga开发·xilinx fpga
156082072197 小时前
FPGA下AD采集时钟相位的调整
fpga开发
从此不归路7 小时前
FPGA 结构与 CAD 设计(第5章)下
fpga开发
Js_cold9 小时前
Xilinx FPGA Flash启动时钟频率
单片机·嵌入式硬件·fpga开发·vivado·xilinx·flash·cclk
博览鸿蒙1 天前
FPGA的学习路径和入行指南
fpga开发