明德扬论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫一扫,快捷登录!

查看: 1178|回复: 0

mdyDmaMode模块

[复制链接]

4

主题

4

帖子

149

积分

注册会员

Rank: 2

积分
149
发表于 2020-12-21 11:42:50 | 显示全部楼层 |阅读模式

马上注册,看完整文章,学更多FPGA知识。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
1.1 mdyDmaMode01

1.1.1 功能描述

A.  基于MDY总线的DMA模块。
a)  输入输出的位宽,可以通过参数配置。
b)  所有通道的位宽必须一致,转位宽功能请在DMA外面实现。
c)  支持地址模式:初始地址,然后自增1,长度,超过空间自动返回;保持固定值模式。

B.  可以通过参数,支持多路的输入通道,支持范围是1~16个通道
a)  可以通过参数,确定通道数。
b)  每个输入通道对应一组FIFO,用于保存该通道数据。
c)  支持包文模式输入;非包文的情况,可以将sop.eop固定为0来实现。

C.  可以通过参数,支持多路的输出通道,支持范围是1~16个通道。
a)  可以通过参数,确定输出通道数。
b)  支持两种发起条件:存够一定长度;存有一个完整的包文。非包文的情况下,使用存够一定长度的模式。  

D.  支持一路通道数据进,多路通道数据出(不支持!!!)
a)  多个通道数据都相同,相当与复制。
b)  多个通道的rdy都全部准备好了,才同时输出一个数据。

E.  支持多路通道数据进,一路通道数据出
a)  多路通道数据之间,使用SP的优先级进行调度。

F.  支持多路进多路出的混合模式(不支持!!!)
a)  某个输出通道,既可以是一路进,多路出的复制数据包文,也可以是多路进一路出的选择包文。

G.  支持0输入,1输出模式
a)  在"请求命令"下,产生输出通道时序。
b)  输出数据可设置为固定值,有效时输出固定值,无效时变成默认值。
c)  该模式是用于产生读时序。


1.1.2 参数列表

参数名
描述默认值
D_W输入输出数据位宽 16
A_W输入输出地址位宽 20
CH_IN输入通道个数 8
CH_OU输出通道个数 8
CFG_IN_W每个输入通道的配置信号位宽 64
CFG_OU_W每个输出通道的配置信号位宽 64
REQ_MODE一共有CH_OU比特。每1比特表示当前输出通道是根据输入数据还是根据REQ信号来产生输出。
0:来自与输入数据。
1:来自于REQ信号。
0
TRI_MODE一共有CH_OU比特。每1比特表示当前输出通道的触发条件,是存够一个包文,还是存够一定长度数据。
0:储存一定长度
1:储存一个包文
0
OUT_IN_NET一共有CH_OU*CH_IN比特。
每个输出通道含一组CH_IN位宽的配置,每1比特对应一个输入通道。当该比特为1,表示与该通道关联,当该比特为0,表示与该通道无关。
例如2个输出通道,4个输入通道。如果值为{4'b0111,4'b1010},则表示输出通道0数据来自于输入通道1和3,输出通道1数据来自于输入通道0、1和2。
64'b10000000_01000000_
00100000_00010000_
00001000_00000100_
00000010_00000001
PKT_MAX一共有CH_IN*16比特。
每个输入通道含有一组16位宽的配置,表示该通道输入的最长包文长度,单位为字节。
128'h0400_0400_0400_0400
_0400_0400_0400_0400
PKT_MIN一共有CH_IN*16比特。
每个输入通道含有一组16位宽的配置,表示该通道输入的最短包文长度,单位为字节。
128'h0002_0002_0002_0002
_0002_0002_0002_0002
ADD_MODE一共有CH_OU比特
每个输出通道包含1比特的配置,表示地址的产生方式。
0:地址递增。
1:地址固定为初始值。
8'h0



1.1.3 接口列表

信号名
类型 位宽 描述
clk I 1 时钟
rst_n I 1 复位
cfg_in I CH_IN*CFG_IN_W 所有输入通道的配置,每个输入都可独立进行配置。低位是通道0的
cfg_ou I CH_OU*CFG_OU_W 所有输出通道的配置,每个输出都可独立进行配置。低位是通道0的
din I CH_IN*D_W  
din_vld I CH_IN
din_sop I CH_IN
din_eop I CH_IN
din_add CH_IN*A_W 输入通道的地址
din_rdy O CH_IN
req I CH_OU 读请求信号。每个输出通道对应一个。当配置为读请求模式时,当该通道处于空闲状态,就会产生读数据的时序。
dout O CH_OU*D_W 快空指示信号
dout_vld O CH_OU 满指示信号
dout_sop O CH_OU 空指示信号
dout_eop O CH_OU
dout_add O CH_OU*A_W 输出通道的地址
dout_rdy I CH_OU



您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


QQ|手机版|小黑屋|MDYBBS ( 粤ICP备16061416号-1

GMT+8, 2021-3-1 09:03 , Processed in 0.501945 second(s), 12 queries , File On.

Powered by Discuz! X3.4

本论坛由广州健飞通信有限公司所有

© 2001-2019 Comsenz Inc.

快速回复 返回顶部 返回列表