Verilog入门者
从问题看,你担心资源不够影响帧率。优化思路可以分两步:一是简化功能,二是优化实现。简化上,协议栈只做最小集:ARP只响应查询,IP固定源/目的地址,UDP校验和可先简单计算(甚至初期可禁用)。AES用128位密钥的ECB模式就行(虽然安全性不如CBC,但简单)。实现上,AES用迭代结构而非全展开,虽然吞吐低些,但省资源;协议栈用状态机+少量计数器实现,避免用处理器软核。关键是用Block RAM做数据缓冲(例如行缓冲),避免用分布式RAM。视频流输入后先存入BRAM,AES加密模块从BRAM读,加密后再存入另一个BRAM供UDP模块发送,这样流水线不会断。注意时钟频率要够高(至少125MHz匹配千兆网)。资源评估先用Vivado跑一下简单版本,再针对性优化。
