AMBA AHB总线 从机端

书接上文,在生成好ahb总线之后,我们为了使cm3访问到存储,需要使用cmsdk中提供的cmsdk_ahb_to_sram来对sram进行桥接

一.接线分析

首先分析接口,下面的接口是ahb总线的接从机的接口,

    // Output port MI0 (inputs from slave 0)
    input  [31:0] HRDATAM0;        // Read data bus32位地址线  有对应端口
    input         HREADYOUTM0;     // HREADY feedback输入ready信号,由sram提供,接入总线有对应端口
    input         HRESPM0;         // Transfer response有对应端口
    input  [31:0] HRUSERM0;        // Read-data USER signals 
// Output port MI0 (outputs to slave 0)
    output        HSELM0;          // Slave Select 有对应端口
    output [31:0] HADDRM0;         // Address bus有对应端口
    output  [1:0] HTRANSM0;        // Transfer type有对应端口
    output        HWRITEM0;        // Transfer direction有对应端口
    output  [2:0] HSIZEM0;         // Transfer size有对应端口
    output  [2:0] HBURSTM0;        // Burst type
    output  [3:0] HPROTM0;         // Protection control
    output [31:0] HWDATAM0;        // Write data有对应端口
    output        HMASTLOCKM0;     // Locked Sequence
    output        HREADYMUXM0;     // Transfer done有对应端口
    output [31:0] HAUSERM0;        // Address USER signals
    output [31:0] HWUSERM0;        // Write-data USER signals

随后查看需要连接的器件接口

  input  wire          HSEL,      // AHB peripheral select有对应端口
  input  wire          HREADY,    // AHB ready input有对应端口
  input  wire    [1:0] HTRANS,    // AHB transfer type有对应端口
  input  wire    [2:0] HSIZE,     // AHB hsize有对应端口
  input  wire          HWRITE,    // AHB hwrite有对应端口
  input  wire [AW-1:0] HADDR,     // AHB address bus有对应端口
  input  wire   [31:0] HWDATA,    // AHB write data bus有对应端口
  output wire          HREADYOUT, // AHB ready output to S->M mux有对应端口
  output wire          HRESP,     // AHB response有对应端口
  output wire   [31:0] HRDATA,    // AHB read data bus有对应端口

  input  wire   [31:0] SRAMRDATA, // SRAM Read Data
  output wire [AW-3:0] SRAMADDR,  // SRAM address
  output wire    [3:0] SRAMWEN,   // SRAM write enable (active high)
  output wire   [31:0] SRAMWDATA, // SRAM write data
  output wire          SRAMCS);   // SRAM Chip Select  (active high)

可以看到器件端口没有空余的脚,ahb总线有

input  [31:0] HRUSERM0;        // Read-data USER signals 

output  [2:0] HBURSTM0;        // Burst type
    output  [3:0] HPROTM0;         // Protection control

    output [31:0] HAUSERM0;        // Address USER signals
    output [31:0] HWUSERM0;        // Write-data USER signals

几个信号,其中有几个是用户使用的总线,可以忽视,burst type和protextion control没接,由于其是output脚,直接悬空即可

二.HREADY信号的处理

按个人理解,HREADY由从机驱动,提供给总线,总线会将正在通讯的从机的HREADY通过组合逻辑的方式分发给所有设备(主机和从机)

器件的HREADY即为来自总线的feedback

器件的HREADYOUT为来自本地的信号

总线从机端的HREADYOUTM0为来自当前从机的hready

总线从机端的HREADYMUXM0为来自其他从机的hready

按上文的理解即为,HREADY接到HREADYMUXM0

HREADYOUT接到READYOUTM0;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值