[发明专利]控制器有效
申请号: | 202011253473.4 | 申请日: | 2020-11-11 |
公开(公告)号: | CN112069096B | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 范福基;李蒙 | 申请(专利权)人: | 北京和利时系统工程有限公司 |
主分类号: | G06F13/16 | 分类号: | G06F13/16;G06F13/40;G06F13/42 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 姚璐华 |
地址: | 100176 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 控制器 | ||
1.一种控制器,包括主CPU、FPGA和DDR,所述FPGA包括ARM和DDR控制器,其特征在于,所述FPGA还包括数据交互逻辑模块;
所述主CPU通过外部总线与所述数据交互逻辑模块通信连接;
所述数据交互逻辑模块通过所述FPGA的片上总线与所述DDR控制器通信连接;
所述DDR控制器外接所述DDR;
所述主CPU通过所述数据交互逻辑模块与所述DDR进行数据交互;
所述数据交互逻辑模块,具体包括:依次通信连接的外部总线接口逻辑模块、FIFO读写逻辑模块、DMA调度逻辑模块和片上总线接口逻辑模块;
所述外部总线接口逻辑模块与所述外部总线通信连接;
所述片上总线接口逻辑模块与所述片上总线通信连接;
所述FIFO读写逻辑模块,用于进行所述外部总线和所述片上总线之间的数据位宽转换以及操作速率转换;
所述DMA调度逻辑模块,用于确定所述主CPU和所述DDR之间是否完成数据交互;
在所述主CPU写数据到所述DDR的过程中,所述数据交互逻辑模块包括的各模块,具体用于:
所述外部总线接口逻辑模块从所述外部总线接收需要写入所述DDR的数据、目标DDR地址和待写入数据长度,并传输到所述FIFO读写逻辑模块;
所述FIFO读写逻辑模块分别将第一FIFO存储器、第二FIFO存储器和第三FIFO存储器复位,然后将需要写入所述DDR的数据填写到第一FIFO存储器,将目标DDR地址写入到第二FIFO存储器,将待写入数据长度写入到第三FIFO存储器;
所述DMA调度逻辑模块将填写到第一FIFO存储器的数据切分成多份数据,并每次向所述片上总线接口逻辑模块搬运一份数据和目标DDR地址,直到向所述片上总线接口逻辑模块搬运的数据总长度等于待写入数据长度为止,每一份数据均小于所述片上总线一次传输的最大数据量;
所述片上总线接口逻辑模块每次接收到所述DMA调度逻辑模块搬运的数据后,将数据发送到所述片上总线,以使所述DDR控制器将数据写入到所述DDR;
在所述主CPU从所述DDR读取数据的过程中,所述数据交互逻辑模块包括的各模块,具体用于:
所述外部总线接口逻辑模块从所述外部总线接收目标DDR地址和待读取数据长度,并传输到所述FIFO读写逻辑模块;
所述FIFO读写逻辑模块分别将第四FIFO存储器、第五FIFO存储器和第六FIFO存储器复位,然后将目标DDR地址写入到第四FIFO存储器,将待读取数据长度写入到第五FIFO存储器;
所述DMA调度逻辑模块把目标DDR地址搬运给所述片上总线接口逻辑模块;
所述片上总线接口逻辑模块通过所述片上总线从目标DDR地址的DDR读取数据;
所述DMA调度逻辑模块把所述片上总线接口逻辑模块读取的数据搬运给第六FIFO存储器,直到搬运的数据总长度等于待读取数据长度为止;
所述FIFO读写逻辑模块从第六FIFO存储器读取数据并通过所述外部总线接口逻辑模块发送到所述外部总线。
2.根据权利要求1所述的控制器,其特征在于,所述片上总线,具体为:
AHB总线或者AXI总线。
3.根据权利要求1所述的控制器,其特征在于,所述外部总线,具体为:
串行总线或者并行总线。
4.根据权利要求3所述的控制器,其特征在于,所述串行总线,具体为:
SPI总线。
5.根据权利要求3所述的控制器,特征在于,所述并行总线,具体为:
LIO总线或者local bus总线。
6.根据权利要求1所述的控制器,其特征在于,所述主CPU,具体为:
龙芯、PowerPC、ARM或DSP。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京和利时系统工程有限公司,未经北京和利时系统工程有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011253473.4/1.html,转载请声明来源钻瓜专利网。