tx_addheader(加前导)

1,四状态

reg framing_flag;

状态主开关,它是全局的状态标识。后面几乎所有的逻辑,都要看这个灯的脸色行事------"只有灯亮着,流水线才允许运转" 。

reg 15:0data_cnt;

计数器,0~2047:发前导码;2048~19455 :发数据 。

reg framing_flag_reg;

它的输入端死死连着 framing_flag,并且受时钟 clk 驱动。在时钟的每一个上升沿时刻,它都会读取 framing_flag 的状态(此时读取的是framing_flag 上一拍 的电平)。这个变量不直接参与业务控制,它是专门为了配合生成下面那个 _rise 脉冲而设立的"工具人"。没有它,就做不出边沿检测电路。

wire framing_flag_rise;

它是整个系统的"起跑发令枪"。

  • framing_flag 拉高会持续两万多个周期(持续时间太长了),但系统里的某些部件(比如各种缓存指针、RAM 的读地址)只需要在发车的一瞬间听到一声"砰!",然后把自己归零,准备开始新一轮的工作。

  • 根据它的逻辑表达式:framing_flag && !framing_flag_reg (现在的状态是 1,且上一拍的状态是 0)。

  • 这个条件仅仅在发车的第一拍会成立。只要过了这一拍,两者都会变成 1,这个脉冲就会瞬间消失。

  • 架构师视角 :极其优美的同步电路设计!有了这根线,你就可以在代码的任何地方写上 if (framing_flag_rise)。这相当于告诉底层的部件:"只要枪声一响,不管你之前在干嘛,立刻给我复位清零,准备迎接新的一帧!"

相关推荐
Szime4 小时前
AD9694 国产替代方案:四通道高速 ADC 在通信与雷达项目中的选型参考
单片机·嵌入式硬件·fpga开发
kaizq7 小时前
在线MakerChip虚拟FPGA设计动态仿真实践
fpga开发·mulerun·makerchip·virtualfpgalab·在线动态仿真·imacopilot
FPGA小徐8 小时前
OV5640 摄像头 DDR3 缓存 HDMI/VGA 显示系统详解与
fpga开发
Monkey of Semi9 小时前
ARTIX-7 FPGA 核心板学习之FPGA Xilinx 7 series 命名规则
fpga开发
ALINX技术博客9 小时前
【黑金云课堂】FPGA技术教程Vitis开发:TCP以太网通信
网络协议·tcp/ip·fpga开发
FPGA小徐11 小时前
FPGA 电赛信号叠加与分离项目 完整工程包
fpga开发
FPGA小徐11 小时前
FPGA在做信号处理相比cpu的优势对比
fpga开发
Szime11 小时前
AD9218国产替代方向:双通道10位105MSPS ADC深智微科技选型经验
fpga开发
江鸟的坚持11 小时前
xilinx xadc 例化
fpga开发·xadc·xilinx xadc
明德扬12 小时前
AD采集卡适配方案交流:模块、板卡与FPGA示例工程支持
fpga开发