FPGA入门(三):3-8 译码器 仿真波形解读
FPGA入门文章目录FPGA入门前言一、3-8 译码器的核心逻辑二、仿真波形解读怎么看懂译码器2.1 波形更直观2.2 逐段验证总结前言前面已经讲过如何仿真并且把代码烧进板子里验证本章就重点讲一下如何看懂波形。一、3-8 译码器的核心逻辑3-8 译码器的本质是3 位二进制输入 → 8 位独热码输出的组合逻辑电路输入A2A1A03 位范围000 ~ 111对应十进制0~7输出Y7~Y08 位高电平有效同一时间只有 1 个输出为 1其余全 0举个例子输入A2A1A0011十进制 3只有Y3会被拉高其余 7 个输出全为低电平。二、仿真波形解读怎么看懂译码器我们运行 Testbench 后会在 Vivado 里得到这样的波形图但一开始看满屏的高低电平会有点乱别慌我们一步步把它 “读明白”2.1 波形更直观直接看A2、A1、A0三个独立信号很难一眼看出输入值我们可以把它们拼成一个虚拟总线按住Ctrl键同时选中A2、A1、A0三个信号右键点击选中的信号选择New Virtual Bus给总线起个名字比如A这样三个信号就被打包成了一个 3 位总线。接下来把总线的显示改成十进制右键点击总线A → Radix → 选择Unsigned Decimal这样波形里就会直接显示0~7的数字一眼就能看出当前输入是几处理后的波形图就清晰多了输入A会从0依次增加到7对应我们 Testbench 里的 8 种测试用例。2.2 逐段验证可以看到我们的译码器完全按照预期工作没有出现多个输出同时为高的错误总结通过虚拟总线、进制修改把抽象的高低电平变成直观的输入输出对应关系快速验证逻辑是否正确