Edit online

功能描述

总线时序与配置说明

以下所述时钟周期,均指内部 PBUS CLK 周期,PBUS CLK 从 HCLK 时钟分频得到,通过配置 CLK_DIV 字段可以从 HCLK 进行 2/4/8 分频。

PBUS 每个信号含义如下所示:

信号名称 输入/输出 信号描述
CLK O 外部总线时钟信号被访问外设不需要时钟信号,工作在异步模式;被访问外设需要时钟信号,则工作在同步模式。
NCS O 外设片选信号,默认低电平有效
NADV O 总线地址有效信号,默认低电平有效电平为低时,指示 AD[15:0]为地址
NWE O 总线读写控制信号默认低电平为写,高电平为读
NOE O 外设输出使能信号,默认低电平有效有效时允许外设往 AD[15:0]输出读数据信号
AD[15:0] I/O 地址/数据总线此总线 16 bits 宽,地址与数据复用,并且可传输读写双向数据可访问地址空间为 64K,映射地址为 0x1080_0000~0x1080_ffff

下列示例中,每一个信号可调整的参数有 THxx,表示该信号保持的 BUS CLK 周期数,TDxx 表示该信号有效时刻点相对 NCS 有效时刻点的延迟。

写时序中给出了参数配置示例:
  • TH_CS = 8
  • TD_ADV = 1
  • TH_ADV = 2
  • TD_WE = 1
  • TH_WE = 6
  • TD_AD = 1
  • TH_AD = 3
  • TD_WD = 6
  • TH_WD = 2
具体输出时序可以通过调整以上参数进行灵活配置。
注:
  • THxx 参数不允许为 0。
  • WDAT 必须在 ADDR 结束后才有效,即 TD_WD ≥TD_AD+TH_AD。
1. 写时序
读时序 中:
  • TD_OE=5
  • TH_OE=2
注:
  • NOE 信号有效区间不能与 AD[15:0] 输出有效区间相重叠,即 TD_OE≥TD_AD+TH_AD。
  • 保证 TD_OE > TD_ADV+TH_ADV。
  • PBUS 模块对于 AD[15:0] 上 RDAT 的采样发生在 NOE 信号有效的最后时刻。
2. 读时序

最小延迟为两次操作之间的最小延迟:NCS 信号除了有一个 TH_CS 参数之外,还有一个规定了两次 NCS 有效的最短时间间隔参数 TD_CS,表示两次传输之间必须保持一定的间隔,目的是为了避免两次传输之间 AD[15:0]信号冲突。

3. 最小延迟

模块工作流程

写操作:Check TD_CS →
  • NCS 有效 → Check TH_CS → NCS 无效

  • Check TD_ADV → NADV 有效 → Check TH_ADV → NADV 无效

  • Check TD_WE → NWE 有效 → Check TH_WE → NWE 无效

  • Check TD_AD → ADDR 输出 → Check TH_AD → 关闭 ADDR 输出,同时 Check TD_WD → WDAT 输出 → Check TH_WD → 关闭 WDAT 输出

读操作:Check TD_CS →
  • NCS 有效 → Check TH_CS → NCS 无效

  • Check TD_ADV → NADV 有效 → Check TH_ADV → NADV 无效

  • Check TD_AD → ADDR 输出 → Check TH_AD → 关闭 ADDR 输出,同时 Check TD_OE → NOE 有效 → Check TH_OE → NOE 无效,同时锁存 RDAT

使用指南

用户可以直接使用寄存器 PBUS_CFG0、PBUS_CFG1、PBUS_CFG2 的默认值,通常只需要使能 CMU 模块时钟以及松开复位,PBUS 即可通过映射地址空间 0x1080_0000~0x1080_ffff 进行 PBUS 外设的读写访问。