ASIB中的valid信号,有两部分,一部分add产生的地址映射,到main中的default addr。(vect)

一部分由Dmu和Cdas组成,到main中的build。

Dmu:interconnect中的power manage unit。

两个输入信号:m0_cactive:来自asib的valid信号和目前的tracker_busy信号,表示目前还有未传完的ourtstanding的transaction。

m0_cactive_wakeup:来自master口的新的transaction的valid信号。

在经过内部的FSM后,输出m0_port_enable信号,cd_m0_csysreq和cd_m0_csysack信号。

内部不会有相应的clock gate逻辑,只是提供握手信号和状态信号。

Asib中:add_decode模块,进行address的remap,包括(security/protect/cache信号的处理),

地址可以分段判断,每一段有自己的security和protect的设置,最终输出几位的valid信号。

传入asib内的其他模块和ib模块中,表示该次transaction有效。读写通道分别例化。每一个address region对应一个slave区域。

Asib中的maskcnt模块:在master端,表示为issue capacity,主要进行计数,产生tracker_busy信号。

读写通过最终的resp的返回来判断是否结束。tracker_busy信号只用在dmu中的wakeup输入端。

内部计数为read/write可接受的outstanding的个数,输出wr_cnt_empty信号来作为outstanding满之后的mask信号。

Asib中的cdas模块:根据连接的slave interface个数和acceptance capability,和相应的cdas策略,

实现对同一master口,发送transaction的控制,防止死锁,较多的策略有single slave和per ID per slave。

其中的asel来自add_decode的valid信号,位宽相同。读写该模块实现并不相同,读通道只输出一个ar_enable信号。

Asib中的register slice模块5个通道可以分别例化,都有四种模块可配置。位置可调整。

Master端的Ib模块中,有upsizer/downsizer模块,

slave端的ib模块中有async bridge和interface conversion bridge。针对cdc,会有5个通道的fifo进行cdc设计。

涉及到upsizer/downsizer时,会有read_address_format,write_address_format,write_control,write_merge_buffer,

write_response_block以及fifo_wr。

cd_main中包括:busmatrix的switch模块,default slave模块,dmu模块,以及master和slave的ib模块。

Switch中包括两部分:Build模块,实现master到slave的1-n转换。Map模块,实现slave端的n-1转换。

Build模块中有和master个数相同的blayer模块,每个内部例化rd/wr通道。通过build_rd/build_wr生成的enable信号,使能到各个slave的valid信号。

其中asel信号来自add_decode模块输出的每个slave的valid信号,三个enable信号在此基础上产生,使能到slave端口的valid信号。

Map模块内包括add_sel模块,ret_sel模块,wr_sel模块。

add_sel模块主要实现rd/wr address的arb选择,以及outstanding的mask操作。

Ret_sel模块根据id号,选择正确的B通道和R通道到build模块。

Wr_sel模块,实现wdata信号到slave的选择,直到address的arbitrated做好,否则stall wdata channel。

Add_sel模块内包含三个模块:ar_arb模块,aw_arb模块,maskcnt1模块。Maskcntl模块。

这里的maskcntl模块,输出mask_w/mask_r给arb模块,在outstanding的个数到之后,进行mask操作。

Arb模块,通过qos或者LRG算法,从选择从不同master过来的transaction。内部实现highest_qos和lrg_arb两个模块。

Mask信号从maskcntl模块来,a_valid_vector为信号add_decode输出的valid信号与master的valid信号的与结果。

PL301 matrix内部模块的更多相关文章

  1. 查看python内部模块命令,内置函数,查看python已经安装的模块命令

    查看python内部模块命令,内置函数,查看python已经安装的模块命令 可以用dir(modules) 或者用 pip list或者用 help('modules') 或者用 python -m  ...

  2. nw.js node-webkit系列(15)如何使用内部模块和第三方模块进行开发

    原文链接:http://blog.csdn.net/zeping891103/article/details/50786259 原谅原版链接:https://github.com/nwjs/nw.js ...

  3. pytho文件命名不要内部模块或者引用模块名字相同

    自己写的包和模块,注意命名不要和python内置模块和包.以及引用的模块和包名字冲突

  4. Mysql架构与内部模块-第二章

    接上文,上文简述到了Mysql中的查询缓存和解析器,今日我们继续. 先来看一段SQL:SELECT * FROM `jianghuadong`; 先假设我们数据库中并没有一张名为jianghuadon ...

  5. Mysql架构与内部模块-第三章

    前言 接上文,本篇文章专门简述Mysql存储引擎,内容繁多,如果你只需知道每种存储引擎的适用场景,可以直接查看本文最后列出的适用场景部分. 正文: Mysql存储引擎作为本系列文章中相对重要的一环,也 ...

  6. Visual Studio Code 断点调试Nodejs程序跳过node内部模块(internal modules)

    Built-in core modules of Node.js can be referred to by the ‘magic name’ <node_internals> in a ...

  7. Mysql架构与内部模块-第一章

    Mysql作为大多数中小型企业的首选数据库,也可能是众多同僚接触的第一个数据库,其热门程度不言而喻,一些相对基础的知识本系列不做赘述,主要简述Mysql相关的进阶知识. 本章将由浅入深的讲解从连接My ...

  8. OpenCV学习笔记:opencv_core模块

    一,简介: opencv最基础的库.包含exception,point,rect,size,slice,vector,matrix,image等数据结构,和相应的操作函数,以及一些基础算法. 二,分析 ...

  9. Google TPU 揭密——看TPU的架构框图,矩阵加乘、Pool等处理模块,CISC指令集,必然需要编译器

    Google TPU 揭密 转自:https://mp.weixin.qq.com/s/Kf_L4u7JRxJ8kF3Pi8M5iw Google TPU(Tensor Processing Unit ...

随机推荐

  1. Optimizely:在线网站A/B测试平台

    Optimizely:在线网站A/B测试平台是一家提供 A/B 测试服务的公司.A/B 测试能够对比不同版本的设计,选取更吸引用户眼球的那一款,从而带来更为优化的个人体验.让网站所有者易于对不同版本的 ...

  2. 解决thinkPHP构造函数__construct导致tp方法冲突问题

    我们在使用了__construct构造函数,覆盖了父类的构造函数,导致父类tp的方法无法使用,例如$this->display(),解决办法是: 在__construct函数中调用一下父类的构造 ...

  3. spring security为不同用户显示各自的登录成功页面

    一个常见的需求是,普通用户登录之后显示普通用户的工作台,管理员登陆之后显示后台管理页面.这个功能可以使用taglib解决. 其实只要在登录成功后的jsp页面中使用taglib判断当前用户拥有的权限进行 ...

  4. 安装完MySQL数据库,在服务列表里找不到MySQL的解决办法

    安装MySQL数据库完成后,在控制面板的服务列表里找不到MySQL服务启动项解决方案:(参考以下命令)1.打开cmd,切换到mysql的bin目录下 (dos命令切换目录||1.cd\ 返回到根目录, ...

  5. SpringMvc简单实例

    Spring MVC应用一般包括4个步骤: (1)配置web.xml,指定业务层对应的spring配置文件,定义DispatcherServlet; (2)编写处理请求的控制器 (3)编写视图对象,例 ...

  6. Suffix array

    A suffix array is a sorted array of all suffixes of a given string. The definition is similar to Suf ...

  7. Memcached 笔记与总结(7)增加虚拟节点

    仅仅把 Memcached 服务器集群地址通过一致性哈希转映射在圆环上,可能会出现数据不能均匀地分配给各台 Memcached 服务器. 解决方案是引入虚拟节点,就是把每个映射在圆环上的服务器地址(物 ...

  8. 奥迪--S5

    --型号:S5 --生产:奥迪进口 --价格:60-80W --发动机:3T 333马力 V6,机械增压 --变速箱:7档双离合 --气缸排列:V --总部:德国,英戈尔施塔特 --类型:中型车 -- ...

  9. python中raw_input输入数字问题

    如果按照下面方式,则无论你输入什么,都会打印12,因为raw_input接受的输入是按照字符串处理的 num = raw_input('please enter a num:') if num > ...

  10. IIS7下的伪静态配置

    某个项目是PHP的,本地是Apache + PHP + MYSQL,服务器上的环境是IIS + PHP + MYSQL,开发完成准备部署到服务器上发现伪静态无法使用,原因是IIS不能解析.htacce ...