2026/6/4 14:10:20
网站建设
项目流程
青岛企业网站模板建站,网站的jsp页面怎么做,珠海网站制作渠道,网站优化怎么做论坛一、 概述
在上一章节中#xff0c;我们详细阐述了乒乓操作的具体流程与核心功能#xff0c;并据此完成了整体架构的设计与流程框图的绘制。本章将继续依据已确立的流程图#xff0c;展开对DDR4 乒乓操作功能的具体实现#xff0c;将理论设计转化为可执行的硬件逻辑。
二、…一、 概述在上一章节中我们详细阐述了乒乓操作的具体流程与核心功能并据此完成了整体架构的设计与流程框图的绘制。本章将继续依据已确立的流程图展开对DDR4 乒乓操作功能的具体实现将理论设计转化为可执行的硬件逻辑。二、 流程框图对于ddr4的乒乓操作核心在于需要控制何时读写ddr4我们今天将介绍乒乓操作的控制模块。三、 ddr_pp_ctrl模块这个状态机在上一章节章中进行了详细介绍本章节为了更直观讲述代码所以继续沿用这个状态机。首先设置DDR4的最大存储大小MAX_ADDR。当DDR_0写入的数据数量等于MAX_ADDR后切换另一个DDR_1进行写入并同时读取之前写满的DDR_0。当DDR_0读取的数据数量和DDR_1写入的数据数量等于MAX_ADDR后切换另一个DDR进行读写操作。模块接口列表awaddr_cntDDR_0的写地址计数。awaddr_cnt_1DDR_1的写地址计数。araddr_cntDDR_0的读地址计数。araddr_cnt_1DDR_1的读地址计数。wr_ready_0写DDR_0控制信号拉高表示可以向DDR_0写入数据。wr_ready_1写DDR_1控制信号拉高表示可以向DDR_1写入数据。rd_ready_0读DDR_0控制信号拉高表示可以从DDR_0读取数据。rd_ready_1读DDR_1控制信号拉高表示可以从DDR_1读取数据。模块信号声明MAX_ADDR设置的DDR4的读写突发的最大地址。比如设置的DDR4最大地址为’h40000那么读写突发的最大地址为’h3ffc0。clk_cnt时钟计数器计数到固定值后开始发送数据。send_data_start开始发送数据标志ddr_0_wrallDDR_0写满标志ddr_0_rdallDDR_1写满标志ddr_1_wrallDDR_0读空标志ddr_1_rdallDDR_1读空标志当时钟计数器计数到’d999时拉高send_data_start开始发送数据。当DDR_0写满后开始写DDR_1同时读DDR_0。当DDR1写满并且DDR0读空后再写DDR_0同时读DDR_1。如此往复循环。当DDR_0写满后拉高ddr_0_wrall当DDR_0读空后再拉低ddr_0_wrall。当DDR_0读空后拉高ddr_0_rdall当DDR_0写满后再拉低ddr_0_rdall。当DDR_1写满后拉高ddr_1_wrall当DDR_1读空后再拉低ddr_1_wrall。当DDR_1读空后拉高ddr_1_rdall当DDR_1写满后再拉低ddr_1_rdall。wr_ready_0在WR0和WR0_RD1状态时可以写DDR_0在DDR_0写满之前ddr_0_wrall为0所以在WR0和WR0_RD1状态时并且在DDR_0写满之前可以向DDR_0中写入数据。wr_ready_1在WR1_RD0状态时可以写DDR_1在DDR_1写满之前, ddr_1_wrall为0所以在WR1_RD0状态时并且在DDR_1写满之前可以向DDR_1中写入数据。rd_ready_0在WR1_RD0状态时可以读DDR_0在DDR_0读空之前ddr_0_rdall为0所以在WR1_RD0状态时并且在DDR_0读空之前可以从DDR_0中读取数据。rd_ready_1在WR0_RD1状态时可以读DDR_1在DDR_1读空之前ddr_1_rdall为0所以在WR0_RD1状态时并且在DDR_1读空之前可以从DDR_1中读取数据。四、 总结在本章节中介绍了DDR乒乓操作的控制模块模块主要作用是输出了何时读写DDR_0和DDR_1的控制信号。后面再继续讲述如何使用这四个输出信号来控制读写这两个DDR展开对DDR4 乒乓操作功能的具体实现。本文章由威三学社出品对课程感兴趣可以私信联系