技巧
Vivado 快捷键 Alt + A 添加源文件
杂
特征 | Block Memory Generator (BRAM) | Distributed Memory Generator (Distributed RAM) |
---|---|---|
底层资源 | 专用硬核 Block RAM 块 | 通用查找表 (LUT) 资源 |
容量 | 大容量 (KB 到 MB) | 小容量 (几十到几百比特) |
速度/性能 | 高速,优化时序,吞吐量高 | 相对较低,容量增大时性能下降,但可以实现组合逻辑读 |
端口支持 | 单端口、双端口等多种配置 | 通常是单端口或简单双端口,复杂配置可能更消耗资源 |
资源效率 | 对于大容量高效,但可能浪费小容量的 BRAM 块 | 对于小容量高效,但大容量时消耗大量 LUT,且布线复杂 |
读延迟 | 通常有 1 或 2 个时钟周期的延迟 | 可以是零延迟(组合逻辑读),但通常也需要寄存器输出 |
灵活性 | 相对固定,由 BRAM 块的物理特性决定 | 高,可以灵活配置位宽和深度 |
Vivado工程中的Tcl 命令report_timing_summary会检查组合环路,并报出检查结果。
CPU设计的调试有时候之所以困难就在于,同样一条指令,它在这种执行 序列下可能会做对但是换一种执行序列就有可能会做错。因此一条指令在前面测试通过 了未必在后面的测试序列中就不会出错。
CPU执行出错的错误源头,可以通过测试程序的 逻辑路径传递很远之后才被验证者发现。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 寒酥梦的温暖小窝(施工中ing)!